Application Development and Automation 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: 
Read only

Difference b/w Customer exits and User Exits

Former Member
0 Likes
1,644

Hi,

Can anybody explain diff b/w user exits and customer exits .

How to find out and Impement the coding ..

Thanks Advance

Rohan.A

Hi,

Can anybody explain diff b/w user exits and customer exits .

How to find out and Impement the coding ..

Thanks Advance

Rohan.A

6 REPLIES 6
Read only

Former Member
0 Likes
1,337

Hi Rohan,

Check this matter , this may be helpful to you.

<b>CUSTOMER EXITS</b>

The enhancement concept allows you to add your own functionality to SAP’s standard business applications without having to modify the original applications. SAP creates customer exits for specific programs, screens, and menus within standard applications. These exits do not contain any functionality. Instead, the customer exits act as hooks. You can hang your own add-on functionality onto these hooks.

If you want to enhance the functionality of your SAP System, you should take advantage of the exits available in standard applications. There are two main reasons why you should use exits rather than modifying SAP software yourself. Add-ons attached to exits have the advantage that:

• 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.

• They do not affect software updates

When you add new functionality to your SAP System using SAP’s exits, your objects (called customer objects) must adhere to strict naming conventions. When it comes time to upgrade a 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.

Customer exits are not available for all programs and screens found in the SAP System. You can only use customer exits if they already exist in the SAP System.

<b>User exits :</b>

1. Introduction

2. How to find user exits

3. Using Project management of SAP Enhancements

1. Introduction:

User exits (Function module exits) are exits developed by SAP. The exit is implementerd as a call to a functionmodule. The code for the function module is writeen by the developer. You are not writing the code directly in the function module, but in the include that is implemented in the function module.

The naming standard of function modules for functionmodule exits is:

EXIT_<program name><3 digit suffix>

The call to a functionmodule exit is implemented as:

CALL CUSTOMER.-FUNCTION ❤️ digit suffix>

Example:

The program for transaction VA01 Create salesorder is SAPMV45A

If you search for CALL CUSTOMER-FUNCTION i program

SAPMV45A you will find ( Among other user exits):

CALL CUSTOMER-FUNCTION '003'

exporting

xvbak = vbak

xvbuk = vbuk

xkomk = tkomk

importing

lvf_subrc = lvf_subrc

tables

xvbfa = xvbfa

xvbap = xvbap

xvbup = xvbup.

The exit calls function module EXIT_SAPMV45A_003

Hope this is helpful.

Reward all the helpful answers.

Regards

Read only

0 Likes
1,337

Hi ,

What are T code to implement custom logic for Customer exits and User Exits .

What is SMode and CMode.

Thanks

Jagadeshwar.G

Read only

0 Likes
1,337

CMOD is transaction for creating enhancement projects, whenever you want to extend the standard SAP functionality with your own user-exit enhancement, you first need to create a enhancement project with CMOD and then assign the enhancement to it.

You activate actual enhancement with SMOD. SMOD lets you search for enhancement user-exits and lets you activate it and put your own code in it. These user-exits are function s of the format EXIT_<program name>_nnn, they will contain a Z* include which you can modify. Just coding a enhancement won't make it effective, you need also to assign it to a project via CMOD

One popular way of finding enhancement in a particular transaction / SAP program is to search for enhancements (using F4 search) by Package in SMOD. Then by the description of the enhancement and comparing with the SAP transaction code, you will find out where the user-exit is used and whether you can make use of it for your requirement

Read only

0 Likes
1,337

Hi Vishnu .

I got total understanding of User exits (Functional module Exit).How to find out corrcet exit and where to implement it .

User exits are again classified ?

Do we need to contact with SAP People to get Access key.?

But I have some confusion regarding Customer exits .These are again classified Screen Exits , Menu Exits etc ..How to implement it ?

Plz help me out .

Thanks

Rohan

Read only

Former Member
0 Likes
1,337

Hi,

customer-exits are also known as BTE - Business Transaction Events. They can be accessed and used via tr.code FIBF - SAP Business Framework: Business Transaction Events.

There are few differences between user-exits and BTE:

1. User-exit may be used only once accross one application server - means multiple and different coding for a single user-exit is impossible. BTE, on the other hand, allows usage of the same event as many times as you need in your so called products.

2. Using user-exit you can extend the ABAP functionality, the GUI interface (GUI status), and screen logic. Using BTE you can extend only the ABAP functionality - which is one of disadvantages of BTEs.

In other words - user-exit is the oldest technology used to extend standard SAP functionality. Next technology is usage of BTE. Currently there is new technology - usage of Business Add-Ins (BADI), where you must have knowledge of object-oriented ABAP capabilities. Badi-s are impemented as a methods of a class, may be used as many times as you need, and can extend ABAP functionality, screen flow logic and GUI interfaces.

To your question: 'How to find out and Impement the coding':

- related to BTE - check info system - via menu:

fibf -> Environment -> Info system ((P/S) or

fibf -> Environment -> Info system ((Processes).

There you can find all the BTEs implemented into your landscape, sample documentation and info on what to do in order to use the desired BTE.

And check the link:

http://www.sapgenie.com/abap/code/abap26.htm

for users-exits, attached to some transaction code. You may find it helpful.

Hope this helps.

Regards,

Ivaylo

Read only

Former Member
0 Likes
1,337

Hi,

User Exit

1. Implemented as Subroutines.

2. Created in SAP namespace.

3. You require access key to make changes

Customer Exit

1.Implemented as FM.

2. Created in customer namespace.

3. Do not require access key to make changes.

Regards,

Kriththika.

                • Award points if found useful***********