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

本逐步解說會示範如何針對 Microsoft Visual Studio 2008 ASP.NET 網站建立報表,並將 ReportViewer 控制項加入到網頁上,好讓使用者可以檢視報表。

必要條件

若要使用這個逐步解說,您必須擁有 AdventureWorks 範例資料庫的存取權。如需詳細資訊,請參閱逐步解說:安裝 AdventureWorks 資料庫

另外,您也必須能夠存取執行 Microsoft Internet Information Service (IIS) 5.0 版或更新版本的伺服器,且有建立 ASP.NET 網頁的權限。

在使用 Visual Studio 2008 範本的電腦上執行以下步驟,以建立 ASP.NET 網頁,並在其上將 ReportViewer 控制項設定為可檢視您所建立的報表。在這個範例中,您會在 Microsoft Visual Basic 中建立應用程式。

建立新的網站

  1. 在 [檔案] 功能表中,指向 [新增],選取 [網站]。

  2. 在 [新網站] 對話方塊中,選取 [ASP.NET 網站]。

  3. 在 [語言] 清單中,選擇 [Visual Basic],按一下 [確定]。

  4. 在 [位置] 方塊中,選擇 [HTTP] (如果尚未選取),然後按一下 [瀏覽],以導覽至新的資料夾。

  5. 在 [選擇位置] 對話方塊中,按一下 [本機 IIS],並導覽至您的網站根目錄。

  6. 按一下 [建立新 Web 應用程式] 按鈕,建立新的資料夾並輸入名稱。按 ENTER 鍵。

  7. 按一下 [開啟]。

  8. 按一下 [確定]。

    網站專案隨即開啟,並顯示 Default.aspx 網頁。

  9. 在 [方案總管] 中,檢查 Default.aspx 已反白顯示。

  10. 在 [檢視] 功能表中,選取 [設計工具]。

    現在,您已準備好開始修改您的網站預設頁面。

加入 DataSet 來定義資料連接和 DataTable

  1. 在 [網站] 功能表中選取 [加入新項目]。

  2. 在 [加入新項目] 對話方塊中,按一下 [DataSet]。按一下 [加入]。當系統提示您是否要將此項目加入到 App_Code 資料夾時,請按一下 [是]。如此會將新的 XSD 檔案 DataSet1.xsd 加入到專案中、開啟 DataSet 設計工具,並叫用 [TableAdapter 組態精靈]。

  3. 在 [選擇資料連接] 頁面上,如果您使用 SQLExpress 安裝了 AdventureWorks,您可能會看到現有的資料連接 sqlexpress.AdventureWorks.dbo,您可以選取此連接,並跳至步驟 6。否則,請按一下 [新增連接]。

  4. 在 [資料來源] 對話方塊中,選取 [Microsoft SQL Server (SQL 用戶端)]。

  5. 在 [伺服器名稱] 對話方塊中,輸入 AdventureWorks 範例資料庫所在的伺服器名稱。例如,SQL Server Express 預設執行個體名稱為 (local)\sqlexpress。在您輸入伺服器名稱之後,請從資料庫下拉式清單中選取 AdventureWorks,然後按一下 [確定]。

  6. 按 [下一步]。

  7. 在 [將連接字串儲存到應用程式組態檔] 頁面中,輸入連接字串的名稱,或接受預設值 AdventureWorksConnectionString。按 [下一步]。

  8. 在 [選擇命令類型] 頁面中,選取 [使用 SQL 陳述式]。確認其他選項按鈕並未選取。

  9. 在 [輸入 SQL 陳述式] 頁面中,輸入下列 Transact-SQL 查詢來從 AdventureWorks 資料庫擷取資料,然後按一下 [完成]。您也可以按一下 [查詢產生器] 按鈕,並使用 [查詢產生器] 來建立查詢,然後使用 [執行查詢] 按鈕來進行檢查。

    SELECT d.Name as Dept, s.Name as Shift, e.EmployeeID as EmployeeID
    FROM (HumanResources.Department d
    INNER JOIN HumanResources.EmployeeDepartmentHistory e
        ON d.DepartmentID = e.DepartmentID)
    INNER JOIN HumanResources.Shift s
        ON e.ShiftID = s.ShiftID
    

    如果查詢未傳回預期的資料,您可能使用了舊版的 AdventureWorks。如需有關安裝 SQL Server 2005 版本之 AdventureWorks 的詳細資訊,請參閱逐步解說:安裝 AdventureWorks 資料庫

  10. 在 [選擇要產生的方法] 頁面中,接受預設值:含 [方法名稱]: [Fill] 的 [填入 DataTable],以及含 [方法名稱]: [GetData] 的 [傳回 DataTable]。按 [下一步]。

  11. 在 [精靈結果] 頁面中,按一下 [完成]。

    現在,您已將 ADO.NET DataTable 設定成報表的資料來源。

  12. 在 Visual Studio 的 [DataSet 設計工具] 頁面中,應該會出現您加入的 DataTable (預設名稱是 DataTable1),列出您的查詢定義所產生的資料行。從 [資料] 功能表中,您可以選取 [預覽資料],然後按一下 [預覽] 按鈕來檢查查詢結果。

