birt
初识BIRT,以为很深奥,慢慢了解下,发现很容易入门。

BIRT报表的配置,总体来说,三步就行了。

1、下载birt,将其解压。
可以到http://download.eclipse.org/birt/downloads/下载最新版的birt。
目前是Latest BIRT Runtime Release Build: 4.2.0。

2、在MyEclipse中建立Web工程。

3、将运行包解压后的目录中的WebViewerExample文件夹中的部分文件拷贝到项目中。
首先,将WebViewerExample文件夹中的两个子目录report和webcontent拷贝到工程的WebRoot目录下;
其次,进入到WebViewerExample文件夹下的WEB-INF目录中,将lib目录下的所有jar文件拷贝到Web工程的WebRoot\WEB-INF\lib下,将platform和tlds两个子目录拷贝到Web工程的WebRoot\WEB-INF目录下,将server-config.wsdd和viewer.properties两个文件拷贝到Web工程的WebRoot\WEB-INF目录下;
然后,将WebViewerExample文件夹下的WEB-INF目录中web.xml文件的内容拷贝到Web工程的WebRoot\WEB-INF目录的web.xml中。
最后,修改web.xml的部分内容。
将原内容

<!-- Report engine log level -->
 <context -param>
  <param -name>BIRT_VIEWER_LOG_LEVEL</param>
  <param -value>WARNING</param>
 </context>

中param-value属性的值WARNING改为SEVERE。这样,在页面加载报表时控制台就不会显示相应的警告信息了。

最后将项目部署到tomcat中,并启动即可。

发布设计完成的报表文件,可在web项目中创建reports目录,用于存放报表设计文件。

在应用中通过正确格式的访问路径,例如:http://localhost:8080/birtApp/frameset?__report=报表文件路径,就可以访问报表了。
这个web应用支持2个动作:
frameset
以frameset的形式显示报表。这个界面包含一些frame,如页面导航,报表主体在其中的一个frame中显示;使用形式:
http://localhost:8080/birtApp/frameset?__report=报表文件路径&参数=……

run
报表以一个单独的html页面或pdf显示,由于这种形式没有frmaeset,因此使用者必须自己提供相应的参数,如报表参数,页号等。使用形式:
http://localhost:8080/birtApp/run?__report=报表文件路径&参数=……
下面是对于以上2个动作的参数说明:
__format
报表输出格式:html或pdf,缺省是html。对于frameset不起作用。

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

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

__report
报表设计文件路径。

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

PS:这里所说的是针对web应用的集成,但是这种方法同样也可与非web应用集成。此时,我们可以采取一种变通的方法:在非web应用中使用内嵌的web容器,如jetty,也可达到同样的效果。另外,你也可以通过http://download.eclipse.org/birt/downloads/下载报表设计器(目前最新版Latest BIRT Report Designer Release Build: 4.2.0)来设计报表。