为什么表计算结果存在周期性的null值?

问题说明

在表格中,使用了表计算得到上月的销售额,但是在每年的第一个月,上月销售额会显示为null

问题定位

首先,查看表计算字段的公式

【上一月销售额】:LOOKUP(SUM([销售额]), -1) along [月] 

LOOKUP函数:返回目标行(指定为与当前行的相对偏移)中表达式的值

该字段的含义:在分区内,以字段【月】寻址,计算上一个月的销售额总和

当前的表格中,使用了两个维度字段,分别是【年】、【月】,当表计算字段只把【月】为寻址字段时,系统默认把【年】用作分区字段

因此,该表计算只会在【年】分区的各个组内执行,不会跨组执行,所以每年的第一个月无法获取上一年最后一个月的销售额总和,它们属于分区内不同的组

解决方案

将字段【年】设置为寻址字段,将计算字段改为:

【上一月销售额】:LOOKUP(SUM([销售额]), -1) along [年],[月] 

此时,所有数据在同一个组内,计算可以得到正确的结果