程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> DB2數據庫 >> DB2教程 >> 在 DB2 Data Warehouse Edition 中使用 Business Intelligence Reporting Tool 2

在 DB2 Data Warehouse Edition 中使用 Business Intelligence Reporting Tool 2

編輯:DB2教程

開始之前

關於本系列

本教程是 在 DB2 Data Warehouse Edition 中使用 Business Intelligence Reporting Tool 系列 的第 2 部分。這一部分講解如何在 DWE Design Studio 中創建基本的 BIRT 報告和圖表,並在 WebSphere Application Server 中部署它們。本系列的後續部分逐步詳細解釋如何使用 BIRT 為 DB2 關系數據生成更復雜的交互式報告和圖表。

因為 DWE Design Studio 是基於 Eclipse 的,所以可以在其中集成有用的插件。這個 教程系列 針對下面這樣的讀者:

希望了解如何在 Design Studio 中為關系數據創建報告

覺得其他報告工具對於為關系數據創建報告太復雜了

希望了解 BIRT 插件的工作方式

關於本教程

本教程解釋如何在 DWE Design Studio 中使用 BIRT 創建基本的 BIRT 報告和圖表。

本教程解釋以下任務:

創建第一個 BIRT 報告之前的准備工作:

創建 BIRT 項目

創建一個庫

創建數據源

創建主頁面

創建第一個 BIRT 報告(每日銷售報告):

把庫鏈接到報告

創建具有計算列和參數的數據集:

創建數據集

在數據集中添加計算列

創建查詢參數

在查詢中使用參數

創建報告布局

定制報告:

在報告頁面中添加參數

啟用報告分頁

創建匯總計算

設置報告的格式和樣式:

設置報告數據的格式

設置報告數據的樣式

給查詢增加交互功能

創建第一個圖表:

為圖表創建計算成員

選擇圖表類型

選擇圖表包含的數據

設置圖表的格式:

應用 x 軸分組

控制圖例和數據點顯示

以 Web 模式部署和查看報告:

在 Design Studio 中查看 Web 報告

在 Excel 中查看報告

在 WebSphere 中運行報告

目標

在本教程中,我們將在 DB2 Data Warehouse Edition(DWE)中創建基本的 BIRT 報告和圖表,然後在 Web 浏覽器中查看它們。還要學習把報告轉換為 PDF 和 CSV 格式的過程。

前提條件

本教程假設讀者熟悉 Eclipse IDE 的一些基本概念,包括視圖、編輯器、面板等等。對 Eclipse 的介紹參見 參考資料 一節。

在開始學習本教程之前,您應該完成本系列第 1 部分中的基本安裝和配置步驟:

在 DWE Design Studio 9.1.1 中安裝 BIRT Report Designer v2.1.1

創建 DWE 示例數據庫 olapanddatamining

創建 V_SALES 和 V_SALES_GROUPED SQL 視圖

在 Websphere Application Server V6.0 中安裝 BIRT

使用提供的示例報告連接 DB2 示例數據

系統需求

必須在 Design Studio 9.1.1 中安裝 IBM Data Warehouse Enterprise Edition 9.1.1,必須對 WebSphere Application Server v6.0 有訪問權。

必須能夠訪問 DWE 示例數據(本教程使用本系列第 1 部分中創建的 DWESAMP 數據庫)。

必須能夠訪問 BIRT 開放源碼產品並在 DWE Design Studio 環境中安裝(本教程使用 BIRT V2.1.1)。

為了運行本系列中的示例,需要一個 Windows® 系統,至少需要 512MB 的空閒內存空間。

創建第一個 BIRT 報告之前的准備工作

我們將在 Design Studio 中的一個新項目中創建第一個 BIRT 報告,並使用 BIRT 庫提供在多個報告中重用的組件。

創建 BIRT 項目

我們要創建的所有報告都放在一個項目中,這個項目與 DWE Design Studio 中的 BIRT 透視圖相關聯。然後把這個項目作為 Web 應用程序部署在 WebSphere 上。按照以下步驟創建 BIRT 項目:

打開 Design Studio。在默認情況下,Design Studio 會打開 Business Intelligence(BI)透視圖。

查看數據庫連接的 BI 透視圖。如果在 BI 透視圖中打開了一個數據庫連接,並希望在 Report Design(RD)透視圖(BIRT 使用的透視圖)中使用相同的數據庫,就要在 BI 透視圖中斷開這個連接。為此,需要在 BI 透視圖中執行以下步驟:

