sap 四代增强查找方式
SAP增强 ENHANCEMENT
第一代:基于源码增强(子过程subroutine)
I. 查找方法
以VA03为例,先查到VA03对应的程序名
1. 以VA03为例,先查到VA03对应的程序名
2. SE80展开子程序清单
3. 主程序中Include名称倒数第二位字符为Z的为USEREXIT增强点
第二代:基于函数模块增强(Function)
1.SAP 利用系统函数查找增强-SAP第二代增强
I. 增强类型
E.Ehancement exits:这些出口以Exit_打头,可以在SE37中查看,也可以在数据字典TFDIR(函数表)中查询Exit_打头的函数
C.GUI codes(GUI增强):用于区域菜单和工具菜单栏的增强
S.Subscreens(屏幕增强):用于子屏幕设计增强
T.include structure增强:用于表结构的增强
SAP系统带有增强出口检查函数如下:
MODX_ALL_ACTIVE_MENUENTRIES (菜单增强)
MODX_FUNCTION_ACTIVE_CHECK (出口函数增强)
MODX_MENUENTRY_ACTIVE_CHECK (菜单增强)
MODX_SUBSCREEN_ACTIVE_CHECK (屏幕增强)
查找增强第一步:在检查函数打断点
第二步:执行需要检查的Tcode,这里以CV12为例
第三步:取得函数名,多个增强,会运行多次
第四步:通过l_FUNCNAME或者F_TAB[] 里funcname
查询MODSAP表,得到扩展名PCSD0002
若action不等x说明已经被激活,直接在se37找这个function改要写的逻辑即可
action等于x则执行下边
第五步:SMOD(查看增强) CMOD(实施增强)
其他:打钩的表示已实施的对象,红色表示未激活,需要激活,在到se37写要改的逻辑即可
第三代:基于类的增强(BADI)
I. 查找方法
SAP系统带有增强出口检查方法:CL_EXITHANDLER->GET_INSTANCE
第一步:SE24查看类CL_EXITHANDLER
第二步:双击查看方法GET_INSTANCE
第三步:设置断点
第四步:运行Tcode,这里以CV12为例;EXIT_NAME为增强实施名;多个增强,会运行多次
第五步:SE18查看BADI增强
第四代:Switch Framework(Enhancment-Point)
I. 增强类型
隐式增强:使用系统预留的增强选项,一般在FORM FUNCTION METHOD第一行和最后一行,直接创建增强实施
显式增强:需要先创建增强选项,再创建增强实施
II. 查找方法1. 隐式增强:隐式增强一般在FORM FUNCTION METHOD第一行和最后一行
2. 隐式增强:隐式增强可通过菜单栏 编辑->增强操作->显示隐式增强 显示隐藏增强
3. 隐式增强:光标定位到系统预留的增强选项,再点击增强按钮创建增强实施,即可创建增强实施
4. 显式增强:通过菜单栏 编辑->增强操作->创建增强选项
5. 显式增强:光标定位到手动创建的增强选项,再点击增强按钮创建增强实施,即可创建增强实施
转载https://blog.csdn.net/qq_30797051/article/details/108946959 并整理