admin 管理员组

文章数量: 887021


2023年12月24日发(作者:generally的词根)

BIRT使用指南

内部资料妥善保存

山东电力集团公司门户项目组

2007年1月

BIRT使用指南

修订页

编章节名称

全文

修订内容简述 修订日期

修订前 修订后

修订人 批准人

版本号 版本号

黄俊、赵2007-1-29 1.0

2 / 40

BIRT使用指南

目录

1.

简介................................................................................................................................ 4

2.

功能介绍........................................................................................................................ 4

2.1

2.2

2.3

支持的报表 ............................................................................................................ 4

体系组成 ................................................................................................................ 4

J2EE应用中的BIRT ............................................................................................... 5

3.

软件下载........................................................................................................................ 5

4.

报表制作........................................................................................................................ 6

4.1

4.2

4.3

4.4

4.5

4.6

简单的例子 ............................................................................................................ 6

设计细节 .............................................................................................................. 19

子报表设计 .......................................................................................................... 23

图表设计 .............................................................................................................. 25

图表细节 .............................................................................................................. 27

项目应用 .............................................................................................................. 35

5.

应用部署...................................................................................................................... 39

3 / 40

BIRT使用指南

Birt 使用文档

1. 简介

BIRT是一个Eclipse-based开放源代码报表系统。是基于J2EE的Web应用程序上。BIRT主要由两部分组成:一个是基于Eclipse的报表设计和一个可以加到你应用服务的运行期组件。BIRT同时也提供一个图形报表制作引擎。目前正式版本是2.1.1,2.2版已经在发布中已经有2.2M4版可以下载,中文版暂时还没有,项目中使用2.1.1的中文版本。

2. 功能介绍

2.1 支持的报表

1) 列表

列表是最简单的报表。当 列表变长时,你可以把相关数据增加到同一分组(基于客户的订单分组,基于供应商的产品分组)。如果数据是数字类型的,你可以轻松的添 加到“总数”、“平均”、或其他汇总中。

2) 图表

当需要图表表现时,数字型数据比较好理解 。BIRT 也提供饼状、线状以及柱状图标等。

3) 信函和文档

通知、信件、以及其他文本文档都很容易通过 BIRT 方便建立。文档包括正文、

格式、列表、图表等。

4) 混合报表

很多报表需要联合以上所有的报表构成单一文档。例如,一 份客户声明会列出客户所需要的信息,为当前促进(promotions)提供文本,以及提供并行的出帐和入帐列表。一份财政报表将包括声明、图表 、表格,所有这些都将进行全方位的格式化,来匹配共有的配色方案。

2.2 体系组成

BIRT 报表包含四个部分:数据、数据转 换、业务逻辑、陈述。

1) 数据

Web 服务、Java 对象,这些都可以作为 BIRT 报表源。2.1 版本提供 JDBC 支持,也支持利用编码来获取其他地方的数据。BIRT 的 ODA(Open Data Access) 框架允许任何人构建新的 UI 以及运行时支持 任何类型的表格式数据。未来,单一报表可包含从任意多个数据源获取数据。

2) 数据转换

4 / 40

BIRT使用指南

报表通过对数据的分类、统计、过滤以及分组来适应用户需求。当然,数据库能实现这些功能,当遇到普通文件和 Java 对象时 BIRT 必须以 "simple" 数据源方式处理。BIRT 允许复杂的操作,比如总合分组、整体共计的百分比,等等。

3) 业务逻辑

真实世界的数据很少提供理想的结构良好的报表。许多报表要求用具体逻辑把原始数据转换成用户的有用信息。如果该逻辑仅仅用于该报表,可以用 BIRT

JavaScript 脚本支持。如果程序中已包含这些逻辑,可以调用已有的 Java 代码。

4) 表现

数据准备好了,可以在很大的范围内选择表现形式。表格、图表、文字等等都可以。单一数据集可以有多种方式表现,而单一报表可以表现多个数据集。

2.3 J2EE应用中的BIRT

