二维码

[四代] SAP增强Enhancement point和Enhancement section

Twilight发表于 2015-07-22 11:29migo_enhance 最后回复于 2018-01-08 16:34 [复制链接] 4989 41

在不改变(或尽量少改变Keep less Modification)SAP标准程序的情况下满足客户的定制开发需求。在SAP NETWEAVER中,所有的增强技术或者思想,都被完美集成到一个架构里面,这个架构就是Enhancement Framework。

Enhancement Framework的基本概念:
  • Ehancement Spot:it's a container of Enhancement options.  
    Enhancement spot是对Enhancement的一个管理平台,Enhancement技术与BADI是有区别的首先BADI是SAP预留的类的接口而Enhancement则是允许用户对现有的SAP代码进行修改。例如插入、替换。只要符合一定的规则即可,不需要SAP预先定义好
  • Enhancement Implementation:用来实现Enhancement options。
  • Implicit and Explict Enhancement:隐式和显式增强
    • 隐式增强就是系统内置的Enhancement options,只能针对单个对象。Implicit  enhancements comprise class enhancements, function group enhancements and predefined enhancement points at particular predefined positions such as the end of a report, a function module, an include or a structure and the beginning and the end of a method.
    • 显式增强就是我们人工加入到程序中的Enhancement options,有两种:
      ENHANCEMENT-POINT:Defines a position in an ABAP program as an enhancement option, at which one or more source code plug-ins can be inserted.
      ENHANCEMENT-SECTION:Defines a section of an ABAP program as an enhancement option, which can can be replaced by one or more source code plug-ins.


下面我们就讲讲显式增强中的Enhancement point和Enhancement section

se38新建程序
enhancement point 1.jpg
Enhancement Operations -> Create Option

1、先讲Enhancement point:
enhancement point 2.jpg
新建Enhancement Sport和Package:$TMP表示保存在本地,如要发布传输,新建一个Package即可
enhancement point 3.jpg
这里是定义了一个增强point,然后对他实施implementation,需要切换到增强实施状态
enhancement point 4.jpg
输入Enhancement implementation名称和描述,回车

一个Enhancement point,可以多次实施,我们再次implementation
enhancement point 5.jpg
enhancement point 6.jpg
代码增强的注意点:
游客,如果您要查看本帖隐藏内容请回复

2、再讲Enhancement section:
enhancement point 7.jpg
Enhancement Operations -> Create Option,在程序编辑状态下,新增Enhancement section的定义
enhancement point 8.jpg
实施可以通过菜单,但是有的系统可能菜单中没有,此处可能是系统配置的原因吧,但是我们还可以通过右键进行创建实施
enhancement point 9.jpg

3、执行程序,查看结果
enhancement point 10.jpg
Enhancement point和Enhancement section的区别:
  • Enhancement-point 定义时只有一个预留点,允许在这个位置implementation
  • Enhancement-section可以在定义时就code初始化代码,而他的implementation之后,新的implementation中的代码就会替换定义段中的代码
回复

使用道具 举报

qshiou
楼主棒棒哒
回复 支持 反对

使用道具 举报

teyun2222
學習了,感謝分享~~~
回复 支持 反对

使用道具 举报

sunfeng09
之前咔嚓咔擦就做了,来看看细致层面得
回复 支持 反对

使用道具 举报

LeoX
回复

使用道具 举报

ratg0626
感谢无私分享
回复 支持 反对

使用道具 举报

mckz8888
学习看到那么好的东西,真是被感动的痛哭流涕……
回复 支持 反对

使用道具 举报

tuntunhu
学习了  ,谢谢楼主
回复 支持 反对

使用道具 举报

glb1197531
xuexiyixia
回复 支持 反对

使用道具 举报

晓月之影
好强大,学习了
回复 支持 反对

使用道具 举报

资明
我想看看啊!!!
回复 支持 反对

使用道具 举报

Anda
有点意思,这种一般用得少
回复 支持 反对

使用道具 举报

fayne
进来学习下
回复 支持 反对

使用道具 举报

uniqueanswer
學習了,感謝分享~~~
回复 支持 反对

使用道具 举报

xiaoyuer

RE: SAP增强Enhancement point和Enhancement section

努力学习天天向上
回复

使用道具 举报

slayer

學習了,感謝分享~~~
回复

使用道具 举报

TaKeThat
學習了,感謝分享~~~
回复

使用道具 举报

qcind

RE: SAP增强Enhancement point和Enhancement section

enhancement point, section.
回复 支持 反对

使用道具 举报

JYL

RE: SAP增强Enhancement point和Enhancement section

顶一个,学习一下。
回复

使用道具 举报

494939637

RE: SAP增强Enhancement point和Enhancement section

了解一下 谢谢分享
回复

使用道具 举报

123下一页

快速回帖

本版积分规则
您需要登录后才可以回帖 登录 | 注册有礼

快速回复 返回顶部 返回列表