Pages

Buy

Buy
Showing posts with label User Exits. Show all posts
Showing posts with label User Exits. Show all posts

BADI

BADI stands for Business Add Ins
Just like Customer Exits , BADI  help hook custom enhancements to SAP functionality.
Example of a BADI:
In transaction CAT2 – Time Sheet Entry, HR wishes to include an interactive acknowledgment that knowingly submitting incorrect data is grounds for dismissal. This can be achieved using BADI
sap badi

Features:

  • BADI’s are Object Oriented
  • They can be implemented multiple times
  • It does not require SAP Software Change Registration
  • No effect on release upgraded on the functioning of BADI’s

Define and Implement a BAPI

This involved three steps
Step 1 Creating BADI Definition : Transaction SE18.
sap badi
Step 2 Define BADI interface: Transaction SE19
sap badi
Step 3 Define a class implements the interface : During implementation creation, a class for implementing the enhancement’s interface is also created

User and Customer Exits

What is Customer Exits ?

Customer exits are “hooks” provided by SAP within many standard programs, screens and menus on which customers may “hang” custom functionality to meet business requirements.  More on this in a moment…

Types of Customer Exits

There are three main types of customer exits:
  1. Function Module Exits
  2. Screen Exits
  3. Menu exits
Function Module Exit:It  allows customer to add code via a function module at a specific location in an SAP application program
Syntax: CALL CUSTOMER-FUNCTION ’004′
Menu Exit: It  allows customer to add items to a pulldown menu in a standard SAP program. These items may be used to call add-on programs or custom screens.
Format: +CUS ( additional item in GUI status )
Screen Exit:  It allows customer to add fields to a screen in an SAP program via a subscreen. The subscreen is called within the standard screen’s flow logic.
Format: CALL CUSTOMER-SUBSCREEN CUSTSCR2

Examples of Customer Exits

Example of a Screen Exit:
In transaction CAT2 – Time Sheet Entry, HR wishes to include an interactive acknowledgment that knowingly submitting incorrect data is grounds for dismissal.
customer exit
Example of a Menu Exit:
In transaction SE38 – ABAP Editor, the development team wishes to include a menu link to transaction SE80 – Object Navigator for ease of use.
BEFORE
customer exit
AFTER
customer exit
Example of a Function Module Exit:
The company wants the bank details of the Vendors in the Vendor creation to be mandatory event .So it must flash a error message that ‘Please Enter the bank details’
BEFORE
customer exit
AFTER
customer exit

Locating Customer Exits

In transaction SMOD and look into the details-
Or in transaction SE81 you can use the appropriate application area
customer exit

Create a Customer Exit

To create a customer exit you first need to create a project in transaction CMOD
customer exit
Later you assign the Customer Exit to your project.

What is a USER EXIT?

User Exit serve the same purpose as Customer Exits but they are available only for the SD module. The exit is implemented as a call to a Function Module. The code is written by the developer.
Well know User Exit in SD is MV45AFZZ
  • USEREXIT_FIELD_MODIFICATION – To modify screen attributes
  • USEREXIT_SAVE_DOCUMENT – To perform operations when user hits Save
  • USEREXIT_SAVE_DOCUMENT_PREPARE
  • USEREXIT_MOVE_FIELD_TO_VBAK – When user header changes are moved to header work area.
  • USEREXIT_MOVE_FIELD_TO_VBAP – When user item changes are moved to SAP item work area