文档章节

birt

强超
 强超
发布于 2014/09/17 12:05
字数 810
阅读 74
收藏 0

**1.**birt报告打印word时,cell中嵌入的grid的border显示不全或明显grid出界


    由于系统birt升级造成报表格式问题,一般是cell中的grid出界问题和border显示不全 解决方案:将cell内容居中和grid居中


**2**.birt中可以引用js


    <list-property name=”includeScripts”>

      <property>js/test.js</property>

    </list-propterty>

**3**.Birt报表表格列动态隐藏显示


在使用birt时,想根据动态值去动态隐藏一列数据时,应注意几个方面: Birt列的动态隐藏和显示的原理:birt会在整个表格绘制完成以后,在去执行动态隐藏显示列的脚本(script),即便使用分组或过滤等条件,界面上看似多个表格,其实birt内部认为这是一张表格,导致最终所有表格以最后判断动态隐藏列的脚本为准。 解决方案:使用主从关系,让需要动态隐藏的表格重新绘制,达到动态隐藏和显示表格列 参考:(环境报告中的废水,公卫报告的实现)


**4.**birt报表中,如何根据某个数据动态设置报告的纵向和横向打印


    首先获取报告的Master Page的Element Id,譬如,下段是某报告的XML Source中的一段,Master Page的element id就是"2":


    <page-setup>

            <simple-master-page name="Simple MasterPage" id="2">

                <property name="type">a4</property>

                <property name="orientation">auto</property>

                <property name="leftMargin">0.25in</property>

                <property name="rightMargin">0.25in</property>

                <property name="showHeaderOnFirst">true</property>

                <property name="showFooterOnLast">true</property>

                ......

    </page-setup>

    然后在报告(Report Design)的beforeFactory方法内,动态设置Master Page的orientation值:


    if (industryDomain !=null && "DOMAIN_IHT" == industryDomain) {

        reportContext.getDesignHandle().getElementByID(2).orientation = "Landscape";

    } else {

        reportContext.getDesignHandle().getElementByID(2).orientation = "Portrait";

    }

**5**.birt报告中,如何根据数据动态设置表格控件的属性


    譬如下段代码,是绝对浓度报告中根据是否为空白样给该条记录的样品编号添加斜体样式:


    if("Y" == this.getRowData().getExpressionValue("row[isSampleBlank]")) {

        this.getStyle().fontStyle = "Italic";

    }

**6**.Birt报告脚本中,如何按照多个字段进行分组(或者过滤).


    譬如,想按照row["a"]和row["b"]进行分组(或进行排序),需要在birt中设置分组条件”表达式“(expression,注意,该表达式是javascript表达式,而不是SQL)。 以下SQL类似的写法是错误的:


row["a"], row["b"] // 这是错误的!

。该写法作为javascript expression执行的结果,实际就只包含row["b"]。 正确的写法是:


row["a"] + "\n" + row["b"] // 这是正确的

。其中"\n"是连接符,可以取绝对不会在row["a"]和row["b"]中出现的任意字符。一般可以取"\n"和"\t"等。也可以使用javascript array的join方法:


[row["a"], row["b"]].join("\n") // 这个也是正确的

使用动态文本字段的注意事项


注意:文本类型是html的动态文本字段,在Word导出中会以一个单独的表格进行处理。过多的这类动态文本字段,使得导出的Word中表格嵌套表格,导致后续编辑困难和导出文件过大。


如果是不需要换行的内容,请尽量不要使用动态文本字段

如果必须使用动态文本字段,请尽量设置文本类型为"plain text"


© 著作权归作者所有

下一篇: ofbiz
强超
粉丝 1
博文 13
码字总数 4017
作品 0
上海
后端工程师
私信 提问
birt 安装(2)—Runtime 下载部署及汉化—安装

当birt 的报表模板设计完后,就可以放到birt runtime中去使用了(包括预览,下载操作)。下载好的 birt runtime 里是一个.war包,只要将其放入j2ee容器中就可以了。 示例版本: BIRT Runtime...

Canaan_
2016/01/18
257
1
BIRT部署在Tomcat解决方案

应用环境: tomcat-8.5.16 jdk 1.8 BIRT 4.6.0 1. BIRT官网下载最新的BIRT运行环境 - Latest BIRT Runtime Release Build: 4.6.0,目前BIRT最新版本为4.6.0。 2. 解压Birt-Runtime-x.x.zip,......

genuinecx
2017/07/07
0
0
BIRT报表深度解析之BIRT中国企业级用户流失之谜

BIRT报表算是比较常用的报表开发工具,但是近年来,BIRT报表在企业中的使用率却远远低于FineReport(以下简称FR),那么这是出于什么原因呢?通过对BIRT的学习途径、报表功能和技术支持等方面...

iris_1992
2015/05/12
1K
3
BIRT 报表的自动化测试

BIRT 是一项很受欢迎的报表制作工具,但目前对其的测试还是以人工测试为主。本文介绍了如何对 BIRT 报表进行自动化测试,以及在实际项目中的一些测试实践,从而提高了测试的效率和准确性。 ...

红薯
2009/12/13
1K
1
birt跨域session失效问题

至于为什么使用BIRT我想在这里也不用过多说明了,公司从去年底(2013年)开始引入了BIRT,使用过程中也比较顺利,对于技术人员也比较容易上手。 使用BIRT做的第一个主要工作就是将原有项目中...

shaguofen
2014/04/26
0
3

没有更多内容

加载失败,请刷新页面

加载更多

【AI实战】手把手教你深度学习文字识别(文字检测篇:基于MSER, CTPN, SegLink, EAST等方法)

文字检测是文字识别过程中的一个非常重要的环节,文字检测的主要目标是将图片中的文字区域位置检测出来,以便于进行后面的文字识别,只有找到了文本所在区域,才能对其内容进行识别。 文字检...

雪饼
今天
16
0
思维导图XMind 8 Pro 绿化方法(附序列号)

按部就班: Step 1 -全新下载最新版本的 Xmind 8(注必须是英文官方的版本,中文代{过}{滤}理网站的版本修改过,无法使用pj); Step 2 -安装完毕后,点击文末的下载按钮下载pj补丁文件包,将...

一只小青蛙
今天
10
0
数据结构(ER数据库)设计规范

表命名规范 表命名的规则分为3个层级,层级之间通过_分割,例如b_r_identity、d_l_identity。规约为: [leavel]_[type]_[name] [leavel] 表示数据库表的层级和功能,分为: s:业务无关的系统...

随风溜达的向日葵
今天
10
0
阿里Sentinel控制台源码修改-对接Apollo规则持久化

https://github.com/alibaba/Sentinel/wiki/%E5%9C%A8%E7%94%9F%E4%BA%A7%E7%8E%AF%E5%A2%83%E4%B8%AD%E4%BD%BF%E7%94%A8-Sentinel 动态规则扩展 https://github.com/alibaba/Sentinel/wiki......

jxlgzwh
昨天
14
0
在Linux系统中创建SSH服务器别名

如果你经常通过 SSH 访问许多不同的远程系统,这个技巧将为你节省一些时间。你可以通过 SSH 为频繁访问的系统创建 SSH 别名,这样你就不必记住所有不同的用户名、主机名、SSH 端口号和 IP 地...

老孟的Linux私房菜
昨天
17
1

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部