SAP S/4HANA MM 模块培训 26:采购申请经典审批策略

SAP S/4HANA MM 模块培训 26:采购申请经典审批策略
本课开始讲 SAP MM 的经典审批(Release Procedure):为什么采购申请或采购订单在满足金额、工厂、物料组等条件后必须先审批,采购申请的“无分类程序”和“有分类程序”有什么边界,以及释放代码、释放前提、释放标识、字段选择、变更性和金额容差分别控制什么。系统演示只完成了无分类程序中的释放代码和释放标识部分,并没有配置出可实际触发和审批的完整策略。
视频信息
- 原视频:26. SAP MM S4/HANA | Class-26 | July Batch
- 视频时长:1 小时 23 分
- 视频地址:https://www.youtube.com/watch?v=zKnxTwBcSSg
- 本文范围:经典释放程序、采购申请按行/整体审批、无分类与有分类、释放代码、释放前提、释放标识、字段选择、变更性和金额容差
- 截图规则:只引用视频中的 SAP 系统画面;英文 Excel 讲义全部改写为中文表格,不直接使用原画面
本文讲的是经典 Release Procedure。S/4HANA 还提供采购申请 Flexible Workflow 等审批方案;两者的配置对象、代理人确定、条件和运行界面不同,项目中应先确认采用哪一种方案。
一、释放程序解决什么问题
采购申请(Purchase Requisition,PR)或外部采购凭证满足指定条件时,系统可以先把它置于受控状态;获授权人员使用释放代码完成审批后,才允许继续创建询价、采购订单、输出凭证或执行其他后续步骤。
审批时通常要核对:
| 检查维度 | 典型内容 |
|---|---|
| 需求是否合理 | 物料、数量、交货日期、用途 |
| 采购责任 | 工厂、采购组、物料组 |
| 会计归属 | 科目分配类别、成本中心、项目或资产 |
| 金额权限 | PR 行金额、PR 总值或采购凭证净值 |
| 后续权限 | 是否允许创建 RFQ、PO,是否允许输出给供应商 |
释放程序不是简单的“点一下批准”。它至少需要解决三个问题:什么条件触发哪条策略、谁可以用哪个释放代码、每一步批准后文档允许做什么。
二、先纠正术语:Purchase Requisition 不是 Purchase Acquisition
字幕把 Purchase Requisition 多次识别为 Purchase Acquisition。SAP 标准术语是“采购申请”,经典事务包括 ME51N 创建、ME52N 修改、ME53N 显示和 ME54N 释放。

采购申请是内部需求凭证,可以包含多个行项目。是否按行审批还是整单审批,不是由“内外部凭证”一句话决定,而是由所选释放程序和采购申请凭证类型的整体释放设置决定。
三、无分类与有分类:适用范围不同,而且不能同时用于同一 PR
SAP 经典采购申请有两类释放程序:
| 维度 | 无分类程序 | 有分类程序 |
|---|---|---|
| 适用对象 | 仅采购申请 | 采购申请以及 PO、合同、计划协议、RFQ、服务条目表等外部采购凭证 |
| PR 审批粒度 | 只能按行项目 | 可按行项目,也可对整张 PR 整体释放 |
| 条件来源 | 固定字段组合 | 分类系统中的类与特征值 |
| 典型条件 | 科目分配类别、物料组、工厂、总值 | 可按已定义特征组合更灵活地确定策略 |
| 外部采购凭证 | 不支持 | 只按抬头整体释放,不能按行部分批准 |
| Workflow | 无分类程序不能连接经典 SAP Business Workflow | 有分类程序可连接 Workflow |
课堂说“第二种程序里 PR 可以同时用有分类和无分类”不准确。SAP 官方明确说明:采购申请的两种经典程序互斥;启用有分类程序后,无分类程序会被停用。项目可以为不同 PR 凭证类型设计按行或整体释放,但不能让同一 PR 同时走两套经典程序。
外部采购凭证只能整体释放的原因也不应理解为“已经发给供应商,所以不能部分批准”。正确顺序是:在凭证被最终释放前,系统通常阻止向外输出;审批粒度本身由 SAP 对该凭证类型的经典释放设计决定。
四、无分类程序的四类固定条件
无分类程序可以按以下单项或组合确定采购申请行的释放策略:
| 条件 | 业务含义 |
|---|---|
| Account Assignment Category | 是库存采购、成本中心、资产、项目等哪种归属 |
| Material Group | 物料或服务属于哪个采购责任类别 |
| Plant | 需求属于哪个工厂 |
| Total Value | 采购申请行的总值进入哪个金额区间 |
ME51N 中的科目分配类别是采购申请行字段之一。