BIRT 报表引擎以 JAR 文件方式打包,可以方便的添加到J2EE 应用中。报表引擎是一系列的 POJO,便于可以在 JSP 页面集成报表。

1) UI 参数

多数报表允许用户指定 一些输入,这些数据叫做"报表参数"。例如,客户报表要

求显示客户数据。参数页面可能是静态的:为每个报表进行用户定制设计。或者可

以使用参数元数据提供的动态页面,以便该单一页面为所有的报表提供服务。

2) 运行报表

用户提交表单参数时,你的 web 应用通过这些参数向 BIRT 报表引擎说明读取哪个报表设计文件,并读取数据,再产生报表输出。当引擎运行报表时 BIRT 的术语称为“工厂”。

3) 数据访问

报表如何从你的应用获得数据 已在上面解释了。Java 程序通常利用 Java 对象为

BIRT 工厂提供数据。

4) 显示

附加的 JSP 页面,叫做阅读器,允许用户查看报表输出。 一个报表应用程序包含一个参数页,你可以为每个报表创建自定义的 UI,或者使用 BIRT 带来的参数元数据提供单一报表来处理多种不同报表。

3. 软件下载

BIRT的相关文件可以在以下地址下载:

/callisto/birt/Eclipse%20BIRT%

BIrt设计器共用3个版本:

1) All_in_One:在Windows平台上设计BIRT报表最快的方法,包括完整的

Eclipse SDK等所有你需要的。你还需要安装:Java 1.4.2/1.5 JDK/JRE

2) FrameWork:如果你已经安装了Eclipse 3.2,你只需下载BIRT插件到你的Eclipse环境即可。你还需要安装:Java 1.4.2/1.5 JDK/JRE; Eclipse SDK 3.2, GEF

3.2 and EMF 3.2

3) RCP Designer:如果你需要一个专门的报表设计器而无需其他功能,那么你只需下载BIRT报表设计器的RCP版本即可。你还需要安装:Java 1.4.2/1.5

5 / 40

BIRT使用指南

JDK/JRE。

可以视情况而定,一般只需要下载RCP Designer版本就可以了,是一个独立的设计器。

上述设计器是英文版本,中文界面还需要一个汉化包:

/callisto/birt/Eclipse%20BIRT%202.1.1%20NLP%

下载完成后,将其中的features和plugins包覆盖RCP Designer根目录下覆盖原目录即可完成汉化,需重新启动设计器。

BIRT要部署到 J2EE应用程序中,需要下载Runtime部件:

/callisto/birt/Eclipse%20BIRT%

4. 报表制作

4.1 简单的例子

4.1.1 打开报表设计器

运行文件。报表设计器页面如下图所示:

4.1.2 新建报表

打开菜单“文件——新建——新建报表”,如图所示:

6 / 40

BIRT使用指南

弹出新报表属性设置框口,如下图所示:

在文件名输入框中输入报表名称:如:ign.同时也可以设置报表文件的存放路径,本人采用默认设置:点击“next”进入下一步设置,如图所示:

7 / 40

BIRT使用指南

选择新建报表所要采用的报表模板:空白报表。其他报表模版可以自己定制在后面的创建模版中会提到。到此报表的基本信息已经设置完。点击 Finish。

8 / 40

BIRT使用指南

4.1.3 创建数据源

右击数据源,点击新建数据源

选择JDBC数据源,并对数据源名称命名,本人采用默认命名:数据源。点击next,如下图:

点击管理驱动程序,为BIRT添加新的驱动程序类。如下图。

9 / 40

BIRT使用指南

点击添加按钮,添加数据库驱动程序类,下图添加了mssql2005 和orcl9i的驱动类。

添加完成后,点击驱动程序(上图所示),选中刚才添加的驱动类,点击编辑。如下图:

10 / 40

BIRT使用指南

添加url模版,点击ok 。完成驱动类的添加。如下图:

选择刚才添加的驱动类,下图中的数据源是mssql2005。

