cancel
Showing results for 
Search instead for 
Did you mean: 

user exit

Former Member
0 Kudos

wat are the steps to find out a user exit...

Accepted Solutions (0)

Answers (5)

Answers (5)

Former Member
0 Kudos

Hi Ranjita,

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

2. How to find user exits?

Display the program where you are searching for and exit and search for CALL CUSTOMER-EXIT

If you know the Exit name, go to transaction CMOD.

Choose menu Utillities->SAP Enhancements. Enter the exit name and press enter.

You will now come to a screen that shows the function module exits for the exit.

or

REPORT z_find_userexit NO STANDARD PAGE HEADING.

&----


*& Enter the transaction code that you want to search through in order

*& to find which Standard SAP User Exits exists.

*&

&----


&----


*& Tables

&----


TABLES : tstc, "SAP Transaction Codes

tadir, "Directory of Repository Objects

modsapt, "SAP Enhancements - Short Texts

modact, "Modifications

trdir, "System table TRDIR

tfdir, "Function Module

enlfdir, "Additional Attributes for Function Modules

tstct. "Transaction Code Texts

&----


*& Variables

&----


DATA : jtab LIKE tadir OCCURS 0 WITH HEADER LINE.

DATA : field1(30).

DATA : v_devclass LIKE tadir-devclass.

&----


*& Selection Screen Parameters

&----


SELECTION-SCREEN BEGIN OF BLOCK a01 WITH FRAME TITLE text-001.

SELECTION-SCREEN SKIP.

PARAMETERS : p_tcode LIKE tstc-tcode OBLIGATORY.

SELECTION-SCREEN SKIP.

SELECTION-SCREEN END OF BLOCK a01.

&----


*& Start of main program

&----


START-OF-SELECTION.

  • Validate Transaction Code

SELECT SINGLE * FROM tstc

WHERE tcode EQ p_tcode.

  • Find Repository Objects for transaction code

IF sy-subrc EQ 0.

SELECT SINGLE * FROM tadir

WHERE pgmid = 'R3TR'

AND object = 'PROG'

AND obj_name = tstc-pgmna.

MOVE : tadir-devclass TO v_devclass.

IF sy-subrc NE 0.

SELECT SINGLE * FROM trdir

WHERE name = tstc-pgmna.

IF trdir-subc EQ 'F'.

SELECT SINGLE * FROM tfdir

WHERE pname = tstc-pgmna.

SELECT SINGLE * FROM enlfdir

WHERE funcname = tfdir-funcname.

SELECT SINGLE * FROM tadir

WHERE pgmid = 'R3TR'

AND object = 'FUGR'

AND obj_name = enlfdir-area.

MOVE : tadir-devclass TO v_devclass.

ENDIF.

ENDIF.

  • Find SAP Modifactions

SELECT * FROM tadir

INTO TABLE jtab

WHERE pgmid = 'R3TR'

AND object = 'SMOD'

AND devclass = v_devclass.

SELECT SINGLE * FROM tstct

WHERE sprsl EQ sy-langu

AND tcode EQ p_tcode.

FORMAT COLOR COL_POSITIVE INTENSIFIED OFF.

WRITE:/(19) 'Transaction Code - ',

20(20) p_tcode,

45(50) tstct-ttext.

SKIP.

IF NOT jtab[] IS INITIAL.

WRITE:/(95) sy-uline.

FORMAT COLOR COL_HEADING INTENSIFIED ON.

WRITE:/1 sy-vline,

2 'Exit Name',

21 sy-vline ,

22 'Description',

95 sy-vline.

WRITE:/(95) sy-uline.

LOOP AT jtab.

SELECT SINGLE * FROM modsapt

WHERE sprsl = sy-langu AND

name = jtab-obj_name.

FORMAT COLOR COL_NORMAL INTENSIFIED OFF.

WRITE:/1 sy-vline,

2 jtab-obj_name HOTSPOT ON,

21 sy-vline ,

22 modsapt-modtext,

95 sy-vline.

ENDLOOP.

WRITE:/(95) sy-uline.

DESCRIBE TABLE jtab.

SKIP.

FORMAT COLOR COL_TOTAL INTENSIFIED ON.

WRITE:/ 'No of Exits:' , sy-tfill.

ELSE.

FORMAT COLOR COL_NEGATIVE INTENSIFIED ON.

WRITE:/(95) 'No User Exit exists'.

ENDIF.

ELSE.

FORMAT COLOR COL_NEGATIVE INTENSIFIED ON.

WRITE:/(95) 'Transaction Code Does Not Exist'.

ENDIF.

  • Take the user to SMOD for the Exit that was selected.

AT LINE-SELECTION.

GET CURSOR FIELD field1.

CHECK field1(4) EQ 'JTAB'.

