??xml version="1.0" encoding="utf-8" standalone="yes"?>亚洲国产美女久久久久,国产成人一区二区三区电影,久久国产亚洲http://www.aygfsteel.com/huangzhanhu/archive/2010/02/03/311777.html聪明的老虎聪明的老虎Wed, 03 Feb 2010 03:04:00 GMThttp://www.aygfsteel.com/huangzhanhu/archive/2010/02/03/311777.htmlhttp://www.aygfsteel.com/huangzhanhu/comments/311777.htmlhttp://www.aygfsteel.com/huangzhanhu/archive/2010/02/03/311777.html#Feedback0http://www.aygfsteel.com/huangzhanhu/comments/commentRss/311777.htmlhttp://www.aygfsteel.com/huangzhanhu/services/trackbacks/311777.html    BIRT作ؓ一Ƒ֊能强大的开源报表工P其版本的升更新速度也非常快Q从1.0?.0Q一直到最新的2.2.1版本Q无Z功能上还是性能上都得到了极大的提高和扩充。BIRT也提供了一个标准的J2EE实现lgQ可以发布到支持J2EE应用的web server服务器上Q可以对生成的报表进行预览等操作。在大家使用BIRT Viewer的时候,可能会对它日益纷J的参数讄如云里雾里,在网上论坛里也有很多人碰到这样哪L问题Q同时官方的文档也不l致不全。所以我对q些参数q行了一个简单系l的ȝQ希望能对大家的BIRT开发有所帮助。这些参C2.2.1版本为准Q请大家特别注意?

