2015-11-27 10 views
0

我需要只显示如果价格值不为空的静态文本字段,我试图做到这一点:如何在Jasper Reports中测试null Double值?

<printWhenExpression> 
    <![CDATA[$F{price} != null]]> 
</printWhenExpression> 

但这不是作品,它总是与双精度值返回true,在一个字符串值,它工作。

编辑:代码开始工作,我会保持这一点,因为有帮助的答复。

+0

你还有这个问题吗? –

+0

不,谢谢你的帮助 – Claudinei

回答

1

这是真要是$F{price}null表达将返回false

也许你并不需要检查的是null,但它不是Double.NaN

<printWhenExpression> 
    <![CDATA[new Boolean($F{price} != null && !$F{price}.isNaN())]]> 
</printWhenExpression> 

我建议你输出的$F{price}的价值,了解它是什么......

注意:由于兼容性原因(碧玉报告v3),我使用了新的布尔(),这在碧玉报告中并不需要5,6版本

+0

我不知道为什么,但我的代码开始正常工作,无论如何。 – Claudinei

+0

太好了,考虑接受关闭问题的答案 –