我正在使用 iReport 4.7.1 。该报告包含一个静态字段"日期验证:"和一个文本字段" $ P {DATE_VALIDATED}"我可以确认的是""空。我想隐藏"日期验证:" $ P为空时的文字。
到目前为止,我已尝试过以下内容:
我在静态字段的属性(表达式时打印)中添加了以下行,该字段具有静态文本"日期验证:" :
$P{DATE_VALIDATED} == "" ? new Boolean(false) : new Boolean(true)
我还尝试了以下变体:
$P{DATE_VALIDATED} == "" ? "" : "Date Validated:"
$P{DATE_VALIDATED} == "" ? Boolean.FALSE : Boolean.TRUE
但是静态领域仍在出现。我还尝试使用Boolean.FALSE来完全隐藏它以进行测试和查看,但文本仍在显示。
答案 0 :(得分:1)
条件
时,您可以在打印时尝试以下表达式!$F{DATE_VALIDATED}.isEmpty() && $F{DATE_VALIDATED} != null && $F{DATE_VALIDATED} != ""
希望这可以解决你的问题。
答案 1 :(得分:1)
感谢viki888的快速回答,这是我想要做的改进,我会投票,但我的情况中的问题是我没有在保存后编译报告,因为我没有'知道我不得不在设计师窗口的工具栏上显示编译报告... :)
,除了工具栏上的小小锤子外没有明显的选项/菜单项或图标所以在我的案例中编译报告为我解决了问题。和
$ P {DATE_VALIDATED} ==“”? Boolean.FALSE:Boolean.TRUE
工作正常。