1. Servlet模式说明

  查看BIRT Viewer自带的web.xml文gQ可以看到有以下几个patternQ?

  frameset ---- 采用Ajax框架Q可以显C工hQ导航条和TOC面板Q实现复杂的操作Q如分页处理Q导出数据,导出报表Q打印等{。该模式下会自动生成report document文g(预览report design文g)到特定的目录(用户可以用参数指定,也可以定义在web.xml?。采用AjaxQ速度较慢?

  run ---- 也采用Ajax框架Q但不实现frameset的复杂功能,不会生成临时的report document文g(预览report design文g)Q也不支持分,q个主要是应用在BIRT Designer里的preview tab里,可以支持cancel操作Q其它不怎么常用。采用AjaxQ速度较慢?

  preview --- 没有用到Ajax框架Q直接调用底层Engine APIҎ表进行renderQ把生成的报表内容直接输出到览器。这U模式和run模式调用的是相同的Engine APIQ唯一区别在于run采用Ajax获取报表内容Q而preview直接输出到浏览器。如果要支持分页Q用户需要在URL上定义__page?__pagerange参数Q这两个参数也会在后面详l说明。需要特别说明的是,在这几种预览模式中,preview的速度是最快的?

  document --- 该模式主要是Z从report design文g生成report document文g。用户可以在URL上提定document文g生成存放的\?存放在server?Q如果未指定Q会直接生成 rptdocument发送到客户端浏览器Q用户可以下载到客户端?

  output --- 该模式类gframesetQ会自动生成report document文g(预览report design文g)Q区别在于output不采用AjaxQ而是生成的报表内容直接输出到浏览器?

  parameter --- 该模式主要用于生成一个参数对话框Q一般用户不常用Q用户可以直接通过提供的JSP Tag--parameterPaged现参数对话框Q不需要直接调用?

  download --- 用于导出报表数据为CSV格式Q当你用frameset工具条里的导出数据功能时Q会用到q个模式?

2. web.xml里的参数讄
web.xml文g里有许多参数Q用户应该根据自已的需求出发对q些参数有一个深入的了解。下面我会对q些参数一一做以说明?

[BIRT_VIEWER_LOCALE]
讄默认的Locale信息Q暂时没有太大意义。因为Locale的信息,首先以URL上定义的__locale为准Q如果没有定义,会找到当前浏览器的Locale信息Q最后才会用到这里定义的信息?

[BIRT_VIEWER_WORKING_FOLDER]
讄BIRT Viewer的工作目录。用户可以把report design或是report document文g存放在这个目录下Q这样就可以在URL上采用相对\径去预览q些报表文g了。默认是当前根目录?
当前支持三种形式Q?
相对路径 --- q个相对当前的WEB应用的context root.
l对路径
JAVApȝ变量 --- 可以在启动服务器Ӟ定义JVM的系l变量,如java –Dmyworkingfolder=D:/reports。这样就可以在web.xml中用${myworkingfolder}q行引用了?

[BIRT_VIEWER_DOCUMENT_FOLDER]
讄生成的document文g的存放\径。默认是documents目录。\径设|同上?

[WORKING_FOLDER_ACCESS_ONLY]
单的报表讉K限制控制实现Q如果设为true,哪就只能预览存放在工作目录下的报表文件。默认值是false?

[BIRT_VIEWER_IMAGE_DIR]
讄生成的时图片的存放路径。默认是report/images目录。\径设|同工作目录讄?

[BIRT_VIEWER_LOG_DIR]
讄生成的日志文件存放\径。默认是logs目录。\径设|同工作目录讄?

[BIRT_VIEWER_LOG_LEVEL]
讄日志的levelQ可选的值有QALL|SEVERE|WARNING|INFO|CONFIG|FINE|FINER|FINEST|OFF。别由高到低?

[BIRT_VIEWER_SCRIPTLIB_DIR]
讄用户script lib文g的存攄? 在报表中用到的Java Event Handler Class )。默认值是scriptlib。\径设|同工作目录讄?

[BIRT_RESOURCE_PATH]
讄用户资源存放路径Q这些资源包括library文gQimage文g{。默认是当前根目录。\径设|同工作目录讄?

[BIRT_VIEWER_MAX_ROWS]
讄获取dataset的最大记录数。主要应用于设计报表的时候,预览报表如果记录数太多,会花费很多的旉Q也可能会引起out of memory问题。默认是不限制?

[BIRT_VIEWER_MAX_CUBE_LEVELS]
讄CUBE查询的最大数。和前面的参C用类伹{默认是不限制?

[BIRT_VIEWER_CUBE_MEMORY_SIZE]
讄在生成CUBEӞ可以写在memory中的最大|单位是MB。可以提高效率,写在内存会比直接写在盘快很多。但同时也要注意内存占用的问题?

[BIRT_OVERWRITE_DOCUMENT]
该参C要用于frameset/output模式Q它们会生成临时的document文g上。如果设为trueQ则每次h面Ӟ都会重新ȝ成document文gQ如果ؓfalseQ则不会重新生成Q只会用原来的document文gȝ成报表内宏V?

[BIRT_VIEWER_CONFIG_FILE]
定义properties文g的\径,不可以修攏V?

[BIRT_VIEWER_PRINT_SERVERSIDE]
在frameset工具条上Q提供有后台服务器打印的功能Q该参数可以讄是打开q是关闭后台打印的功能。默认是打开。可选gؓ: ON ?OFF?

[HTML_ENABLE_AGENTSTYLE_ENGINE]
q个参数是会传递给Engine的,主要用于一些CSS的兼Ҏ方面的问题。默认值是true?

3. viewer.properties参数讄
viewer.properties文g主要是定义一些扩展的参数?

# configurable variable for JSP base href. Please uncomment the below line.
#base_url=http://127.0.0.1:8080
该设|主要应用于代理服务器的情况下,在用代理服务器后,从request里获取的URIq真正的URIQ需要在q里定义?

# [EXTENSION SETTING]
viewer.extension.html=html
viewer.extension.pdf=pdf
viewer.extension.postscript=ps
viewer.extension.doc=doc
viewer.extension.xls=xls
viewer.extension.ppt=ppt
定义输出的报表文件的后缀名,和format相关联?

# [OUTPUT FORMAT LABEL NAME]
viewer.label.html=HTML
viewer.label.pdf=PDF
viewer.label.postscript=PostScript
viewer.label.doc=Word
viewer.label.xls=Excel
viewer.label.ppt=PowerPoint
定义导出报表对话框里的报表格式列表,和format相关联,q样名字会更有意义?

# [CSV SEPARATOR]
viewer.sep.0=,
viewer.sep.1=;
viewer.sep.2=:
viewer.sep.3=|
viewer.sep.4=\t
支持多种CSV分隔W,用户也可以增加新的分隔符(只支持charQ而不是string)。但同时需要修改JSP文g和Messages.properties文g?

# [LOGGERS]
# "logger."+class=level
# if no level is specified or the text "DEFAULT",
# then the default level from the web.xml will be used
logger.org.eclipse.datatools.connectivity.oda=DEFAULT
logger.org.eclipse.datatools.enablement.oda=DEFAULT
当前的日志都是通过Engine输出的,如果需要其它组件的日志输出Q可以在q里定义。注意格式必Mؓlogger.org……。而且该组件必dCjava的logger?
可以单独lg讄日志U别Q如果设为DEFAULTQ就会用web.xml里的讄?

4. URL参数
下面是一些主要用到的URL参数?

“__report”
定义要预览的rptdesign文g路径Q支持相对\径和l对路径Q相对\径是相对于web.xml中定义的工作目录?

“__document”
定义要预览的rptdocument文g路径Q同h持相对和l对路径。相对\径是相对于web.xml中定义的工作目录。在同时定义了__report 和__document参数Ӟ以__documentZ先,如未扑ֈ相应的document文gQ才会从design文g生成document文g (frameset/output)或是直接去renderq个design文g(preview/run)?

“__title”
定义报表昄的标题?

“__showtitle”
是否昄frameset模式下上方的标题部分。true | false

“__toolbar”
是否昄frameset模式下的工具条。true | false

“__navigationbar”
是否昄frameset模式下的D条。true | false

“__parameterpage”
是否强制弹出或不弹出报表参数对话框。true | false

“__format”
输出报表的格式,默认为html。现在支持:pdf | doc | xls | postscript | ppt

“__locale”
讄Locale信息Q如 __locale=zh_CNQ?注意必须是国家加语言?

“__svg”
讄chart输出是否以SVG格式输出。true | false
frameset和run模式下,会采用javascript判断客户端浏览器是否支持svgQ但qҎ有浏览器有效?

“__bookmark”
讄面要定位的书签名字?

“__istoc”
指定定位的书{是不是一个TOC名字。如为true,׃Ҏ__bookmark参数值去获取一个真正的书签名,从而实现正常的跌{。这个主要用于定位到一个TOC上?

“__rtl”
指定HTML面输出是否需要right to left。支持不同国家的阅读习惯Q如阿拉伯国家是从右到左的?

“__page”
指定要输出的报表|Q这个依赖于报表的分设?page break)?

“__pagerange”
指定要输出的报表|范围。如1,3,5-9?

“__resourceFolder”
定义资源目录路径。同web.xml中的BIRT_RESOURCE_PATH讄?

“__asattachment”
是否以附件方式下载报表,如生成PDF或是其它格式里。默认是inline?

“__masterpage”
是否要显Cmaster page。true | false

“__designer”
该参C要是应用在BIRT Designer环境下,如会dcache的报表参数等{,一般不用。true | false

“__overwrite”
该参数同web.xml定义的参敎ͼ不过web.xml里是全局讄Q在URL上通过参数可以定义本次操作的设|?

“__imageID”
内部参数Q用于image的引用,一般不用?

“__maxrows”
讄Dataset查询的最大记录数Q要注意q个讄是全局的,会媄响后面所有的h。主要用于BIRT Designer下,提高报表设计效率。同web.xml中的BIRT_VIEWER_MAX_ROWS讄?

“__maxlevels”
讄查询获取Cube的最大数。同上面的__maxrowsQ也主要用于BIRT Designer设计环境?
同web.xml中的BIRT_VIEWER_MAX_CUBE_LEVELS讄?

“__cubememsize”
同web.xml中的BIRT_VIEWER_CUBE_MEMORY_SIZE参数讄?

“__instanceid”
如果查看BIRT输出的HTML代码Q你可以看C些HTML Element会有一个iid的属?如table)Q这个就是instanceid。这个是Engine动态生成的Q不可提前预知。所以你需要从 HTML代码中得到这个倹{该参数主要是ؓ了获取reportlet(报表片断Q如只输出报表中的一个Table或是一个Chart)。需要配?__isreportlet参数?

“__isreportlet”
指定当前输出是不是一个reportlet。true | false
特别说明Qؓ了输Z个reportletQBIRT现在提供两种方式?
1Q?输出的对?表格或是Chart)定义一个bookmarkQ然后可以用下面的URL输出reportlet.
http://localhost:8080/birt/frameset?__report=test.rptdesign&__bookmark=bk&__isreportlet=true

2Q?采用instanceidQ但q个g先是无法预知的,需要预览一ơ后从HTML代码中得到。然后用下面的URL输出reportlet.
http://localhost:8080/birt/output?__report=test.rptdesign&__instanceid=iid&__isreportlet=true
q有是要注意,reportlet只支持document文档。如果是预览design文档去输出reportletQ就必须要用frameset/output(自动生成document文档)?

“__clean”
BIRT里时生成的一些文仉是和session相关的,比如临时document文gQ还有image文g。这些文件也可以通过sessionq行理Q这个参数就是指定是否需要在session timeout的时候清除这些时文件。默认值是true?
true | false

“__dpi”
可以讄输出Chart的dpi数倹{?

“__fittopage”
暂时q个参数只对PDF和postscript格式报表有效Q指定是否调整至适合面?

“__pagebreakonly”
暂时q个参数只对PDF和postscript格式报表有效Q指定是否只采用BIRT报表内定的分设|。这个参C般需要和__fittopage联合使用?

“__agentstyle”
同web.xml中的HTML_ENABLE_AGENTSTYLE_ENGINE参数讄?

========================== 后台Server端打印相兛_?==========================
“__action”
定义执行的指令名U。当前只支持print指oQ用于后台服务器打印?

“__printer”
后台打印机名U?

“__printer_copies”
对应打印机的打印份数参数?

“__printer_collate”
对应打印机的双面打印参数?

“__printer_duplex”
对应打印机的duplex参数?

“__printer_mode”
对应打印机的模式参数。是单色q是彩色?

“__printer_pagesize”
对应打印机的U型参数。比如A4?
===============================================================================

========================== JSP Tag相关参数  ===================================
“__id”
viewer的IDPq个参数一般不常用Q主要用于JSP Tag中,如在一个页面插入两个BIRT ViewerQ而且预览同一个报表文Ӟq时候因为在一个session下面Q所以需要用不同的IDȝ成单独的document文g。不至于都生成同一个document文g上,从而引发冲H?

“__pattern”
在JSP Tag中用于指定要提交的Servlet Pattern名字Q如frameset/output/run/preview{。主要用于采用parameter模式生成parameter dialog对话框时?

“__target”
可以指定提交到的H口名称。如_blank,_self{?

“__nocache”
指定是否会用到cache的报表参数|q些cache的g般保存在rptconfig文g里。在设计报表q览的时候,可以保存输入的报表参数倹{这个在runtime的时候不常用?
===============================================================================

========================== 报表参数相关 ===================================
“__isnull”
指定当前的报表参Cؓnull|后面是报表的参数名?

“__islocale”
指定当前的报表参数值是和Locale/Format相关的,必须用特定的Locale/Format转化参数?从String转化为Object)。格式ؓ__islocale=paramName?

“__isdisplay__”
指定报表参数的displayText?格式为__isdisplay__paramName=displayText。可以在报表中引用displayText|如params[“p1”].displayText?
在URL上传displayText时如?报表参数名ؓp1)Q?
&__isdisplay__p1=hello

“__islocale__”
指定该报表参数值是Locale/Format相关的,同时l定了参数倹{格式ؓ__islocale__paramName=paramValue?
===============================================================================

========================== Export Data参数 ===================================
“__exportEncoding”
该参数应用于导出数据为CSV中,可以指定导出的文件编码,如GBK或是GB2312{?

“__sep”
该参数应用于导出数据为CSV中,可以指定数据分隔W,如逗号Q冒L?

“__exportdatatype”
该参数应用于导出数据为CSV中,可以指定是否输出数据cd。true | false

“ResultSetName”
要导出数据的记录集名字?

“SelectedColumnNumber”
要导出的栏位数?

“SelectedColumn”
要导出的数据栏位名称?

具体可以查看BirtSimpleExportDataDialog.js文g?
===============================================================================

5. 其它参数讄
在BIRT Viewer里还有一个比较特D的参数应用Q就是用户可以自定义自已的servletQ然后传递对象到Application Context中,在报表中可以从全局的Application Context去获取到q个对象?
q里相关的有两个内定的参敎ͼAppContextKey和AppContextValue。下面是一个简单的CZ?
public void service( HttpServletRequest request,
   HttpServletResponse response ) throws ServletException,
   IOException, BirtException
{
  String myKeyName = "mykey";
  List values = new ArrayList();
  values.add( "hello" );
  values.add( new Date() );
  request.setAttribute( "AppContextKey", myKeyName );
  request.setAttribute( "AppContextValue", values );
  RequestDispatcher rd = request.getRequestDispatcher( "/frameset" );
  rd.include( request, response );
}

聪明的老虎 2010-02-03 11:04 发表评论
]]>
2、birt2.5版本报表在tomcat 6中的部vhttp://www.aygfsteel.com/huangzhanhu/archive/2010/01/13/309281.html聪明的老虎聪明的老虎Wed, 13 Jan 2010 02:44:00 GMThttp://www.aygfsteel.com/huangzhanhu/archive/2010/01/13/309281.htmlhttp://www.aygfsteel.com/huangzhanhu/comments/309281.htmlhttp://www.aygfsteel.com/huangzhanhu/archive/2010/01/13/309281.html#Feedback0http://www.aygfsteel.com/huangzhanhu/comments/commentRss/309281.htmlhttp://www.aygfsteel.com/huangzhanhu/services/trackbacks/309281.html    要把birt2.5版本部v到tomcat6?br /> 1、去birt|站下蝲birt-runtime-2_5_1.zip?br /> 2、解压birt-runtime-2_5_1.zip,把目录下面的WebViewerExample复制到tomact的webapps\目录下面
3、在tomcat6中部|需要把commons-logging 拯?nbsp;webapps\WebViewerExample\WEB-INF\lib目录?br /> q行tomcat 以后Q在览器中输入 http://localhost:8080/WebViewerExample/
可以看到相关的列子?br />



聪明的老虎 2010-01-13 10:44 发表评论
]]>
1.BIRT报表的安?/title><link>http://www.aygfsteel.com/huangzhanhu/archive/2010/01/12/309242.html</link><dc:creator>聪明的老虎</dc:creator><author>聪明的老虎</author><pubDate>Tue, 12 Jan 2010 14:51:00 GMT</pubDate><guid>http://www.aygfsteel.com/huangzhanhu/archive/2010/01/12/309242.html</guid><wfw:comment>http://www.aygfsteel.com/huangzhanhu/comments/309242.html</wfw:comment><comments>http://www.aygfsteel.com/huangzhanhu/archive/2010/01/12/309242.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.aygfsteel.com/huangzhanhu/comments/commentRss/309242.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/huangzhanhu/services/trackbacks/309242.html</trackback:ping><description><![CDATA[    q几天学习了下birt报表Qbirt是eclipse的一个插Ӟ安装h非常?br /> 1、直接下载已l包括birt插g的eclipse开发工?a >http://download.actuatechina.com/eclipse/technology/epp/downloads/release/galileo/SR1/eclipse-reporting-galileo-SR1-win32.zip</a> <br /> 2?直接下蝲本neclipse对应版本的birtQ下载以后直接拷贝到相关的插件目录下可以了。如果打开eclipse没有发现birtQ原因有可能是版本对应的错误? <img src ="http://www.aygfsteel.com/huangzhanhu/aggbug/309242.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/huangzhanhu/" target="_blank">聪明的老虎</a> 2010-01-12 22:51 <a href="http://www.aygfsteel.com/huangzhanhu/archive/2010/01/12/309242.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss> <footer> <div class="friendship-link"> <a href="http://www.aygfsteel.com/" title="狠狠久久亚洲欧美专区_中文字幕亚洲综合久久202_国产精品亚洲第五区在线_日本免费网站视频">狠狠久久亚洲欧美专区_中文字幕亚洲综合久久202_国产精品亚洲第五区在线_日本免费网站视频</a> </div> </footer> վ֩ģ壺 <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">غ</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">ʼ</a>| <a href="http://" target="_blank">Ʊ</a>| <a href="http://" target="_blank">ĵ</a>| <a href="http://" target="_blank">ޭ</a>| <a href="http://" target="_blank">ٸ</a>| <a href="http://" target="_blank">Ϫ</a>| <a href="http://" target="_blank">ԭ</a>| <a href="http://" target="_blank">ƽ</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">ͨ</a>| <a href="http://" target="_blank">ˮ</a>| <a href="http://" target="_blank">ī񹤿</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">ͤ</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">ն</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">ͷ</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">ų</a>| <a href="http://" target="_blank">ʱ</a>| <a href="http://" target="_blank">ԫ</a>| <a href="http://" target="_blank">״</a>| <a href="http://" target="_blank">Զ</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">˳ƽ</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">ˮ</a>| <script> (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })(); </script> </body>