11 / 40

BIRT使用指南

用户名和密码后点击测试连接。连接通过后点击 Finish。这样就完成了一个数据源的添加。

4.1.4 创建数据集

选择刚才创建的数据源,以及数据集类型后点击next。如下图:

在可用数据项中会显示数据库中的表,将表拖到右边筐即可,也可以直接在右边写入sql语句。点击Finish。(注意:这里因为加入参数的愿意有可能会报错。你可以不管它直接继续后面步骤。等完成报表参数后错误就会消失。)如下图: 12 / 40

BIRT使用指南

上面点击Finish后出现下图,在这里我们可以点击新建 添加列

填写新列的列名已经数据类型,数据类型可以不写,采用他默认生产的数据类型。点击红色框中按钮,如图

13 / 40

BIRT使用指南

在弹出的表达式生成器里面写入新列的表达式,点OK。如下图:

到这里,我们就基本上完成了一个数据集。由于上面例子中的sql加入了参数,下面就让我们来看下参数的定义和应用。

4.1.5 报表参数

根据刚才新建的数据集,创建相对应的报表参数,点击红色框中的按钮。如下图:

14 / 40

BIRT使用指南

弹出报表参数编辑窗口,这里我们应该注意:在显示类型的下拉框中右文本框和列表框等选项,在后面的应用中我们会具体讲到他们的区别,这里我们先选用文本框,点ok。如下图:

15 / 40

BIRT使用指南

4.1.6 制作简单表格:

我们从左边Palette窗口中拖出一个标签和一个表,放到右边的窗口中。如下图:

从右边数据集中 拖出相应的数据放到表格中。形成下图:

选中表格,右击选择新建样式,这样我们可以对整个表格定义一个整体的样式风格。

16 / 40

BIRT使用指南

根据自己需要创建好样式,点OK。

17 / 40

BIRT使用指南

应用样式:

这样我们就基本上完成了一个简单的报表,点击下图中的按钮,查看我们的成果。

输入查询参数条件。这样就可以看到我们需要的东西了。如下图:

18 / 40

BIRT使用指南

4.2 设计细节

上面我们已经通过练习制作了一个简单的报表,下面我们来看下表报制作中的一些细节 19 / 40

BIRT使用指南

问题。

4.2.1 报表样式

我们可以由美工制作一些专业的漂亮的样式,导入到BIRT中。方便我们制作更加美观的表报。如下图:

4.2.2 数据属性

其中一个数据,对其属性编辑,我们可以解决很多细节上的问题。

双击下图中的红色部分,展开属性编辑器。如下图:

20 / 40

BIRT使用指南

通过属性编辑器,我们可以完成许多的操作,比如:字体,格式,超链接等。后面我们会说到运用超链接做子表。

这里我们简单介绍下映射和突出显示的作用。具体的应用在以后的实践中掌握。

映射:例如:在数据库存储中我们用0、1代表性别。这样通过映射我们就可以把(0、1)转换为(男、女)。

突出显示:当我们需要将低于0的数字用红色显目显示的时候就可以用到这个功能。

4.2.3 参数编辑

上面的例子中,我们在编辑参数的时候选用的显示类型是文本框,下面我们来看下列表框和文本框的区别。

编辑上面例子中的参数,选择列表框,动态。新建数据集。(注意:不可采用原来数据集)

创建好新的数据集后选项新的数据集,选择参数对应的列。点击OK,保存。

21 / 40

BIRT使用指南

让我们看看经过参数改动后的预览情况。它增加了参数选择的下拉框。

4.2.4 去除多余空格

在表格预览的时候,你或许会发现一些你不需要的空格跟在数据后面。就和下面的情况一样

22 / 40

BIRT使用指南

碰到类似的问题我们可以用下面的办法去掉空格。打开数据的表达式编辑器。用以下代码就可以消除空格。

function trim(s)

{

if (s!=null)

return e(/(^s*)|(s*$)/g, "");

return s;

}

