我公司将把Azure环境用于未来的应用程序。但是,目前,Azure不允许我们将报告部署到Azure SQL Server。因此,显示报告的唯一方法是使用本地ReportViewer。
我的工作是编写一个报告引擎,使用本地ReportViewer来显示报告。但是,我在RDLC文件中使用DataSources和DataSets信息时遇到了困难。
挑战1:LocalReport.LoadReportDefinition()
方法不检索DataSources和DataSet信息。如何从RDLC文件中获取DataSources和DataSets信息?
挑战2:获取DataSources和DataSets信息后,如何使用这些信息生成DataSet?虽然我可以通过XML进程来分阶段处理DataSources和DataSets信息,但是我自己很难处理所有情况。
简单来说,我试图在服务器端模拟获取数据进程,但使用本地报告。
非常感谢你!
答案 0 :(得分:0)
SSRS报告分为2种类型。
每两种类型都在服务器端工作,但存在差异。在rdlc报告中,您必须在下面将数据集绑定到报告中:
rds.Name = Constants.Accounting.ClientReportDataSourceName.GeneralReportDS;
rds.Value = ((GeneralReport)Session[Constants.Accounting.Session.GeneralReport]).Tables[0];
ReportViewerControl.LocalReport.DataSources.Add(rds);