User Exits是SAP第一代增强技术,其技术原理就是在程序中预先置放一个Form...EndForm的子程序,并在事物运行时Call这个Form。当然,如果这个Form是空的,那么不执行任何操作,反之,执行相应的动作。User Exits的写法,和修改标准程序是一致的,要有向SAP申请Access Key才能对这些程序进行修改。与修改标程的区别在于,在SAP做升级的时候,User Exits会自动保留,标程的修改如果不做特殊处理,就会被覆盖。
在做这样的增强时,要养成一个习惯,那就是把你所要添加的代码都写在自己以Z开头的function中,然后在Form中调用这个function。
例如:
FORM Add .
CALL FUNCTION 'ZGDTEST'
EXPORTING
I_CHAR =
I_FLOAT =
* IMPORTING
* E_DATE =
* E_CHAR =
* E_VAR =
.
ENDFORM.
CALL FUNCTION 'ZGDTEST'
EXPORTING
I_CHAR =
I_FLOAT =
* IMPORTING
* E_DATE =
* E_CHAR =
* E_VAR =
.
ENDFORM.
下面来讲一下,如何找到此类出口:
方法1:
SPRO -> SAP Reference IMG,按 ,Search Term中填入’USER EXIT’就可以查到每个模块相应的出口了,每个出口SAP都会有相应的使用说明。