SAP S/4HANA MM模块培训 36 - 凭证编号分配:物料、会计与预留号码范围


SAP S/4HANA MM 第36课凭证编号分配课程封面

SAP S/4HANA MM模块培训 36 - 凭证编号分配:物料、会计与预留号码范围

SAP 中的“编号”不是一个全系统共用的流水号。一次估价相关的货物移动,可能同时留下采购订单、物料凭证、会计凭证和物料分类账凭证;每类对象都有自己的唯一键、编号范围和控制入口。真正需要掌握的不是记住某个演示号码,而是理解业务动作如何先确定事务/事件类型,再找到编号范围组、凭证类型和年度区间。

本课视频用一笔真实的 101 采购订单收货建立证据链:采购订单 4500000292 触发物料凭证 370,并生成会计凭证 5000000151;随后在采购订单历史中确认事务/事件类型 WE。但是,视频刚开始解释“事务/事件类型 → 编号范围组 → 编号区间”的关系,就在 00:10:03.959 被宣传页截断。开场议程中的物料与盘点凭证编号、会计凭证编号和预留编号配置均未完整演示,本文会把这些内容逐节标为“SAP 官方教程补充”,避免把官方补齐误写成视频实录。

视频来源:YouTube - Video 36 Number Assignment

本课目标

学完本课,你应该能够:

  • 区分采购订单号、物料凭证号、会计凭证号和预留号;
  • 解释库存管理事务/事件类型 WE 如何参与物料凭证编号分配;
  • 复盘采购订单 4500000292、物料凭证 370 和会计凭证 5000000151 的视频证据链;
  • 理解 OMBTOMBAFBN1OMC2 分别控制什么;
  • 正确处理年度区间、内部编号、区间容量、重叠风险和当前号码状态;
  • 明确视频实录、SAP 标准示例与客户系统自定义值之间的边界。

视频实录:课程范围与中断边界

第36课视频实录与SAP官方补充的内容边界

视频开场列出三组议程:物料与实物盘点凭证编号、会计凭证编号、预留编号。实际录制只完成了业务凭证演示和编号模型的开头。

内容视频是否完成准确边界
创建采购订单完成创建并保存 4500000292
采购订单 101 收货完成过账 100 L 柠檬酸,形成物料凭证 370
查看关联会计凭证完成弹窗显示会计凭证 5000000151
识别事务/事件类型完成采购订单历史显示 WE、移动类型 101
物料与盘点凭证编号配置仅讲到原理开头未进入 OMBT 实际维护页,未保存任何配置
会计凭证编号配置未完成未演示 OMBA、凭证类型或 FBN1
预留编号配置未完成未演示 OMC2,也没有创建新预留
视频结尾明确中断最后有效授课字幕停在单词 transaction,随后直接进入宣传页

因此,不能写成“讲师完成了全部编号范围配置”。本课能证明的是:系统已生成三类业务编号,并且 WE 出现在采购订单历史中;后续配置步骤来自 SAP 官方课程。

视频实录:一次收货为什么会产生多个编号

101收货产生物料凭证与会计凭证的编号链

采购订单是一份采购承诺,本身通常不直接形成 FI 会计凭证。货物实际到达并执行估价相关的收货时,系统才需要同时记录数量变化与价值变化:

  1. 采购订单号标识采购业务对象;
  2. 物料凭证记录物料、数量、工厂、库存地点、批次、移动类型等库存事实;
  3. 会计凭证记录库存科目、GR/IR 等价值变化;
  4. 在启用相应功能的 S/4HANA 系统中,还可能看到物料分类账凭证。

SAP 官方教程补充:凭证完整键与配置入口

这些号码不能互相替代。在 SAP S/4HANA 中,物料凭证号与会计年度共同构成识别键,因此视频实例应完整记录为 370 / 2022;FI 会计凭证则由“凭证号 + 公司代码 + 会计年度”共同唯一识别。只拿一个数字跨年度、跨公司代码查询,容易查错对象。

把本课涉及的四类编号放在一起看,控制边界会更清楚:

对象完整识别时至少需要经典配置入口技术对象或关键控制组织/年度维度
采购订单采购订单号采购凭证类型与号码范围配置采购凭证类型,例如 NB采购凭证编号逻辑,本文不展开
物料凭证、实物盘点凭证凭证号 + 凭证年度OMBTMATBELEG;事务/事件类型 → 组 → 区间年度相关,只允许内部取号
FI 入口视图会计凭证凭证号 + 公司代码 + 会计年度OMBA 确定 MM 对应 FI 类型,FBN1 维护区间RF_BELEG;FI 凭证类型 → 号码范围公司代码、会计年度
预留预留号OMC2RESB;客户端级日常内部区间同一客户端覆盖所有工厂,不按年度复制

