小技巧
此次全基于Jaspersoft Studio进行操作
1.设置report页面
比如我想只弄Summary这一个band
但是内容很多,需要更多空间
所以在对应的band设置
当我输入较大的值后,该报表会自动给我修改一个值
这是为啥呢?若我感觉不够还想调大高度和宽度怎么办?
Summary最大高度801的原因
于是我把报表属性搞了一下,高度1500 宽度1000
宽度倒是生效了,但高度为何不变?
因为band还是原来的高度
将此修改即可~
2 当前页数和总页数
虽然这两个参数名字一样
但是有一个地方不一样
3 边框设置
4 关于选择变量的控制
演示
其实,我这里用了两个变量
判断两个的用boolean即可,三个及其以上的用其他type
我这里是battle(boolean),type(String)
第一行写法
是:
$P{battle} ? “√” : “”
否:
!$P{battle} ? “√” : “”
第二行写法:只举例一个,其他类似
火:“火”.equals($P{type}) ? “√” : “”
然后Preview
填写之后,就是演示的效果了
当然要注意中文的不能用英文字体~
5 detail 和 column footer中间有空白
本来设计起来是这样
但Preview后
需要在报表属性设置(其他属性也可设置,看着翻译就行~)
再次Preview
6 关于null显示的问题
有没有遇到过,如果只写个变量,啥都没填充的话会出现null字样
比如下图
方法一:写表达式,相信这个你们都会~我就不演示了
方法二:点击这个框框属性
显示
这样就避免烦人的null啦~
7 关于格子如何多行输入
换行 shift+enter
我换行后输入一些内容,可能会出现莫名其妙的bug(有概率会出现),所以最好在这里设置一下
(若有补充的再写哈~)
各种bug
报表编译错误
1 语法错误
按照提示,我们看Source的第19行
这里明显是写错了,修改即可
2 格子超界
有时候有很多格子,这种情况就不容易看出
编译后
3 Document is Empty
2023-02-15 补充
发现同事刚新建的时候会报如下错误
此时需要在这个位置设置即可~
还有bug的话这里会补充
java代码运行错误
编译成功jasper,但在java导出中报错
1 类型转换错误
报表里的变量apple是boolean类型
但我java放的是String类型
结果…
所以类型要一致
这种错误还有其他可能:
列名不对应等等之类的,现在就是想不起来了o(╥﹏╥)o
2 莫名其妙的bug
错误消息
Error evaluating expression : Source text :
咱也不知道咋回事,这回列名都没有了
多了这一行描述,把这行删掉即可
但是吧,有时候有这行又可以…就是不知道为啥
还有bug的话会在这里补充
项目地址:https://gitee.com/copaa/jasperdemo
Jasper(1)——入门
Jasper(2)——简单使用导出PDF报表
Jasper(3)——制作图表报表
Jasper(4)——制作分组报表
Jasper(5)——制作父子报表