Enhancement in Detail

download Enhancement in Detail

of 4

Transcript of Enhancement in Detail

  • 7/27/2019 Enhancement in Detail

    1/4

    http://www.architectsap.com/blog/sap/sap-ecc-abap-enhancement-techniques/

    Enhancement techniques :

    There are different enhancement techniques available which can be used to enhance SAP code. It is

    often required to modify the standard SAP code in order to match customers requirement to suit the

    business functionalities. SAP itself provide scope for the enhancements, like the user-exits,

    enhancement spots, append structures, BAdi, etc. These enhancements are retained even after an

    upgrade. Choice of the techniques to be used depends upon the requirement and suitability.

    Following are the enhancement techniques used to modify SAP standard functionalities:-

    New: -Business Data Toolset (BDT) is a new functionality provided by SAP to modify screen i.e. standard

    screens. If the requirement is to add new fields, shift fields from one tab to another , add field groups,

    create views and created sections in a screen, BDT helps you to do that.

    FQEVENTS: The Transaction FQEVENTS is meant to maintain FI-CA events and some specific events

    which are used by the mass activities. For this method to be used for enhancement, we have to find out

    events for the transaction and check the documentation for the function modules available for those

    events. The functionalities which is provided by these function modules can only be used for

    enhancement.

    Field exits: As part of the extension concept, SAP allows you to install a field exit for each screen field.

    Similar to the conversion exit, the system branches at the field exit at DCI ( Data Communications Input)

    to a function module, if the field is an input field and function code was triggered. Field exits are

    available for all domains.

    User exit: They are the hooks provided by the SAP where we can add logic to enhance the transaction.

    For this method to be used for enhancement, we have to find out the user exit for the transaction and

    check the functionality provided. The functionality which is provided can only be used for enhancement.

    BADI (Business Add in): They are the hooks provided by the SAP where we can add logic to

    enhance the transaction. Here the approach is object oriented. For this method to be used for

    enhancement, we have to find out the BAdi for the transaction and check the functionality provided.

    The functionality which is provided can only be used for enhancement.

    Modification Assistant: the aim of the modification assistant is to make modification

    adjustment easier. You can add, replace or comment out source code, all under the control of

    modification assistant. Changes in the layout and flow logic in the screen painter are also

    recorded. The modification assistant also records change in the menu painter and to text

    elements, as well as the addition of new function modules to an existing function group if you

  • 7/27/2019 Enhancement in Detail

    2/4

    want to change an SAP project, you must provide the following information: SSCR Key, Change

    Request.

    Enhancement spots: This is modification free enhancement of source code. Available

    modifications are

    Implicit Enhancement Option.

    Explicit Enhancement Option.

    Function Group Enhancement.

    Class Enhancement.

    BTE (Business Transaction Event): The enhancement technique (Open FI) that was developed

    for financial accounting component. Open FI assumes that enhancement will only take place on

    three levels (SAP Partners Customers). Open FI uses function modules for program

    enhancements.

    Types of interfaces: there are two types of interface available. Public and Subscribe Interface.

    Process Interface.

    For this method to be used for enhancement, we have to find out the BTE for the transaction and check

    the functionality provided. The functionality which is provided can only be used for enhancement.

    Technique: Append Structure.

    Append Structures are used for enhancing the Tables and Structures. We can add more than

    one append structure to a table or structure.

    The following enhancements can be made to a table or structure TAB with Append Structure: We can inset new fields to TAB.

    We can define foreign keys for fields of TAB that already exist.

    We can attach search helps to fields of TAB that already exist.

    Run transaction SE18 -> Enhancement Spot ES_programe_name.

    Prefix the program name with ES_ to see all the enhancement option in that program.

    Modification free enhancement of source code

    Implicit enhancement option : implicit enhancement points are basically points within ABAP code

    where an enhancement point is implied. At common enhancement places, implicit enhancement optionare available.

    For example: End of executable programs, include function group, dialog module.

    Begin /End of Form routing / Function Module / Method.

    End of Structure ( begin of t_data . End of t_data)

    End of Private / Protected / Public Section of Local Class.

  • 7/27/2019 Enhancement in Detail

    3/4

    Explicit enhancement options. : Predefined enhancement options can be defined in source code.

    They are additionally stored inside Enhancement Spots. There are two types of explicit enhancement

    option available.

    One which can be provided at specific places called Enhancement Spots and another which can be used

    to replace a set of statements Called Enhancement Sections.

    Function group Enhancement : All application function module can be enhanced by adding

    parameters to the standard function module interface.

    Class Enhancement: The global classes and interfaces can be Enhanced as follows :Adding optional parameters existing methods.

    Adding new method to existing class / interface.

    Adding pre-exit , post exit or overwrite exit to an existing methods.

    How to find if Transaction have above modification techniques available?

    To find the implicit enhancement options, go to Edit-> Enhancement Operations -> Show Implicit EnhancementOptions.

    To find the explicit enhancement options, search for the ENHANCEMENTPOINT / ENHANCEMENT-SECTIONIn source code.

    Implicit enhancement points - Changing standard SAP code using the implicit enhancement code points

    Implicit enhancement points are basically points within ABAP code where an enhancement point is implied, and inwhich 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. Below is a step by step demonstration of how to create and

    implicit enhancement point.

    Step 1 - Activate the enhancement functionality

    Within SE80 open up the program/include you want to enhance and click on the enhancement button (show below)

    Step 2 - Show implicit enhancement points

    Go to menu 'edit->Enhancement Operations->Show Implicit Enhancement Options' to display implicit enhancementpoints within the ABAP code

    Step 3 - Enhancement points with the code

    Once you have done this you will be able to see all the implicit enhancement points available within you code, theseare denoted by the line of quotation marks and the black arrow at the start. In this example there are enhancementpoints at the start and end of each form and one at the very end of the include.

    Step 4 - Create an implicit enhancement point

    In order to implement an implicit enhancement point simply right click on the required enhancement point and select'Enhancement Implementation->create'.

  • 7/27/2019 Enhancement in Detail

    4/4

    Step 5 - Enhancement point type

    Next click on the code button to create a code implementation

    Step 6 - Enhancement point created

    The enhancement point will now have been created in the appropriate place. Denoted by theENHANCEMENT...ENDENHANCEMENT

    Step 7 - Enter code into enhancement

    You can now enter your own code into the enhancement point!

    Step 8 - Activate the enhancement point

    Click the 'Activate Enhancements' button to activate it.

    Step 9 - Turn enhancement mode off

    Now click the 'Active inactive' button to turn enhancement mode off and return to standard SE80