我们正在使用jasper报告。
对于报告中的一个字段,我们设置了公式,就像rate1字段的值为null,然后在报告中显示" - " ,否则格式rate1
值<=> ## 0.0000 。
$ F {rate1}?新的DecimalFormat(&#34; ## 0.0000&#34;)。format(new 的BigDecimal(&#34;&#34 + $ F {RATE1})):&#34; - &#34;
但如果rate1
的值为0,那么它还会显示&#34; - &#34; 而不是 0.0000
有什么问题?
答案 0 :(得分:0)
您需要将其更改为以下内容。
$F{rate1} != null ? new DecimalFormat("##0.0000").format(new BigDecimal(""+$F{rate1})):"-"
要解释一下,我还没有检查JasperReports并且没有立即测试的设置。 但在C中,零被视为假,而非零值被视为真。
在解析和执行报告的某个地方,可能正在发生,这可能是正在发生的情况。您最好与社区确认此事。