1、第 1 页Birt 使用手册第 2 页1.1 简介BIRT 是一个Eclipse-based 开放源代码报表系统。它主要是用在基于Java 与J2EE的Web 应用程序上。BIRT 主要由两部分组成:一个是基于Eclipse 的报表设计和一个可以加到你应用服务的运行期组件。BIRT 同时也提供一个图形报表制作引擎。BIRT 拥有和 Dreamweaver 一般的操作界面,可以像画table 一样画报表,也可以生成图片、导出Excel、html 分页,样式比script 设置简单,另外BIRT 还有OLAP 导航功能。1.2 基本概念数据源:数据的来源,或提供者。如xml 数据源、jdbc 数据
2、源等。数据集:数据集合,它必须与数据源关联,可以理解为查询的结果。报表以及报表项,报表可视为是针对一组数据集的表现形式,而报表项这是这个表现形式的某个具体的单元。它们之间的关系,与窗体和控件的关系非常类似。报表、数据集、数据源三者间的关系:数据源 - 数据集 - 报表。报表参数:查询参数的表现形式,使用它可以构建更灵活的报表。模板和库:主要用于复用报表设计,提高报表开发的效率。1.3 Birt 报表设计器的安装与配置BIRT 的下载地址是:http:/download.eclipse.org/birt/downloads/ 有两种下载方式:1) All-in-One 版本(birt-repor
3、t-designer-all-in-one-2.2.2.zip),它包含了运第 3 页行BIRT系统所需的组件,可直接应用。2) Framework 插件版本(birt-report-framework-2.2.2.zip),安装的必要环境为Java1.4.2/1.5 JDK/JRE; Eclipse SDK 3.2, GEF 3.2 and EMF 3.2。安装步骤如下:打开eclipse 文件夹,在文件夹中再新建一文件夹(如:birt),然后打开birt-report-framework-2.2.2.zip 把其中的eclipse 文件夹放入新建的birt文件夹中。然后在同文件夹的 lin
4、ks 文件夹中,新建一个.link 文件(如:birt.link),且修改其 (birt.link)里的路径(如:path=d: eclipsebirt)即已完成。3)同时应下载中文安装包(NLpack1-birt-report-designer-all-in-one-2_2_2.zip)将其下plugins和features文件夹下的文件分别放入至对应的eclipse的plugins和features下即可。1.4 使用 Birt 报表设计器设计报表1.4.1 创建一个报表项目选择“文件一 新建一 项目”,出现一新项目对话框。打开“业务智能和报告工具”( Business Intellige
5、nce and Reporting Tools)组,并选择“报表项目“ 。如图 1:第 4 页图1点击下一步输入项目名称即可,如输入 birtExample 作为项目名称,点击”完成”即可。1.4.2 创建一个报表选择文件-新建- 报表。新建报表(new report )对话框出现。在Tree View 中选择我们之前创建的项目birtExample,接下来在文件名字段输入test.rptdesign,如图2第 5 页图2点击下一步” 。 “新建报告”提供了一些选项,通过这些选项您可以从空白报告开始或从几个报告模板开始,如图3:第 6 页图 3这里我们先选择空白报表,点击完成后将出现如图 4
6、所示界面:第 7 页图 4此界面主要包括四个区域,左上区域包括Palette、DataExplorer(数据资源管理器)、库资源管理器,其中Palette主要为一些表格、图形等选项区,可通过拖拽放入工作区中;DataExplorer 主要是对数据源、数据集、报表参数的设置;库资源管理器,可以理解为,在使用创建报表的时候有很多的报表资源都会重复的使用,这样为了方便管理,可以将这些部分放在library文件里,这样其它报表只要是引用这些library文件即可。右上区域为工作区,下边的包含布局、主页、脚本、xml sourc、 preview(预览)选项卡;左下区域为工程结构;右下区域为具体元素的属
7、性及参数设定。第 8 页1.4.3 建立数据源企业数据经常以不同格式存储在各种系统中,在布局编辑器中开始设计报告之前,构建 BIRT 数据源以将报告连接至数据库或其他类型的数据源。构建数据源时,要指定驱动程序类、数据源名称和其他连接信息(例如,用户名和密码) 。选择数据源节点,用鼠标右键单击打开弹出菜单,选择新建数据源。出现新建数据源对话框,如图5:图5BIRT 报告使用的最常见的数据源类型是启用 JDBC 的数据库。BIRT 报告可以使用 SQL 查询和存储过程访问这些数据源。我们选择“JDBC 数据源”第 9 页类型,在数据源名称处输入自定义的名称,我们用 testDS 作为数据源名称,点
8、击下一步,进入数据源配置选项框,如图 6:图6点击“管理驱动程序”在弹出框中添加对应的数据库驱动程序,如图7图7第 10 页它显示新的驱动程序类,BIRT 报告设计器将 JAR 文件复制到 Eclipse JDBC 目录,选择“驱动程序 ”以查看驱动程序。这里我们选择oracle的ojdbc14.jar作为驱动。然后测试连接,成功后,确定即可。1.4.4 建立数据集打开数据资源管理器,选择数据集节点,用鼠标右键单击打开弹出菜单。选择新建数据集,将出现新建数据集对话框。“在数据集名称”输入框,输入“dsRes“ 。确保数据源下拉框显示的是我们之前创建的testDS数据源。确保数据集类型下拉框选中
9、的是“SQL 查询语句“ 。图 8点击下一步,进入“查询”对话框。如图9:第 11 页图9在这里可以创建和改变SQL,可以增加WHERE子句, 调整所选择的字段集,等等。使用SQL 编辑器增加计算字段,由数据库引擎负责计算。使用SQL 别名子句给这样的字段命一个名字。这里可通过对表和字段的双击和拖拽即可将其复制到sql查询区域。在界面的“架构处”可以选择相应的数据库用户,“类型”中可以选择将要应用的表或存储过程等,点击“应用筛选器”即可过滤。编辑一条sql语句,点击完成,弹出一编辑数据集对话框,在“输出列”单元编辑其显示名称,如图10:第 12 页图10选择一个字段,点击右侧的编辑按钮,可对字
10、段进行设置,如图11:图11可通过筛选器对结果集进行筛选设置,与 sql query 中的 where 条件查询功能一样。点击筛选器-新建,如图 12:第 13 页图 12可点击“预览结果”来查看结果集是否正确。计算列- 计算字段由 BIRT 来实现计算, 您能使用 JavaScript 表达式, 及调用业务逻辑。 参数- SQL SELECT 语句能包含输入参数,传递数据到查询语句。 在查询语句中他们被标记为 SQL 的 “?“ 符号。 你可以各参数设置一个名字,设置一个默认值等操作。参数必须与你的 SQL “?“ 符号一一对应。 过滤器- 附加的过滤器将应用于您的数据。 过滤器约束传递到报
11、表上的数据。 Where 子句也是过滤器: 由数据库执行。 这个选项卡让您使用BIRT 的 JavaScript 脚本语言定义附加的过滤器 。 第 14 页输出列- 根据查询显示 Columns, 并让您定义一个 Column 别名给报表使用。注意这个 view 显示的 Columns 将是报表所能看见的。 查询选项卡显示着能能从数据库选择的 Columns。 1.4.5 报表模板1.4.5.1 创建模板BIRT 提供了模板机制来重用设计,可以加快报表的开发,定义报表模板有以下两种方式:1. 文件-新建-模板,输入名称等,可以设计一个模板文件;2. 对于已经设计好的报表,可以发布为模板。在设计
12、好的报表文件上点右键,选择发布到模板文件夹,输入名称即可。1.4.5.2 使用模板报表有大量重复的信息时,可以制作出一个模板,把这些重复的信息放在模板里定义,之后再制作报表时,直接应用该模板,即应用上了这些重复的信息。1.4.6 创建库文件1.4.6.1 理解 library(库)Library(库)可以理解为,在使用创建报表的时候有很多的报表资源都会重复的使用,这样为了方便管理,可以将这些部分放在library文件里,第 15 页这样其它报表只要是引用这些library文件即可。同时也方便了管理。 1.4.6.2 创建 library1. 选择新建“库” ,如图 13图 132. 新建库的数
13、据源和数据集,方法步骤同 1.4.3,建后如图:图 141.4.6.3 使用 library1. 新建一个报表文件,如图15第 16 页图152. 进行引用,首先确保Data Explorer和Library Explorer同时在界面里显示,之后便是将Library 里的我们要用的数据拖拽到Data Explorer 自己的报表Data Sources中。便完成了引用数据源。如果Library 中还有其它我们要引用的部分也是同样去操作。如图16图16第 17 页这样当修改数据源的时候,只要修改包含数据源的library文件就可以了,而不必去一个个修改其它的报表文件。这些库可包含任何报表元素,
14、比如样式、数据源、报表条目、脚本等等。1.4.7 对报表进行布局在开始对报告进行布局之前,应在“数据资源管理器”中验证数据集是否返回了您想要在报告中使用的数据。在许多情况下,报告的布局由数据驱动。在“布局管理器”上列出了各种报表元素,可以拖拽相应的元素至工作区中。其中最常用的就是“表”和“图表”下面将介绍各种元素的用法:1.4.7.1 文本报表通常会以文本格式显示大多数信息。实际上,我们可以安全地假设所有报表都包含文本。即使报表主要由图表或图片组成,它仍然会使用文本来标注图表、显示标题、描述图表或图片等等。文本包含静态文本和动态文本两类。1) 静态文本:即在报告中输入的文本。可在报告标题或列标
15、题中使用静态文本,也可以使用静态文本来编写有关报告的摘要。2) 动态文本:通过计算得到的信息或来自数据集的信息。第 18 页1.4.7.1.1 创建动态文本1) 确保想要在其中插入动态文本元素的表或列表绑定至包含 CLOB 数据的数据集。要验证或创建数据集绑定:1.选择表或列表。2.选择“属性编辑器”上的“绑定”。3.在“绑定”页的“数据集”中,选择数据集。2)创建一个列绑定,它引用包含 CLOB 数据的数据集字段:1. 在表的“绑定”页上,选择“添加”。2. 在表达式构建器中,选择“可用的数据集”,然后选择数据集并双击 CLOB 字段。选择“确定”以保存表达式。新的列绑定将出现在“数据绑定”
16、中,并且突出显示了列名。3. 将名称“新的绑定”替换为您选择的名称,然后选择“确定”。3)将布局管理器中的动态文本元素拖放到表或列表中。4)在表达式构建器中,选择“可用的列绑定”,选择“子类别”中的表,然后双击创建的列绑定。选择“确定”以保存表达式。5)在布局编辑器中,选择动态文本元素。“属性编辑器”将显示该动态文本元素的属性。第 19 页6)选择“常规属性”,然后对“内容类型”选择下列其中一个值:o 自动 如果不知道字段内容的格式,则选择此值。如果内容包含 HTML 标记,则 BIRT 报告设计器会将其解释为 HTML 并正确显示内容。如果内容为纯文本,则 BIRT 报告设计器也会正确显示内
17、容。o HTML 如果知道所有字段内容都是 HTML 格式,则选择此值。o 纯文本 选择此值将会完全按照数据源中的显示样式显示字段内容。如果内容包含 HTML 标记,则 BIRT 报告设计器会显示 HTML 标记。1.4.7.2 网格网格可以组织报表项,将报表项放入网格的单元格中,网格类似 excel中的表格操作,可以进行单元格的合并等操作。将布局管理器中的图像元素拖放到页面上的期望位置。将出现“插入网格”如图 17:第 20 页图 17点击确定后就会出现网格布局如图 18:图 18通过右键单击想要添加行或列的位置旁的指导单元格,从上下文菜单中选择下列其中一项以在期望的位置添加行或列。1.4.
18、7.3 图像将布局管理器中的图像元素拖放到页面上的期望位置。将出现“新建图像项”如图 19:第 21 页图 19其中有四个选项,RUI:链接至存储在资源文件夹中的图像;Image file in shared resources 为连接至存储在任何其他位置的图像;Embedded image 为嵌入式图像;Dynamic image 动态图像。1.4.7.4 表1.4.7.4.1 表格边框设置 选中整个表格(选中一个单元格、再 shift 选中整个表格),填充设置为 0,然后选在边框,既可以为整个表格设置边框。第 22 页1.4.7.4.2 建表用鼠标拖动“表”项,移到编辑区,即可弹出“插入表
19、”对话框,如图20图20修改相应的属性,“数据集”要选上已有的数据集,点击确定后出现如图21图 21此表包含了页眉(表头),明细数据行(数据),页脚行。若要编辑或删除表只要右键点击左下角的脚手架“表”即可选择相应的操作。同时可对表进行列大小的调整,如图22图22将鼠标放置列与列间的间隔线即可拖动调整大小,与操作excel类似。还第 23 页可可对表应用样式如图23,图23下边的属性编辑器可对表的属性进行详细设置,如图24:图24拖动左边数据集“dsRes”下的列到表的相应明细数据行,如图25:第 24 页图25可对页眉行的标题进行重命名,拖完后点击“预览”,在编辑区就可以看到报表数据,如图26
20、:图 26第 25 页1.4.7.4.3 典型应用1.4.7.4.3.1 给表添加行号1.选中表的第一列,点右键,插入/在左侧插入行,如图27:图272.在第一列第一个单元格插入一个“文本”项,在弹出的编辑框中输入“序号”,如图28:第 26 页图283. 在第一列第二个单元格中插入一个“数据”项,在弹出框中会让建立一个数据绑定如图29:图29填写相应的绑定字段名、显示名、在Data Type(数据类型)中选择整型,Expression(表达式)中输入row0+1 即可实现添加行号。效果如图30:第 27 页图301.4.7.4.3.2 隔行高亮显示选中数据显示行,这里是第二行,如图31:图3
21、1在属性编辑器-行中点突出显示选项卡,如图32图 32点添加按钮,在“新建突出显示”中添加相应的项。如图33:第 28 页图33预览效果如图34:图34这样一个简单的报表就做好了。第 29 页1.4.7.4.3.3 设置预警阀值可以利用“突出显示”设置预警阀值,当表格中的数值大于某个值、并且小于某个值时,数值可以自动变色。也可以在映射中设置。1.4.7.5 图表图表是报表中重要的应用,通过图表可以各直观的显示数据信息。第 30 页1.4.7.5.1 创建图表在开始设计图表之前,必须创建要显示图表的报告设计文件,然后设置图表使用的数据源和数据集。1.从“Palette“面板拖入“图表“项到报表中,此时会弹出“新建图表“窗口,选择图表类型;如图35:图 35首先会选择要建立的图表的类型,其中包括了各种常用的图表,如条形图、折线图、面积图、仪表图、饼图等,这里我们选择条形图作为例子,在属性“维”中可以选择要显示图形的维数, “输出格式”是输出的图形的格式,