Clark.Pan 发表于 2023-9-4 18:11:11

GcExcel模板语言使用(二)

本帖最后由 Clark.Pan 于 2023-9-4 18:26 编辑

父子关系
模板功能提供表示父子关系结构的关键字C(context)通过关键字设置可以指定某个字段的父子关系。如下图所示:

ds.Name设置了C=A1表示ds.Name的父就是A1单元格的值也就是ds.Team。当模板填充的时候就会按照上述父子关系进行填充,有因为上一节讲过的分组关系,默认情况下G=M,填充结果中相同的内容会合并,结果会如下图所示:

父子关系填充的过程
父子关系在模板填充的过程如下所示,下图是设计好的父子关系模板:

在填充的过程中会先填充父级,子级会按照父级的填充关系进行复制,如下图所示:

之后会进行子级的填充,这个时候自己填充会按照父级的分组情况进行填充,完成最终的填充结果。

注意:
在填充扩展是是基于父子结构的最小矩形进行扩展,例如上图的实例,所示扩展的范围是A1:B3。基于上述规则,无法做到下图这样斜着铺数据的结果:


交叉表中的父子关系
为了支持交叉表这种复杂的报表,模板功能允许一个字段最多可以有两个父级。关系上表示用“*”关联,例如:C=A2*B1表示该字段有两个父级分别是A2和B1所在单元格的字段。
其中两个父级节点的扩展方向必须不同,一个是垂直扩展,叫做左父,一个水平扩展,叫做上父。



交叉表父子关系填充的过程
交叉表父子关系在模板填充的过程如下所示:

先纵向扩展并复制

再横向扩展复制

最终扩展子节点



页: [1]
查看完整版本: GcExcel模板语言使用(二)