我想使用报表查询的结果在变量中计算一次字符串(基本连接),然后将其提交给我的子报表。
但目前按此顺序计算(假设操作A是我的变量计算,操作B是我的子报告调用):
A B A B A B ......
我正在寻找的是A A A ... B B B(这里每个B都有参数A的最后一次计算。)
是否有解决方案可以解决我的问题(我猜这是一个计算时间问题)?
感谢。
答案 0 :(得分:2)
要更改计算变量的时间,您可以使用resetType
和incrementType
属性。
如果您希望仅计算一次(在报告开头),请设置incrementType="Report"
。您还必须将variableExpression
更改为initialValueExpression
。
示例:
<variable name="var1" class="java.lang.String" incrementType="Report">
<initialValueExpression><![CDATA[$F{foo}+$F{bar}]]></initialValueExpression>
</variable>