birt教程之分组报表
- 格式:pdf
- 大小:735.04 KB
- 文档页数:6
Birt中的分页显示报表:方法如下:1、将鼠标停在表格上,选择明细数据行(Row Detail) 。
2、选择脚本(script)标签,在onPrepare方法中加入:count=0;在onCreate方法中加入:count++;if(count % 10==0){this.getStyle().pageBreakAfter="always";}然后放到服务器上运行,则实现分页显示。
Birt中报表参数的用法(一)Birt中有两种参数,一种是数据集参数,一种是报表参数。
数据集参数一般是用于select语句中的?所代表的参数的。
而报表参数一直则是整个报表的参数,定义它的目的一方面是和数据集参数绑定,一方面是在脚本中使用它。
例如:我想设计一个报表,通过参数传递一个数据库中的表名,显示相应表中的数据,所有的表的结构一样!做法如下:先定义数据源;然后定义数据集,查询选项中的语句写select * from [要传入的表名中的任意一个];然后定义一个报表参数table,设置一个默认值(默认表名);然后再数据集的脚本的beforeOpen方法中加入:this.queryText="select * from "+params["table"]; ;完成。
如何在Tomcat中配置使得能显示Birt Chart报表:今天看了一本关于Birt方面的书,提到了在Tomcat中成功部署Birt的方法。
我试了一下,果然可以,即可访问普通报表,又可访问chart报表,而且方法也比较简单。
现介绍如下:1、从网上下载birt-runtime-version.zip并解压(/birt/downloads/build.php?build=R-R1-2_1_3-200707051847)。
2、将解压后根目录中的WebViewerExample文件加复制到Tomcat根目录下的webapps下面,并更名为birt_viewer2.2(因为我下的是2.2版本)3、复制第三方软件:iText.jar(复制到birt_viewer2.2\WEB-INF\platform\plugins\com.lowagie.itext_1.5.2.v20070626\lib 下)axis.jar axis-ant.jarcommons-discovery-0.2.jar jaxrpc.jar saaj.jar wsdl4j-1.5.1.jar(复制到birt_viewer2.2\WEB-INF\lib)prototype.js(复制到birt_viewer2.2\webcontent\birt\ajax\lib下)birt2.1,2.2版本下载下来后就包含了以上所有第三方软件,你只需到相应目录下确认一下,有的话就不用管了!若没有的话就复制到相应目录下即可。
BIRT报表生成步骤1.新建Report ProjectFile---->new--->Business Intelligence and Reporting Tools--->Report Project点击next按钮,输入Project name,点击Finish按钮。
这样就成功完成Report Project 的创建!本文档以myReport项目为实例。
2.新建Report Project中***.rptdesign的报表。
File---->new--->Report 选中您的报表所要放置的项目,输入File name点击Finish按钮即可!这里把新建的myReport.rptdesign放入myReport项目中。
如下图1.1图1.13.数据库连接3.1双击你要设计的***.rptdesign,这里(以下)我们以myReport.rptdesign为实例,看下图1.2图1.23.2 选中工具左侧Data Expolr下的Data Sources 右击---.>New Data Source具体步骤如下图1.3(选中JDBC Data Source ,Data Source Name自己可以定义,这里我用默认的Data Source。
点击next)图1.3填入相应的数据配置信息如下图1.4图1.4值得注意的是若是第一次使用需要添加ojdbc14.jar包,点击如图1.4中的Manage Drivers 添加jar包。
如下图1.5图1.53.3 选中工具左侧Data Expolr下的Data Sets右击---.>New Data Set如下图1.6,选择您的Data Set需要绑定的Data Source(这里我选择上步创建的Data Source),选择Data Set Type(这里我选择的是:SQL Select Query),Data Set Name 可以自己定义,这里我用默认的Data Set。
BIRT 报告传统报告允许允许企业以图形形式显示其他人可读的数据。
BIRT 有助于自动化在部署好的J2EE 应用程序中创建报告的过程。
在本教程中,将学习如何创建一个将使用您的应用程序部署的报告。
示例应用程序当客户来到银行进行取款或汇款时,该事务通常由银行职员执行。
本教程的示例应用程序是一个用户界面(UI),该界面将接收事务细节信息,并将它们存储到一个Derby 数据库中。
记录的事务细节信息包括事务日期、事务标题、职员编号、事务类型、取款或汇款数量,等等。
分析数据当示例应用程序获取信息并将它们存储到数据库中时,数据处于其最原始的形式,没有能以某种有意义的方式进行查看的可靠组织形式。
您开发的BIRT 将用于分析此数据。
所介绍的每种类型的报告都允许您查看并随后分析数据库中包含的数据。
将BIRT 对象嵌如应用程序一旦已经完成BIRT 报告和示例应用程序,就可以将BIRT 对象嵌入应用程序中。
这将使您——银行管理人员——乐于查看发生在银行中的事务的趋势。
您将获得一些知识,这些知识使您作出向更好趋势更改的决定,并提高银行的生产效率和性能。
Derby:设置在这一节中,将创建并初始化具有BIRT 中要使用的测试数据的Derby 数据库。
您将通过Geronimo 的网络服务器使用Geronimo 中的内置Derby 数据库。
在Geronimo 上部署应用程序时,将使用此数据库,因此使用内置数据库是有一定道理的。
设置用于Derby 的Geronimo因为将在用于BIRT 的Geronimo 中使用内置Derby 数据库,所以需要正确的驱动程序。
有一些 .jars 需要添加到Geronimo 中:IBM DB2 JDBC Universal Drivers。
现在您应该已拥有这两个文件(请参阅前提条件)。
解压缩从IBM 获得的 .zip 文件。
从lib 目录中获得两个 .jar 文件:db2jcc.jar 和db2jar_license_c.jar,并将它们放置在Geronimo 安装的<geronimo-install-dir>/repository/org.apache.derby/jars 目录中。
Birt数据报表开发手册1. 创建模板双击BIRT应用程序以启动Birt报表设计环境,首次启动未加载任何报表开发资源。
主界面如下:根据报表设计的需要,Birt本身提供了一些常规的模板:当然,也可以根据实际需要,添加一些使用频率比较高的模板。
下面将以两张图形,一张列表,且图形在上横向排列的模板为例,创建新模板。
点击文件菜单中的新建,选择新建模板,根据实际情况修改模板名称和存储路径:为此模板添加一些附加属性,如该模板的描述信息和模板布局的预览图像等。
点击完成,开始编辑此模板的布局。
在组件按钮区域依次选取:一个标签,用于放置报表的标题,双击输入标题文本。
也可根据需要动态的文本。
一个网格:用于放置水平的两张图形,因此网格设置为2列1行。
可根据实际情况调整。
一张表:用于放置数据报表,明细数据列设置为8列1行。
可根据实际情况调整。
关于组件的使用,将在后面的章节中具体说明。
用鼠标右击网格中的其中一个空白处,依次选择插入,图表。
在弹出的对话框中选取需要的图形。
同样的方法处理另外网格的另外一个。
有关图形的制作,将在图形报表开发手册中详细说明。
设置每种组件的属性,在OutLine窗口中选中已经拖放的组件,根据需要对其相应的属性进行调整。
如字体大小,颜色,对齐方式,样式等设置完成后,模板样式如下:保存模板的配置信息,以便在以后的报表开发中可以直接读取该模板。
2. 新建共享资源库在Birt的资源管理器中添加一些共享资源,如共享库:在弹出的对话框中输入Library库文件的保存路径和名称:确定后,Library库的创建完成。
如果操作无误,可以在对应的目录下浏览到新建的库。
3. 新建数据源在共享库中新建一个制作报表需要的数据库连接,以Oracle9i数据库连接为例,需要先配置数据驱动(数据库的驱动程序配置方法已经在报表设计器的配置手册文档中体现)。
然后在新建的库中,用鼠标右击数据源,选择新建数据源:在弹出的对话框中选择对应数据源类型,并为该数据源命名:选择正确的数据库驱动和URL后,就可以进行数据库的连接测试:可以根据报表需要,创建一个或者多个数据源的配置:数据源创建完成后,可以通过选择选择资源管理器中共享资源,Library库下新建的数据源,右击鼠标选择添加到报表,将新建数据源添加值报表中供使用。
Birt使用技巧eclipseExcel20090512birt分组小计和增加序列号2009-05-12 18:23一、分组小计:Palette下面 Quick Tools里面有个Aggregation把这个拖到表里面这个是计算用的,你可以选择COUNT SUMAggregate On Table 或者GroupGroup里面可以拖出来看到Group名二、如何增加序号1. 点击报表的空白处,然后到script页,选择initialize,输入var num=02. 回到报表设计页,在组上加入一个data,在这个data的expression中,输入:num++; num3. 保存报表即可。
1. 线图图例移动方法线图图例默认的样式是在图的右边,要将其移动到图的下方,使用的操作如下: 在birt视图下,双击图片选择FormatChart ,点击左侧legend, 点击layout按钮,出现参数选择框:Orientation选择Vertical;Position 选择Below ; right.◊stretch 选择Horizontal ; Direction 选择 Left2. 线图取消数字显示的方法点击左侧Series 下的Value (Y) series 取消 show series Labels复选框◊Format chart3. 线图节点,鼠标滑过,显示提示的设置Values文本框中的 value series name◊Format chart 放到value date 上方, 每条线都设置一下.4. 双坐标Y轴时节点,节点形状的改变series◊Format chart 点击markers 按钮◊ value(Y) series ◊5. 百分比显示的数据类型设置birt中如果要显示百分比,则在script dateSource中必须设置相关的列的数据类型为Float ,不能为String ,否则不显示。
解决Birt等报表工具制作报表的几个难题在本文中我们再继续讨论几个类似的制作难题,并把说明集中在如何编写集算器 SPL 脚本上,不再赘述如何在 Birt 中引入 SPL 的步骤了。
1. 组内跨行计算组内跨行计算是指在计算一行中某个计算列的值时,需要引用到组内其它行的数据来进行计算。
比如下面这个例子:库表 sample 有三个字段,其中 id 是分组字段。
需要设计一张分组表,使用id 分组,明细字段是v1,v2 以及计算列crossline, 其中crossline 的算法是本条记录 v1、v2 之和加上本组上一条记录的 v1、v2 之和。
示例源数据如下:最后要展现的报表结果如下图所示:编写集算器 SPL 代码如下:A1 连接数据库A2 查询数据库,同时多产生一列常数备用。
A3 按id 分组,并在每组数据中修改计算列crossline,最后合并,其中v1[-1]、v2[-1] 是集算器特有的定位上一行记录中字段的写法。
A4 关闭数据库A5 将 A2 中的计算结果数据集返回给报表工具2. 跨库数据源制作报表的数据往往来自于多种数据源,比如不同的物理数据库、文本文件、Excel 文件等,这些数据在报表中往往还需要相互关联进行运算。
报表工具本身能实现从多数据源取数,但进行关联运算会有一定的困难,或者运算性能非常差。
而由开发者自己编程去做关联运算,工作量一般又会非常大。
而集算器 SPL 恰恰能在这一点帮上大忙。
下面这个例子中,订单表 orders 和订单明细表 orderDetail 数据分别来自两个不同的数据库,二者之间要做join 运算。
两表数据如下:最后想要展现的报表结果如下:编写集算器 SPL 代码如下:A1 连接数据库 1A2 连接数据库 2A3 查询订单表数据A4 查询订单明细表数据A5A6 关闭数据库连接A7 以 A3 的 orderID 和 A4 的 orderID 为主键进行 left join,连接后的结果集有两个字段,第一个字段是 A3 的记录,第二个字段是A4 的记录。
Birt 使用说明合适版本:2.1.3目录一、前言 1二、相关软件 11.1、BIRT 21.2、EMF和GEF 3三、Birt的安装和配置 3四、使用说明 54.1、创建项目 54.2、创建第一个报表 74.2.1、创建一个空白报表 74.2.2、设置数据集参数 94.2.3、设计报表 144.3、报表中的参数 264.3.1、静态标量参数 274.3.2、动态标量参数 294.3.3、动态组合参数 31五、应用系统的结合 31六、BIRT的学习资料和缺点 456.1、学习资料 456.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以上版本了,就是这个原因网上很多资料都不是很适合这个版本,所以我走了很多弯路,希望看到此文档的人能比我少走弯路,这也是我写这个文档的原因之一。
-简介BIRT是一个Eclipse-based开放源代码报表系统。
它主要是用在基于Java与J2EE的Web 应用程序上。
BIRT主要由两部分组成:一个是基于Eclipse的报表设计和一个可以加到你应用服务的运行期组件。
BIRT同时也提供一个图形报表制作引擎。
URL: /birt/前言这个指南将引导你设计一个简单的报表,令你对BIRT报表系统有个感性的认识,如果想进一步了解BIRT的使用可以参考 BIRT在Eclipse中自带的帮助,Select Help→Help Contents from the Eclipse menu and then click on the BIRT Developer Guide.如图个人体验操作界面友好大方,小图标都很漂亮:);功能并不逊色与商业报表工具;∙CSS提供了强大灵活的样式定义,对于属性CSS的设计人员来说,应该可以设计出相当出色的报表样式;∙集成在Eclipse中,不用再开启别报表开发工具窗口;∙BIRE的本地化做的很好,安装以后操作界面就是中文的;∙开源的报表产品,降低开发成本,一些报表开发工具除了价格昂贵以外,还有用户限制;BIRT 安装指南安装方式一下载一个BIRT All-in-one版本的 Eclipse,包含了运行BIRT系统所需的组件,最方便了(如果是将报表工具培训一下让非开发人员参与定制话可以这样做:))URL:birt-report-designer-all-in-one-2_1_1.zip安装方式二假设你已经知道如何安装Eclispe插件(建议采用Link的方式安装插件,不至于全部一股脑的将各种插件都解压到Eclipse的目录中去)运行BIRT报表系统需要以下软件或插件∙Java 1.4.2/1.5 JDK/JRE∙Eclipse-SDK-3.1.2-win32及以上版本∙Graphics Editor Framework (GEF) runtime∙Eclipse Modeling Framework (EMF) runtime∙BIRT∙iText 1.3 - 复制 itext-1.3.jar 文件到plugins/org.eclipse.birt.report.engine.emitter.pdf_version/lib 目录.∙prototype.js v1.4.0 - 复制prototype.js 文件到plugins/org.eclipse.birt.report.viewer_version/birt/ajax/lib 目录其他∙BIRT提供的一个Flash格式的安装演示,也可以照着这个演示来安装:)∙BIRT 网站提供的安装指南∙运行报表(tomcat/weblogic/jboss)使用入门1.环境●报表设计器:可以到/birt/downloads/下载最新版本,当前的最新版是birt-rcp-report-designer-2_1_1。
图1-1 BIRT设计器图1-2 BIRT运行时环境说明图1-3 BIRT报表引擎图1-4 BIRT运行时环境BIRT 设计器和设计引擎可以设计以下的报表:列表-列表是最简单的报表。
当列表变长时,你可以把相关数据增加到同一分组(基于客户的订单分组,基于供应商的产品分组),如果数据是数字类型的,你可以轻松的添加到“总数”、“平均”、或其他汇总中。
列表的产生和显示都可以定制,进行过滤,突出显示,排序,分组同样可以过滤,突出显示和排序。
图表-图表能够帮助数字型的表格形象化的理解。
BIRT 提供饼状、线状以及柱状图标等。
交叉表-交叉表(也叫做十字表格或矩阵)用两种维度展示数据:sales per quarter or hits per web page。
信函和文档-通知、信件、以及其他文本文档都很容易通过BIRT 方便建立。
文档包括正文、格式、列表、图表等。
混合报表-很多报表需要联合以上所有的报表构成单一文档。
例如,一份客户声明会列出客户所需要的信息,为当前促销(promotions)提供文本,以及提供并行的出帐和入帐列表。
一份财务报表将包括声明、图表、表格,所有这些都可以进行全方位的格式化,来匹配共有的配色方案。
Birt有以下几点优点:1、开发方便,BIRT是Eclipse的一个插件可以很好的集成在Eclipse中,图形编辑框架下可以在几分钟之内做出一个报表,操作界面友好大方,MyEclipse近期的版本(8.0以上)本身包含BIRT特性。
2、可以很方便地在一个报表中混合展现概要数据和详细数据。
3、提供了强大灵活的样式定义,对于熟悉CSS的设计人员来说,应该可以设计出相当出色的报表样式。
4、Birt提供很好的国际化支持,支持中文本地化。
图1-5 birt-report-designer-all-in-one下载官网安装方式二:单独下载birt-report-designer所需要的eclipse平台和插件。
1 BIRT报表开发环境准备 (2)1.1 BIRT报表开发准备 (2)1.2 建立Web Project (2)1.3 配置交叉报表数据源 (5)1.3.1 建立公共资源的文件夹 (5)1.3.2 建立公共资源Library (6)2 动态分组交叉报表 (10)2.1 建立报表文件夹 (10)2.2 建立报表文件 (11)2.3 复用报表数据源 (12)2.4 配置交叉报表结果集 (13)2.5 配置交叉报表分组字段 (16)2.5.1 新建Data Cuber (16)2.5.2 新建Groups (17)2.6 配置交叉报表求和字段 (18)2.7 交叉报表表样制作 (19)2.7.1 新建Cross Tab (19)2.7.2 完成报表表样制作 (20)2.8 报表分页实现 (20)2.9 预览交叉报表 (20)3 部署交叉报表 (21)4 运行交叉报表 (21)1BIRT报表开发环境准备1.1 BIRT报表开发准备(1)、Ecplise:这里我使用的是Eclipse Platform Version: 3.6.2。
(2)、BIRT插件:可以通过Ecplise中的Install New Software 添加Birt插件。
插件地址:(3)、Tomcat:这里我使用的是apache-tomcat-6.0.161.2 建立Web Project(1)、新建Web Project为了体现BIRT与实际应用项目相结合的特点,首先建立一个Web Project,工程命名为myReport。
然后单击“Next”,出现下图:在Project Name中输入“myReport”,工程构建后的class文件输入目录为WebContent/WEB-INF/classes下。
如下图:然后单击“Next”,出现下图,这里我将“Generate web.xml Deployment descriptor”选项勾选上,让Ecplise来创建web.xml。
图表组合型报表开发指南-----伊朗演示1、新建报表运行Birt报表开发工具后命名,选择保存的目录,然后Finish。
2、新建数据源开发工具的菜单栏,打开Outline窗口:如下:右击数据源,选择新建:如上图选择,数据源名称自定,Next:从“驱动程序类”的下拉列表中选择对应数据库的的驱动,若没有需要的,则选择“Manage Drivers”按钮:将对应数据库的驱动程序添加进来,回到上一步选择驱动程序类:输入数据库连接信息:URL::jdbc:oracle:thin:@10.40.200.69:1521:osstestUser:bi71Password:smart可测试:右击“数据集”,选择“新建数据集”上面选择前面新建的数据源Next:主数据集sql:select B.PROVINCE_NAME PROVINCE,C.PACKAGE_TYPE_NAME PACK,COUNT(1) TOTAL_SUBS,SUM(CASEWHEN A.STATE = 0 THEN1ELSEEND) AS CHRUN_SUBS,SUM(CASEWHEN A.STATE = 1 THEN1ELSEEND) AS NEW_SUBS,SUM(CASEWHEN A.STATE = 1 THEN1ELSEEND) - SUM(CASEWHEN A.STATE = 0 THEN 1ELSEEND) AS INCREASE_SUBS, SUM(CASEWHEN A.IN_STATE = 1 THEN1ELSEEND) AS SILENCE_SUBS,SUM(CASEWHEN A.IN_STATE = 2 THEN1ELSEEND) AS USAGE_SUBS,SUM(D.TARGET_VALUE) AS TARGET_SUBS, (SUM(CASEWHEN A.STATE = 1 THEN1ELSEEND) - SUM(CASEWHEN A.STATE = 0 THEN1ELSEEND)) / COUNT(1) AS INCREASE_RATEfrom f_width_call A, D_PROVINCE B, D_PACKAGE_TYPE C, TMP_SUBS_TARGET DWHERE A.Province = B.PROVINCE_IDAND A.Package_Type = C.PACKAGE_TYPE_IDAND A.PROVINCE = D.PROVINCE_IDAND A.PACKAGE_TYPE = D.PACK_TYPE_IDAND (substr(A.PRD_ID,1,6)=? or ? is null )AND (A.Province = ? or ? is null )GROUP BY B.PROVINCE_NAME, C.PACKAGE_TYPE_NAME3.2、从数据集(对应Month的查询条件)同样新建数据集:Next:Month条件的sql:select distinctto_char(to_date(D_TIME_PERIOD.PRD_ID,'yyyy-MM-dd'),'yyyyMM') AS Y_M from D_TIME_PERIOD3.2、从数据集(对应Province的查询条件)同样新建数据集:Next:Province条件的sql:select prov.PROVINCE_ID ,prov.PROVINCE_NAMEfrom D_PROVINCE prov4、创建报表参数报表参数,即为查询条件的输入参数。
Birt报表使用指南1Birt的安装方法把birt整合到了M yeclips e6.5中,(ec lips e的官方网站上提供有一个bi rt-rep ort-design er-all-in-o ne-2_2_2.zip,你直接解压缩这个就可以了,就免去了birt与My ec lipse6.5的整合)。
如果要把bi rt安装到Myecl ipse6.5中,要注意一些事情1.1ecl ip se的版本就是说你的eclipse版本要和适当的bir t版本配合,当前bi rt的最新稳定版是b irt2.3。
如果使用的是ec lips e3.3版本,你应该用bir t-repo rt-framewo rk-2_2_2.zi p,如果使用的是eclipse3.4,你应该用birt-report-f ra mework-2_3_0.zip版本不一致会出一些问题。
1.2在Myec lipse6.5中装birt。
My Eclipse6.5自带的是ecli pse3.3,所以只能下载birt-re port-fra me work-2_2_2.zip (下载地址:http://do wnlo ad.ecl ips /b ir t/downloa ds/index2.2.2.php)而birt-repo rt-frame wo rk-2_3_0.z ip是针对e clip se3.4的。
把下载下来的birt-r epo rt-fram ew ork-2_2_2.zip包解压,解压后的feature s文件夹下的所有文件拷贝到MyEcl ip se6.5安装目录下的..\my ecli pse\e clips e\fe atures 下,解压后的plug in s文件夹下的所有文件拷贝到..\my eclipse\ec lipse\plug ins下。
开源报表BlRT开发手册北京宇信易诚科技有限公司2007-08-23目录1Birt 介绍 (5)U 报表介绍 (5)1.2基本概念 (5)1・3 丰富的报表 (5)1.4BIRT报表由四部分组成 (6)1.5报表设计器 (6)2Birt插件安装 (8)2.1插件版本说明 (8)12插件安装 (9)2.2.1完全安装 (9)2.2.2更新安装: (9)2.2.3分步安装 (9)3Birt报表开发实战 (13)3.1创建报表 (13)3.1.1创建报表工程 (13)3.1.2创建报表 (14)3.2数据源配置 (16)3.3创建数据集 (19)3.4网格报表 (20)3.4.1创建数据源 (21)3.4.2创建数据集 (21)343 对报表进行布局 (21)3.4.4格式化与预览 (23)3.5分组报表 (24)3.5.1创建数据源 (25)3.5.2构建数据集 (25)3.5.3对报表进行布局 (25)3.5.4设定分组数据 (25)3.5.5格式化报表 (27)3.6交叉报表 (28)3.6.1构建数据源 (28)362构建数据集 (28)363在报表中加入交叉报表 (28)3.6.4数据准备 (29)3.6.5向交叉表插入数据 (32)3.6.6加入汇总 (33)3.6.7格式化报表 (34)3.7嵌套报表 (35)3.7.1构建数据源 (36)3.7.2构建数据集 (36)3.7.3布局嵌套报表 (38)3.7.4将Table绑左数据集 (39)3.7.5设定主表数据 (39)3.7.6设定子表数据 (40)3.8交互报表 (42)3.83 加入响应参数 (45)384 布局扌艮表 (47)3.8.5插入报表数据 (48)3.8.6格式化与预览 (49)3.9报表钻取 (51)3.9.1设泄响应参数 (51)3.9.2预览结果 (54)3.10图表报表 (55)3」0」为报表插入图表 (55)3」0.2 设定图表属性 (55)3」0.3 图表预览 (60)3.11多层交叉报表 (61)3」1」构建数据源 (61)3.11.2构建数据集 (61)3.11.3在报表中加入交叉报表 (62)3.11.4数据准备 (63)3」1.5 向交叉表插入数据 (63)3」1.6 格式化与预览 (64)3.12多层交叉汇总报表 (65)3」2」加入汇总 (65)3.12.2格式化与预览 (66)3.13 其他 (67)3.61 格式化报表 (67)表头与标题 (67)3.13J.2 设泄单元格格式 (68)3.13J.3 样式套用 (68)3.61.4数据元素格式化 (69)3.13.2分页、页眉与页脚 (70)3.13.2」设置分页显示 (70)3」3.2.2 设置分页打印 (70)3.13.2.3 设冒页眉页脚 (71)3.13.3隔行高亮度显示 (73)3.13.4对报告进行布局 (76)3.13.4」添加删除行或列 (76)3」3.4.2 指定行髙或列宽 (76)3」3.4.3 添加图像 (77)3.13.5数据绑泄 (79)4Birt 报表script (82)4・1 avascript 脚本编写 (82)4.1.1隔行髙亮度显示 (82)4.2java脚本编写 (88)421 创建java 类 (88)4.2.2java类与报表交互 (92)4.3BIRT脚本参考 (98)5Birt报表部署 (99)5・ 1 直接使用运行birt-nmtime-2_2_0 包中的WebViewerExamplc (99)5.2集成到已有web应用 (100)5.3数据库驱动位置 (107)5.4报表url说明 (107)5. 5 web, xml 配置 (113)5. 6 viewer・ properties 说明 (115)5.7BIRT 在jsp 中tag 使用 (116)5.8关于BIRT编码 (123)1Birt介绍1.1报表介绍BIRT一一商业智能和报表工具。
Birt图形报表开发手册1. 图表制作总体步骤Birt提供了丰富的图表元素,图表是数据或数据集之间关系的图形表示法。
图表采用易于理解的格式显示复杂数据。
完全可以将图表作为报告使用,也可以将报告与其他报告元素组合以增强或突出显示相关信息。
图表的配置一般包含如下步骤:a)准备数据源与数据报表的数据源集数据集准备一样,大部分多维的图表的制作也需要依赖于多维数据集。
如需要使用数据集,请参考《Birt数据报表开发手册》的数据源和数据集的创建与使用部分。
b)选择图表类型选择组件板,然后将该组件板中的图表元素拖到报告中,或者在报表正文的放置图表位置右击鼠标,选择插入图表:弹出图表配置对话框,首先根据报表需求选择图表类型和子类:设置图表的指标维度个数,已经图表的输出类型格式等,从而确定图表的大体样式。
c)关联展示数据集类型选择完成后,针对图表的特点和属性进行数据的绑定关联:首先选择图表展现的数据来源,也就是报表中已经存在的数据集。
根据图表的需要设置系列,维度指标,是否分组等。
可以使用不同的方法来提供图表中的数据表达式:指定要使用的数据的最简单方法是将“数据预览”中的列拖拽至图表的元素中,或通过选中数据集的字段右击鼠标,选择相应的元素加入也可以输入表达式或使用表达式构建器来创建表达式。
在设计图表时,预览窗口将向您指示您的进度。
例如,如果更改线图的X,Y轴的显示信息,分组信息等,则预览窗口将反映您所作的更改。
d)设置图表格式数据绑定后,就可以根据需求和图表本身的属性,对图表的展现格式进行设置,设置完成后,就可在工具和页面中预览。
柱线图预览结果:图表数据的方式通常与在 Birt 中的其他数据展现的方式不同。
一个重要的差别是为图表创建的数据集,图表不会聚集数据。
要在图表中使用总计,必须创建返回总计信息的数据集。
下面我们将按照不同的图表来全量了解图表的制作。
2. 柱状图系列在Birt的图表设置中,柱状图,折线图,面积图,散点图,气泡图,股票图,管,锥,棱形图,差异图等趋势展现类图表,只是展现图表的形状和元素,样式有差异。
birt教程之分组报表
分组报表
在网格报表的基础上,我们可能还需要对数据进行进一步的处理。
比如,将同类数据显示在一个组中,并对这个组进行统计运算。
如下图所示,对数据按省份进行分组,并将同一省份数据放在一个组内进行汇总统计。
下面我们将上例的网格报表进行一下小的改进,建立一个按用户类型进行分组的报表。
创建数据源
方法同上例。
构建数据集
本例所用的数据集与上例完全相同,输入与上例3.4.2相同的sql语句建立数据集即可。
对报表进行布局
1.做好上面的工作之后,先在布局编辑器中建立一个1列2行的Grid,2.同上例一样,从选用板“Palette”中拖拽一个5列1行的Table至第二行的网格中,
3.从Data Explorer视图中的“Data Sets”项中将TYPENAME拖拽至此Table 的第一个详细信息行中,然后依次将,CUSTOMER_ID,CUSTOMER_NAME,FAX,TEL拖拽入详细信息行内。
这里不再赘述。
设定分组数据
1.选中Table,在右下方的Table的属性编辑器“Property Editor-Table”中,选择Group,进入如下分组设定界面:
2.点击“Add”按钮进行添加分组:
从“Group on”的下拉框选择TYPENAME,其他默认,(可根据需要对“Name”项进行命名),然后选择“OK”。
完成分组设定。
3.这时Table中多出一行Group行,如下图:
将详细信息栏中的TYPENAME(即Table中第三行第一列数据项,如上图标记下方的数据项)删除。
这样,一个按照用户类型建立的分组报表就建立起来了。
格式化报表
进行报表格式化处理后,预览如下效果:
同为比较常用的报表工具,FineReport对分组报表的解决方案和实现方法与BIRT有所不同,具体实现思路和步骤如下,供BIRT使用者借鉴:
1.描述
分组报表就是将报表中的数据按组显示,即将数据列中相同项合并为一组显示,如下图最简单的分组报表:
2.制作步骤
2.1新建报表,添加数据集
新建工作簿,添加数据集,SQL语句为:SELECT*FROM[销量]。
2.2拖拽数据列
将数据列拖拽入相应单元格(默认的就是分组显示,因此不需要做其他设置),如下图所示:
设置销量数据列为汇总-求和,其余默认。
预览便可看到上方的分组效果了。
已完成的模板,可参见%FR_HOME%\WebReport\WEB-INF\reportlets\doc\Primary\Grou pReport\Group.cpt
模板效果在线查看请点击Group.cpt
更多分组报表的应用请查看分组报表
3.总结
由该例子可以看出:
拖拽的数据列默认就是分组显示的,会将相同项合并起来;
数据列在同一行时,会产生默认的父格关系:同行的单元格会以其左侧相邻的扩展格为父格,就如这边销售员默认父格为地区,销量默认父格为销售员;
数据列在同一行且来自于同一数据集时,子格会自动将父格作为过滤条件,形成一种附属关系,就如这边销售员会自动罗列在所属地区下。