覆盖
在某些情况下,需要定义一个 TGKML 脚本,其中输出科目在给定维度上具有特定值。这需要覆盖的概念,它允许指定要赋给给定维度的固定值(也可以为 NULL)。这样,系统首先按此覆盖值过滤删除数据库上的数据,然后保存数据,并将定义了覆盖的维度设置为脚本输出部分中指定的固定值。
场景和期间是唯一不能定义覆盖的维度。
Tagetik 允许
- 覆盖维度的值。[LO].[X00000](Dest2.[D11]) :=...
在这种情况下,系统将脚本结果写入科目 X00000 和自定义维度 2 的元素 D11 的原始数据上;
- 将维度的值覆盖为 null。[LO].[X00000](Dest2.Null) :=...
在这种情况下,系统将脚本结果写入科目 X00000 和自定义维度 2 的元素
- 覆盖层次节点上的值。[LO].[X00000](Dest2.[01|$]) :=...
在这种情况下,系统将脚本结果写入科目 X00000 的原始数据上,以及与被覆盖节点(即代码为 01 的层次的节点 $)相关的自定义维度 2 的所有元素上;
- 覆盖输入过滤器中定义的同一元素。[LO].[X00000](Entity.ForceOnFilter) :=...
- 使用 Ancestor 和 Parent 实用程序定义覆盖。
- [LO].[X00000](Dest2.Parent([01]) :=...
在这种情况下,系统在逐元素计算输入后,将与层次 01 中同一父节点相关的元素结果相加,并将结果写入为该节点定义的引用元素上
- [LO].[X00000](Dest2.Ancestor([01],3) :=...
在这种情况下,系统在逐元素计算输入后,将与层次 01 中同一 3 级父节点相关的元素结果相加,并将结果写入为该节点定义的引用元素上。