Birt报表的开发使用手册

合集下载
相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Birt 使用说明
合适版本:2.1.3
目录
一、前言 1
二、相关软件 1
1.1、BIRT 2
1.2、EMF和GEF 3
三、Birt的安装和配置 3
四、使用说明 5
4.1、创建项目 5
4.2、创建第一个报表 7
4.2.1、创建一个空白报表 7
4.2.2、设置数据集参数 9
4.2.3、设计报表 14
4.3、报表中的参数 26
4.3.1、静态标量参数 27
4.3.2、动态标量参数 29
4.3.3、动态组合参数 31
五、应用系统的结合 31
六、BIRT的学习资料和缺点 45
6.1、学习资料 45
6.2、缺点 45
一、前言
公司的一个Java语言的B/S架构项目中需要实现大量的文字报表和图像报表的功能,以前使用CSS、JS和JfreeChart等技术,只能实现简单的报表,很难达到现在需求,于是我研究了几个开源免费的报表工具,通过网上的评价,发现了Birt有以下几点优点:
1、开发方便,Birt是Eclipse的一个插件可以很好的集成在Eclipse中,图形编辑框架下可以在几分钟之内做出一个报表。

2、可以很方便地在一个报表中混合展现概要数据和详细数据。

3、操作界面友好大方。

4、提供了强大灵活的样式定义,对于熟悉CSS的设计人员来说,应该可以设计出相当出色的报表样式。

5、集成在Eclipse中,不用再开启别报表开发工具窗口,对于习惯于Eclipse开发的程序员来说这点非常重要。

6、Birt的本地化做的很好,安装以后操作界面就是中文的(这点我在使用过程中没有充分体现,我使用了Birt的中文语言包)。

7、开源的报表产品,有源代码,可以进行深层的定制开发。

8、生成的报表完全是XML格式,扩展性好。

9、容易和应用系统结合。

10、最重要一点是开源免费的(我穷啊)。

根据这几个优点,我决定研究Birt,通过几天查找资料和自己的摸索,心中总算有些小的体会。

由于习惯与Eclipse3.2版本,所以我使用了2.1.3版本的Birt,现在最新版本已经是2.3以上版本了,就是这个原因网上很多资料都不是很适合这个版本,所以我走了很多弯路,希望看到此文档的人能比我少走弯路,这也是我写这个文档的原因之一。

二、相关软件
相关的软件分别为:
Java 1.4.2/1.5 JDK/JRE
Eclipse-SDK-3.2.0
Graphics Editor Framework (GEF 3.2) runtime
Eclipse Modeling Framework (EMF 2.2.3) runtime
Birt 2.1.3
Birt-runtime-2.1.3(发布时使用)
NLpack1-birt-report-designer-all-in-one-2_1_3.zip(Birt的中文插件)
下载地址为:
由于在使用过程中对Birt、GEF和EMF不是很理解其用处,所以我也找了一些资料(汗颜,我想大家都知道),下面我就分别简单的介绍一下,如果大家都知道那就跳过去吧。

2.1、BIRT
Birt(Business Intelligence Reporting Tools)是一个Eclipse-based开放源代码报表系统。

,是为 Web 应用程序开发的基于 Eclipse 的开源报表系统,特别之处在于它是以 Java 和 J2EE 为基础。

BIRT 有两个主要组件:基于Eclipse 的报表设计器,以及部署到应用服务器上的运行时组件。

Birt可以实现的报表格式有一下几种,列表、图表、混合报表、交叉表和信件文档,在测试过程中,我只实现了列表、图表和混合报表。

听说也可以实现交叉表和信件文档,我没有验证这里就不介绍了。

列表:列表是最简单的报表。

当列表变长时,你可以把相关数据增加到同一分组。

如果数据是数字类型的,你可以轻松的添加到“总数”、“平均”、或其他汇总中。

图表:当需要图表表现时,数字型数据比较好理解。

BIRT 也提供饼状、线状以及柱状图标等。

混合报表:很多报表需要联合以上所有的报表构成单一文档。

例如,一份客户声明会列出客户所需要的信息,为当前促进(promotions)提供文本,以及提供并行的出帐和入帐列表。

一份财政报表将包括声明、图表、表格,所有这些都将进行全方位的格式化,来匹配共有的配色方案。

一份报表包括BIRT包含四个部分:数据、数据转换、业务逻辑和表现形式。

数据:数据库、Web 服务、Java 对象,这些都可以作为 BIRT 报表源(Web 服务、Java 对象,我没有验证,不知道是否可行,大家都这样说,我也照搬了)。

