gpt4 book ai didi

java - 使用 Excel 报告中的 DynamicJasper 在列页脚中添加自定义计算

转载 作者:行者123 更新时间:2023-12-01 12:48:32 25 4
gpt4 key购买 nike

我使用的是DynamicJasper版本4.0.2,并且我已经创建了Excel格式的报告。

该报告包含三列,例如 A、B 和 C。
在页脚中,我想要 A 列的总计,即 SUM(A) 和 B 列,即 SUM(B),而 C 列的总计=(SUM(B)/SUM(A))*100。

但是,我可以使用 drb.addGlobalFooterVariable(columnA, DJCalculation.SUM) 添加 A 列和 B 列的总计。和drb.addGlobalFooterVariable(columnB, DJCalculation.SUM) .

但是我无法按照上面解释的公式找到 C 列的解。

我用谷歌搜索,但没有得到任何相关的帖子。请帮助我。

最佳答案

我通过使用 Dynamic Jasper 中的 CustomExpression 类得到了解决方案。下面是一个示例,

     private AbstractColumn COLUMN_C;
DynamicReportBuilder drb = new DynamicReportBuilder();
COLUMN_C = ColumnBuilder.getNew().setColumnProperty("columnC",Double.class.getName()).setTitle("C").setHeaderStyle(headerStyle).setFixedWidth(false).setStyle(detailCurrencyStyle).setPattern("###0.00;-###0.00").build();
drb.addGlobalFooterVariable(COLUMN_C, new CustomExpression() {

@Override
public Object evaluate(Map fields, Map variables, Map parameters) {
double totalOfColumnC = 0.00;
totalOfColumnC = ( totalOfColumnB/ totalOfColumnA) * 100;
return totalOfColumnC;

}

@Override
public String getClassName() {
return Double.class.getName();
}
});

关于java - 使用 Excel 报告中的 DynamicJasper 在列页脚中添加自定义计算,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24450260/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com