有没有办法为报表中的字段设置默认值?我在报告中有很多字符串字段,并希望它们在为空时显示“0,00”。
答案 0 :(得分:20)
假设字段名称为“value”,请在“文本字段表达式”中写入:
($F{value} != null) ? $F{value} : "0.00"
答案 1 :(得分:5)
您也可以选择"空白时为空白"如果你想要的话,在文本字段的属性中。其他选项更灵活,但这样做非常快捷方便。
答案 2 :(得分:4)
1)您可以缩短语法:
($F{field_name}) ? $F{field_name} : "0.00"
2)确保你的“else”数据与字段的值属于同一类,否则当它试图将数字强制转换为字符串等时你会遇到错误。这就像我开始时那样,我搞砸了。
答案 3 :(得分:0)
您是否尝试在文本字段中设置模式?
如果您使用的是iReport,可以在Text Field Properties
部分的文本字段属性中找到。
尝试###0.00
行以表示1234.56的内容,即使它为空,也始终显示0.00。
答案 4 :(得分:0)
这是最简单的方法是在数据源查询中使用数据库的Coalesce() or NVL()
函数来限制报表上的空数据。
但这取决于您是否被允许更改数据源查询。如果没有,那么您可以选择之前答案中提供的其他解决方案。