教學指導 3:建置含並列子報告的報告
這一節提供逐步指示來協助您建置顯示客戶清單的報告。
這份報告會顯示每個客戶的訂購和付款資訊。
訂購資訊和付款資訊放在相鄰的個別子報告中。
客戶報告是主要報告,也稱為外層報告,訂購和付款子報告是明細報告,也稱為內層報告。
每份報告都從範例資料庫 Classic Models 的不同表格中存取資料。
客戶報告使用 Customers 表格的資料。
訂購子報告使用 Orders 表格的資料。
付款子報告使用 Payments 表格的資料。
一般欄位 CUSTOMERNUMBER 負責將各份報告鏈結起來。
主要報告的鏈結欄位值,決定了明細報告將顯示哪些資料。
比方說,如果主要報告的客戶號碼是 173,明細報告便會顯示 ID 為 173 之客戶的訂購和付款資訊。
圖 13-1 顯示已完成之報告的一部分。
圖 13-1 Customers 主要報告,含有訂購和付款子報告
在這個教學指導中,您將執行下列作業:
作業 1:建立新報告
如果您使用「BIRT 報告設計者」,這項作業假設您已建立報告的專案。
如果您使用「BIRT RCP 報告設計者」,便不需要專案。
- 選擇「檔案 -> 新建 -> 報告」。
- 在「新建報告」中,選取用來儲存報告的專案。
- 輸入下列文字來作為檔名:
- 選擇「下一個」。
- 選取「空白報告」,再選擇「完成」。這時新報告會出現在版面編輯器中。
作業 2:建置資料來源
開始在版面編輯器中設計報告之前,請先建立一個資料來源來將報告連接到「典型模型」資料庫。
- 選擇「資料總管」。
- 用滑鼠右鍵按一下「資料來源」,再從快速功能表中選取「新建資料來源」。
- 從資料來源清單中,選取「Classic Models Inc. 範例資料庫」,使用預設資料來源名稱,再選取「下一步」。這時會出現新建資料來源的連線資訊。
- 選擇「完成」。這時「BIRT 報告設計者」會建立連接到範例資料庫的新資料來源。在「資料總管」內,它會出現「資料來源」中。
作業 3:建置客戶報告的資料集
在這個程序中,您將建置資料集來指出要從 Customers 表格中擷取哪些資料。您建立的客戶報告稍後會使用這個資料集。
- 在「資料總管」中,用滑鼠右鍵按一下「資料集」,再選擇「新建資料集」。
- 在「新建資料集」中,輸入下列文字來作為資料集名稱:
- 其他欄位使用預設值:
- 選擇「下一個」。這時「查詢」會顯示資訊來協助您建立 SQL 查詢。右側文字區會顯示 SQL SELECT 陳述式的必要關鍵字。
- 展開 CUSTOMERS 表格。這時會出現 Customers 表格中的直欄。
- 利用下列 SQL SELECT 陳述式來指出要擷取的資料。您可以輸入直欄和表格名稱,也可以從 SELECT 陳述式適當位置左側中拖曳它們。
您建立的這個陳述式(如
圖 13-2 所示)會從 CUSTOMERS 表格的 CUSTOMERNAME 和 CUSTOMERNUMBER 直欄中取得值。
圖 13-2 查詢
- 選擇「完成」來儲存資料集。這時「編輯資料集」會顯示查詢所指定的直欄,且會提供用來編輯資料集的選項。
- 選擇「預覽結果」來確認查詢有效,且它會傳回正確資料。如果您正確建立 SELECT 陳述式,您應該會見到出現在圖 13-3 中的結果。
這些都是查詢傳回的資料列。
圖 13-3 資料預覽
- 選擇「確定」。
作業 4:建置訂購子報告的資料集
在這個程序中,您將建置資料集來指出要從 Orders 表格中擷取哪些資料。
您建立的訂單子報告稍後會使用這個資料集。
- 在「資料總管」中,用滑鼠右鍵按一下「資料集」,再從快速功能表中選擇「新建資料集」。
- 在「新建資料集」中,輸入下列文字來作為資料集名稱:
- 其他欄位使用預設值,再選擇「下一步」。
- 在「查詢」中,展開 Orders 表格來顯示表格中的直欄。
- 利用下列 SQL SELECT 陳述式來指出要擷取的資料:
這個陳述式會選取 Orders 表格中的 ORDERNUMBER 和 ORDERDATE 直欄。WHERE 子句有一個 CUSTOMERNUMBER 值的參數記號。當報告執行時,訂單子報告會從客戶報告中取得現行 CUSTOMERNUMBER 值。
- 選擇「完成」來儲存資料集。這時「編輯資料集」會顯示查詢所指定的直欄,且會提供用來編輯資料集的選項。
- 建立一個資料集參數來提供 WHERE 子句中的 CUSTOMERNUMBER 值:
- 從視窗左側中,選擇「參數」。這時「編輯資料集」會顯示參數資訊。
- 在表格的第一行指定下列值:
圖 13-4 訂單子報告中的參數定義
- 選擇「預覽結果」來確認查詢有效,且它會傳回正確資料。如果您正確建立 SELECT 陳述式及資料集參數,您應該會見到出現在圖 13-5 中的結果。
這些都是查詢傳回的客戶號碼 103 的資料列。
圖 13-5 訂單子報告的資料預覽
- 選擇「確定」來將變更儲存在資料集中。
作業 5:建置付款子報告的資料集
在這個程序中,您將建置資料集來指出要從 Payments 表格中擷取哪些資料。您建立的付款子報告稍後會使用這個資料集。
- 在「資料總管」中,用滑鼠右鍵按一下「資料集」,再從快速功能表中選擇「新建資料集」。
- 在「新建資料集」中,輸入下列文字來作為資料集名稱:
- 其他欄位使用預設值,再選擇「下一步」。
- 在「查詢」中,展開 Payments 表格來顯示表格中的直欄。
- 利用下列 SQL SELECT 陳述式來指出要擷取的資料:
這個陳述式會從 Payments 表格中選取 PAYMENTDATE、CHECKNUMBER 和 AMOUNT 直欄。
WHERE 子句有一個 CUSTOMERNUMBER 值的參數記號。
當報告執行時,付款子報告會從客戶報告中取得現行 CUSTOMERNUMBER 值。
- 選擇「完成」來儲存資料集。這時「編輯資料集」會顯示查詢所指定的直欄,且會提供用來編輯資料集的選項。
- 建立一個資料集參數來提供 WHERE 子句的 CUSTOMERNUMBER 值:
- 選擇「參數」。這時「編輯資料集」會顯示參數資訊。
- 在表格的第一行指定下列值:
- 名稱:CustID
- 資料類型:Integer
- 方向:輸入
- 預設值:103
- 選擇「預覽結果」來確認查詢有效,且它會傳回正確資料。如果您正確建立 SELECT 陳述式及資料集參數,您應該會見到出現在圖 13-6 中的結果。
這些都是查詢傳回的客戶號碼 103 的資料列。
圖 3-56 付款子報告的資料預覽
- 選擇「確定」來將變更儲存在資料集中。
作業 6:建立客戶主要報告
您利用清單元素來建立主要報告及組織其中的訂單及付款子報告。
清單會疊代處理各個客戶資料列,且會建立每項記錄的相關訂單和付款子報告。
為了簡單,客戶報告只會顯示客戶名稱。
當然,它可以顯示其他資料,如客戶地址、電話號碼和信用限制等。
- 選擇「選用區」。
- 從選用區中,將清單元素拖放在報告中。這時清單元素會出現在報告中,如圖 13-7 所示。
圖 13-7 清單元素
- 將清單關聯或連結於 Customers 資料集:
- 在「內容編輯器」中,選擇「連結」標籤。
- 在「資料集」中,從下拉清單選取 Customers。
- 選擇「資料總管」中,展開「資料集」,再展開 Customers。您在查詢中指定的直欄會出現在 Customers 之下。
- 從「資料總管」中,將 CUSTOMERNAME 拖放在清單的詳細資料區域中。「BIRT 報告設計者」會建立一個連結到資料集欄位的具名直欄。這時「選取資料連結」會顯示這個直欄連結。
- 選擇「確定」來接受預設直欄連結。在版面編輯器中,這時清單會顯示您新增的欄位,如圖 13-8 所示。
圖 13-8 清單元素中的資料集欄位
- 選擇「預覽」來預覽報告。這時報告應該看起來如圖 13-9 所示。報告會列出訂單中的所有客戶名稱,查詢在這份訂單中傳回所有這些名稱。
圖 13-9 主要報告的資料預覽
- 依遞增次序來排序客戶名稱:
- 選擇「版面」來返回版面編輯器。
- 在版面編輯器中,選取清單元素。請將滑鼠指標停留在左下角上,直到出現「清單」標籤,再選取這個標籤。
- 在「內容編輯器」中,選擇「排序」標籤。
- 在「排序」頁面中,選擇「新增」來建立排序表示式。這時在「排序依據」之下,會出現一列。
- 按一下「排序索引鍵」之下的區域,選取出現的方向鈕,再從下拉清單中選取 CUSTOMERNAME。
圖 13-10 排序表示式
- 預覽報告。這時會依遞增次序來顯示客戶名稱。
作業 7:建立訂單子報告
訂單子報告會以列和直欄的格式來列出每個客戶的訂單。
它會顯示每份訂單的訂單號碼和日期。
如果要疊代處理訂單資料集列,以及將它們顯示成列和直欄的格式,請使用表格元素。
- 選擇「版面」來返回版面編輯器。
- 從選用區中,將表格元素拖放在詳細資料區域中的 [CUSTOMERNAME] 資料元素之下。這時「插入表格」會提示您指定直欄的數目及建立表格的詳細資料列。
- 指出您要建立 2 個直欄和 1 詳細資料列,再選擇「確定」。這時版面編輯器會出現一份表格,其中含有兩個直欄和一個詳細資料列。
- 將表格連結到 Orders 資料集:
- 在「內容編輯器」中,選擇「連結」。
- 在「資料集」中,從下拉清單選取 Orders。
- 選擇「資料總管」中,展開「資料集」,再展開 Orders。您在查詢中指定的直欄會出現在 Orders 之下。
- 從「資料總管」中,將 ORDERNUMBER 拖放在表格詳細資料列的第一個資料格中。「BIRT 報告設計者」會建立一個連結到資料集欄位的具名直欄。這時「選取資料連結」會顯示這個直欄連結。
- 選擇「確定」來接受預設直欄連結。
在版面編輯器中,資料集欄位放在其中的表格資料格會含有顯示 [ORDERNUMBER] 的資料元素。
在這個資料元素之上,是版面編輯器自動加到標頭列中的標籤元素。
這個標籤會將欄位名稱顯示成靜態文字,且用來作為直欄標題。
- 從「資料總管」中,將 ORDERDATE 拖放在詳細資料列的第二個資料格中。
選擇「確定」來接受預設直欄連結。這時報告頁面應該看起來如圖 13-11 所示。
圖 13-11 報告設計包括訂單子報告
- 依序號來顯示訂單的各個列:
- 選取訂單表格。
- 在「內容編輯器」中,選擇「排序」。
- 在「排序」頁面中,選擇「新增」來建立排序表示式。這時在「排序依據」之下,會出現一列。
- 按一下「排序索引鍵」之下的區域,選取出現的方向鈕,再從下拉清單中選取 ORDERNUMBER。
- 利用預設值「遞增」來作為「排序方向」。
- 預覽報告。
圖 13-12 報告的預覽顯示重複的訂單記錄
每個客戶都出現相同的訂單記錄,因為您在建立資料集參數 CustID 時,指定了 customerNumber 預設值 103。
由於這個預設值,訂單子報告一律會顯示 103 客戶的訂單記錄。
解決方案是每次主要報告中的客戶列有了改變時,都動態更新 CustID 參數值。
下列作業說明這個程序。
作業 8:將訂單子報告鏈結至客戶主要報告
您藉由將 CustID 參數連結至客戶報告中的 CUSTOMERNUMBER 資料集欄位,將訂單子報告鏈結至客戶主要報告。
每次客戶報告到達新的客戶列時,都會以 CUSTOMERNUMBER 值更新 CustID 參數。
在您將 CustID 參數連結至 CUSTOMERNUMBER 資料集欄位之前,您必須先建立直欄連結,再將它連結至資料集欄位。
參數不能直接存取資料集欄位。
- 選擇「版面」來返回版面編輯器。
- 建立一個連結至 CUSTOMERNUMBER 資料集欄位的直欄連結。
- 選取清單。
- 在「內容編輯器」中,選擇「連結」。
- 在「連結」頁面中,選擇「新增」。
- 在「表示式建置器」中,選擇「可用的資料集」,再選擇 Customers,按兩下 CUSTOMERNUMBER。這時「表示式建置器」會顯示 dataSetRow["CUSTOMERNUMBER"] 表示式,如圖 13-13 所示。
圖 13-13 「表示式建置器」顯示直欄連結表示式
- 選擇「確定」。這時新的直欄連結會出現在「內容編輯器」的連結頁面中,且會強調顯示直欄名稱。
- 利用下列名稱來取代 New Binding 這個名稱:
- 選取訂單表格。
- 在「內容編輯器」中,選擇「連結」。
- 在「連結」頁面中,選擇「資料集參數連結」。這時「資料集參數連結」會顯示 CustID 參數,如圖 13-14 所示。它的值設為您在建立資料集參數時所指定的預設值 103。
圖 13-14 訂單表格的「資料集參數連結」
- 在客戶報告中,將參數值改成 CUSTOMERNUMBER 欄位:
- 按一下「值」欄位,再選擇出現在右側的按鈕。
這時會出現「表示式建置器」。
- 在「表示式建置器」中,選擇「可用的直欄連結」,再選擇「清單」,按兩下 CUSTOMER_NUMBER。
這時「表示式建置器」會顯示 row["CUSTOMER_NUMBER"] 表示式,如圖 13-15 所示。
圖 13-15 「表示式建置器」中的 CUSTOMERNUMBER 欄位
- 選擇「確定」來儲存表示式。
這時「資料集參數連結」頁面會顯示 CustID 參數的 row["CUSTOMER_NUMBER"] 的新值。
- 選擇「確定」來儲存已變更的資料集參數連結。
圖 13-16 報告預覽會顯示正確的訂單資料
作業 9:建立付款子報告
付款子報告以列和直欄的格式來顯示每個客戶的付款狀況。
它會顯示付款日期、結帳號碼及每份訂單的金額。
如果要疊代處理付款資料集列,以及將它們顯示成列和直欄的格式,請使用表格元素。
- 選擇「版面」來返回版面編輯器。
- 從選用區中,將表格元素拖放在詳細資料區域中的訂單子報告之下。
這時「插入表格」會提示您指定直欄的數目及建立表格的詳細資料列。
- 指出您要建立 3 個直欄和 1 詳細資料列,再選擇「確定」。這時版面編輯器會出現一份表格,其中含有三個直欄和一個詳細資料列。
- 將表格連結到 Payments 資料集:
- 在「內容編輯器」中,選擇「連結」。
- 在「資料集」中,從下拉清單選取 Payments。
- 選擇「資料總管」中,展開「資料集」,再展開 Payments。您在查詢中指定的直欄會出現在 Payments 之下。
- 從「資料總管」中,將下列欄位分別拖放在表格詳細資料列的第一、第二和第三個資料格中。
請選擇「確定」來接受所有這些欄位的預設直欄連結。
- PAYMENTDATE
- CHECKNUMBER
- AMOUNT
圖 13-17 報告設計包括付款子報告
這份表格顯示您新增的資料集欄位。
另外,它也顯示版面編輯器自動加到標頭列中的標籤。
這些標籤將欄位名稱顯示成靜態文字,且用來作為直欄標題。
- 依付款日期來排序付款列。
- 選取付款表格。
- 在「內容編輯器」中,選擇「排序」。
- 在「排序」頁面中,選擇「新增」來建立排序表示式。這時在「排序依據」之下,會出現一列。
- 按一下「排序索引鍵」之下,選擇出現的方向鈕,再從下拉清單中選取 PAYMENTDATE。
- 利用預設值「遞增」來作為「排序方向」。
圖 13-18 「報告預覽」顯示重複的付款記錄
如同您最初建立時的訂單子報告,每個客戶都出現相同的訂單記錄,因為您在建立 Payments 資料集的 CustID 參數時,指定了 customerNumber 預設值 103。
由於這個預設值,付款子報告一律會顯示 103 客戶的付款記錄。
如同訂單子報告的相同式,您必須動態更新主要報告中的每個客戶的 CustID 參數值。
作業 10:將付款子報告鏈結至客戶主要報告
您藉由將客戶的 CustID 參數連結至客戶報告中的 CUSTOMERNUMBER 欄位,將付款子報告鏈結至客戶主要報告。
- 選擇「版面」來返回版面編輯器。
- 選取付款表格。
- 在「內容編輯器」中,選擇「連結」標籤。
- 在「連結」頁面中,選擇「資料集參數連結」。這時「資料集參數連結」會顯示 CustID 參數。它的值設為您在建立資料集參數時所指定的預設值 103。
- 在客戶報告中,將參數值改成 CUSTOMERNUMBER 欄位:
- 按一下「值」欄位,再選擇出現在右側的按鈕。
- 在「表示式建置器」中,選擇「可用的直欄連結」,再選擇「清單」,按兩下 CUSTOMER_NUMBER。這時「表示式建置器」會顯示 row["CUSTOMER_NUMBER"] 表示式。
- 選擇「確定」來儲存表示式。這時「資料集參數連結」頁面會顯示 CustID 參數的 row["CUSTOMER_NUMBER"] 的新值。
- 選擇「確定」來儲存已變更的資料集參數連結。
- 預覽報告。現在,報告會顯不同客戶的不同付款記錄。並不是所有客戶都有付款記錄。如果只要顯示含付款或訂單的客戶,請變更客戶報告的查詢。
作業 11:只顯示含訂單或付款客戶
資料庫包括不含訂單或付款的客戶。
客戶報告的查詢會傳回所有客戶。
當您執行報告時,有些客戶列只顯示訂單和付款表格的直欄標題,如圖 13-19 所示。
圖 13-19 報告未顯示客戶的訂單或付款資料
您可以變更客戶報告的查詢來排除不含訂單或付款的客戶。
- 選擇「版面」來返回版面編輯器。
- 在「資料總管」中,展開「資料集」,用滑鼠右鍵按一下 Customers,再選擇「編輯」。
- 將下列各行 SQL 加到現有查詢的尾端:
WHERE EXISTS 子句會檢查 Orders 和 Payments 表格來找出符合 Customers 表格 customerNumber 值的 customerNumber 值。
只會選取含相符的 customerNumber 值的各列。
完整的查詢應該看起來如
圖 13-20 所示。
圖 13-20 「編輯資料集」中的 WHERE EXISTS 子句
- 選擇「預覽結果」來確認查詢傳回各列,再選擇「確定」。
- 預覽報告。將報告向下捲動來檢查輸出。這時報告不會再顯示不含訂單或付款的客戶。
作業 12:並列顯示子報告
現在,子報告會顯示正確的資料,您可以將焦點放在並列版面子報告。
您無法將兩份表格並列,因為「BIRT 報告設計者」會建立區塊層次的元素,這表示每個元素都會起始一個新行。
如果要將表格並列,請將表格插入格線中。
格線可讓您輕易對齊元素。
- 選擇「版面」來返回版面編輯器。
- 從選用區中,將格線元素拖放在訂單表格上的詳細資料列中。
這時「插入格線」會提示您指定格線的直欄和列數。
- 在「直欄數」中輸入 2,在「列數」中輸入 1,再選擇「確定」。
這時版面編輯器會顯示含兩直欄和一列的格線。
- 將訂單表格移至第一個格線資料格。如果要執行這個動作,請選取左下角的「表格」標籤,再將表格拖放在格線資料格中。
- 將付款表格移至第二個格線資料格。這時報告版面應該看起來如圖 13-21 所示。
圖 13-21 子報告並列在報告設計中
圖 13-22 顯示並列子報告的「報告預覽」
作業 13:格式化報告
現在,報告顯示正確的資料和版面,您可以將注意力轉移到改進報告的外觀。
在這個章節中,您將執行下列作業:
強調顯示客戶名稱
- 選擇「版面」來返回版面編輯器。
- 在版面編輯器中,選取 [CUSTOMERNAME] 資料元素。
- 選擇「內容編輯器」的「內容」標籤。
- 從「內容」下的清單中,選取「一般」。這時「內容編輯器」會顯示資料元素的一般格式化內容。
- 在「大小」中,選擇「大」,以顯示較大的元素文字。這時文字會變大。
- 選擇 B 來將資料設成粗體文字。這時資料會呈現粗體。
編輯直欄標題
當您將資料集欄位插入表格中,「BIRT 報告設計者」會自動在標頭列中,增加一個含有資料集欄位名稱的標籤。
資料集欄位名稱的格式通常並不適合報告使用,您必須變更它們。
- 按兩下訂單表格中的第一個直欄標題。這時會強調顯示這個文字。
- 用下列文字來取代 ORDERNUMBER,再按 Enter 鍵:
- 重複上述步驟,將其餘直欄標題改成下列文字:
圖 13-23 報告設計中的編輯直欄標題
圖 13-24 報告預覽中的編輯直欄標題
變更日期格式
當您插入日期資料類型的資料元素時,「BIRT 報告設計者」會根據您的系統語言環境設定來顯示日期。
「BIRT 報告設計者」提供了許多不同的日期格式,如果您不想使用預設格式,您可以選取這些格式。
在這個程序中,您將建立一個樣式來將 ORDERDATE 和 PAYMENTDATE 值的格式從 Jun 3, 2005 12:00 AM 改成 6/3/05。
- 選擇「版面」來返回版面編輯器。
- 選取顯示 [ORDERDATE] 的資料元素。
- 從主功能表中,選擇「元素 -> 新建樣式」。「新建樣式」會顯示樣式所能設定的內容,如圖 13-25 所示。
圖 13-25 新建樣式
- 在「自訂樣式」中,輸入:
- 從左側的樣式內容清單中,選擇「格式化日期時間」。
- 從下拉清單中,選取 m/d/yy 格式。下拉清單中的值會用現行日期來動態更新。
- 選擇「確定」。
這時會將 Date_data 樣式套用到 [ORDERDATE] 資料元素上,如
圖 13-26 所示。
圖 13-26 套用到資料元素的 Date_data 樣式
- 將 Date_data 樣式套用到付款日期資料元素。
- 選取顯示 [PAYMENTDATE] 的資料元素,如圖 13-27 所示。
圖 13-27 已選取 [PAYMENTDATE] 元素
- 用滑鼠右鍵按一下所選元素,再選擇「樣式 -> 套用樣式 -> Date_data」。
- 預覽報告。這時日期已從 Jun 3, 2005 12:00 AM 格式改成 6/3/05。
變更數字格式
當您插入整數資料類型的資料元素時,「BIRT 報告設計者」會根據您的系統語言環境設定來顯示數字。
「BIRT 報告設計者」提供了許多不同的數字格式,如果您不想使用預設格式,您可以選取這些格式。
在這個程序中,您將建立一個樣式來將數量值的格式從 48425.69 改成 $48,425.69。
- 選擇「版面」來返回版面編輯器。
- 選取在付款表格中顯示 [AMOUNT] 的資料元素。
- 從主功能表中,選擇「元素 -> 新建樣式」。這時「新建樣式」會顯示一般種類的內容。
- 在「自訂樣式」中,輸入:
- 從左側的樣式內容清單中,選擇「格式化數字」。
- 在「格式化數字」中,從下拉清單選取「貨幣」。
- 在「小數位數」中,使用預設值 2。
- 選取「使用 1000 分隔符號」。
- 在「符號」中,從下拉清單選取 $。
- 其他屬性使用預設值。
圖 13-28 「格式化數字」內容
- 選擇「確定」。這時會將 Currency_data 樣式套用到 [AMOUNT] 資料元素上,如元素在「內容編輯器」中之「樣式」內容所示。
圖 13-29 報告預覽中的貨幣格式
增加元素垂的直間距
在這個程序中,您將增加每個客戶名稱與它的前後行的間距。
您可以採用若干方式來調整元素之間的垂直間距:
利用格線來格式化很容易,結果的可預測性也比較好。填補和和邊距內容值可以在不同的 Web 瀏覽器中產生不同的值。在這個程序中,您使用第三個方法。
- 選擇「版面」來返回版面編輯器。
- 完成下列步驟,將 [CUSTOMERNAME] 資料元素放在含有兩份表格的格線中:
- 選取格線。請將滑鼠指標停留在左下角上,直到出現「格線」標籤,再選取這個標籤。這時所選格線的頂端和左側會出現指引資料格。
版面編輯器會顯示個別資料元素、格線、表格和資料格的邊框,有時很不容易看到元素的放置位置。
如果您需要較清晰檢視儲存檔案及儲存檔案內元素,請利用「概要」視圖來取得報告設計的樹狀視圖。
另外,如果特定元素很不容易選取,您也可以利用「概要」視圖來選取它。
例如,選取格線而非選取格線內的表格,可能會很困難。
如果要開啟「概要」視圖,請選擇「視窗 -> 顯示視圖 -> 概要」。
- 用滑鼠右鍵按一下格線第一列左側的指引資料格,再選擇「插入 -> 列 -> 上方」,如圖 13-30 所示。
圖 13-30 插入新列
這時新列會出現在所選列上。
- 將 [CUSTOMERNAME] 資料元素從現行位置移至新格線列的第一個資料格,如圖 13-31 所示。
圖 13-31 移至新列的資料元素
- 利用先前所說明的程序,在含有 [CUSTOMERNAME] 資料元素的列上下,增加新的格線列。
圖 13-32 選取第一列
- 在「內容編輯器」的「一般」內容中,將列高度設為 0.2 英吋,如圖 13-33 所示。
圖 13-33 設定列高度內容
- 選取格線的第三列,將它的高度設為 0.1 英吋。
這時報告設計應該看起來如圖 13-34 所示。
圖 13-34 在報告設計中的新列高度
- 預覽報告。客戶名稱上下的間距比較大。這時報告應該看起來如圖 13-35 所示。
圖 13-35 顯示增加間距的報告預覽
增加訂購和付款表格的水平間距
在這個程序中,您將增加訂單和付款表格的間距。如同垂直間距,您也可以採用若干方式來調整元素之間的水平間距:
同樣,利用格線來格式化很容易,結果的可預測性也比較好。填補和和邊距內容值可以在不同的 Web 瀏覽器中產生不同的值。在這個程序中,您使用第三個方法。
- 選擇「版面」來返回版面編輯器。
- 選取格線。請將滑鼠指標停留在左下角上,直到出現「格線」標籤,再選取這個標籤。這時所選格線的頂端和左側會出現指引資料格。
- 用滑鼠右鍵按第一個直欄上的指引資料格,再依照圖 13-36 所示來選取「插入 -> 右側直欄」。
圖 13-36 插入直欄
這時會在第一和第三直欄之間,出現一個新直欄。依預設,「BIRT 報告設計者」會建立寬度相同的直欄。
- 選取您剛新增的直欄,再利用「內容編輯器」將它的寬度設成 0.4 英吋,如圖 13-37 所示。
圖 13-37 設定直欄寬度
第二個直欄的寬度會減低。
- 預覽報告。
圖 13-38 報告預覽,顯示加大的表格間距
新增表格邊框
在這個程序中,您將新增一個方框來括住訂單和付款表格,以將它們清楚識別成兩份個別的子報告。
- 選擇「版面」來返回版面編輯器。
- 選取訂單表格。請將滑鼠指標停留在左下角上,直到出現「表格」標籤,再選取這個標籤。這時所選表格的頂端和左側會出現指引資料格。
- 在「內容編輯器」中選擇「邊框」,再設定邊框內容:
- 將「樣式」設為實線。
圖 13-39 新增表格邊框
- 重複先前各步驟來繪製括住付款表格的邊框。
圖 13-40 在報告預覽中,括住表格的邊框
增加表格邊框和內容的間距
表格的頂端和左側邊框太貼近表格內容。
在這個程序中,您將增加頂端和左側邊框和內容的間距。
- 選擇「版面」來返回版面編輯器。
- 選取訂單表格群組標頭列中的第一個資料格。請務必選取資料格,如圖 13-41 所示,而不是資料格中的資料元素。
圖 13-41 選取資料格
出現在「內容編輯器」中的標題會顯示所選元素的名稱。請確認它顯示了下列文字:
- 在「內容編輯器」中,選擇「填補」內容,再將「上」和「左」設成 6 點。
圖 13-42 在「內容編輯器」中的資料格間距內容
在版面編輯器中,資料格的頂端和左側會出現額外間距,如
圖 13-43 所示。
圖 13-43 報告設計中的資料格間距
- 選取剛才格式化的資料格旁的資料格,將它的「上」和「左」填補內容設成 6 點。
- 在詳細資料列中選取兩個資料格,將「左」填補內容設成 6 點。
- 選取在付款表格相同位置中的資料格,套用訂單表格中的資料格所用的相同設定。
圖 13-44 「報告預覽」顯示加大的表格間距
