精品birt开发文档

上传人:精****库 文档编号:133010778 上传时间:2020-05-23 格式:DOC 页数:92 大小:1.42MB
返回 下载 相关 举报
精品birt开发文档_第1页
第1页 / 共92页
精品birt开发文档_第2页
第2页 / 共92页
精品birt开发文档_第3页
第3页 / 共92页
精品birt开发文档_第4页
第4页 / 共92页
精品birt开发文档_第5页
第5页 / 共92页
点击查看更多>>
资源描述

《精品birt开发文档》由会员分享,可在线阅读,更多相关《精品birt开发文档(92页珍藏版)》请在金锄头文库上搜索。

1、Birt 开发文档目录一前言2二开发环境安装3三报表分类31清单表42固定格子表43交叉表44Chart图表4四报表开发51清单表62固定格子表173交叉表184Chart图表22五报表的参数使用261Combo box262Radio button273List27六报表的级联参数的使用29七模板及自定义js321样式模板332自定义js文件35八报表中script的使用381在script中对sql的控制382 报表中script的控制42(1).隔行换色42(2).鼠标高亮44(3).birt所提供常用的script方法46九项目开发中整合birt511Struts2整合问题522实现报

2、表的数据权限的控制58十Birt的扩展611Birt的页面样式62(1).修改combobox页面63(2).修改textbox页面70(3).按钮样式的修改752Birt国际化75十一Birt的使用小技巧771报表的返回792报表的参数默认值80(1).日报返回系统前一天的8位日期80(2).月报返回系统上个月末8位日期823报表web.xml的配置844报表参数的页面开发85(1).参数的传递方式85(2).birt标签的使用87.view标签87.report标签89.param标签90.parameterPage标签90.paramDef标签92一 前言BIRT (Business I

3、ntelligence and Reporting Tools), 是为 Web 应用程序开发的基于 Eclipse 的开源报表系统,特别之处在于它是以 Java 和 J2EE 为基础。BIRT 有两个主要组件:基于 Eclipse 的报表设计器,以及部署到应用服务器上的运行时组件。 Birt有以下几点优点:1、开发方便,Birt是Eclipse的一个插件可以很好的集成在Eclipse中,图形编辑框架下可以在几分钟之内做出一个报表。2、可以很方便地在一个报表中混合展现概要数据和详细数据。3、操作界面友好大方。4、提供了强大灵活的样式定义,对于熟悉CSS的设计人员来说,应该可以设计出相当出色的报

4、表样式。5、集成在Eclipse中,不用再开启别报表开发工具窗口,对于习惯于Eclipse开发的程序员来说这点非常重要。6、Birt的本地化做的很好,安装以后操作界面就是中文的(这点我在使用过程中没有充分体现,我使用了Birt的中文语言包)。7、开源的报表产品,有源代码,可以进行深层的定制开发。8、生成的报表完全是XML格式,扩展性好。9、容易和应用系统结合。10、最重要一点是开源免费的。二 开发环境安装目前最新的birt版本是2.6,为了方便使用可以直接下载安装Myeclipse9.0,已经集成好的birt插件,安装好之后可以直接进行开发使用,比较适合程序员的开发习惯,但需注意的是birt2

5、.6需要有JDK1.6的支持。另一种开发birt的环境birt-report-designer-all-in-one是官网所提供的类似于eclipse操作界面的环境,还提供了一个birt运行的一个平台Birt-runtime类似于tomcat服务器一样,同样的也可以在tomcat服务器上运行。三 报表分类所有报表大致分为四类:清单表、固定格子表、交叉表、chart图表1.清单表 也就是最为普遍和简单的报表形式,无需特殊的处理,只需要根据sql语句直接进行展现,数据会自动的向下延展。2.固定格子表 所谓固定格子表其实就是一个格子对应一个数据,而对于表的其他的位置可以根据业务需要自由的定义表头,虽

6、然灵活性非常好,但是对于字段数据过多的情况出表的效率还是有点低,不方便维护。3.交叉表 交叉表和清单表一样出现的频率较高,交叉表的好处在于后台的灵活度可以提高,因为在前台进行展示的时候,其实只是看到了一个字段而已,但是它会根据后台的数据可以实现自动的向右进行延展灵活程度大大的提高了,对于补录数据也提供了方便。4.chart图表 所谓chart就是一种图表技术,它可以让用户更为直观的通过图表俩分析数据的起伏变化,相比于表格来说更容易快速的得到结果,如果图表旁边再配上数据表分析起来就更为了直观了。而birt所提供的图表支持也是较为丰富,例如:饼图、线性图、折线图、柱状图等近十余种图表技术,给用户提

7、供了大量的空间进行开发。四 报表开发对于在团队中进行项目的开发时候为了考虑后期的维护和开发的完整性则需要引入公共的模板,主要介绍Library公共数据源以及样式模板和自定义javascript文件的导入:首先定义公共数据源,在myeclipse中新建一个报表工程,new - report web project, 建好工程之后可以看到report-viewer这个目录放置了birt运行时用户能够看到所有的jsp页面以及一些css样式和一些ajax相关的js文件等,如有需要可以根据个人兴趣自行修改样式(具体的修改会在后面做介绍),reports目录这个里面就是你所制作的报表了,其他的目录和web

