ireport制作小技巧

首先ireport中大小写问题:

1、parameter中如果小写,引用也小写

2、$F{},一般都大写

3、子报表中引用父报表中查询出来的值时,只需要小写即可,即在子报表的parameter中只需要小写

一、iReport 中获取系统当前时间

1、选择TextField类型为 java.util.Date,选择TextField的Expression Class(类型)为 java.util.Date

2、在pattern中选择时间格式

3、在TextField Expression中写 java.util.Calendar.getInstance().getTime()

二、避免为空

方法一、在属性选项中找到blank when null即可

方法二、$F{ABB614}?$F{ABB614}:""

三、设置时间格式

方法一、可以使用内嵌函数截取字符串来显示

1、利用substring来截取 (针对String类型)

$F{AAE036}?(($F{AAE036}.toString()).substring(0,4)+"年"+($F{AAE036}.toString()).substring(4,6)+"月"+($F{AAE036}.toString()).substring(6,8)+"日"):""

2、利用内置的函数来取 (针对date类型)

"日期"+($F{ABB017}?String.valueOf($F{ABB017}.getYear()+1900)+"年"+String.valueOf($F{ABB017}.getMonth()+1)+"月"+$F{ABB017}.getDate():"")+"日

方法二、设置 Exception class 为date类型,然后在pattern中设置时间格式,可以自己写,例如××××年××月××日,但是要注意,如果为空无法用$F{ABB614}?$F{ABB614}:"",只能使用blank when null这种方法

四、在ireport中使用html中的标签

例如:<br>

1、找到属性面板中的markup选择为html

2、在需要的地方加入<br>

五、使某个字段中的数据在特定条件下才打印出来

通过设置字段的PrintWhenExpression,我们可以限定只有在某些特定的条件下字段值才会被打印出来,在PrintWhenExpression 中需要设置Boolean 型的表达式,如:new java.lang.Boolean($F{type}.trim().equals("mod_cook"))

六、嵌套子报表

1、在面板属性中找到Subreport,然后拖进你要放入的地方,放开鼠标后,会有一个新建报表。新建完报表之后会有个名为SUBREPORT_DIR 的Parameter,string类型,他会有个默认路径,指的是子报表的路径。由于子报表往往有多条数据,故最好单独放在一个detail中(例如:查询出来有多条数据,那么会循环显示在detail中)。

2、如果子报表中需要传入数据,那么就先点中子报表,然后在属性栏(不是参数里)中找到“parameters”,新建一个,例如:

name为abz050  ,Expression为$F{ABZ050},因为这里的值是父报表查询的出来之后的值,所以不是用Parameter,而是Field。

3、在子报表中引用值,首先在子报表中定义一个变量Parameter,然后引用即可。

那为什么能找到呢?

因为:你在创建子报表的时候,也会自动创建一个Parameter,名称默认为SUBREPORT_DIR,它里面有个默认路径(新传入的路径会覆盖该默认路径)。

同时,可以点中子报表查看他的属性,里面有个Subreport Exception的值为$P{SUBREPORT_DIR} + "子报表名称.jasper",这样系统就能找到了。当然系统还会自动配置一些其他子报表属性,具体的自己新建一个看看吧。

七、自动换行

如果不处理一下,有些字段的内容太长了就会显示不全。选中该字段,右击->属性,在Text Field把Stretch with overflow勾上。

同时把该行所有的字段选上,右击->属性,在Common的Stretch Type选择Relative to tallest object。

八、内嵌函数的使用

举例:($F{ABB617}).toString()).substring(0,4)+"年"          把ABB617(Date类型)先转化成String然后截取年

ireport中使用内嵌函数只要在字段上看看他有哪些方法,然后直接使用即可。

九、高度根据内容自动变高

1、选中主键,在属性中找到 Stretch With Overflow并选中。并把他单独放在一个Detial或者其他 里面即可。
2、还有一个属性叫Stretch type,默认的值是No Stretch,可以改成Relative To Band Height。

第二个步骤我个人认为可做可不做。

当然第二个步骤的功能在做表格的时候很有用,例如:表格是2列,那么两边的数据肯定不一样,或者是左边就是静态的,那么如果不选择这个属性,你就会发现,右边的数据很多的时候会扩充,但是左边不会,这个时候,我们就可以设置该属性,并把它们放到一个单独Detial或者其他容器中,那样 左右两边 就会等高了

十、设置共几页,第几页

$V{PAGE_NUMBER} 表示当前是第几页 ,在text field 的 选项evaluation time选report是共几页,now表是当前页。页码可在ireport里直接设置。  “共几页 第几页”

我是写在page footer 中。

