SSRS报告错误无效的对象名称System.Data.SqlClient.SqlException:无效的对象名称't​​empdb.dbo.TEMP_ID_XXXX'

时间:2019-03-18 09:50:29

标签: sql sql-server reporting-services tempdb invalid-object-name

我面临一个奇怪的问题,如果有人可以帮助我,我将感到很高兴。

在我们公司中,我们使用SSRS将每日报告发送给同一管理层。

我们有3种报告类型,其中3种报告使用不同的参数执行了更多次。第一次执行2次,第二次执行3次,第三次执行更重,下降6次。

所有3个查询都使用CTE表具有相同的原理。这些查询是在SSMS中开发的,并通过Visual Studio添加到报表中。

从这里开始疯狂。

在第一版中,我们有相同的时间表。他们中的两个被执行而没有错误,并且电子邮件已交付。

第三份报告因错误而掉线

  

Microsoft.ReportingServices.ReportProcessing.ReportProcessingException:   数据集“ ZZZ”的查询执行失败。 ->   System.Data.SqlClient.SqlException:无效的对象名称   'tempdb.dbo.TEMP_ID_XXXX'。

当我们禁用其他2个报告并手动执行第3个报告时,报告成功完成。

但这只是几天,几天之内,所有报告都已成功交付。

然后,我们决定拆分这3个报告的时间表。因此,我们创建了2个工作步骤。一个用于前两个报告,一个用于第三次报告。

前两天,我们按需提供了报告,但是从昨天开始,我们面临着同样的问题。

我看到作业步骤之间的时差为数毫秒,尽管第一步的报告大约需要15秒才能完成。

我检查了执行日志,发现对于第一个报告的一个参数版本的执行,它需要:

    通过门户手动执行
  • 12990毫秒。

  • 作为作业执行时为23845毫秒(与其他5个参数并行执行)

  • 与所有其他报告并行执行时为35761毫秒(共11个)失败

我认为,如果在两个报告步骤之间添加并执行额外的步骤将使工作暂停1分钟,那将解决我的问题。

有人遇到任何类似的问题吗?

任何帮助将不胜感激!

0 个答案:

没有答案