[英]Jasper reports compile error for SUM function with spring mvc
I am using jasper reports to generate reports from my spring mvc application. 我正在使用jasper报告从我的spring mvc应用程序生成报告。
It works fine as long as I do not use any math functions in jasper report. 只要我在jasper报告中不使用任何数学函数,它就可以正常工作。 For example the SUM function in jasper reports gives me a compile time error on my application -
例如,碧玉报告中的SUM函数给我的应用程序产生了编译时错误-
1. The method SUM(int) is undefined for the type ContentUsageStatisticsReport_1426086372880_332015
value = SUM(((java.math.BigDecimal)field_cnt.getValue()).intValue()); //$JR_EXPR_ID=15$
Here is the field from jasper reports. 这是碧玉报告中的字段。
<textField>
<reportElement x="210" y="1" width="130" height="20" uuid="45fbed39-f63a-41ff-8ff1-88821aeefcd1"/>
<textFieldExpression><![CDATA[SUM($F{cnt}.intValue())]]></textFieldExpression>
</textField>
Does this mean that I cannot use Jasper functions in the report and the calculations must be done on server? 这是否意味着我无法在报表中使用Jasper函数,并且必须在服务器上进行计算? If so, then how do I calculate subtotals for each page of the report?.
如果是这样,那么如何计算报告每一页的小计?
I solved this problem by creating a variable that calculates the SUM of the required field - 我通过创建一个变量来解决此问题,该变量计算所需字段的总和-
<variable name="subtotal_of_cnt" class="java.math.BigDecimal" resetType="Group" resetGroup="isALUEmployee" calculation="Sum">
<variableExpression><![CDATA[$F{cnt}]]></variableExpression>
</variable>
and used it - 并使用它-
<textField>
<reportElement x="210" y="1" width="130" height="20" uuid="45fbed39-f63a-41ff-8ff1-88821aeefcd1"/>
<textFieldExpression><![CDATA[$V{subtotal_of_cnt}]]></textFieldExpression>
</textField>
This works because variables are evaluated after the report is compiled and populated. 之所以可行,是因为在编译和填充报表之后评估变量。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.