第 5 課:加入傳遞至鑽研報表的參數 (報表產生器 2.0)
鑽研報表是一種按一下目前報表中連結即可存取的報表。當您按一下含鑽研動作的文字方塊時,就會開啟鑽研報表。如果鑽研報表有參數,就必須傳遞參數值給每一個報表參數。
在這一課,您將設計新的報表,以便接受銷售訂單參數並且針對銷售訂單中的每個行項目顯示產品名稱、數量和總計。這項資料來自 AdventureWorks2008 範例資料庫。之後,您將透過加入銷售訂單的鑽研連結,修改在<教學課程:建立基本資料表報表 (報表產生器 2.0)>或其中一個後續課程中建立的報表。當使用者按一下主報表中的連結時,銷售訂單詳細資料報表就會開啟,並顯示這項銷售的每個行項目。
若要建立新的報表定義檔案並將它儲存在報表伺服器上
按一下 [開始]、依序指向 [程式集] 和 [Microsoft SQL Server 2008 報表產生器],然後按一下 [報表產生器 2.0]。
在設計介面上,按一下 [請按這裡加入標題],然後輸入銷售訂單詳細資料。
在報表產生器的按鈕中,按一下 [另存新檔]。
按一下 [最近使用的網站和伺服器]。
按一下您有權儲存報表之報表伺服器的名稱。
在 [名稱] 中,輸入銷售訂單詳細資料。
按一下 [儲存]。
您已儲存將在主報表中成為連結目標的新報表。
若要啟動資料表精靈並加入連接
在設計介面的 [按一下以新增資料] 底下,按一下 [資料表或矩陣]。
新增資料表/矩陣精靈隨即開啟並顯示 [選擇與資料來源的連接] 頁面。
瀏覽或選擇您在<教學課程:建立基本資料表報表 (報表產生器 2.0)>中建立之 AdventureWorks2008 範例資料庫的資料來源。
按 [下一步]。
若要定義報表資料的 Transact-SQL 查詢
在 [設計查詢] 頁面上,按一下 [當成文字編輯]。以文字為基礎的查詢設計工具隨即開啟。
將下列 Transact-SQL 查詢貼入 [查詢] 窗格中。
SELECT P.Name AS Product, SD.OrderQty AS Quantity, SD.LineTotal FROM Sales.SalesOrderDetail AS SD INNER JOIN Production.Product AS P ON SD.ProductID = P.ProductID INNER JOIN Sales.SalesOrderHeader AS SH ON SD.SalesOrderID = SH.SalesOrderID WHERE (SH.SalesOrderNumber = (@SalesOrder) ) ORDER BY SD.SalesOrderDetailID
按一下 [確定]。
請注意,若要建立欄位集合,您不需要使用查詢參數值在查詢設計工具中執行查詢。如果您想要執行查詢,可以使用下列銷售訂單號碼:SO43661。
按 [下一步]。
您已將資料集加入至報表定義。
若要在群組中組織資料
在 [排列欄位] 頁面上,將 Product 拖曳至 [資料列群組]。
將 Quantity 拖曳至 [值]。
將 LineTotal 拖曳至 [值] 並放置在 Quantity 之下。
按 [下一步]。
您已加入要在資料表中顯示的資料列群組和兩個資料值。
若要加入小計和總計,以及選擇樣式
在 [選擇配置] 頁面的 [選項] 下方,確定已經選取 [顯示小計和總計]。
清除 [展開/摺疊群組] 選項。
[預覽] 窗格會顯示含有 3 個資料行和 3 個資料列的資料表。
按 [下一步]。在 [選擇樣式] 頁面上,選取樣式。
按一下 [完成]。
資料表會加入至設計介面。這個資料表具有 3 個資料行和 3 個資料列。[資料列群組] 窗格會顯示一個群組:Product,但不顯示任何詳細資料。
按一下 [執行] 預覽報表。
若要格式化資料表
切換至 [設計] 檢視。
按一下第二列的資料格,然後向下拖曳以便選取包含 [Sum(LineTotal)] 的兩個資料格。
在 [主資料夾] 索引標籤的 [數值] 群組中,按一下 [貨幣] 按鈕。
這兩個資料格中的數字就會格式化為貨幣。
在報表產生器的按鈕上,按一下 [儲存] 將這份報表儲存在報表伺服器上。
下一步,請開啟身為主報表的報表,然後加入鑽研動作來指定這份報表。
若要在報表中加入報表鑽研動作
在報表產生器的按鈕上,按一下 [開啟]。
導覽至您在上一課中建立的「銷售訂單」報表,然後按一下 [開啟]。
在 SalesOrderNumber 資料行中,以滑鼠右鍵按一下含有 [SalesOrderNumber] 的文字方塊,再按一下 [文字方塊屬性]。
按一下 [動作]。
在 [啟用為超連結] 中,選取 [移至報表]。
另一個區段會出現在對話方塊中。
在 [指定報表] 中,按一下 [瀏覽]。
在 [最近使用的網站和伺服器] 中,瀏覽至您在先前程序中建立的銷售訂單詳細資料報表,然後按一下 [開啟]。
在 [使用這些參數執行報表] 中,按一下 [加入]。
新的資料列會加入至此方格。
從 [名稱] 的下拉式清單中,選取 SalesOrder。
從 [值] 的下拉式清單中,選取 [SalesOrderNumber]。
這樣會將值從主報表繫結到目標報表所預期的參數。
下一步,變更鑽研連結的文字樣式和色彩。
按一下 [字型]。
從 [效果] 的下拉式清單中,選取 [底線]。
在 [色彩] 的下拉式清單中,按一下 [藍色]。
按一下 [確定]。
現在加入的文字方塊具有加底線的文字,而且是您所選的色彩。這些視覺指標可幫助報表讀者了解有一個連至其他報表的作用中連結。
若要預覽報表
按一下 [執行] 預覽報表。Sales Orders 報表會顯示依日期分組的銷售訂單。SalesOrderNumber 資料行會顯示銷售訂單號碼,這些號碼即為鑽研連結。
按一下銷售訂單號碼。
鑽研連結所指定的報表隨即執行,並針對您所按的銷售訂單號碼顯示訂單詳細資料。
[!附註]
若要返回主報表,請使用報表檢視器工具列的上一步箭頭。