ReportViewer Web 伺服器和 Windows Form 控制項

ReportViewer 控制項是用來主控您在 Microsoft Visual Studio 2008 中建立的報表。此控制項有兩個版本:適用於 ASP.NET 網頁的 ReportViewer Web 伺服器控制項,以及可以搭配 Windows Form 應用程式使用的 ReportViewer Windows Form 控制項。Visual Studio 根據您用來內嵌控制項的專案類型來決定要使用的版本。例如,如果您將 ReportViewer 控制項內嵌在 ASP.NET 專案,您會自動取得 Web 伺服器控制項。

ReportViewer 功能

ReportViewer 控制項的兩個版本都支援下列功能:

  • 用來顯示報表、工具列和文件引導模式的檢視區域。您可以設定工具列,工具列會提供執行階段功能來支援您在多頁報表、縮放、搜尋、列印和匯出功能中進行導覽。如果您將文件引導模式明確加入報表中,就會出現文件引導模式。

  • 可讓您設定處理模式、檢視區域和工具列的屬性。

  • 支援本機和遠端處理模式,供您控制報表的處理位置和方式。本機處理模式會擷取用戶端報表定義,此定義會由應用程式內的控制項所處理。遠端處理模式會擷取完整處理過的報表,此報表之前是在 Microsoft SQL Server 2005 Reporting Services 報表伺服器上所發行。

  • 程式化介面,供您利用程式碼來自訂和設定控制項,以及與控制項互動,其中包括變更 ReportViewer 在執行階段所用的資料來源。

Web 伺服器和 Windows Form 控制項之間的功能差異

您使用的控制項類型決定了報表的預設呈現格式,以及工具列的視覺特性。報表處理與部署策略之間確實有其他差異存在。下表描述 ReportViewer Web 伺服器控制項與 Windows Form 控制項之間的差異:

預設呈現格式

Web 伺服器控制項利用 HTML 格式來顯示報表,Windows Form 控制項則利用圖形裝置介面 (GDI) 來提供符合 Windows 使用者介面樣式的視覺感受。

這兩個版本的控制項都支援其他匯出選項,好讓您可以將報表當做 PDF 或 Excel 檔案來檢視。

處理

本機報表處理永遠是做為一項 Windows Form 控制項背景處理來執行。如果是 Web 伺服器控制項,您可以設定本機報表處理以進行非同步處理。

列印

從 Windows Form 控制項列印報表,會使用作業系統的列印功能。如果報表是在遠端伺服器中處理,從 Web 伺服器控制項列印報表會使用 ActiveX 列印控制項。如果您要從 Web 伺服器控制項列印在本機處理的報表,您可以先將報表匯出成另一個輸出格式,再進行列印。

部署

在 ASP.NET 應用程式 Web 伺服器控制項中主控的報表,其部署策略必須將工作階段狀態和 Web 伺服陣列組態列入考量。如果您利用 Web 伺服器控制項來處理遠端報表伺服器中的報表,您必須考慮如何驗證要存取伺服器及任何提供資料給報表的外部資料來源之應用程式使用者。

瀏覽器需求

Web 伺服器控制項有瀏覽器需求。若要使用 Web 伺服器控制項所能使用的所有報表功能,您應該使用啟用指令碼的 Microsoft Internet Explorer 6.0。您可以使用其他瀏覽器,但報表功能可能會有若干功能限制。如需詳細資訊,請參閱ReportViewer Web 伺服器控制項的瀏覽器支援

除了了解控制項之間的差異,了解處理模式的效果甚至更加重要。您使用的處理模式類型決定了控制項的使用方式及報表的建立、處理和部署方式。如果應用程式預先定義的報表集比較小,且資料來源在應用程式的本機範圍內,便適合在用戶端進行本機處理。如果您需要本機控制項所無法提供的處理功能,建議您在報表伺服器進行遠端處理。遠端處理模式需要存取一份獲授權的 SQL Server 2005。如需處理模式的詳細資訊,請參閱設定 ReportViewer 的遠端處理設定 ReportViewer 的本機處理

另請參閱

工作

逐步解說:在本機處理模式中,搭配 ReportViewer Web 伺服器控制項使用資料庫資料來源

概念

部署報表和 ReportViewer 控制項
為非同步轉譯設定 ReportViewer
從 ReportViewer 列印報表
最佳化 HTML 輸出的報表配置 (Visual Studio 報表設計工具)
報表概觀 (Visual Studio)
加入和設定 ReportViewer 控制項
設定和使用 ReportViewer 工具列