進入 Database 視圖(見圖 1)。

圖 1. DWE Design Studio BI 透視圖

在 DB2 Data Warehouse Edition 中使用 Business Intelligence Reporting Tool 2

打開 Connections 節點,然後右鍵單擊您的數據庫(例如 DWESAMP)並選擇 Disconnect。

圖 2. 在 DWE Design Studio BI 透視圖中斷開連接

在 DB2 Data Warehouse Edition 中使用 Business Intelligence Reporting Tool 2

切換到 RD 透視圖。

單擊 File > New > Others > Business Intelligence and Reporting Tools > Report Project。

單擊 Next。輸入 SampleReports 作為項目名並單擊 Finish。

圖 3. 報告項目

在 DB2 Data Warehouse Edition 中使用 Business Intelligence Reporting Tool 2

如果提示您切換到 RD 透視圖,那麼單擊 OK。在設計和預覽要生成的報告時,需要使用這個透視圖。

創建一個庫

下面在報告項目中創建一個庫,從而避免創建常用元素的多個拷貝。庫中包含一個數據源、主頁面布局和樣式表,後面的所有報告將使用這些元素。

按照以下步驟創建庫:

在 Navigator 視圖中右鍵單擊剛才創建的 SampleReports 節點。

單擊 New > Library 並在 New Library 對話框中把文件名改為 MartLibrary.rptlibrary。

圖 4. 創建庫

在 DB2 Data Warehouse Edition 中使用 Business Intelligence Reporting Tool 2

創建數據源

數據源包含創建數據連接所需的信息。對於本教程,數據連接使用 DB2 Type 4 JDBC 驅動程序。

如果 Data Explorer 視圖還沒有打開的話,就打開這個視圖。在這裡會找到三個節點:

Data Source — 用來連接數據庫。

Data Set — 用來從數據庫中的任何表中獲取列。

Report Parameters — 用來在兩個報告之間傳遞變量。

在樹視圖中選擇 Data Source。右鍵單擊這個節點並選擇 New Data Source。這時會打開 New Data Source 向導。

選擇 JDBC Data Source。單擊 Next。

圖 5. 創建數據源

在 DB2 Data Warehouse Edition 中使用 Business Intelligence Reporting Tool 2

在 Data Source Name 框中,輸入 DWESamp 並單擊 Next。

如果您還沒有完成第 1 部分中的步驟,那麼單擊 Manage Drivers 添加 DB2 驅動程序的 JAR 文件。按照以下步驟添加 JAR 文件:

-

在 Manage JDBC Drivers 對話框中,選擇 JAR Files 選項卡,然後單擊 Add。在文件選擇對話框中,找到並選擇:

../Program Files/IBM/dwe/SQLLIB/Java/db2jcc.jar

../Program Files/IBM/dwe/SQLLIB/Java/db2jcc_license_cu.jar

../Program Files/IBM/dwe/SQLLIB/Java/db2jcc_license_cisuz.jar

../Program Files/IBM/dwe/SQLLIB/java/db2Java.zip

把這些文件添加到 Data Warehouse 安裝文件夾中。

注意:如果除了第 1 部分中用來創建 TestDeployment 項目的工作空間(修改和部署報告 一節)之外,還有其他工作空間,就需要執行步驟 5-8。

在 Drivers 選項卡的 Driver Class Name 字段,會看到一個新條目:com.ibm.db2jcc.DB2Driver (3.1)。

單擊 OK 關閉這個對話框。

在 Driver Class 框中,選擇 com.ibm.db2jcc.DB2Driver (3.1)。

在 Database URL 框中,輸入以下字符串:

jdbc:db2://serverIP:serverPort/databaseName 其中:

serverIP 是運行數據庫的服務器的 IP 地址(如果數據庫在同一台機器上,就輸入 localhost)。

serverPort 是運行 DWE 服務器的端口號。

databaseName 是數據庫的名稱,DWESAMP。例如 jdbc:db2://localhost:50000/DWESAMP。

指定數據庫的用戶 ID 和密碼。

單擊 Test Connection 按鈕測試連接。如果連接成功,就會顯示一個窗口。

圖 6. 測試連接

在 DB2 Data Warehouse Edition 中使用 Business Intelligence Reporting Tool 2

如果在連接時發生了錯誤

如果發生了錯誤,就應該檢查下面這些常見的問題源:

檢查 DB2 實例是否正在運行。

