精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2007-08-27
最后修改:2008-11-25
BIRT Viewer 2.2 参数设置详解 作者:会飞的球球 BIRT作为一款功能强大的开源报表工具,其版本的升级更新速度也非常快,从1.0到2.0,一直到最新的2.2.1版本,无论从功能上还是性能上都得到了极大的提高和扩充。BIRT也提供了一个标准的J2EE实现组件,可以发布到支持J2EE应用的web server服务器上,可以对生成的报表进行预览等操作。在大家使用BIRT Viewer的时候,可能会对它日益纷繁的参数设置如云里雾里,在网上论坛里也有很多人碰到这样哪样的问题,同时官方的文档也不细致不全。所以我就对这些参数进行了一个简单系统的总结,希望能对大家的BIRT开发有所帮助。这些参数以2.2.1版本为准,请大家特别注意。 1. Servlet模式说明 查看BIRT Viewer自带的web.xml文件,可以看到有以下几个pattern: frameset ---- 采用Ajax框架,可以显示工具条,导航条和TOC面板,实现复杂的操作,如分页处理,导出数据,导出报表,打印等等。该模式下会自动生成report document文件(预览report design文件)到特定的目录(用户可以用参数指定,也可以定义在web.xml里)。采用Ajax,速度较慢。 run ---- 也采用Ajax框架,但不实现frameset的复杂功能,不会生成临时的report document文件(预览report design文件),也不支持分页,这个主要是应用在BIRT Designer里的preview tab里,可以支持cancel操作,其它不怎么常用。采用Ajax,速度较慢。 preview --- 没有用到Ajax框架,直接调用底层Engine API对报表进行render,把生成的报表内容直接输出到浏览器。这种模式和run模式调用的是相同的Engine API,唯一区别在于run采用Ajax获取报表内容,而preview直接输出到浏览器。如果要支持分页,用户需要在URL上定义__page和__pagerange参数,这两个参数也会在后面详细说明。需要特别说明的是,在这几种预览模式中,preview的速度是最快的。 document --- 该模式主要是为了从report design文件生成report document文件。用户可以在URL上提定document文件生成存放的路径(存放在server端),如果未指定,会直接生成rptdocument发送到客户端浏览器,用户可以下载到客户端。 output --- 该模式类似于frameset,会自动生成report document文件(预览report design文件),区别在于output不采用Ajax,而是将生成的报表内容直接输出到浏览器。 parameter --- 该模式主要用于生成一个参数对话框,一般用户不常用,用户可以直接通过提供的JSP Tag--parameterPage去实现参数对话框,不需要直接调用。 download --- 用于导出报表数据为CSV格式,当你使用frameset工具条里的导出数据功能时,会用到这个模式。 2. web.xml里的参数设置 [BIRT_VIEWER_LOCALE] [BIRT_VIEWER_WORKING_FOLDER] [BIRT_VIEWER_DOCUMENT_FOLDER] [WORKING_FOLDER_ACCESS_ONLY] [BIRT_VIEWER_IMAGE_DIR] [BIRT_VIEWER_LOG_DIR] [BIRT_VIEWER_LOG_LEVEL] [BIRT_VIEWER_SCRIPTLIB_DIR] [BIRT_RESOURCE_PATH] [BIRT_VIEWER_MAX_ROWS] [BIRT_VIEWER_MAX_CUBE_LEVELS] [BIRT_VIEWER_CUBE_MEMORY_SIZE] [BIRT_OVERWRITE_DOCUMENT] [BIRT_VIEWER_CONFIG_FILE] [BIRT_VIEWER_PRINT_SERVERSIDE] [HTML_ENABLE_AGENTSTYLE_ENGINE] 3. viewer.properties参数设置 # configurable variable for JSP base href. Please uncomment the below line. # [EXTENSION SETTING] # [OUTPUT FORMAT LABEL NAME] # [CSV SEPARATOR] # [LOGGERS] 4. URL参数 “__report” “__document” “__title” “__showtitle” “__toolbar” “__navigationbar” “__parameterpage” “__format” “__locale” “__svg” “__bookmark” “__istoc” “__rtl” “__page” “__pagerange” “__resourceFolder” “__asattachment” “__masterpage” “__designer” “__overwrite” “__imageID” “__maxrows” “__maxlevels” “__cubememsize” “__instanceid” “__isreportlet” 2. 采用instanceid,但这个值事先是无法预知的,需要预览一次后从HTML代码中得到。然后用下面的URL输出reportlet. “__clean” “__dpi” “__fittopage” “__pagebreakonly” “__agentstyle” ========================== 后台Server端打印相关参数 ========================== “__printer” “__printer_copies” “__printer_collate” “__printer_duplex” “__printer_mode” “__printer_pagesize” ========================== JSP Tag相关参数 =================================== “__pattern” “__target” “__nocache” ========================== 报表参数相关 =================================== “__islocale” “__isdisplay__” “__islocale__” ========================== Export Data参数 =================================== “__sep” “__exportdatatype” “ResultSetName” “SelectedColumnNumber” “SelectedColumn” 具体可以查看BirtSimpleExportDataDialog.js文件。 5. 其它参数设置 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2007-09-13
前两年一直用MS的ReportingService做报表.
最近因为项目原因,引入了Birt,当初考虑使用Birt也是因为它和我们使用Eclipse作为开发环境有很大的关系.一直认为IDE之间应该尽可能的易整合. 忙活了2天,当然不能算之前的一些积累,终于把Birt比较完美的集成到了系统中.. 在Eclipse社区就看了你的一些文章,很受用,故此回帖...等研究再深入一些,我也把资料整理一下发出来,作为经验总结. |
|
返回顶楼 | |
发表时间:2007-09-14
对了,有一点不是很明白,2.2.1版本官方尚未放出,不知道你是从何得来的?
|
|
返回顶楼 | |
发表时间:2007-09-14
我说的官方是这里:
http://www.eclipse.org/birt/phoenix/ 这么说Birt应该还有自己的主页.我google一下好了. |
|
返回顶楼 | |
发表时间:2007-09-17
是的,2.2.1build还没有release,但你可以在eclipse网站上下到最新的Nightly build。
|
|
返回顶楼 | |
发表时间:2007-09-19
Birt做得太大了,什么都想做,未来的版本也要支持Flash自动生成。以后估计有的忙得~
|
|
返回顶楼 | |
发表时间:2007-09-25
为什么我在print on server下显示不了server端的printer的?
就像http://www.karlshamn.se:8100/appl/frameset?__report=test.rptdesign&sample=my+parameter 打印在服务器端时显示不了打印机名称?如何设置? |
|
返回顶楼 | |
发表时间:2007-10-08
现在只是支持Postscript格式的打印机,请确认你安装的打印机是否支持该格式。
|
|
返回顶楼 | |
发表时间:2008-06-06
刚刚转战到BIRT,想请问一下:
webview中预览.rptdesign文件,怎么样使用当前系统的数据源连接? 在用java application运算生成报表文件,在润乾报表和jasperReport报表中有API接受 Connection对象的传入,在BIRT中是否有类似的做法? |
|
返回顶楼 | |
发表时间:2008-06-07
rptdesign文件一般是已经设计完成的报表文件,它已经包含了Data Source和Data set,在BIRT里运行时,会调用相应驱动去获取数据进行展现。当然这个Data Source是可以有多种类型的,可以通过JDBC连接到数据库,也可以采用Flat File/XML做为数据源,BIRT还支持Web Service数据源。用户也可以进行扩展自已的数据源,如scripted data source,在BIRT里,很多东西都是可以自扩展的。
|
|
返回顶楼 | |