2012-12-05 188 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) 
相關問題