檢查 DB2 實例的主機名/IP 地址。

檢查用戶 ID 和密碼。

確認已經在 BI 透視圖中斷開了 DB2 實例的連接。如果在 BI 透視圖中仍然連接著服務器,就不能從 RD 透視圖連接服務器。

右鍵單擊剛才在樹中創建的節點(Data Source)並選擇 Edit,單擊 Test Connection,從而重新測試連接。

右鍵單擊新節點(Data Source),然後選擇 Rename 並把名稱改為 DB2Server。

要點:在繼續操作之前,應該保存報告。

創建主頁面

BIRT 主頁面為報告提供一個布局模板,包括背景和圖像等屬性。在使用主頁面時,報告把它的數據顯示在主頁面頂部。如果不使用主頁面,就需要在每個報告上添加公司徽標和其他屬性。我們將在主頁面上添加一個公司徽標和動態日期,然後創建應用於報告的樣式表。

創建主頁面的步驟如下:

在編輯器中,打開 Master Page 選項卡(在 Layout 選項卡旁邊)。

在右邊的 BIRT Report Items Palette 中,拖出一個網格並放在標題部分中。把行數和列數設置為 3 並單擊 OK。這時,應該會在主頁面上看到一個網格。

選擇第一列。

在 Property Editor 視圖的 PropertIEs 下面的 General 選項卡中,把 Width 字段改為 33 percent,並把 Vertical Alignment 改為 Middle。

選擇網格中的第二列,在 Property Editor 視圖的 PropertIEs 下面的 General 選項卡中,把 Width 字段改為 34 percent,把 Vertical Alignment 改為 Middle,並把 Text Alignment 改為 Center。

選擇最後一列。在 Property Editor 視圖中 PropertIEs 下面的 General 選項卡中,把 Width 字段改為 33 percent,把 Vertical Alignment 改為 Middle,並把 Text Alignment 改為 Right。

從 Palette 拖出圖像並放到第一行的中間列中。這時會打開 Edit Image Item 對話框。選擇 Embedded Image。在本教程附帶的源代碼文件夾中(見 下載 一節),有一個 JKSuperStoreLogo.bmp 文件。單擊 Add Image,選擇 JKSuperStoreLogo.bmp 並單擊 Insert。

提示:BIRT 支持許多種圖像格式。在 Web 應用程序中,通常使用 JPEG 或 GIF 圖像,這些格式比較小,裝載速度比較快。

右鍵單擊圖像右邊的列,選擇 Insert > Dynamic text。表達式構建器打開。在提供的空間中,輸入 Date() 並單擊 OK。

提示:可以在表達式編輯器中構建任何有效的 BIRT 表達式,並把它的值粘貼到這裡。

完成的主頁面如下:

圖 7. 主頁面預覽

在 DB2 Data Warehouse Edition 中使用 Business Intelligence Reporting Tool 2

創建第一個 BIRT 報告(每日銷售報告)

在本節中,我們將創建第一個報告,定義它的布局,並把它鏈接到前面創建的庫。為了使用庫,必須把庫鏈接到報告,並創建報告使用的數據集。這個報告是一個每日銷售報告,它顯示給定日期的產品銷售量。按照商店 ID、年份和月份過濾信息。最初,這些查詢的謂詞部分使用靜態值;在本教程的後續部分中,將動態地設置這些值。

按照以下步驟創建每日銷售報告:

在 Navigator 視圖中右鍵單擊 SampleReport 並選擇 New > Report。

圖 8. 新報告

在 DB2 Data Warehouse Edition 中使用 Business Intelligence Reporting Tool 2

在打開的向導中,輸入 DailySalesReport.rptdesign 作為報告名。單擊 Next。

在模板列表中,選擇 Simple Listing,取消 Report Creation Cheat Sheet,單擊 Finish。

這會在 RD 透視圖中的設計編輯器中打開一個新報告。在左邊,可以看到 Data Explorer 視圖。如果沒有看到這個視圖,那麼選擇 Windows > Show VIEw > Others > Report Design > Data Explorer。

提示:可以把視圖移動到工作台上您喜歡的任何位置。可以通過單擊減號(-)使視圖最小化,通過按 X 關閉視圖,通過選擇 Windows > Show VIEw 重新打開視圖。

把庫鏈接到報告

為了在報告中使用在庫中創建的資源,需要把它們鏈接起來:

在 Navigator 視圖中雙擊前面創建的 MartLibrary。

