成本计算逻辑

1.产品成本计算规则

产品成本计算方法:移动加权平均法
存货的单位成本 =(库存原有存货的总成本+本次进货的成本)/(原有库存存货总数量+本次进货数量)
发出存货的成本 = 本次发出存货的数量 * 本次发货前存货的单位成本

每个单据都有不同的时间类型数据,如出库时间、入库时间、成本调整时间等,我们将这类时间成为“业务的发生时间”,而表单创建时间、更新时间被称为表单的录入时间。
在成本计算使用的是业务时间而非录入时间。

注意事项:
①  若删除某一出入库单(其中不含有带批次号的产品),则从删除的那个出入库单业务时间之后的与成本相关的业务要全部重新移动加权平均计算(全局的产品成本&所选仓库对应的仓库成本改变)
 ②  若删除某一出入库单(其中含有带批次号的产品),则从删除的那个批次出入库单业务时间之后的产品成本要全部重新移动加权平均计算
产品成本核心逻辑:移动加权平均,产品成本一直是变动的动态值,其根据出入库单据与成本调整单的变化而变化。总之, 成本是动态的,并且有时效性,每个时刻的成本都是根据(业务时间)以往的出入库决定,未来的单据不会影响现在的成本。

2. 插单

(1)插单的概念

在某个产品或某些产品的最近的一条业务时间单据之前插入该产品的出入库单据、盘点单、调拨单、成本调整单和装配单据,从而导致插入的那张单据的业务时间之后的所有单据成本全部会被重新计算。
例如:
2022年5月16日上午10点,当前“我的”仓库中有10箱苹果,成本为100元/箱。
2022年5月16日上午11点,建立销售出库单,出库了2箱苹果,成本为100元/箱。
2022年5月16日下午,仓库管理员发现2022年3月10日入库了5箱苹果,成本为80元/箱,但因当时没有及时录入采购入库单。于是仓库管理员在2022年5月16日下午14点36分新建了一张采购入库单(如下),其中单据的入库日期(业务时间)记录为3月10日.

(2)插单之后会引发哪些问题?

1、根据流水我们可以看出,出库单在入库单之前,并且出库单之前的该仓库结余库存是0,就是说它之前没有结余了,它的当前成本就是0,所以出库成本是0;

2、还有种情况,之前有结余成本,或者之前有结存,例如之前成本很大,新增入库单成本却很小,会导致用户觉得成本差异很大,并且会让产品成本为负;

3、还有种情况是成本翻倍了,是因为之前有结余成本,因为插单的时候,出库成本是0,导致之前入库成本被遗留下来。

(3)插单的负面影响

1、出库成本异常,为0,为负,或很大;
2、流水数据看起来异常,结存是负数,有可能导致结余成本也是负的;
3、产品成本异常(变负,或者变大);
4、造成产品成本翻倍,多倍。

(4)解决方案

1、在没有完全理解插单逻辑的情况下不要进行插单操作,建议删除异常的出入库单重新新建;

2、用户自己如何排查自己是否触发插单呢?  建议先看看库存流水,分析看看该产品的相关单据日期之后是否存在其他库存流水。