这张表也解释了为什么排错不能只盯着一个事务码:OMBT 解决物料/盘点凭证取号,OMBA 解决库存管理业务应该使用哪一种 FI 凭证类型,真正的 FI 号码区间则在 FBN1。预留另走 OMC2,与前三者都不是同一个号码对象。

视频实录:创建采购订单 4500000292

SAP GUI采购订单4500000292

讲师在 ME21N 中建立 NB 标准采购订单。画面可以回溯到以下关键值:

字段视频值
凭证类型NB 标准采购订单
供应商2012 / SV enterprises1
物料125000027 / Citric Acid
数量100 L
净价10.00 EUR / 1 L
工厂0001
凭证日期17.10.2022
计划交货日期21.10.2022
物料类型 / 物料组ROH / ZTURM1

00:03:14 左右,系统弹出“是否保存凭证或继续处理数据”的消息。讲师选择保存,随后状态和回显确认采购订单号为 4500000292。这一步只建立采购订单,尚未产生本课讨论的物料凭证与 FI 会计凭证。

视频实录:在 MIGO 执行 101 采购订单收货

SAP GUI MIGO 101收货过账界面

讲师随后进入 MIGO,选择:

  • 动作:A01 Goods Receipt
  • 参考凭证:R01 Purchase Order
  • 采购订单:4500000292
  • 移动类型:101
  • 收货数量:100 L
  • 工厂:0001 / SAP STANDARD PLANT
  • 库存地点:1000 / RM location
  • 批次:0000000092
  • 库存类型:非限制使用库存。

画面中的物料为 Citric Acid。讲师检查项目并执行过账。因为这笔收货会改变库存价值,系统除了库存数量记录,还建立了会计记录。

视频实录:查看物料凭证 370

SAP GUI物料凭证370 2022

过账后,讲师在 MIGO 的显示模式中打开物料凭证。标题和输入区明确显示:

  • 物料凭证:370
  • 凭证年度:2022
  • 过账状态:Material document 370 posted
  • 凭证信息中的事务码值:MIGO_GR
  • 移动类型:101
  • 数量:100 L
  • 工厂:0001
  • 库存地点:1000
  • 批次:0000000092

370 是课程系统当时真实生成的号码,但它明显不同于 SAP 官方课程常见的十位标准区间示例。这说明编号范围是客户可配置的:文章可以忠实记录 370,却不能把它写成所有 S/4HANA 系统都应使用的标准格式。

视频实录:查看会计凭证 5000000151

SAP GUI会计凭证5000000151

讲师从物料凭证进入“Documents in Accounting”弹窗。画面列出:

对象类型视频号码
Accounting document5000000151
Material ledgerA000012X00

这里最重要的结论是“物料凭证号与会计凭证号彼此独立”。会计凭证 5000000151 不是由物料凭证 370 拼接或转换而来,而是由相应 FI 凭证类型所分配的编号范围产生。

视频随后通过 FB03 打开会计凭证,确认公司代码 0001、会计年度 2022、期间 10、凭证日期与过账日期 17.10.2022、币种 EUR。可见行项目包括:

过账码科目说明金额
89300000Raw material 1+1,000.00 EUR
96191100GR/IR clrg.ext.proc.-1,000.00 EUR
40379998Purchase account+1,000.00 EUR
50379999Purchase offset acct-1,000.00 EUR

这些科目和过账码组合是课程系统的真实结果,不能外推为所有客户系统的固定自动科目确定。文章也不能仅凭凭证号推断目标系统的号码范围键或当前号码状态。

视频实录:采购订单历史中的事务/事件类型 WE

SAP GUI采购订单历史中的WE与101移动类型

ME23N 查看采购订单 4500000292 的 Purchase Order History 时,收货行显示:

字段视频值
事务/事件类型WE
移动类型101
物料凭证370
过账日期17.10.2022
数量100 L
金额1,000.00 EUR

WE 在这里表示“采购订单收货”对应的库存管理事务/事件类型。它参与物料凭证编号范围组的确定。要特别注意:FI 中也存在名为 WE 的会计凭证类型,两者代码相同,但所处控制层和职责不同,不能把“库存管理事务/事件类型 WE”与“FI 凭证类型 WE”当成同一个配置对象。

