【Luck-Report】报表计算模型

导航:LuckReport专栏
一、快速了解
项目简介
Luck-Report 是一款基于开源项目 UReport2 重构的 Java 高性能报表引擎,通过迭代单元格可以实现任意复杂的中国式报表。相较于 UReport2,Luck-Report 在技术架构上进行了全新升级,后端基于 SpringBoot 框架开发、前端采用 Vue 框架构建,技术选型贴合当下主流项目开发标准,可精准适配各类实际开发需求。
Luck-Report 提供了全新的基于网页的报表设计器,可以在 Chrome、Firefox、Edge 等各种主流浏览器运行(IE 浏览器除外)。使用 Luck-Report,打开浏览器即可完成各种复杂报表的设计制作。
Luck-Report 基于 Apache-2.0 开源协议开源
在线体验
- 体验地址:https://www.quzhe.top/luck-report/report/designer
- 源码地址:https://gitee.com/LuckyPools/luck-report
- 文档地址:https://www.quzhe.top/luck-report-blog/report
二、报表计算模型
Luck-Report 报表计算模型基于单元格之间的依赖关系,通过父格与子格的展开机制实现复杂报表的动态展示。理解这一计算模型是开发报表的前提。
# 单元格父格
单元格之间存在依赖关系,对于任意一个单元格都可以设置它的左父格与上父格。
# 父格类型
- 左父格:单元格左侧与其位于同一行的父格
- 上父格:单元格上方与其位于同一列的父格
# 默认父格规则
- 左父格默认为最近左边与其位于同一行的单元格
- 上父格默认为最近上方与其位于同一列的单元格
- 位于第一行的单元格默认没有上父格
- 位于第一列的单元格默认没有左父格
# 配置步骤
-
打开 Luck-Report 报表设计器,选中任意单元格

-
在属性面板中查看或修改默认上父格或左父格
-
手动更改左父格或上父格以满足业务需求
# 单元格展开机制
单元格在绑定数据集中某个字段时,如果这个字段有一条以上的数据,那么单元格就可以展开以显示这些数据。
# 父格展开规则
- 父格展开时会带动子格一起展开
- 父格向下展开,则带其下所有子格及子格的子格一起向下展开
- 如果子格中绑定的数据集与父格中数据集同属一个,则子格中的数据将受父格限制
- 子格绑定的数据集字段数据在展开时,同样也会带动其下子格一起展开
- 当前子格的父格如与子格处于同一行或列,则会将父格拉大
# 应用场景
利用单元格展开迭代的特性,可以制作出各种复杂的报表样式,包括但不限于:
- 分组汇总报表
- 多层级数据展示
- 动态行列扩展
- 嵌套数据结构展示
关于报表计算模型的详细介绍,可参照 ureport2 视频教程,视频教程中有大量例子以描述这种迭代算法特点。
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐


所有评论(0)