这里不能把“按条件选中某些行”与“无分类”混为一谈。无分类的含义是策略确定不使用 SAP 分类系统;它仍然有明确的条件,并且每个符合条件的 PR 行可以独立处于待释放、部分释放或最终释放状态。
五、经典策略的四个核心对象
课堂英文讲义中的核心概念可以整理为中文:
| 对象 | 正确含义 | 常见误区 |
|---|---|---|
| Release Condition / Criteria | 决定一条 PR 或采购凭证匹配哪条策略 | 只按金额,忽略组织和科目字段 |
| Release Code | 两字符审批代码;谁能使用由授权对象和组织/Workflow 分配决定 | 把代码本身当成某个固定员工 |
| Release Prerequisite | 定义释放代码之间的先后依赖 | 只设置多个代码,却不定义审批顺序 |
| Release Indicator / Status | 表示当前阶段,并控制后续处理和变更 | 把它当成只显示“已批准/未批准”的文本 |
释放前提可以表达“部门经理先批,成本中心经理后批”,也可以允许多个平行审批点在最终审批前完成。释放代码虽然可以在描述中写部门名称,但真正权限主要由授权对象 M_EINK_FRG 等控制;仅创建代码并不会自动找到审批人。
六、进入无分类程序的 IMG 路径
课堂路径为:
SPRO → Materials Management → Purchasing → Purchase Requisition → Release Procedure → Set Up Procedure Without Classification

该配置节点包含:
- Release Codes:定义两字符释放代码。
- Release Indicators:定义各审批阶段允许的后续动作与变更规则。
- Release Prerequisites:设置审批顺序。
- Determination of Release Strategy:把条件组合映射到策略。
本课只实际维护了前两项,后两项留到后续课程。
七、释放代码:创建代码不等于完成审批人配置
课堂通过 New Entries 创建了 S1、S2 两个释放代码。

代码名称、部门含义和审批层级都是客户设计。建议先从审批矩阵出发,再确定代码:
| 设计项 | 应明确的内容 |
|---|---|
| 代码 | 两字符且语义稳定,不直接绑定某个易变的员工姓名 |
| 责任人 | 由角色、岗位、用户或 Workflow 代理人规则确定 |
| 授权 | 限制可使用的释放组、释放代码、工厂等范围 |
| 顺序 | 在 Release Prerequisites 中明确串行或并行关系 |
| 替代与审计 | 代理审批、取消释放和操作日志如何管理 |
八、释放标识控制的不只是状态文字
课堂先查看系统已有的 Blocked、Released 等标识,再新增 Y。

释放标识的明细画面包含三类后续控制:

| 字段 | 作用 |
|---|---|
| Firmed for Req. Planning | 控制 MRP/需求计划是否还能改变该 PR 行 |
| Released for Quotation | 是否允许以该 PR 为参考创建 RFQ |
| Released for issue of PO | 是否允许以该 PR 为参考创建采购订单 |
| Field Selection Key | 决定审批阶段相关事务中的字段可编辑、只读、隐藏或必输状态 |
| Changeability | 凭证在释放开始后发生修改时,是否允许修改、是否重新确定策略或重置释放 |
| Value Change | 配合相应变更性设置,定义金额增加到什么程度时需要重新释放 |
课堂把前三个选项全部勾选,并选择字段选择键 FZ01。
字段选择键不能只凭“标准常用”就复制。它是一个已存在的屏幕字段控制键,必须检查其中每个字段的状态是否符合审批后的修改政策。下拉列表显示 FZ01 描述为 Release status 1,但描述并不能替代实际配置检查。

九、变更性 4 与金额容差
释放开始后,用户可能修改数量、价格、交货日期、科目分配或其他条件字段。Changeability 决定系统如何响应。

对采购申请,常见值为:
| 值 | 结果 |
|---|---|
| 1 | 不允许修改 |
| 2 | 允许修改,不重新确定策略 |
| 3 | 允许修改;如果匹配到新策略,则重新释放 |
| 4 | 允许修改;新策略或价值增加满足重置条件时重新释放 |
课堂选择了值 4。

Value Change 是允许金额增加的百分比容差,它只在相应变更性逻辑下起作用。例如原值 100,容差 10%,增加到 110 以内可不重置;超过阈值后才重新触发。系统比较的是“增加”而不是任意方向的绝对变化,且还要满足原策略仍适用等条件。
因此,不能把值 4 写成所有项目的固定最佳实践。金额变更是否必须重新审批,是企业内控决定;高风险采购往往需要更严格的容差甚至完全禁止审批后修改。
十、怎样验证一条完整策略
完成配置后,至少应按以下顺序测试:
- 创建四组 PR:不触发、命中低金额策略、命中高金额策略、跨越金额边界。
- 检查策略是否按工厂、物料组、科目分配类别和金额正确确定。
- 用无权限与有权限用户分别尝试释放,验证
M_EINK_FRG等授权。 - 按释放前提测试错误顺序、正确顺序、取消释放和再次释放。
- 在每个中间状态尝试创建 RFQ/PO,验证释放标识。
- 修改非条件字段与条件字段,再测试 Changeability 和 Value Change。
- 用
ME54N单笔释放、ME55集中释放,并检查最终文档状态和操作日志。
十一、本课完成边界
| 内容 | 本课状态 |
|---|---|
| 释放程序概念与两类经典程序 | 已讲解;本文已按 SAP 官方资料纠正边界 |
| 无分类程序 IMG 入口 | 已进入 |
释放代码 S1、S2 | 已创建演示值 |
释放标识 Y | 已维护部分字段 |
| 释放前提 | 未配置 |
| 策略确定条件 | 未配置 |
| 有分类程序的类、特征和策略 | 未配置 |
| 实际 PR 触发、审批、重置与后续 PO | 未演示 |
所以,本课不能算“经典释放策略配置完成”。它只建立了概念并开始维护基础对象,完整闭环要等后续课程完成策略确定和业务测试。
