SSRS列印報表錯誤0x8007F304

最近上了一批SSRS的新報表,使用者抱怨列印時,會出現"列印時發生錯誤。(0x8007F304)"的錯誤訊息。

印象中,Reporting Service由SQL 2000版本昇級至SQL 2005的SSRS後,有遇過類似問題,絕大部分的原因都來自於列印時會用到的一顆ActiveX元件--RSClientPrint Class。

Google了一下,研判這次遇到的問題也肇因於RSClientPrint的Bug,而MS在SQL 2005 SP1裡已修復了這類問題。因此,我猜想是使用者連上了未裝SP1的Reporting Service主機,安裝到舊版的SSRS RSClientPrint。

要驗證安裝版本,可以開啟C:\WINDOWS\Downloaded Program Files,在清單中找尋一下RSClientPrint Class,後方有個版本欄位: [參考資料]

  • SQL 2000        : 2000.80.1038.0
  • SQL 2005 RTM : 2005.90.1399.0
  • SQL 2005 SP1 : 2005.90.2047.0
  • SQL 2005 SP2 : 2005.90.3042.0

不過,檢測的結果,出問題的機器安裝的RSClientPrint是2000.89.1038.0,不是想像中的2005舊版。進一步詢問,使用者曾試著更新為2005.90.1399.0,但更新後,變成印舊版報表有錯誤。基於先查到的資訊,決定換用SP2最新版2005.90.3042試試手氣,賭一下Bug在SP1後已經修好。

將所有IE關閉,在RSClientPrint Class上按右鍵選移除後,再重新連上SP2版的Reporting Service重新安裝列印元件,問題排除。

PS: 還有個問題,安裝列印元件需要Admin的權限,一般使用者多半不具有管理者身份,導致無法安裝。MSDN提到可否下載安裝ActiveX Control與IE的安全設定有關,另外,也有人找到自動部署安裝的方法,兩種做法都可考慮。

歡迎推文分享:
Published 24 March 2008 08:23 PM 由 Jeffrey
Views: 20,890



意見

# zeanmar said on 12 November, 2010 12:11 AM

你好

如果在C:\WINDOWS\Downloaded Program Files裡面沒看到他...

可是在開啟報表的那個IE選工具->管理附加元件

這裡面卻有

名稱       RSClientPrint 2005 Class

發行者      Microsoft Corporation

狀態       已啟用

檔案日期     2009年5月27日, 上午 03:26

版本       9.00.4053.00

可是點下去又出現 "無法載入用戶端列印控制項"

這....這要怎麼移除阿  囧rz.....

你的看法呢?

(必要的) 
(必要的) 
(選擇性的)
(必要的) 
(提醒: 因快取機制,您的留言幾分鐘後才會顯示在網站,請耐心稍候)

5 + 3 =

搜尋

Go

<March 2008>
SunMonTueWedThuFriSat
2425262728291
2345678
9101112131415
16171819202122
23242526272829
303112345
 
RSS
創用 CC 授權條款
【廣告】
twMVC

Tags 分類檢視
關於作者

一個醉心技術又酷愛分享的Coding魔人,十年的IT職場生涯,寫過系統、管過專案, 也帶過團隊,最後還是無怨無悔地選擇了技術鑽研這條路,近年來則以做一個"有為的中年人"自許。

文章典藏
其他功能

這個部落格


Syndication