视频实录:事务/事件类型到编号范围组

事务事件类型与凭证类型编号范围的关系

视频最后一张有效课件给出三层关系:

  1. 库存管理业务动作确定事务/事件类型;
  2. 多个事务/事件类型可以归入一个编号范围组;
  3. 每个组需要维护编号区间。

课件还强调,事务/事件类型键由系统内部定义,不能自行改名;可以调整区间,或把事务/事件类型重新分配到其他组。讲师以 MIGO 收货为例开始解释,但尚未完成“事务 → 事务/事件类型 → 组 → 区间”的整条链路,视频就在 00:10:03.959 切到宣传页。

课件示意图还出现 WEWF 归入收货物料凭证组,并显示 03 / year 2020 / 5000000000–5999999999。这些只是幻灯片教学示例,视频没有进入配置界面验证,不能声称是课程系统当前真实的 OMBT 设置。

第36课原视频中断位置和缺失内容

下面开始的内容均为 SAP 官方教程补齐,不属于视频中的实际配置操作。

SAP 官方教程补充:用 OMBT 控制物料与盘点凭证编号

OMBT与MATBELEG物料凭证编号模型

SAP 官方课程给出的经典路径是:

SPRO → Materials Management → Inventory Management and Physical Inventory → Number Assignment → Define Number Assignment for Material and Physical Inventory Documents

对应经典事务码为 OMBT。其控制逻辑不是“给每个移动类型直接填一个号码范围”,而是:

  1. 业务动作确定库存管理事务/事件类型,例如采购订单收货为 WE
  2. 将多个事务/事件类型归入号码范围组;
  3. 为组维护内部编号区间;
  4. 按凭证年度决定使用哪个年度区间;
  5. 过账时由 MATBELEG 的运行机制自动分配内部号码;当前状态是取号状态,但在按块并行取号的部署中,下一张可见凭证不一定严格等于“当前号 + 1”。

在技术层面,这套物料与盘点凭证编号对象是 MATBELEGOMBT 不是给每个移动类型直接维护一条区间,而是维护库存管理事务/事件类型(技术语境中也常见 VGART)的分组及组所引用的区间。因而,移动类型 101、MIGO 动作 A01、参考对象 R01 和事务/事件类型 WE 必须分开理解:前三者描述如何执行这笔收货,WE 才进入本节的凭证号码分组链。

SAP Learning官方MATBELEG编号分组界面

上图应使用 SAP Learning 提供的 Change Groups: Material document, Object MATBELEG 原始 SAP GUI 截图。它能直接验证“未分配元素、分组、事务/事件类型”这几个界面层次。图中的组号和分配属于官方课程示例,不应原样覆盖客户系统;其中显示的 RS Reservation 未分配元素也不能误解为 OMC2 的预留编号区间。

SAP Learning官方MATBELEG编号区间界面

第二张 SAP Learning 原始 SAP GUI 图展示 MATBELEG 区间:示例组 03、年度 9999、区间 5000000000–5999999999,External 未选。这里的 9999 表示该区间不按某个单独年度逐年维护,不是“当前会计年度为 9999”;区间号、上下限和当前状态也都只是 SAP Learning 示例。

SAP Learning 明确要求物料凭证使用内部编号。事务/事件类型键本身由系统分配,不能更改;实施人员可以重组分配和维护区间。编号范围依赖会计年度。如果不希望逐年建立区间,可以按官方课程说明使用年度 9999 的区间,但是否采用连续区间仍要符合企业审计和容量规划。

官方依据:SAP Learning - Adjusting Settings for Material and Accounting Documents

配置时应核对什么

  • 事务/事件类型是否分配到了正确组;
  • 区间是否为内部编号;
  • 当前年度或 9999 区间是否存在;
  • 下限、上限与当前号码是否合理;
  • 区间之间是否重叠;
  • 剩余容量是否能覆盖高峰过账量;
  • 多系统、接口和批处理是否都经过回归验证。

不要为了让号码“好看”而随意修改当前号码。已经使用过的内部编号若被重复分配,会直接导致过账失败或审计风险。

对象、区间与当前状态是三件事

  • 编号范围对象定义决定长度、年度相关性、分组方式和缓冲能力;可在 SNRO/SNUM 的对象级维护中检查,但不应随意修改 SAP 交付对象;
  • 区间定义保存年度、下限、上限和内部/外部属性;
  • 当前状态表示运行时已经取到的位置,是业务运行数据,不是可以从开发系统随普通 Customizing 一起覆盖到生产的静态值。

