教學課程:將走勢圖加入至報表 (報表產生器)
在本教學課程中,您要根據範例銷售資料建立基本資料表報表,然後將走勢圖加入至資料表中的儲存格。
本教學課程所建立的報表另有一個增強型版本,可從範例 SQL Server 2012 報表產生器報表取得。 如需有關下載這個範例報表及其他項目的詳細資訊,請參閱報表產生器範例報表。 下圖顯示與您將要建立的報表相似的範例報表。
如何:在資料表中建立走勢圖 (報表產生器影片) 這段影片說明如何建立包含走勢圖的類似報表。
學習內容
在本教學課程中,您將學習如何執行下列作業:
1. 建立含資料表的報表
2. 在資料表或矩陣精靈中建立查詢
3. 將走勢圖加入至資料表
4. 垂直與水平對齊走勢圖
其他選擇性步驟
5. 將資料格式化為貨幣
6. 將資料格式化為日期
7. 變更資料行寬度
8. 加入報表標題
9. 儲存報表
完成這個教學課程的估計時間:30 分鐘。
需求
如需有關需求的詳細資訊,請參閱<教學課程的必要條件 (報表產生器)>。
1.建立含資料表的報表
建立報表
按一下 [開始]、依序指向 [程式集] 和 [Microsoft SQL Server 2012 報表產生器],然後按一下 [報表產生器]。
[使用者入門] 對話方塊隨即開啟。
[!附註]
如果 [使用者入門] 對話方塊沒有出現,請從 [報表產生器] 按鈕按一下 [新增]。
在左窗格中,確認已選取 [新增報表]。
在右窗格中,按一下 [資料表或矩陣精靈]。
在 [選擇資料集] 頁面上,選取 [建立資料集],然後按一下 [下一步]。 [選擇與資料來源的連接] 頁面隨即開啟。
[!附註]
本教學課程無須任何特定資料,您只需要連接到 SQL Server 2012 資料庫。 如果您已有資料來源連接列於 [資料來源連接] 底下,就可以選取該連接並移至步驟 10。 如需詳細資訊,請參閱<取得資料連接的替代方式 (報表產生器)>。
按一下 [新增]。 [資料來源屬性] 對話方塊隨即開啟。
在 [名稱] 中輸入產品銷售做為資料來源的名稱。
在 [選取連接類型] 中,確認已選取 [Microsoft SQL Server]。
在 [連接字串] 中,輸入下列文字:
Data Source=<servername>
<servername> 運算式 (例如 Report001) 會指定已安裝 SQL Server Database Engine 執行個體的電腦名稱。 由於報表資料不是擷取自 SQL Server 資料庫,您不必加上資料庫的名稱。 指定之伺服器上的預設資料庫將用來剖析查詢。
按一下 [認證]。 輸入您存取外部資料來源所需的認證。
按一下 [確定]。
您會回到 [選擇與資料來源的連接] 頁面。
若要確認您能夠連接至資料來源,請按一下 [測試連接]。
「成功建立連接」訊息就會出現。
按一下 [確定]。
按 [下一步]。
2.在資料表精靈中建立查詢
在報表中,您可以使用擁有預先定義查詢的共用資料集,或是建立只在報表中使用的內嵌資料集。 在本教學課程中,您將建立內嵌資料集。
[!附註]
在本教學課程中,查詢會包含資料值,因此不需要外部資料來源。 這樣會使查詢相當冗長。 在商業環境中,查詢不會包含資料。 這僅供教學之用。
建立查詢
[設計查詢] 頁面上會開啟關聯式查詢設計工具。 在這個教學課程中,您將使用以文字為基礎的查詢設計工具。
按一下 [當成文字編輯]。 以文字為基礎的查詢設計工具會顯示查詢窗格和結果窗格。
將下列 Transact-SQL 查詢貼入 [查詢] 方塊。
SELECT CAST('2010-01-04' AS date) as SalesDate, 'Accessories' as Subcategory, 'Carrying Case' as Product, CAST(16996.60 AS money) AS Sales, 68 as Quantity UNION SELECT CAST('2010-01-05' AS date) as SalesDate, 'Accessories' as Subcategory, 'Carrying Case' as Product, CAST(1350.00 AS money) AS Sales, 18 as Quantity UNION SELECT CAST('2010-01-10' AS date) as SalesDate, 'Accessories' as Subcategory, 'Carrying Case' as Product, CAST(1147.50 AS money) AS Sales, 17 as Quantity UNION SELECT CAST('2010-01-04' AS date) as SalesDate, 'Accessories' as Subcategory, 'Budget Movie-Maker' as Product, CAST(1056.00 AS money) AS Sales, 44 as Quantity UNION SELECT CAST('2010-01-05' AS date) as SalesDate, 'Accessories' as Subcategory, 'Slim Digital' as Product, CAST(1380.00 AS money) AS Sales, 18 as Quantity UNION SELECT CAST('2010-01-05' AS date) as SalesDate,'Accessories' as Subcategory, 'Budget Movie-Maker' as Product, CAST(780.00 AS money) AS Sales, 26 as Quantity UNION SELECT CAST('2010-01-07' AS date) as SalesDate, 'Accessories' as Subcategory, 'Budget Movie-Maker' as Product, CAST(3798.00 AS money) AS Sales, 9 as Quantity UNION SELECT CAST('2010-01-08' AS date) as SalesDate, 'Camcorders' as Subcategory, 'Budget Movie-Maker' as Product, CAST(10400.00 AS money) AS Sales, 13 as Quantity UNION SELECT CAST('2010-01-09' AS date) as SalesDate, 'Camcorders' as Subcategory, 'Budget Movie-Maker' as Product, CAST(3000.00 AS money) AS Sales, 60 as Quantity UNION SELECT CAST('2010-01-10' AS date) as SalesDate, 'Digital' as Subcategory, 'Budget Movie-Maker' as Product, CAST(7234.50 AS money) AS Sales, 39 as Quantity UNION SELECT CAST('2010-01-06' AS date) as SalesDate, 'Digital' as Subcategory, 'Carrying Case' as Product, CAST(10836.00 AS money) AS Sales, 84 as Quantity UNION SELECT CAST('2010-01-07' AS date) as SalesDate, 'Digital' as Subcategory, 'Slim Digital' as Product, CAST(2550.00 AS money) AS Sales, 17 as Quantity UNION SELECT CAST('2010-01-04' AS date) as SalesDate, 'Digital' as Subcategory, 'Slim Digital' as Product, CAST(8357.80 AS money) AS Sales, 44 as Quantity UNION SELECT CAST('2010-01-08' AS date) as SalesDate, 'Digital SLR' as Subcategory, 'Slim Digital' as Product, CAST(18530.00 AS money) AS Sales, 34 as Quantity UNION SELECT CAST('2010-01-06' AS date) as SalesDate, 'Digital SLR' as Subcategory, 'Slim Digital' as Product, CAST(26576.00 AS money) AS Sales, 88 as Quantity
在查詢設計工具工具列上,按一下 [執行] (!)。
查詢隨即執行,並顯示 [SalesDate]、[Subcategory]、[Product]、[Sales] 和 [Quantity] 欄位的結果集。
按 [下一步]。
在 [排列欄位] 頁面上,將 [Sales] 拖曳至 [值]。
[Sales] 是透過 Sum 函數彙總。 值為 [Sum(Sales)]。
將 [Product] 拖曳至 [資料列群組]。
將 [SalesDate] 拖曳至 [資料行群組]。
按 [下一步]。
在 [選擇配置] 頁面的 [選項] 下方,確定已選取 [顯示小計和總計]。
精靈的 [預覽] 窗格會顯示含有三個資料列的資料表。 當您執行報表時,每個資料列都會以下列方式顯示:
第一個資料列會針對資料表出現一次,以顯示資料行標題。
第二個資料列會針對每個產品重複一次,並顯示產品名稱、每日小計和產品線總計。
第三個資料列會針對資料表出現一次,以顯示總計。
按 [下一步]。
在 [選擇樣式] 頁面的 [樣式] 窗格中,選取 [石板]。
[預覽] 窗格隨即顯示採用該樣式的資料表範例。
按一下 [完成]。
資料表會加入至設計介面。 該資料表具有三個資料行和三個資料列。
請查看 [群組] 窗格。 如果看不到 [群組] 窗格,按一下 [檢視] 功能表上的 [群組]。 [資料列群組] 窗格會顯示一個資料列群組:Product。 [資料行群組] 窗格會顯示一個資料行群組:SalesDate。 詳細資料是資料集查詢擷取的所有資料。
按一下 [執行] 預覽報表。
3.加入走勢圖
將走勢圖加入至資料表
按一下 [設計] 返回 [設計] 檢視。
選取資料表中的 [總計] 資料行。
按一下滑鼠右鍵,指向 [插入資料行],然後按一下 [左方]。
以滑鼠右鍵按一下新資料行的 [Product] 資料列,指向 [插入] 功能區索引標籤,然後按一下 [走勢圖]。
確定已選取 [直條圖] 列的第一個走勢圖,然後按一下 [確定]。
按一下走勢圖以顯示 [圖表資料] 窗格。
按一下 [值] 方塊的加號 (+),再按一下 [Sales]。
[Sales] 欄位內的值現在即為走勢圖的值。
按一下 [類別目錄群組] 方塊的加號 (+),再按一下 [SalesDate]。
按一下 [執行] 預覽報表。
請注意資料表的每一列內都有走勢圖,但是圖表並不正確。 圖表中的橫條沒有彼此切齊。 第二個資料列只有四個橫條,而第一列有六個,因此前者的橫條比後者的橫條還要寬。 這樣您無法比較各產品每日的值, 這些橫條必須彼此貼齊。
同時請注意,每一列內最高的橫條都和該列等高。 這也會產生誤導,因為每一列的最大值其實並不相等:Budget Movie-Maker 的最大值為 $10,400,但 Slim Digital 的最大值為 $26,576,是其兩倍以上。 然而,這兩列內最大值橫條的高度幾乎一樣, 這些橫條需要能夠隨著其他走勢圖縮放。
4.垂直與水平對齊走勢圖
如果不是所有走勢圖都使用相同的度量就很難讀取。 每一個走勢圖的水平和垂直軸都需要符合其餘的走勢圖。
設定資料表中走勢圖的對齊方式
按一下 [設計] 返回 [設計] 檢視。
以滑鼠右鍵按一下走勢圖,然後按一下 [垂直軸屬性]。
選取 [軸對齊位置] 核取方塊。
清單中會顯示 Tablix1。 此為唯一的選項。 這是將每個走勢圖內的橫條高度設定成彼此的相對值。
按一下 [確定]。
以滑鼠右鍵按一下走勢圖,然後按一下 [水平軸屬性]。
選取 [軸對齊位置] 核取方塊。
清單中會顯示 Tablix1。 此為唯一的選項。 這是將每個走勢圖內的橫條寬度設定成彼此的相對值。 如果某些走勢圖的橫條數目較少,則這些走勢圖將以空白代表缺資料。
按一下 [確定]。
按一下 [執行] 再次預覽報表。
請注意,所有橫條現在已與其他列內的橫條對齊。
5.(選擇性) 將資料格式化為貨幣
根據預設,[Sales] 欄位的摘要資料會顯示一般數字。 格式化該欄位,將數字顯示為貨幣。 切換 [預留位置樣式],將格式化的文字方塊和預留位置文字顯示為範例值。
格式化貨幣欄位
按一下 [設計],切換到 [設計] 檢視。
在 [Sales] 資料行中,按一下第二列的資料格 (位於欄標題資料列底下),然後向下拖曳以選取包含 [Sum(Sales)] 的所有資料格。
在 [主資料夾] 索引標籤的 [數值] 群組中,按一下 [貨幣] 按鈕。 這些資料格就會變更為顯示格式化貨幣。
如果您的地區設定為 [英文 (美國)],則預設範例文字會是 [$12,345.00]。 如果您未看見範例貨幣值,請按一下 [數值] 群組中的 [預留位置樣式],然後按一下 [範例值]。
按一下 [執行] 預覽報表。
[Sales] 的摘要值會顯示為貨幣。
6.(選擇性) 將資料格式化為日期
根據預設,[SalesDate] 欄位會同時顯示日期和時間資訊。 您可以將該欄位格式化,以便只顯示日期。
將日期欄位格式化成預設格式
按一下 [設計] 返回 [設計] 檢視。
按一下包含 [SalesDate] 的資料格。
在 [功能區] 的 [主資料夾] 索引標籤上,從 [數值] 群組的下拉式清單中,選取 [日期]。
資料格會顯示範例日期 [1/31/2000]。 如果您未看見範例日期,請按一下 [數值] 群組中的 [預留位置樣式],然後按一下 [範例值]。
按一下 [執行] 預覽報表。
SalesDate 值會以預設的日期格式顯示。
7.(選擇性) 變更資料行寬度
根據預設,資料表中的每個資料格都會包含一個文字方塊。 頁面轉譯時,文字方塊會垂直展開以容納文字。 在轉譯的報表中,每一個資料列都會依照資料列中最高的轉譯文字方塊高度展開。 設計介面上資料列的高度對於轉譯報表中資料列的高度並無影響。
若要減少每個資料列佔用的垂直空間量,請展開資料行寬度以容納一行上資料行中預期的文字方塊內容。
變更資料行的寬度
按一下 [設計] 返回 [設計] 檢視。
按一下資料表,使資料行和資料列控點出現在資料表的上面和旁邊。
沿著資料表頂端和側邊的灰色長條是資料行和資料列控點。
指向資料行控點之間的線條,使游標變成雙箭頭。 將資料行拖曳到所需的大小。 例如,您可以展開 [Product] 的資料行,讓產品名稱顯示於同一行上。
按一下 [執行] 預覽報表。
8.(選擇性) 加入報表標題
報表標題會出現在報表的頂端。 您可以將報表標題放置在報表頁首,如果報表不使用報表頁首,則可以放置在報表主體頂端的文字方塊中。 在本教學課程中,您將使用自動放置在報表主體頂端的文字方塊。
您可以將不同的字型樣式、大小和色彩套用到文字的片語和個別字元,進一步加強文字。 如需詳細資訊,請參閱<格式化文字方塊中的文字 (報表產生器及 SSRS)>。
加入報表標題
在設計介面上,按一下 [按一下以加入標題]。
輸入產品銷售,然後按一下文字方塊外部。
以滑鼠右鍵按一下包含產品銷售的文字方塊,然後按一下 [文字方塊屬性]。
在 [文字方塊屬性] 對話方塊中,按一下 [字型]。
在 [大小] 清單中,選取 [18pt]。
在 [色彩] 清單中,選取 [暗紅色]。
選取 [粗體]。
按一下 [確定]。
9.儲存報表
將報表儲存至報表伺服器或您的電腦。 如果沒有將報表儲存到報表伺服器,就無法使用數個 Reporting Services 功能,例如報表組件和子報表。
若要將報表儲存在報表伺服器上
在 [報表產生器] 按鈕中,按一下 [另存新檔]。
按一下 [最近使用的網站和伺服器]。
選取或輸入您有權儲存報表的報表伺服器名稱。
「正在連接到報表伺服器」訊息隨即顯示。 連接完成時,您會看見報表伺服器管理員指定為預設報表位置之報表資料夾的內容。
將 [名稱] 中的預設名稱取代為產品銷售。
按一下 [儲存]。
報表會儲存至報表伺服器。 您連接之報表伺服器的名稱會顯示在視窗底部的狀態列中。
將報表儲存到您的電腦上
從 [報表產生器] 按鈕中,按一下 [另存新檔]。
按一下 [桌面]、[我的文件] 或 [我的電腦],然後瀏覽到您要儲存報表的資料夾。
將 [名稱] 中的預設名稱取代為產品銷售。
按一下 [儲存]。
後續步驟
這總結本教學課程:建立含走勢圖的資料表報表。 如需有關走勢圖的詳細資訊,請參閱<走勢圖和資料橫條 (報表產生器和 SSRS)>。