BIRT 的 ODA(Open Data Access) 框架允许任何人构建新的 UI 以及运行时支持任何类型的表格式数据,单一报表可包含从任意多个数据源获取数据。

数据转换:报表通过对数据的分类、统计、过滤以及分组来适应用户需求。

当然,数据库能实现这些功能,当遇到普通文件和 Java 对象时 BIRT 必须以"simple" 数据源方式处理。

BIRT 允许复杂的操作,比如总合分组、整体共计的百分比,等等。

业务逻辑:真实世界的数据很少提供你理想的结构良好的报表。

许多报表要求用具体逻辑把原始数据转换成用户的有用信息。

如果该逻辑仅仅用于该报表,你可以用 BIRT 的 JavaScript 脚本支持。

如果你的程序中已包含这些逻辑,你可以调用已有的 Java 代码。

表现形式:一旦数据准备好了,你可以在很大的范围内选择表现形式。

表格、图表、文字等等都可以。

单一数据集可以有多种方式表现,而单一报表可以表现多个数据集。

2.2、EMF和GEF
Emf(Eclipse Modeling Framework)和Gef(Graphical Editor Framework)都是Eclipse的tools项目,在Eclipse中使用Emf对系统建模,如数据库模型、网络连接模型,甚至包括界面显示模型(JAVA的事件模型)。

Gef它是一套图像编辑框架,用于开发图形应用,如果你在Eclipse中使用过基于图形设计的应用,例如UML建模,可视化软件界面设计(VE)等,它们基本上都是基于GEF而开发出来的。

至于Emf和Gef的具体使用方法和实现效果,这里就不做重点介绍了,毕竟我们研究的主要对象是Birt。

Birt是基于Emf和Gef来实现的。

三、Birt的安装和配置
3.1、插件安装
Birt的安装和Eclipse的其他插件的安装一样,但是我建议使用Link的方式,这样结构上比较清晰,如果都放在Eclipse的plugins下,一是结构不清晰,二是如果以后不用拆分也很麻烦。

虽然大家都知道怎么安装Eclipse插件,但是我这里还要啰嗦一下,保持文档的完整性。

Eclipse的安装大家想必都会把,直接解压就可以了。

在Eclipse根目录下新建一个文件夹,我创建的为myplugins,把下载的GEF-runtime-3.2.zip、emf-sdo-runtime-2.2.3.zip、Birt-2.1.3.zip和NLpack1-birt-report-designer-all-in-one-2_1_3.zip解压在此文件夹下并重命名,每个文件下的下层目录都为eclipse,如图:
分别在Eclipse根目录下的links目录下创建对应的映射文件,文件格式为.link,我创建文件如图:
内容如图:
创建完成,重启Eclipse,重启前在Eclipse快捷方式的目标中加上-clean 强制加载插件,如图:
在下次使用Eclipse时记得去掉-clean,因为要检查插件,所有速度会很慢。

至此Brit就安装完成了,简单吧?安装成功后在视图中多了一块报表设计的视图,如图
3.2、all in one 方式
官网选择对应的版本,下载集成开发环境。

安装一键搞定。

万事俱备只欠东风,下一步我们就开始激动人心的使用之旅,期待了吧?
四、使用说明
这里用一个简单的例子来说明列表和图形报表的实现过程。

4.1、创建项目
创建一名为TestReports的Web项目,如图所示,文件==》新建==》项目
选择【Web Porject】双击
输入项目名称,点击【完成】
4.2、创建第一个报表
4.2.1、创建一个空白报表
Eclipse切换到【表报设计】窗口,在WebRoot下创建一个文件夹reports,选中reports右键==》新建==》报表
输入testReport.rptdesign的报表名称
点击【下一步】
选择空白报表模板,点击【完成】,一个空白的报表已经完成了。

4.2.2、设置数据集参数
1、创建数据源
选中新创建的空白报表,进入【数据资源管理器】
选中【数据源】右键==》新建数据源,进入新建数据源窗口
有很多类型的数据源,选择第二个JDBC数据源,输入数据源名称“OracleJDBC”点击【下一步】
由于数据源为oralce数据源,首先要选择oracle的驱动,点击【管理驱动程序】
点击【添加】,选择oralce数据库的驱动程序,添加后JAR文件一栏中现实了刚刚添加的驱动程序,添加后点击【确定】,返回【新建数据源】窗口,选择驱
动程序类、数据数据库URL、用户名和密码(JNDI URL为数据源),点击【测试链接】,如果输入的项全部正确会提示,链接成功。

相关文档
最新文档