Application Development and Automation 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: 
Read only

Re: Enhancement-point VS Enhancment-Section

Former Member
0 Likes
50,164

HI All,

Could you please let me know the use of Enhancement-Point and Enhancement-Section.

Thanx in Advance.

Regards

ambi

1 ACCEPTED SOLUTION
Read only

15,587

Hi Ambika,

Enhancement Point and Enhancement Section are used during explicit enhacement.

The basic difference is

Enhancement Point -

If you have written code using enhacement point your custom code will be executed along with the standard code.

Enhancement Section -

If you have written code using enhancement section, only your custom code will be executed replacing standard code. standard code will not be executed.

Hope this helps.

Regards,

Siddhesh Satghare.

HI All,

Could you please let me know the use of Enhancement-Point and Enhancement-Section.

Thanx in Advance.

Regards

ambi

8 REPLIES 8
Read only

Former Member
0 Likes
15,587
Read only

Former Member
0 Likes
15,587

Hi Ambika,

Whenever enhancement needs to be incorporated directly into the ABAP source code, source code enhancement technology shall be provided. Implementing this technology is also called as Source Code Plug-In. There are two types of Source Code enhancements possible.

u2022 Implicit enhancement option

u2022 Explicit enhancement option

Note that, in order to implement any of these Source code enhancements, you need to be in the u2018Change Enhancement modeu2019 (the spiral icon available in the editor).

Technically the source code plug-in implementations are stored in a separate include program and not as part of the original source program.

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.

You donu2019t need to have an explicitly defined enhancement spot in order to implement these enhancements. Just position the cursor on any of these implicit points and choose u2018Create Enhancementu2019 from the menu to implement it.

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 refer the following link.

[https://www.sdn.sap.com/irj/sdn/nw-development?rid=/webcontent/uuid/2342e1f3-0b01-0010-a186-fdd404884050] [original link is broken];

Refer the pdf in the link.

Thanks,

Surya

Read only

Former Member
0 Likes
15,587

Hi,

Also chck out these links,

https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/9cd334f3-0a01-0010-d884-f5612003...

/people/thomas.weiss/blog/2006/03/15/the-new-enhancement-framework-part-2--what-else-you-need-to-know-before-building-an-enhancement

/people/thomas.weiss/blog/2006/01/24/what-the-new-enhancement-framework-is-for-150-its-basic-structure-and-elements-for-beginners

/people/thomas.weiss/blog/2006/04/03/how-to-define-a-new-badi-within-the-enhancement-framework--part-3-of-the-series

/people/thomas.weiss/blog/2006/04/18/how-to-implement-a-badi-and-how-to-use-a-filter--part-4-of-the-series-on-the-new-enhancement-framework

/people/thomas.weiss/blog/2006/05/03/source-code-enhancements--part-5-of-the-series-on-the-new-enhancement-framework

Reward if helpful

Regards,

Chandralekha

Read only

0 Likes
15,587

HI Chandralekha,

I could understand somewhat after reading those blogs, but could not understand what is the difference between enhancemnt-point and enhancement-section.

As I have read both are used for explicit enhancement options. If both are for the same purpose, then why we are using both....

thanx in advance

Read only

Former Member
0 Likes
15,587

Hi Ambika,

Please check this link

http://help.sap.com/saphelp_nw70/helpdata/en/91/f1e540f8648431e10000000a1550b0/content.htm

http://help.sap.com/saphelp_nw70/helpdata/en/81/9a3942ec4ae22ce10000000a1550b0/content.htm

The ABAP statements ENHANCEMENT-POINT and ENHANCEMENT-SECTION identify positions where code can be inserted or replaced. The enhancement implementations are regular repository objects and are assigned to a development package in the customeru2019s namespace when they are created.

The enhancement spots are used to manage explicit enhancement options. Enhancement spots carry information about the positions at which enhancement options were created. One enhancement spot can manage several enhancement options of a Repository object. Conversely, several enhancement spots can be assigned to one enhancement option.

Best regards,

raam

Read only

dinesh_kumar45
Participant
0 Likes
15,587

 

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 – called Enhancement Section

Read only

15,588

Hi Ambika,

Enhancement Point and Enhancement Section are used during explicit enhacement.

The basic difference is

Enhancement Point -

If you have written code using enhacement point your custom code will be executed along with the standard code.

Enhancement Section -

If you have written code using enhancement section, only your custom code will be executed replacing standard code. standard code will not be executed.

Hope this helps.

Regards,

Siddhesh Satghare.

Read only

0 Likes
15,587

This one is very clear in saying their difference. Good one siddhesh.