ireport制作小技巧的更多相关文章

  1. ireport制作小技巧<Reproduce>

    首先ireport中大小写问题: 1.parameter中如果小写,引用也小写 2.$F{},一般都大写 3.子报表中引用父报表中查询出来的值时,只需要小写即可,即在子报表的parameter中只需要 ...

  2. 【flash】关于flash的制作透明gif的一个小技巧

    关于flash的制作透明gif的一个小技巧 或者说是一个需要注意的地方 1.导出影片|gif,得到的肯定是不透明的.2.想要透明背景,必须通过发布.3.flash中想要发布gif动画的话,不能有文字, ...

  3. iReport 5.6.0 组件面板为空 get小技巧

    问题描述 本人使用的是iReport 5.6.0版本,正常安装,打开后,创建了一个报表实例,但是,菜单栏--> 工具--> 组件面板 为空.效果如下: 这就尴尬了,没有组件面板,还怎么绘制 ...

  4. GJM : Unity3D - UI - UI边缘流光特效小技巧 [转载]

    感谢您的阅读.喜欢的.有用的就请大哥大嫂们高抬贵手"推荐一下"吧!你的精神支持是博主强大的写作动力以及转载收藏动力.欢迎转载! 版权声明:本文原创发表于 [请点击连接前往] ,未经 ...

  5. Chrome 的 100 个小技巧 中文版

    英文原版<100 Tips For Chrome, Chrome OS and ChromeBook Users>作者博客 - chromestory.com 本文是对<100 Ti ...

  6. 【Xamarin挖墙脚系列:代码手写UI,xib和StoryBoard间的博弈,以及Interface Builder的一些小技巧(转)】

    正愁如何选择构建项目中的视图呢,现在官方推荐画板 Storybord...但是好像 xib貌似更胜一筹.以前的老棒子总喜欢装吊,用代码写....用代码堆一个HTML页面不知道你们尝试过没有.等页面做出 ...

  7. React Native底|顶部导航使用小技巧

    导航一直是App开发中比较重要的一个组件,ReactNative提供了两种导航组件供我们使用,分别是:NavigatorIOS和Navigator,但是前者只能用于iOS平台,后者在ReactNati ...

  8. MAC使用小技巧之用好mac电脑?的10个必知的小技巧!

    很多朋友是不是都有这样的困惑,刚接手Mac电脑,无论是笔记本亦或是台式机,很是不方便,因为windows系统那种习惯已经先入为主了,今天就给大家普及一些小技巧. 当你看到这篇文章,不管你有没有mac电 ...

  9. 9 个 Yoinkmac使用小技巧,提升你的 Mac 文档解决效率

    Yoinkmac是一个工具类应用程序,用于在苹果电脑上进行临时文档暂存,就像一个“中转站”将文件从一个窗口轻松移动到另一个窗口.类似的软件包括苹果电脑上的Dropshelf和Unclutter,但相比 ...

随机推荐

  1. Aspose 数字和日期 设置

    Microsoft Excel一个非常强大的功能就是使客户可以设置数字和日期的显示格式,众所周知数字可以显示为不同的值格式,包含:小数.货币.百分数.分数.账面价值等,同样地Aspose.Cells也 ...

  2. VBS基础篇 - 数组

    数组变量:有时需要向一个单一的变量赋于多个值,那么您可以创建一个可包含一系列值的变量,这种变量被称为数组. '静态数组 ) a()="George" a()="john& ...

  3. Team Homework #1 学长“学霸英语学习软件”试用

    简介: 一款英语单词记忆和管理辅助软件. 基本功能: 内置GRE词汇及其常考形态.Webster英语解释 单词发音功能 单词测验模式 简易词典功能 基本界面 词库单词读取 单词测试 优点: 1.界面简 ...

  4. Careercup - Facebook面试题 - 4907555595747328

    2014-05-02 07:49 题目链接 原题: Given a set of n points (coordinate in 2d plane) within a rectangular spac ...

  5. windows server 2008 下安装openmeetings 2.2.0

    经过两天的痛苦经历,终于完成了openmeetings的安装部署.其实步骤都很简单,只是网上的资料都是英文的,而且很多教程都是针对openmeeting之前的版本,导致我在部署的时候走了很多弯路.网上 ...

  6. 3142:[HNOI2013]数列 - BZOJ

    题目描述 Description 小T最近在学着买股票,他得到内部消息:F公司的股票将会疯涨. 股票每天的价格已知是正整数,并且由于客观上的原因,最多只能为N.在疯涨的K天中小T观察到:除第一天外每天 ...

  7. Codeforces Round #321 (Div. 2) D. Kefa and Dishes 状压dp

    题目链接: 题目 D. Kefa and Dishes time limit per test:2 seconds memory limit per test:256 megabytes 问题描述 W ...

  8. Webbrowser 取消下载提示框

    在使用Webbrowser抓取网页信息时,碰到需要下载文件,这时需要用户介入操作,如何避免: 首先引进 [DllImport("urlmon.dll", CharSet = Cha ...

  9. Kafka之ReplicaManager(1)

    基于Kafka 0.9.0版 ReplicaManager需要做什么 Replicated Logs Kafka的partition可以看成是一个replicated log, 每个replica就是 ...

  10. Using command-line Subversion to access project source files

    Help index About source code version control with Software Configuration Management (Subversion) Usi ...