码迷,mamicode.com
首页 > Web开发 > 详细

用Jasper report来实现交叉报表的增长率计算

时间:2015-06-30 10:28:38      阅读:154      评论:0      收藏:0      [点我收藏+]

标签:jasper report   交叉报表   增长率   集算器   代码   

        来源:     http://community.jaspersoft.com/questions/847490/how-get-annual-growth-rate-crosstab

        交叉表的每一列都是动态生成的,进行列间计算时需要动态引用,用Jasper脚本实现此类需求有一定难度,用集算器在数据准备阶段实现则相对简单,下面用例子来说明。

        数据库表store存储着多种产品在2014、2015年的销售量,需要用交叉表呈现每种产品每年的销售量,并计算出各产品的年增长率。部分源数据如下:

技术分享

        集算器代码:

技术分享

         A1:取出store表的记录。

         A2:追加各产品的年增长率。group按产品分组,run对每组数据依次计算,record追加记录,~(i)表示当前组中的第i条记录。A2的计算结果如下:

技术分享

         A3:将计算结果返回给报表。集算器对外提供JDBC接口,报表工具会将集算器识别为普通数据库。

 

        用Jasper设计最简单的交叉表:

技术分享

         预览后可以看到报表结果:

技术分享

版权声明:本文为博主原创文章,未经博主允许不得转载。

用Jasper report来实现交叉报表的增长率计算

标签:jasper report   交叉报表   增长率   集算器   代码   

原文地址:http://blog.csdn.net/u012388497/article/details/46691405

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!