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: 

Clarification for BADI vs Enhancement Points

Former Member
0 Kudos

Hi ,

I have a doubt regarding BADI's for any SAP Standard Code.

1) I Always implemented a suitable BADI in 4.6c system with my code in the approriate methos.

2) Now i do the same thing if its old badi in ECC 6 System and if its a new BADI ,I implement BADI using enhancement SPOT for badi found from CL_EXITHANDLER=>GET_INSTANCE or i go to SE80 using PAckage and look for approriate Enhancement Spots based on Desc.

Now my question if do a find

enhancement SpoT in the Main Program of SAP Standard T-code.

I get quite a few enhancement points and i can implement any one of those enhancement points as well. - I mean explict enhacement points/ Sections

My question is

1) I can have my custom code both by implementing a BADI(By writing Code in METHOD) or By implementing the Enhancement Point found using Search in MAIN program and writing my code there.

Am i right or wrong that the above approaches can be used to inject custom Functionality.

2)Atleast by looking Method Desc (Within a BADI -WITHIN A ENHANCEMENT POINT) Found using PACKAGE NAME gives you an idea as where we have to introduce custom code.

But THE ENHANCEMENT Points fOUND Using search in MAIN pROGRAM doesnot give you a hint as to where your custom code had to be injected

or let me put this way

when we will implement EXPLICIT Enhancement Points and when will we use implemnetion of a badi using enhancement spot

I din't find any posts regarding .

Moderators : Don't lock this post as lot of the users seem to have this confusion.

I would appreciate if anyone can throw some light on this

Thanks

Venki

Edited by: venki gundla on Jun 1, 2009 8:46 PM

Edited by: venki gundla on Jun 1, 2009 8:46 PM

2 REPLIES 2

Former Member

Hi All,

The source code enhancements(Explict Enhancement Points/Sections or Source Code Plug ins ) are uncontrolled enhancements. I.e. no one has control on what you write inside the enhancement option. Inside enhancement option you have access to standard sap variables. You can change them unknowingly that it may impact the whole standard SAP functionality. To address this issue a controlled enhancement is there known as Enhancement using BADIs. It basically gives an interface with the parameters to be changed and parameter only to be read etc. so that the variables which should not be touched will be protected.

Thanks

Venki

Former Member
0 Kudos

Resolved