針對 SQL Server Integration Services 中的封裝資料定義報表資料集
在 Microsoft SQL Server 2005 中,您可以建立 Reporting Services 報表,此報表使用執行 Integration Services (SSIS) 封裝所產生的資料。封裝必須滿足此主題中所述的最小需求。
下列事件的流程描述使用封裝資料之報表的資料處理:
- 使用者開啟報表,或者報表伺服器透過已排程的作業產生報表時,會起始報表處理。
- 報表伺服器連接到儲存在檔案系統或 msdb 資料庫中的封裝 (.dtsx) 檔案。報表中的連接字串必須指定封裝檔案的完整路徑。
- 報表伺服器會將報表中定義的查詢,傳遞至 Integration Services 以供處理。查詢是 DataReader 目的地的名稱。
- 報表伺服器會擷取資料,然後將資料合併至報表配置,並依指定轉譯資料。
您不能從 Integration Services 事件觸發報表處理。產品的事件模型不會整合。報表處理必須從 Reporting Services 起始。
您必須先設定自動執行帳戶和 SSIS 資料處理延伸模組,才可以選取 SSIS 作為資料來源類型。如需詳細資訊,請參閱<設定自動報表處理的帳戶>和<設定 Reporting Services 來使用 SSIS 封裝資料>。
設計封裝
並非所有的封裝都可用來為報表提供資料。報表資料的封裝需求包括使用一個 DataReader 目的地,這會提供記憶體中的目的地目標。下列清單描述建立封裝和報表的其他需求與步驟。
- 在 Integration Services 中,建立至少具有一個可填滿一或多個 DataReader 目的地之資料流程工作的封裝。目的地物件必須包含您要在報表中使用的輸入資料行。
- 設定與外部資料來源的連接。如果封裝連接到 SQL Server 關聯式資料來源,您可以選擇 Windows 驗證或 SQL Server 驗證。當設定此連接時,請搭配已儲存的密碼使用 SQL Server 驗證。
- 執行封裝,以確認它傳回您要的資料。如需有關如何設定資料檢視器,以顯示封裝傳回之資料的詳細資訊,請參閱<如何:將資料檢視器加入資料流程>。
- 將封裝儲存到檔案系統或 SQL Server 上的資料夾。不支援將封裝儲存到 SSIS 封裝存放區。
- 記下 DataReader 目的地的名稱,其中包含您要在報表中使用的結果集。稍後您會指定這個名稱作為報表查詢。
在報表中定義連接和查詢
定義封裝之後,您可以建立報表來使用 SSIS 資料處理延伸模組。報表必須包含指定到封裝連接的資料集。資料集查詢是 DataReader 目的地的名稱。您在資料集中定義的認證是用來執行封裝。下列清單提供有關您必須在報表資料集裡指定之連接和查詢定義的詳細資訊:
資料來源類型必須是 SSIS。
認證類型可以是 [無認證] 或 [Windows 認證]。您無法使用資料庫驗證。當您第一次在報表資料集裡建立連接時,認證會自動設定為 [無認證]。發行報表之後,您可以利用報表管理員或 SQL Server Management Studio,將認證類型切換到 Windows 整合式安全性或預存 Windows 使用者帳戶。當您儲存認證時,請務必選取 [連接到資料來源時作為 Windows 認證] 選項。不支援提示認證。
封裝的連接字串必須是檔案系統或 msdb 中封裝 (.dtsx) 檔案的完整路徑。請使用 dtexec 公用程式的 -file 或 -sql 引數。您不需要指定公用程式本身。SSIS 資料處理延伸模組會以背景處理序的方式來執行公用程式。如需有關命令列引數的詳細資訊,請參閱<dtexec 公用程式>。下列範例說明可讓您從檔案系統擷取封裝的連接字串語法:
-f c:\datafiles\packages\reportdatapackage.dtsx
查詢是 DataReader 目的地的名稱。依預設,名稱為 DataReaderDest。您可以使用其他名稱來取代。
請參閱
概念
其他資源
教學課程:建立基本報表
DataReader 目的地
設計和建立 Integration Services 封裝