因此,实施验收既要保存区间截图,也要单独记录目标系统当前状态和已存在凭证最大值。只比较开发、测试、生产三个系统的区间上下限,不能证明生产取号一定安全。

SAP 官方教程补充:标准事务/事件类型与区间示例

物料凭证标准事务事件类型分组

SAP Learning 当前课程提供了标准内容示例。以下数值适合用来理解分类,不应强制覆盖客户现有配置:

标准示例组示例区间代表事务/事件类型
实物盘点凭证0100000000–0199999999IBIDINIZWV
库存移动及盘点差异物料凭证4900000000–4999999999WAWIWLWRWSWHWQ
收货物料凭证5000000000–5999999999WEWFWOWW
库存抽样编号0200000000–0299999999SI

其中常见事务/事件类型含义包括:

  • WA:发货、转移过账和其他收货;
  • WE:采购订单收货;
  • WF:生产订单收货;
  • WI:盘点差异过账的物料凭证;
  • WL:参照交货单的发货;
  • IB:实物盘点凭证;
  • IN:复盘凭证。

本课课程系统生成物料凭证 370,正好说明这些十位区间只是 SAP 标准内容示例,而不是判断过账是否正确的唯一标准。真正的验收依据应是目标系统 OMBT 中的组、区间、年度与当前号码状态。

官方依据:SAP Learning - Implementing Settings for Documents

SAP 官方教程补充:实物盘点凭证与盘点差异凭证不是同一号码

实物盘点凭证到差异过账的编号生命周期

“实物盘点”最容易出现的误解,是把创建盘点凭证、录入盘点数量和过账差异写成一次动作。SAP 官方课程把它们明确分为不同阶段,编号对象也随阶段变化:

  1. 创建实物盘点凭证时,系统取得实物盘点凭证号。标准事务/事件类型示例包括 IB;复盘、无参考计数等场景还可能涉及 INIZID。这个号码属于 MATBELEG 的盘点凭证分组;
  2. 录入盘点数量只是把现场清点结果写回盘点凭证。此时尚不能据此声称已调整库存,也不能声称已形成 FI 会计凭证;
  3. 过账差异时,系统才对账面库存进行数量调整,并生成库存调整物料凭证,标准事务/事件类型示例为 WI
  4. 只有差异过账产生价值影响时,系统才进一步生成 FI 会计凭证。该 FI 凭证通常使用盘点差异对应的会计凭证类型,再从公司代码和会计年度适用的 RF_BELEG 区间取号。

用最短的判断方式可以记成:

创建盘点凭证号 → 录入盘点数量 → 过账差异物料凭证号 → 价值相关时生成 FI 会计凭证号

这四步不能压缩成“创建盘点凭证时同时生成物料和会计凭证”。如果企业要验证盘点取号,应至少分别测试:创建盘点凭证、仅录入数量但不差异过账、产生数量差异的过账、产生价值差异的过账,以及冲销/重新盘点场景。每一步都要记录凭证类型、事务/事件类型、凭证年度和关联凭证,而不是只截图一个最终号码。

官方依据:SAP Learning - Adjusting Settings for Material and Accounting Documents

SAP 官方教程补充:会计凭证的 OMBA、凭证类型与 FBN1

OMBA到FBN1会计凭证编号配置流程

物料凭证编号与 FI 会计凭证编号是两套控制。库存管理侧的经典入口是:

SPRO → Materials Management → Inventory Management and Physical Inventory → Number Assignment → Define Number Assignment for Accounting Documents

对应事务码为 OMBA。SAP 标准内容为库存管理预定义了会计凭证类型,例如:

  • WA:发货、转移过账和其他收货;
  • WE:参照采购订单的收货;
  • WI:盘点差异;
  • WL:参照交货单的发货;
  • WN:收货净额过账;
  • PR:重估凭证。

库存管理事务先确定应使用的 FI 凭证类型;FI 凭证类型再指向号码范围键。真正的 FI 号码区间按公司代码与会计年度维护,经典事务码为 FBN1

会计凭证编号范围和年度控制规则

FI 入口视图的编号对象是 RF_BELEG。FI 会计凭证的唯一键是“凭证号 + 公司代码 + 会计年度”。凭证类型在客户端层定义,但号码区间要针对公司代码维护,并且必须覆盖使用年度。一个号码范围可以分配给多个凭证类型,但同一公司代码、同一会计年度中的区间不能互相重叠。

OMBAFBN1 的职责不能颠倒:

