birt报表笔记一

转载 2013年12月05日 15:57:33
运行时环境要下载birt-runtime     
运行的参数:
  • 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,直接在地址栏中输入参数名=参数值后回车,不会影响报表结果。虽然,此时选择"运行报表"时,弹出的参数值已经改变。
 

 中文传参:

1.之前看网上有人发帖说有个解决办法是“在viewservlet.jar下找到org/eclipse/birt/report/utility下找到ParameterAccessor.class文件,现在要修改这个文件的源代码, 

你可以在你从CVS中签出的源代码中的org.eclipse.birt.report.viewer/birt/WEB-INF/classes/org/eclipse/birt/report/utility文件夹中找到ParameterAccessor.java文件,在这个java文件中找到这行:

public static final String UTF_8_ENCODE = "UTF-8"; //$NON-NLS-1$

将这行改为

public static final String UTF_8_ENCODE = "GBK"; //$NON-NLS-1$

然后将这个编译好的class文件压缩到viewservlets.jar的同等目录下,替换原来的文件”,本人也试了这种方法,但没见凑效,不过上面的解决方法好像是在birt2.1的环境下,这个没仔细试,也许对birt2.1有效吧。


2.在JSP中调用BIRT报表时,传的参数中有中文字符,即URL中包含中文字符,这时在BIRT端接收到的参数拼SQL语句后发现中文字符被转码,造成SQL中的条件不正确。
因为在JSP中调用BIRT是在一个JS脚本中,因此要想办法在JS中先将中文转成UTF-8,并且在BIRT获取参数后再将UTF-8转换回中文即可。
实现代码:
页面JS:
Var mychecktype = “中文”;
sqlWhere+="and t.CHECK_TYPE = '"+escape(encodeURI(mychecktype))+"'";

BIRT脚本:
sql+=decodeURI(mycondition);

3.jsp页面:
window.open('frameset?__report=reports/pz_report.rptdesign&__format=HTML&cphParameter='+escape(encodeURI(cph)));
birt 的Script中的initialize中这样写
var cph = params["cphParameter"].value
params["cphParameter"].value = decodeURI(cph);

4.修改tomcat--->conf---->server.xml

 <Connector port="8080" protocol="HTTP/1.1"  connectionTimeout="20000" URIEncoding="UTF-8"
               redirectPort="8443" />

其中: URIEncoding="UTF-8"是加上去的,之前没有

注意:JSP页面的编码和server.xml中的URIEncoding要一致。




 

 

相关文章推荐

关于Birt报表的设计

Birt报表设计步骤:1、下载birt all in one 2.2.1.1,包含eclipse,解开下载文件       启动eclipse,必须使用JDK1.5启动eclipse ,否则新建工...

birt报表中设置数据集sql的问题,希望有人帮我解决这个疑问,不胜感激!

这几天使用birt做报表,至于birt做么玩的我就不想说了,刚用这个东西 我也不是很熟练,只是在用的时候发现一个问题感觉很不适用报表。 一般我们做报表的sql是这样写的: mysql> se...

多数据源动态关联报表的制作(birt为例)

使用Jasper或BIRT等报表工具时,常会碰到一些非常规的统计,用报表工具本身或SQL都难以处理,比如与主表相关的子表分布在多个数据库中,报表要展现这些数据源动态关联的结果。集算器具有结构化强计算引...

如何构建Birt报表应用程序?

BIRT(一)安装Birt报表工具   商业智能(十八) 安装BIRT 发现自己还上了javaeye的头版了,也算是灌水灌出了自己的特色了吧, 希望自己还是加紧时间学习,好为大家...

eclipse birt报表开发入门

1.birt下载和安装

第十四章 高级特性-海纳百川:BIRT报表扩展点

如果仅仅只是前面章节提到的BIRT的设计器的便捷性和BIRT引擎提供的用户自定义BIRT报表展示器等自定义特性,只是表现在BIRT报表作为工具的优势,或者作为服务提供者为系统集成做出的贡献,但这还不足...

birt报表开发菜鸟经验集(二)

这个是点击上文,data空间中的expression后的按钮显示的界面,category原本有五列,第一列是dataset中的字段名称。第二列是表中的绑定的字段。第三列是javascript提供的一些...
  • josoe
  • josoe
  • 2014-01-07 17:45
  • 576

birt报表从session中取参数

自从注册CSDN没写过一篇文章,今天闲来没事,整理点小东西,写下来。 birt从session中取从JSP传递的参数。 1、把JSP页面获得的参数放到session中,以下是简短代码:   ...

birt 报表环境搭建

birt下载和安装 链接: http://pan.baidu.com/s/17KfDG 密码: cbhf 方式一 : 集成birt的eclipse 下载地址为:http://download....

报表例子——用BIRT实现不规则月份统计

来源:     http://developer.actuate.com/community/forum/index.php?/topic/36323-months-and-quarters-grou...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)