ERP-库存成本均价计算逻辑(负库存及库存为0时处理方式)

    1.当出入库前后数量大于0时:

    成本均价=(初始金额 + 本次发生金额)/( 初始数量+ 本次发生数量)

    2.当出入库后,数量为0时:

    成本均价显示最后一次出入库的发生价,成本总价为0,若最后一次出入库后,数量为0,成本总价有结余,强制计算为0,差价计入利润表中的商品报损报溢

    3.当出库后,数量为负数时:

    正数部分的出库按照原来的成本均价计算,负数部分的出库按照该仓库的最近采购价格出库(如果没有最近采购价格,则取参考进价;参考进价取不到,则 为0)

    4.当入库后,数量为负数时:

    a) 采购入库:用采购单据的价格

    b) 销售退货入库:不关联单据,取该仓库的最近采购入库价格(如果没有最近采购价格,则取参考进价;参考进价取不到,则为0);关联单据,用关联订 单的出库单的成本价入库;

    c) 调拨入库:用关联的调拨出库单的成本均价;

    d) 其他入库:(不管有没有关联预约单)取出库单建立时候的该仓库的最近采购价格入库(如果没有最近采购价格,则取参考进价;参考进价取不到,则为 0);

    5.调拨出库单和其他出库单取成本价的修改:

    取出库单建立时库存状况的成本价;比如8.10做的库存调拨单(实际调拨),8.11库存变了,那么8.12去做关联这个调拨单的调拨出库单时,取的成本价是建 立调拨出库单时刻的成本价;

    6.修改单据(线下出库单,销售退货入库单):

    a)修改出库单据使实际多出库了:多出库的商品成本价用当前仓库的成本价,如果数量为负数,参考第3条的规则;

    修改出库单据使实际少出库了:少出库的商品成本价用当时单据建立时的成本价入库回去;

    比如:8.10,有一笔出库单,商品A,数量10,成本价5;

    到了8.11,库存状况的成本价变成10了;

    然后在8.12,修改这笔出库单,改成数量12,那么多出来的2个商品A的出库成本就是210=20;改成数量8,那么少了的2个商品A的入库成本就是5, 25=10;

    b)修改入库单据使实际多入库了:多入库的商品成本价用当前仓库的成本价入,如果数量为负数,参考第3条的规则;

    修改入库单据使实际少入库了:少入库的商品成本价用当时单据建立时的成本价出库;

    比如:8.10,有一笔销售退货入库单,商品A,数量10,成本价5;

    到了8.11,库存状况的成本价变成10了;

    然后在8.12,修改这笔入库单,改成数量12,那么多出来的2个商品A的入库成本就是210=20;改成数量8,那么少了的2个商品A的出库成本就是5, 25=10;

    7.对于之前的库存为0库存总价不为0的数据,不做改动,但是库存变化后,按照最新的逻辑处理

    PS:库存为零调成本价是没有任何作用的。由0盘盈或者盘亏会先参考采购入库的采购单价,找不到取商品信息中的参考价。