trim(dataSetRow["dq"])

4.3 子报表设计

这里我们简单介绍下子报表的设计,以上面的例子做为子报表。

首先,我们需要将子报表的参数重新编辑,改为文本框的输入,否则母报表将不能把参数传入子报表中。

下面我们来设计一个简单的母报表,让它与子报表相连接。

23 / 40

BIRT使用指南

(1)、创建下面报表

(2)、选择【dq】,打开它的属性编辑器。选择超级链接。

在超级链接选项中

a) 选择追溯类型

b) 选择例子一中制作完成的报表

c) 选择例子一中的参数,在必需上打勾,然后为参数选择一个母表上的传入值。

d) 在显示目标报表中 我们可以选择新窗口。

e) 点ok后我们就完成了个子报表的设计了。

24 / 40

BIRT使用指南

4.4 图表设计

图表设计前部分和报表设计一样。首先创建数据源,数据集,报表参数。然后从左边将图表拖出,选择你需要创建的图表类型,并选择一些细节的东西。如下图:

25 / 40

BIRT使用指南

选择数据集,可以把数据预览中的列明直接拖入我们需要的地方。其中筛选器 可以对数据进一步的过滤。(右边的可选Y系列分组相当于group)

图表格式中的内容基本都为图表细节上的设计,包括图表的多种超级链接。根据自己需 26 / 40

BIRT使用指南

要设置好后,点击完成。这样一张图表就完成了。

4.5 图表细节

4.5.1 配色方案

选择相应的坐标轴,点击系列选项板。在弹出的选项板种选择配色的顺序,设置颜色透明度,渐变等。也可以增加、删除颜色。甚至可以把图片作为配色的方案。

27 / 40

BIRT使用指南

28 / 40

BIRT使用指南

效果图:

4.5.2 条形图

打开编辑图表界面,选择值(Y)系列。这里我们可以定义图形形状,图形边框颜色,是否显示图形数值,以及数值显示的格式,是否添加曲线拟合线,以及曲线拟合线的颜色,宽度等。

打开编辑图表界面,选择图表区域,这里我们可以定义图表标题,以及标题相对于图的位置。由于标题里面不可以引用数据集中的内容(目前还没找到合适办法),所以一般选择标题不可见,然后在图表外面单独放置一个标签框。也可以先做个grid 作个一列2行的上面的表格写标题,下面的表格把chart放到grid里面chart里的标题隐藏掉。

这里还有一点值得注意的是:

常规属性按钮,点击这个按钮可以定义图表墙纸和图表基低的颜色,以及条形图柱子之间的距离。

29 / 40

BIRT使用指南

打开编辑图表界面,选择图形,这里我们可以对图形背景颜色修改,如下:

效果图:

30 / 40

BIRT使用指南

4.5.3 饼图

饼图的大部分设置和条形图是一样的,下面只我们讲下饼图特有的一些设置。

分离扇面条件:设置饼图在什么条件下分离。我加了1>2 这个条件后效果看下面的图。

按距离:设置饼图分离后中间的空距大小

饼图比率:设置饼图看上去的视线效果。默认为1,个人觉得<1效果好点。

31 / 40

BIRT使用指南

4.5.4 折线图

打开编辑图表界面,选择值(Y)系列,这里我们修改折线的颜色,是否添加折线阴影,把折线修改为曲线,是否连接缺失值。当然结点的配色方案也是在这里设置。

选择Y轴,点击标记,在这我们可以设置警戒线。

32 / 40

BIRT使用指南

4.5.5 面积图

打开图表编辑器,选择值(Y)系列,这里可以把默认的直线面积图修改为曲线。

4.5.6 仪表盘

仪表盘有两种类型,第一种类型 一个表盘只能显示一个指针,第二种类型一个表盘可以显示多个指针。下面我们看下他们的不同效果。

分别选两种类型的仪表盘,他们选择数据界面一致(LX-事故类型,RS-事故人数,DQ-地区)

33 / 40

BIRT使用指南

