好的,我在使用RDLC时遇到了很多麻烦,所以回到RDL报告。现在,我知道我需要一个报告服务器来运行报告,然后在前端我可以使用报告查看器并选择报告的路径。我正在使用我的本地计算机,所以至少要让它在本地工作。我不明白如何在本地安装报告服务器。我在网上发现了几篇MSDN文章,但它们过于复杂。是否有关于如何在网页中使用RDL报告的简单教程?
答案 0 :(得分:1)
SQL Server Reporting Services(SSRS)作为Microsoft SQL Server的一部分安装。您需要使用SQL Server安装媒体来安装SSRS。您可以在没有其他SQL Server组件的情况下安装仅安装SSRS,但是您需要使用SQL Server来存储SSRS保留其数据的数据库。
我对低端选项没有太多经验,但SSRS可用“SQL Server Express with Advanced Services”
答案 1 :(得分:0)
我认为你熟悉asp.net。创建一个新的asp.net应用程序或网站。 添加Microsoft.Reporting.WebForms的参考(右键单击 - >添加引用)
然后在你的Page指令
中添加它<%@ Register Assembly="Microsoft.ReportViewer.WebForms, Version=9.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"
Namespace="Microsoft.Reporting.WebForms" TagPrefix="rsweb" %>
然后您应该能够将reportviewer控件用作
<rsweb:ReportViewer ID="rptOne" runat="server" AsyncRendering="true" ProcessingMode="Remote"
ShowPrintButton="false" ShowPageNavigationControls="true" ShowParameterPrompts="false"
ShowBackButton="true" ShowExportControls="true" Height="1000px" Width="1000px"
SizeToReportContent="false">
</rsweb:ReportViewer>
(显然,你不需要设置我所做的所有属性。)
然后,您可以在
后面的代码中设置您的网址 Me.rptOne.ServerReport.ReportServerUrl = New System.Uri(sUrl)
Me.rptOne.ServerReport.ReportPath = sPath
答案 2 :(得分:0)
报告不是很有用,但报告比较困难 SQL Server Reporting Services(SSRS)使一个类在此代码段中传递整个报表查看器rpt =在堆上传入的报表查看器: rpt.LocalReport.DataSources.Clear();
Microsoft.Reporting.WebForms.ReportDataSource rptdTitle = new Microsoft.Reporting.WebForms.ReportDataSource();
rptdTitle.Name = "DataSet1";
rptdTitle.Value = dt2;
rpt.LocalReport.DataSources.Add(rptdTitle);
Microsoft.Reporting.WebForms.ReportDataSource rptdTop = new Microsoft.Reporting.WebForms.ReportDataSource();
rptdTop.Name = "DataSet2";
rptdTop.Value = dt1;
rpt.LocalReport.DataSources.Add(rptdTop);
Microsoft.Reporting.WebForms.ReportDataSource rptDate = new Microsoft.Reporting.WebForms.ReportDataSource();
rptDate.Name = "DataSet3";
rptDate.Value = dsTableDate;
rpt.LocalReport.DataSources.Add(rptDate);
Microsoft.Reporting.WebForms.ReportDataSource rptTable = new Microsoft.Reporting.WebForms.ReportDataSource();
rptTable.Name = "DataSet4";
rptTable.Value = dtReport;
rpt.LocalReport.DataSources.Add(rptTable);
rpt.LocalReport.ReportPath = System.Web.HttpContext.Current.Server.MapPath(@"~\Reports\rptPeriodTotals.rdlc");
rpt.LocalReport.Refresh();