使用microsoft viewer报告

时间:2009-10-27 17:20:15

标签: c# reporting-services reportviewer

如何使用microsoft report viewer创建参数化报告?

3 个答案:

答案 0 :(得分:0)

在您的问题中添加更多详细信息,但据我了解MSDN ReportViewer Controls对您自己了解更多。

答案 1 :(得分:0)

答案 2 :(得分:0)

首先,我会避免使用Microsoft报表查看器控件。只需使用浏览器控件,然后浏览到报告,就像在使用浏览器时一样传入URL中的参数。

由于很多原因,情况要好得多。

  1. MS报表查看器控件有很多错误,你会坚持使用。
  2. 浏览器和报告查看器以不同方式(略微)呈现报告,例如边距等。因此,如果您切换到Web应用程序并需要使用浏览器访问报告,则必须调整大多数报告。这让我想到了下一期。 。
  3. 如果您需要转到Web应用程序,则需要重新实现调用报表,传递参数等的方式,而不是仅仅使用您已创建的浏览器功能(使用控件vs以不同方式访问报表) 。使用浏览器)
  4. 否则,如果您真的想要使用Report Viewer控件,这里有一个示例(使用.NET 2.0):

        ReportViewer rvReportViewerControl = new ReportViewer();
       rvReportViewerControl.ProcessingMode = Microsoft.Reporting.WinForms.ProcessingMode.Remote;
        rvReportViewerControl.ServerReport.ReportServerUrl = new Uri("http://<SERVERNAME>/ReportServer");
        rvReportViewerControl.ServerReport.ReportPath = "<FOLDER PATH TO REPORTS>");
        rvReportViewerControl.ShowParameterPrompts = false;
        Microsoft.Reporting.WinForms.ReportParameterInfoCollection rpInfoCollection = rvReportViewerControl.ServerReport.GetParameters();
        if (rpInfoCollection.Count > 0)
        {
             List<ReportParameter> paramList = new List<ReportParameter>();
    
             foreach (ReportParameterInfo reportParameter in rpInfoCollection)
             {
                  string parameterName = reportParameter.Name.ToString();
                  string parameterValue = "";
                  bool isParameterVisible = reportParameter.Visible;
                  paramList.Add(new ReportParameter(parameterName, parameterValue, isParameterVisible));
             }
    
             rvReportViewerControl.ServerReport.SetParameters(paramList);
        }
    
        rvReportViewerControl.RefreshReport();
    

    This site有很多有用的信息。