Tôi có một Tiêu đề ban nhạc với một Text Field chứa một tính Biến$V{avg_perc}
. Các Text Field có evaluationTime thiết lập để Báo cáo, tương tự cho các BiếnresetType. Bây giờ tôi đang cố gắng để thiết lập màu nền của lĩnh vực này với một Conditional Phong cách nhưng tôi tiếp tục nhận được một thông báo lỗi nói cái gì đó như:Sử dụng các biến trong điều kiện Phong cách
Invalid expression: !Double.isNaN($V{avg_perc}) && $V{avg_perc} >= 0.8
tôi đang làm chính xác những điều tương tự với cùng Kiểu có điều kiện trong Chân trang cột và nó hoạt động mà không có bất kỳ sự cố nào, ngay cả khi tôi đặt assessmentTime cho trường này thành Báo cáo quá.
Sau khi xóa !Double.isNaN($V{avg_perc})
Tôi không gặp lỗi nữa nhưng biểu thức vẫn không hoạt động. Trường của tôi giữ màu đỏ là màu cơ bản khi không có điều kiện nào hợp lệ, bất kể giá trị nào $V{avg_perc}
có. Tuy nhiên, nó vẫn hoạt động trong Chân trang Cột. Đây là phong cách của tôi:
<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>
Fields đã qua sử dụng và biến cho việc này:
<field name="perc" class="java.lang.Double"/>
<variable name="avg_perc" class="java.lang.Double" calculation="Average">
<variableExpression><![CDATA[$F{perc}]]></variableExpression>
</variable>
Bất kỳ ý tưởng làm thế nào để điều này để làm việc? Tôi đang sử dụng JasperReports và iReport trong phiên bản 3.7.4.
* iReport của bạn là gì * Cài đặt thuộc tính này: *** org.eclipse.jdt.core.compiler.source ***, *** org.eclipse.jdt.core.compiler.tuân thủ ***, *** org.eclipse.jdt.core.compiler.codegen.TargetPlatform ***? –
1.5 cho tất cả chúng – YingYang
Bạn có thể đăng định nghĩa biến *** avg_perc *** không? BTW, biểu thức '! Double.isNaN ($ F {avg_perc}) && $ F {avg_perc}> = 0.8' phù hợp với tôi - Tôi đã thay đổi biến trên trường. –