ReportViewer快速应用(二)

许多报表都有外部提供的参数,比如年份,月份,员工姓名等,来动态的生成报表,所以使用外部参数的功能还是比较经常使用到的。本文主要描述何如添加ReportViewer的外部参数。本文是在上一篇(http://blog.csdn.net/much0726/archive/2008/11/11/3276839.aspx)的基础上描述的。

1.  TestDataSet.xsd文件的数据集绑定中,选择“配置”,在弹出的配置向导中将SQL语句修改为:select * from Data where Col001=@col001,点确定。在预览数据的窗口中可以测试下写的SQL语句,其中@col001是外部的参数,在属性中可以配置所有参数的属性,比如,是否支持NULL的参数,DbType是指传入参数的类型,ProviderType是指数据库中的类型。

 

 

 

 

 

2.  回到原来的Test.aspx页面中,在ReportViewer控件头部拖入一个TextBox和一个Button,这里也可以使用Dropdownlist,都是一样的。

 

 

3.  这里添加参数的传入有两个方法。

a)         使用属性配置传入,在ObjectDataSource1属性的SelectParameters中添加参数,数据源选择controlControlID选择TextBox1,记得把名称该为Col001.

 

 

 

b)        使用代码动态添加,在Button1的代码中添加:

  1. protected void Button1_Click(object sender, EventArgs e)
  2.     ObjectDataSource1.SelectParameters[0].DefaultValue = TxtBeginTime.Text.Trim();
  3.     ReportViewer1.LocalReport.Refresh();
  4. }

4.  按F5运行程序,查看效果,在文本框中添加1,然后点按钮.

 

小结

第一种方法的缺点就是页面载入时自动就选择了绑定该参数,如果参数是空,而DataSet中有没有设置为允许空的时候就会出错,第二种方法比较灵活,在代码中可以自由添加,不过在多个按钮的复杂绑定中记得将之前的参数Clear掉。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章