用矩阵报表来观察2002-2003年各季度货物的销售情况:
将下面的图存到工程的目录下(与Data.xml在同一目录),取名为logo.jpg:
将“文本框”和“图像”放入“矩形”中。
在“文本框”中输入”Adventure Words 2002-2003 Sales”,并将字体和颜色作适当调整;
调出报表的属性页,在EmbeddedImages 一行点击,如下图:
点击后调出”嵌入图像”对话框,在其上点击”新建图像”,找到logo.jpg文件,点打开,如下图:
重新回属性页,在下拉按钮中选“image1 图像”:
在Source行选“Embedded”,Value行选”logo” 。
从工具箱中拖入“矩阵”到报表设计画面上。
右击“解决方案资源管理器”中的”Report1.rdlc”,选“打开方式”->“XML编辑器”,
打开“Report1.rdlc”后,在第三行前面插入下面的代码:
保存并关闭这个代码编辑画面。
回到“Report1.rdlc”设计画面,
在RDLC报表设计器中,在菜单上->报表->数据源,打开“报表数据源”,就可以看到有报表数据源“Sales”了:
输入(选择)数据集名称为“Sales”:
选“组”选项卡,选中“matrix1_RowGroup 1”:
点击“编辑”后,将名称改为“matrix1_ProdCat”,表达式为:=Fields!ProdCat.Value ,如下图:
名称为:“matrix1_SubCat”,表达式为:”=Fields!SubCat.Value” :
确定后,再依法将列组分别置为名称为:matrix1_OrderYear 和 matrix1_OrderQtr ,
它们的表达式分别为: =Fields!OrderYear.Value 和 =Fields!OrderQtr.Value ,如下图:
按确定后退出矩阵属性对话框:
ProdCat, SubCat,Sales
右边二个单元格从上开始分别改名为:
OrderYear ,OrderQtr
其中单元格ProdCat的值为: =Fields!ProdCat.Value
单元格Sales的值为: =Sum(CDbl(Fields!Sales.Value))
单元格OrderYear的值为: =Fields!OrderYear.Value
在单元格OrderYear的可见性选项卡中将“此报表项关联图像的初始外观”置为“展开”;
将分别将单元格ProdCat, SubCat, OrderYear ,OrderQtr属性(按F4调出属性)
中BackgroundColor 中的值改为:RoyalBlue ,
Color中的值改为:White
重新调出矩阵属性对话框,在组选项卡中编辑matrix1_SubCat行组,打开分组排序属性对话框后,
在其中选“可见性”选项卡,将初始可见性选为隐藏,勾选“可由其它关联报表项确定其可见性”,在“报表项”选择“ProdCat”;
在组选项卡中编辑matrix1_OrderQtr列组,打开分组排序属性对话框后,
在其中选“可见性”选项卡,将初始可见性选为可见,勾选“可由其它关联报表项确定其可见性”,在“报表项”选择“OrderYear”。
最后调出Form1代码窗口,下面是VB.net中Form1.vb的全部代码:
Imports Microsoft.Reporting.WinForms
Public Class Form1
End Class