报表计算模型
Luck-Report 报表计算模型基于单元格之间的依赖关系,通过父格与子格的展开机制实现复杂报表的动态展示。理解这一计算模型是开发报表的前提。
单元格父格
单元格之间存在依赖关系,对于任意一个单元格都可以设置它的左父格与上父格。
父格类型
- 左父格:单元格左侧与其位于同一行的父格
- 上父格:单元格上方与其位于同一列的父格
默认父格规则
- 左父格默认为最近左边与其位于同一行的单元格
- 上父格默认为最近上方与其位于同一列的单元格
- 位于第一行的单元格默认没有上父格
- 位于第一列的单元格默认没有左父格
配置步骤
- 打开 Luck-Report 报表设计器,选中任意单元格

- 在属性面板中查看或修改默认上父格或左父格
- 手动更改左父格或上父格以满足业务需求
单元格展开机制
单元格在绑定数据集中某个字段时,如果这个字段有一条以上的数据,那么单元格就可以展开以显示这些数据。
父格展开规则
- 父格展开时会带动子格一起展开
- 父格向下展开,则带其下所有子格及子格的子格一起向下展开
- 如果子格中绑定的数据集与父格中数据集同属一个,则子格中的数据将受父格限制
- 子格绑定的数据集字段数据在展开时,同样也会带动其下子格一起展开
- 当前子格的父格如与子格处于同一行或列,则会将父格拉大
应用场景
利用单元格展开迭代的特性,可以制作出各种复杂的报表样式,包括但不限于:
- 分组汇总报表
- 多层级数据展示
- 动态行列扩展
- 嵌套数据结构展示
关于报表计算模型的详细介绍,可参照 ureport2 视频教程,视频教程中有大量例子以描述这种迭代算法特点。