·L³nSQL Server 2000 Reporting Services¤¶²Ð(¤­)

- ¤¤°êWEB¶}µoªÌºôµ¸ (http://www.webasp.net)
-- §Þ³N±Ðµ{ (http://www.webasp.net/article/)
--- ·L³nSQL Server 2000 Reporting Services¤¶²Ð(¤­) (http://www.webasp.net/article/9/8186.htm)
-- §@ªÌ¡G¥¼ª¾
-- µo§G¤é´Á¡G 2004-03-10
·L³nSQL Server 2000 Reporting Services¤¶²Ð(¤­)





[ºK­n ] ¥»¤å¥D­n¤¶²Ð¤F¦p¦óºî¦X§Q¥ÎReport Designer©M­×§ïrdl¤å¥ó¨Ó§Ö³t¡BÆF¬¡ªº¹ê

²{³øªíû¶¥Â¼©¨B¶½¦ü´è?lt;/SPAN>Matrix®æ¦¡©MToggle¥\¯àªº¹ê²{

[ÃöÁä¦r] Reporting Services,.NET Framework.,rdl¤å¥ó,Matrix®æ¦¡,Toggle¥\¯à



n ¦p¦ó¹ê²{Matrix


¤W¹Ï¬OReporting Services¤¤´£¨Ñªº¤@­Ó¨Ò¤l¡AÁa¦V¬°¤@­Ó¤½¥qªº²£«~Ãþ§O©M¤lÃþ§O¡A¾î¦V¬°¦~¥÷©M©u«×¡A³oºØÅã¥Ü¼Ò¦¡¦b«Ü¦hªº³øªí¤¤³£¥i¥H®M¥Î¡A¨Ò¦p¤@¯ëªº¶°¹Î¤½¥q·|¦bÁa¦VÅã¥Ü¥X©Ò¦³¤À¤l¤½¥q©M³¡ªù¡C¤U­±±qrdl¤å¥óªº¨¤«×¤ÀªR¸Ó¨Ò¤l¬O¦p¦ó¹ê²{ªº¡A­º¥ý¨Ó¬Ý¬Ý¨ä¤¤ªº¬d¸ß»y¥y

<Query>

<DataSourceName>AdventureWorks</DataSourceName>//«ü©w¼Æ¾Ú·½¦WºÙ

<CommandText>SELECT ProductCategory.Name AS ProdCat, //²£«~Ãþ§OProductSubCategory.Name AS SubCat, //²£«~¤lÃþ§O

DATEPART(yy, SalesOrderHeader.OrderDate) AS OrderYear, //¦~¥÷

'Q' + DATENAME(qq, SalesOrderHeader.OrderDate) AS OrderQtr, //©u«×SUM(SalesOrderDetail.UnitPrice * SalesOrderDetail.OrderQty) AS Sales//¾P°â¼Æ¾Ú



FROM ProductSubCategory INNER JOIN

¡K¡K¡K¡K¡K¡K¡K.

WHERE (SalesOrderHeader.OrderDate BETWEEN '1/1/2002' AND '12/31/2003')//®É¶¡½d³ò

//³o¸ÌªºGROUP BY«OÃҼƾڪº¼h¦¸Ãö«Y

GROUP BY

DATEPART(yy, SalesOrderHeader.OrderDate), ProductCategory.Name, ProductSubCategory.Name, 'Q' + DATENAME(qq,

SalesOrderHeader.OrderDate), ProductSubCategory.ProductSubCategoryID</CommandText>

¤U­±¦A¨Ó¬Ý¬Ýrdl¤¤¬O¦p¦ó«ü©w©u«×¦CÁôÂæb¦~¥÷¤U­±ªº

<ColumnGrouping>

<DynamicColumns>

<Grouping Name="OrderQtr">//¸Ó°ÊºA¦Cªº¦WºÙ¬°OrderQtr

<GroupExpressions>

<GroupExpression>=Fields!OrderQtr.Value</GroupExpression>

</GroupExpressions>

</Grouping>

<Visibility>//³o¤@¬q¹ê²{¤F©u«×¦CªºÁôÂÃ,¨Ã©MOrderYear«Ø¥ß¤FToggleÃö«Y¡A¶È¶È¤T¦æ¥N½X´N¹ê²{¤F¤@ºØ½ÆÂøªº¼Æ¾Ú¼h¦¸Ãö«Y¡A¥i¨£Reporting Servicesªº¥\¯à¤§±j¤j.

<ToggleItem>OrderYear</ToggleItem>

<Hidden>true</Hidden>

</Visibility>

¦P¼Ë¡A²£«~Ãþ§O©M²£«~¤lÃþ§O¤]¬O³o¼Ë«Ø¥ßÃö«Yªº¡AÁöµM³q¹L.NET¶}µoÀô¹Ò¥i¥H«Ü®e©öªº¹ê²{¸Ó¥\¯à¡A¦ý¦pªG¯à°÷¼ô½mªº­×§ïrdl¤å¥ó¨Ó¹ê²{¥\¯à¡A¯à¸`¬ù¤j¶qªº®É¶¡¡C



¤U­±¬Ý¬Ý¸Ó³øªí¬O¦p¦óÅã¥Ü¾P°â¼Æ¾Úªº

<MatrixRows>

<MatrixRow>

<MatrixCells>

<MatrixCell>

<ReportItems>

<Textbox Name="Sales">

<Style>

<BorderStyle>

<Default>Solid</Default>

</BorderStyle>

<PaddingLeft>2pt</PaddingLeft>

<Format>$#,###</Format>//³o¸Ì«ü©w¤F¾P°â¼Æ¾ÚÅã¥Üªº®æ¦¡¡A¥]¬A¬ü¤¸²Å¸¹©M¤d¤À¦ì,±q³o¸Ì¤J¤â­×§ï¬°¤H¥Á¹ô²Å¸¹¬O¤ñ¸û§Ö±¶ªº

<BackgroundColor>White</BackgroundColor>

<FontSize>9pt</FontSize>

<PaddingRight>2pt</PaddingRight>

</Style>

<Value>=Sum(Fields!Sales.Value)</Value>//Åã¥Ü¾P°â¼Æ¾Úªº©M

</Textbox>



¦n¤F¡A¤ÀªR§¹³o¨ÇÃöÁä¥N½X¡A¾ã­ÓCompany Sales.rdl(¥i¥H¦bMS SQL Server¦w¸Ë¥Ø¿ý¤U§ä¨ì)´N«Ü¦n²z¸Ñ¤F¡A¨ä¥Lªº³\¦h¥N½X¤j³¡¤À³£¬O³]¸m³øªí®æ¦¡ªº¡A¦pªG§ï¼gªº®É­Ôıªº³o­Ó¨Ò¤lªº®æ¦¡¤ñ¸û½à¤ß®®¥Ø¡A§¹¥þ¥i¥H§â¨ä¤¤ªº<Style>³¡¤À¥N½X®³¥X¨Ó¶K¤W¥h¡A¦pªG¨Ì¾a.NET¤¤ªºReport Designer¨Ó°µ´N¤£¨º»òÆF¬¡¤F¡C¸g¹L¤@¬q®É¶¡ªº¨Ï¥Î¡A·Pı¤ñ¸û¦nªº¤è¦¡¬O¡A¥ý³q¹LReport Designer§â³øªíªº®Ø¬[°µ¥X¨Ó¡AµM«á¦pªG­n°µ¤@¨Ç²Ó¸`ªº­×§ï¡A´Nª½±µ­×§ïrdl¤å¥ó¦n¤F¡Ardl­×§ï«á¡Aªð¦^¨ìReport Designer¤¤¶i¦æ¹wÄý.

webasp.net