0
我無法在內存中加載(幾個)Crystal的ReportDocuments的多個實例。使用下面的代碼:Crystal Reports最大活動實例
Dim sRPT As New ReportDocument
sRPT.Load("PATH\TO\MY.RPT")
Dim sRPTs As New List(Of ReportDocument)
For i = 0 To 100
Dim sClone As ReportDocument = sRPT.Clone
sClone.Refresh()
sRPTs.Add(sClone)
Console.WriteLine("RPT Clonado " & i.ToString())
Next
當我到達第74屆實例
,刷新()調用拋出了「報告加載失敗」異常。此外,即使直接調用.Load(path)方法也會發生相同的異常,並且會影響應用程序內的所有ReportDocumetns,無論我正在加載/刷新的RPT文件如何。
我正在使用Crystal XI R2,但是使用v12程序集(CR 2008)測試此代碼時也遇到了同樣的問題。
有沒有人偶然發現過類似的東西?所有這些實例的原因是爲每個用戶提供多個rpt文件的緩存報告,並且如果對此問題有一個不太令人討厭的解決方法,它很可能會保持原樣。
感謝您的快速發佈!我們不得不回顧報告模塊中的所有代碼,以備類似的問題。但是這個「報告緩存」旨在維護開放的隨時可用的實例,因此我們不需要在每次需要使用時都打開這些報告(我們使用的RPT永遠加載並且可能我們不會被允許改變它們),所以關閉*所有*緩存報告不是一個選項(如果有不必要的 - 我們部分清理緩存 - 永遠空閒 - 報告實例)。 再次感謝, Germán – 2010-08-25 16:56:57