選擇 Window > Show VIEw > Others > Report Design > Library Explorer 打開 Library Explorer 視圖。

在 Navigator 視圖中雙擊 DailySalesReport.rptdesign,打開這個報告的 Outline 視圖。應該會同時看到 Library Explorer 視圖和 Outline 視圖,見圖 9。

圖 9. 對庫進行鏈接

在 DB2 Data Warehouse Edition 中使用 Business Intelligence Reporting Tool 2

為報告設置數據源:從 Library Explorer 視圖中拖出 DB2Server 數據源,並把它放到 Outline 視圖中 DailySalesReport.rptdesign 的 DataSource 節點上。

展開報告大綱中的 librarIEs 節點,確認已經添加了 MartLibrary.rptlibrary。

按照相似的方式,把 Library Explorer 中 MasterPage 節點下面的 NewSimpleMasterPage 拖放到 Outline 視圖中。

在繼續操作之前,保存報告。

創建具有計算列和參數的數據集

創建數據集

在 Data Explorer 視圖中,可以看到已經添加了 Db2Server 數據源。現在,可以創建自己的數據集並在報告中顯示數據:

在 Data Explorer 視圖中,右鍵單擊 Data Set 節點並選擇 New Data Set。New Data Set 向導打開。

如果還沒有選擇 DB2Server 的話,就選擇它作為數據源。可以檢查 Data Source 類型(DB2Server)中的詳細信息是否與前面設置的信息相同。

把數據集的名稱改為 DailySalesReportDataSet 並單擊 Next。

查詢編輯對話框打開,其中顯示數據集的詳細信息(見下圖)。把以下 SQL 語句粘貼到 SQL 框中:SELECT Date, Group, Department,
        CAST(SubDepartment AS CHAR(20))AS SubDepartment,
        CAST(Product AS CHAR(30))AS Product, Baskets, Items, Price,
 CGS, Sales FROM marts.V_SALES

注意:SQL 語句中的類型轉換是可選的,因為在 SQL 視圖中已經完成了轉換。但是,在許多情況下,需要在語句本身中執行轉換。

單擊 Finish。

圖 10. 創建數據集

在 DB2 Data Warehouse Edition 中使用 Business Intelligence Reporting Tool 2

單擊 PrevIEw Results 查看查詢的結果。

在數據集中添加計算列

接下來,創建一些列來提取 WeekEnding Date、Profit 和 Profit PCT 數據。

按照以下步驟添加計算列:

在左面板中,單擊 Computed Columns,單擊 New 並提供以下值:

Column Name: WEEKENDING
Data Type: DateTime
Expression: row["DATE"].getFullYear()+'-'+(row["DATE"].getMonth()+1)
  +'-'+(row["DATE"].getDate()+ (7-row["DATE"].getDay()))

單擊 OK 關閉窗口。

注意:BIRT 使用 row["columnName"] 語法獲取特定行中一個特定列的值。

用以下值創建 Profit 計算列:

Column Name: PROFIT
Data Type:   Decimal
Expression: row["SALES"]-row["CGS"]

單擊 OK 關閉窗口。

創建 Profit Pct 計算列:

Column Name: PROFIT_PCT
Data Type: Decimal
Expression: (row["SALES"] - row["CGS"]) / row["SALES"]

單擊 OK 關閉窗口。

在左面板中,單擊 PrevIEw Results。可以看到表列和計算列的數據。單擊 OK 關閉對話框。

創建查詢參數

BIRT 參數用於在報告之間傳遞信息,或者在報告內部傳遞信息。把它們拖放到布局上,就可以在報告上顯示它們。它們可以鏈接到數據集參數,因此可以在查詢中從 URL 獲得報告參數。下面創建報告參數,然後在查詢中使用這些參數。

按照以下步驟創建查詢參數:

在 Data Explorer 視圖中,右鍵單擊 Report Parameter 並選擇 New Parameter。

在向導中輸入以下參數:

Name: pYear

Data Type: Integer

Display Type: text box

Default Value: 2002

選擇 Hidden 復選框並單擊 OK 關閉窗口。

提示:BIRT 提供了一個用於單一值傳輸的文本框。如果沒有選擇 Hidden 復選框,那麼在運行報告時就會在一個窗口中顯示默認值。可以在窗口中編輯這個值,然後根據這些參數生成報告。

圖 11. 創建報告參數

在 DB2 Data Warehouse Edition 中使用 Business Intelligence Reporting Tool 2

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved