Application Development Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 

difference between implicit enhancement and explicit enhancement

Former Member

What is the difference between implicit enhancement and explicit enhancement .

1 ACCEPTED SOLUTION

Former Member

Hi Peters,

Enhancement points are basically hooks at certain defined points within the ABAP code i.e. at the beginning and end of a FORM. These hooks allow you to attach your own custom code which will be executed as if it had been hard coded into the code using a modification. Unlike hard coded modifications these will not be lost during upgrade or patching exercises.

There are 2 types of enhancements with the enhancement framework:

1. Explicit enhancement points: These are basically hooks already coded into the program by SAP at various points of the code. See program RIAUFMVK for examples of these! These are very easy to implement simply go into enhancement mode of SE80 and right click on the enhancement point where you want to add your code and choose u2018Enhancement Implementation->Createu2019 Give it a name, description and assign it to a change request (should not be a Z package) and then simply add the code as normal.

2. Implicit enhancement points: These are basically points within ABAP code where an enhancement point is implied, and in which case can be created. Examples of implicit enhancement points are at the beginning and end of FORMu2019s, at the end of a program, include or function module etc.

Please go through this link for an example:

http://www.sapdev.co.uk/enhance/eframework/ef_implicit.htm

Just check this example also related to frame work:

http://www.saptechnical.com/Tutorials/Others/EnhancementFramework/demo.htm

Reward points if it helps.

Cheers,

Swamy Kunche

7 REPLIES 7

Former Member

Hi Peters,

Enhancement points are basically hooks at certain defined points within the ABAP code i.e. at the beginning and end of a FORM. These hooks allow you to attach your own custom code which will be executed as if it had been hard coded into the code using a modification. Unlike hard coded modifications these will not be lost during upgrade or patching exercises.

There are 2 types of enhancements with the enhancement framework:

1. Explicit enhancement points: These are basically hooks already coded into the program by SAP at various points of the code. See program RIAUFMVK for examples of these! These are very easy to implement simply go into enhancement mode of SE80 and right click on the enhancement point where you want to add your code and choose u2018Enhancement Implementation->Createu2019 Give it a name, description and assign it to a change request (should not be a Z package) and then simply add the code as normal.

2. Implicit enhancement points: These are basically points within ABAP code where an enhancement point is implied, and in which case can be created. Examples of implicit enhancement points are at the beginning and end of FORMu2019s, at the end of a program, include or function module etc.

Please go through this link for an example:

http://www.sapdev.co.uk/enhance/eframework/ef_implicit.htm

Just check this example also related to frame work:

http://www.saptechnical.com/Tutorials/Others/EnhancementFramework/demo.htm

Reward points if it helps.

Cheers,

Swamy Kunche

Former Member

Hi Peters,

Implicit enhancement option

Throughout the ABAP system, enhancement options are automatically available at certain pre-defined places. Some of the implicit options are:

u2022 At the end of all the programs (Includes, Reports, Function pool, Module pool, etc.), after the last statement

u2022 At the beginning and end of all FORM subroutines

u2022 At the end of all Function Modules

u2022 At the end of all visibility areas (public, protected and private) of local class

To view all the implicit options available in a source code, choose u2018Edit -> Enhancement Operations -> Show Implicit Enhancement Optionsu2019 from the editor.

Befor that you click on the spiral icon button in the application toolbar

Explicit enhancement option

The Implicit enhancement options are provided at specific source code places explicitly by SAP (Note that these enhancement definitions can also be created by partners and customers in their code).

There are two types of Explicit Enhancement options available. One which can be provided at a specific place - called Enhancement Point, and another which can be used to replace a set of statements u2013 called Enhancement Section. For this, we now have two new ABAP statements, viz.

u2022 ENHANCEMENT-POINT

u2022 ENHANCEMENT-SECTION

When the Enhancement-Section is implemented, only the implementation gets executed and the original code doesnu2019t get executed. This is a new technique, which didnu2019t exist previously in any of the old ways of enhancing, to exclude any standard SAP code from execution. Because of this, there can be only one active implementation of an Enhancement-Section. On the other hand, there can be multiple active implementations of an Enhancement-Point, in which case all the implementations will be executed with no guarantee in the order of execution.

For more information check the following link

[http://help.sap.com/saphelp_nw70/helpdata/en/94/9cdc40132a8531e10000000a1550b0/frameset.htm]

Thanks,

Surya

Former Member
0 Kudos

Hi,

Refer my answer in the below theard

https://forums.sdn.sap.com/click.jspa?searchID=13271029&messageID=5091633

Regards

Kiran Sure

Former Member
0 Kudos

Explicit enhancements are predefined enhancement sections by SAP. They are stored in Enhancement Spots. They can be implemented by going in the ABAP editor, get into the Enhancement Mode by clicking the spiral button, then, right click into the enhancement point you plan to implement and select Enhancement Implementation->Create. You will be asked a name and a description and after this you can simply add your code.

Implicit enhancements are predefined at the beginning and end of includes, FM's etc.

You can see what are available by going into editor and go to edit -> Enhancement Operations -> Show Implicit.....

Thanks

Naidu


Hi,

Implicit Enhancement.

SAP provided the space to enhance your programs in form and endform. When you click on enhance button if there are double inverted comma in between form and endform then you can create your implementation over there.

Explicit enhancement.

Here you can explicitly enhance your standard code. There is concept called enhancement option(Enhancement point and enhancement section). Anywhere in program you can create your enhancement option and provide enhancement spot(group of enhancement option) to that enhancement option.

prabhu_04
Explorer
0 Kudos

IMPLICIT Enhancements:

Implicit enhancement option is source code enhancement concept. These are incorporated directly in ABAP source code of SAP standard software.

EXPLICIT Enhancements:

Explicit enhancement options are also source code enhancements and they are also available at ABAP source code level.

susmita21
Explorer
0 Kudos

Hi,

Implicit Enhancements :

  1. In implicit enhancements SAP provide the space where we will write our own functionality.
  2. It is available at the following places :-

--> Begin/ end of an include.

--> Begin/end of method / FM / form routine.

--> End of structure.

Explicit Enhancements :

  1. In explicit enhancements programmer will decide where they want to write there functionality. So that in explicit enhancement we have to create enhancement sport for writing the functionality.
  2. There are two type of explicit enhancement option available : -

--> Enhancement point.

--> Enhancement section.

Thanks,

Susmita Pati