如何在SSRS中安装没有凭据的共享数据源

时间:2009-05-07 15:23:41

标签: web-services reporting-services db2 credentials

我正在使用SQL Server 2005和Reporting Services。我安装了很多报告,有些使用共享数据源,有些则没有;一些转到Web服务,一些转到sql server数据库,现在我正在尝试连接到DB2数据库。

我已经在Visual Studio 2005中成功创建了一个共享数据源和报表。我可以很好地提取数据并将其显示在设计器的报表中。我现在正尝试通过ssrs Web服务安装报告和数据源(与我所有其他报告的方式相同)。

问题在于我们的大多数数据源都使用集成安全性,对于此数据源,我使用“凭据不是必需的”,因为它们列在连接字符串中。这是我的安装代码:

Dim definition As New ServiceProxy.DataSourceDefinition

definition.ConnectString = connectionStringIncludingUsernameAndPassword
definition.Extension = "OLEDB"
definition.CredentialRetrieval = ServiceProxy.CredentialRetrievalEnum.None 

ServiceWebService.CreateDataSource(dataSourceName, containingFolderFromRoot, True, definition, Nothing)

这也很好,没有错误,似乎在ssrs中正确创建了数据源。但是当我去运行报告时,我得到了这个错误:

  

无法完成当前操作   因为用户数据源   需要的凭据   执行此报告不存储在   报表服务器数据库。   (rsInvalidDataSourceCredentialSetting)

我的报告已正确连接到我的数据源,并且我的数据源已正确设置为不需要的凭据,因此它与Visual Studio中的所有内容完全相同。我没有想法。

1 个答案:

答案 0 :(得分:0)

问题有几个:

  1. 用户名和密码列在连接字符串中,而不是在服务器
  2. 报表服务器上安装的db2 connect软件已过期(8而不是9)
  3. 用户组'DB2Users'没有任何成员
  4. 在纠正这些问题后,报告有效!