子
报表是对另一个报表的引用。若要通过数据值使报表相关联(例如,使多个报表显示同一客户的数据),必须设计
参数化报表(例如,显示特定客户详细信息的报表)作为子报表。向主报表添加子报表时,可以指定传递给子报表的参数。还可以向表或矩阵中的动态行或动态列添加子报表。处理主报表时,会处理每行的子报表。在这种情况下,请考虑您是否能通过使用数据区域或嵌套数据区域实现所需的效果。有关详细信息,请参阅使用数据区域 (Report Builder 2.0)。添加子报表在“插入”选项卡上,
单击“子报表”。在设计图面上,单击报表上的某个位置,然后拖动一个框调整到所需子报表大小。也可以单击设计图面来创建固定大小的子报表。右键单击子报表,然后单击“子报表属性”。在“子报表属性”对话框的“名称”文本框中键入名称,或接受默认值。在“将此报表用作子报表”框中,键入报表的名称,或者单击“浏览”。可以通过多种方式指定报表。有关详细信息,请参阅指定外部项的路径 (Report Builder 2.0)。单击“确定”。 指定传递给子报表的参数在“设计”视图中,右键单击子报表,然后单击“子报表属性”。在“子报表属性”对话框中,单击“参数”。单击“添加”。将向参数网格添加一个新行。当你为当前项目添加完RDLC报表项目后,这个新报表就处于设计状态,同时在vs集成开发界面上就会出现“报表”菜单,点开这个菜单,第一项就是报表参数子菜单,点击这个子菜单后,报表参数界面就打开了,点击“添加”按钮,就可以添加新的报表参数,你可以先建立一个比如说名称为ParamTest的数据类型为string的参数(string类型可以传入所有类型的值),当然你也可以为空白值(null或String.Empty)设置一个你想表达的默认值,在参数设计其中作这个工作很方便。
然后点击确定保存并退出,并在你的报表所需位置添加一个文本框,为这个文本框设置表达式:=Parameters!ParamTest.Value,这时报表部分的工作就做完了;
下一步,在你的报表处理代码中加入:
(其他的报表初始化,设置数据集等 *** 作这里略去,只讲参数使用)
(这个例子是给WinForm程序用的,WebForm只是引用不同而已,其他一样)
Microsoft.Reporting.Winforms.ReportParameter p1=new Microsoft.Reporting.Winforms.ReportParameter("ParamTest","This is a test string.")//创建新的报表参数p1,参数名为:ParamTest,字串值:This is a test string.
reportViewer1.LocalReport.SetParameters(new Microsoft.Reporting.Winforms.ReportParameter []{p1}//这里初始化参数集,并传到报表查看器reportViewer1的本地报表(RDLC的意思就是本地报表,否则叫RDL)的参数中。
下一步:
reportViewer1.RefreshReport()//刷新显示报表!
reportViewer1.ZoomMode = ZoomMode.FullPage//全页缩放显示,到此为止参数就使用完毕了。
评论列表(0条)