您可以設定 ReportViewer 控制項來使用 SQL Server Reporting Services 報表伺服器的處理功能。報表伺服器會處理資料,且會將報表轉譯成輸出格式。然後 ReportViewer 控制項會在螢幕上顯示轉譯的輸出。
若要使用伺服器報表,您必須能夠存取 SQL Server 2008 (含) 以後版本 Reporting Services 報表伺服器。您可以開啟瀏覽器視窗,在 URL 位址中,輸入報表伺服器 URL 及報表路徑,以確認您可以存取報表。當您設定與報表伺服器的連接時,請確定使用有權檢視報表的帳戶。
如何設定 ReportViewer 的遠端處理
若要設定 ReportViewer 控制項進行遠端處理,請指定搭配此控制項使用的伺服器報表。請遵循下列步驟來選取伺服器報表:
從 [工具箱] 的 [報告] 區段中,將 ReportViewer 控制項加入專案的表單或網頁中。
在 [ReportViewer 工作] 智慧標籤面板的 [選擇報表] 中,選取 [伺服器報表]。
在 [報表伺服器] 文字方塊中,輸入報表伺服器 URL。預設 URL 語法是 https://localhost/reportserver。安裝架構所用的實際 URL 可能會隨著報表伺服器虛擬目錄設定的設定方式而不同。
在 [報表路徑] 文字方塊中,輸入發行之報表的完整路徑。在參考原生模式的報表伺服器上的報表時,報表路徑的開頭是正斜線 ( / ),而在參考 SharePoint 整合模式的報表伺服器上的報表時,報表路徑是完整 URL。例如:
原生模式:/Adventureworks 2008 Sample Reports/Company Sales 2008
SharePoint 整合模式:http://MyServer/sites/MySite/MyLibrary/Adventureworks 2008 Sample Reports/Company Sales 2008.rdl
建立或部署應用程式來確認報表會正確出現在您的應用程式中。
了解伺服器報表特性
下表描述在遠端處理之伺服器報表的特性。
報表處理 |
伺服器報表在 SQL Server 2008 (含) 以後版本 Reporting Services 報表伺服器中執行。伺服器報表是在 Business Intelligence Development Studio 或報表產生器所建立之報表定義 (.rdl) 檔案。 |
資料處理 |
伺服器報表會使用報表伺服器的資料處理延伸模組,連接到結果集及處理結果集。預設資料處理延伸模組是針對 SQL Server、Analysis Services、SQL Server Integration Services、Oracle、SAP NetWeaver® Business Intelligence、XML、ODBC 和 OLE DB 資料來源而提供。您可以建立或使用自訂資料處理延伸模組來支援其他資料類型。 與用戶端報表相較之下,伺服器報表包括資料來源連接資訊以及報表定義中的一個或多個查詢。在遠端處理模式中,資料處理和報表處理都是由報表伺服器執行。 |
參數化 |
在處理伺服器報表時,ReportViewer 控制項可以在報表頂端顯示參數提示區域,供使用者在查詢基礎資料來源時輸入或選取要使用的參數值。在處理本機報表時,由於 ReportViewer 不會執行任何資料擷取而不會顯示參數提示區域,因此您必須手動提示使用者,並根據使用者輸入,直接在您的應用程式中執行資料處理。如需本機報表的詳細資訊,請參閱設定 ReportViewer 的本機處理。 |
連接到外部來源 |
伺服器報表使用的資料來源通常會從其他伺服器上的外部資料來源中擷取資料。在應用程式中執行伺服器報表時,請確定您了解報表伺服器如何連接及擷取報表之外部資料來源中的資料。例如,如果報表使用 Windows 整合式安全性,您必須設定應用程式或網路以避免 NTLM「雙重躍點」問題,例如為網路啟用 Kerberos 驗證。如需詳細資訊,請參閱Authentication Types in Reporting Services和了解 Kerberos 雙重躍點 (英文)。 請注意,ReportViewer 控制項並不提供認證提示頁面。如果您的應用程式連接到使用以表單為基礎之驗證的報表伺服器,您的應用程式便必須提供登入頁面。 |
管理報表 |
伺服器報表是在報表伺服器中進行管理。報表伺服器管理員可以修改提供報表存取權的角色指派,重新設定資料來源連接,以及更新、移動、重新命名或刪除報表。任何這些變更都可能影響從應用程式執行的報表,或使報表無法從應用程式執行。在應用程式中使用伺服器報表時,請確定您了解如何在部署應用程式之後管理報表。 |
如需 SQL Server Reporting Services 的報表設計、資料擷取、部署和安全性設定的詳細資訊,請參閱 msdn.microsoft.com 網站上的 SQL Server 線上叢書。
遠端處理的使用時機
以伺服器為基礎的報表可讓您集中報表儲存與管理的方式、設定報表與資料夾的原則和安全存取、控制處理與散發報表的方式,以及將您企業中使用報表的方式標準化。SQL Server Reporting Services 可以安裝在單一伺服器、分散式和叢集組態中。如果您的報表有下列特性,請考慮使用遠端處理:
將有許多使用者存取報表。
報表有非常複雜的查詢或包含非常大量的資料。
報表已發行在報表伺服器中,且您要將它併入您建立和部署的應用程式中。
遠端處理模式需要存取 SQL Server 授權版本,為應用程式提供豐富功能,例如訂閱、快取、安全性和其他轉譯格式。如需 SQL ServerReporting Services 遠端處理功能的詳細資訊,請參閱《SQL Server 線上叢書》中的 Reporting Services and ReportViewer Controls in Visual Studio。