我在 jrxml 文件中定义了一个布尔类型的参数。该参数的值来自我的 java 类(true/false)。如果值为 true,那么我不想显示该字段。我正在编写表达式如下。
<printWhenExpression><![CDATA[$P{flag}==false]]></printWhenExpression>
这个表达式有什么问题。这里我只在标志值为 false 时显示该字段。谁能告诉我。
我在 jrxml 文件中定义了一个布尔类型的参数。该参数的值来自我的 java 类(true/false)。如果值为 true,那么我不想显示该字段。我正在编写表达式如下。
<printWhenExpression><![CDATA[$P{flag}==false]]></printWhenExpression>
这个表达式有什么问题。这里我只在标志值为 false 时显示该字段。谁能告诉我。
在尝试了这里的其他 2 条建议之后,可能还有大约 30 条其他的东西(java 表达式杀死了我),我终于得到了以下工作。在我的示例中,如果 PRINT_INSTRUCTIONS 布尔参数为 TRUE,我不想打印特定的文本字段,除非它为 FALSE。
在 iReport 中它看起来像这样:
new Boolean($P{PRINT_INSTRUCTIONS}.booleanValue() == false)
在 XML 中,它看起来像这样:
<printWhenExpression><![CDATA[new Boolean($P{PRINT_INSTRUCTIONS}.booleanValue() == false)]]></printWhenExpression>
试试这样:
<printWhenExpression><![CDATA[$P{flag}==Boolean.FALSE]]></printWhenExpression>
这是我正在工作的表达式:
<printWhenExpression><![CDATA[$V{REPORT_COUNT}.intValue() % 2 == 0 ? Boolean.TRUE : Boolean.FALSE]]></printWhenExpression>