Jasper reports 如何根据总和计算行的百分比?

Jasper reports 如何根据总和计算行的百分比?,jasper-reports,percentage,Jasper Reports,Percentage,价格由$F{Price}表示,我创建了一个变量,将每个项目的价格相加,得到总价$V{total_Price},两者都是java.Math.BigDecimal 我读了一些帖子,建议将总计文本字段的评估时间属性更改为自动,我已经这样做了,但是百分比是根据每个项目的累积总和计算的,因此我得到第一个项目的百分比为100,依此类推。在评估每个项目的百分比时,我如何一次获得总价 是的,您很接近,应该在百分比文本字段中使用auto 据我所知,你有这个变量,总结一下价格 <variable name="

价格由
$F{Price}
表示,我创建了一个变量,将每个项目的价格相加,得到总价
$V{total_Price}
,两者都是
java.Math.BigDecimal

我读了一些帖子,建议将总计
文本字段的
评估时间
属性更改为
自动
,我已经这样做了,但是百分比是根据每个项目的累积总和计算的,因此我得到第一个项目的百分比为100,依此类推。在评估每个项目的百分比时,我如何一次获得总价


是的,您很接近,应该在百分比文本字段中使用auto

据我所知,你有这个变量,总结一下价格

<variable name="total_price" class="java.math.BigDecimal" calculation="Sum">
    <variableExpression><![CDATA[$F{price}]]></variableExpression>
</variable>
evaluationTime=“Auto”
-我非常喜欢这种合法的“黑客”。在地图上使用黑客真是太疯狂了……)
<textField evaluationTime="Auto" pattern="#,##0.00 %">
    <reportElement x="200" y="0" width="100" height="20" uuid="e88223c7-12b6-401d-80b7-6c8341773027"/>
    <textElement textAlignment="Right" verticalAlignment="Middle"/>
    <textFieldExpression><![CDATA[$F{price}.doubleValue()/$V{total_price}.doubleValue()]]></textFieldExpression>
</textField>