2012-03-14 80 views
1

每當我在同一時間運行多個報告時,我得到此異常。我設置爲報告文檔以支持無限數量的水晶報告。.NET中的Crystal報告問題

object舉報;

報告與cyrstal報告的一個實例,

在頁面卸載報告

設置爲null創建。但是我不知道如何處理一個對象? (可能處置會有所幫助)。請分享如何處置對象。

對此有何看法?

System.Exception:加載報告失敗。 ---> System.Runtime.InteropServices.COMException:系統管理員配置的最大報告 處理作業限制已達到 。在 CrystalDecisions.ReportAppServer.ClientDoc.ReportClientDocumentClass.Open在 CrystalDecisions.ReportAppServer.ReportClientDocumentWrapper.Open(對象& DocumentPath,的Int32選項)(對象& DocumentPath,的Int32選項)在 CrystalDecisions.ReportAppServer.ReportClientDocumentWrapper.EnsureDocumentIsOpened() ---內部異常堆棧跟蹤的末尾在CrystalDecisions.ReportAppServer.ReportClientDocumentWrapper.EnsureDocumentIsOpened() 在CrystalDecisions.CrystalReports.Engine.ReportDocument.Load(字符串 文件名,OpenReportMethod openMethod,Int16的parentJob)在 CrystalDecisions.CrystalReports。 Engine.ReportDocument.Load(字符串 文件名)

+0

也許張貼一些代碼顯示使用的對象,在短暫的... – 2012-03-14 23:55:18

+2

這裏有一個解決方案http://forums.asp.net/t/985049.aspx/1 – Mathieu 2012-03-14 23:59:08

+0

馬修有了答案 – 2012-03-15 01:13:32

回答

0

沒有看到您的代碼我無法確定您是否正確地處置報告對象。當報表被綁定到查看器時,會出現內存泄漏,如果查看器處於解除報告對象狀態並且永遠不會處理的情況下。這會導致「PrintJobCount」增加,直到達到極限並崩潰。您可以謹慎地更改'HKEY_LOCAL_MACHINE \ Business Objects [您的版本號] \ Report Application Server \ Server \ PrintJobLimit'下的註冊表值,但這隻會爲您提供更多空間,直到您回收應用程序池爲止。從長遠來看,您應該在對生產環境進行任何註冊表更改之前確定是否存在內存泄漏。