Pentaho 数据源和查询
在本章中,我们将通过一个例子来学习 Pentaho Reporting Designer 的使用。我们将在员工数据库上创建一份报告,以生成每个员工的快速概览。我们将通过添加数据源并将查询传递给 Pentaho 设计器来创建我们的第一个报告。
在使用 Pentaho Report Designer 之前,创建一个名为 员工数据库 并在该数据库中,创建一个名为 employee 使用以下查询。
CREATE TABLE 'employee' ( 'id' integer NOT NULL, 'name' varchar(20), 'designation' varchar(20), 'department' varchar(20), 'age' integer, PRIMARY KEY ('id') )
将以下记录插入表中。
Id | Name | 指定 | 部门 | age |
---|---|---|---|---|
1201 | 'satish' | 'writer' | 'Tuto_Write' | 24 |
1202 | “克里希纳” | 'writer' | 'Tuto_Write' | 26 |
1203 | '普拉桑特' | 'php 开发者' | 'Tuto_develop' | 28 |
1204 | '卡利尔' | 'php 开发者' | 'Tuto_develop' | 29 |
1205 | 'raju' | 'HTML 开发者' | 'Tuto_develop' | 24 |
1206 | 'javed' | 'HTML 开发者' | 'Tuto_develop' | 22 |
1207 | 'kiran' | '校对者' | 'Tuto_Reader' | 28 |
1208 | 'pravenya' | '校对者' | 'Tuto_Reader' | 30 |
1209 | 'mukesh' | '校对者' | 'Tuto_Reader' | 28 |
1210 | 'sai' | 'writer' | 'Tuto_writer' | 25 |
1211 | 'sathish' | “图形设计师” | 'Tuto_designer' | 26 |
1212 | '维斯瓦尼' | “图形设计师” | 'Tuto_designer' | 24 |
1213 | 'gopal' | '经理' | 'Tuto_develop' | 29 |
1214 | 'omer' | '经理' | 'Tuto_writer' | 32 |
1215 | 'shirjeel' | '经理' | 'Tuto_Reader' | 32 |
如果要操作表中包含的数据,最好的选择是使用 SQL。但是如果你想根据数据创建报告,Pentaho Reporting 是最好的选择。我们的任务是将 SQL 查询传递给 Pentaho 报告设计器工具并选择相应的字段(在报告中显示)并将其显示在报告表的详细信息中。
在继续之前,请确保你精通 Pentaho 中可用的所有导航选项(在前一章中进行了解释)。现在我们有了数据源,让我们进一步尝试了解如何使用 Pentaho 生成专业报告。
使用 Pentaho 生成报告的步骤
按照下面给出的步骤从头开始创建报告,而无需使用报告设计向导。
第 1 步:创建新报告
你可以通过单击欢迎窗格上的“新报告”或转到“文件→新建”来创建新的报告定义文件。
第 2 步:添加数据源
右侧的结构窗格提供了报表可视元素的视图。数据源的定义将在 Data 标签;它允许定义报告数据的来源以及在报告处理过程中如何处理这些数据。
报表通常以表格的形式显示由数据源提供的数据,而报表定义定义了报表的格式或打印方式。如以下屏幕截图所示,选择 Data tab from 结构窗格 .
在 Data 选项卡中,右键单击 Data Sets 并选择 JDBC 以添加数据源。通常,在选项列表中,你可以根据需要选择任何其他选项。这意味着,如果你有一个 XML 文件作为数据源,则从列表中选择 XML 选项。看看下面的截图。在这里,我们选择 JDBC 选项来添加数据库作为数据源。
选择 JDBC 选项作为数据源后,你将找到一个对话框,如以下屏幕截图所示。
我们已经选择 MySQL 数据库作为数据源,因此我们必须选择 样本数据 (MySQL) 给定屏幕截图中对话框左侧面板中的选项(标记为指针“1”)。指针“2”用于编辑连接语句和 URL 以与数据库交互。
以下屏幕截图显示了一个对话框,你可以在其中定义连接语句和数据库的 URL。我们需要在以下屏幕上执行四项操作(使用指针突出显示)。
-
在连接类型列表中,选择 MySQL : 我们已经选择了MySQL作为数据库(数据源)。
-
在访问列表中,选择 本机 (JDBC) :通过JDBC连接,我们可以访问数据库。
-
在设置部分,我们必须提及主机名 (localhost)、数据库名称 (employeedb)、端口号 (3306)、用户名 (root) 和密码(根据你的系统)。
-
通过单击测试连接语句 Test button.
最后,点击 OK 按钮确认数据库连接。
第 3 步:添加查询
看看下面的截图。该对话框显示可通过数据库连接获得的可用已保存查询。
-
The 可用查询 对话框右侧的块显示所有可用查询的列表。
-
The 查询名称 块显示在上述可用查询列表中选择的选定查询名称。
-
The Query 块显示查询语句。如果没有可用的查询或者你想创建一个新查询,请单击“ + ” 按钮突出显示为指针“ 1 ”在下面的屏幕截图中。
在点击“ + ”按钮,你可以通过在 查询名称 block as select_all_records 并在 Query block.
SELECT employee.id, employee.name, employee.designation, employee.department, employee.age FROM employee LIMIT 15
添加查询后,你应该得到以下对话框。单击预览按钮。
点击预览按钮后,你会发现所有 employee 表记录在一个单独的对话框中,如以下屏幕截图所示。点击 close button.
然后,单击 OK 按钮提交查询。提交查询后,你将在右侧结构窗格的查询名称下找到所有表字段名称及其数据类型,如下图所示。在这里,最大化的框是放置在屏幕右侧的结构窗格。
到目前为止,我们已经向 Pentaho Reporting Designer 添加了一个数据源和一个查询。现在,我们必须将元素添加到工作区以创建报告。同样的例子延伸到下一章“ 报告要素 ".