我正在尝试在多租户情况下使用 SSRS。我们想要支持的基本版本是 SQL Server 2008,但如果需要 R2,我们可能会接受。
我目前正在使用 ReportingService2005.asmx 端点,该端点似乎公开了 ReportService2005SoapClient 类(即使所有示例似乎都显示 ReportingService2005 类)。
当我们运行报表时,我想从服务器复制该报表,添加嵌入式数据源,将数据集指向该数据源,然后运行报表。
我已经做到了:
从服务器获取 RDL
修改 XML 以添加 DataSource
将数据集指向新的数据源
...但是当我尝试“CreateReport”时,我收到以下错误:
System.Web.Services.Protocols.SoapException:数据集“DataSet1”引用了不存在的数据源“mydatasource_LOCAL”。
在 Microsoft.ReportingServices.Library.ReportingService2005Impl.ExecuteBatch(Guid batchId)
在 Microsoft.ReportingServices.WebServer.ReportingService2005.ExecuteBatch()
我已将数据集添加到 RDL,它看起来与我在设计器中添加一个时相同。但是,我认为需要向服务器添加一些东西?我错过了什么?
(顺便说一句,我知道 MS Dynamics 在单个实例中启用了多租户 SSRS,但我没有看到有关他们如何做到这一点的信息。如果他们有任何代码或他们共享的任何东西,有人可以指出我会很棒。)