简介:这份文档围绕SAP系统中按单生产(MTO)模式下的委外加工业务展开,面向已具备一定SAP PP与MM模块基础的实施顾问、关键用户及生产计划人员,帮助其理清外包自身销售自身、外包自身销售父阶成品两类典型场景的完整处理逻辑。内容以两个实例为主线,覆盖销售订单创建与MRP运行、计划订单转采购申请时项目类别L与科目分配组E的设置、自供材料与共用材料的保留、非限制库存转供应商库存、311 E内部转移、101 E成品收货与543 O原料消耗等关键环节,并强调批次与外协供应商编码匹配等易错点。资源包为1个doc文档,约442KB,篇幅精炼、结构清晰,便于按场景对照查阅。目前已有2408人学习,适合需要梳理委外加工流程、排查库存移动与成本归集问题的读者参考。
1. 按单生产委外加工:两张 BOM 图背后的库存账怎么算
按单生产(MTO)叠加委外加工,是 SAP 里最容易把库存账做乱的一类场景。销售订单驱动 MRP,计划订单转采购申请,项目类别挂 L、科目分配组挂 E,原料以 541 或 311 E 转到供应商库存,成品收 101 E,原料消耗走 543 O——每一步移动类型都对应一笔真实的物权转移,错一个,月末对账就要翻车。这份总结拆了两个实例:两层 BOM 的成品自身外包,以及三层 BOM 的父阶成品外包、子件自供。前者考的是共用材料怎么从非限制库存发到供应商,后者考的是销单库存怎么转成供应商库存、批次为什么必须写外协供应商编码。适合已经能跑通标准采购、但对委外特殊库存心里没底的顾问和关键用户,照着两个实例走一遍,基本能把 MTO 委外的库存链路摸清。
2. 两层 BOM 实例:共用材料从非限制库存到供应商库存
先看结构最简单的那个:W 是要销售的成品,本身整单外包;T 是 W 下面的共用材料,库存要求非限制。所谓共用,意思是 T 不只服务 W 这一张单,别的产品也在用,所以它不能提前挂在某张销售订单库存上,只能以非限制状态躺在仓库里,等具体采购订单来了再发。这个前提决定了后面所有移动类型的选择——你不能用 411 E 那种销单库存转移,只能用 541 把非限制库存直接转成供应商库存。
2.1 从销售订单到带 L 项目类别的采购申请
第一步永远是 VA01 建销售订单,行项目类别用标准 MTO 的,然后跑 MRP。MRP 跑完在 MD04 里能看到 W 的计划订单,这个计划订单不是拿去转生产订单的,而是转采购申请——因为 W 是外包,企业不自己生产。转的时候有两个字段是命门:项目类别选 L(分包/委外),科目分配组选 E(有 KD-CO 的客户)。项目类别 L 告诉系统这是一张委外采购,收货时要同时收成品、发原料;科目分配组 E 把成本归集到销售订单,保证 MTO 的成本能追到具体客户单。
# 事务码路径(GUI 操作,非脚本) # VA01 建销售订单 -> MD02/MRP 运行 -> MD04 查看计划订单 # MD04 中选中计划订单 -> 转采购申请(或 MD15 集中转换) # 采购申请行项目关键字段: # 项目类别 = L (分包/委外) # 科目分配类别 = E (销售订单相关,带 KD-CO) # 处理组件 = 保留 T (勾选需要外发的原料)这里最容易漏的是「处理组件」里的保留动作。委外采购申请如果不显式保留 T,系统不知道这张单要发哪个料出去,后续采购订单里就带不出组件行,541 也就无从发起。我一般转完采购申请先回 ME53N 看一眼组件页签,确认 T 在、数量对、库存地点对,再往下走。采购申请转采购订单用 ME21N 或 ME59N 都行,转完 MD04 里 W 的采购订单行下面会挂出 T 的组件需求,这就是后面发料的依据。
2.2 541 转供应商库存与 101 E / 543 O 收发货
采购订单建好后,先别急着收货。T 现在还是非限制库存,得先用 MB1B 做 541 移动:非限制库存 → 供应商库存。541 是委外场景专用的转储移动类型,它把物料从本厂非限制库存转到「供应商特殊库存」下,物权还在企业,但物理位置算在供应商处。做完用 MMBE 看,T 的非限制库存减少,供应商库存增加,两个数字要对得上。
# MB1B 541:非限制库存转供应商库存 # 移动类型 = 541 # 物料 = T,数量 = 组件需求数量 # 特殊库存 = 供应商,填外协供应商代码 # 收货:MIGO 对采购订单收货 # 成品 W:移动类型 101,特殊库存标识 E(销售订单库存) # 原料 T:移动类型 543,特殊库存标识 O(供应商库存消耗)收货这一步是整套流程里最需要盯屏幕的地方。MIGO 对采购订单做 101 收货时,系统会同时处理两件事:成品 W 按 101 E 收进销售订单库存,原料 T 按 543 O 从供应商库存消耗掉。E 是系统根据项目类别 L 和科目分配 E 自动带出来的,不用手填,但你要会看——如果收货界面里成品的特殊库存标识不是 E,八成是采购申请的项目类别或科目分配组设错了,回头改单比事后冲销省事。543 O 同理,O 代表供应商库存,消耗的是 541 转过去的那部分。收完再跑 MMBE:W 的销售订单库存增加,T 的供应商库存减少,两边数量必须闭合。闭合了才能对销售订单做发货过账,整条链路才算走通。
3. 三层 BOM 实例:销单库存转供应商库存的 311 E 与批次坑
第二个实例复杂一档。D 是销售成品,整单外包;D 下面挂 W,W 是定制生产、专供 D 的自供材料;W 下面才是共用材料 T。三层结构意味着 W 不能像实例一里的 T 那样直接从非限制库存发走——W 是为 D 这张单专门生产的,它得先有自己的销售订单库存,再从这个库存转到供应商库存。多出来的这一层,就是 311 E 和批次编码登场的地方。
3.1 D 的采购申请与 W 的销单库存准备
流程起点一样:对 D 建销售订单、跑 MRP。但这次 MRP 展开后,D 的计划订单转采购申请(项目类别 L、科目分配 E),同时 D 对 W 产生相关需求,W 的计划订单要转成生产订单并缴库。缴库之后,W 进的是 D 这张销售订单的库存,也就是销单库存——因为 W 是专供 D 的,它的库存归属必须跟着 D 的销售订单走,不能混进非限制库存。
# 对 D:VA01 建单 -> MRP -> 计划订单转采购申请 # 项目类别 = L,科目分配 = E # 处理组件保留 W(自供材料) # 对 W:计划订单转生产订单(CO01/CO40)-> 生产收货缴库 # 收货后 W 进入 D 的销售订单库存(特殊库存 E) # 确认:MMBE 查看 W 的销售订单库存数量 = 组件需求数量这一步的验证点很明确:MMBE 里 W 的销售订单库存必须等于 D 采购订单里 W 的组件需求数量。对不上就说明 W 的生产订单收货没挂对销售订单,或者 MRP 的相关需求没跑出来。我见过有人图省事把 W 直接收进非限制库存,后面 311 E 就发不出去——311 E 的「E」要求源库存必须是销售订单库存,源不对,移动类型直接报错。
3.2 311 E 发货与批次必须写外协供应商编码
W 的销单库存备好之后,用 MB1B 做 311 E:销售订单库存 → 供应商库存。311 是库存地点间转储,加 E 表示源是销售订单库存,目标落到供应商特殊库存。做这步时系统会要求输入批次,这里的批次有个硬规矩——必须写外协供应商的编码。原因不玄学:供应商库存是按供应商维度隔离的,批次里不带供应商编码,后续 543 O 消耗时系统匹配不到对应的供应商库存段,收货就会卡住或者消耗到错误的库存上。
# MB1B 311 E:销售订单库存转供应商库存 # 移动类型 = 311,特殊库存标识 = E(源) # 物料 = W,数量 = 组件需求 # 批次 = 外协供应商编码(强制,不能留空或自编) # 目标:供应商特殊库存,供应商 = 外协供应商 # 收货:MIGO 对 D 的采购订单收货 # D:101 E 收进销售订单库存 # W:543 O 从供应商库存消耗311 E 做完,W 的销单库存减少、供应商库存增加,两边数量对齐。然后 MIGO 对 D 的采购订单收货:D 按 101 E 进销单库存,W 按 543 O 消耗供应商库存。收完再查 MMBE,D 的销单库存增加、W 的供应商库存归零,链路闭合。整个三层场景比两层多出来的,就是 W 这一段的「先生产缴库、再 311 E 转出」——本质是把自供材料先做成专属库存,再按供应商维度隔离,两步都不能省。
4. 避坑与排查:委外库存对不上时先看这五处
4.1 收货时成品特殊库存标识不是 E
现象:MIGO 对委外采购订单收货,成品行的特殊库存标识是空的或者别的值,收完库存进不了销售订单库存。原因基本锁定在采购申请:项目类别没选 L,或者科目分配组没选 E,两者缺一个,系统就不会把这张单识别成 MTO 委外。解决方式是回 ME53N 改采购申请的项目类别和科目分配类别,已转采购订单的要同步改采购订单行,改完再收货。别想着收货后手工调库存,调出来的账和成本归集对不上。
4.2 541 报错「供应商库存不存在」
现象:MB1B 做 541,系统提示供应商库存相关错误。原因通常是采购订单里没有正确维护供应商,或者组件行没保留 T,系统找不到这张单对应的供应商库存段。解决:先 ME23N 看采购订单的组件页签,确认 T 在且供应商字段有值;再看采购申请阶段「处理组件」是否勾了保留。两个都补上再重做 541。这个错在共用材料场景里出现频率最高,因为共用料容易被当成普通库存直接发。
4.3 311 E 源库存校验失败
现象:做 311 E 时系统报源库存不足或库存类型不符。原因是 W 的库存不在销售订单库存里——要么生产订单收货时没挂销售订单,要么收货收进了非限制库存。解决:MMBE 查 W 的库存分布,如果数量在非限制库存下,说明收货环节就错了,得冲销重收,收货时在 MIGO 里指定销售订单和行项目。311 E 的 E 是硬约束,源库存类型不对,改批次、改数量都没用。
4.4 543 O 消耗不到供应商库存
现象:收货时原料或自供材料按 543 O 消耗,系统提示供应商库存不足。最常见原因是 311 E 或 541 转过去时批次没写外协供应商编码,供应商库存段和采购订单要消耗的段对不上。解决:MMBE 按供应商库存维度查,看转过去的数量挂在哪个批次下;批次错的要冲销 311 E/541 重做,批次填外协供应商编码。这个坑在实例二里几乎是必踩项,批次字段看着不起眼,实际是供应商库存的索引键。
4.5 收货后两边数量不闭合
现象:101 E 收完,成品销单库存增加了,但原料供应商库存没按预期减少,或者减少的数量和组件需求对不上。原因可能是采购订单组件行的数量被改过、543 O 消耗了错误的批次、或者 541/311 E 转出的数量和组件需求本身就不一致。排查顺序:先 MD04 看采购订单组件需求数量,再 MMBE 看供应商库存余额,两个数一比就知道差在哪一段。差额找到后按段冲销重做,别在收货环节硬调,硬调会把成本差异留到月末。
5. 把两个实例压成一张检查表:移动类型与字段的对应关系
跑完两个实例,我习惯把关键字段和移动类型的对应关系固化成一张表,下次接新单先对表再动手,比凭记忆靠谱。这张表的核心逻辑是:库存从哪来、到哪去、特殊库存标识是什么,三者决定移动类型,而项目类别和科目分配组决定系统给不给这个标识。
| 环节 | 移动类型 | 源库存 | 目标库存 | 关键字段 |
|---|---|---|---|---|
| 共用材料发供应商 | 541 | 非限制库存 | 供应商库存 | 供应商代码必填 |
| 自供材料发供应商 | 311 E | 销售订单库存 | 供应商库存 | 批次=外协供应商编码 |
| 成品收货 | 101 E | 采购订单 | 销售订单库存 | E 由 L+E 自动带出 |
| 原料/自供料消耗 | 543 O | 供应商库存 | 消耗 | O 对应供应商库存段 |
表里最值得盯的是 311 E 那一行的批次字段。两层场景用 541,源是非限制库存,不涉及批次归属问题;三层场景用 311 E,源是销单库存,批次就成了供应商库存的隔离键。很多人把 541 和 311 E 混着用,觉得都是「发到供应商」,结果在批次上翻车。判断标准很简单:材料是不是专供这张销售订单——是,走 311 E 且批次写供应商编码;不是,走 541。
再补一个验证习惯:每做完一段移动,立刻 MMBE 按「特殊库存」维度看余额,不要等整单收完再查。541 做完看供应商库存有没有增加,311 E 做完看销单库存减、供应商库存增,101 E 收完看成品销单库存增、原料供应商库存减。分段验证的好处是错误当场暴露,冲销范围小;整单收完再查,一旦不闭合,你得从头一段段倒推,血泪经验是倒推花的时间够你把整单重做两遍。
最后说个参数层面的边界:科目分配组 E 绑定的是销售订单相关的成本对象,如果企业用的是项目型 MTO 而不是销售订单型,科目分配组可能要换,具体看成本控制范围里的配置。这一点原文没展开,但实际项目里换过科目分配组的单子,收货时 E 标识带不出来是常见现象,遇到先查配置再怀疑操作。从那以后我每次接委外单,都强制先把项目类别、科目分配组、组件保留、批次编码这四个字段在单据上过一遍再点保存,希望帮到你。
本文还有配套的精品资源,点击获取