物料分类账详解(S4 HANA修订版)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
物料分类账详解(S4 HANA修订版)
一、业务介绍:
中国会计准则规定,对存货的核算必须采用历史成本法(即实际成本法).如果企业采用计划成本法或者定额成本法进行日常核算的,应当按期结转其成本差异,将计划成本或者定额成本调整为实际成本。
物料的明细分类账平行于总账,每个物料在物料分类账中都视同一个明细科目,系统自动在该明细分类账中记录所有和该物料有关的业务从而可以按照期间计算该物料的实际成本(周期单位价格PUP即月末加权平均价)
二、物料分类账的差异分摊原理
(一) 启用物料分类账的意义
各期间记录差异和分摊差异,在期末分摊差异后还原物料的实际成本。
(使用的标准价的月末还原实际成本所产生的凭证次月要冲销,S/4必须启用物料账,但可以不结算。
)
(二) SAP物料计价方式
此处的价格确定包含以下两种类型: 2 -Transaction-Based 基于交易3- Single-/Multilevel 单层/多级。
若选择2,物料价格控制可同时被定义为移动平均价或标准价。
若选择3,物料价格控制将只能选择标准价。
(S4必须启用物料账,计价方式都要选择S,如果原材料使用移动平均价V差异不自动分摊)成本核算中物料使用标准价格S核算,差异收集也方便成本管理分析,差异分析完毕后再在期末将它调整为实际成本,物料在重估后价格标志可从S变成V,期末CKMLCP在结算重估物料才得到实际价格。
(三) 差异类别
1、价格差异是由于物料移动的评估价格与实际价格(或计划价格)不同而产生的差异。
(1).库存初始化差异:例如561类型的入库,若实际价与标准价不一致就会产生差异;
(2).采购入库差异:采购订单采购价格与标准价格不一致,就会产生差异;
(3).采购订单发票校验差异:此种差异通常是由于发票价格与采购价格不一致产生的;但还有一种差异即物料分类账中所体现的汇率差异。
(4).物料过账转移差异:若在OX14中配置评估级别是按工厂,则跨工厂的物料转移过账,会因为两工厂的物料标准价格不同而造成差异;若在OX14中配置评估级别是按公司,则跨公司的物料转移过
账,会因为两公司的物料标准价格不同而造成差异(通常跨公司调拨也会视同销售和采购业务进行,若如此其差异如前2、3的差异);
(5).标准价格变更差异:MR21/MR22或CK40N(CK11N)、CK24,以及CKMPRPN、CKME等方式的价格变更,都会造成差异(一般不允许修改标准价);
(6).生产环节结算差异:生产订单的报工、生产收货都是按照标准价格或计划作业价格计算成本,在订单结算环节,会结转将投入与产出的差异(WIP也可以承担差异);此差异包括材料差异和制造费用(不同作业类型)差异;
(7).其他类型业务差异:如退货、特殊库存间转储等。
2、因汇率产生的差异
价格差异又分类单层价格差异和多层价格差异,单层差异是由于物料本身而产生的差异;多层差异是由来自于物料所处BOM的下层物料的差异而引起的该物料的差异。
(S4不再区分多层单层)
(四) 差异分摊逻辑
差异从期初库存和入库中收集,按物料及数量在消耗与期末库存之中分摊
下图可以说明这两个原则:
(五) SAP账相关表
1、MLDOC 物料账凭证
2、事务码CKMREP修复物料账的三个表格(RCKM_REP_TABI0F通过改标准程序,可以使CKMREP 直接保存),S4可通过FCML_MLMASTER查询
CKMLPP 物料分类账期间汇总记录数量
CKMLPR 物料分类账:价格
CKMLCR 物料分类账:期间汇总记录值
3、CKMLPRKEPH价格的成本组件分割(标准价与实际价)
4、KEPH 成本构成
5、MLAUFKEPH 单层差异
6、CKMLKEPH 多层差异(S4已取消)
7、MLDOCCCS 物料账凭证的成本分割表
注:表T882中可以看到各公司代码启动的各种账套。
FCMLHELP 物料账帮助台
若CDS视图FCML_REP_V 没有期初数( Category = 'AB' ) 、期末数(Category = 'EB') ,此时在视图FCML_REP_AB_EB_V没有数据,需要执行程序FINS_GENERATE_FISCAL_PERIOD或事务码
OB_FCAL增加表FINSC_PERIOD。
三、物料账ML的主要功能:
(一) 期末差异分摊(图1-4来源于网络)
使用ML可以将物料采购产生的采购价格差异、生产过程中产生的生产成本差异、物料价格变更引起的价格变更差异(S4不再区分多层差异和单层差异)分摊出去。
差异分摊的方法:
如果当期差异很大,原则上不允许全部转入销售成本,否则严重影响当期损益,而应在在产品,产成品和销售成本间按比例分摊。
在ML中使用实际成本核算(Actual costing),相关物料的价格控制必须是S(即标准价),价格确定必须是3,期间发生业务时使用标准价格核算物料的各种交易,差异都被记录在ML(表MLCRF)中.
在物料账结算差异结算后,(过账前一步)可以选择使用实际价格重估或不重估当期库存,如果选择重估计库存,则当期物料主数据的价格控制自动从S到V,产生的会计凭证是:
Dr:库存 (OBYC->BSX) 如果不重估物料则使用OBYC-LKW科目.
Cr:单层差异(OBYC-PRY科目,S4已废弃)
多层次差异 (OBYC-PRV科目)
在下个月初该凭证则被冲销回,
在标准价格不变的情况下,差异分配只是在各种差异在销售成本和存货之间进行分配,由存货承担的差异依然留在差异账户中并带到下期期初,并未做到“实际成本还原”。
在物料分类账中,由存货承担的差异是可以全部还原到存货中,如果以上期的周期实际价做下期的标准价并且重估物料,则下期期初没有任何存货差异,如图1和图2(Tcode:CKM3),并且使用ML的的Actual Cost component Split功能也可做到根据成本组件进行“成本还原”。
图1中表示物料60000056在2007/08期物料分类账结算完后的画面,启动物料账后,CKM3可以非常方便地分析每个物料在某期间初始库存和期初差异(差异包括价格差异和汇率差异)、本期所有的收货收据,本期所有的消耗在消耗类别下和期末库存,上图中,没有初始库存没有差异,本期没有收货,价格差异64394.32元是后勤发票校验差异,所有有金额没有库存数量,
物料的差异分配公式是:
期初差异+∑本期收货差异= ∑本期消耗差异+ ∑期末库存承担的差异
期初差异和收货差异在本期消耗和本期期末库存间分摊,差异分摊的依据是消耗和期末库存的数量,所以,本例中期末库存的差异是40195.28 = 64394.32 * ( 5204/(5204 + 3133 ))。
在图1-[5]中,注意价格控制标志已经是V ,即平时使用标准价29496752.14/10000元/吨,
在月末加权平均价还原为29573991.33/10000元/吨,满足了平时标准价格计算抛出差异,期间还原为实际成本。
第8期物料分类账结算时针对该料产生一正一反两张凭证。
重估物料,将标准价格控制S改成V,结算凭证如下:
Dr:原材料40195.28 (数量5204)
->平时标准成本少计,期末加上这部分,因为价格控制已经是V,则8月份期末价格是29573991.33/ 10000元/吨.
Cr:材料采购差异40195.28 (数量5204)
Dr:物料消耗24199.04 (数量3133)
Cr:材料采购差异24199.04 (数量3133)
将第8期的材料采购64394.32在消耗和期末库存间分完,如果是生产性的物料消耗层层上转后反应到产成品的销售成本和期末库存上去,不需要再冲回。
而第9期期初将冲回期末存货差异部分,在物料分类账结算时和第8期的结算凭证同时产生,如果第9期依旧使用以前的标准价格(差异摊销至期末库存,实际单价发生变化),则冲回的会计分录如下,如图2:
Dr:材料采购差异40195.28
Cr:原材料40195.28*
系统还提供一种方法是不重估计物料,将差异不分配到物料而是一中间科目(OBYC-LKW定义)。
图2中,在第9期间的标准价格依旧是8期的标准价格,所以差异是40195.28 = 5204 * (29573991.33/10000 - 29496752.14/10000),如果第9期的标准价格设置为第8期的周期单位价格,则第9期间的期初差异将为0 。
也就是说,第8期在重估物料后期末实际价格为29573991.33/ 10000元/吨,期末库存价值15390305.09,如图1显示的当前库存值,存货价值为而第9期依旧使用标准价,标准价格是29496752.14/10000,期初库存价值为15350109.81,如图2显示的当前库存值,相当是进行了一次价格变更,在9期期初显示差异,除非将上期的期末实际周期价格做为下期的标准价格。
标准价也可以在物料分类账结算前通过成本估算(Tcode:CK40N)标记发布为计划价格,同样,在上期物料分类账结算时下期自动冲回的期初价格差异金额则通过以下公式计算:
冲回下期期初价格差异金额=(下期标准价格-上期期末周期价格)* 下期期初库存数量。
(二) 实现产品的成本还原
“成本还原”指的是将产品在产品半成品,把所耗上一步骤的综合成本还原为按原材料、人工、折旧费、其他制造费用等最终原始成本项目反映的成本信息。
当物料账激活实际成本组件划分后,可以直观的在(Tcode:CKM3)中基于成本组件进行展示,如下图3.
图3-[1]显示ML使用了3个货币类型,选择图3-[2]的成本组件,系统显示成本组件(OKTZ定义),在SAP系统中还可以将费用分成固定和变动两部分,如图3-[3]。
如果在S/4 1611第二个版本之后启用CKM3A(查询各成本中心作业类型计划价格与实际价格,同时废弃CON2重估功能)功能如下图,则可以通过事务码CKMLQS查询产品的多级成本还原,具体配置见后台配置部分。
也可以实现实际成本组件传输至CO-PA利润分析模块,在CO-PA建立标准成本和标准成本部件值字段,平时销售时的成本是标准成本,同时也传输标准成本部件值到CO-PA,工单的结算参数文件中设置“PA传输结构”比如传输结构CO,然后Tcode:KEI1制作传输结构CO,如图4。
有两种方式传送产品的差异(即生产成本结算差异)到CO-PA:
方法一:如图4-[5]中的结算参数文件不设置PA传输结构,总差异通过会计科目传送到PA,步骤是Tcode:OKB9为该科目定义默认的成本对象为PSG,二是图4-[1]中在系统默认的MM/FI PA传输结构FI设置一分配行,源的成本要素是生产成本结算差异科目,源选择图4-[2]的”成本/收入”,再对应一值字段。
方法二:建立传输结构CO,在图4-[5]中将PA传输结构CO分配给工单的结算参数文件,源选择“生产订单差异”,并分配差异的一个“差异种类”。
这样就可将成本部件的各种差异带到CO-PA,在ML 中分摊差异时不但将整个差异在本期消耗和期末库存间分摊,消耗差异如有产出物料又再上卷,而且在成本部件层也是按这种逻辑分摊差异的,在成本项目(部件)层次上做到实际成本。
(三) 差异分摊结果检查与异常处理
物料账结算后,通过事务码CKMVFM检查是否没有分摊,正常情况下总账查询差异科目余额为0。
当订单取消冲销出入库没有后续业务的差异或者物料转储产生的不能分摊走的差异,需要手工将差异转走,可通过总账查询差异科目(常用1404*科目)余额是否为0。
四、物料账后台配置及操作事务码清单
(一) 后台配置
OKTZ路径:控制→产品成本控制→产品成本计划编制→物料成本核算的基本设置→定义成本构成结构通过SM30查看V_T001K_CCS是否激活实际成本组件划分,激活后才能看到实际的材料、人工、费用。
如果已使用物料账,后又想激活实际成本组件划分.则需激活后,运行SE38:MLCCS_STARTUP 创建成本组件划分.
(二) 上线准备(前台)
(三) 月结前处理(前台)
(四) 月结
附:OBYC差异配置科目详细说明(ECC、S4通用)
五、物料账应注意问题及缺陷
1. 未分配差异问题
物料消耗能被分配到下一更高层次的生产环节的差异才能继续分摊,也就是说有输入和输出的业务才能将分摊出去。
例如:311物料跨工厂转移,309转移物料,有可能差异无法分摊。
但跨工厂转移时,多个工厂在一个实际成本核算运行中同时运行可以分摊差异;物料转物料时,需要修改表CKMLMV009,可使用SM30修改视图V_CKMLMV01,在ParprocCat列,添加伙伴处理类别,BUBM行维护“VUBM”,VUBM行维护“BUBM”。
新版本物料消耗到内部订单,委外加工,CO订单,成本中心领料等,已经可以分摊差异,但当原材料领用后库存为0而产成品还没有入库的时候,差异则无法分摊。
特殊库存E、Q直接转为寄售W的错误操作产生的差异也不能分摊。
若激活物料账,原材料仍然以移动平均价V计价的,MIRO发票校验的差异及退货时价格变动引起的差异则无法分摊。
如果当月收货,下期收到发票,如果采购价格或者外币采购时汇率发生较大变化,差异则计到发票校验当期,如果差异较大,是会影响当期损益的,实际上这种差异不可避免,与物料账无关。
2. 多币种造成FI、CO、利润中心成本数据不一致。
启动了多个币种,如果某一原料价格FI价格和集团货币(通常也是CO货币),则会造成FI和CO/利润中心材料余额和成本数据不一致,当然FI的当期利润和利润中心报表里计算出的利润也不一致。
3.物料估价范围不一致处理
首先使用CKMC进行检查,可能存在数量或者价格不一致,首先检查是不是因为物料期间不一致引起(如非法修改了后台的账期,表MARV),可能是设置价格动态变化,次月第一笔业务发生时更新价格造成。
也有可能物料出入库操作时,进行系统COPY容易产生类似问题。
如果是系统错误,则需要更新表CKMLPP CKMLPP MBEW的数据,根据MBEW表找出对应成本核算号,并确认改表数据是否准确,先将数量更新为正确的,同时修改对应金额。
六、物料账环境下的价格修改
如果是S/4 HANA版本可以通过MR21直接修改。
如果是旧版本物料账下只有物料的状态是初始状态才允许修改价格,在启用物料账后使用"CKMPRP+CKME"的效果与MR21类似,CKMPRP(或CKMPRPN)的未来价格日期通常是下个物料期间的第一天,CKME执行后,会在下个会计期间产生价格重估凭证(该功能主要把本月实际成本标记为下月标准成本,基本不做,不利于差异分析)。
如果状态为已输入数量和值也需要修改物料价格,状态不对时,无法在MR21中更新物料价格,如果是旧版本则可以通过以下方法修改:
(1)MR21 屏幕上输入LTPC,更改价格,前提是当月必须没有货物移动,如果有先冲回,再进行价格调整,这是SAP开的一个后门,作用是修改标准价
(2)CKMM先将价格确定改为2+V,mr21 修改价格后再改为3+S,前提是期初和当月都没有货物移动。
(3)根据NOTE 574930中的提示,加入源代码,程序名为
"ZCKML_RESET_STATUS_OF_PERIOD",并在此基础上修改并存为
ZCKML_RESET_STATUS_OF_PERIOD_2",在SA38中运行此程序,系统将调整物料的期间状态为"公开期间(Period opend)",这时可以通过MR21调整物料的标准价格.
常用物料账的期间状态如下表(eg. 20090831已运行完毕ML,现在时间为20090910.)。
系统切换上线时,物料的状态只能为01,才可以进行月结;月结前检查上一期间物料状态时,只有01、00、70状态才能进行本期间物料账结账;只有01、20、30状态时才能进行成本估算。
如果需要将本月的实际价格发布为下一月的标准价格,则要注意物料下一期间标准价的维护及批准发布时点,在当期物料账清算结账(CKMI)之前,需要先对下一期间的物料标准价(Standard Price)进行维护(T-Code:CKMPRP),维护完毕后才能进行批准发布(T-Code:CKME)。
在批准物料新的计划价格时,需要满足以下条件:
(1)新价格的物料期间和对应会计期间已经开启(即下一个物料和会计期间MMPV、OB52、OKP1);(2)新的物料期间该物料没有移动记录和未结的订单;
(3)该物料的物料账过账清算还未进行(CKMI);
(4)新的期间存在并标记了有效的价格(物料主数据中检查,CKMPRP维护):(a)已手工维护在新的期间有效的标准价格;或(b)使用当月加权平均价格作为下一会计期间标准价格的物料,需要在执行期末物料价格确定之后(在物料账过账清算运行前,价格单多层确定已经把当期的物料实际价格计算完毕)再执行批准计划价格的操作。
七、取消物料账激活
当测试系统没有业务数据时,可以需要取消物料账,具体步骤如下:
(1)前台功能运行:SE38-SAPRCKMJX(取消激活物料分类账)。
删除所有物料账表记录
(2)配置更改:OMX1。
取消工厂物料账激活标识和价格确定方式。
下图中取消“ML科目”标识,删除“价格确定”。
(3)配置更改:控制→产品成本控制→实际成本核算/物料分类账→实际成本核算→激活实际成本核算。
取消工厂的实际成本激活标识和数量更新标识。
下图中因取消“实际成本”标识,删除数量更新类型
“ActA ct”。
八、S/4HANA1610版本以后的变化
1.新版本的优势
●结算步骤整合了传统的CKMLCP单级价格确定,多级价格确定,消耗重估和在制品重估。
●单级和多级价格确定的统一降低了复杂性,例如错误处理、准备数据需要额外的准备步骤。
●如果对物料进行重新处理用以结算,则级别较高的、需要重新处理的物料将被自动识别。
●锁定物料可以限制在CKMLCP期间,因此可以在当前期间过账货物移动。
●支持在此期间内更改物料和作业的标准价格。
●作业类型的价格差异,可以通过物料账结算。
●循环迭代已得到改进。
●数据模型充分利用了HANA的优势。
2.新版CKMLCP的功能
●新版本CKMLCP中步骤优化成选择、准备、结算和过账四个。
除了物料状态,新增用于作
业统计的附加列。
还包括一个附加列“锁定”,用于为成本核算运行的所有工厂设置期间锁定。
如果设置了锁定,则在关闭期间不能过账货物移动,并且准备和结算的步骤处理物料不需要排队。
但在下一期间更新完成前,过账关账步骤处理物料仍然需要排队。
新增备选评估运行的事务码CKMLCPAVR,如果选用经典AVR,与经典ERP版本相同,也可以选定四个参考AVR,但是选定以后不能再更改,“并行制造成本COGM”、“单周期运行”、“运行年初至当前月份”、“滚动运行”四选一。
也可以做统计的AVR (Alternative Valuation Runs) ,见note 2559509。
3、新版CKMLCP的步骤
步骤1:选择selection
·价格确定为“3”的所有物料,与该期间过账的货物移动的实际成本计算相关。
·如果作业更新='2'且作业类型与成本核算运行相关,则包括所有作业类型。
·可以进行并行处理。
步骤2:准备preparation
·此步骤准备结算记录,也可以进行重估。
·处理所有物料和作业或仅处理打开的对象,具体取决于处理选项。
·可以进行并行处理。
·下拉按钮仅允许处理特定物料或作业。
如果打开物料的下拉按钮,则不会处理任何作业(使没有应用过滤器),反之亦然。
无法同时打开物料和作业的下拉按钮。
如果要重新处理所有物料和作业,则应关闭这两个框。
·可以在旧期间中运行“结算”步骤,不再使用KBA 1523233中的解决方法。
您只需调用CKMLCP进行相应的成本核算运行,然后执行这些步骤。
如果必须在旧期间运行过账这一步骤,则必须在FI中打开期间,而物料分类账没有限制。
·新的异常处理参数允许处理,即使前一时段未关闭(旧错误C + 805):'允许前一时段的打开状态(异常处理)。
无需手动关闭状态。
此参数仅在特殊情况下使用。
如果前期未结算物料帐,可以勾选此项强
制跳过,但是前期补结算必须冲回至未结算期间重新结算,冲销时不勾选重估物料,勾选重估消费(OBYC-LKW)
执行完成后:
·状态已检查并更新如下:
·状态错误的物料会收到错误消息并从处理中排除。
·成功处理的物料在准备步骤中接收绿色状态。
处理错误的物料在准备步骤中收到状态错误。
·成本顺序确定已集成在准备步骤中。
·显示的结果列表如下:
步骤3:结算settlement
·实际成本计算在累计行上完成,并且读取消耗值。
·应用价格限制器逻辑已激活。
·执行循环迭代。
·累积差异分配到消耗或期末库存。
·对于多级结算行,创建相应的输出结算行。
·定期单价是按物料计算的。
·状态已检查并更新:
成功处理的物料在结算步骤中获得绿色状态;处理错误的物料在结算步骤中收到状态错误。
结算参数:
·后处理选项:处理全部或仅处理打开的对象。
选项“不处理”通常就足够了,因为如果结算结果通过重新处理输入物料/作业而改变结果,则结算会重新设置更高级别上的相关物料的状态。
·可以打开/关闭库存覆盖检查stock coverage check(价格限制器逻辑)。
·自动错误管理选项:
- >负价格错误Negative price error
- >没有与周期的融合No Convergence with cycle
·支持并行处理。
·下拉按钮仅允许处理指定的物料或作业(请参阅准备步骤)。
·对于物料,可以附加定义成本计算层级和循环次数。
这允许从某个成本核算层级重新处理结算。
·结果列表和消息日志可用:
步骤4:过关账账post closing (参见KBA 2558888)
·此步骤根据结算配置过账结算凭证。
·在冲销过账的情况下,读取结账凭证并冲转相应的值。
·如果已设置“重估物料”参数,则结转库存差异将结转并重新评估物料库存。
·物料被锁定,因为该步骤也会更新下一期的数据。
见KBA 2693194
·创建FI和ML相关凭证。
·状态更改为已关闭。
·过账逻辑与传统的过账逻辑不同,它使用Push逻辑(同步)而不是Pull逻辑(异步):从输入到输出的多级汇总现在发布在输入物料或作业的结算凭证中。
在之前版本的过账逻辑中,只输出物料的凭证中。
作业的结账凭证现在还包括多级汇总和WIP汇总的过账。
·作业过账,引入新的自动过账事务PRL。
与期间总消耗相关的作业价格差异从成本中心账户GBB(AUI)过账到物料分类账价格差异账户PRL。
然后从PRL将它们分发给接收方。
通过这种方式,“未分配”差异不再作为生产成本中心账户的余额,而是作为PRL账户的余额(无法自动分摊的尾差显示在CKM3A中)。
计算实际作业价格后,不需要在使用CON2/MFN1重估生产订单。
注意,OBYC配置事务AUI必须评估类维护为<</span>空>。
参考KBA 2354768、2352383
·价格变动后清算重估账户(UMB)的新逻辑:
价格重估后作为CKM3N的价格差异抵消。
保留在FI的UMB账户中,重估过账时即发布到PRY,而不是通过上一期间的结账后清算。
过账步骤参数:
·前面3步中的参数与传统CKMLCP中的参数相同。
·参数' No. o f Materials in ML. Doc. “。
仅指发布包的大小(在同一ML凭证中发布的物料或作业的数量)。
现在处理包的大小会更大。
·支持并行处理。
·下拉按钮仅允许处理指定的物料或作业(请参阅结算步骤)。
·结果列表和消息日志可用:
4、新版CKMLCP中的结果按钮
·在“显示对象列表”屏幕上,您可以决定要显示的内容。
您可以将显示限制为其中一个步骤,或者将错误限制为有缺陷的物料或仍然打开的物料。