层次回答的问题本课收货示例
Inventory Management 业务事务这是什么库存业务?采购订单收货
OMBA该库存业务生成 FI 凭证时用哪种 FI 凭证类型?标准示例可为 WE
FI 凭证类型允许哪些科目类型、使用哪个号码范围、有哪些抬头控制?客户配置决定
FBN1 / RF_BELEG该公司代码、会计年度、范围键的上下限和当前号是什么?目标系统实际区间决定

FI 凭证类型不只决定号码范围,还可能控制允许的科目类型、授权组、冲销凭证类型、参考号/抬头文本检查、是否允许负数过账等。若项目把 OMBA 的标准类型替换成自定义类型,必须确认该类型允许货物移动可能涉及的物料、总账、供应商、资产等科目类型;否则这笔货物移动可能因 FI 凭证类型控制不兼容而无法完成过账。

SAP 官方资料还强调:货物移动自动生成的会计凭证只能使用内部编号。FI 编号范围框架虽然支持内部和外部区间,其他 FI 业务也可能允许外部号码,但不能据此给 MIGO 生成的会计凭证改成人工输入号码。

在本课中,WE 既出现在采购订单历史的事务/事件类型列,也可能作为收货会计凭证类型存在。判断时必须看界面上下文:

出现位置WE 的角色决定什么
采购订单历史、OMBT 分组库存管理事务/事件类型物料凭证号码范围组
OMBA / FI 凭证抬头会计凭证类型FI 号码范围键、允许账户类型等

官方依据:SAP Learning - FI Documents and Number Ranges

入口视图与总账视图的边界

视频在 FB03 中展示的是 FI 入口视图凭证 5000000151。在 SAP S/4HANA 的分类账架构中,非主导分类账的总账视图可能使用与入口视图不同的凭证编号,而且总账视图必须内部取号。本文不从一张 FB03 画面推导所有分类账的号码规则;项目验收时应先确认查询的是入口视图还是总账视图,再记录公司代码、会计年度和分类账。

官方依据:SAP Help - Document Number Assignment

SAP 官方教程补充:预留编号范围 OMC2

OMC2与RESB预留编号范围模型

预留编号不使用物料凭证的 OMBT 组,也不使用 FI 的 FBN1。经典配置路径是:

SPRO → Materials Management → Inventory Management and Physical Inventory → Number Assignment → Define Number Assignment for Reservations

对应事务码为 OMC2。SAP 官方课程给出的边界非常明确:

  • 经典交互式创建预留的日常内部取号使用一个客户端级区间;
  • 该内部区间对同一客户端中的所有工厂和预留有效,不按工厂、公司代码或年度复制;
  • 在 SAP 系统中直接创建预留时只能使用内部编号;
  • 若通过 BAPI_RESERVATION_CREATE1CreateFromData1 方法创建并需要外部编号,应使用官方说明的外部号码范围 RB

SAP 官方 KBA 把该预留编号对象标识为 RESB。这意味着不能按工厂分别在 OMC2 中建立多个日常内部区间,也不能因为某个工厂想使用独立前缀,就把预留号当成可随意输入的业务编码。若企业需要额外分类,应使用规范的业务字段和报表维度,不应扭曲技术唯一号的职责。

接口例外也必须按入口区分:MB21 等经典交互式创建不等于 BAPI 外部取号;特定版本中发布用于开发者扩展的 RAP 预留业务对象也可能提供标准或外部编号能力,但这不是一条可直接套用到所有版本、所有 API 的通用规则。实施时要按目标版本的接口文档核对编号参数、幂等与重复请求处理,并用接口重放测试证明不会产生重复预留。

由于该内部范围不按年度复制,年度切换时不应照搬 MATBELEGRF_BELEG 的年度建区间动作。对 RESB 更重要的是检查剩余容量、接口外部区间边界以及批量创建高峰。

官方依据:SAP Learning - Implementing Settings for Documents

SAP 官方教程补充:经典 GUI、Private Edition 与 Public Cloud 的入口差异

SAP不同部署模式下编号范围配置入口对比

视频画面是经典 SAP GUI,训练连接标识为 s4hana1909。它可以证明经典事务和编号模型,却不能代表当前 SAP S/4HANA Cloud Public Edition 的配置入口。部署形态不同,操作入口和并行取号实现也不同:

