SAP学习门户网

您的位置: 主页 > SAP学习文档 > 系统开发(SAP ABAP) >

SAP Enhancement Spot

来源: 互联网 字体:【 点击次数:

让小伙伴们也看看:

Enhancement Spot是SAP最新的增强方式。Enhancement Spot实际上相当于一个容器,里面可以装多个增强。

Enhancement Spot里面可以装的增强根据增强技术主要分为两类:Source Code Plug-In和Object Plug-in。

 

1.Object Plug-in

实际上就是BADI,不过SAP称为New BADI,和传统BADI相比其实现的细节有差异(具体参见另一文章),但其最基本的原理还是利用Interface和Class的继承关系,因此实现增强的核心仍然是创建并实现一个继承接口的类。

一个Enhancement Spot里面可以有多个New BADI。

image

 image

 

2.Sorce Code Plug-In

本文重点介绍源代码的增强。这是一种更加容易创建的增强,只需要在源代码预留上可以增强的点即可,而不用像BADI一样创建Interface并进行相关方法调用。

 image

具体预留的增强的点(SAP叫做Enhancement Option是)有两种:Enhancement Point和Enhancement Section。

 image

2.1.Enhancement Point

在源代码里预留的ENHANCEMENT-POINT语句,该语句后面即可以创建增强实现。

 image

2.2.Enhancement Section

将源代码里的一段代码框起来形成Enhancement Section,在该段代码后可以创建增强实现。并且创建增强实现之后将执行增强实现的代码,而不执行原来被框起来的代码。

image

2.3.隐式增强点

上文介绍的Enhancement Point和Enhancement Section都是属于显示增强点,即必须要源程序中增强了相应的代码才可以进行增强实现。实际上SAP还提供隐式增强点,所谓隐式增强点,即不需要加入专门的代码,所有的程序都默认有的增强点。

隐式增强点出现在:函数、方法、子程序的开始和结尾处;Report程序、INCLUDE程序的结尾处;甚至代码增强实现的首尾都含有隐式增强点。

查看隐式增强点的方法:

 image

点击之后,源代码中会多出一些如下的行,这些行的地方即可以增强:

image

3.总结

SAP新的Enhancement Framework极大的提高了代码增强的可能性。使用Enhancement Spot来管理增强,除了BADI之外,主要是增加直接的源代码增强,而隐式增强点又极大的扩大了源代码增强的范围。基本上做到了源代码“处处可增强”的程度。

(作者:Helena)
文章Tags: SAP Enhancement Spot
除非注明,SAP学习门户网文章均为原创,网站不对内容的真实性作任何评价,因网站内容造成的任何损失均与网站无关,转载请以链接形式标明本文地址。
本文地址:http://www.sap6.com/learn/abap/073502162016/4114.html

参与评论
    评论
关于我们 - 联系我们 - 广告服务 - 网站地图 - 版权声明 - 我要投稿 - 网站tag -