1

レポートをアップロードし、Reporting Services 2005 でデータソースを作成しました。Report Manager でレポートを表示すると、正常に実行され、正しく表示されます。

ただし、ReportViewer コントロールを使用してレポートを表示する ASP.net アプリケーションでこのレポートを開こうとすると、例外が返されます。

例外の詳細: Microsoft.Reporting.WebForms.ReportServerException: データ ソース 'ReportTesting' が見つかりません。(rsDataSourceNotFound)

ReportServer サーバーのイベント ビューアーに警告が記録されます。

**Process information: 
    Process ID: 3536 
    Process name: w3wp.exe 
    Account name: NT AUTHORITY\NETWORK SERVICE** 

**Exception information: 
    Exception type: ReportServerException 
    Exception message: The data source 'ReportTesting' cannot be found. (rsDataSourceNotFound)** 

ReportManager ではレポートとデータソースが正常に実行されるのに、RepotrViewer では実行できない理由がわかりません。サーバーには (異なるデータソースを使用して) 正常に動作している他のレポートがあります。

更新: さらに混乱させるために - ReportManager で [このデータ ソースを有効にする] のチェックを外すと、ReportViewer コントロールでレポートを実行しようとすると、次のメッセージが返されます。

例外の詳細: Microsoft.Reporting.WebForms.ReportServerException: レポート サーバーはレポートを処理できません。レポートに関連付けられたデータ ソースが無効になっています。(rsDataSourceDisabled)

[このデータ ソースを有効にする] オプションを再度オンにすると、元の例外に戻ります。

4

1 に答える 1

0

やっと原因・解決法を発見!

.rdl ファイルをテキスト エディターで開いたところ、データセットがまだ以前のデータソースを指していることに気付きました。

<Query>
    <DataSourceName>[old datasource name]</DataSourceName>

以前のデータソースへのすべての参照を新しいデータソースに置き換えたところ、正常に実行されるようになりました。

于 2012-04-24T09:47:35.407 に答える