SAP的校验和替代(validations and substitutions) | Substitution exit | 财务EXIT替代实例——WBS主数据校验(GGB1)
财务EXIT替代实例——WBS主数据校验(GGB1)
业务场景:
现有的WBS主数据的维护过程中,存在WBS和相应的负责成本中心的组织结构不一致的情况,包括功能范围、公司代码、利润中心。
处理步骤:
一、SE91新建消息类ZPS
二、GGB0编写校验
1) 检查利润中心
2) 检查功能范围
3) 检查公司代码
三、GCX2维护用户出口,ZGGBR000,应用区域为GBLR[若为替代,使用应用区域GBLS]
四、SE38编写ZGGBR000代码[U901]
exits-name = ‘U901′. exits-param = c_exit_param_none. “Check Profit Center. exits-title = text-901. “Check profit center with cost center master data APPEND exits.
FORM U901 CHANGING B_RESULT.
DATA: L_PRCTR type csks-PRCTR.
Select single PRCTR from csks into l_PRCTR where ( KOSTL = prps-FKSTL ) “查询与WBS上负责成本中心相同的数据 And ( datbi >= sy-datum ) “成本中心的有效截至日期不早于系统当前日期 And ( KOKRS = prps-FKOKR ). “查询成本控制范围相同的数据
If sy-subrc <> 0 or l_prctr <> prps-prctr. b_result = b_false. else. b_result = b_true. endif.
ENDFORM.
五、若校验/替代未生效,通过SE38执行程序RGUGBR00