教學指導 1:建置簡式清單報告
這一節提供逐步指示來協助您建置列出客戶名稱、電話號碼和聯絡名稱的報告。
這份報告使用「BIRT 報告設計者」所提供之 Classic Models 範例資料庫的資料。
圖 1-1 顯示已完成之報告的一部分。
圖 1-1 列出客戶名稱、電話號碼和聯絡人的報告
在這個教學指導中,您將執行下列作業:
- 建立一份新專案。如果您使用「BIRT RCP 報告設計者」,便不需要完成這個步驟。
作業 1:建立一份新專案
Eclipse 會依專案來組織檔案。
您可以建立一個專案來組織所有報告,或建立多個專案來依種類組織報告。
對於您所建立的每份報告,Eclipse 都會在您的檔案系統中建立一個目錄。
如果您使用「BIRT RCP 報告設計者」,這項作業對對您並不適用。
- 選擇「檔案 -> 新建 -> 專案」。
圖 1-2 所顯示的新專案會顯示您可以建立的專案類型。
圖 1-2 新建專案
- 展開「商業智慧和報告工具」,選取「報告專案」,再選擇「下一步」。
- 在「新建報告專案」的「專案名稱」中,輸入下列文字,如圖 1-3 所示:
- 如果要新增專案,請選擇「完成」。
現在,您可以參閱「導覽器」視圖中的專案,如圖 1-4 所示。
圖 1-4 「導覽器」視圖中的專案
作業 2:建立新報告
您可以利用下列方式來建立報告:
在這個教學指導中,您是從空白報告設計開始。
- 選擇「檔案 -> 新建 -> 報告」。這時會出現「新建報告」。
圖 1-5 顯示「BIRT 報告設計者」中所顯示的視窗。
在「BIRT RCP 報告設計者」中,「新建報告」稍微不同。
圖 1-5 「BIRT 報告設計者」中的「新建報告」
- 在「BIRT 報告設計者」中,在「輸入或選取母項資料夾」之下,選取您建立的專案。這個步驟只適用於「BIRT 報告設計者」使用者。
- 輸入下列文字來作為檔名:
- 選擇「下一個」。「新建報告」提供了若干選項,供您從空白報告開始作業,也提供了一些報告範本,如圖 1-6 所示。
圖 1-6 「新建報告」中的報告範本
- 選取「空白報告」,再選擇「完成」。這時新報告會出現在主視窗中。這個視窗會顯示版面編輯器,如圖 1-7 所示。版面編輯器會顯示一個空白的報告頁面。
這個教學指導的其餘部分提供了建立客戶報告的詳細步驟。
圖 1-7 空白報告設計
作業 3:建置資料來源
開始在版面編輯器中設計報告之前,請先建置一個 BIRT 資料來源,將報告連接至資料庫或其他類型的資料來源。
當您建置資料來源時,您會指定驅動程式類別、資料來源名稱及其他連線資訊,如使用者名稱和密碼等。
在這個教學指導中,您使用已配置成搭配「BIRT 報告設計者」來使用的 Classic Models 範例資料庫。
您不需要指定這個範例資料庫的連線資訊。
- 選擇「資料總管」。如果您使用預設報告設計視景,「資料總管」會出現在版面編輯器左側,在「選用區」旁,如圖 1-8 所示。
如果它尚未開啟,請選擇「視窗 -> 顯示視圖 -> 資料總管」。
圖 1-8 資料總管
- 用滑鼠右鍵按一下「資料來源」,再從快速功能表中選取「新建資料來源」。這時「新建資料來源」會顯示您可以建立的資料來源類型,如圖 1-9 所示。
圖 1-9 新建資料來源
- 從資料來源類型清單中,選取「Classic Models Inc. 範例資料庫」。請利用預設資料來源名稱,再選取「下一步」。這時會出現新建資料來源的連線資訊。
- 選擇「完成」。這時「BIRT 報告設計者」會建立連接到範例資料庫的新資料來源。在「資料總管」內,它會出現「資料來源」中,如圖 1-10 所示。
圖 1-10 「資料總管」中的「資料來源」
作業 4:建置資料集
現在,您已準備好開始建置您的「資料集」。
資料集用來識別要從資料來源擷取的資料。
如果您的報告連接至 JDBC 資料來源,您便利用 SQL SELECT 陳述式來識別要擷取的資料。
- 在「資料總管」中,用滑鼠右鍵按一下「資料集」,再從快速功能表中選擇「新建資料集」。
- 在「新建資料集」的「資料集名稱」中,輸入下列文字,如圖 1-11 所示:
- 其他欄位使用預設值:
- 選擇「下一個」。
這時「查詢」會顯示資訊來協助您建立 SQL 查詢。「可用的項目」會列出 Classic Models 資料庫中的所有表格。
您可以按一下表格旁的加號 (+) 來顯示表格中的直欄。
「編輯資料集」右側文字區會顯示 SQL SELECT 陳述式的必要關鍵字:
- 在文字區中,輸入下列 SQL SELECT 陳述式來指定要擷取的資料:
雖然資料集編輯器會用大寫字母來顯示表格和直欄名稱,但您可以依您的偏好來輸入這些名稱,因為 SQL 不區分大小寫。
如果您不要輸入查詢,您可以從「可用的項目」中,將直欄和表格拖曳到文字區中。
您建立的 SELECT 陳述式(如
圖 1-12 所示)會從 CUSTOMERS 表格的 CUSTOMERNAME、CONTACTLASTNAME、CONTACTFIRSTNAME 和 PHONE 直欄中取得值。
圖 1-12 「編輯資料集」中的 SQL SELECT 陳述式
- 選擇「完成」來儲存資料集。這時「編輯資料集」會顯示查詢中指定的直欄,且會提供用來編輯資料集的選項。
- 選擇「預覽結果」來確認查詢有效,且它會傳回正確資料。如果您正確輸入 SELECT 陳述式,您應該會見到出現在圖 1-13 中的結果。
這些都是查詢傳回的資料列。
圖 1-13 SQL SELECT 陳述式傳回的資料列
- 選擇「確定」。
作業 5:版面報告
在這個程序中,您將元素插在報告頁面中,以顯示先前所建立之資料集內的資料。
您是先插入表格元素,再插入表格中的資料元素。
請務必瞭解表格所提供的功能,這一點很重要:
- 表格會疊代處理資料集傳回的所有資料列。
- 它使您能夠輕易將資料佈成列和直欄格式。
- 選擇「選用區」。這時選用區會顯示您放在報告中的所有元素。
- 從選用區,將表格元素拖放在版面編輯器內的報告中。這時「插入表格」會提示您指定直欄的數目及建立表格的詳細資料列。
- 請指定 3 個直欄和 1 個詳細資料列,再選擇「確定」。
這時版面編輯器會出現一份表格,其中含有三個直欄和一個詳細資料列。
現在,您已準備好開始在表格中插入資料。
- 選擇「資料總管」。
- 在「資料總管」中,展開「資料集」,再展開 Customers。
您在查詢中指定的直欄會出現在 Customers 之下。
- 從「資料總管」中,將 CUSTOMERNAME 拖放在表格詳細資料列的第一個資料格中,如圖 1-14 所示。
詳細資料列會在報告中顯示主要資料。
在已完成的報告中,詳細資料列會重複顯示資料集中的所有資料列。
圖 1-14 從「資料總管」中,將直欄拖放在表格資料格中
「BIRT 報告設計者」會建立一個連結到資料集欄位的具名直欄。
這時「選取資料連結」(如
圖 1-15 所示)會顯示這個資料連結。
圖 1-15 連結到資料集欄位的具名直欄
- 選擇「確定」來接受預設資料連結定義。
在版面編輯器中,您用來放置 CUSTOMERNAME 欄位的表格資料格會含有顯示 [CUSTOMERNAME] 的資料元素。
在這個資料元素之上,是版面編輯器自動加到標頭列中的標籤元素。
這個標籤會將欄位名稱顯示成靜態文字。
它用來作為直欄標題。
圖 1-16 顯示資料和標籤元素。
圖 1-16 表格中的資料和標籤元素
- 從「資料總管」中,將 PHONE 拖放在詳細資料列的第二個資料格中。
選擇「確定」來接受預設資料連結。
- 將 CONTACTFIRSTNAME 拖放在詳細資料列的第三個資料格中。選擇「確定」來接受預設資料連結。
- 將 CONTACTLASTNAME 拖放在詳細資料列的第三個資料格中,在 CONTACTFIRSTNAME 之下。
選擇「確定」來接受預設資料連結。這時報告頁面應該看起來如圖 1-17 所示。
圖 1-17 加到表格中的客戶和聯絡資訊
- 選擇在版面編輯器底端的「預覽」標籤。
「BIRT 報告設計者」會產生和顯示 HTML 格式的報告,如圖 1-18 所示。請向下捲動來查看整份報告。
另外,您也可以預覽 PDF 的報告。
請從主功能表中,選擇「檔案 -> 以 PDF 檢視報告」來執行這個動作。
如
圖 1-18 所示,資料正確,但它是以隨機順序出現。
依客戶名稱的字母順序來排序資料比較有意義。
報告的外觀也需要改善。
圖 1-18 預覽報告資料
作業 6:排序資料
當您最初建立和預覽報告時,報告會依照查詢傳回的順序來顯示資料列。
這個順序可能會隨著許多因素而不同,如資料來源提供資料的方式。
在大部分情況下,您會想變更資料在表格中的出現順序。
- 選擇「版面」來返回版面編輯器。
- 必要的話,請開啟「內容編輯器」。如果您使用預設報告設計視景,「內容編輯器」會出現在版面編輯器之下。如果它尚未開啟,請選擇「視窗 -> 顯示視圖 -> 內容編輯器」。
- 在版面編輯器中,選取左下角的「表格」標籤來選取表格。
當滑鼠指標停留在這個區域時,便會出現這個標籤。
這時「內容編輯器」會顯示表格的內容,如圖 1-19 所示。
圖 1-19 內容編輯器
- 選擇「排序」標籤。
- 選擇「新增」來建立排序表示式。這時會在「排序索引鍵」之下出現一列。
- 按一下「排序索引鍵」之下的這列,選取出現的方向鈕,再從下拉清單中選取 CUSTOMERNAME。
- 利用預設值「遞增」來作為「排序方向」,如圖 1-20 所示。
圖 1-20 遞增排序方向
- 預覽報告。這時排序的資料會依客戶名稱的遞增次序而出現,如圖 1-21 所示。
圖 1-21 依客戶名稱排序的資料
請注意,含大寫字母的名稱會出現在清單頂端。
BIRT 會依 UCS2 字碼點值來排序字串資料。
在 ASCII 型字集中,大寫字母的字碼點值比小寫字母小。因此,大寫字母會出現在小寫字母之前。
- 如果要以不區分大小寫的方式來排序客戶名稱,使 ANG Resellers 出現在 American Souvenirs Inc. 之後,而不是之前,將「排序」頁面中的「排序索引鍵」表示式改成下列表示式:
這個表示式利用 JavaScript toUpperCase( ) 函數,先將所有客戶名稱值改成大寫,再進行排序。
JavaScript 函數名稱會區分大小寫,因此,您必須輸入 toUpperCase( ),大小寫必須完全相符。
直欄名稱的參照也會區分大小寫。
在這個表示式中,row["CUSTOMERNAME"] 是所用的正確名稱。
例如,如果您輸入 row["customername"],當您執行報告時,「BIRT 報告設計者」會顯示一則錯誤。
您可以查看「資料總管」所顯示的名稱來驗證直欄名稱的大小寫。
- 預覽報告。這時會依不同的順序來顯示客戶名稱。含大寫字母的名稱不會出現在清單頂端。
作業 7:格式化報告
現在,您已確認報告依照正確順序顯示了正確的資料,您可以將注意力轉移到改進報告的外觀。
在這個章節中,您將執行下列作業:
- 編輯直欄標題的文字。
- 將直欄標題格式化,使它們有別於資料列。
- 將聯絡人的姓氏和名稱顯示在同一行。
- 增加列的間距。
編輯直欄標題
- 選擇「版面」來返回版面編輯器。
- 按兩下第一個直欄標題 CUSTOMERNAME。這個直欄標題在表格的第一列(標頭列)。
- 如果要取代所有強調顯示的文字,請開始輸入,完成時按 Enter 鍵。
如果要編輯文字,請再按一下取消選取文字,再將游標放在您要刪除或新增字元的位置。
用下列文字來取代 CUSTOMERNAME:
- 重複第 2 和 3 步驟,將第二和第三個直欄標題改成下列文字:
圖 1-22 報告設計中已修訂的直欄標題
格式化直欄標題
為了將報告元素格式化,請設定它的內容。您可以利用兩種方式來完成這項作業:
在這個程序中,您利用第一個方法,將直欄標題設成粗體,並利用第二個方法來將標頭列著色。
- 如果要利用「內容編輯器」,將直欄標題設成粗體,請執行下列動作:
- 選取所有直欄標題。如果要選取多個元素,請按住 Shift 鍵來點選每個元素。這時「內容編輯器」會顯示所選元素的內容,如圖 1-23 所示。
圖 1-23 「內容編輯器」中所選元素的內容
- 選擇 B 來將直欄標題設成粗體文字。
- 如果要取消選取直欄標題,請按一下表格外的空白區域。
- 如果要利用樣式將背景顏色加到標頭列,請執行下列動作:
- 從主功能表,選擇「元素 -> 新建樣式」。
這時會出現「新建樣式」,如
圖 1-24 所示。左側會顯示內容種類。
右側會顯示所選種類的內容。
圖 1-24 新建樣式
- 在「自訂樣式」中,指定樣式的下列名稱:
- 從內容種類清單中,選擇「背景」。這時「新建樣式」會顯示您可以設定的背景內容。
- 利用下列方法之一,來指定「背景顏色」內容的顏色:
選擇「確定」。
- 在版面編輯器中,選取左下角的「表格」標籤來選取表格。
當滑鼠指標停留在這個區域時,便會出現這個標籤。
這時表格的頂端和左側會出現指引資料格,如圖 1-25 所示。
圖 1-25 在表格頂端和左側的指引資料格
- 選取標頭列旁的指引資料格。這時「內容編輯器」會顯示所選列的內容。
- 選擇「內容」,再選取「一般」來顯示列的一般內容。
- 從「樣式」旁的下拉清單中,選取 table_header_row 來套用剛建立的樣式。這時「BIRT 報告設計者」會將樣式套用到標頭列,且會將它著色。
圖 1-26 報告預覽,顯示標頭列樣式
到目前為止,主要的改進是標題清晰可見,且已定義好。
單行顯示姓名
當您將多個元素放在單一資料格時,「BIRT 報告設計者」會建立區塊層的元素。
如果您熟悉 HTML,您會知道每個區塊元素都是換行起始的。
如果要在同一行中顯示多個元素,您必須將它們設為行內元素。
另外,您也可以依照這個程序所說明,將名稱和姓氏值連結起來,顯示在單一資料元素中。
- 選擇「版面」來返回版面編輯器。
- 刪除顯示聯絡人姓氏的資料元素。
- 按兩下顯示聯絡人名字的資料元素。
這時「選取資料連結」會顯示報告所用的所有資料連結。CONTACTFIRSTNAME 旁的勾號指出所選資料元素所用的資料連結。
- 按一下顯示 dataSetRow["CONTACTFIRSTNAME"] 表示式的資料格,再選擇省略符號 (...) 按鈕。
這時「表示式建置器」會在視窗頂端的文字區中顯示下列表示式:
- 如果要連結名稱和姓氏,請使用下列表示式:
圖 1-27 顯示在「表示式建置器」中的這個表示式。
空的引號 (" ") 會在名字和姓氏之間加一個空格。
您可以在文字區中輸入表示式,也可以按兩下視窗右下方的項目,將它插入表示式中。
圖 1-27 在「表示式建置器」中連結的資料
- 選擇「確定」來關閉「表示式建置器」,再按「選取資料連結」中的「確定」來儲存已修改的表示式。
圖 1-28 報告預覽,顯示連結的聯絡人名稱
增加列間距
預設版面會在表格的各列之間增加最小的空間。
您通常會想調整列的間距。
- 選擇「版面」來返回版面編輯器。
- 選取詳細資料列(中間列)的所有資料格。
如果要選取多個資料格,請按住 Shift 來點選。
請小心選取資料格,不要選到資料格中的資料元素。
這時會出現方框括住所選資料格,如圖 1-29 所示。
圖 1-29 版面編輯器中的所選資料格
這時「內容編輯器」會顯示資料格的內容。
「內容編輯器」所呈現的標題會顯示所選元素的類型,因此,您應該查看「內容編輯器 - 資料格」。
- 選擇「填補」。這時「內容編輯器」會顯示填補內容。這些內容可讓您指定元素的上、下、左、右所要新增的間距。
- 將「填補 -- 上」設為 12 個點。
這時您可能會想,為什麼不是選取列來調整列間距,而是選取列中的個別資料格。
「BIRT 報告設計者」不支援列填補,因為有些瀏覽器不支援這項特性。
- 預覽報告。這時報告應該看起來如圖 1-30 所示。資料列的間距比較大。
圖 1-30 報告預覽,顯示列間距
作業 8:建立報告標題
您的報告現在只缺標題。如果要顯示標題,您可以使用標籤元素、文字元素或資料元素:
在這個程序中,您將利用文字元素和 HTML 標示來將文字格式化。
請注意,您不需要利用 HTML 來建立格式化文字。
不過,如果您嫻熟 HTML 或 Web 設計,您可能偏好利用 HTML 來建立格式化文字區塊。
- 選擇「版面」來返回版面編輯器。
- 選擇「選用區」。
- 從選用區,將文字元素拖放在表格之上。
- 在「編輯文字項目」上,從顯示「純文字」的下拉清單中,選取「HTML/動態文字」。
當您選取 HTML 或動態文字時,您可以將 HTML 標示或 CSS 內容內嵌在文字中。
您可以輸入標示,也可以插入文字編輯器所提供的常用 HTML 標示。
- 選擇「確定」,再預覽報告。這時報告應該看起來如圖 1-32 所示。
圖 1-32 報告預覽,顯示已格式化的報告標題
如您所見,使用含內嵌 HTML 的文字元素,可讓您:
- 在多行文字區塊中,每行各使用不同的格式。
- 插入動態值,如現行日期。
另外,您也可以:
- 利用兩個標籤元素來顯示第一和第二行靜態文字
- 利用資料元素來顯示含有動態值的第三行
下一步
您剛才建置了您的第一份報告,使用了「BIRT 報告設計者」的一些基本工具和特性。
您還可以完成許多作業來建置更複雜的報告。本書其他章節會說明一部分這些作業,其中包括:
