行取数公式设置了,列取数公式也设置了,为什么会取不到数?
设置了行列公式,为什么取数不对?
这些都是在实际操作中遇到的常见问题。
要解决以上问题,我们先来看看如何根据报表模板的行列设置来确定报表取数的。以系统预置的费用明细表为例,如图的设置:
我们根据一行设置和对应的列来看,圈出来的地方,确定了报表取数的主体是经营单元,时间是当期,分析指标是费用类的经营科目。根据这三个维度,可以确定我们报表这一行列对应的是要取经营单元在当期的费用经营科目的值。取费用类经营科目的什么值呢?是计划数,抵消数,还是发生数?那么选择取数公式就是要告诉系统你需要取什么值。
清楚了以上原理之后,我们再来看问题和答案,就能更清晰的理解,为什么是这样的答案。
1、问:经营报表模板是否行列都需要设置公式?
答:系统控制了列设置底层维度项必须设置取数公式,而行设置不控制是否设置取数公式。
2、问:行取数公式设置了,列取数公式也设置了,为什么会取不到数?
答:当行列都设置了取数公式,目前系统默认以行设置的公式为准。所以可能是行公式导致取不到数,可以考虑是否行列都设置了公式,而行公式在此维度下取不到值。
如何理解这句话?我们举例来看,如果以上例子设置了行维度项取数公式为计划值,如下图
此时,系统取值的时候,根据设置,知道了用户想要查询的是经营单元在当期的费用科目的数据,然后需要什么数据呢?发现给了两个公式,一个是发生数,一个是计划数,那到底用户需要哪个数呢? 此时,我们必须告诉系统是要取哪个数,否则就取不到数了。所以我们让系统默认以行设置的公式为准。那么这个报表模版取数的时候,就会取经营单元在当期和上期,费用类科目的计划值,如果没有维护计划数,那报表就取不到数了。
3、问:设置了行列公式,为什么取数不对?
答:也可能是跟系统默认的以行设置的公式为准有关。比如上面的那个例子,系统最终会取当期和上期的计划数,但是用户可能需要的是当期的计划数和上期的发生数,所以就会觉得有疑问。
特别是当行计算项和列计算项碰到一起,且按行计算公式和列计算公式计算出来的数值不一致时,更是会疑惑。上面的例子中,增减列和合计行的计算项就是不同的计算公式。当碰到增减列和合计行相交的那个单元格取值时,实质上是按行设置的取数公式来算的。因为这个例子不管是按行取数公式还是按列取数公式来算,增减列和合计行相交的单元格取数都是一样的,所以没有特别的感知。但是当行列公式不同取到的值也不同的时候,就会疑惑取数为什么不对。