1. 装备制造项目里为什么绕不开WBS-BOM
干过装备制造行业SAP PS模块的顾问都清楚一个现实:项目型制造和标准量产完全是两套逻辑。标准量产走的是物料需求计划(MRP)那套,成品BOM往下展,跑出生产订单,完事。但装备制造不一样,每一台设备、每一条产线,甚至同一个型号卖给不同客户,配置都可能天差地别。你没法用一套静态BOM去覆盖所有项目,所以WBS-BOM这个东西就变得特别关键。
先把这个概念说透。WBS-BOM,全称Work Breakdown Structure Bill of Materials,直译过来就是“工作分解结构物料清单”。在SAP PS模块里,WBS是项目的工作分解结构,把一个大项目拆成可管理、可核算的层级节点。而WBS-BOM,就是把这个WBS节点和物料清单挂上钩,让每一个WBS节点知道自己需要哪些物料、多少数量、什么时候要。
为什么装备制造项目特别需要这个?我拿一个实际场景举例。假设你接了一个化工厂的反应釜成套项目,合同金额三千万,交付周期十个月。这个项目里包含反应釜本体、搅拌系统、加热夹套、管道阀门、电气控制系统、仪表等。如果你把所有物料都挂在项目定义层面,那采购和库存根本分不清哪些物料是给哪个子系统用的,成本核算也是一笔糊涂账。但如果你把项目拆成WBS层级——第一层是项目总节点,第二层是反应釜系统、搅拌系统、管道系统、电控系统,第三层再往下拆到具体组件——然后把BOM挂到对应的WBS节点上,整个物料需求、采购计划、成本归集就全部清晰了。
这就是WBS-BOM的核心价值:让项目结构、物料结构、成本结构三者对齐。在SAP里,这个对齐关系是通过项目库存、预留、采购申请、生产订单这些对象串联起来的。你挂上去的BOM不是摆设,它直接驱动MRP运算,跑出采购需求和生产需求。
我见过不少同行在装备制造项目上踩坑,最常见的就是把WBS-BOM当成一个“参考清单”来用,挂上去就不管了。结果MRP跑出来的需求跟实际采购脱节,项目库存一堆呆滞料,成本核算对不上。这个问题的根源在于没有理解WBS-BOM在SAP里的运行机制——它不是静态的,是动态参与MRP运算的。
注意:WBS-BOM和标准BOM最大的区别在于,标准BOM是面向库存生产的,WBS-BOM是面向项目订单的。前者的需求冲销走的是库存,后者的需求冲销走的是项目库存和项目预留。这个区别决定了你在配置物料主数据、采购类型、特殊采购类的时候,必须做不同的设置。
适合谁来参考这篇内容?如果你是SAP PS顾问、装备制造企业的IT负责人、项目经理、成本会计,或者正在从标准量产制造转向项目型制造的企业信息化人员,这篇内容应该能给你一些实操层面的参考。我不会讲太多理论,重点放在配置逻辑、实操步骤和踩坑经验上。
2. WBS-BOM的整体设计思路与方案选型
2.1 装备制造项目的三种BOM挂法对比
在SAP PS里,BOM和WBS的关联方式不是唯一的。根据项目复杂度、制造深度、采购策略的不同,常见的有三种做法。我把它们拉出来对比一下,你就知道该选哪种了。
| 方案 | 挂接层级 | 适用场景 | 优点 | 缺点 |
|---|---|---|---|---|
| 项目定义级BOM | 挂在项目定义上 | 小型项目、物料种类少 | 配置简单,维护量小 | 无法按子系统核算成本,MRP需求混在一起 |
| WBS节点级BOM | 挂在WBS节点上 | 中大型装备项目、多子系统 | 成本可归集到子系统,MRP按节点跑 | 配置较复杂,需要维护WBS结构 |
| 网络活动级BOM | 挂在网络活动上 | 复杂装配、工序级物料管控 | 物料与工序精确对应 | 维护量极大,适合航空、军工等高复杂度场景 |
绝大多数装备制造项目,我推荐用WBS节点级BOM。原因很简单:装备制造的项目通常按系统或子系统来组织采购和生产,WBS节点天然就是这些子系统的载体。你把BOM挂在WBS节点上,MRP跑出来的采购申请和生产订单就自动带上了WBS元素,后续的成本归集、项目库存管理、进度确认全部顺理成章。
项目定义级BOM只适合那种“一锤子买卖”的小项目,比如你就卖一台标准设备,物料不超过五十个,那挂在项目定义上也能凑合。但只要项目稍微复杂一点,这种做法的弊端就暴露了——你没法回答“搅拌系统用了多少不锈钢”这种问题。
网络活动级BOM是另一个极端。我做过一个航空零部件项目,客户要求每个装配工序的物料都要精确追溯,那就必须挂到网络活动上。但装备制造行业大部分项目不需要这么细,挂到WBS节点就够了。
2.2 为什么选择CS71作为BOM维护入口
在SAP里维护WBS-BOM,最常用的交易码是CS71。这个交易码专门用来维护项目BOM,和CS01(标准BOM)、CS61(订单BOM)是兄弟关系,但用途不同。
CS71的界面逻辑是这样的:你先输入项目定义和WBS元素,然后输入上级物料(通常是虚拟的半成品物料),系统会带出这个WBS节点下已经挂接的BOM结构。你可以新增、修改、删除组件行项目。每个组件行项目包含物料号、数量、单位、采购类型、特殊采购类、提前期偏移等关键字段。
为什么不用CS01?因为CS01维护的是标准BOM,它不认WBS元素。你在CS01里挂的BOM,MRP跑的时候不会自动关联到项目库存。而CS71维护的BOM,每一行都带着WBS元素,MRP运算时系统知道这个需求是给哪个项目的。
为什么不用CS61?CS61是订单BOM,通常用在生产订单创建之后,对BOM做临时调整。WBS-BOM是在项目规划阶段就要维护好的,属于计划层面的东西,所以用CS71更合适。
实操心得:CS71维护BOM时,组件的“采购类型”字段非常关键。如果你设成“F”(外购),MRP会跑出采购申请;如果设成“E”(自制),MRP会跑出生产订单。装备制造项目里,标准件、外购件设F,自制结构件设E。这个设置错了,后面采购和生产就全乱了。
2.3 物料主数据的前置配置要点
WBS-BOM能不能跑通,很大程度上取决于物料主数据配得对不对。我见过太多项目,BOM挂得好好的,一跑MRP就报错,最后发现是物料主数据的问题。
几个关键字段必须提前配好:
- 物料类型:成品用FERT,半成品用HALB,原材料用ROH,外购件用HALB或ROH都行,看管理粒度。
- 采购类型:自制件设E,外购件设F,或者设X(两者皆可)让MRP自己判断。
- 特殊采购类:这个字段在装备制造项目里特别重要。如果你想让物料走项目库存,特殊采购类要设成“40”(项目库存采购)或者“52”(项目库存生产)。不设的话,MRP跑出来的需求会走普通库存,项目库存就空了。
- MRP类型:成品和半成品通常设PD(MRP),外购件设VB(再订货点)或PD都行。项目型物料建议统一用PD,让MRP精确计算。
- 计划策略:项目型物料建议用策略40(按订单生产)或50(按项目生产),不要用10(按库存生产)。
这些配置看起来琐碎,但每一个都影响MRP运算结果。我一般建议在项目启动前,先拿一个典型物料做全流程测试,从BOM挂接、MRP运算、采购申请生成、项目库存收货,走一遍,确认没问题再批量配置。
3. WBS-BOM核心细节解析与实操要点
3.1 WBS结构设计对BOM挂接的影响
WBS结构不是随便拆的,它直接决定了BOM怎么挂、成本怎么归集、MRP怎么跑。我见过一个反面案例:某装备制造企业把WBS拆成了“设计阶段、采购阶段、生产阶段、调试阶段”四个节点,然后把BOM挂在“采购阶段”下面。结果MRP跑出来的需求全部集中在采购阶段,生产阶段反而没有物料需求,整个计划全乱套了。
正确的做法是按产品结构或系统结构来拆WBS,而不是按项目阶段。比如一个污水处理设备项目,WBS应该这样拆:
- 第一层:项目总节点(项目定义)
- 第二层:预处理系统、生化处理系统、污泥处理系统、电控系统
- 第三层:每个系统下面的关键组件,比如生化处理系统下面的曝气装置、填料、水泵
然后把BOM挂到第三层WBS节点上。这样MRP跑的时候,每个系统的物料需求是独立的,采购可以按系统分批下单,生产可以按系统分批装配,成本可以按系统核算。
注意:WBS层级别拆太深。我见过拆到七八层的,维护BOM的时候光找WBS节点就要找半天。一般三层到四层就够了,再深就是给自己找麻烦。
3.2 CS71维护BOM的字段级操作细节
打开CS71,输入项目定义和WBS元素,回车。系统会问你上级物料是什么。这里有个细节:上级物料通常是一个虚拟物料,专门用来承载BOM结构的。这个虚拟物料的物料类型设成HALB,采购类型设成E,特殊采购类设成52,MRP类型设成PD。
为什么要用虚拟物料?因为WBS-BOM在SAP里的逻辑是“物料挂物料”,你不能直接把一堆散件挂在WBS上,必须有一个上级物料作为载体。这个虚拟物料不参与实际生产,只用来组织BOM结构。
进入BOM维护界面后,逐行输入组件物料。几个关键字段的填写逻辑:
- 组件数量:按实际用量填。如果是变动的,可以先填一个基准值,后续通过项目库存调整。
- 采购类型:外购件填F,自制件填E。这个字段决定了MRP跑出什么单据。
- 特殊采购类:填40或52,确保需求走项目库存。
- 提前期偏移:这个字段很多人忽略,但在装备制造项目里很有用。比如某个长周期物料需要提前三个月采购,你可以设一个负的提前期偏移,让MRP提前跑出采购申请。
- 工序号:如果BOM要关联到网络活动的工序,这里填工序号。不关联就留空。
填完之后保存,系统会生成一个BOM版本。这个版本号在后续的MRP运算、生产订单创建时都会用到。
3.3 MRP运算时WBS-BOM的行为逻辑
WBS-BOM挂好之后,下一步就是跑MRP。在SAP里,项目型MRP运算通常用MD51(项目MRP)或者MD01(全厂MRP)加项目参数。
MD51的运算逻辑是这样的:系统读取项目定义下的所有WBS元素,找到每个WBS元素上挂的BOM,然后逐层展开物料需求。展开过程中,系统会检查每个物料的库存情况——包括普通库存和项目库存。如果项目库存够,就直接冲销;如果不够,就按净需求跑出采购申请或生产订单。
这里有个关键点:项目库存的冲销逻辑。装备制造项目里,很多物料是提前采购到项目库存的。MRP运算时,系统会优先冲销项目库存,而不是普通库存。这个逻辑的前提是物料主数据的特殊采购类设对了,BOM里的特殊采购类也设对了。任何一个环节漏了,MRP就会去冲销普通库存,导致项目库存呆滞。
我踩过的一个坑:某次项目MRP跑完之后,采购申请是生成了,但项目库存里的物料没被冲销。查了半天发现是BOM里的特殊采购类没填,系统默认走了普通库存。后来把BOM里所有组件的特殊采购类补上,重新跑MRP,问题解决。
实操心得:每次跑完MRP,一定要用MD07看需求清单,用MD04看单个物料的需求/库存/采购全景。MD07能按WBS元素过滤,一眼就能看出哪个节点的需求跑出来了,哪个节点没跑出来。这个习惯能帮你省下大量排查时间。
4. 实操过程与核心环节实现
4.1 从项目创建到BOM挂接的完整流程
我拿一个实际的装备制造项目来演示完整流程。假设项目是一个“年产五万吨饲料生产线”,合同金额两千万,交付周期八个月。
第一步:创建项目定义和WBS结构
用CJ01创建项目定义,输入项目编号、项目名称、项目负责人、开始日期、结束日期。然后进入WBS维护界面,按三层结构拆解:
- 第一层:饲料生产线项目(项目定义)
- 第二层:原料接收系统、粉碎系统、混合系统、制粒系统、包装系统、电控系统
- 第三层:每个系统下面的关键设备,比如粉碎系统下面的粉碎机、除尘器、输送机
WBS创建完之后,用CJ02做预算,用CJ30做项目计划。这些步骤不是本文重点,略过。
第二步:创建虚拟物料和组件物料
用MM01创建虚拟物料,物料号可以用项目编号加后缀,比如“XM2025001-TOP”。物料类型HALB,采购类型E,特殊采购类52,MRP类型PD,计划策略50。
然后创建组件物料。粉碎机、除尘器、输送机这些,如果是外购的,物料类型ROH或HALB,采购类型F,特殊采购类40。如果是自制的,物料类型HALB,采购类型E,特殊采购类52。
第三步:用CS71挂接BOM
打开CS71,输入项目定义“XM2025001”和WBS元素“XM2025001.02.01”(粉碎系统下面的粉碎机节点)。上级物料输入“XM2025001-TOP”。回车后进入BOM维护界面。
逐行输入组件:
| 组件物料 | 描述 | 数量 | 采购类型 | 特殊采购类 | 提前期偏移 |
|---|---|---|---|---|---|
| CLJ-001 | 锤片式粉碎机 | 2 | F | 40 | -30 |
| CCQ-001 | 脉冲除尘器 | 1 | F | 40 | -20 |
| SSJ-001 | 螺旋输送机 | 3 | F | 40 | -15 |
| DJ-001 | 粉碎机电机 | 2 | F | 40 | -45 |
保存后,系统生成BOM版本号。
第四步:跑MRP
用MD51跑项目MRP,输入项目定义“XM2025001”,执行。系统会读取所有WBS节点上的BOM,展开物料需求,冲销项目库存,跑出采购申请。
跑完之后用MD07查看需求清单,按WBS元素过滤,确认每个节点的需求都跑出来了。然后用MD04逐个查看关键物料的库存/需求/采购全景。
第五步:采购申请转采购订单
用ME55批量处理采购申请,转成采购订单。采购订单上会自动带上WBS元素,收货时自动进入项目库存。
第六步:项目库存收货和发票校验
供应商交货后,用MIGO做项目库存收货,移动类型101,输入采购订单号,系统自动把库存记到项目库存。然后用MIRO做发票校验,发票金额自动归集到WBS元素。
4.2 参数计算与选择过程
WBS-BOM里几个关键参数的计算逻辑,我展开说一下。
提前期偏移的计算
提前期偏移 = 物料采购周期 + 安全库存天数 - 项目缓冲天数
比如粉碎机的采购周期是60天,安全库存设15天,项目缓冲设10天,那提前期偏移就是60+15-10=65天。在BOM里填-65,MRP运算时就会提前65天跑出采购申请。
这个参数在装备制造项目里特别重要,因为长周期物料如果跑晚了,整个项目进度就拖了。我一般建议对采购周期超过30天的物料都设提前期偏移。
安全库存的设定
项目型物料的安全库存不能按标准量产那套来设。标准量产的安全库存是为了应对需求波动,项目型物料的安全库存是为了应对采购延迟和质量问题。
我的经验值是:关键设备设采购周期的10%-15%作为安全库存,普通物料设5%-10%。比如粉碎机采购周期60天,安全库存设6-9天。这个量既能应对一般的延迟,又不会造成太多呆滞。
项目库存的冲销策略
MRP运算时,项目库存的冲销顺序是:先冲销项目库存,再冲销普通库存,最后跑净需求。这个顺序是SAP标准逻辑,不用改。但你要确保BOM里的特殊采购类设对了,否则系统不会去冲销项目库存。
4.3 实操现场记录:一次完整的MRP运算
我记录了一次实际的MRP运算过程,供你参考。
项目:XM2025001 饲料生产线 运算时间:2025年3月15日 09:00 运算方式:MD51,项目MRP 运算范围:项目定义XM2025001下的所有WBS元素
运算前的库存状态:
| 物料 | 项目库存 | 普通库存 | 在途采购 |
|---|---|---|---|
| CLJ-001 | 0 | 5 | 0 |
| CCQ-001 | 2 | 0 | 0 |
| SSJ-001 | 1 | 3 | 0 |
| DJ-001 | 0 | 0 | 2 |
运算结果:
- CLJ-001:需求2台,项目库存0,普通库存5,净需求0(冲销普通库存2台,剩余3台留在普通库存)
- CCQ-001:需求1台,项目库存2,净需求0(冲销项目库存1台,剩余1台留在项目库存)
- SSJ-001:需求3台,项目库存1,普通库存3,净需求0(冲销项目库存1台,再冲销普通库存2台,剩余1台普通库存)
- DJ-001:需求2台,项目库存0,普通库存0,在途2,净需求0(在途冲销)
这次运算没有跑出新的采购申请,因为所有需求都被库存和在途冲销了。但如果你把项目库存改成0,普通库存也改成0,那MRP就会跑出采购申请。
注意:MRP运算结果受很多因素影响,包括库存、在途、预留、安全库存、提前期偏移等。每次运算前,建议先用MD04检查关键物料的库存状态,确认没有异常,再跑MRP。跑完之后用MD07核对需求清单,确保每个WBS节点的需求都正确。
5. 常见问题与排查技巧实录
5.1 WBS-BOM挂接后MRP跑不出需求
这是最常见的问题。BOM挂好了,MRP跑了,但MD07里看不到需求。排查思路如下:
第一,检查BOM状态。用CS03查看BOM,确认BOM是“已释放”状态。如果BOM还是“创建”状态,MRP不会读取。
第二,检查WBS元素状态。用CJ03查看WBS元素,确认WBS是“已释放”状态。如果WBS还是“创建”或“未释放”,MRP不会运算这个节点。
第三,检查物料主数据的MRP类型。如果MRP类型设成ND(无MRP),那MRP运算时直接跳过这个物料。改成PD。
第四,检查计划策略。如果计划策略设成10(按库存生产),项目型MRP可能不认。改成40或50。
第五,检查特殊采购类。如果特殊采购类没设或设错了,MRP可能跑出需求但走的是普通库存,MD07里按WBS过滤就看不到。
第六,检查MRP运算参数。MD51运算时,确认“处理键”设成了“NETCH”(净变化)或“NEUPL”(重新生成),不要设成“NETPL”(计划周期净变化),后者可能漏掉一些需求。
5.2 项目库存冲销异常
项目库存明明有料,但MRP跑的时候没冲销,反而跑出了新的采购申请。这个问题通常是以下原因:
- BOM里的特殊采购类没填或填错。必须填40或52。
- 物料主数据的特殊采购类没填或填错。必须和BOM里一致。
- 项目库存的批次或评估类型不对。用MMBE查看项目库存详情,确认库存是“非限制使用”状态。
- MRP运算时没有勾选“项目库存冲销”选项。MD51的运算参数里,确认“冲销项目库存”是勾上的。
5.3 BOM变更后MRP不更新
项目执行过程中,BOM变更是常有的事。但变更之后MRP不更新,就麻烦了。排查思路:
- 变更BOM后,必须重新释放BOM。用CS03查看BOM状态,确认是“已释放”。
- 如果BOM变更涉及数量调整,MRP运算时要用“NEUPL”(重新生成)模式,不要用“NETCH”(净变化)。
- 如果BOM变更涉及新增组件,确认新组件的物料主数据已经配好,MRP类型、采购类型、特殊采购类都正确。
- 如果BOM变更涉及删除组件,确认该组件没有未清采购订单或生产订单。有的话,先处理订单,再跑MRP。
5.4 常见问题速查表
| 问题现象 | 可能原因 | 排查方法 | 解决方案 |
|---|---|---|---|
| MRP跑不出需求 | BOM未释放 | CS03查看BOM状态 | 释放BOM |
| MRP跑不出需求 | WBS未释放 | CJ03查看WBS状态 | 释放WBS |
| MRP跑不出需求 | MRP类型为ND | MM03查看物料主数据 | 改为PD |
| 项目库存不冲销 | 特殊采购类未设 | CS03查看BOM组件 | 补填40或52 |
| 项目库存不冲销 | 物料主数据特殊采购类未设 | MM03查看物料主数据 | 补填40或52 |
| BOM变更后MRP不更新 | BOM未重新释放 | CS03查看BOM状态 | 重新释放BOM |
| BOM变更后MRP不更新 | MRP运算模式不对 | MD51运算参数 | 改用NEUPL模式 |
| 采购申请不带WBS | 采购申请类型配置错误 | SPRO查看采购申请配置 | 配置WBS必输 |
| 收货不进项目库存 | 采购订单未带WBS | ME23N查看采购订单 | 补填WBS元素 |
| 发票不归集到WBS | 发票校验未带WBS | MIRO查看发票 | 补填WBS元素 |
5.5 独家避坑技巧
技巧一:BOM挂接前先做物料主数据批量检查。用MM60批量导出物料清单,检查MRP类型、采购类型、特殊采购类、计划策略这四个字段。有问题的先改,再挂BOM。这个习惯能帮你省下大量返工时间。
技巧二:MRP运算前先跑MD04。对关键物料逐个跑MD04,看库存、在途、预留、安全库存的状态。确认没有异常,再跑MRP。MD04能提前暴露很多问题,比如库存被冻结、在途采购被删除、预留被占用等。
技巧三:BOM变更后做影响分析。用CS15做BOM反查,看这个物料被哪些BOM引用了。变更之前先评估影响范围,避免改了A项目,B项目出问题。
技巧四:项目库存定期盘点。装备制造项目周期长,项目库存容易积压。建议每月用MMBE做一次项目库存盘点,对呆滞物料及时处理。呆滞超过三个月的,要么调拨到其他项目,要么退库,要么报废。
技巧五:MRP运算结果做快照。每次MRP运算后,用MD07导出需求清单,存档。下次运算后对比,看需求变化。这个习惯能帮你追踪项目物料需求的变化趋势,提前发现潜在问题。
6. 项目库存管理与成本归集的联动
6.1 项目库存的收货与冲销逻辑
WBS-BOM跑出来的采购申请,转成采购订单后,采购订单上会自动带上WBS元素。供应商交货时,用MIGO做收货,移动类型101,输入采购订单号,系统自动把库存记到项目库存。
项目库存和普通库存的区别在于:项目库存是“专属”的,只能用于这个项目。你没法把项目库存的物料用到其他项目上,除非做调拨。这个特性在装备制造项目里特别有用,因为它保证了物料的专用性,避免了项目之间串料。
冲销逻辑是这样的:MRP运算时,系统先看项目库存够不够。够的话,直接冲销项目库存,不跑采购申请。不够的话,跑净需求。这个逻辑的前提是BOM里的特殊采购类设对了。
我见过一个项目,采购订单上没带WBS元素,收货时库存进了普通库存。结果MRP跑的时候,项目库存是空的,系统又跑了一遍采购申请,重复采购。后来查了半天,发现是采购申请转采购订单的时候,WBS元素丢了。原因是采购申请类型配置里,WBS元素不是必输字段。后来把配置改成必输,问题解决。
实操心得:采购申请类型配置里,WBS元素一定要设成必输。这个配置在SPRO里,路径是“物料管理 -> 采购 -> 采购申请 -> 定义凭证类型”。找到你用的采购申请类型,把WBS元素字段设成“必输”。这个配置能避免90%的项目库存串料问题。
6.2 成本归集到WBS元素的实现路径
WBS-BOM的最终目的是成本归集。装备制造项目的成本主要包括:材料成本、人工成本、制造费用、外协费用。
材料成本的归集路径:采购订单带WBS元素 -> 收货进项目库存 -> 发票校验带WBS元素 -> 成本归集到WBS元素。这个路径是自动的,前提是采购订单和发票都带了WBS元素。
人工成本和制造费用的归集路径:生产订单带WBS元素 -> 工时确认带WBS元素 -> 成本归集到WBS元素。这个路径需要生产订单创建时带上WBS元素,工时确认时也带上WBS元素。
外协费用的归集路径:外协采购订单带WBS元素 -> 收货进项目库存 -> 发票校验带WBS元素 -> 成本归集到WBS元素。和外购件的路径一样。
成本归集完之后,用CJI3看WBS元素的实际成本,用CJ30看预算,用CJ31看预算/实际对比。这三个报表是项目成本控制的核心工具。
6.3 项目进度确认与收入确认的联动
装备制造项目通常按进度确认收入。进度确认的基础是WBS元素的完成百分比。在SAP里,进度确认用CN25或CN27,输入WBS元素和完成百分比,系统自动计算收入。
进度确认和WBS-BOM的联动在于:WBS-BOM跑出来的物料需求,收货后进入项目库存,项目库存的消耗对应着项目的实际进度。你可以用项目库存的消耗比例来估算进度,也可以用实际成本占预算的比例来估算进度。
我一般建议用实际成本占预算的比例来确认进度,因为这个比例更准确。具体操作:用CJI3看WBS元素的实际成本,用CJ30看预算,两者相除得到进度百分比。然后在CN25里输入这个百分比,系统自动计算收入。
注意:进度确认的百分比不能随便填,要有依据。装备制造项目的进度确认通常需要客户或监理确认,所以百分比要跟实际进度匹配。填高了,收入确认多了,后续可能要冲回;填低了,收入确认少了,财务报表不好看。
7. 与其他模块的集成要点
7.1 与MM模块的集成
WBS-BOM和MM模块的集成点主要在采购申请、采购订单、收货、发票校验这四个环节。
采购申请:MRP跑出来的采购申请,自动带WBS元素。采购申请转采购订单时,WBS元素自动带过去。
采购订单:采购订单上的WBS元素决定了收货时库存进哪个项目库存。这个字段必须填,不填的话收货进普通库存。
收货:MIGO收货时,输入采购订单号,系统自动带出WBS元素,库存记到项目库存。
发票校验:MIRO发票校验时,输入采购订单号,系统自动带出WBS元素,发票金额归集到WBS元素。
这四个环节是串联的,任何一个环节的WBS元素丢了,后面的成本归集就断了。所以我在项目上线前,一定会做一次全流程测试,从MRP运算到发票校验,走一遍,确认WBS元素在每个环节都正确传递。
7.2 与PP模块的集成
WBS-BOM和PP模块的集成点主要在生产订单创建、工时确认、生产收货这三个环节。
生产订单创建:MRP跑出来的生产订单,自动带WBS元素。生产订单上的WBS元素决定了工时确认和收货时成本归集到哪个WBS元素。
工时确认:用CO11N或CO12确认工时,输入生产订单号,系统自动带出WBS元素,人工成本和制造费用归集到WBS元素。
生产收货:用MIGO做生产收货,移动类型101,输入生产订单号,系统自动带出WBS元素,成品库存记到项目库存。
PP模块的集成比MM模块复杂,因为涉及工时确认和制造费用分摊。装备制造项目的制造费用分摊通常按工时比例分摊,所以工时确认的准确性直接影响成本归集的准确性。
7.3 与CO模块的集成
WBS-BOM和CO模块的集成点主要在成本归集、预算控制、进度确认这三个环节。
成本归集:MM和PP模块归集过来的成本,自动记到WBS元素。用CJI3查看。
预算控制:用CJ30做预算,用CJ31做预算/实际对比。预算超了,系统会报警。
进度确认:用CN25做进度确认,系统自动计算收入。
CO模块是WBS-BOM的最终落脚点。前面MM和PP模块跑得再好,如果CO模块的成本归集不对,整个项目的财务核算就是一笔糊涂账。所以我在项目上线前,一定会用CJI3核对每个WBS元素的成本,确认材料成本、人工成本、制造费用都正确归集了。
8. 一些实操中的个人体会
WBS-BOM这个东西,说起来简单,做起来琐碎。我做了这么多年装备制造项目的SAP PS实施,最大的体会是:细节决定成败。
一个特殊采购类字段没填,可能导致整个项目的库存管理乱套。一个提前期偏移没设,可能导致长周期物料采购延迟,项目进度拖后。一个WBS元素没释放,可能导致MRP跑不出需求,采购计划全空。
所以我的建议是:项目上线前,一定要做全流程测试。从项目创建、WBS拆解、BOM挂接、MRP运算、采购申请、采购订单、收货、发票校验、成本归集、进度确认,走一遍。每个环节都确认WBS元素正确传递,每个字段都确认配置正确。
另外,项目执行过程中,BOM变更是常态。变更之后一定要重新释放BOM,重新跑MRP,重新核对需求。不要觉得变更很小就不管,小变更可能引发大问题。
最后分享一个小技巧:用MD07导出需求清单时,按WBS元素排序,然后跟项目进度计划对比。如果某个WBS元素的需求跑出来的时间比计划晚了,说明提前期偏移设得不够,要调整。这个习惯能帮你提前发现进度风险,及时采取措施。