场景On-Premise / Private Edition 常见入口Public Cloud 需要注意
物料、盘点凭证编号OMBT,对象 MATBELEG配置活动 Define Number Assignment for Material and Physical Inventory Documents,SSCUI 103896
MM 生成 FI 凭证的类型OMBA使用公开配置活动,不应照搬不可用的 SPRO 事务
FI 入口视图号码范围FBN1,对象 RF_BELEG使用 Manage Journal Entry Number Ranges 或租户中开放的对应配置活动
预留编号OMC2,对象 RESB以租户开放的配置活动和 API 文档为准

因此,本文给出的 OMBT/OMBA/FBN1/OMC2 是经典或私有云实施人员的定位入口,不是要求 Public Cloud 用户寻找同名事务码。迁移项目应先确认部署形态和版本,再把“业务对象—编号规则—配置活动”做映射;不要把旧系统截图当成新租户的可执行导航。

官方依据:SAP KBA 3535266 - Material Document Number Assignment in SAP S/4HANA Cloud Public EditionSAP Help - Manage Journal Entry Number Ranges

SAP 官方教程补充:并行取号、缓冲、跳号与业务先后

并行编号分配的号段预留机制

“号码由系统自动递增”不等于“所有业务一定严格连续、号码越大就一定越晚”。SAP 官方资料说明,Public Cloud 的物料凭证号可以按块从中央编号提供者分配给不同过账实例,再由实例并行消费。这样能提高吞吐量,但会出现两个重要结果:

  • 不保证编号无空缺;
  • 不保证凭证号码的大小顺序与业务创建时间完全一致。

经典 ABAP 编号对象也存在不缓冲、主存缓冲和并行缓冲等技术权衡。回滚、更新终止、应用实例保留但未消费完的号块,都可能让号码看起来“跳了”。因此:

错误判断正确处理
缺号就代表凭证被删除先查回滚、更新终止、缓冲与并行取号;物料凭证通常通过冲销处理,不靠删除补号
更大的凭证号一定更晚以过账日期、创建时间、创建用户和技术时间戳判断业务先后
把当前状态调回即可补齐空号这可能与已存在凭证冲突并触发重复键错误,禁止作为补号手段
UI 有 External 复选框就可让 MIGO 外部取号物料/盘点凭证仍只允许内部编号,界面字段存在不改变应用边界
关闭缓冲就一定更合规可能造成严重锁竞争;标准对象的缓冲策略必须按版本、法律要求和 SAP 支持建议评估

FI 可以用 RFBNUM00 分析凭证编号空缺,但“找到空缺”不是“允许重用空号”。如果企业受法定连续编号约束,应由财务、税务和合规团队定义允许的编号机制及空缺说明,技术团队不能通过回拨当前状态自行修补。

官方依据:SAP Help - Number Range BufferingSAP KBA 3462818SAP Help - Number Range in Financial Accounting

SAP 官方教程补充:年度切换、扩容与当前号码变更

编号范围年度切换与运输治理

编号范围的高风险操作集中在年度切换、容量不足和当前号码调整。

年度切换

  • 物料/盘点凭证的 MATBELEG 区间按年度控制;按年管理时,要在新年度首笔过账前准备并验证目标年度;
  • 不希望逐年维护时,可按 SAP Learning 的课程说明使用年度 9999;它表示长期适用区间,不是当前会计年度;
  • FI 入口视图的 RF_BELEG 区间同样需要覆盖公司代码的过账年度,可按年重置,也可采用连续区间设计;
  • 预留 RESB 是客户端级单一区间,不执行年度复制;年度切换只检查剩余容量、接口外部区间和批量业务峰值;
  • 选择连续还是按年重启,应由财务审计、法定编号要求和容量共同决定。

扩容

扩展上限前,应确认新上限不低于当前号码,并且不会进入另一个区间。若现有区间相邻空间不足,通常应设计新组或新号码范围,而不是直接制造重叠。

当前号码

SAP Help 明确提示,内部范围的当前号码通常不应人工修改。调整下限只适合尚未发号的区间;提高当前号码只应在特殊纠错场景执行。技术底线是不得回拨到已使用号码,不得制造区间重叠。作为本文的实施治理建议,此类特殊变更还应具备正式变更单、回退准备、双人复核和过账验证。绝不能为了消除“跳号”而把当前号码向后回拨。

运输与运行时状态

