我有一个提供数据表的报告。到目前为止,该报告效果很好。
现在我需要根据它们的内容值对一些单元格进行着色。
我曾经在文本字段表达式中包含配色方案,例如:
($F{MyBooleanValue}==true)?"<style backcolor='green'>PASS</style>":"<style backcolor='red'>FAIL</style>"
这行得通,但它很脏,管理和重用是地狱。
所以我转向了条件格式功能。我定义了一个名为Colourised的基础样式。然后是两个非常基本的条件样式:
Colourised:
opaque = true
pass:
opaque = true
Condition Expression = "true"
Backcolor = [51,255,51]
fail:
opaque = true
Condition Expression = "false"
Backcolor = [255,102,102]
这通常应该将单元格的背景颜色更改为绿色(独立于单元格值)。
现在我尝试使用以下属性在我的单元格上使用这种格式,但单元格仍然是白色的。
MyCell:
opaque = true
Text Field Expression = "$F{MyBooleanValue}"
Style = "Colourised"
我还设置了评估属性
<property name="net.sf.jasperreports.style.evaluation.time.enabled" value="true"/>
有什么提示吗?有什么我忽略的吗?