Enhancement
The R/3 Enhancement concept allows us to add your own functionality to SAP’s standard business applications without having to modify the original applications. SAP creates enhancements for specific programs, screens, and menus within standard R/3 applications. These enhancements do not contain any functionality. Instead, the enhancements act as hooks where WE can HANG our own add-on functionality onto these hooks.
Advantages
1. They do not affect standard SAP source Code
When you add new functionality to your SAP system using SAP’s exits, you do not alter the source code of standard SAP programs in any way. The code and screens you create are encapsulated as separate objects. These customer objects are linked to standard applications, but exist separately from SAP’s standard software package.
2. They do not effect software updates
When you add new functionality to your SAP system using SAP’s enhancements, your objects (called customer objects) must adhere (remain) to strict naming conventions (standards). When it comes time to upgrade to a new software release, customer objects names ensure that they will not be affected by any changes or new additions to the standard software package.
Note: Customer enhancements may not available for all programs and screens found in the SAP System. You can only use customer exists in the SAP System.
- Screen and Menu Exits to enhance the front end.
- Function Exits to Enhance the Programs
- Append Structure to enhance Back End
Note : In Procedural, we have two type
- Using subroutines - User Exits (Out Dated)
- Using Function Modules - Customer Exits
Customer Exits
The Entire SAP Product can be divided into 3 Parts
- Menu Exits
- Screen Exits
- Function Module Exits
1. Menu Exits :
Menu exits add items to the pull down menus in standard SAP applications. You can use these menu items to call up your own screens or to trigger entire add-on applications.
SAP created menu exits by defining special menu items in the menu painter. These special entries have function codes that begin with “+” (a plus sign). You specify the menu items text when activating the item in an add-on project.
2. Screen Exits :
Screen exits add fields to screens in R/3 applications. SAP create screen exits by placing special sunscreen areas on a standard R/3 screen and calling a customer sub screen from the standard screen’s flow logic.
3. Function Module Exits :
Function module exits add functionally to R/3 applications. Function module exits play a role in both menu and screen exits. When you add a new menu item to a standard pull down menu, you use a function module exit to define the actions that should take place once your menu is activated. Function module exits also control the data flow between standard programs and screen exit fields.
Business Add-Ins
SAP has introduced new enhancement technique Business Add-ins from release 4.6A Business Add-in is the new enhancement technique based on ABAP Objects. BADI is an exit point in a source that allows specific industry sectors, partners, and customers to attach additional software to standard SAP source code without modifying the original object.
The users of Business Add-ins can customize the logic according to requirement or they can use the standard logic one available.
SAP guarantees the upward compatibility of all business Add-in interfaces. Release upgrade do not affect enhancement calls from which the standard software nor do they affect the validity of call interfaces.
Two different views of BADI are available:
- In the definition view, an application programmer predefines exit points in a source that allow specific industry sectors, partners, and customers to attach additional functionality to standard SAP source code without having to modify the original object.
- In the implementation view, the users of Business Add-Ins can enhance (customize) the logic that need or use a standard logic if one is available.
Difference Between Customer Exits and BADIs:
Customer Exit | BADI |
Procedural Approach to work with Enhancements, | Object Oriented Approach to Work with Enhancements. |
Is a two level infrastructure (SAP and customer solutions). | Allow for a multi-level system landscape (SAP, partner, and customer solutions, as well as country versions, industry solutions, and the like).
BADIs can be created at each level within such a system infrastructure. |
Can only be implemented once and enhancements that can be used actively by any number of customers. | In addition, Business Add-ins can be defined according to filter values. This allows you to control add-in implementation and make it dependent on specific criteria (on a specific Country value, for example). |
Source Code Enhancement
Source Code Enhancement is one of the enhancement technologies available under Enhancement Framework. Implementing this technology is also called as Source Code Plug-In. Technically the source code plug-in implementations are stored in a separate include program and not as part of the original source program.
There are two types of Source Code enhancements possible.
- Implicit enhancement option
- Explicit enhancement option
Implicit Enhancement
Implicit enhancement points are basically points within ABAP code where an enhancement point is implied, and in which case can be created. Examples of implicit enhancement points are at the beginning and end of FORM’s, at the end of a program, include or function module etc.
Explicit Enhancement
Explicit enhancement points are basically hooks already coded into the program by SAP at various points of the code.
Your Suggestions Please.....
Regards,
Ramesh.T