‎2006 Oct 06 7:36 AM
hello friends
iam new to user exits. i want to create a new user exit for MB51 report can any one explain the procedur for creating a user exit
‎2006 Oct 06 7:38 AM
Before creating a new user exit, first find out what all exits are there for the transaction and whether they can be used to serve your requirement.
Below is the code which will give you all the exits for a particular transaction code.
&----
*& Report ZUSEREXIT *
*& *
&----
*& Finding the user-exits of a SAP transaction code *
*& *
*& Enter the transaction code in which you are looking for the *
*& user-exit and it will list you the list of user-exits in the *
*& transaction code. Also a drill down is possible which will help you *
*& to branch to SMOD. *
&----
REPORT zuserexit NO STANDARD PAGE HEADING.
TABLES : tstc, tadir, modsapt, modact, trdir, tfdir, enlfdir.
TABLES : tstct.
DATA : jtab LIKE tadir OCCURS 0 WITH HEADER LINE.
DATA : field1(30).
DATA : v_devclass LIKE tadir-devclass.
PARAMETERS : p_tcode LIKE tstc-tcode OBLIGATORY.
SELECT SINGLE * FROM tstc WHERE tcode EQ p_tcode.
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 EQ enlfdir-area.
MOVE : tadir-devclass TO v_devclass.
ENDIF.
ENDIF.
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.
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.
*---End of Program
Best Regards,
Vibha Deshmukh
*Plz mark useful answers
‎2006 Oct 06 7:39 AM
Hi,
go through these links..
<a href="http://sap-img.com/abap/a-short-tutorial-on-user-exits.htm">http://sap-img.com/abap/a-short-tutorial-on-user-exits.htm</a>
<a href="http://sap-img.com/abap/what-is-user-exits.htm">http://sap-img.com/abap/what-is-user-exits.htm</a>
<a href="http://sap-img.com/abap/what-is-the-difference-between-smod-and-cmod.htm">http://sap-img.com/abap/what-is-the-difference-between-smod-and-cmod.htm</a>
<a href="http://sap-img.com/ab038.htm">http://sap-img.com/ab038.htm</a>
Cheers,
Simha.
Reward if needful...
‎2006 Oct 06 7:39 AM
hi,
these are the userexits available for MB51 transaction :
Exit Name Description
MBCF0002 Customer function exit: Segment text in material doc. item
MBCF0005 Material document item for goods receipt/issue slip
MBCF0006 Customer function for WBS element
MBCF0007 Customer function exit: Updating a reservation
MBCF0009 Filling the storage location field
MBCF0010 Customer exit: Create reservation BAPI_RESERVATION_CREATE1
MBCF0011 Read from RESB and RKPF for print list in MB26
MB_CF001 Customer Function Exit in the Case of Updating a Mat. Doc.
‎2006 Oct 06 7:40 AM
Exits for tcode MB51 are
MBCF0002 Customer function exit: Segment text in material doc. i
MBCF0005 Material document item for goods receipt/issue slip
MBCF0006 Customer function for WBS element
MBCF0007 Customer function exit: Updating a reservation
MBCF0009 Filling the storage location field
MBCF0010 Customer exit: Create reservation BAPI_RESERVATION_CREA
MBCF0011 Read From RESB and RKPF For Print List in MB26
MBCFC003 Maintenance of batch master data for goods movements
MBCFC004 Maintenance of batch specifications for goods movements
Regards
- Gopi
‎2006 Oct 06 7:44 AM
HI,
the above posts will give the Exits for the T.code MB51,
have a look at the below link, this will explain how to add code to the events or create some Z enhancements .. may be helpful to you
http://72.14.235.104/search?q=cache:uJ_stO9vjjMJ:www.ficoexpertonline.com/downloads/User%2520ExitsWP...ABAP%2BCreateaUSEREXIT&hl=en&gl=in&ct=clnk&cd=1
Regards
Sudheer