RDLC子报表钻取

来源:互联网 发布:微软的人工智能 编辑:程序博客网 时间:2024/05/16 06:20

今天在学习RDLC报表的时候碰到个子报表显示的问题,研究了一下午终于搞定了,其实还挺简单的主要就下面几个步骤了

1.设计主报表和子报表

2.打开主报表,在想要做钻取的字段上右击,选择"占位符属性",指定报表的值就填子报表的名称,参数名称自定义,值就用主子报表的外键字段

3.打开子报表,报表数据里添加一个参数,名称和上一步里的参数名称一致,这里用的是"cname"

4.右击子报表的表格,选择"tablix属性",表达式的值就用上一步里添加的参数,值就用主子报表的外键字段,设计的步骤就到此为止了


5.在web上添加reportviewer控件,指定数据集和数据源(这里是主报表的),为reportviewer控件添加一个Drillthrought事件(在钻取字报表时发生),事件中添加如下代码:

    LocalReport lr = (LocalReport)e.Report;

//DataSet1是子报表的数据集,要和设计主报表的数据集一致,GetHealthCheckDet方法返回的是datatable,是子报表的数据源
            ReportDataSource rds = new ReportDataSource("DataSet1", GetHealthCheckDet());
            lr.DataSources.Add(rds);   


就这几个简单的步骤我用了一个下午才搞定,哎,我到底适不适合做码农啊,还是写下来吧,因为关于rdlc报表的资料太少了

原创粉丝点击