📜  Pentaho-数据源和查询

📅  最后修改于: 2020-11-30 05:36:02             🧑  作者: Mango


在本章中,我们将通过示例学习使用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 Name Designation Department age
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工作区

步骤2:添加数据源

右侧的“结构窗格”提供了报表视觉元素的视图。数据源的定义将在“数据”选项卡上。它允许定义报告数据的来源以及在报告处理期间如何处理该数据。

报告通常以表格的形式显示由数据源提供的数据,而报告定义定义如何格式化或打印报告。如以下屏幕截图所示,从结构窗格中选择“数据”选项卡

添加数据源

在“数据”选项卡中,右键单击“数据集”,然后选择JDBC以添加数据源。通常,在选项列表中,您可以根据需求选择其他任何选项。这意味着,如果您有一个XML文件作为数据源,则从列表中选择XML选项。看一下下面的截图。在这里,我们选择JDBC选项以将数据库添加为数据源。

JDBC选项

选择JDBC选项作为数据源之后,您将找到一个对话框,如以下屏幕截图所示。

我们已经为数据源选择了MySQL数据库,因此必须在给定的屏幕快照中选择对话框左侧面板中的SampleData(MySQL)选项(标记为指针“ 1”)。指针“ 2”用于编辑连接语句和URL以与数据库进行交互。

对话框

以下屏幕快照显示了一个对话框,您可以在其中定义连接语句和数据库的URL。我们需要在以下屏幕上执行四个操作(使用指针突出显示)。

  • 在连接类型列表中,选择MySQL-我们已经选择MySQL作为数据库(数据源)。

  • 在访问列表中,选择本机(JDBC) -通过JDBC连接,我们可以访问数据库。

  • 在“设置”部分,我们必须提及主机名(localhost),数据库名(employeedb),端口号(3306),用户名(root)和密码(根据您的系统)。

  • 通过单击“测试”按钮来测试连接语句。

最后,单击“确定”按钮以确认数据库连接。

添加数据源

步骤3:添加查询

看一下下面的截图。该对话框显示通过数据库连接可用的可用保存查询。

  • 对话框右侧的“可用查询”块显示所有可用查询的列表。

  • 查询名称框显示在上面的可用查询列表中选择的所选查询名称。

  • Query块显示查询语句。如果没有可用的查询,或者要创建新查询,请单击“ +在以下屏幕截图中,“”按钮被突出显示为指针“ 1 ”。

添加查询

在点击“ +按钮,您可以通过在“查询名称”块上编辑一个名称为select_all_records的名称来创建查询,并在“查询”块中使用以下查询语句。

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

添加查询后,您将获得以下对话框。单击预览按钮。

添加查询

单击预览按钮后,您将在一个单独的对话框中找到所有员工表记录,如以下屏幕截图所示。单击关闭按钮。

员工表

然后,单击确定按钮以提交查询。提交查询后,您将在右侧结构窗格的查询名称下找到所有表字段名称及其数据类型,如以下屏幕截图所示。在这里,最大化的框是放置在屏幕右侧的结构窗格。

员工表

到目前为止,我们已经向Pentaho Reporting Designer添加了数据源和查询。现在,我们必须将元素添加到工作区中才能创建报告。相同的示例扩展到下一章“报告元素”。