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: 

are there guidelines of using Implicit enhancements?

Former Member
0 Kudos

Hi,

I am keen to find out if there are any guidelines around implementing implicit enhancements? Recently it has become easy to use implicit enhancement to provide a quick solution to a customer's problem. However i am not convinced that this is good solution and good to keep implementing implicit enhancements.

I would like to know what other consulting companies follow processes around these when it comes to implicit enhancement.

Thanks

RV

13 REPLIES 13

Former Member
0 Kudos

Ideally,there are no hard and fast rules on whether or not to use the implicit enhancement probabaly because as every ABAPer considers implicit enhancement a last resort.But in an unspoken rule it is always a better practise to check for standard enhancements available - BADI & Exits

If there are none available then there is no harm in working with an implicit enhancement but there are some points to watch out for.

(1) Check the where-used list of the source code that needs to be enhanced - in the routine or the function module or where ever used.If the where used list shows a couple of items then be wary of using the implicit enhancements unless the impact is fully understood

(2)Ensure proper documentation for ease of maintenance

SAP has provided implicit enhancements only at locations considered suitable for changes.So in critical transactions ,they are given only at few locations.

Please go through the standard documentation : SAP Library - Enhancement Framework

Hope it helps

0 Kudos

"because as every ABAPer considers implicit enhancement a last resort."

Well, NO!

Standard exits are much harder to use.  While appropriate locations for Implicit Enhancements are harder to find.  Implicit Enhancements also take a much higher level of understanding of the twists and turns within SAP.

So I would say that I far prefer Implicit Enhancements but recommend that that only Senior ABAPers use them regularly!

Neal

0 Kudos

Well Neal Wilhite,then I should rephrase the "every ABAPer considers implicit enhancement a last resort"  .....

As I mentioned ,since there are no hard and fast rules,it is better to advice a fellow Abaper to consider implicits as a last resort or well,they may prefer implicit enhancements everytime and not even take the pain to check for other options easily available(other than SDN forum search..I guess )

0 Kudos

Neal, but isn't an implicit enhancement just a glorified former "core modification"? Sure, this Enhancement Framework is like the best thing since sliced bread, but when it comes to the implicit enhancements it worries me as well that many trigger-happy ABAPers use them too casually.

On top of that, they're a bit difficult to find, unless you know what to search for exactly. Just recently I was pulling my hair out trying to figure out how certain code gets triggered, only to realize a consultant made an implicit enhancement in a standard function (without leaving any documentation - sure, why bother). At least we know where the user exits are...

It's a very good question though.

0 Kudos

Well, the last I heard:  In 2004 (or maybe 2005), SAP made the enhancement framework their standard for enhancing SAP.  In the past 5 years, I know of no cmod's or BADI's that have been added, but many enhancements have been added as standard enhancements through the enhancement framework.

Since SAP has accepted it as their standard, I wonder why so many refuse to do so also.

So,back to your complaints:

"when it comes to the implicit enhancements it worries me as well that many trigger-happy ABAPers use them too casually"  -  There are fools in every place you look.  As top professionals, it is our job to watch for them and yank their chains.  They use all manor of dangerous code unwisely.  And the only solution to that is to take away their developer's keys.

"On top of that, they're a bit difficult to find, unless you know what to search for exactly" - How so?  You have direct search capability in SE80.

"without leaving any documentation" - Always a problem!  Everywhere you go, the code seems poorly documented.  That has nothing to do with Implicit Enhancements.  However, a lot of the blame for this falls on management. They want code faster.  No time for those who would do the job right.  That takes too long.  Nothing but pressure from them...

Hope this answers some of your questions.

Neal

0 Kudos

Neal, to clarify - it was a concern, not a complaint (I usually take the complaints to the Coffee Corner ).

It's not the matter of technology adoption. I'd happily use an enhancement point when one is provided by SAP with a clear purpose. This post was specifically about the implicit enhancements and my concern was that those are very much like core modifications. In the case of modifications at least we'd need to obtain a key, so if a consultant would request that, the customer had a chance to say: "Hold on a second, do we really need that?". But an enhancement can be done without asking anyone.

We can search in SE80 if we know what we're searching for. Not sure if I'm using it right, but I could not see a separate search for implicit enhancements. SAP Help on this is not very helpfull, it just says it's all "integrated", but I was able to find some useful information on SCN. (I actually have more complaints on this, so have to stop here. )

Again, I have nothing against the technology per se, but it seems to be providing some dangerous weapons with no clear guideline / protection for the customers.

0 Kudos

Hi Neal/Jelena

Have gone through the whole thread and its really nice to read the views expressed. My two cents from my experience of using them is mixed. Although I am big fan of this framework but sometimes it has happened that this flexibilty went in wrong hands leading to lot of escalation and troubles:)...

A word of caution is to use them wisely and make sure they are coded in such a way that they can be turned off any moment

Regards

Nabheet

former_member189849
Contributor
0 Kudos

Let see the below pdf document,you can learn easily

http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/bb54c452-0801-0010-0e84-a653307fc...

If you cam any concerns please let me know

Regrds

Mahesh

0 Kudos


Hello Mahesh,

This document dates back to 2005. Don't you think that the Enhancement Framework evolved in the last 8 years?

Regards,

Tanmoy

0 Kudos

Please site a newer reference.  All well founded references are invited on SCN.

Neal

0 Kudos

Hello Neal,

That is a good document that enlightens us a lot in the area of the Enhancement Framework. I will try to post one.

Regards,

Tanmoy

Sougata
Active Contributor
0 Kudos

There is no concerete guidelines for implementing Implicit Enhancements, but as with anything, common sense should prevail before you decide to go for it or not.

Sometimes its unavoidable when no User-Exits, BAdIs or Enhancement Spots are available but the developer has to be extremely careful as not to change the standard behaviour/functionality of the application.

It is also a good idea to build a Switch around it so that it can then be easily turned OFF/Standby to help regression testing.

Cheers,

Sougata.

kiran_k8
Active Contributor
0 Kudos

RV,

Good Question.Yes,as there is no restriction on creating Implicit enhancements at the Starting/End of Subroutines or FMs,I too doubt whether this is an advisable approach.

Long back I read somewhere that BADIs or Explicit Enhancments should be the preferred approach rather than using Implicit Enhancements.Ofcourse,there will be a constraint on availablity of a suitable BADI or Spot at the required place.

Looking forward to more replies from Experts in Enhancement Framework.

K.Kiran.