编号对象定义、编号区间和运行时当前状态不是同一类数据。SAP 的运输指南指出,以 TDAT SNUMS 运输的 NRIV 区间导入后会立即对运行系统可见。因此:

  1. 不运输区间删除,也不导入与生产现有区间冲突的内容;
  2. 不用开发或测试系统的当前状态覆盖生产当前号;
  3. 导入或手工维护前,核对目标系统区间、年度、当前状态、已存在凭证以及仍在运行的并行过账作业;
  4. 生产运行中不得把 MATBELEG 当前状态调小。SAP KBA 记录过状态与已有凭证不一致、再次分配已存在号码并触发重复键短转储的场景;
  5. 年中改变 MATBELEG 起点应作为受控生产变更,不能简单“重置后再试”。

一个安全的切换包应分别保存开发、测试、生产的对象/区间对照,并把“需要运输的静态定义”与“绝不能覆盖的生产运行状态”分列。上线窗口中先冻结相关变更和批处理,复核目标区间,再执行最小业务测试;任何重复键或当前号回退迹象都应立即停止继续过账。

官方依据:SAP Help - Changing and Deleting Number Ranges

运输与状态依据:SAP Help - Transports of Number Range IntervalsSAP KBA 1903713SAP KBA 2417258

SAP 官方教程补充:实施与排错清单

SAP凭证编号范围故障排查路径

推荐实施顺序

  1. 确认部署形态和版本:经典/私有云使用相应 IMG 入口,Public Cloud 先映射到开放的配置活动;
  2. 统计各类货物移动、盘点和预留的年峰值,并预留增长、接口重试和并发批处理容量;
  3. 导出当前事务/事件类型分组,确认 WE/WF/WI/WA 等进入预期 MATBELEG 组;
  4. 核对 OMBT 或对应配置活动中的年度、组、内部标志、上下限和当前状态;
  5. 核对 OMBA 中库存管理业务到 FI 凭证类型的关系;
  6. FBN1 或 Public Cloud 对应应用中核对公司代码、会计年度、RF_BELEG 范围键与容量;
  7. OMC2 或对应配置活动中核对客户端级 RESB 内部区间和接口外部范围例外;
  8. 在开发/测试系统执行采购收货、发货、转移过账、生产收货、盘点凭证创建、盘点数量录入、盘点差异过账和预留创建;
  9. 从每张物料凭证追溯 FI 与物料分类账关联凭证,记录事务/事件类型、移动类型、FI 凭证类型、年度和实际号码;
  10. 单独验证“非价值相关移动不会生成 FI 凭证”,防止把正常行为误报成接口丢单;
  11. 验证新年度、9999 长期区间、公司代码差异、回滚、冲销、批量并发和接口重复请求;
  12. 对所有标准示例值和客户自定义值做标签,禁止把 SAP Learning 的组号、区间或公司代码直接写成生产方案;
  13. 切换前复核运输内容不含生产当前状态或区间删除,并暂停会与变更冲突的批处理;
  14. 生产切换后执行最小业务回归,监控剩余容量、重复键、更新终止与号码空缺说明,保留配置和验收证据。

凭证编号范围实施测试清单

常见问题定位

现象优先检查
新年度首笔 MIGO 报编号错误OMBT 是否存在对应年度或 9999 区间
只有某类收货失败,其他移动正常对应事务/事件类型是否分配到有效组
估价相关货物移动因 FI 凭证创建错误而未完成OMBA 的 FI 凭证类型、FBN1 公司代码/年度区间及允许账户类型;若已存在物料凭证却缺少 FI,先排除非价值相关移动,再检查更新终止或数据不一致
创建预留时报号段错误OMC2 唯一内部区间是否存在或耗尽
号码不连续先检查回滚、并发和技术取号;不要直接回拨当前号码
凭证号大小与创建时间顺序相反检查并行实例/号块分配,以 Posting Date 和 CreatedOn 判断先后
盘点凭证已创建但没有 FI 凭证这是正常阶段边界;先确认是否已经执行差异过账且差异是否价值相关
Public Cloud 找不到 OMBT/FBN1不照搬经典事务,改用 SSCUI 103896 和租户开放的日记账号码范围应用
运输后出现重复键或更新终止立即停查目标区间、当前状态和已有凭证,确认是否被非生产状态覆盖
区间即将耗尽评估剩余业务量并按变更流程扩容或切换新组
视频号码与系统标准示例不同将视频值视为课程系统配置,按目标系统实际 IMG 验证

SAP Learning 提到可以使用 RFBNUM00 分析 FI 凭证编号空缺,但“发现空缺”不等于“可以重用号码”。是否要求法定连续编号,应由财务和合规团队确定,技术人员不能通过回拨号段自行修补。

