Odoo存货核算问题分析

Odoo存货核算问题及解决方法


肖相扶

Odoo存货核算问题分析

一、存货核算一般原理

1)存货核算的基本原理是,每一次入库,系统记录该批次货物入库的成本。出库时候,系统找出该批货物的入库成本,作为其出库成本。
2)入库的情况,有采购入库,加工入库,其他入库。采购入库,其入库成本是采购价格(不含税),加工入库,其入库成本需要经过原料及制造费用按一定方法分摊计算而得。其他入库,成本一般不发生改变。
3)出库的情况,有销售出库,加工领料出库,其他出库。不管是哪种出库,只要能找到对应的入库批次,自然就可以得到其出库成本。问题在于,货物每天进进出出,如何找到其对应的入库批次?
4)运费等成本分摊的情况,按税法规定,货物采购中,运费、保险费等可以分摊进入该批次货物成本。
5)入库成本调整的情况,当初入库时候价格记录错误等原因,会引发入库成本调整的需求。

二、存货成本计算方法

1)移动加权平均法
每次入库,系统重新计算存货价格。举例如下,仓库中有A货品 100件,单价  10元, 本次新入库50件,入库单价12元,则入库后,系统重新计算A货品的存货价格:
    新价格 = (100件 * 10元 + 50件 * 12元)/(100件 + 50件) = 10.67元

2)全月一次加权平均法
月末时候,汇总本月采购货物的总成本,以及总数量,二者相除,得出存货价格。本月出库的货物,都以月末算出的成本作为出库成本。

3)先进先出法
系统记录每一批次入库的货物成本,汇总仓库中所有批次的价格 * 数量,即得当前存货价值。出库时候,加到先入库的先出库(先进先出),按此原则将出库批次对应到入库批次,从而取得出库成本。

三、Odoo存货成本问题

1)Odoo支持的存货价值计算方法有 计划法(标准成本法),移动加权平均法,先进先出法,后进先出法。Odoo不支持全月一次加权平均法,中国会计普遍接受的是全月一次加权平均法。
2)Odoo计算入库成本时候,它是以PO上的单价作为入库成本。更准确的算法,应该以供应商发票上的价格作为入库成本。如果PO价格和发票价格经常差异,Odoo的做法是有问题的。
3)存货成本无法调整,如果PO价格错误,一旦该PO入库完毕,系统无法调整该批货物入库成本(如果尚未入库,可以取消入库单,取消PO,重新修改PO,再确认PO)。

四、Odoo存货核算问题解决方法

【存货成本调整】
1)新增“存货成本调整单”,选择商品、选择入库明细行(Stock Move),系统自动带出调整前单价。
2)填写调整原因,调整后单价。确认调整,系统自动查找该入库明细行,及其对应的Quants,以及从该Quants分出的出库Stock Move及Quants,更新其价格为调整后价格。
3)如果该入库明细行,或者其分出的出库明细行,已经核算了会计分录,则报错,不可以调整(必须先取消会计分录,再调整)。

【全月一次加权平均成本计算方法】
1)新增菜单“成本计算(全月平均)”,点击菜单,弹出Wizard,选择会计期间。
2)系统查找选定会计期间的入库的所有Stock Move,按产品汇总其入库单价及数量
3)逐个产品求得其当期成本价格,更新改产品的standard_price
4)对当期每一个入库Stock Move,用新价格更新Stock Move价格,及对应Quants价格,以及分出的出库Stock Move、Quants价格。
5)如果当期的入库明细行,或者其分出的出库明细行,已经核算了会计分录,则报错,不可以计算(必须先取消会计分录,再计算)。

【入库价格修改】
1)如果采购下单时候不能确定入库价格(如一些时鲜商品,必须送货时候确定价格),则需要入库时候填写入库价格
2)系统实现方法,入库单明细行上显示Stock Move的price_unit字段,允许入库时候手工填写入库单价。