在參考這篇文章: http://msdn.microsoft.com/en-us/library/ms252072(VS.80).aspx如何在報告查看器中將參數添加到SSRS URL?
我可以從我的Web應用程序訪問我的SSRS報告,但問題是它不接受在URL中的參數。
這裏是它接受
報表服務器URL格式: http://ABCD.com/reportserver 報告路徑: /工程公司/銷售報告/ ABC
誰能幫助我? 我想通過報告查看器在SSRS網址中傳遞參數。
在參考這篇文章: http://msdn.microsoft.com/en-us/library/ms252072(VS.80).aspx如何在報告查看器中將參數添加到SSRS URL?
我可以從我的Web應用程序訪問我的SSRS報告,但問題是它不接受在URL中的參數。
這裏是它接受
報表服務器URL格式: http://ABCD.com/reportserver 報告路徑: /工程公司/銷售報告/ ABC
誰能幫助我? 我想通過報告查看器在SSRS網址中傳遞參數。
似乎無法添加評論Sam的答案,所以我會後另一:
的ReportViewerControl ReportServerURL性能比一個很大的不同格式化一般URL以訪問報告。您可以使用sam提供的邏輯將瀏覽器控件導航到該URL,該URL也將在您的Web應用程序中呈現報告。如果你想要嘗試的話,那是另一回事。
作爲一個說明,有各種各樣的原因,你可以選擇一個webbrowser控件與reportviewer控件。 reportviewer控件在代碼隱藏中管理起來要容易得多,但在長時間刷新報表時存在內存問題(通過谷歌關於內存泄漏的大量信息)。這是我改爲使用web瀏覽器和手動格式化的URL來傳遞參數的場景。
您無法通過URL傳遞參數,因爲控件期待的是到實際報表服務器的URL,僅此而已。
示例: serverReport.ReportServerUrl = new Uri(「http://ABCS.com/reportserver」); serverReport.ReportPath =「/ AdventureWorks Sample Reports/My Report」;
雖然通過使用ReportViewer.ServerReport.SetParameters()函數,但您可以在代碼中傳遞這些參數。下面是我用於此目的的代碼片段:
var parametersCollection = new List<ReportParameter>();
//add generic parameters that every report needs
parametersCollection.Add(new ReportParameter("RandomizerString", new Random().Next().ToString(), false));
parametersCollection.Add(new ReportParameter("MachineName", Request.UserHostAddress.ToString(), false));
ERDashboard.ServerReport.SetParameters(parametersCollection);
嗨,我想在頁面加載中使用它?我想補充什麼?謝謝。 – Valley
使用Microsoft.Reporting.WebForms;然後是的,你可以使用pageload事件中的代碼。請注意,您必須更改最後一行以反映您自己的ReportViewerControl名稱,而不是上面列出的ERDashboard。 – ThoughtIKnewSSRS
看看這個頁面http://technet.microsoft.com/en-us/library/aa337091.aspx – ThoughtIKnewSSRS
你會建議什麼?通過報告查看器或Web瀏覽器? – Valley
我發現使用reportviewer控件最簡單,然後在代碼後面設置所有內容。請參閱http://technet.microsoft.com/en-us/library/aa337091.aspx – ThoughtIKnewSSRS
使用web瀏覽器,您會發現設置URL路徑更繁瑣。 – ThoughtIKnewSSRS