移动平均法和标准价格法这两种存货计价方法的应用(转)
企业的各种存货,由于是分散购入或分批生产形成,同一次领用或发出的存货,其单位成本可能有所不同。为了合理的核算低值易耗品和包装物以外的存货发 出和领用的价值,就需要选择一定的计价方法,对企业发出或领用的存货进行计价,使企业的生产成本和产品销售成本有统一的计价标准。我国企业所得税法和会计 制度提供了几种可供选择的会计制度,如先进先出法、后进先出法、移动平均法、计划成本法、个别计价法等计价方法。本文主要以SAP为例,论述在ERP系统 的物料移动过程中,移动平均法和标准价格法这两种存货计价方法的应用。
移动平均法能够使管理当局及时了解存货的结存情况,而且计算出的平均单位成本以及发出和结存的存货成本比较客观;标准成本法的按标准价格计价存货,可以简 化会计处理工作,有利于考核部门业绩。但二者在收发货比较频繁的企业,都需要进行大量的计算工作。ERP系统强大的数据处理功能使这方面已经不成问题,在 ERP系统运做中,许多模块的多数功能都涉及到物料的移动及计价,系统将他们有机的整合在一起,并生成物料凭证和会计凭证。物料凭证反映每种物料的移动数 量、方向时间及操作员;而财务凭证反映的是每种物料数量和价格的变化。根据这些凭证可以跟踪和分析每一笔物料的移动变化记录。
ERP系统中,存货的计价方法主要控制在物料主数据内。物料主数据(Material Master Data)包括基本数据部分(Basic Data)、采购部分(Purchasing)、MRP部分、会计部分(Accounting)及成本部分(Costing)。在建立每一种物料时,会计 部分可设定选用移动平均价格(Moving Average Price)还是用计划/标准价格(Standard Price)计价。选择相应的方法后,如果该物料已经有历史记录,在会计部分还可以显示该物料的单价和库存。
移动平均法在系统收货及收发票中的计价过程:
1.当采购主管在SAP中建立采购订单时,首先要估计(Accrual)每一种物料的价格、运费及杂费。系统根据采购数量计算出总价值。
2.收货时,根据实际收货数量录入系统,系统依据采购订单价格计算出采购物料的总价值。下面举例说明这一过程。
收货过程上期库存数量为:100PC,移动平均价为2.库存金额为2*100=200.本期PO收货为:100PC ,单价为:2.4,移动平均价为2.2.库存金额为:2.2*200=440.对就PO收货会计分录:借:原材料 240 贷:暂估应付 240● 在物料凭证中反映为原料库物料增加。
● 在会计凭证中一方面反映存货中该种物料的数量及金额增加,另一方面反映暂估应付账款的增加。暂估应付款(GR/IR)是资产负债表中的可抵消科目。
● 移动平均价格被重新计算。
计算过程为:
New M.A.P=(100x2.00+100x2.40)/(100+100)=2.20
3.当收到供应商提供的发票后,首先检查发票中的物料数量与系统中收货的数量是否一致。确认无误后录入系统。
收发票过程
发票数量:100,单价:2.2.会计分录:借:暂估应付 240 贷:应付帐款 220, 贷:原材料 20
●系统会重新计算存货总价值。如果估计的价格大于发票价格,其差额系统会依据订单冲减库存中物料的价值;反之,该差异会被分配到库存中的物料价值中。
●暂估应付账款科目被抵消和清除。
●依据发票金额,系统将该笔货款传送到应付账款模块。
●依据发票价格,移动平均价格重新被计算。
计算过程为:
New M.A.P=(100x2.00+100x2.20)/(100+100)=2.10
标准价格法在系统收货及收发票中的计价过程:
例子同上
收货过程上期库存数量为:100PC,材料价格为2.库存金额为2*100=200.本期PO收货为:100PC ,单价为:2.4对就PO收货会计分录:借:原材料 200 借:材料价格差异 40 贷:暂估应付 240●收货的原材料价格依照标准价格计算。
●暂估应付账款依据采购订单价格计算。
●订单价格与标准价格的差异转入材料价格差异科目。也就是说材料的实际价格=标准价格+材料价格差异。
●材料价格差异有两种处理方法。一种是在当期已发出材料和期末结存材料之间进行分配,属于已消耗材料应分配的差异,应从该科目中转到相关科目。另一种是直接转入当期损益。
收发票过程发票数量:100,单价:2.2.
●此步操作对库存材料没有直接影响。
●暂估应付账款科目被冲销。
●依据发票价格记应付账款科目。
●按照发票价格重新计算材料价格差异。会计分录:借:暂估应付 240 贷:应付帐款 220, 贷:材料价格差异 20
移动平均法在生产过程中的计价
在生产过程中,从原材料开始加工到产成品完成,按照工艺流程和生产步骤,会存在多种在产品形态,不同的形态的在产品消耗的活劳动和物耗劳动的价值构 成了其生产成本。SAP系统中,生产不同的在产品主要依据生产订单,生产订单通过MRP运行产生,系统根据标准物料清单,计算出生产该订单的产品所耗的标 准材料数量,和标准的工时。当该订单完成时通过一个“确认功能 ”(Confirmation),执行该功能后,系统增加库存中的新产品,减少所耗材料的库存。同时生成物料凭证和会计凭证。从会计凭证看,这也是一个生 产成本计算分配的过程。但此时的新产品的库存价格并不是真正的移动平均价格,需要通过“调整功能”(Settlement),将新产品的价格调整为移动平 均价格。该功能不产生物料凭证,仅产生会计凭证,也就是说仅对库存价格和生产成本计算有影响。一般来说,一个生产订单依靠一道工序,当每一个订单被完成 后,在系统中必须执行这两个功能,而且次序不能弄错。另外,一定要按生产订单的流程顺序来执行,否则计算的半成品和相应产成品的价格是错误的,从管理角度 讲,影响客户获利能力的正确分析;从财务角度讲,导致产品销售成本错误,产品边际贡献错误,利润总额,所得税,净利润等一系列的数据错误。
下面举例说明这些过程:
1.生产订单10000号要求生产产品Dummy 100个。根据物料清单100个Dummy消耗100个A,50个B。直接人工和制造费用暂不考虑。
库存余额产成品Dummy库存100,单价2.2,材料A库存数量:150,价格:1 .材料B库存数量:150,价格:0.8.
2.订单完成确认过程(Confirmation)
库存余额生产发料A 100PC,B 50PC.会计分录为:借:生产成本:140 贷:材料-A 100 贷:材料-B 40产成品Dummy完工入库存100PC借:产成品 220 贷:生产成本 220
● Dummy 材料的移动平均价没有变化,库存数量增加100个,金额增加了为 100*2.20=220.00。
●该移动平均价为存货增加前价格2.20元。
●原材料A和B的库存数量减少。
●变动成本科目产生差异为80.00。
3.价格差异调整过程(Settlement)
库存余额借:生产成本 80 贷:产成本 80
●Dummy的移动平均价发生变化。该物料的库存价值被冲减80元
其移动平均价计算过程为:
New M.A.P=(库存原值+新增价值-与所耗材料价值差异)/期初库存量+新增库存价值
=(220+220-80)/100+100=1.80
也就是说:
New M.A.P(库存原值+所耗材料价值)/期初库存量+新增库存价值
=(220+100*1.00+50*0.80)/100+100=1.80
●变动成本科目为零。
●此步骤对库存材料数量没有影响,仅调整价值。
标准成本法在生产过程中的计价比较容易理解。原材料按照标准价格发货到生产订单,这时原材料减少,变动成本增加;在生产订单结束确认后,产生的产成品按标准价格计价,同时变动成本减少;原材料标准价格与产成品之间的标准价格差异均被转到当期的损益中。
移动平均价格和标准价格计价的主要区别是,移动平均价主要通过当前收货价格计算得出,基本接近于的市场价格;但建立采购订单时如果估计价格与实际价格相比 过高或过低,在收到发票前会造成系统存货价格不准。而标准价格是一种计划价格,标准价格与实际价格的差异不再分配到存货中,直接转到当期损益。如果标准价 格制定合理,通过分析该差异,可以对采购部门和生产部门进行考核,促使其降低采购成本,节约支出。但标准价值计算的存货不能准确反映当时市场价格。
存货的计价方法不同,对企业的财务状况、经营成果和现金流量会产生不同的影响。所以采用移动平均价格还是标准价格对存货计价,应该结合企业的具体实际情况,合理的选择计价方法。
DATA IT_STATUS LIKE JSTAT OCUURS 0 WITH HEADER LINE.
DATA OBJNR LIKE JSTO-OBJNR。
CALL FUNCTION 'STATUS_READ'
EXPORTING
OBJNR = T_OBJNR
* ONLY_ACTIVE = ' '
TABLES
STATUS = IT_STATUS
EXCEPTIONS
OBJECT_NOT_FOUND = 1
OTHERS = 2.
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
2.检查生产订单的状态
call function 'STATUS_CHECK'
exporting
BYPASS_BUFFER = 'X'
OBJNR = T_OBJNR
STATUS = 'I0045' "GELIEFERT
EXCEPTIONS
OBJECT_NOT_FOUND = 1
STATUS_NOT_ACTIVE = 2
OTHERS = 3.
OBJNR 在AUFK中,AUFK中的几个日期字段也可作为状态判断的辅助.
状态判断用到的几个表:JEST TJ02 TJ02T
3.列出生产订单状态的标识
CALL FUNCTION 'STATUS_TEXT_EDIT'
EXPORTING
CLIENT = SY-MANDT
FLG_USER_STAT = ' '
OBJNR = T_OBJNR
ONLY_ACTIVE = 'X'
SPRAS = '1'
BYPASS_BUFFER = ' '
IMPORTING
LINE = T_STATUS.
Notes:
T_objnr : OR+production number,位数不足14位在OR和production number之间补零
T_Status: 文本行长度40,不一定能显示完整的结果
from http://hi.baidu.com/mark_ma_lj/blog/item/a99e7fc68f6a66dbd10060d5.html