ReportViewer教程(15)-矩阵报表-6

点确定关闭分组和排序属性对话框后,在矩阵属性对话框点添加来添加一个行组 ,

名称为:“matrix1_SubCat”,表达式为:”=Fields!SubCat.Value” :

ReportViewer教程(15)-矩阵报表-6

确定后,再依法将列组分别置为名称为:matrix1_OrderYear 和 matrix1_OrderQtr ,

它们的表达式分别为: =Fields!OrderYear.Value =Fields!OrderQtr.Value ,如下图:

ReportViewer教程(15)-矩阵报表-6

按确定后退出矩阵属性对话框:

ReportViewer教程(15)-矩阵报表-6

    将(上图)矩阵最下边一行的三个单元格分别改名为(右击单元格->属性)

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

 ReportViewer教程(15)-矩阵报表-6

重新调出矩阵属性对话框,在组选项卡中编辑matrix1_SubCat行组,打开分组排序属性对话框后,

在其中选“可见性”选项卡,将初始可见性选为隐藏,勾选“可由其它关联报表项确定其可见性”,在“报表项”选择“ProdCat;

在组选项卡中编辑matrix1_OrderQtr列组,打开分组排序属性对话框后,

在其中选“可见性”选项卡,将初始可见性选为可见,勾选“可由其它关联报表项确定其可见性”,在“报表项”选择“OrderYear”。

   在Form1窗口设计中,拖入一个ReportViewer控件,

最后调出Form1代码窗口,下面是VB.net中Form1.vb的全部代码:

Imports Microsoft.Reporting.WinForms
Public Class Form1
    Private Function LoadSalesData() As DataTable
        Dim DS As DataSet = New DataSet

        DS.ReadXml("..//..//data.xml")
        Return DS.Tables(0)

    End Function
    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        Me.ReportViewer1.Reset()
        ReportViewer1.LocalReport.DataSources.Clear()
        ReportViewer1.LocalReport.DataSources.Add(New ReportDataSource("Sales", LoadSalesData()))

        ReportViewer1.LocalReport.ReportPath = "..//..//report1.rdlc"
        Me.ReportViewer1.RefreshReport()
    End Sub
End Class

    这样矩阵报表就好了。运行后见下图:

ReportViewer教程(15)-矩阵报表-6

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值