You are on page 1of 31

Enhancements

SAP ENHANCEMENTS :
1)USER EXITS/CUSTOMER EXITS
2)BADIs--Business Add-ins

1)USER EXITS/CUSTOMER EXITS:

USER EXITS---subroutines are used


CUSTOMER EXITS--function modules are used
only one time implementation is possible.
These are four types
1.Screen exits :-
used to add some additional screen to standard transaction (se38)
2.Menu exit :-
used to add some additional menus to the standard GUI.
3.Function exit :- :-
used to add some additional logic to standard program.
4.Field exit : not used.

 tcodes : SMOD,CMOD

 Backend
 append structures
 include structures
 custom includes
 Processor
 function exits
 front end
 menu exits
 screen exits(adding sub screens)
 CUSTOMER EXITS procedure :

 1.find out the package for application


 2.go to SMOD,search for available enhancements.
 3.go to CMOD and implement the enhancement in our project.

 for example XD01


 goto SE93 give the tcode XD01 then display
 double click on the program(SAPMF02D)
 menu goto--attributes you find the package(VS)
 After finding the package goto SMOD
 press F4 then u click on information system button in the bottom.
 provide package name and enter
 u find exit name SAPMF02D
 THEN goto CMOD implement it

Enhancement Framework
Enhancement Framework in SAP ABAP is the new enhancement
concept that helps the customers, consultants and third parties by
giving an option of enhance the standard code base with the custom
code that they want to add.
 IMPLICIT Enhancements:
◦ In a ABAP report, there are two places at which the enhancements
are possible by default.
◦ One is the start of the report and at the end of the report.
◦ So, by default in all the reports, customers can do enhancements at
the start and end by creating enhancement implementations.

 EXPLICIT Enhancements:
◦ In this case, SAP has to explicitly provide the places in the report
where exactly it can be enhanced. So, again there are three options
to do the same.
1. Enhancement Point:
Enhancement points has to be created in the report where exactly
customer can enhance such that the desired results at that point
can be changed by the enhancement implementations.

2. Enhancement Section:
Enhancement sections has to be created in the report by selecting
the section of code lines which can be enhanced by the customer
implementation.

3. Badi:
BAdis are the ways of enhancements which are mainly available
for ABAP Objects where a BAdi definition will be created with a
interface with fixed signature that can be implemented by the
customer by BAdi implementation.
Implicit Enhancements
 Report with Some lines
Customer can directly enhance the code.

Customer will follow the below steps:

 Step 1: Show Implicit Enhancement Options


 Step 2: Cursor at the enhancement line and click Enhance.
 Step 3: Then Create Enhancement Implementation
 Step 4: Give the name of implementation
 Step 5: Add the code in the generated code snippet.
Explicit Enhancements

SAP has to provide the enhancement spots so that Customer can


implement there.
◦ 1. Enhancement Point
◦ 2. Enhancement Section
◦ 3. BAdis
Enhancement Point
 From SAP Side:
 Step1: Place the cursor at the line you plan to
provide enhancement point and Create an Enhance
Option.
 Step2: Give enhancement point name and
enhancement spot name.
 Step3: Once the above parameters are given, there
will be an enhancement point is created.
Customer side:
Step1 : Click enhance option.
 Step 2: Place the cursor at point and create
implementation
 Step 3: Add the implementation code for the
point.
Enhancement Section
 Enhancement section is the concept of creating a section out of some lines
of code such that those code lines can be replaced by the code lines
enhanced at the customer codebase.
From SAP Side:
 Step1: Place the cursor and select the lines you plan to provide

enhancement section and Create an Enhance Option.


 Step2: Give enhancement section name and
enhancement spot name.
 Step3: Once the above parameters are given, there
will be an enhancement section created.
Customer side:
 Step1 : Click enhance option.
 Step 2: Place the cursor at section and create
implementation
 Step 3: Add the implementation code for the
section.
To find BADI
1.Goto SE24
Open class CL_EXITHANDLER
Put a break point at GET_INSTACE method,
Execute the tcode ex: XK01
By pressing F8 u get all the BADIs in all the screens, maintain them in a
excel sheet.

2. Go to SE93  Provide TCODE XK01


 Click on display  Click on display object list

 Expand package FBK Expand enhancements

 Expand classic BADI’s definition .identify all BADI’s

 Open each and every BADI in SE18

 Click on interface tab  double click on each method


Types of BADIs:
There are four types of badi’s

1. 1.Single – implementation badi


2. 2. Multiple - implementation badi
3. 3.Filter badi
4. 4. Custom badi (se18)

1.Single – implementation badi :


we can implement this type of badi only one time,
multi use check box is not selected in the badi definition,
then the badi is called single implementation .
2. Multiple - implementation badi :
we can implement the same badi multiple times. If the multi use check box is
selected in the badi definition ,
then the badi is called multiple - implementation badi

3. Filter badi :
This is used to implement the same badi multiple times based on the
conditions .
If the filter-dependent check box is selected in the badi definition then its
called filter badi.
Ex:we want to implement the badi based on the country specific then we go
for filter badi.

4 .Custom badi :
If we create our own badi in se18 then its called custom badi .
BADI (Business ADD-INS)
 BADI’s are used to adding some additional functionality to the standard
transactions with out disturbing the standard functionality.

BADI contains
1.BADI Definition
2. BADI Implementation

1.BADI Definition

Each BADI definition contains one adapter class and one interface
*Adapter class taking care about the version change management.
*interface is collection of methods which are defined, not implemented.
2. BADI Implementation

BADI implementation is noting but, implementing the methods based on


client requirement which are defined in BADI definition.

TCODE for BADI definition is SE18


TCODE for BADI implementation is SE19

You might also like