Enhancement framework in ECC 6.0
I have some question regarding ECC6.0 version:-
1) what is enhancement framework.
2) HOW IT IS BETTER THAN USER EXITS AND BADI?
3) And one more after creating a ztable in ecc6.0 , do we have to do enhancement? what is it , not getting this pint... can u pls clarify my doubt....
Pls do reply to my queries.....
Thanks
ankita
Thanks you very much...very helpful answer.
One thing do you have any doc or notes in regards to the table/ structure enhancement category in ECC6.0.
Pls do send if you have.
And the link regarding Enhacement framework is also very helpful to understand.
Thanks once again:))
Similar Messages
-
How to use Enhancement Framework in ECC 5.0 and 6.0
hi
is there any good tutorials on enhancement framework? i have gone through the help but its not very clear. if anyone has stepby step guide will be useful.
~SureshThis is an old question... but i think it is very useful for the developers if anyone search it and find my answer relevant like it with immediate effect.....
What is Enhancement Framework?????????
Enhancement Framework is the new paradigm to bring all enhancement techniques under one roof. It can also be switched using Switch Framework. The following are different enhancement technologies available under this framework.
• Source Code Enhancement
• Function Group Enhancement
• Class Enhancement
• Kernel-BADI Enhancement
Semantically related enhancement options are grouped under a ‘Simple Enhancement Spot’. ‘Composite Enhancement Spot’ contains one or more of Simple and other Composite Enhancement Spots. On the other hand (implementation side), various related implementation elements are grouped under a ‘Simple Enhancement Implementation’. A ‘Composite Enhancement Implementation’ can contain one or more of Simple and other Complex Enhancement Implementations.
1.Source Code enhancement
Whenever enhancement needs to be incorporated directly into the ABAP source code, this technology shall be provided. Implementing this technology is also called as Source Code Plug-In. There are two types of Source Code enhancements possible.
• Implicit enhancement option
• Explicit enhancement option
>>>Implicit enhancement option
Throughout the ABAP system, enhancement options are automatically available at certain pre-defined places. Some of the implicit options are:
• At the end of all the programs (Includes, Reports, Function pool, Module pool, etc.), after the last statement
• At the beginning and end of all FORM subroutines
• At the end of all Function Modules
• At the end of all visibility areas (public, protected and private) of local class
******Note that, in order to implement any of these Source code enhancements, you need to be in the ‘Change Enhancement mode’ (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.***********
>>>>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 – called Enhancement Section. For this, we now have two new ABAP statements, viz.
• ENHANCEMENT-POINT
• ENHANCEMENT-SECTION
When the Enhancement-Section is implemented, only the implementation gets executed and the original code doesn’t get executed. This is a new technique, which didn’t 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.
we mainly use above framework .......if nybody need further and more information let me knw... -
Enhancement spot in ECC 6.0
Hi all,
can anyone please make it clear on what enhancement spot is in ECC 6.0.
All Useful answers will be rewarded..
Thanks & Regards,
Saroja.Hi
ENHANCEMENT-POINT
ENHANCEMENT-POINT can either be static (for example, additional data declaration) or dynamic (for example, additional coding).
http://help.sap.com/saphelp_nw2004s/helpdata/en/56/ee9441026aae5fe10000000a1550b0/content.htm
Refer the very useful links below:
Enhancement-Point is a part of the new enhancement framework. He is some lite reading.
http://help.sap.com/saphelp_nw2004s/helpdata/en/94/9cdc40132a8531e10000000a1550b0/frameset.htm
Please check this blogs and wiki as well.
/people/thomas.weiss/blog/2006/05/03/source-code-enhancements--part-5-of-the-series-on-the-new-enhancement-framework
/people/thomas.weiss/blog/2006/03/15/the-new-enhancement-framework-part-2--what-else-you-need-to-know-before-building-an-enhancement
https://www.sdn.sap.com/irj/sdn/wiki?path=/display/home/thenewEnhancementFrameworkandthenewkernel-basedBAdI&
Please check these weblog for more information and sample codes.
/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/03/15/the-new-enhancement-framework-part-2--what-else-you-need-to-know-before-building-an-enhancement
/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
Look at this articles:
New Enhancement Framework
Enhancement Framework
Enhancement Framework - The New Way to Enhance Your ABAP Systems
Switch Framework Demo
Introduction to the Enhancement Framework
To now more about BADi Implementation see:
How To Define a New BAdI Within the Enhancement Framework
How to implement a BAdI And How to Use a Filter
Enhancement-Point is a part of the new enhancement framework. He is some lite reading.
http://help.sap.com/saphelp_nw2004s/helpdata/en/94/9cdc40132a8531e10000000a1550b0/frameset.htm
Please check this blogs .
/people/thomas.weiss/blog/2006/05/03/source-code-enhancements--part-5-of-the-series-on-the-new-enhancement-framework
/people/thomas.weiss/blog/2006/03/15/the-new-enhancement-framework-part-2--what-else-you-need-to-know-before-building-an-enhancement
https://www.sdn.sap.com/irj/sdn/wiki?path=/display/home/thenewEnhancementFrameworkandthenewkernel-basedBAdI&
Enhancement frame work is the new concept using which SAP allows you to change the existing programs
See the following blogs that talk about the same in detail
/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
Defines a position in an ABAP program as an enhancement option, at which one or more source code plug-ins can be inserted.
Syntax
ENHANCEMENT-POINT enh_id SPOTS spot1 spot2 ...
[STATIC]
[INCLUDE BOUND].
Extras:
1. ... STATIC
2. ... INCLUDE BOUND
Effect
: This statement defines an explicit enhancement option at the current position in the program at which a source code enhancement can be made. In program generation, the source code plug-ins of the assigned enhancement implementation that are available in the current system and have a switch in the status stand-by or on, are inserted at this position.
If the addition STATIC is not specified, the source code enhancement is dynamic. This means that in program execution, only those source code plug-ins are executed whose switch has the status on. If a source code plug-in does not have a switch assigned to it, it is handled in the same way as a plug-in with a switch in the status on.
With enh_id, an ID must be specified directly for the enhancement option, which is unique in the current compilation unit without the addition INCLUDE BOUND, and with this addition, is unique in current Include program. At least one enhancement spot must be assigned to the enhancement option using the specification simple enhancement spots spot1, spot2, and so on.
Within enhancements, one or more source code plug-ins can be created for one enhancement option. A source code plug-in is created by the assignment of an enhancement implementation in the Enhancement Builder. This automatically generates an empty source code plug-in with a unique ID, which is displayed underneath ENHANCEMENT-POINT in the Editor, where the actual enhancement can be implemented between ENHANCEMENT and ENDENHANCEMENT.
A source code plug-in is assigned to only one enhancement option. Multiple source code plug-ins of one enhancement implementation and the source code plug-ins of multiple enhancement implementations can be assigned to one enhancement point.
Notes
: In the terminology of the enhancement concept, the statement ENHANCEMENT-POINT includes both the enhancement spot element definition and the enhancement spot invocation of the enhancement option.
The statement ENHANCEMENT-POINT can either be entered directly or created by choosing Edit ? Enhancement operations ? Create enhancement in the Enhancement Builder. After the program has been saved or created using Edit ? Enhancement operations ? Create enhancement, the statement can only be deleted by choosing Edit ? Enhancement operations ? Delete enhancement.
In addition to the enhancement options explicitly specified by ENHANCEMENT-POINT, ABAP programs also contain implicit enhancement points, which can also be enhanced using source code plug-ins.
Addition 1
... STATIC
Effect
: The addition STATIC is used to define a static source code enhancement. In a static source code enhancement, all incorporated source code plug-ins are taken into account when the program is executed, including those whose switch is in the status stand-by.
Note
: The STATIC addition is intended for the enhancement of data declarations, while the statement ENHANCEMENT-POINT without the STATIC addition is designed for the enhancement of executable coding. When the statement is executed using Enhancements ? Create enhancement, the addition is set according to this selection.
Addition 2
... INCLUDE BOUND
Effect
: This addition can be entered in Include programs. It links the source code enhancement to the current Include program. Each program that incorporates an Include program only includes the source code enhancements that are defined with this addition. Source code enhancements created using the INCLUDE BOUND addition have their own namespace in each Include program. This ensures that if several Include programs are integrated into one compilation unit, no namespace conflicts arise, either between Include programs, or with the source code enhancements of the compilation unit.
Without the addition INCLUDE BOUND, a source code enhancement is assigned to only one compilation unit. If the statement ENHANCEMENT-POINT is executed in an Include program without this addition, a compilation unit must be assigned to it in the Enhancement Builder.
Note
: In an Include program, Include-bound and non-Include-bound source code enhancements can not be defined at the same time. This also applies if an Include program incorporates other Include programs.
Enhancement points are points provided by sap in standard programs to modify the source code. Go to any standard program, Locate the spiral button on the toolbar. Then press it and then navigate to edit->enhancement operations->display enhancement point menu. Then a no of yellow lines would appear, which are the available en points. You would have to change it and write the applicable source code.
Regards
Anji -
Screen enhancement through enhancement framework
Hi to all experts,
I have question can screen enhancements can be done using enhancement framework technology in ECC 6.0
Any link will help
ALready searched in SCN couldnt find anythingHi,
Go through the link.
https://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/9cd334f3-0a01-0010-d884-f56120039915
Hope this resolves your query.
Regards,
Manish -
What are the best practices for using the enhancement framework?
Hello enhancement framework experts,
Recently, my company upgraded to SAP NW 7.1 EhP6. This presents us with the capability to use the enhancement framework.
A couple of senior programmers were asked to deliver a guideline for use of the framework. They published the following statement:
"SAP does not guarantee the validity of the enhancement points in future releases/versions. As a result, any implemented enhancement points may require significant work during upgrades. So, enhancement points should essentially be used as an alternative to core modifications, which is a rare scenario.".
I am looking for confirmation or contradiction to the statement "SAP does not guarantee the validity of enhancement points in future releases/versions..." . Is this a true statement for both implicit and explicit enhancement points?
Is the impact of activated explicit and implicit enhancements much greater to an SAP upgrade than BAdi's and user exits?
Is there any SAP published guidelines/best practices for use of the enhancement framework?
Thank you,
Kimberly
Edited by: Kimberly Carmack on Aug 11, 2011 5:31 PMFound an article that answers this question quite well:
[How to Get the Most From the Enhancement and Switch Framework as a Customer or Partner - Tips from the Experts|http://www.sdn.sap.com/irj/scn/index?rid=/library/uuid/c0f0373e-a915-2e10-6e88-d4de0c725ab3]
Thank you Thomas Weiss! -
Creating Enhancement Implementation for the Enhancement spot in ECC 6.0
Hi All,
I have an urgent requirement of creating an Enhancement implementation for the existing Enhancement Spot in ECC 6.0 ..
I never worked on enhancement in ECC 6.0.
There is an existing enhancement spot called "ES_SAPLIQS0" in the package " IWOC". which has got three existing implementations
1. DI_ROT_SAPLIQS0
2. ISU_SAPLIQS0
3. DIMP_GENERAL_SAPLIQS0
I need to create another implementation for the same enhancement spot.. Please let me know the detailed procedure to create the enhancement implementation for the same spot..
Thanks-
Shrikant
useful answers will be rewarded.First of all find out the include program where you want to write the logic.. Click the spiral button to go to enhancement mode.. then click on Edit > Enhancement operations> Show implicit enhancement points.
This will hightlight all the enhancement points in your include program. Right click on exact enhancement point and select Enhancement Implementations --> Create,, It should give you the same Enhancement spot you are talking about. select that and write the code.. This code will be automatically appear in the same enhancement spot. You can see one more Enhancement implementation in the same Enhancement spot from the transaction code se19.
Hope my explanation is clear, if you have any doubts, send me a mail at [email protected]
All the best.
Shrikant -
HRBEN0052 Enhancement framework
In HR, HRBEN0052 program generates the required IDOCS so that the emp info can be integrated with benefit providers. Its common that every provider needs few fields that are NOT part of the standard IDOC. Can we use enhancement framework to enhance HRBEN0052 to meet our needs.
Thanks,
-Teja
Edited by: Teja2009 on Nov 30, 2009 11:11 PMIf you have another enhancement point for the INITIALIZATION event, you can do something like this.
SELECTION-SCREEN BEGIN OF SCREEN 512 TITLE title512 AS WINDOW.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 1(20) c_belnr.
PARAMETERS: l_belnr TYPE kbld-belnr.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 1(20) c_blpos.
PARAMETERS: l_blpos TYPE kbld-blpos.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN END OF SCREEN 512.
INITIALIZATION.
c_belnr = 'Document Number'.
c_blpos = 'Item Number'. -
How to make a view created using enhancement framework as Interface View
Dear Experts.
I Created A new View and window by using Enhancement Framework for a standard webdynpro comp. Now i want to use the same window as a UIBB in FPM , since in window properties interface view check box is unchecked it's not allowing me to use a UIBB in FPM.
Kindly answer for the following.
1) Is there any way to make a view a interface ( whcih is by default in nature but while creating from Enhancement framework behaivng Strangly).
2) If there is no way then how to use enhanced (additional View Created in Standard WDA comp) further like in FPM ( UIBB ).
thanks in Advance.
Best Regards,
Kranthikumar Palle>
kranthi9121 wrote:
> Dear Experts.
>
> I Created A new View and window by using Enhancement Framework for a standard webdynpro comp. Now i want to use the same window as a UIBB in FPM , since in window properties interface view check box is unchecked it's not allowing me to use a UIBB in FPM.
>
> Kindly answer for the following.
>
> 1) Is there any way to make a view a interface ( whcih is by default in nature but while creating from Enhancement framework behaivng Strangly).
>
> 2) If there is no way then how to use enhanced (additional View Created in Standard WDA comp) further like in FPM ( UIBB ).
>
>
> thanks in Advance.
>
> Best Regards,
> Kranthikumar Palle
Hi,
Please see [https://cw.sdn.sap.com/cw/docs/DOC-21546|https://cw.sdn.sap.com/cw/docs/DOC-21546]
windows created through enhancement are local to component and hence they are not visible outside.
You need to find other way to provide your interface view to UIBB. -
How to Check Enhancement Pack of ECC system
Hi Experts,
I want to check enhancement pack of My SAP R/3 ECC 6.0 system.
Where can i find this information can you please help.
In System --> Status --> in component version i can see "SAP ECC 6.0".
On click of the button provided below this component version , i can see following details:
SAP_ABA 700 0011 SAPKA70011 Cross-Application Component
SAP_BASIS 700 0011 SAPKB70011 SAP Basis Component
ST-PI 2005_1_700 0005 SAPKITLQI5 SAP Solution Tools Plug-In
PI_BASIS 2005_1_700 0011 SAPKIPYJ7B PI_BASIS 2005_1_700
SAP_BW 700 0011 SAPKW70011 SAP NetWeaver BI 7.0
SAP_AP 700 0007 SAPKNA7007 SAP Application Platform
LCAPPS 2005_700 0003 SAPKIBHD03 LC Applications (LCAPPS) 2005_700
SAP_APPL 600 0006 SAPKH60006 Logistics and Accounting
from this information can you please help me identify my SAp R/3 ECC 6.0 system's enhancement pack version?
Regards,
Ashish ShahSAP_APPL 600 No EHP
SAP_APPL 601 EHP1
SAP_APPL 602 EHP2
SAP_APPL 603 EHP3
SAP_APPL 604 EHP4
SAP_APPL 605 EHP5
SAP_APPL 616 EHP6
SAP_APPL 617 EHP7
Sorry if i am wrong....thats how i find it...i am an ABAPer.
Regards,
Vishnu -
Can assign some Enhancement Framework to the same client????
Hello experts, I would like to know that it is possible have some Enhancement Set Framework to the same client.
In transaction sm30 with table "BSPWDV_EHSET_ASG" .I would like to assig different Enhancement Set to the same Client. It is possible?? I think that this is not possible because when I try to assing more than one Enhancement set for the same client. The second is not save in table "BSPWDV_EHSET_ASG".
Thanks in advance.
RegardsHi Javier,
You are right, we can't have more than one enhancement set per client.If you want to maintain different enhancement sets based on logged in user or some business role, you can implement a BADI-COMPONENT_LOADING with interface IF_BSP_WD_CMP_LOADING_BADI and do something like this inside the method GET_ACTIVE_ENHANCEMENT_SET:
data: LS_USER_ROLE type STRING.
data: LS_ASSIGMENT type STRING.
data: LR_PROFILE_INSTANCE type ref to
IF_CRM_UI_PROFILE.
LR_PROFILE_INSTANCE = CL_CRM_UI_PROFILE=>GET_INSTANCE( ).
LR_PROFILE_INSTANCE->GET_PROFILE( receiving RV_RESULT = LS_USER_ROLE ).
if LS_USER_ROLE = 'SALESPRO'.
RV_RESULT = 'YOUR ENHANCEMENT SET'.
else.
if CL_BSP_WD_ENHANCEMENT_API=>INHOUSE_USE = ABAP_FALSE.
data: LS_DEF_ASSIGMENT type BSPWD_EHSET_ASGN.
select single * from BSPWD_EHSET_ASGN into LS_DEF_ASSIGMENT where CLIENT = SY-MANDT.
if SY-SUBRC = 0.
RV_RESULT = LS_DEF_ASSIGMENT-ENHANCEMENT_SET.
endif.
endif.
Hope this helps!
Thanks and Regards,
Rohit -
How to pretty printer of a code in enhance framework of a standard FM
Hi,
I have written a code in a <b>enhancement point of a standard Function Module</b>. But i am unable to pretty printer that portion of code. Doed any one have any idea how to do that??
Thanks & Regards,
Abhishek SarkarHi,
Pritty printer gives a pritty view to your code, so that it can be easily readable.
You can set the functionality of pritty printer by doing some setting.
The path for setting is
Utilities>Setting>ABAP Editor-->Pritty Printer.
Thanks. -
Enhancement Statement in ECC 6.0
Hey guys,
I have question regarding this ENHANCEMENT statement...
What does it actually do?
Does it affect the flow of the program?[http://help.sap.com/saphelp_nw2004s/helpdata/en/a0/47e94086087e7fe10000000a1550b0/frameset.htm|http://help.sap.com/saphelp_nw2004s/helpdata/en/a0/47e94086087e7fe10000000a1550b0/frameset.htm]
-
Hi Gurus,
I want to know about Explicit Enhacement spot and how it can be made and what is the use of it.if there is some screen shots available then kindly provide the link.
Every Helpfull software will surely awarded Points.goto the program. click on the enhancment button(one with curled) on the tool bar.
the screen color will change. click on goto->enhancments->show implicit enhacment.
you will see yellow color line. chose the line wher you want to enhance and right click and select enhanment->create.
in the dialog box, press create button. give the enhacment spot name. press ok.
now select your enhancement name and press ok
your enhancment will be added in the code.
press activate to activate the point.
https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/bb54c452-0801-0010-0e84-a653307fc6fc
Reward if useful. -
Enhancement points in ECC 6.0
Hi,
Pls let me know how to find the enhancement points and how to plug-in our own code there.
Regards,
KavithaUsing SE80 -> Enhancement Info System -- you can find those.
For more details check..
https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/bb54c452-0801-0010-0e84-a653307fc6fc -
Enhancment Framework- Purchase Requisitions
Is there a pre-/post- exit enhancment that I can code to process a Purchase
Requisiton Create or Change?
If so which class and method would need to be enhanced?
I don't want to use a BAdI.Hi,
You have two types of enhancements.
1. Implicit enhancement
2. Explicit enhancement.
Implicit enhancement are already predefined in your programs.
To create implicit enhancement.
goto program and press shift +f4 and then goto edit>enhancements>show implicit enhancement
then implicit enhancements are highlighted in the program.
then right click on the highlightes point and click enhancement and press create.
and you can write the code in between enhancement and end enhancement .
Hope it helps you for the requirement.
Maybe you are looking for
-
Why the default value is not the Oracle recommended?
Why the default value is not the Oracle recommended? In Oracle 10g, the default alocated unit of Oracle ASM is 1MB. But the Oracle ducumentation states that "To ensure a higher probability of one logical I/O resulting in no more than one physical I/O
-
Problems with syncing - unable to add music to ipod
hi just got my ipod and tried to load 3.4gb of music to my 2gb ipod nano. Itunes said it was too big and and created a playlist based on my prefernces to fit and behann syncing to ipod. I did not want this and pulled the usb cable. I then deleted all
-
Problems using Macbook to connect to LAN at home
Hello, I'm a first time mac user so bear with me My home LAN is connected by several cables in a few areas of the house, using a router. I previously had the cable hooked up to my desktop PC in a room. It works fine, plug&play most of the time. The t
-
Xrandr, dual monitor, openbox - setting the main monitor?
Hello fellow archers, got some kind of nasty problem here: I got a notebook (on the right side) and a old monitor (on the left side). By using the handy xrandr tool I can set up dual monitors (almost) fine: xrandr --output VGA-0 --mode 1400x1050 --le
-
ermm mine ipad 2 screen is little bit crack so how can apple help me ..