2013-10-03 26 views
0

我們遇到將報告下載至pdf的問題。服務器:如上所述的SSRS R2。SSRS R2圖表報告下載至pdf慢

報告特定於一個ID。所以圖表將顯示一個單一的ID。我使用子報表方法向報表發送多個ID,並在單個報表中獲取不同的圖表頁面。當我發送大約38個ID(38頁報告)時,大約需要2分鐘下載到PDF,並且比例是相稱的(我們發送的最大數量大約是90個ID,大約需要5分鐘,從用戶角度來看是不可接受的)。 報告能夠以分秒的時間呈現。所以,我們沒有來自sql數據庫的問題。我們已經徹底增強了SQL以達到最佳性能。 Reportviewer能夠以分秒的時間顯示報告。但是,該問題是非常具體的下載該報告爲pdf。即使excel下載速度非常快,並在幾秒鐘內下載。

我已經經歷了大量的谷歌搜索,並嘗試了很多東西,如禁用服務器上的防病毒,從子報告以及主報告中刪除所有全局參數,也試圖保持啓用緩存。 最後,我們在服務器上擁有大內存,多核CPU以及足夠的磁盤空間。因爲,從ssrs下載PDF是CPU密集型和擅長內存密集型,我們已經研究過它。

在此先感謝您的答覆。這是我第一篇關於堆棧溢出的文章。這個網站一直是我很多時間的救星。

+0

歡迎來到SO,Ram Krishna。 – Brian

回答

0

我會懷疑以下兩件事之一。無論是您嘗試渲染如此多的子報表,出於某種原因,這會降低PDF渲染器的速度。嘗試禁用一些子報表或限制它只渲染一次(如果它們在某種重複對象中)。或者重做報表,以便它不需要調用子報表。

另一種可能性是圖表非常大或很複雜。我聽說過PDF渲染器需要很長時間才能生成大尺寸的圖表,並且縮小尺寸可以提高性能。如果情況確實如此,我不確定你應該如何處理。這取決於你的情況。

我會嘗試禁用報告的各個部分,並查看它是如何影響渲染時間,以找出究竟是什麼原因。

+0

感謝您的回覆。我們已經考慮過使用子報表移走併合併成一個報表的路徑,但由於報表定製的方式而失敗。 更確切地說,圖表確實不是很大,也很複雜。他們是非常簡單的圖表,但我們仍然會嘗試您關於在報告中禁用某些功能的建議。 –