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: 

User Exits

Former Member
0 Kudos

Hi ,

I am new to ABAP. I don't have any Idea on User exits. I read ABAP help. I could not understand it. What is the difference between CMOD and SMOD ? What is the difference between User Exit and BADI ? Can any one provide real time example for a Small User exit ? and the code and Transaction CMOD or SMOD ?

4 REPLIES 4

Former Member
0 Kudos

SMOD > for Defination of the Exits

CMOD > for Projects for the Exits..

SMOD is just to see all the enhancements in the sap system.

CMOD is the customer projects where enhancements are implemented. If you want to implement any enhancements then you will create a project and assign the enhancement and do the coding in exits.

To customize an existing SAP application we have been provided the user exits by SAP. These exits are packaged under enhancements. You choose an enhancement according to your requirements e.g. enhancement MM06E005 is used for adding custom field in me21/me21n. SAP has limited no of enhancements for any transactions, you have to choose only from them to cater your requiement you cant create them.

After selecting your enhancements you have to inherit them in your project in CMOD. Thereafter you do coding and other things like making your subscreens or adding fields to standard tables in respective exits.

To see the effect of your whole project you must activate each componnents of your enhancements.

Difference between BADI and User Exits

Business Add-Ins are a new SAP enhancement technique based on ABAP Objects. They can be inserted into the SAP System to accommodate user requirements too specific to be included in the standard delivery. Since specific industries often require special functions, SAP allows you to predefine these points in your software.

As with customer exits two different views 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 software to standard SAP source code without having to modify the original object.

In the implementation view, the users of Business Add-Ins can customize the logic they need or use a standard logic if one is available.

In contrast to customer exits, Business Add-Ins no longer assume a two-level infrastructure (SAP and customer solutions), but instead allow for a multi-level system landscape (SAP, partner, and customer solutions, as well as country versions, industry solutions, and the like). Definitions and implementations of Business Add-Ins can be created at each level within such a system infrastructure.

SAP guarantees the upward compatibility of all Business Add-In interfaces. Release upgrades do not affect enhancement calls from within the standard software nor do they affect the validity of call interfaces. You do not have to register Business Add-Ins in SSCR.

The Business Add-In enhancement technique differentiates between enhancements that can only be implemented once and enhancements that can be used actively by any number of customers at the same time. 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).

All ABAP sources, screens, GUIs, and table interfaces created using this enhancement technique are defined in a manner that allows customers to include their own enhancements in the standard. A single Business Add-In contains all of the interfaces necessary to implement a specific task.

The actual program code is enhanced using ABAP Objects. In order to better understand the programming techniques behind the Business Add-In enhancement concept, SAP recommends reading the section on ABAP Objects.

check this link for step by step implementation of user exit.

http://www.sapbrain.com/TUTORIALS/TECHNICAL/user_exits_tutorial.html

Former Member
0 Kudos

BADI is the object oriented concept of user exit

Former Member
0 Kudos

chk this

Former Member
0 Kudos

hi Satyanarayana A M S,

<u>Funda behind Enhancements</u>

See SAP is a product and it is being used at the customer site....

So each and every business may or may not need some features ... so all these kind of extra features which will / will not be used by an industry will be present in SAP Standard as a provision for enhancement ...

(i.e) SAP Programmers themselves will forsee all such kind of "Features" and will give some "enhancment points" in the standard release..

so if any Business need this feature they can use it by coding into it and activating... only when they activate these enhancements will be reflected.....

<u>Types of Enhancements</u>

1. Customer Exits :

1. Function module exit (U can code ur own logic inside a SAP Given Function module to change the logic of the standards behaviour)

2. Menu Exit : This will give a new function / job to a menu item ...(adding a new menu item in a transaction)

3. Screen exit : U can have ur own defined Subscreen .. extra field etc.,

<u>BADI</u> : it also has Function module exit , menu exit, screen exit .. but in ABAP OO concept .... (just like an advanced version of customer exit )

<u>User exit</u> : Customer Points call SAP Objects ... it is like a MODIFICATION to the standard .....

The main objective is to Enhance the Business need of a company / industry ....

Hope this helps ...

Cheers

Kripa Rangachari .....