2012-12-05 190 views
3

我正在使用SQL Server 2008 R2 Reporting Services,使用Report Builder 3.0设计报表并通过报表管理器(,而不是http://host/reportserver/)查看它们。从SSRS报表管理器显示rsProcessingAborted的自定义错误

我有大量的报告建立和访问这种方式,从数据库中读取数据,每小时刷新一次。刷新过程需要几分钟的时间,并且是一个简单的ETL C#脚本(我为每个表写入)删除所有匹配的行并插入新数据(在Transaction中)。这可能是我需要改变的过程的这一部分,所以我用SQL Server 2008 R2标记了这个问题。

我的问题是,无论何时导入和SSRS报告执行同时运行,我得到一个rsProcessingAborted错误。如果底层数据在执行时发生更改,它看起来像处理中止。我的一份报告非常复杂,需要几分钟时间才能运行,所以我发现这个错误很多,一般在其他报告中根本看不到它。

An error has occurred during report processing. (rsProcessingAborted) 
Cannot read the next data row for the dataset xxx. (rsErrorReadingNextDataRow) 

这些报告需要与不希望看到错误的用户共享。有没有什么办法可以

  • 让我进口脚本和SSRS执行“原子”这样的报告能够反正
  • 运行自定义报表管理器中显示的rsProcessingAborted错误,以便向用户显示的消息例如“此报告背后的数据正在刷新,请在5分钟后重试。” - 仍然刺激,但比上述错误更好...

回答

0

在报告中使用“NOLOCK”表提示。

For Example: 

SELECT [LastName] FROM [dbo].[AuditLog] WITH (NOLOCK) 
相关问题