本帖最后由 Ellia.Duan 于 2022-11-18 12:05 编辑
在上篇文章中提到,模板分页功能可以让你依据记录数或者页面大小,为具有相同布局的报表中的工作表分页。例如,此功能有助于生成诸如商品订货单之类的报告,这些报告需要以固定格式显示,这篇文章我们将讲述一下,如何对表单数据进行分页。
首先先熟悉下模板结构,下面将标题行了解为页眉,小计理解为页脚。看下面四个场景中,如何对该表单进行分页。
案例 1、重复页眉或页脚
要实现重复页眉或者页脚,用到了RepeatWithGroup属性。
RepeatWithGroup属性是设置了单元格引用,设置该单元格及其子孙结点随指定单元格重复显示。
如下面的两种场景:重复页眉和重复页眉页脚。
- 1.1 重复页眉 :为页眉B5设置属性RepeatWithGroup=B6 即如果B6分页,页眉跟着一起出现,即重复页眉。
B4:{{ds.Company(R=B4:D8)}} B5:顾客{{(RepeatWithGroup=B6)}} 页面实现效果如下:
- 1.2 重复页眉和页脚 :为页脚B7设置属性RepeatWithGroup=B6 即如果B6分页,页脚跟着一起出现,即重复页脚,页眉同上。
B4:{{ds.customer(R=B4:D8,KeepTogether=Vertical)}} B5: 商品{{(RepeatWithGroup=B6)}} B7:Subtotal{{(RepeatWithGroup=B6)}} 最后实现效果如下:
案例 2、跨页合并单元格的重新输出值
如果想要实现跨页合并单元格的重新输出值可以用RepeatOutput属性:,其是布尔类型。 该值可以是 True 或 False(默认)。 设置当合并单元格跨页时,是否在每一页都显示值。如下设置了RepeatOutput=true即跨页合并单元格的重新输出值。
具体属性设置如下:
B4:{{ds.Company(R=B4:D8)}} B5:商品{{(RepeatWithGroup=B6)}} B6: {{ds.product(RepeatOutput=true)}}
实现效果如下:
案例 3、将公司放在一页中
如果想实现上述场景,可以用到KeepTogether属性。其是一个枚举类型。 该值可以是 Horizontal, Vertical, Both, None(默认)。 设置该单元格及其子孙结点在设置的纵向/横向上应尽可能保持在同一页。 如下为B4设置了KeepTogether=Vertical,即同一个公司在纵向上尽可能保持在同一页。 B4:{{ds.Company(R=B4:D8,KeepTogether=Vertical)}}
实现效果如下:
案例4、页脚与最后一行必须在一页
如果想实现上述场景,可以用到AttachTo属性,其是一个 单元格引用。设置该单元格必须与指定单元格同时出现。 如设置小计必须与商品在一页,则可以实现页脚与最后一行在同一行。 B4:{{ds.Company(R=B4:D8)}} B7:小计{{(AttachTo=B6)}}
实现效果如下:
|