2011-05-31 85 views
0

我想在ASP.NET中遠程調用rdl報告,並且我成功地調用了沒有參數的報告。但是,當我傳遞參數,報告我沒有填充和不給錯誤。它顯示在報告中。在下面找到我的代碼。並請建議我一樣。傳遞ASP.NET的參數或RDL報告

MyReportViewer.ProcessingMode = Microsoft.Reporting.WebForms.ProcessingMode.Remote; 
    MyReportViewer.ServerReport.ReportServerUrl = new Uri(@"http://gblon9sqm10 /ReportServer_DB10"); 
     MyReportViewer.ServerReport.ReportPath = "/Reports/Report1"; 
     MyReportViewer.ShowParameterPrompts = false; 
     MyReportViewer.ShowPrintButton = true; 

     ReportParameter[] rptParameters = new ReportParameter[1]; 
     rptParameters[0] = new ReportParameter(); 
     rptParameters[0].Name = "exposureType"; 
     rptParameters[0].Values.Add("Impressions"); 
     MyReportViewer.ServerReport.SetParameters(rptParameters); 
     MyReportViewer.ServerReport.Refresh(); 
+0

你可以打開報告的rdl文件並在那裏看到參數嗎? – sajoshi 2011-05-31 09:19:54

+0

是的,我有參數,我創建了2報告一個參數和其他沒有參數。一個沒有參數工作正常。如果我傳遞參數來報告沒有參數我得到錯誤,因爲參數不存在。當我通過參數報告參數我沒有得到任何錯誤,並沒有顯示任何東西。 – Raju 2011-05-31 10:32:33

+0

你確定第二份報告工作正常嗎?如果您只是添加標籤參數來報告1併爲此設置參數會發生什麼? – toxaq 2011-05-31 12:24:22

回答

1

這已經有一段時間,因爲我設置了,但我記得有,以確保您沒有設置該報告再次回傳。這是我在Page_Load中的代碼:

if (!Page.IsPostBack) 
{ 
    rptViewer.ServerReport.ReportServerUrl = Settings.ReportServerUrl; 
    if (rptViewer.ServerReport.ReportServerCredentials == null) 
     rptViewer.ServerReport.ReportServerCredentials = new ReportServerCredentials(); 
    List<ReportParameter> parameters = new List<ReportParameter>(); 
    parameters.Add(new ReportParameter("TitleLabel", "Title string here")); 
    //More parameters added here... 
    rptViewer.ServerReport.SetParameters(parameters);    
} 
+0

仍然不能正常工作,同樣的問題。 – Raju 2011-05-31 10:10:35

0

我面臨着相同的代碼和配置相同的問題,因爲你所提到的。

我試了一下額外的工作,並擺脫了問題。

我創建了一個帶有單個參數「Name」的新報表,並將ReportParameter的值從代碼隱藏傳遞給此參數。在報告配置端設置參數文本的類型並允許空白值。請注意,在這裏我沒有觸及任何其他參數設置意味着保持默認狀態。

這適用於我,然後我開始添加更多的參數,它工作得很好。

沒有任何瀏覽器限制。

嘗試如上所述,仍然面臨問題,然後回覆我,我會把一個示例代碼。

希望它能幫助你。

相關問題