Pentaho - 資料來源和查詢



在本章中,我們將透過一個示例學習如何使用 Pentaho Reporting Designer。我們將建立一個關於員工資料庫的報表,以快速概述每個員工。我們將透過新增資料來源並將查詢傳遞到 Pentaho Designer 來建立我們的第一個報表。

在使用 Pentaho Report Designer 之前,建立一個名為 employeedb 的資料庫,並在該資料庫中使用以下查詢建立一個名為 employee 的表。

CREATE TABLE 'employee' (
   'id' integer NOT NULL,
   'name' varchar(20),
   'designation' varchar(20),
   'department' varchar(20),
   'age' integer,
   PRIMARY KEY ('id')
)

將以下記錄插入表中。

Id 姓名 職位 部門 年齡
1201 'satish' 'writer' 'Tuto_Write' 24
1202 'krishna' 'writer' 'Tuto_Write' 26
1203 'prasanth' 'php developer' 'Tuto_develop' 28
1204 'khaleel' 'php developer' 'Tuto_develop' 29
1205 'raju' 'HTML developer' 'Tuto_develop' 24
1206 'javed' 'HTML developer' 'Tuto_develop' 22
1207 'kiran' 'Proof Reader' 'Tuto_Reader' 28
1208 'pravenya' 'Proof Reader' 'Tuto_Reader' 30
1209 'mukesh' 'Proof Reader' 'Tuto_Reader' 28
1210 'sai' 'writer' 'Tuto_writer' 25
1211 'sathish' 'graphics designer' 'Tuto_designer' 26
1212 'viswani' 'graphics designer' 'Tuto_designer' 24
1213 'gopal' 'manager' 'Tuto_develop' 29
1214 'omer' 'manager' 'Tuto_writer' 32
1215 'shirjeel' 'manager' 'Tuto_Reader' 32

如果您想操作表中包含的資料,最好的選擇是使用 SQL。但是,如果您想根據資料建立報表,Pentaho Reporting 是最佳選擇。我們的任務是將 SQL 查詢傳遞到 Pentaho Reporting 設計器工具,並選擇報表中顯示的相應欄位,並在報表的詳細資訊工作表中顯示它們。

在繼續之前,請確保您熟悉 Pentaho 中所有可用的導航選項(在上一章中進行了說明)。現在我們有了資料來源,讓我們繼續並嘗試瞭解如何使用 Pentaho 生成專業報表。

使用 Pentaho 生成報表的步驟

按照以下步驟從頭開始建立報表,而無需使用報表設計嚮導。

步驟 1:建立新報表

您可以透過單擊歡迎窗格上的“新建報表”或轉到“檔案→新建”來建立新的報表定義檔案。

Pentaho Workspace

步驟 2:新增資料來源

右側的結構窗格提供報表視覺元素的檢視。資料來源的定義將在“資料”選項卡上;它允許定義報表資料來自何處以及在報表處理期間如何處理此資料。

報表通常以表格的形式顯示資料來源提供的的資料,而報表定義則定義如何格式化或列印報表。如下面的螢幕截圖所示,從“結構窗格”中選擇“資料”選項卡。

ADD Data Source

在“資料”選項卡中,右鍵單擊“資料集”並選擇 JDBC 以新增資料來源。通常,在選項列表中,您可以根據需要選擇任何其他選項。這意味著,如果您的資料來源是 XML 檔案,則從列表中選擇 XML 選項。請檢視以下螢幕截圖。這裡我們選擇 JDBC 選項將資料庫新增為資料來源。

JDBC Option

選擇 JDBC 選項作為資料來源後,您將看到一個如下面的螢幕截圖所示的對話方塊。

我們已經選擇了 MySQL 資料庫作為資料來源,因此我們必須在對話方塊的左側面板中選擇“SampleData (MySQL)”選項(在給定的螢幕截圖中標記為指標“1”)。指標“2”用於編輯連線語句和 URL 以與資料庫互動。

Dialog box

以下螢幕截圖顯示了一個對話方塊,您可以在其中定義資料庫的連線語句和 URL。我們需要在以下螢幕上執行四個操作(使用指標突出顯示)。

  • 在連線型別列表中,選擇“MySQL” - 我們已經選擇了 MySQL 作為資料庫(資料來源)。

  • 在訪問列表中,選擇“Native (JDBC)” - 透過 JDBC 連線,我們可以訪問資料庫。

  • 在“設定”部分,我們必須提及主機名(localhost)、資料庫名(employeedb)、埠號(3306)、使用者名稱(root)和密碼(根據您的系統)。

  • 透過單擊“測試”按鈕測試連線語句。

最後,單擊“確定”按鈕確認資料庫連線。

Add Datasource

步驟 3:新增查詢

請檢視以下螢幕截圖。該對話方塊顯示了透過資料庫連線可用的所有已儲存查詢。

  • 對話方塊右側的“可用查詢”塊顯示所有可用查詢的列表。

  • “查詢名稱”塊顯示所選查詢名稱,該名稱在上述可用查詢列表中被選中。

  • “查詢”塊顯示查詢語句。如果沒有任何查詢可用,或者如果要建立新查詢,請單擊“+”按鈕,該按鈕在以下螢幕截圖中標記為指標“1”。

Add a Query

單擊“+”按鈕時,您可以透過在“查詢名稱”塊中編輯名稱為“select_all_records”並在“查詢”塊中使用以下查詢語句來建立查詢。

SELECT
   employee.id,  
   employee.name, 
   employee.designation,
   employee.department,
   employee.age 
FROM
   employee 
LIMIT
   15 

新增查詢後,您應該會看到以下對話方塊。單擊預覽按鈕。

Adding a Query

單擊預覽按鈕後,您將在一個單獨的對話方塊中找到所有 employee 表記錄,如下面的螢幕截圖所示。單擊“關閉”按鈕。

Employee Table

然後,單擊“確定”按鈕提交查詢。提交查詢後,您將在右側結構窗格中查詢名稱下找到所有表字段名稱及其資料型別,如下面的螢幕截圖所示。這裡,最大化的框是結構窗格,它位於螢幕右側。

Employee Table

到目前為止,我們已將資料來源和查詢新增到 Pentaho Reporting Designer。現在,我們必須將元素新增到工作區以建立報表。相同的示例擴充套件到下一章“報表元素”。

廣告

© . All rights reserved.