how to open ssrs report from asp web page using report viewer

雨燕双飞 提交于 2019-12-03 06:25:41

You need to separate out the URL to the server, report path and add the parameters to a parameters array.

Here's a sample:

    protected void Page_Init(object sender, EventArgs e)
{
    if (!Page.IsPostBack)
    {
        // Set the processing mode for the ReportViewer to Remote
        reportViewer.ProcessingMode = ProcessingMode.Remote;

        ServerReport serverReport = reportViewer.ServerReport;

        // Set the report server URL and report path
        serverReport.ReportServerUrl =
            new Uri("http://<Server Name>/reportserver");
        serverReport.ReportPath =
            "/AdventureWorks Sample Reports/Sales Order Detail";

        // Create the sales order number report parameter
        ReportParameter salesOrderNumber = new ReportParameter();
        salesOrderNumber.Name = "SalesOrderNumber";
        salesOrderNumber.Values.Add("SO43661");

        // Set the report parameters for the report
        reportViewer.ServerReport.SetParameters(
            new ReportParameter[] { salesOrderNumber });
    }
}

Above taken from Using the WebForms ReportViewer Control.

Daniel

You should replace the "2%f" by "/".

The problem is with your ReportPath property, e.g:

%2fCustomer1 -> /Customer1

Very simple method to open SSRS :

                string reportName = "TestReport";
                string displayName = reportName;
                bool isDomainAuthentication = false;

                var reportParameters = new List<ReportParameter>();
                reportParameters.AddRange((List<ReportParameter>)Session["ReportParameters"]);

                string ReportServerURL = "http://DESKTOP38/ReportServer_SQLEXPRESS";
                reportViewer1.ServerReport.ReportServerUrl = new Uri(ReportServerURL);
                reportViewer1.ServerReport.ReportPath = "FolderName" + reportName;
                reportViewer1.ServerReport.DisplayName = displayName;
                reportViewer1.ShowPrintButton = true;
                reportViewer1.ShowToolBar = true;
                reportViewer1.ShowCredentialPrompts = false;

                if (!isDomainAuthentication)
                {
                    string userId = "DESKTOP38"; //Username
                    string password = "test";
                    string domain = ReportServerURL;

                    IReportServerCredentials reportCredentials = new ReportServerCredentials(userId, password, domain);
                    reportViewer1.ServerReport.ReportServerCredentials = reportCredentials;
                }
                if (reportParameters != null)
                {
                    reportViewer1.ServerReport.SetParameters(reportParameters);
                }
                this.reportViewer1.ServerReport.Refresh();
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!