計算された変数を含むテキストフィールドを持つタイトルバンドがあります。テキストフィールドのevaluationTimeはReportに設定されています。これは、変数resetTypeの場合と同じです。このフィールドの背景色を条件付きスタイルで設定しようとしていますが、次のようなエラーメッセージが表示され続けます。 $V{avg_perc}
Invalid expression: !Double.isNaN($V{avg_perc}) && $V{avg_perc} >= 0.8
列フッターで同じ条件付きスタイルを使用してまったく同じことを行っています。このフィールドのevaluationTimeをReportに設定しても、問題なく機能します。
削除した後!Double.isNaN($V{avg_perc})
、エラーは発生しなくなりましたが、式は機能しません。どの値がどの値であっても、どの条件も有効でない場合、私のフィールドは基本色である赤のままです$V{avg_perc}
。ただし、 ColumnFooterでは引き続き機能します。これが私のスタイルです:
<style name="avg_color" mode="Opaque" backcolor="#FF0000" pdfFontName="Helvetica-Bold">
<conditionalStyle>
<conditionExpression><![CDATA[$V{avg_perc} >= 0.8]]></conditionExpression>
<style backcolor="#008000"/>
</conditionalStyle>
<conditionalStyle>
<conditionExpression><![CDATA[$V{avg_perc} >= 0.6 && $V{avg_perc} < 0.8]]></conditionExpression>
<style backcolor="#FFCC00"/>
</conditionalStyle>
</style>
このために使用されるフィールドと変数:
<field name="perc" class="java.lang.Double"/>
<variable name="avg_perc" class="java.lang.Double" calculation="Average">
<variableExpression><![CDATA[$F{perc}]]></variableExpression>
</variable>
これを機能させる方法はありますか?バージョン3.7.4でJasperReportsとiReportを使用しています。