SSRS 2005 - 通过ASP.net ReportViewer查看报表时出现rsDataSourceNotFound错误

时间:2012-04-04 10:45:20

标签: reportingservices-2005

我上传了一份报告并在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)

如果我重新启用“启用此数据源”选项,它将恢复为原始异常。

1 个答案:

答案 0 :(得分:0)

我终于找到了原因/解决方案!

我在文本编辑器中打开了.rdl文件,注意到数据集仍然指向以前的数据源。

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

我用新数据源替换了对前一个数据源的所有引用,现在它已成功运行。