2015-09-07 91 views
1

我在名爲WebForm1的網絡表單中使用名爲fromDatetoDate的兩個參數來過濾數據。 webform在加載時顯示數據。問題是,當我更改fromDate,toDate字段並單擊按鈕1提交時,它會返回到默認日期並使用相同的數據重新加載。如何使用新的輸入日期刷新reportviewer數據?如何在帶有參數的webform(不是winform)中使用reportviewer?謝謝你的幫助。如何刷新reportviewer中的數據?

這裏是我的WebForm1.aspx.cs中:

using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Web; 
using System.Web.UI; 
using System.Web.UI.WebControls; 

namespace WebApplication2 
{ 
    public partial class WebForm1 : System.Web.UI.Page 

    { 
     protected void Page_Load(object sender, EventArgs e) 
     { 
      this.fromDate.Text = "8/6/2015"; 
      this.toDate.Text = DateTime.Now.ToShortDateString(); 
     } 
    } 
} 
+0

你需要學習如何通過參數和刷新的ReportViewer設置SSRS報表參數。尋找如何將參數傳遞給報告查看器在谷歌和這個http://stackoverflow.com/questions/5103784/how-to-add-parameters-in-report-viewer也幫助你。 – ARH

+0

@ user1698255,當你點擊按鈕時,頁面被加載,而fromdate和todate字段被填充你在page_load方法中賦值的值,所以它就是這樣發生的,只需將兩行賦值放在!IsPostBack中,那麼它將會精細, – Gurunadh

回答

2

在你manualy分配沒有fromdate和todate值,並重新加載它上面的場景。沒有必要像這樣指定。您可以使用「fromDate.Text」從客戶端文本框中獲取值。然後將這些值傳遞給您的方法並將正確的數據返回給頁​​面。

0

您可以從網頁下面

string reportPath ="Report relative path" 
       // Set the processing mode for the ReportViewer to Remote 
       ReportViewer1.ProcessingMode = ProcessingMode.Remote; 
       ServerReport serverReport = ReportViewer1.ServerReport; 

       string reportserver = ConfigurationManager.AppSettings["ReportServer"]; 
       string username = ConfigurationManager.AppSettings["Username"]; 
       string password = ConfigurationManager.AppSettings["Password"]; 
       string domain = ConfigurationManager.AppSettings["Domain"]; 

       // Set the report server URL and report path 
       serverReport.ReportServerUrl = new Uri(reportserver); 
       serverReport.ReportServerCredentials = new ReportViewerCredentials(username, password, domain); 
       serverReport.ReportPath = reportPath; 


ReportParameter[] parameters; 
        parameters = new ReportParameter[2]; 
        parameters[0] = new ReportParameter("fromDate", "8/6/2015"); 
        parameters[1] = new ReportParameter("toDate", DateTime.Now.ToShortDateString()); 
        ReportViewer1.ServerReport.SetParameters(parameters);