Reporting Services で SQL Server 2005 を使用しています。多くのレポートがインストールされており、共有データ ソースを使用しているものとそうでないものがあります。Web サービスに行くものもあれば、SQL サーバー データベースに行くものもあり、今は 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 内と同じです。私はアイデアがありません。