Enhancement Spot

我要做IW32的一个增强,但是USER-EXITBADI都不能实现我需要的功能,这个时候我想到了ENHANCEMENT SPOT,于是就DEBUG标准程序,找到相应的位置,然后做修改,下面是实现的步骤:

    首先,我要修改的是组件移动类型的值,我debug标准程序,找到了IW32是在程序LCOMKF1Ocomplete_resb这个FORM下面修改了组件移动类型的值,具体是在LINE221行开始做修改,首先根据开发类arbgeb读出tcoko这个表的值,tcoko就是存放的移动类型,下面再根据具体的情况,把tcoko的移动类型赋值过去。所以我就想,我把我自己建的表的值move corresponding to TCOKO,那么下面赋值给移动类型的值就是我自己建的表的值了,所以我就在取了TCOKO以后把值给它替换掉。

    第二,找到位置以后,就是找它对应的ENHANCEMENT SPOT。我们发现在220行有一个ENHANCEMENT-SECTION:COMPLETE_RESB_08 SPOTS ES_SAPLCOMK.这个是一个ENHANCEMENT OPTION,双击COMPLETE_RESB_08可以看到,如图:

 

ENHANCEMENT OPTION是不能用的,必须对它implementation才能用,原理应该和BADI一样吧。

 

第三,就是对这个ENHANCEMENT OPTIONimplementation

在程序LCOMKF1O里点击工具栏的这个按钮,然后把鼠标放在ENHANCEMENT-SECTION     COMPLETE_RESB_08 SPOTS ES_SAPLCOMK的位置,做如下图操作:

 

 

 

 

EDIT——ENHANCEMENT OPERTATIONS——CREATE,填入一些必填字段,注意要Z打头,

 

这个时候就会生成一个ENHANCEMENT  POINT.

标号是SAP自动生成的,例如下面这段代码就是我生成后的代码

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值