0

我们公司有一个使用 SQL Reporting Service 的网站解决方案:解决方案中有一个 Reporting 项目,但解决方案中缺少该项目。所以我无权访问这些报告,但我知道它们在数据库中调用了哪些程序。目前只有一份报告存在生产问题,错误如下:

报表服务器发生内部错误。有关更多详细信息,请参阅错误日志。(rslInternalError) 有关此错误的详细信息,请导航到本地服务器计算机上的报表服务器,或启用远程错误。

我用谷歌搜索,我发现我应该查看 SQL Server 报告日志以查看问题所在,我搜索了更多,但对于所有遇到此错误的人,它会发生在所有报告中,而不仅仅是单个报告。

4

1 回答 1

2

该错误消息仅表明存在阻止报告运行的错误;虽然它可以指示实例范围的问题,但它仅与正在运行的实际报告相关,因此也可以仅与该报告相关。

你还没有说你是否搜索过日志文件——这是最好的起点。任何报告异常都将记录在这里。如果您还没有,您应该在这里检查 - 根据您的版本检查位于%programfiles%\Microsoft SQL Server\<SQL Server Instance>\Reporting Services\LogFiles\.

尝试获取更多信息的更多建议 - 这些都需要对报表服务器的不同级别的访问。

启用远程错误

http://technet.microsoft.com/en-us/library/aa337165.aspx

这意味着将显示实际错误而不是您看到的一般错误消息,因此您可能会通过这种方式获得更多信息。

运行底层存储过程

数据库级别的错误通常会导致错误,例如除以零错误 - 当您运行存储过程时会发生什么?捕获通过 SQL Profiler 使用的确切参数非常有用,因此您可以准确复制报告正在执行的操作。

从报表服务器获取报表代码

您说您丢失了报告代码,但假设您可以从报告服务器获取服务器端报告 - 此链接包含几个不同版本的详细信息:

http://sql-articles.com/blogs/download-export-rdl-files-from-report-server/

报告查看器中的调试报告

与下载上述报表定义类似,您可以从报表管理器网站的报表查看器应用程序中打开服务器端报表。这意味着您将能够在与 Visual Studio 类似的环境中查看报表设计器并检查报表代码,以及运行和调试报表。对生产实例执行此操作时要非常小心 - 只能作为最后的手段

希望这会给你一些新的选择。拥有对报表服务器的管理员访问权限将是重要的,以允许您执行所有这些故障排除任务。

于 2013-01-13T12:19:09.933 回答