SET PARAMETER ID 'MON' FIELD sy-lisel+1(10).

CALL TRANSACTION 'SMOD' AND SKIP FIRST SCREEN.

Thanksmate,

Reward if helpful,

Phani.

Former Member
0 Kudos

User exits are enhancements. Enhancing ur standard system as the functionality doesnt exist

Sales realated exits

SDTRM001 Reschedule schedule lines without a new ATP check

V45A0001 Determine alternative materials for product selection

V45A0002 Predefine sold-to party in sales document

V45A0003 Collector for customer function modulpool MV45A

V45A0004 Copy packing proposal

V45E0001 Update the purchase order from the sales order

V45E0002 Data transfer in procurement elements (PRreq., assembly)

V45L0001 SD component supplier processing (customer enhancements)

V45P0001 SD customer function for cross-company code sales

V45S0001 Update sales document from configuration

V45S0003 MRP-relevance for incomplete configuration

V45S0004 Effectivity type in sales order

V45W0001 SD Service Management: Forward Contract Data to Item

V46H0001 SD Customer functions for resource-related billing

V60F0001 SD Billing plan (customer enhancement) diff. to billing plan

V46H0001 SD Customer functions for resource-related billing

V45W0001 SD Service Management: Forward Contract Data to Item

V45S0004 Effectivity type in sales order

V45S0003 MRP-relevance for incomplete configuration

V45S0001 Update sales document from configuration

V45P0001 SD customer function for cross-company code sales

V45L0001 SD component supplier processing (customer enhancements)

V45E0002 Data transfer in procurement elements (PRreq., assembly)

V45E0001 Update the purchase order from the sales order

V45A0004 Copy packing proposal

V45A0003 Collector for customer function modulpool MV45A

V45A0002 Predefine sold-to party in sales document

V45A0001 Determine alternative materials for product selection

SDTRM001 Reschedule schedule lines without a new ATP check

SDAPO001 Activating Sourcing Subitem Quantity Propagation

Billing related exits

SDVFX007 User exit: Billing plan during transfer to Accounting

SDVFX008 User exit: Processing of transfer structures SD-FI

SDVFX009 Billing doc. processing KIDONO (payment reference number)

SDVFX010 User exit item table for the customer lines

SDVFX011 Userexit for the komkcv- and kompcv-structures

V05I0001 User exits for billing index

V05N0001 User Exits for Printing Billing Docs. using POR Procedure

V60A0001 Customer functions in the billing document

V60P0001 Data provision for additional fields for display in lists

V61A0001 Customer enhancement: Pricing

Delivery related exits

V50PSTAT - Delivery: Item Status Calculation

V50Q0001 - Delivery Monitor: User Exits for Filling Display Fields

V50R0001 - Collective processing for delivery creation

V50R0002 - Collective processing for delivery creation

V50R0004 - Calculation of Stock for POs for Shipping Due Date List

V50S0001 - User Exits for Delivery Processing

V53C0001 - Rough workload calculation in time per item

V53C0002 - W&S: RWE enhancement - shipping material type/time slot

V53W0001 - User exits for creating picking waves

VMDE0001 - Shipping Interface: Error Handling - Inbound IDoc

VMDE0002 - Shipping Interface: Message PICKSD (Picking, Outbound)

VMDE0003 - Shipping Interface: Message SDPICK (Picking, Inbound)

VMDE0004 - Shipping Interface: Message SDPACK (Packing, Inbound)

V02V0001 - Sales area determination for stock transport order

V02V0002 - User exit for storage location determination

V02V0003 - User exit for gate + matl staging area determination (headr)

V02V0004 - User Exit for Staging Area Determination (Item)

User Exits For Price Determination

USEREXIT_PRICING_PREPARE_TKOMK (module pool SAPLV60A, program RV60AFZZ)

This user exit allows you to copy additional fields for pricing in the TKOMK communication structure (header fields), which have not been provided in the standard SAP system. These fields can also be used for pricing in the billing document.

This user exit is described in detail in the "New fields in pricing" section.

USEREXIT_PRICING_PREPARE_TKOMP (module pool SAPLV60A, program RV60AFZZ)

This user exit allows you to copy additional fields for pricing in the TKOMP communication structure (item fields), which have not been provided in the standard SAP system. These fields can also be used for pricing.

This user exit is described in detail in the "New fields in pricing" section.

USEREXIT_FIELD_MODIFICATION (module pool SAPMV61A, program MV61AFZA)

You can use this user exit to adjust the display of individual lines in the condition screen by changing the display attributes of the screen fields. This does not include the display of subtotals.

This user exit is also used in order processing.

USEREXIT_FIELD_MODIFIC_KZWI (module pool SAPMV61A, program MV61AFZB)

You can change the display of subtotals in the condition screen by changing the display attributes of the screen fields.