本课要点总结

  • 视频真实创建了采购订单 4500000292,并完成 101 收货;
  • 收货生成物料凭证 370 和会计凭证 5000000151,两套编号彼此独立;
  • 采购订单历史中的 WE 是库存管理事务/事件类型,参与 OMBT 的物料凭证号码范围分配;
  • 视频在解释编号范围组时中断,没有实际完成 OMBTOMBAFBN1OMC2 配置;
  • SAP 标准十位区间只是标准内容示例,客户课程系统的 370 不能据此判错;
  • 货物移动产生的 FI 会计凭证只能使用内部编号;
  • 实物盘点凭证、盘点差异物料凭证和价值相关差异产生的 FI 凭证是三个对象、三个取号时点;
  • 预留日常交互式创建使用一个客户端级内部区间,经典入口为 OMC2,对象标识为 RESB
  • Public Cloud 使用 SSCUI 103896 等公开配置活动,不应照搬经典 SPRO 事务入口;
  • 并行按块取号可能产生空号和乱序,业务先后不能只按凭证号判断;
  • 年度区间、剩余容量、运输内容和当前状态变更必须纳入正式变更控制。

SAP 官方参考资料

  1. Adjusting Settings for Material and Accounting Documents
  2. Implementing Settings for Documents
  3. Configuring the Header and Line Items of Financial Accounting Documents
  4. SAP Help - Document Number Assignment
  5. SAP Help - Changing and Deleting Number Ranges
  6. SAP Help - Define Document Number Ranges for Entry View
  7. SAP Help - Number Range in Financial Accounting(RF_BELEG)
  8. SAP Help - Manage Journal Entry Number Ranges
  9. SAP Help - Number Range Buffering
  10. SAP Help - Transports of Number Range Intervals
  11. SAP KBA 3535266 - Public Cloud 物料凭证编号
  12. SAP KBA 3462818 - 并行编号与空缺
  13. SAP KBA 3596217 - MATBELEG 与 OMBT
  14. SAP KBA 3442011 - RESB 与 OMC2
  15. SAP KBA 1903713 - MATBELEG 当前状态与重复键风险
  16. SAP KBA 2417258 - 年中调整 MATBELEG 起点

本文的视频编号、日期、组织值和凭证号来自课程系统画面;SAP 标准行为和未演示配置仅依据上述官方资料补齐。实施前请以目标 S/4HANA 版本、部署形态和系统中的 IMG 活动文档为准。

版权声明:本文为YES开发框架网发布内容,转载请附上原文出处连接
MCP自动发表文章
评论列表

发表评论

评论内容
昵称:
验证码:
验证码
关联文章

SAP S/4HANA MM模块培训 36 - 凭证编号分配会计预留号码范围
SAP S/4HANA MM模块培训 26 - 库存预留:自动预留、MB21261领
SAP S/4HANA MM 模块培训 14:供应商容差、会计凭证编号 BP/CVI 配置
SAP S/4HANA MM模块培训 35 - 采购事务定制:凭证类型、编号范围字段控制
SAP S/4HANA MM模块培训 07 - 消耗性、科目分配采购申请
SAP S/4HANA FICO模块培训 36 - 凭证暂存批量过账设计
SAP S/4HANA MM模块培训 59 - MM-PM集成:维护订单预留、采购申请、维护BOM261发
SAP S/4HANA MM模块培训 57 - MM-PP集成:MRP采购、生产预留、外部加工货物移动
SAP S/4HANA MM模块培训 02 - 企业结构配置:从库存地点到业务范围分配
SAP S/4HANA MM模块培训 43 - 制造商零件编号MPN:主数据、采购控制AMPL
SAP S/4HANA MM模块培训 30 - 发票校验(四):后续借记、交货成本贷项凭证
SAP S/4HANA MM模块培训 42 - 版本管理:采购申请、采购凭证变更追踪
SAP S/4HANA MM模块培训 11 - 总账容差、凭证分割FI-MM集成科目
SAP S/4HANA MM模块培训 18 - 优化采购:采购申请供应源分配转单入口
SAP S/4HANA MM模块培训 38 - 委外加工:项目类别L、组件发收货消耗
SAP S/4HANA MM模块培训 13 - 自动科目确定供应商账户组
SAP S/4HANA MM 模块培训 18:物料账启用原材料主数据
SAP S/4HANA MM模块培训 21 - 库存管理概览:核心任务、货物移动凭证
SAP S/4HANA FICO模块培训 31 - 公司代码会计年度变式
SAP S/4HANA MM模块培训 37 - 移动类型:控制功能、分类、冲销定制