8、工程的目录是一样的,至于lib目录是个人建立的目录,里面放的是library的公共类库,用户可以在这个目录下新建一个library文件new - library,建立好后双击打开,这里需要打开一个outline的面板window - show view里面找到此面板打开(左边为工程目录,右边为outline中library的目录),如图: 接下来就可以在Data Sources中建立链接数据库的数据源,点击鼠标右键新建New Data Sources,弹出的窗口选择第一个JDBC数据源设置好名字点击下一步,这里有Driver和jndi两种方式,通常会选择第一个进行数据库的配置,当然如果你已经在

9、DB brower中已经配置好数据库的链接在这里就可以直接选择它。当然建立好数据源,同样的你也可以建立数据集和数据参数或者交叉表的cube。如果已经全部弄好接下来就可以进行开发一个简单的报表了。1. 清单表首先在reports目录中右键新建一张报表new - reports,弹出窗口进行命名以及在哪一个目录下面,点击下一步会出现一个template下面就是公共的报表模板了,不过第一次做还是选择blank,点击下一步直接完成就会生成一张报表。生成报表第一步还是建立数据源,因为我们之前已经在library中已经建立了数据源,此时我们就用那个作为报表开发的数据源,同样的在show view中打开li

10、brary explorer窗口里面可以看到这个项目下的目录打开lib下面的library展开它,把数据源拖动到报表中的Data Source这样就会出现一个绑定的数据源,这样做的好处就是如果开发的报表数量较大,这样以后如果移植数据库只需要去修改library中的数据源,而其他的报表就会跟着自动都修改过来。接下来我们就可以定义数据集了,在Data Sets中新建,命名好了就点击下一步,弹出来的窗口左边就会显示数据库的信息,所有的表都会在里面显示,而右边是你所写的sql,birt会根据你的sql生成相应的视图,点击下一步,可以看到这个窗口中的query就是你的sql和数据库信息,data Sou

11、rce就是数据源,Out Column会显示根据你的sql生成视图的信息包括输出字段、类型等,Computed Column就是计算列,这里可以手动给表添加一列,通过在aggregation中选择计算类型,expression中写出你定义的表达式,命名好之后就会在后面显示一列,parameter就是用来给报表绑定参数,filters是用来对报表进行数据过滤,在里面可以根据表达式对报表进行数据的过滤,Property binding中可以给写script代码,做各种业务逻辑的处理,下面的query timeout可以设置查询超时,preview是可以对数据进行预览,会显示sql生成视图的数据,如

12、图: 但我们定义好了数据集之后我们就可以把这个数据集手动直接拖到中间报表的layout的界面这样就会自动生成一个table表格,如果不做任何的样式处理就可以直接在下面的preview中直接预览报表,或者在上面的工具栏中有一个viewer report这里面有各种格式展示报表。同样的在数据集的下面会生成你sql所规定的字段,也可以单独拖动某一个字段到table中,对于后期如果有字段添加或者修改就可以用这种方式进行。单纯的这样展现报表是不够的,可能会根据业务的需求,需要相应的参数给用户进行选择,例如文本框,下拉框之类的选择,报表会根据不同的参数来进行展现这样就会更为的直观了,接下来就进行参数的定义

13、:例如:select * from test where name=?这一段sql如果没有条件会查出所有的数据但是现在有了where条件,报表会根据这个条件查出数据,至于birt的规则规定凡是参数都设置为等于?,这样才能够识别它,接下来我们就在外面的Report parameters中定义参数,先定义最简单的文本框,同样还是新建会弹出窗口如图:Name定义参数的名字会显示在report parameters中的名字,同样也会显示在报表运行时的参数名字,这里建议使用英文(后面会说明原因),下面会有prompt text这个就是可以替代name来定义中文名字例如:日期,这样既可以让用户看的直观也不

14、会影响后期开发,Data Type为数据的类型,display type这里面可以定义参数的类型,包括文本框,下拉框,单选框,以及多选框,而右边的help text其实就是鼠标放在参数框的时候会出现你所定义的提示信息,下面则是格式的规定里面提供了一些校验,至于最后的4个复选框,其中包括该参数是否为必须填的参数和隐藏参数、不允许重复输入、可以进行多选的四种格式,同样的还可以给参数框提供一个默认的值,在里面可以根据业务需要在script中定义默认的参数,这样我们的文本框就定义好了。如何将定义好的参数和报表关联起来,这个时候就需要关注之前有介绍到的数据集中的parameters点击新建在linked

15、 to report parameters连接到你所定义的参数,这样就完成了报表定义,sql中的where条件后的?就可以接收到了用户所输入的内容进行查询,(注意:?和参数的顺序必须一致,有多少个?就要有多少个参数)。有时候根据业务需要,可能会根据某一个字段进行分组,这样显示起来就比较美观,点击detail行,右键insert group就会弹出分组的窗口设置,如图:这里可以设置分组的名字,以及设置以那个字段作为分组条件,在下面的item Expression中可以设置这个组显示为那个字段,例如按照某个id来分组,但是显示的是相应的描述来给用户看更为的直观。当我们插入分组后还需要一些调试可以看到在detail行上面增加了一个group行,我们只要把detail行的ind_dsc去掉就可以正常的显示分组后的数据了,但是birt的问题会出现某些先太粗之类的情况,这个需要你手动的针对粗的地方在border中把相应的边线只要去掉,多次测试后就可以正常显示了,最后运行的样子:2. 固定格子表所谓固定格子就是一个方格一条数据的实现方式,这种方式的实现就不能用上面介绍的table来实现了,需要用到grid网格来进行操作,首先在

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 商业/管理/HR > 企业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号