ITPub博客

首页 > IT职业 > IT职场 > Birt 中实现组内跨行计算

Birt 中实现组内跨行计算

原创 IT职场 作者:嘟嘟是只喵 时间:2019-11-05 10:50:34 0 删除 编辑

来源: https://forums.opentext.com/forums/discussion/61542/compare-current-row-with-previous-row-value#latest

Birt中想要实现组内跨行计算一般要用SQL窗口函数或报表脚本去实现,但代码比较复杂,这种情况下可以用SPL来辅助报表工具。下面以例子来说明。

本例中有三个字段,其中SELLERID是分组字段,DAY是需要进行比较的字段,字段类型为日期时间型。需要设计一张分组表,SELLERID是分组字段,明细字段是DAY, AMOUNT以及计算列SHIFTTIME, SHIFTTIME中存放着DAY和本组上一条记录中的DAY相差几天。源数据如下:

                                               undefined

用集算器进行数据整理:

image.png

将上边SPL代码保存为sales.dfx,然后引入到Birt报表中。Birt调用SPL请参考《 BIRT调用SPL脚本》。

第一步:添加集算器JDBC数据源。

undefined

第二步:创建数据集,编辑Query Text。

undefined

第三步:创建报表,报表设计如下:

undefined

第四步:WEB 预览,预览结果如下:

undefined


来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/31543054/viewspace-2662665/,如需转载,请注明出处,否则将追究法律责任。

上一篇: SPL 教案——程序
全部评论

注册时间:2018-06-20

  • 博文量
    127
  • 访问量
    71782