作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
这是主要报告的代码:
<jasperReport>
<queryString><![CDATA[
select 1 as "RECORD", 'A' as "GROUP"
from dual
union all
select 2, 'A'
from dual
union all
select 3, 'B'
from dual
union all
select 4, 'B'
from dual]]>
</queryString>
<field name="RECORD" class="java.math.BigDecimal"/>
<field name="GROUP" class="java.lang.String"/>
<variable name="return" class="java.math.BigDecimal"/>
<group name="group">
<groupExpression><![CDATA[$F{GROUP}]]></groupExpression>
<groupFooter>
<band height="20">
<staticText>
<text><![CDATA[End of group ]]></text>
</staticText>
<textField>
<textFieldExpression><![CDATA[$F{GROUP}]]></textFieldExpression>
</textField>
<staticText>
<text><![CDATA[The sum of returned values for the group]]></text>
</staticText>
</band>
</groupFooter>
</group>
<detail>
<band height="20">
<staticText>
<text><![CDATA[Record]]></text>
</staticText>
<textField>
<textFieldExpression><![CDATA[$F{RECORD}]]></textFieldExpression>
</textField>
<subreport>
<connectionExpression><![CDATA[$P{REPORT_CONNECTION}]]></connectionExpression>
<returnValue subreportVariable="return" toVariable="return"/>
<subreportExpression><![CDATA["subreport.jasper"]]></subreportExpression>
</subreport>
<staticText>
<text><![CDATA[Subreport returned]]></text>
</staticText>
<textField evaluationTime="Band">
<textFieldExpression><![CDATA[$V{return}]]></textFieldExpression>
</textField>
</band>
</detail>
</jasperReport>
和子报表的代码:
<jasperReport>
<queryString>
<![CDATA[select * from dual]]>
</queryString>
<field name="DUMMY" class="java.lang.String"/>
<variable name="return" class="java.math.BigDecimal">
<variableExpression><![CDATA[new BigDecimal(Math.random())]]></variableExpression>
</variable>
</jasperReport>
我想要的是在组带(页眉或页脚)中打印组返回值的总和。
我知道不可能在变量中累积值,因为变量的计算总是在子报表返回结果之前发生。所以我会总结一堆空值。
我见过有人说要在子报表之后的带中的文本字段中求和,但从未成功过。
最佳答案
从子报表返回值时,您可以指定计算类型(如求和)。因此,如果您想对每个组的返回值求和,则必须执行如下操作:
<variable name="returnSum" class="java.math.BigDecimal" calculation="System" resetType="Group" resetGroup="group"/>
...
<returnValue subreportVariable="return" toVariable="returnSum" calculation="Sum"/>
关于jasper-reports - 如何对放置在详细信息带中的子报表返回的值求和?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39338449/
我是一名优秀的程序员,十分优秀!