SharePoint :: 整合報表服務

SharePoint :: 整合報表服務

本文要介紹的是如何進行 SharePoint 與 Reporting Services 的整合,整合後,即可將在 SharePoint 上使用報表伺服器的功能,也能將 Reporting Services 報表直接佈署至 SharePoint 網站。

Microsoft SQL Server 2008 Reporting Services 增益集
http://www.microsoft.com/downloads/details.aspx?displaylang=zh-tw&FamilyID=200fd7b5-db7c-4b8c-a7dc-5efee6e19005

 

本文架構與軟體

RSAddin-00 架構圖 

 

整合設定步驟

  1. MOSS 伺服器上的 Reporting Services 已經使用預設組態進行安裝,所以在伺服器上已經有報表服務伺服器存在
  2. 使用 Reporting Serivces 組態管理員將資料庫改為 SharePoint 整合模式
  3. 安裝 Reporting Services Add-in for SharePoint
  4. 在 MOSS 管理中心啟動報表伺服器整合功能
    • 啟動報表伺服器整合功能
    • 授與資料庫存取權限
    • 管理整合設定
    • 設定伺服器預設值
  5. 在 MOSS 網站啟動報表伺服器整合功能
  6. 使用 SQL Server Business Intelligence Studio 報表設計師發佈報表

 

整合設定過程

以下設定過程圖檔供參考,不需說明者不再另行說明

連接 Reporting Services 組態管理員以變更報表服務資料庫模式

RSAddin-01

原報表服務的資料庫模式為原生模式

RSAddin-02 

點選左列選項的資料庫,再點選【變更資料庫】

RSAddin-03 

RSAddin-04 

RSAddin-05 

輸入新建的資料庫名稱,報表伺服器模式請記得選擇【SharePoint 整合模式】

RSAddin-06 

認證部分請根據實際狀況選擇,這邊使用的是 Windows 認證

RSAddin-07 

RSAddin-08 

RSAddin-09 

設定完成後,會發現報表伺服器資料庫還在原生模式,請點選左列最頂層的 SQL Server Instance 名稱來查看目前的報表伺服器狀態

RSAddin-10 

在報表伺服器狀態中可看到報表伺服器模式已變更為 【SharePoint 已整合】

RSAddin-11

再切回資料庫確認資料庫模式是正確的 SharePoint 整合狀態

RSAddin-12 

開始安裝 Reporting Services 增益集

RSAddin-13 

安裝完成後,到 MOSS 的管理中心 > 應用程式管理,如果沒有看到 Reporting Services 的功能選單,請點選網站動作 > 網站設定 > 網站功能 > 啟動【報表伺服器整合功能】

RSAddin-15 

RSAddin-16 

點選受與資料庫存取權,伺服器名稱會帶入預設的伺服器與預設執行個體,點選確定

RSAddin-17 

輸入服務帳戶名稱與密碼

RSAddin-18 

點選【管理整合設定】進入 Reporting Services 整合頁面,輸入正確的報表伺服器 URL 並選擇正確的驗證模式,按下確定後,如果沒有錯誤即會回到應用程式管理頁面;如遭遇錯誤,如後面兩張圖所示,請確認輸入的報表伺服器 URL 是正確的,或是參考 Reporting Services 增益集說明文件中,已知的錯誤有相對應的解決方法

RSAddin-21 

報表伺服器 URL 輸入錯誤,少了 /reportserver

RSAddin-19

此錯誤有可能是報表伺服器 URL 輸入錯誤,也有可能是驗證模式錯誤,請確認報表服務組態管理員的服務帳戶是否正確,或參考報表服務增益集的說明,以下摘自說明文件的 7.4 節

7.4 Reporting Services 的服務帳戶需求

使用內建帳戶的限制會套用至以 SharePoint 整合模式執行的報表伺服器。下列因素的組合將產生報表伺服器服務的帳戶需求:

  • 報表伺服器與包含一部以上電腦的 SharePoint 伺服陣列整合。
  • 報表伺服器和 SharePoint 管理中心網站在不同的電腦上執行。

在此狀況下,如果報表伺服器服務在內建帳戶 (例如 NetworkService) 底下執行,則 SharePoint 管理中心的 [授與資料庫存取權] 選項將無法正確運作。因此,如果透過 SharePoint 網站存取任何 Reporting Services 功能,就會接到下列錯誤訊息:

「連接到報表伺服器時,發生意外的錯誤。請檢查報表伺服器是否可用,以及是否針對 SharePoint 整合模式設定。--> 伺服器無法處理要求。--> 用戶端找到的回應內容類型為 'text/html; charset=utf-8',但需要的是 'text.xml'」。

若要避免此錯誤發生,請選擇下列其中一種方法:

  • 在主控報表伺服器的電腦上,繼續將報表伺服器服務當做 NetworkService 執行,然後將內建帳戶 (例如 NT_AUTHORITY\NetworkService) 加入至 WSS_WPG Windows 群組。
  • 設定服務帳戶,以便在網域使用者帳戶底下執行,如下所示:
  1. 建立服務主要名稱 (SPN),向您要使用的帳戶註冊報表伺服器服務。
  2. 啟動 Reporting Services 組態工具,並連接到報表伺服器。
  3. 按一下 [服務帳戶],輸入網域使用者帳戶,然後按一下 [套用]。
  4. 重新啟動報表伺服器服務。

RSAddin-20 

最後點選設定伺服器預設值,確認可以進入 Reporting Services 伺服器預設值頁面,如此整個報表服務整合設定便無問題

RSAddin-22 

進入 MOSS 網站的網站設定,看看是否有 Reporting Services 功能,如果沒有,請依前述方法啟動【報表伺服器整合功能】

RSAddin-23 

打開 SQL Server Business Intelligence 報表設計師

RSAddin-24

佈署報表時,請確認下面三個屬性的佈署位置是正確的

  • TargetDataSourceFolders 與 MOSS 整合後要發佈的文件庫位置,此位置通常會在 TargetServerURL 下
  • TargetReportFolder 與 MOSS 整合後要發佈的文件庫位置,此位置通常會在 TargetServerURL 下
  • TargetServerURL 與 MOSS 整合後要發佈的 MOSS 網站位置;如本例所發佈的位置是 MOSS 下的子網站文件中心

RSAddin-25 

發布成功後即可在文件庫中看到 DataSource 與報表 EmployeeContact

RSAddin-26

報表在文件庫中的功能

RSAddin-27

在 MOSS 上瀏覽報表

RSAddin-28

 

其他資源

如果要進行多台伺服器或 SQL Server, Reporting Serivces, SharePoint 分散佈署,可參考下面資訊

How to: Configure SharePoint Integration on a Stand-alone Server
http://technet.microsoft.com/en-us/library/bb677368.aspx
How to: Configure SharePoint Integration on Multiple Servers
http://technet.microsoft.com/en-us/library/bb677365.aspx
Configuring Reporting Services for SharePoint 3.0 Integration
http://msdn.microsoft.com/en-us/library/bb326356.aspx
How to: Configure Report Server Integration in SharePoint Central Administration
http://technet.microsoft.com/en-us/library/bb326213.aspx
How to: Switch Server Modes (Reporting Services Configuration)
http://technet.microsoft.com/en-us/library/bb326407.aspx