This user exit is also used in order processing.

USEREXIT_FIELD_MODIFIC_KOPF (module pool SAPMV61A, program MV61AFZB)

You can adjust the display of subtotals in the condition screen to your requirements by changing the display attributes of the screen fields.

This user exit is also used in order processing.

USEREXIT_FIELD_MODIFIC_LEER (module pool SAPMV61A, program MV61AFZB)

You can adjust the display of blank lines in the condition screen to your requirements by changing the display attributes of the screen fields.

This user exit is also used in order processing.

USEREXIT_PRICING_CHECK (module pool SAPMV61, program MV61AFZA)

You can install additional checks to the standard checks of condition lines (e.g. maximum/minimum value).

USEREXIT_PRICING_RULE (module pool SAPLV61A, program RV61AFZA)

In the standard SAP system, it is predefined which condition categories and classes can be copied or recalculated per pricing type. You can change the predefined standard procedure for each pricing type.

USEREXIT_CHANGE_PRICING_RULE (module pool SAPMV61A, program MV61AFZA)

You can use this user exit to change the pricing type that has been predefined in the copying control table in billing.

USEREXIT_XKOMV_BEWERTEN_INIT (module pool SAPLV61A, program RV61AFZB)

This field is used in the formulas and therefore initialized before the loop for the pricing procedure starts.

USEREXIT_XKOMV_BEWERTEN_END (module pool SAPLV61A, program RV61AFZB)

Within a loop for the price components during pricing, specific values can be transferred into the communication structures in pricing to be further processed.

USEREXIT_XKOMV_ERGAENZEN (module pool SAPLV61A, program RV61AFZB)

In change mode, you can change the dynamic part of the condition record (KONVD) that is always redetermined (i.e. it is not stored in database table KONV).

USEREXIT_XKOMV_ERGAENZEN_MANU (module pool SAPLV61A, program RV61AFZB)

You can use this user exit to change the ready-for-input fields of the manually entered condition record in add mode in the condition screen.

USEREXIT_XKOMV_FUELLEN (module pool SAPLV61A, program RV61AFZB)

This user exit is always called up during a redetermination of all or individual price components. You can change the work fields of the condition line. However, this only applies to conditions that have been determined via a condition record.

USEREXIT_XKOMV_FUELLEN_O_KONP (module pool SAPLV61A, program RV61AFZB)

This user exit is always called up during a redetermination of all or individual price components. You can change the work fields of the condition line. However, this only applies to conditions that have been determined via a condition record. This may include subtotals, manually entered conditions or conditions that have been calculated with a formula.

USEREXIT_PRICING_COPY (module pool SAPLV61A, program RV61AFZA)

You can change the KONV fields for copied price components.

User Exits for Partner Determination

Partner determination contains the following user exits for your use:

EXIT_SAPLV09A_001

You can use this user exit to control whether an address that was entered manually and has already been used in other documents (referenced), should be referenced again if it changes or whether a new address shold be created (duplicated).

EXIT_SAPLV09A_002

Call up this user exit if a customer has not been maintained in the current sales area.

EXIT_SAPLV09A_003

Use this user exit to control the origin of partners in the partner determination procedure (origin X, Y or Z). If X, Y, or Z has been entered in the Origin field, this user exit is automatically called up during partner determination.

EXIT_SAPLV09A_004

Use this user exit to integrate your own check in a program, that runs before the partner is saved in the document.

For more detailed information, see the program documentation for each ofthe user exits.

User Exits For Credit Checks And Risk Management

Credit Check

If you want to carry out your own individual credit checks, that differ from those in the standard system, you must define them in the following user exits:

LVKMPTZZ

LVKMPFZ1: USER_CREDIT_CHECK1

LVKMPFZ2: USER_CREDIT_CHECK2

LVKMPFZ3: USER_CREDIT_CHECK3

User exit for availability check

User exit USEREXIT_AVAIL_CHECK_CREDIT exists in Include MV45AFZF.

This user exit allows you to determine whether the system should or should not carry out an availability check after a blocked document has been released or after a new credit check.

Risk Management for Receivables

RVKMPUS2

Using this user exit, you can define new forms of payment guarantee.

*reward points if helpful*

Former Member
0 Kudos

first goto any transcation code like va01

u can place the curser any where on the any ield

press f1 and press technical settings u will get a popupbox

in the popup box first field program name double click on the program name u will find the userexits

ok

Former Member
0 Kudos

Hello,

SPRO --> SAP Reference IMG --> Sales and Distribution --> System Modification --> User exits.

Prase

Former Member
0 Kudos

Hi, Use SMOD t.code and put F4 then u click on information application there you can see list of all user exits. This is one way..

In ABAP program if u want to see user exit the search with word call customer exit then it will show all list of user exits in a program.

Regards

Veera