設計報表

  1. 從 [網站] 功能表中,選取 [加入新項目]。

  2. 從 [加入新項目] 對話方塊中,選取 [報表] 範本,輸入報表檔的名稱,再按一下 [新增]。這樣會建立報表定義檔案 (預設值為 Report.rdlc)、啟動報表設計工具,並顯示 [網站資料來源] 窗格。

  3. 開啟 [工具箱]。按一下文字方塊,然後按一下報表設計介面。

  4. 在文字方塊中輸入報表標題:# of Employees per Shift per Dept。在必要時展開文字方塊。

  5. 從 [工具箱] 將 [矩陣] 報表項目拖曳到文字方塊底下的報表上。點線的白色背景就是您的報表頁面。若要調整頁面上的矩陣位置,請按一下左邊角落來選取它,並視需要拖曳或使用方向鍵來移動項目。

  6. 從 [網站資料來源] 視窗中展開 DataTable1 節點,直到您看到查詢中的資料行為止。將 Dept 拖曳到矩陣中第一個資料行、第二個資料列的 [資料列] 文字方塊上。

  7. 將 Shift 拖曳到矩陣中第二個資料行、第一個資料列的 [資料行] 文字方塊上。當選取此文字方塊時,請在 [屬性] 視窗中,將 TextAlign 屬性設定為 Right。按一下文字方塊來啟動 [報表格式] 工具列,然後按一下 [粗體] 按鈕。

  8. 按一下矩陣中的任何地方來選取矩陣。以滑鼠右鍵按一下並依據名稱選取矩陣 (預設值為 matrix1)。矩陣報表項目周圍將會出現外框。以滑鼠右鍵按一下外框,並選取 [屬性]。檢查開啟之對話方塊的標題為 [矩陣屬性]。

  9. 按一下 [群組] 索引標籤。在 [資料行] 區段中,按一下 [編輯]。

  10. 在 [排序及群組] 對話方塊中,按一下 [排序] 索引標籤。

  11. 按一下 [運算式] 底下的第一個方塊,以啟動文字方塊。從下拉式清單中選擇 =Fields!Dept.Value。如此可確保報表資料將會依據部門名稱來排序。按一下 [確定]。

  12. 按一下 [確定],關閉 [矩陣屬性] 對話方塊。

  13. 從 [網站資料來源] 視窗,將 EmployeeID 欄位拖曳到矩陣中第二個資料行、第二個資料列的 [資料] 文字方塊。以滑鼠右鍵按一下此文字方塊,然後選取 [運算式]。

  14. 編輯預設 Sum 彙總函數,並將它變更為 Count。按一下 [確定]。

  15. 按一下 [確定],關閉 [文字方塊屬性] 對話方塊。

  16. 在 [檔案] 功能表中,選取 [全部儲存]。

將 ReportViewer 控制項加入應用程式中

  1. 在 [方案總管] 中,以滑鼠右鍵按一下 Default.aspx,並選取 [檢視表設計工具]。

  2. 開啟 [工具箱] 視窗。從 [資料] 群組中,將 ReportViewer 控制項拖曳到頁面上。

  3. 如果尚未開啟,請開啟 [ReportViewer 工作] 智慧標籤面板,其方式是按一下網頁上 ReportViewer 控制項右上角內的三角形。在 [選擇報表] 方塊中,選取 Report.rdlc 的完整檔案名稱。

    當您選取報表時,會自動建立報表所用之資料來源的執行個體。這會產生程式碼來具現化每個 DataTable (及其 DataSet 容器),以及對應於報表中所用的每個資料來源之 ObjectDataSource 控制項。系統會自動設定這個資料來源控制項。

Note附註

若要了解即使基礎資料來源可能是資料庫或其他某種類型更嚴格的資料存放區,ASP.NET 是使用 ObjectDataSource 控制項而不用 SqlDataSource 控制項的原因,請參閱建立報表的資料來源

建立和執行應用程式

  1. 按 CTRL+F5 在非偵錯模式下執行頁面,或是按 F5 鍵在偵錯模式下執行。

    建立過程中會編譯報表,並將找到的任何錯誤 (例如用於報表中的運算式語法錯誤) 加入到 [工作清單] 中。

    此時網頁會出在瀏覽器中。ReportViewer 控制項會顯示報表。您可以利用工具列來瀏覽報表、縮放,以及匯出到 Excel 中。

  2. 關閉瀏覽器。

另請參閱

參考

Microsoft.Reporting.WinForms.ReportViewer.Drillthrough
Microsoft.Reporting.WinForms.LocalReport.SubreportProcessing
Microsoft.Reporting.WebForms.ReportViewer.Drillthrough
Microsoft.Reporting.WebForms.LocalReport.SubreportProcessing

概念

使用 [ReportViewer 工作] 智慧標籤面板

其他資源

範例和逐步解說