SAP库存调拨全解析:MB1B移动类型与转储订单配置实战

发布时间:2026/10/2 12:48:42
SAP库存调拨全解析:MB1B移动类型与转储订单配置实战 简介一套专门梳理企业资源计划系统中物料管理模块库存调拨与发货流程的DOCX技术文档适合处理采购、仓储、生产供料等日常业务的实施顾问、物料管理关键用户及供应链相关岗位人员参考目的在于澄清不同调拨方式的差别、后台参数对业务流程的影响以及实际操作中容易遇到的配置盲点。文档共一个文件压缩包大小约二点二五兆字节已吸引超过一千五百人次下载学习。正文以移动类型为主线详细介绍库存地间直接调拨与分步调拨明确在途库存的生成、查询与冲销进而分析不同工厂间调拨对物料需求计划的影响并指出采用转储订单方式可以更准确传递库存需求同时补充物料到物料方式因移动平均价差异可能带来的价值变动以及限制库存与冻结库存之间的状态转换。后台设置部分逐一说明库存调拨订单的凭证类型分配、销售与分销功能下工厂装运数据的配置、不采用销售与分销功能时避免生成出货单的相关操作并配有具体事务代码与查询报表帮助读者将操作步骤与实际场景对应起来。对于需要规范库存调拨、优化企业供应链的从业者这份资料能提供较完整的实施参考也可作为项目上线培训或内部知识传递的补充材料。1. 库存调拨这件事90% 的新手栽在“移动类型背不下来”SAP 库存调拨与发货听起来就是 MB1B 里敲两个移动类型实际跑起来却是一堆在途库存、两步过账、转储订单范围、MRP 联动的问题。我刚接触 MM 模块时以为 311、313、315 就是“三个数字选一个”结果第一次做工厂间转储就用错了 311把本厂库存调到了另一个工厂MRP 却把需求算在了调出方头上整个计划订单乱成一锅粥。这篇梳理的是 SAP MM 模块里库存调拨的完整玩法包括 MB1B 一步/二步转储、工厂间 301/303/305、物料到物料 309、状态转变 343/344以及后台配置里最容易翻车的 NB/UB 与工厂装运数据设置。适合正在做库存调拨、发货过账或者被 MMBE 里的在途库存折腾过的 SAP 从业者。2. MB1B 五种移动类型拆解311/313/315、301/303/305、309、343/344 的适用边界2.1 库存地到库存地311 一步与 313/315 二步的取舍库存地到库存地的调拨是 SAP 库存管理中最高频的操作。同一工厂下A 库存地转到 B 库存地MB1B 里敲移动类型 311是一步转储。一步的意思是发货过账的同时接收方库存立刻增加系统在同一个物料凭证里完成出和入中间没有任何“在路上”的状态。311 的适用场景非常明确两个库存地在物理上离得近、运输时间可以忽略、财务上不需要区分在途。比如同一个厂区内从原材料仓转到线边仓用 311 最干净。MB1B 界面里填好物料、数量、工厂、A 库存地、B 库存地过账后 MMBE 里看到的是 A 减少、B 增加数量完全对得上。但注意如果两个库存地之间存在运输时间差或者你希望财务能追踪“货已经发了但还没到”的这部分库存就必须用二步转储。二步的移动类型组合是 313 发货 315 收货。313 过账后物料从 A 库存地扣除进入“在途库存”这个状态在 MMBE 里是看不到的要用 MB5T 或者特定报表才能查到。等货物实际到达 B 库存地再做 315 或 MIGO 收货B 的库存才增加。用 313 发货时系统会自动生成一张后续的收货凭证凭证里已经带好了 315 的移动类型提示。我在项目里见过很多用户 313 做完就忘了 315导致调出方库存一直挂在“已发货未到货”月底盘点对不上账。所以二步转储不是“多敲一次”这么简单它是一张完整的在途库存凭证链313 创建转储需求315 完成转储收货。你可以把 313/315 理解成“先把货发出去物流信息挂在那到了再确认”。2.2 工厂间的一步/二步301 与 303/305 的操作差异工厂间转储比库存地之间多了一层复杂性跨工厂意味着跨评估范围库存价值、科目、MRP 归属都会跟着变。MB1B 里工厂间一步转储用 301二步转储用 303 发货 305 收货。301 操作时MB1B 里要填转出工厂和转入工厂系统要求指定转出库存地和转入库存地。过账后转出工厂库存减少转入工厂库存增加同一个凭证里完成跨工厂库存转移。301 看起来方便但它有一个隐含要求两个工厂之间必须有运输关系而且财务上要把这次移动当做一个直接调拨处理不区分在途。303 305 则是二步转储303 转出方发货后货物进入“跨工厂在途库存”这部分在途库存挂在转出工厂名下305 由转入方收货后在途库存消失转入工厂库存增加。和 313/315 的区别在于跨工厂的二步转储牵扯到两个工厂的评估范围所以在途库存的成本归属、科目确定逻辑都会更复杂。我的实践经验是如果公司内部有物流时间或者两个工厂之间存在月底结账的时间差303/305 是标配。否则一到月底货物还在货车上的时候你根本没法回答“这批货到底算哪个工厂的库存”。使用 303/305 后在途库存可以通过 MB5T 跨工厂查询这一点在月底对账时非常有用。MB5T 看到的在途记录数量正好等于 303 发货总数减去 305 收货总数月末盘点时可以直接把这张报表拉出来作为跨工厂在途库存的账面依据。2.3 309 和状态转变价值差异不得不防物料到物料方式移动类型 309意思是把一个物料的库存直接转成另一个物料的库存。SAP 里这个功能定位很特殊它处理的是“同一个实物但主数据维护成了两个物料号”的场景。309 的坑在于移动平均价。不同仓库或不同工厂里同一个物料可能因为收货价格不同而有不同的移动平均价如果做 309 把 A 物料转成 B 物料系统会用 B 物料的当前价格来评估这笔库存移动与 A 物料原账面价值之间的差异会直接影响库存金额。这个差异发生时很多财务同事会认为是系统算错了实际上它只是因为两个物料号的价格不同步。所以 309 我一般不建议常用。如果真的遇到物料号合并、替换的场景优先考虑先做 311 调拨到同一库存地再在物料主数据层面做后续处理。项目上如果有这种需求最好先问清楚这两个物料号是否还需要并存财务是否接受价值差异如果你的回答是“要并存”那 309 就不是好方案因为它在物料主数据层面会产生一笔永久性的价值差异。状态转变相关的 343/344 则相对单纯。344 是把非限制库存转成冻结库存343 是冻结转非限制。这两组移动类型不改变库存总量只改变库存状态。操作时 MB1B 里选择对应的移动类型填好物料和数量即可。需要注意的是一旦物料被冻结MRP 不会把它纳入可用库存计算。所以排产前要检查是否有一批物料被误冻结否则计划员会看到产能不足而仓库里明明有货。这类误操作在项目中特别常见尤其是批号管理启用的工厂里仓库人员在做质检冻结时容易把整个批次都冻结掉。3. 工厂间转储为什么必须走转储订单MRP 联动与 NB/UB 配置路径3.1 工厂间转储涉及 MRP为什么 311 会被误用很多用户做完工厂间转储后发现 MRP 计算结果很奇怪转出工厂老是在生成采购申请转入工厂却在报缺料。原因很简单直接使用 301 这类移动类型做工厂间调拨时MRP 无法识别这是一笔“工厂间需求传递”。MRP 在跑计划时会查看每个工厂的独立需求和依赖需求。如果 A 工厂向 B 工厂转储了 100 个物料从库存角度A 减少 100、B 增加 100但 MRP 并不会自动理解成“B 的需求应该传递到 A 的供应计划里”。结果就是 B 工厂依旧按自己的需求跑 MRPA 工厂也看不到这块新增需求最后可能两个工厂都缺料或都多采。这正是工厂间转储必须采用转储订单方式的原因。转储订单的本质是一张采购订单只不过供应商和收货工厂都来自公司内部。当你在后台配置好转储订单类型后系统会把“转出工厂”当作供应商“转入工厂”当作收货方这样 MRP 在计算时会把转储订单当成真正的供应来源需求就能在工厂之间正确传递。3.2 转储订单的核心配置分配凭证类型与转储单类型 NB转储订单的后台配置入口在 IMG 路径物料管理 → 采购 → 采购订单 → 设置库存调拨订单 → 分配凭证类型。这个配置的作用是告诉系统在工厂间转储场景下使用什么采购订单类型来处理。SAP 标准的转储订单类型一般是 NB标准采购订单但实际项目中很多公司会自定义一个专用类型比如 ZUB。配置时需要为“库存调拨订单”分配对应的凭证类型同时指定转出工厂和转入工厂的工厂范围。这里有一个容易混淆的点转储单类型 NB 和“是否勾选一步转储”是两回事。NB 只是采购订单类型它决定了这张转储单的号码范围、审批策略、科目确定规则。而一步/二步的行为由“定义工厂的装运数据”里的配置决定两者互不替代。3.3 一步还是二步由“定义工厂的装运数据”决定后台配置路径物料管理 → 采购 → 采购订单 → 设置库存调拨订单 → 定义工厂的装运数据。这个配置点非常关键它按“发货工厂 收货工厂”的组合决定转储订单过账时是直接完成一步转储还是先生成出货单再走二步。配置界面里每一行代表一个工厂组合。关键字段有两个一是“工厂客户是否采用一步转储方式”勾选则一步不勾选则二步二是接收工厂、供货工厂的对应关系。举个例子A 工厂发给 B 工厂如果勾选了一步那么转储订单在 A 工厂发货时系统会自动完成 B 工厂的收货不需要 B 工厂再操作。如果不勾选A 工厂发货后货物进入在途状态B 工厂需要针对这张转储订单做收货。和 303/305 的“纯库存移动”二步不同基于转储订单的二步转储在途库存是有采购订单依据的MRP 能看到这张单子。如果项目里要求每一次工厂间调拨都有据可查、可追溯转储订单是正确选择。那些只做库存实体调拨、不需要 MRP 传递的场景才考虑直接用移动类型。4. 后台配置把调拨逻辑写死凭证类型、工厂装运数据与一步/二步开关4.1 配置入口采购→采购订单→设置库存调拨订单在做任何工厂间调拨项目前先检查这条配置路径SPRO → 物料管理 → 采购 → 采购订单 → 设置库存调拨订单 → 分配凭证类型。这一步决定了系统用什么单号类型来生成转储订单。我建议项目上线前把这个配置做成一张对照表按“发货工厂/收货工厂/转储单类型/是否一步”四个维度列清楚。实际配置中最常见的问题是凭证类型分配错误导致转储订单生成时打不开“出货单”界面或是系统提示“此订单类型不允许装运”。遇到这类问题优先检查分配凭证类型里是不是用了错误的采购订单类型。凭证类型分配时需要注意转储订单类型与普通采购订单类型最好不要混用。如果公司有标准 NB 采购订单又有内贸转储需求建议单独复制一个 Z 类型。这样报表统计时可以轻易区分外部采购和内部调拨避免月底财务对账时把内部转储当成外部采购来查。4.2 工厂装运数据勾选一步就一步不勾选就走二步“定义工厂的装运数据”配置点是工厂间转储的核心开关。进入配置后系统会显示工厂组合列表。每一行代表一个调拨关系需要维护的字段包括发货工厂、收货工厂、是否一步转储、装运数据相关参数。实际操作中配置一步转储最怕的是勾错方向。比如 A 工厂发给 B 工厂用一步B 工厂发给 A 工厂可能因为距离远要用二步这两个方向是两行不同的配置。很多项目上线时只配了一个方向导致反向调拨时转储订单发货后 B 工厂看不到在途库存货到了才入库中间状态完全不可控。还有一个细节值得注意装运数据配置里包含“转储单类型”字段常见值为 NB 或 Z 开头自定义类型。这个字段与 4.1 的凭证类型分配不同它决定的是转储订单在装运时使用的单据类型。如果这里填了不正确的类型可能导致发货时系统要求创建出货单而实际上你并不需要 SD 功能介入。4.3 UB 场景实测351 不走 SD 时不生成出货单UB 指的是不采用 SD 功能、不走出货单流程的工厂间转储配置。在这种配置下做 MB1B 351 发货系统不会生成出货单而是直接过账库存移动。351 是工厂间一步转储的移动类型它和 301 的区别在于351 必须在后台配置了转储订单的情况下使用而且它的逻辑是基于转储订单来做的不是单纯的库存移动。项目上最常见的现象是配置 UB 后MB1B 351 过账时报错“系统未给转储单分配范围”提示范围 4500。这个 4500 其实是系统默认的转储单范围出现这个提示基本说明后台没有给对应的工厂组合分配有效的转储单范围。解决思路是先确认发货工厂、收货工厂在“定义工厂的装运数据”中已正确维护再检查“分配凭证类型”里工厂组合对应的凭证类型是否有效最后看是否存在多个工厂组合共用一个范围导致系统列表模糊无法自动确定唯一值。我一般在项目里会建议在配置中按工厂组合分别创建独立范围不要复用标准的 4500这样可以显著降低调拨单据交叉的问题。5. 调拨踩坑排查五个高频异常的现场还原与处理5.1 现象一313 发货后库存与账面对不上现象313 过账成功但 MMBE 里库存没有减少用户以为系统出错了。原因313 是二步转储的第一步过账后库存进入在途状态MMBE 的当前库存不体现在途。用户看的是当前库存自然觉得没变化。解决用 MB5T 查看在途库存确认数量已挂在调出工厂名下待货物到达后做 315 或 MIGO 收货库存才会在接收方出现。如果月底盘点这部分在途库存要单独编制对账表不能和实物库存混在一起。从那以后我每次做 313 都会顺手开一张 MB5T 截屏发给财务作为在途依据。5.2 现象二接收时 MIGO 无法过账现象做 315 或 MIGO 收货时系统提示“物料凭证不完整”或“移动类型不允许”。原因二步转储的收货系统要求参照 313 生成的转储凭证去操作。如果用户新建了一个物料凭证而不是参考原凭证系统不知道这票货对应的发货是哪一笔就无法完成过账。解决MIGO 里选择“收货 → 采购订单”或者在 MB1B 里输入 315 后直接回车让系统带出原 313 的凭证号。不要手工新建。若还是报错检查移动类型 315 是否在后台“定义库存管理的移动类型”中已授权给该用户的操作范围。5.3 现象三跨工厂调拨 MRP 跑出了奇怪计划订单现象两个工厂之间做调拨后MRP 在调出工厂生成了很多计划订单而这些订单没有对应的真实需求。原因直接用了 301 调拨没有走转储订单MRP 无法识别跨工厂需求把调拨视为单一工厂的库存移动从而忽略了转入工厂的供应需求。解决改成转储订单流程。先创建工厂间转储订单含 NB 类型再做 301 或 351 发货让 MRP 能看到这张内部采购订单并将需求正确传递到转出工厂。如果已经跑乱了可以在 MD04 里单个需求逐个删掉不正确的计划订单再重跑 MRP。5.4 现象四转储单范围报“4500”现象做工厂间转储发货时系统提示“系统未给转储单分配范围所以为 4500”单子没法继续。原因后台“定义工厂的装运数据”中没有为当前发货工厂和收货工厂的组合配置有效的转储单范围。4500 只是系统默认值不代表它被分配到当前组合。解决进 SPRO 检查工厂组合对应的范围编号如果没有则新增如果有但系统选择不到检查范围是否被停用或权限对象是否限制了该范围。注意不同工厂组合可以共用一个范围但如果存在多值匹配SAP 会出现选择列表如果列表为空就回到 4500 提示。5.5 现象五309 调拨之后标准价被带偏现象物料到物料 309 调拨完成后MB51 里看到一笔价值差异财务要求冲销。原因两个物料号移动平均价不同309 过账时系统按接收物料的当前价格评估导致库存金额跳动。这是 309 的业务逻辑决定的不是系统故障。解决尽量避免 309。如果确实要用先核对两个物料的价格差异差异大时先做一笔库存价值调整再做 309。另外检查物料主数据的“价格控制”字段如果是 V 价格控制309 的差异会直接进入库存金额如果是 S 价格控制价格差异会进差异科目处理方式完全不同。6. 调拨后的验证与进阶用 MMBE/MB52/MB5T 联动检查在途库存与价值6.1 用报表组合追踪调拨链路调拨不是过完账就结束了至少要验证三件事数量对得上、在途挂得清、MRP 看得见。同一工厂内库存地到库存地的调拨用 MMBE 按工厂查看选择“库存地级别”能直接看到 A 库存地和 B 库存地的数量变化。如果做了 313/315 二步MMBE 看不到在途这时切到 MB5T 查看同一工厂、不同库存地的在途记录。跨工厂调拨用 MB52 查看库存时会发现每个工厂的库存只体现本厂库存跨厂在途要通过 MB5T 选择“转出工厂”和“转入工厂”来查。MB5T 报表里会把每一步 303、305 的凭证列出来最后汇总出在途数量和金额。这套组合查法我每次做完调拨都会跑一遍第一步 MMBE 看库存地状态第二步 MB52 看工厂总数第三步 MB5T 看在途明细。三步对上了才敢说这票调拨闭环了。6.2 一个可复核的后台校验动作配置校验方面我习惯用事务代码 ME05 或直接看配置表 T16LB 来核对工厂组合的装运数据。重点核对三项发货工厂、收货工厂、一步转储标记。如果发现某个工厂组合配置缺失补充完成后要重新测试。测试方法是创建一张该工厂组合的转储订单然后做 301 发货观察发货过账后收货工厂的库存是否自动增加。如果自动增加说明一步配置生效如果没增加说明系统把它当成了二步需要接收方做后续收货。这一个测试动作能同时验证转储订单类型、装运数据、移动类型三个环节是否串联正确。最后提一个习惯从那以后我每次做工厂间调拨配置都会强制自己走一遍“先建转储订单 → 301 发货 → MMBE/MB5T 验证 → ME05 核对配置”的完整链路确认无误后才让用户开始操作。这个习惯救过我好几次希望帮到你。本文还有配套的精品资源点击获取