内蒙古自治区网站建设_网站建设公司_图标设计_seo优化
2025/12/22 8:19:25 网站建设 项目流程

SAP 销售合同 / 订单的审批设置核心是通过状态管理(Status Management)实现,核心步骤包括定义状态参数文件、分配至订单类型、配置权限与事务控制、前台审批操作,也可结合工作流增强自动化。以下是可直接落地的详细配置与业务逻辑分析。


一、核心配置路径与事务代码总览

任务事务代码SPRO 配置路径核心数据表
定义状态参数文件BS02SPRO→SD→销售→销售凭证→定义并分配状态参数文件→定义状态参数文件TJ20(参数文件)、TJ30(用户状态)、TJ30T(描述)
分配参数文件SPRO→SD→销售→销售凭证→定义并分配状态参数文件→分配订单类型 / 状态参数文件TVAK(订单类型抬头)、TVAP(项目类型)
定义授权码BS52SPRO→控制→内部订单→订单主数据→状态管理→定义状态管理授权码B_USERSTAT(权限对象)
权限角色配置PFCGSAP 菜单→工具→管理→用户维护→角色维护AGR_1251(角色权限)
前台审批操作VA02(订单)/VA42(合同)后勤→SD→销售→订单 / 合同→更改VBAK(抬头)、VBAP(项目)
工作流增强SWDD/SWU1SPRO→SD→基础功能→单据审批T16FW(审批请求原因)

二、详细配置步骤(以二级审批为例)

1. 定义状态参数文件(BS02)
  1. 进入 BS02,输入参数文件编号(如 ZSD001),点击 “新建”,对象类型选择 “销售订单标题”(VBAK),描述为 “销售合同二级审批”。
  2. 维护用户状态:
    • 状态 1:编号 01,描述 “创建(待业务审批)”,勾选 “初始状态”,授权码 ZFSD01(业务审批)。
    • 状态 2:编号 02,描述 “业务审批通过(待财务审批)”,授权码 ZFSD02(财务审批)。
    • 状态 3:编号 03,描述 “财务审批通过(生效)”,无授权码(只读)。
    • 状态 4:编号 04,描述 “审批驳回(退回修改)”,授权码 ZFSD01(可回退)。
  3. 事务控制(双击状态条目进入):
    • 状态 01:禁止发货(VL01N)、开票(VF01),允许修改订单。
    • 状态 02:禁止修改价格 / 数量,允许查看,禁止发货 / 开票。
    • 状态 03:允许发货、开票,禁止修改关键字段(如金额、客户)。
    • 状态 04:允许修改订单,禁止后续流程,触发通知。
  4. 字段控制:设置状态 01 时 “金额” 可改,状态 02/03 时 “金额” 只读。
  5. 保存参数文件,系统生成状态编号 E0001~E0004。
2. 定义授权码(BS52)
  1. 进入 BS52,新建授权码 ZFSD01、ZFSD02,描述分别为 “业务经理审批”“财务经理审批”。
  2. 保存后,授权码绑定到 B_USERSTAT 权限对象。
3. 分配参数文件到订单类型
  1. 进入 SPRO 分配路径,选择订单类型(如 ZCTR,销售合同),分配状态参数文件 ZSD001 至抬头层级。
  2. 若需项目级审批,同步分配至项目类型(TVAP)。
4. 权限配置(PFCG)
  1. 进入 PFCG,新建角色 ZSDR01(业务审批)、ZSDR02(财务审批)。
  2. 权限对象 B_USERSTAT:
    • ZSDR01:授权码 ZFSD01,活动 02(更改状态)。
    • ZSDR02:授权码 ZFSD02,活动 02(更改状态)。
  3. 分配角色给对应用户(SU01)。
5. 前台审批操作(VA42/VA02)
  1. 创建合同(VA41),状态默认 01(待业务审批)。
  2. 业务经理用 VA42 进入,路径:转到→表头→状态→对象状态,选择状态 02 并保存,状态更新为 “业务审批通过”。
  3. 财务经理用 VA42 进入,选择状态 03 并保存,合同生效,允许后续发货 / 开票。
  4. 驳回时选择状态 04,返回创建者修改后重新提交。

三、工作流增强(可选,自动触发通知)

  1. 进入 SWDD,创建工作流 WS99900001,触发事件为 VBAK 的 “状态更改”(BUS2032)。
  2. 定义条件:当状态变为 01 时,发送邮件给业务经理;状态变为 02 时,发送邮件给财务经理。
  3. 绑定审批请求原因(SPRO→SD→基础功能→单据审批→定义审批请求原因),如 Z001 = 价格超阈值。
  4. 激活工作流,测试触发与通知。

四、核心逻辑与数据流转分析

  1. 状态控制:通过用户状态锁定关键操作,确保审批未完成时无法执行后续流程,数据写入 VBAK-STAT 和 VBAP-STAT 字段。
  2. 权限隔离:授权码 + PFCG 角色控制,避免越权审批,权限检查通过 B_USERSTAT 实现。
  3. 数据追踪:状态变更记录在 CDHDR/CDPOS 表,可查询审批人、时间、变更内容。
  4. 业务适配:
    • 金额阈值触发:通过增强(如 USEREXIT_SAVE_DOCUMENT_PREPARE)判断金额,自动设置待审批状态。
    • 多级审批扩展:增加状态与授权码,事务控制按层级收紧操作权限。

五、常见问题与排查

  1. 审批后仍可修改:检查事务控制中是否禁止关键字段修改,确认状态已切换至生效态。
  2. 权限不足:用 SU53 查看权限对象 B_USERSTAT 的授权码是否正确分配。
  3. 工作流不触发:检查事件链接是否激活(SWEC),工作流是否绑定正确事件。

六、交付物清单

  • 状态参数文件 ZSD001(BS02)
  • 授权码 ZFSD01/ZFSD02(BS52)
  • 订单类型分配配置(SPRO)
  • 角色 ZSDR01/ZSDR02(PFCG)
  • 前台操作手册(VA42 审批步骤)
  • 工作流 WS99900001(可选)

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询