展示效果如下

第一种:

第二种:

34 / 40

BIRT使用指南

4.6 项目应用

4.6.1 报表模板的制作

由于在报表制作的时候会使用到,各个报表都会有一些共性的东西,如果在每个报表制作的时进行单独的配置,必然会增加很多额外和重复的工作,报表设计器提供了报表模板的功能。可以新建立一个模板,将数据源配置,样式表等公用信息在模板中建立,然后将模板导入库中,其他人员在新建报表的过程中就可用直接使用模板的中的资源。

模板制作『kpi_template』的过程。

35 / 40

BIRT使用指南

36 / 40

BIRT使用指南

报表模板以kpi_plate文件方式存放在硬盘上,在各个开发环境下进行开发时只需要将模板导入到模板文件夹中,下次在新建报表是就可以直接使用模板了。

如需要讲模板导出,只需在上图上选中导出库

模板取消步骤如下:

37 / 40

BIRT使用指南

在菜单『窗口』――》『』进入下图:

找到模板文件位置,删除对应文件即可。以删除『kpi_template』模板为例,在对应目录下找到kpi_plate文件删除即时生效。

4.6.2 统一的数据源管理

在开发环境中使用的数据源和实际生产环境中使用的数据源配置肯定是不一样的,报表设计器在进行报表数据源管理时是将数据源的配置信息直接写入报表模板文件中,如果采用jdbc的数据配置方式,数据源的改动会导致所有报表都需要修改数据源的信息。BIRT提供了JNDI的数据源配置,在报表设计器中设计报表时候,如下图在JNDI URL中输入在应用服务器上发布报表时数据源的JNDI名称,这样处理后,在报表设计器中无论指向测试环境还是生产环境,在发布的时候报表引擎都会统一读取JNDI的配置信息,这样可以做到不用修改每个报表的数据库配置。

38 / 40

BIRT使用指南

5. 应用部署

在报表设计器中完成模板设计后,需要在应用服务器上进行统一展现,BIRT提供专门的报表解析引擎,可用集成到我们的应用系统中。

第一、需要在应用服务中需要完成报表数据源的配置,该数据源的JNDI名称要与报表设计中的JNDI名称保持一致。

第二、报表引擎集成进应用系统。

前面已经下载的Runtime包,解压开拷贝其中birt-runtime-2_1_1WebViewerExample的“webcontent”文件夹和“WEB-INF”文件夹到应用下,注意不要覆盖原应用,将其中的配置信息集成到现有应用的中。

在web应用根目录下建立一个reports目录,用于存放报表模板文件,在web应用访问报表可通过如下路径:ip:port/webapth/frameset?__report=报表文件路径,就可以访问报表了。

web应用支持2个动作:

 frameset,以frameset的形式显示报表。这个界面包含一些frame,如页面导航,报表主体在其中的一个frame中显示;使用形式:ip:port/webapth/frameset?__report=报表文件路径&参数=........

run,报表以一个单独的html页面或pdf显示,由于这种形式没有frmaeset,因此使用者必须自己提供相应的参数,如报表参数,页号等。使用形式:ip:port/webapth/run?__report=报表文件路径&参数=........

选项

__format

__isnull

说明

报表输出格式:html或pdf,缺省是html。对于frameset不起作用。

指明一个参数是null,常用于字符串类型。如果提供参 39 / 40

BIRT使用指南

数且值为空: - 对于日期和数字类型,BIRT会将它们当作null处理。 - 对于字符串,BIRT会将它作为空字符串。因此,为了说明某个字符串是null,通常写为:__isnull=参数。

__locale

__report

报表参数

本地化选项,缺省是jvm的locale。

报表设计文件路径。

报表参数参数值对,形式:参数名=参数值。对于frameset,直接在地址栏中输入参数名=参数值后回车,不会影响报表结果。虽然,此时选择"运行报表"时,弹出的参数值已经改变。

40 / 40


本文标签: 报表 数据 参数 设计 选择