1. 程式人生 > >報表載入失敗(Report Load Failed)

報表載入失敗(Report Load Failed)

我被這個問題玩瘋,我找了很多資料,也試著很多可能,很謝謝圖表區的朋友們的幫忙,特別是泰哥和立雙,給了很多幫助

糾結了很久,知道最近我把系統優化,最後的問題還是自己的程式碼身上,所以上面的方法是能夠解決的。

故障描述:
VS2005的水晶報表在WEB應用程式中多次使用後,就會出現載入報表失敗.重啟WEB伺服器又正常了.過一段時間又出同樣問題

使用者使用水晶報表的時候出現載入報表錯誤.
剛開始使用者使用非常正常,但使用一天(該使用者使用報表頻率非常大)就會出現"報表載入失敗",然後使用者重啟伺服器這後又可以了

我發現在C:/WINDOWS/Temp這個臨時檔案裡面有大量的水晶報表檔案,每使用一次就會生成幾個檔案,
在電腦沒有重新啟動的情況下它不會被刪除,而出現大量的無用檔案,

在google裡面搜了一圈發現也有人碰到這樣的情況但回答的很模糊只是說要將水晶報表裝載的文件關閉掉,
從這裡可以看出出現這樣的錯誤應該是程式設計師人為照成的.

具體解決如下:
1.ReportDocumen例項必須為類成員

        private   ReportDocument   prtp   =   new   ReportDocument();      

2.使用完水晶報表必須關閉檔案,這樣子就不會在windows的臨時檔案裡面產生.


        private   void   Page_Unload(object   sender,   EventArgs   e)
        {
                prtp.Dispose();

        }
                        
Page_Unload   事件是在頁面完全顯示的時候執行,這樣子就解決了.

再次謝謝各位!!