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掉。

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