大家都知道,在SAP系统中,物料的价格控制有两种:标准成本(S)和移动平均价(V)。如果有人问你,选择标准成本有什么效果?我想很多人可能会脱口而出:选择标准成本后,物料的入库、出库都会按照一个既定的标准成本来计算库存移动的价值。
果真如此吗?
我们来看一个示例:假设某个物料几经移动后,当前在物料主数据中显示的信息如下:
那么,下次消耗1EA时,它是按照标准成本3.33移动的吗?
其实不然,我们假设当前的3EA库存分三次消耗,每次消耗1EA,如果每次都是消耗掉3.33的价值,那么,三次消耗后,物料A01的数量变为0,而库存价值还剩余0.01。这显然不符合业务逻辑——数量全部消耗完毕,其库存价值也应该消耗完毕。
为了符合业务逻辑,系统应该怎样表现呢?我们用以下表格来说明:
上表中,库存单价一列始终由系统根据当前价值和数量计算,并作为下一次的发货的单价。
也就是说,每次发货时,采用的是实时的库存单价,而非事先设定的标准成本。比较典型的就是以上的次序3(第二次发放1EA),并没有按照3.33来计算移动价值,而是按6.67/2=3.335来计算,计算完价值后,再保留两位小数四舍五入。这样,就确保了最后剩余数量和剩余价值都能同时为0。
所以,这里的发货价值,既不是简单的公式:
发货价值= 发货数量 * 标准成本
也不是:
发货价值 = 发货数量 * round(发货前剩余价值/发货前剩余数量,2)
准确地表示,应该写为:
发货价值= round(发货数量 * 发货前剩余价值/发货前剩余数量,2)
用语言综合表达,就是:选择标准成本后,物料的入库会按照既定的标准成本执行,而出库则取决于当前的“不舍入”的库存单价。
这也是为什么有时候我们入库时,系统采用一个库存价值,而冲销该物料凭证时,系统又使用另一个价值,结果在冲销凭证中,出现了差异科目(PRD-PRA科目的应用)。有关此问题,需要另一篇文档来说明了。
接下来我们来看移动平均价。怎么来理解移动平均价的应用?你可能会说:物料在每次入库时,根据当前的库存价值和库存数量形成最新的移动平均价;在出库时,系统会按照这个最新的移动平均价出库。
恭喜你,你又答错了!
在后半句上,表述不严谨:出库时,其实是按照“不舍入”的移动平均价来计算价值,而后再四舍五入为两位小数。它并不是使用我们在物料主数据上看到的保留两位小数的移动平均价直接计算。这一点上,和前面标准成本控制的逻辑相同,原因也相同。不再赘述。
在前半句上,有两个错误:第一,对于采购物料而言,发票校验也是可能更新移动平均价的;第二,物料出库也可能导致移动平均价的变化。第一个错误比较好理解,下面着重讲第二个错误。
我们仍然使用上面的案例来说明,只不过此次假设物料是使用移动平均价控制。
从这里我们可以看到,次序2(第一次消耗1EA时),由于库存单价变为了3.335,因此此时的移动平均价也发生了变化,变为3.34(因为要保留两位小数)。这说明,在出库时,系统并不只是被动地使用新的移动平均价,它同时还可能导致移动平均价的新变化。换句话说,移动平均价不只是在收货的时候得到更新,在发货时,也有可能得到更新。
基于这样的理解,我们再回过头来看SAP Library中关于移动平均价(moving average price)的定义:
A price that changes in consequence of goods movements and the entry of invoices, and which is used to valuate a material.
The moving average price is calculated by dividing the value of the material by the quantity of material in stock. It is automatically recalculated by the system after each goods movement or invoice entry.
不知道各位有没有注意到,这里提到的是goods movements and the entry of invoices,而没有局限于“收货”这一种情况。
所以,准确地讲,移动平均价的应用应该表述为:每次库存移动和发票校验时,会更新移动平均价;而“不舍入”的移动平均价会用于计算下次发货时的价值。
由此,我们不得不感慨,在SAP的理解和应用中,如果只是浮在表面,往往会得出错误的结论。
转载自小哈公社
链接://www.greatytc.com/p/02d134e447df