在介绍了Pentaho Reporting并概述了两万英尺的内容之后,在本章中,您将开始一个实际的动手练习,第一次学习如何运行Pentaho Report Designer。此外,您将以一些初始数据为例,开始创建具有首选布局的报告的第一步。
您将首先建立一个用于生成报告的环境。从那里开始,您将逐步了解用户界面的一些初始详细信息,例如菜单,工具栏,报告元素调色板,报告画布选项卡面板,报告资源管理器,元素属性和消息。了解更多关于用户界面的知识之后,您将逐步创建报告。在此阶段,您将使用Pentaho Report Designer中提供的简单向导,使会话更实际,您将看到如何将报告保存在文件系统中。
根据您的需求和用例,这对于在以后的会话中安全地存储它很有用。在此过程中,您将获得有关构建报告和获取数据的第一个详细信息,以及生成预览并在设计和预览之间进行迭代,以获得最佳结果。
本章是为开发人员和信息技术人员编写的教程。最好的学习方法是阅读时遵循笔记本电脑上的说明。在本章的最后,您将对构建Pentaho报告的基础知识感到满意。后面的章节将假定您的环境已正确配置,并且您保留了在本章中获得的知识,因此请仔细阅读并注意。
您的环境先决条件
如第1章,《 Pentaho Reporting简介》中所述,Pentaho Reporting是一套开源工具,包括Report Designer,Reporting Engine和Reporting SDK。前面所有工具都是用纯Java编写的,从而允许任何支持Java运行时环境的操作系统运行该应用程序。 Pentaho Reporting的最新版本(第8版)要求使用JDK 8或更高版本。
Pentaho Reporting工具是跨平台的应用程序,将在Linux,Windows,macOS和其他Java支持的环境中运行。报告引擎与JDK的早期版本向后兼容,但始终建议使用最新版本。
如导言所述,在本章中,我们将把注意力集中在Pentaho Report Designer上。下一章将讨论Pentaho Reporting SDK。关于Reporting Engine,它用作设计器和SDK中的核心组件,因此在描述其他两个工具时将对其进行处理。
在谈论Pentaho Report Designer时,您的环境应该具备的唯一先决条件显然是Sun的JDK。首先,请访问http://java.sun.com并下载Java SE开发工具包8的最新补丁程序。下载后,您可以轻松地将其安装在您的环境中,主要是解压缩并根据您的操作设置一些变量。系统。我们在这里将不显示更多详细信息,因为假定您可以通过稍稍进行搜索来查找有关此任务的最新教程,这很容易。要验证您的安装,请在命令行上运行java –version,如果安装正确,您将看到与以下屏幕显示类似的内容
现在,您的环境中的所有内容都已准备就绪,让我们前进一步,安装Pentaho Report Designer。
设置Pentaho报表设计器
如您所料,我们目标的首要任务是从正确的网站下载Pentaho Report Designer。分发软件包可在以下两个地方获得:在SourceForge网站(https://sourceforge.net/projects/pentaho)和直接在Pentaho官方网站(http://community.pentaho.com/projects/reporting)上。 。在每种情况下,分发软件包都可以免费下载,并且不需要任何费用。
如果您选择从Pentaho官方网站下载Pentaho Report Designer,则自动重定向会将您发送到SourceForge网站。要在SourceForge网站上找到正确的发行版,请遵循Files存储库中的Report Designer文件夹。在那里,您会为每个版本找到一个子文件夹。在我们的案例中,选择最新的可用版本8.0。
在分发文件夹中,您可以找到三个可用的软件包(让我们忽略仅包含校验和字符串的.sum文件)。前两个软件包prd-ce-mac- *。 zip和prd-ce- *。 zip,包含macOS和Windows / Linux操作系统的二进制发行版。第三个软件包,pre-classic-sdk- *。 zip,包含Reporting SDK。
下载了Pentaho Report Designer的二进制发行版之后,在计算机中创建一个目录,然后在其中解压缩软件包的内容。内容解压缩后,您将在主目录中找到一个名为report designer的脚本。
当然,如果您使用的是基于Windows的操作系统,请运行report-designer.bat脚本。 如果您使用的是基于Linux的操作系统,请运行报表设计器。 sh脚本。 如果您使用的是macOS,请在查找器中找到Pentaho Report Designer,然后直接在应用程序上双击。
当然,如果您使用的是基于Windows的操作系统,请运行report-designer.bat脚本。 如果您使用的是基于Linux的操作系统,请运行报表设计器。 sh脚本。 如果您使用的是macOS,请在查找器中找到Pentaho Report Designer,然后直接在应用程序上双击。
运行脚本后,将出现用户界面,并且您的桌面上将显示一个类似于以下内容的欢迎屏幕:
在这一点上,您可能想要创建一个到桌面的快捷方式或使运行更容易的某种方式。 无论如何,祝贺您,您已经成功安装了Pentaho Report Designer!
默认情况下,Pentaho Report Designer随核心Pentaho Reporting Engine库一起提供,因此您现在具有必要的报告组件来完成本书中描述的示例。
如果您在安装Pentaho Report Designer时遇到困难,则需要确认一些常见的故障排除问题。 最常见的问题与您已安装的Java虚拟机和SDK有关。 report-designer脚本使用在系统路径上找到的第一个Java命令。 因此,您将需要验证路径是否正确配置。 您可以通过在命令窗口中执行命令java -version来执行此操作,以查看所使用的Java版本。
SamplaData模式
与分发软件包一起,Pentaho Report Designer的安装附带了一个名为SampleData的数据库模式。 TheSampleData模式包含完整的表和数据集,通常可用于测试和培训。 在本书中,您将在所有练习中使用该数据库。 您将自己发现,SampleData是围绕报表的每个常见需求的理想起点。
无需执行任何操作即可设置和使用SampleData模式。 Pentaho Report Designer随附板载HyperSQL RDBMS,考虑到HyperSQL是完全用Java编写的引擎并且不需要任何安装或复杂的任务即可使其正常工作,因此它是自然的选择。
如果您想了解有关HyperSQL RDBMS的更多信息,可以在网上或直接在官方网站(http://hsqldb.org)上查看大量的文档和教程。
您可能知道,HyperSQL数据库包含在一堆文件中,所有文件都存储在文件系统的唯一文件夹中。 对于SampleData,可以在<report-designer> / resources / sampledata路径中找到它。
除了数据库之外,Pentaho Report Designer包含捆绑的数据源,该数据源连接到SampleData模式。 我们将详细了解什么是数据源以及如何在报表中使用数据源,但是就目前而言,您已经足够知道可以轻松地从Pentaho报表设计器内部访问该数据源,此操作将在之后自动进行。 正确的安装。
为了完成对SampleData模式的介绍,让我们看一下其中包含的表的列表。 这是相关的,因为您将在本书中多次使用这些表进行查询,并且希望您将在所有您的表中使用它们。
初步测试和实验,如下:
我们将仅看到theSampleData模式,但此介绍对您来说很重要,因为现在您可以轻松了解我们将要开发的所有查询。 正如您将在以下各节中很快看到的那样,查询是使用Pentaho Reporting开发所有报告的第一步。
用户界面介绍
现在您已经在环境中安装了Pentaho Report Designer,并且知道如何启动它,让我们向前迈出一步,引入用户界面。启动Pentaho Report Designer之后,您将注意到以下六个主要图形组件。所有这些组件共同以创建报告的独特目标而工作。从窗口的左上角到右下角,您可以识别:
菜单和工具栏,您可以在其中请求执行报告上所有可能的操作
报告元素调色板,您可以在其中选择报告的报告元素
报告画布选项卡面板,显示您的报告
带有“结构”和“数据”选项卡的报告浏览器面板以对象树形式显示整个报告
元素属性面板,显示与当前所选报告元素关联的所有样式和属性
消息面板,显示与当前打开的报告有关的警告和错误
以下是一个屏幕截图,突出显示了列出的组件及其在Pentaho Report Designer用户界面中的位置:
考虑到应高度自信地管理这些组件以取得良好的效果,以下是它们的简要说明,以确保您从一开始就了解它们在报告开发中的用途和目的。
菜单和工具栏
菜单和工具栏包含有用的功能,可简化报表的创建。 除了保存,打开和发布之类的基本功能外,您还可以使用许多高级功能。 菜单和工具栏中的许多选项都可以用作快捷键。 Pentaho Report Designer的菜单和工具栏的目的与标准菜单和工具栏没有什么不同。 它们包含所有可用功能,这些功能以描述和图标的顺序收集,全部可单击以完成特定任务。
报告元素调色板
报告元素调色板面板位于Pentaho报告设计器的左侧,并包含可放置在报告上的元素类型的图标列表。 报表元素面板包括标签,形状,字段,图表,子报表以及许多有趣且有用的基本元素,您可以使用它们来完全根据您(或客户)的需要来开发报表。 要将元素添加到报告中,请从调色板中拖动图标,然后将其直接拖放到报告画布中。 可能您将开始理解,一切都非常容易,而不是仅对于纯开发人员而言(在此阶段)。
报告画布选项卡
报告画布选项卡面板位于Pentaho Report Designer的中心,它是最终结果的预览。 创建新报告或打开现有报告后,您可以在其中拖放元素以构建首选布局。
在设计模式下,画布显示一些所谓的报告带(我们将在下一章中详细了解什么是报告带以及它们的作用)。 画布提供了许多视觉功能,使您可以管理报表元素的对齐和大小。 这是发生魔术的地方,您将能够移动,调整和调整报告,使其完全符合您(或客户)的需求。 除了设计画布之外,您还可以直接在此面板中预览当前报告。
您可以通过这种方式在实时数据和报告模板之间快速切换。 这将使报表的开发更加容易,并可以从用户的角度立即对其进行测试。
报告浏览器
报表浏览器位于Pentaho报表设计器的右侧,包括“结构”选项卡面板和“数据”选项卡面板。 “结构”选项卡面板包含报告的树结构,包括所有报告条带。 “数据”选项卡面板包含报表的所有数据源,功能和参数。 在结构和数据树的各个部分上单击鼠标右键,界面将显示许多可能的选项,例如添加新的数据源和子组。 可以通过窗口应用程序菜单隐藏报告浏览器。 连同画布选项卡和元素属性一起,它是Pentaho报表设计器中功能最强大的组件之一。
强烈建议您尽快开始了解报表浏览器的工作方式,因为它可以为您提供很多帮助,尤其是在微调报表中元素的精确位置时。
元素属性
元素属性面板位于Pentaho Report Designer右侧的报表浏览器面板之后,并在报表浏览器或画布中显示当前所选项目的详细信息。 所有可编辑的样式和属性都显示在此面板中。 许多可编辑属性为高级编辑功能提供了其他对话框。 可以通过窗口应用程序菜单隐藏报告浏览器。 与画布选项卡和报表浏览器一起,它是Pentaho报表设计器最强大的组件之一。
强烈建议您尽快开始了解元素属性的工作方式,因为它可以为您提供很多帮助,尤其是在微调报表中元素的精确位置时。
留言内容
“消息”面板位于Pentaho报告设计器的底部,并显示报告中存在的所有活动警告或错误。选择一条消息后,报表设计器将自动选择有问题的元素和属性,从而可以轻松地跟踪报表中的问题。 “消息”面板默认情况下是隐藏的,可以通过窗口应用程序菜单使其可见。强烈建议您经常检查“消息”面板,因为它包含报表在部署到生产环境中(最糟糕的是提交给最终用户)时可能会出现的潜在问题的详细信息。
您可以通过查看用户界面右下角的小图标轻松检查警告或错误。在下一个屏幕截图中,您可以看到图标示例为黄色三角形。如果您在此处看到一个图标,建议您选中该消息框,因为您应该在报告中解决一些问题。
以下屏幕截图显示了显示活动警告的“消息”面板:
使用向导创建第一个报告
既然您已经成功安装了Pentaho Report Designer,并且对用户界面更加自信,那么在本节中,您将逐步构建第一个完整的报告。 您将要开发的报告将列出在SampleData模式中定义的目录中的所有产品,更确切地说,将其存储在PRODUCTS表中。 在开始之前,请在笔记本电脑上创建一个名为my_reports的目录,以管理将在本书中开发的文件。
在https://github.com/fcorti/pentaho-8-reporting-for-java-developers上的GitHub存储库中,您可以找到本书所有示例中描述的源代码。 在第02章-Report Designer / my_reports入门文件夹中,您可以在名为my_first_report.prpt的文件中找到此处描述的示例。