SSRS报告,导出到EXCEL会产生rrRenderingError错误 - ' MS.Utility.EventTrace'的类型初始化程序。抛出一个例外

时间:2017-08-24 14:55:18

标签: reporting-services

我正在运行SQL Server 2016并运行本地报告服务。 我可以很好地运行我的SSRS报告并将其显示在屏幕上。 我也可以将它们导出为PDF或CSV,但如果我尝试导出到Word,PP或EXCEL,我会得到:

Reporting Services Error
An error occurred during rendering of the report. (rrRenderingError)
An error occurred during rendering of the report.
The type initializer for 'MS.Utility.EventTrace' threw an exception.
Requested registry access is not allowed.

同样的报告在办公室的其他人机器上运行良好,所以我知道它与报告本身无关。 我试过了 有没有其他人有这个问题或知道如何改变它?

5 个答案:

答案 0 :(得分:3)

我只是花了几个小时在SSRS 2019的全新安装中使用旧版本中的更新数据库来解决此问题。

我使用的是权限较低的执行帐户,不想永久成为完整的本地管理员,但是我尝试将其添加失败。

我从Report Services配置管理器中的无人参与执行中删除了该帐户,并且突然能够导出到XLSX。我不确定现有报告的后果,因此我也不满意该解决方案。

在其他地方,我看到了一个建议使用进程监视器(procmon)来监视注册表项访问被拒绝,您可以在这里procmon下载。 很难搜索所有输出,但是您可以按注册表项访问进行过滤,然后查找RS可执行文件或结果ACCESS DENIED。

在我的情况下,是HKU \%服务帐户sid%\ Software \ Microsoft \ Avalon.Graphics,并授予执行帐户(而不是运行服务的帐户)对该密钥的读取权限解决了此问题。

答案 1 :(得分:0)

您可能会在Excel中收到此错误,因为可以放入Excel工作表中的最大行数为65536.如果您的数据的行数多于该数据,则会抛出该错误。

答案 2 :(得分:0)

我遇到了同样的问题。检查URL(一旦单击excel)是否格式为EXCELOPENXML。如果是,请将其更改为EXCEL

然后它将下载并正常工作。

默认情况下,您可以通过在报告服务下更改“ rsserverconfig”文件将其启用为“ EXCEL”。它将以“ xls”格式而不是“ xlsx”格式下载

答案 3 :(得分:0)

在Windows Server 2016和SQL 2016全新安装,带有SSRS且安装了所有SP和CU以及更新了Windows的Windows Server 2016上,我在SSRS2016中遇到相同的问题。

要确认我的修复,执行帐户不是SSRS服务器上本地管理员组的成员,一旦添加并停止/启动SSRS,我现在能够导出到Excel&Word,这不是最安全的方法使它工作,但比启用已贬值的Excel 2003更好。

答案 4 :(得分:0)

我在SSRS 2019中遇到了同样的问题,并且修复非常容易。

在Report Server Configuration Manager>服务帐户中,我将其设置为“使用内置帐户” =“虚拟服务帐户”。

我更改为“用户另一个帐户”,并选择了一个属于Administrators组的本地用户。

注意:这不是执行帐户。这是用于服务帐户的。