SAP ABAP - Find User Exit of Transaction Code With Custom Program

 




REPORT zfindexits.

TABLES tstctadirmodsaptmodacttrdirtfdirenlfdirtstct.
DATA jtab LIKE tadir OCCURS WITH HEADER LINE.
DATA field1(30).
DATA v_devclass LIKE tadir-devclass.

PARAMETERS p_tcode LIKE tstc-tcode OBLIGATORY.

START-OF-SELECTION.

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(20p_tcode45(50tstct-ttext.
  SKIP.

  IF NOT jtab[] IS INITIAL.

    WRITE:/(95sy-uline.
    FORMAT COLOR COL_HEADING INTENSIFIED ON.
    WRITE:/1 sy-vline,
    'Exit Name',
    21 sy-vline ,
    22 'Description',
    95 sy-vline.
    WRITE:/(95sy-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,
      jtab-obj_name HOTSPOT ON,
      21 sy-vline ,
      22 modsapt-modtext,
      95 sy-vline.
    ENDLOOP.

    WRITE:/(95sy-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(4EQ 'JTAB'.
  SET PARAMETER ID 'MON' FIELD sy-lisel+1(10).
  CALL TRANSACTION 'SMOD' AND SKIP FIRST SCREEN.

Comments

Popular posts from this blog

IT Asset Management Dengan PHP MySQL

PHP MySql CRUD Dengan Konsep MVC

Cara Sederhana Multi Insert Data Dengan PHP - MySQL