JasperReport报表打印
程序员文章站
2024-02-24 12:58:16
...
使用iReport设计好了之后,点击一下“Preview”按钮。如果底部边界超出的话,会有警告提示出现。
如果不够长度的话,可以把长度设置长一些,可以设置page height的数值,A4纸张最多设置为1000。宽度设定为595。
iReprot可以设置报表的Print When Expression的属性,则在这个条件不成立的时候,不会显示出来。
iReprot中关于列表换行的处理:
在iReport中,使用\n来换行。如果我们打印表格数据的话,那么就使用这个来换行拉。
在设定值的时候,比如我们可以把每行数据使用 "|" 分割 (符号自定)
int i = 0;
List insureList = new ArrayList();
while (it.hasNext()) {
TPolicyInsurant insure = (TPolicyInsurant)it.next();
//去重复代码
if(insureList.contains(insure.getId().getInsurantNo())){
continue;
}else{
insureList.add(insure.getId().getInsurantNo());
}
i = i + 1;
if (StringUtils.isNotBlank(insure.getCerc())) {
// 证件号码
if (i > 1) {
insureCercT = insureCercT + "|" + insure.getCerc();
} else {
insureCercT = insure.getCerc();
}
}
}
在iReport中,设定字段的Text Field Expression 属性, 把数据按照特定的符号进行换行操作,本环境中,使用 "|" 来作为换行标志。
"".equals($F{insureNo})?"":$F{insureNo}.replaceAll("\\|","\n")