Odoo中文社区可以通过以下三个域名访问:shine-it.net , odoocn.org,odoo.net.cn

原论坛用户的基本信息和发帖这里都予以保留,请注意:原论坛用户无需重新注册新用户,但是您的密码需要重置

开发人员可以登录gitter讨论组: http://gitter.im/odoo-china/Talk, 需要github账号

如果您登录系统碰到问题,请在微信公众号留言:

生产型企业原材料采购及入库的处理




  • 原材料采购有两种情况,一种是先收货,并按实际收货数量付款;一种是先付款,对方再发货。对于国内的供应商,通常都采用前者处理,但有些进口原材料,对方会要求先付款,或者预付部分款额,对方才会发货。两种情况在OpenERP中的处理方法有所不同。

    一、先收货再付款
    一般来说,仓库入库数量及财务付款金额都应该以采购单上的数量及金额为准。但实际中,由于下面一些常见原因,仓库入库数量及付款金额不同于采购单的现象经常发生:a) 质检不过关,实际入库数量少于采购数量;b) 质量等级偏低,折价接收;c) 供应商赠品,实际入库数量多于采购数量。
    为了处理采购数量及价格不同于入库数量及价格的问题,OpenERP中推荐如下处理:
    1)采购下单时候,不要基于采购单生成内部发票(Invoice),而应该选择基于入库数量开Invoice。系统默认是下单自动生成Invoice。
    2)原材料仓库应设置单独的Input Location,系统默认是Input Location等同于Stock Location。采购入库时候,先入库到Input Location,Input Location通过Location Chain关联到Stock Location,这样,原材料进入Input Location的同时,系统会自动产生到Stock Location的库间调拨单。

    3)质检后,再将库间调拨单上的数量实际入库。
    3.1)如果入库数量低于采购单上的数量,和采购部商量之后,有两种可能的处理:
      a) 要求供应商补足数量
        这种情况,处理调拨单时候,录入实际入库数量,系统会自动将调拨单分拆成两张,一张是已入库数量,另一张是不足数量,等待供应商补充货物之后再次入库。并基于Input Location的接收单开具发票。
      b)按不足量收货入库
        这种情况,要先修改调拨单上的数量为实际数量,再做入库处理。入库完毕后,对Input Location上的接收单做退货处理,退掉不足量部分(不作退货处理,则Input Location上记录的库存数量不正确)。并基于Input Location上的接收单开具发票,此时,由于接收单上的数量多于实际入库数量,系统生成的发票数量不正确,应手动修改发票上的数量。

    3.2)如果入库数量多于采购单上的数量,和采购部商量之后,也有三种可能的处理:
      a) 按采购单数量接收
        这种情况,处理调拨单时候,录入实际入库数量,并基于Input Location的接收单开具发票。
      b)作为供应商赠品接收
        这种情况,需要在调拨单上增加一个明细行,其源库位是“采购损益”,目标库位和原来的明细行一样,数量是赠品数量,之后再做入库处理。这样,系统会自动生成赠品的会计凭证:
        借:原材料
        贷:营业费用
        入库完毕后,基于Input Location上的接收单开具发票。
      c)增加货款后接收
        这种情况,要求采购部再开一张采购订单,仓库先按前一张订单数量接收,并开具发票,再按后一张订单接收多出部分,并开具发票。

    4)系统自动生成的会计凭证
    4.1)仓库处理调拨单时候,系统生成会计凭证如下:
        借:原材料
        贷:在途物资
        如果有赠品,系统另生成凭证如下
        借:原材料
        贷:营业费用
    4.2)财务确认采购发票时候,系统生成会计凭证如下:
        借:在途物资
            应交税费 - 增值税(进项税)
        贷:应付账款

    5)原材料相关会计科目的设置
    5.1)原材料的Product上的Inventory Valuation为Real Time (automated),这样入库、出库的时候,系统才会自动生成相应的会计科目。
    5.2)原材料的产品分类(Product Category)上,应设置如下:
        Stock Input Account:在途物资
        Stock Valuation Account:原材料
        Expense Account:在途物资
       
    6)仓库相关设置
    6.1) 系统自动生成入库、出库会计凭证的原理是:a) 从非Internal的Location移动到Internal的Location,系统自动生成凭证;b) 不同公司的Location间移动时候,不管是不是Internal的Location,总是生成凭证;c) 生成凭证时候,借目标Location的Stock Valuation Account (Incoming) ,贷源Location的Stock Valuation Account (Outgoing),如果Location上没有设置,则取Product上的Stock Input Account、Stock Valuation Account和Stock Output Account
    6.2)增加一个Input Location,其类型为Inventory,作为系统默认仓库的Input Location,并通过Location Chain关联到默认仓库的Stock Location。Input Location上设置会计科目:
        Stock Valuation Account (Incoming):在途物资
        Stock Valuation Account (Outgoing):在途物资
    6.3)增加一个“采购损溢”Location,其类型为Inventory,作为供应商赠品入库的源库位,“采购损溢”库位上设置会计科目:
        Stock Valuation Account (Incoming):营业费用
        Stock Valuation Account (Outgoing):营业费用


    二、先付款对方再发货
    这种情况,采购下单时候,需要基于采购订单开具发票,而不是收货入库时候根据收货数量开具发票。
    1)采购下单时候,系统自动生成采购发票,财务确认发票时候,系统自动生成如下会计凭证:
        借:在途物资
            应交税费 - 增值税(进项税)
        贷:应付账款

    2)仓库到货后,和前面的情况一样,先入质检库(Input Location),再将库间调拨单上的数量实际入库。
    2.1)如果入库数量低于采购单上的数量,和采购部商量之后,有两种可能的处理:
      a) 要求供应商补足数量
        这种情况,处理调拨单时候,录入实际入库数量,系统会自动将调拨单分拆成两张,一张是已入库数量,另一张是不足数量,等待供应商补充货物之后再次入库。因为系统在采购下单时候已经开机发票,因而此时不需要再开发票。
      b)按不足量收货入库
        这种情况,要先修改调拨单上的数量为实际数量,再做入库处理。入库完毕后,对Input Location上的接收单做退货处理,退掉不足量部分(不作退货处理,则Input Location上记录的库存数量不正确)。注意,此时的退货动作,需要选择开具退货发票(Invoicing上选择“To be refunded/Invoiced”),因为款项已付,需要供应商退款。

    2.2)如果入库数量多于采购单上的数量,和采购部商量之后,也有三种可能的处理:
      a) 按采购单数量接收
        这种情况,处理调拨单时候,录入实际入库数量。
      b)作为供应商赠品接收
        这种情况,需要在调拨单上增加一个明细行,其源库位是“采购损益”,目标库位和原来的明细行一样,数量是赠品数量,之后再做入库处理。这样,系统会自动生成赠品的会计凭证:
        借:原材料
        贷:营业费用
        入库完毕后,基于Input Location上的接收单开具发票。
      c)增加货款后接收
        这种情况,要求采购部再开一张采购订单,并开具发票。仓库先按前一张订单数量接收,再按后一张订单接收多出部分。

    3)经上述处理,系统自动生成的会计凭证如下:
    3.1)财务确认采购发票时候,系统生成会计凭证如下:
        借:在途物资
            应交税费 - 增值税(进项税)
        贷:应付账款

    3.2)仓库处理调拨单时候,系统生成会计凭证如下:
        借:原材料
        贷:在途物资
        如果有赠品,系统另生成凭证如下
        借:原材料
        贷:营业费用
        如果有退货,系统自动生成退货发票,财务确认退货发票时候,系统生成凭证如下:
        借:应付账款
        贷:在途物资
            应交税费 - 增值税(进项税)

    4)预付款的处理
    如果供应商不要求全额付款,预付部分款项即可。这个可以通过设置采购单上的Payment Term实现。




  • 原材料采购有两种情况,一种是先收货,并按实际收货数量付款;一种是先付款,对方再发货。对于国内的供应商,通常都采用前者处理,但有些进口原材料,对方会要求先付款,或者预付部分款额,对方才会发货。两种情况在OpenERP中的处理方法有所不同。

    一、先收货再付款
    一般来说,仓库入库数量及财务付款金额都应该以采购单上的数量及金额为准。但实际中,由于下面一些常见原因,仓库入库数量及付款金额不同于采购单的现象经常发生:a) 质检不过关,实际入库数量少于采购数量;b) 质量等级偏低,折价接收;c) 供应商赠品,实际入库数量多于采购数量。
    为了处理采购数量及价格不同于入库数量及价格的问题,OpenERP中推荐如下处理:
    1)采购下单时候,不要基于采购单生成内部发票(Invoice),而应该选择基于入库数量开Invoice。系统默认是下单自动生成Invoice。
    2)原材料仓库应设置单独的Input Location,系统默认是Input Location等同于Stock Location。采购入库时候,先入库到Input Location,Input Location通过Location Chain关联到Stock Location,这样,原材料进入Input Location的同时,系统会自动产生到Stock Location的库间调拨单。

    3)质检后,再将库间调拨单上的数量实际入库。
    3.1)如果入库数量低于采购单上的数量,和采购部商量之后,有两种可能的处理:
      a) 要求供应商补足数量
        这种情况,处理调拨单时候,录入实际入库数量,系统会自动将调拨单分拆成两张,一张是已入库数量,另一张是不足数量,等待供应商补充货物之后再次入库。并基于Input Location的接收单开具发票。
      b)按不足量收货入库
        这种情况,要先修改调拨单上的数量为实际数量,再做入库处理。入库完毕后,对Input Location上的接收单做退货处理,退掉不足量部分(不作退货处理,则Input Location上记录的库存数量不正确)。并基于Input Location上的接收单开具发票,此时,由于接收单上的数量多于实际入库数量,系统生成的发票数量不正确,应手动修改发票上的数量。

    3.2)如果入库数量多于采购单上的数量,和采购部商量之后,也有三种可能的处理:
      a) 按采购单数量接收
        这种情况,处理调拨单时候,录入实际入库数量,并基于Input Location的接收单开具发票。
      b)作为供应商赠品接收
        这种情况,需要在调拨单上增加一个明细行,其源库位是“采购损益”,目标库位和原来的明细行一样,数量是赠品数量,之后再做入库处理。这样,系统会自动生成赠品的会计凭证:
        借:原材料
        贷:营业费用
        入库完毕后,基于Input Location上的接收单开具发票。
      c)增加货款后接收
        这种情况,要求采购部再开一张采购订单,仓库先按前一张订单数量接收,并开具发票,再按后一张订单接收多出部分,并开具发票。

    4)系统自动生成的会计凭证
    4.1)仓库处理调拨单时候,系统生成会计凭证如下:
        借:原材料
        贷:在途物资
        如果有赠品,系统另生成凭证如下
        借:原材料
        贷:营业费用
    4.2)财务确认采购发票时候,系统生成会计凭证如下:
        借:在途物资
            应交税费 - 增值税(进项税)
        贷:应付账款

    5)原材料相关会计科目的设置
    5.1)原材料的Product上的Inventory Valuation为Real Time (automated),这样入库、出库的时候,系统才会自动生成相应的会计科目。
    5.2)原材料的产品分类(Product Category)上,应设置如下:
        Stock Input Account:在途物资
        Stock Valuation Account:原材料
        Expense Account:在途物资
       
    6)仓库相关设置
    6.1) 系统自动生成入库、出库会计凭证的原理是:a) 从非Internal的Location移动到Internal的Location,系统自动生成凭证;b) 不同公司的Location间移动时候,不管是不是Internal的Location,总是生成凭证;c) 生成凭证时候,借目标Location的Stock Valuation Account (Incoming) ,贷源Location的Stock Valuation Account (Outgoing),如果Location上没有设置,则取Product上的Stock Input Account、Stock Valuation Account和Stock Output Account
    6.2)增加一个Input Location,其类型为Inventory,作为系统默认仓库的Input Location,并通过Location Chain关联到默认仓库的Stock Location。Input Location上设置会计科目:
        Stock Valuation Account (Incoming):在途物资
        Stock Valuation Account (Outgoing):在途物资
    6.3)增加一个“采购损溢”Location,其类型为Inventory,作为供应商赠品入库的源库位,“采购损溢”库位上设置会计科目:
        Stock Valuation Account (Incoming):营业费用
        Stock Valuation Account (Outgoing):营业费用


    二、先付款对方再发货
    这种情况,采购下单时候,需要基于采购订单开具发票,而不是收货入库时候根据收货数量开具发票。
    1)采购下单时候,系统自动生成采购发票,财务确认发票时候,系统自动生成如下会计凭证:
        借:在途物资
            应交税费 - 增值税(进项税)
        贷:应付账款

    2)仓库到货后,和前面的情况一样,先入质检库(Input Location),再将库间调拨单上的数量实际入库。
    2.1)如果入库数量低于采购单上的数量,和采购部商量之后,有两种可能的处理:
      a) 要求供应商补足数量
        这种情况,处理调拨单时候,录入实际入库数量,系统会自动将调拨单分拆成两张,一张是已入库数量,另一张是不足数量,等待供应商补充货物之后再次入库。因为系统在采购下单时候已经开机发票,因而此时不需要再开发票。
      b)按不足量收货入库
        这种情况,要先修改调拨单上的数量为实际数量,再做入库处理。入库完毕后,对Input Location上的接收单做退货处理,退掉不足量部分(不作退货处理,则Input Location上记录的库存数量不正确)。注意,此时的退货动作,需要选择开具退货发票(Invoicing上选择“To be refunded/Invoiced”),因为款项已付,需要供应商退款。

    2.2)如果入库数量多于采购单上的数量,和采购部商量之后,也有三种可能的处理:
      a) 按采购单数量接收
        这种情况,处理调拨单时候,录入实际入库数量。
      b)作为供应商赠品接收
        这种情况,需要在调拨单上增加一个明细行,其源库位是“采购损益”,目标库位和原来的明细行一样,数量是赠品数量,之后再做入库处理。这样,系统会自动生成赠品的会计凭证:
        借:原材料
        贷:营业费用
        入库完毕后,基于Input Location上的接收单开具发票。
      c)增加货款后接收
        这种情况,要求采购部再开一张采购订单,并开具发票。仓库先按前一张订单数量接收,再按后一张订单接收多出部分。

    3)经上述处理,系统自动生成的会计凭证如下:
    3.1)财务确认采购发票时候,系统生成会计凭证如下:
        借:在途物资
            应交税费 - 增值税(进项税)
        贷:应付账款

    3.2)仓库处理调拨单时候,系统生成会计凭证如下:
        借:原材料
        贷:在途物资
        如果有赠品,系统另生成凭证如下
        借:原材料
        贷:营业费用
        如果有退货,系统自动生成退货发票,财务确认退货发票时候,系统生成凭证如下:
        借:应付账款
        贷:在途物资
            应交税费 - 增值税(进项税)

    4)预付款的处理
    如果供应商不要求全额付款,预付部分款项即可。这个可以通过设置采购单上的Payment Term实现。



  • 又看了两遍,还要继续看。。。



  • 谢谢分享,好东西。



  • 先多谢老肖的分享!

    文章开头有讲到“付款差异”,即实际交易单价与采购订单单价不同,也就是通常所说的价差,但我好像没有在文章中找到对应的处理方法。

    按文章的思路,如果选择先收货再开发票的方式,假设订单价单100元/pcs,实际交易价90元/pcs, 账务处理应该如下

    1. 仓库收货时
    借:原材料      100
    贷:在途物资    100

    2. 财务确认采购发票时
    借:在途物资        90
          进项税        15.3
    贷:应付账款    105.3

    问题来了,  在途物资借贷之间 10元的差异财务如何处理比较合适? 同时如保保证内控的完整?



  • 如果你有关产品移动自动生成分录的有关设置都正确的话。
    当你出现实际交易单价与采购订单单价不同的情况时,1. 仓库收货正常操作,分录也跟你第1步的分录一致。

    在2. 财务确认采购发票时,这个发票的价格你改成实际成交价90元,这样你采购发票和采购订单上的单价不一致,odoo会自动为差异生成分录。
    借:在途物资      100
          进项税        15.3
    贷:应付账款    105.3
          费用-价格差异 10



  • [attach=7][quote author=郑州-Dean link=topic=4178.msg30478#msg30478 date=1433697191]
    如果你有关产品移动自动生成分录的有关设置都正确的话。
    当你出现实际交易单价与采购订单单价不同的情况时,1. 仓库收货正常操作,分录也跟你第1步的分录一致。

    在2. 财务确认采购发票时,这个发票的价格你改成实际成交价90元,这样你采购发票和采购订单上的单价不一致,odoo会自动为差异生成分录。
    借:在途物资      100
          进项税        15.3
    贷:应付账款    105.3
          费用-价格差异 10
    [/quote]


    你好Dean,谢谢你的回复!

    我的设置如下:
    附档1:产品会计信息(不明白为何费用科目要设置为“在途物资”, 而不是费用科目,如“管理费用”)
    附档2:采购订单
    附档3:入库单
    附档4:供应商发票
    附档5:库存分录
    附档6:采购分录

    采购分录部分没有生成差异的分录,请帮忙看看是哪里不妥,谢谢!



  • 看能只能自己回答了
    系统原来应该没有在单据(采购发票)上处理差异的功能,只能在做完发票的凭证后,另外手工开一张将材料采购差异转为当期损益的凭证吧


登录后回复
 

与 Odoo 中文社区 的连接断开,我们正在尝试重连,请耐心等待