메뉴 건너뛰기

SAP 한국 커뮤니티

T-CODE 별 USER EXTI 찾는 프로그램

sapjoy 2006.12.20 14:54 조회 수 : 5395 추천:44

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.
번호 제목 글쓴이 날짜 조회 수
267 Text OBject 텍스트를 팝업화면으로 띄우기 [3] 양키(이경환) 2015.11.25 5322
266 메세지 박스 사용법 공개. [4] 똥뚜 2014.12.19 5356
265 트리 만들기 [6] 푸른밤 2007.07.31 5357
264 sap help desk 전화 번호 [1] sapjoy 2007.03.11 5383
263 납품 UserExit [2] 한해동안 2009.08.12 5384
262 스크린을 생성하여 팝업창을 띄웠는데요~닫기가 안되요 [3] 흐르는강물처럼 2014.10.06 5386
261 속도개선하기....INDEX를 이렇게도 쓰네용~~ [9] 김창훈 2007.08.14 5387
260 ALPHA Conversion [4] sapjoy 2006.12.18 5388
» T-CODE 별 USER EXTI 찾는 프로그램 [15] sapjoy 2006.12.20 5395
258 REM PROCESS1 밤의화신 2013.09.11 5403
257 영업오더 UserExit [5] 한해동안 2009.08.12 5428
256 간단팁1 : 텍스트 금액에서 천단위 구분자 ',' 삭제(개수 상관없음) [12] 윤훈태 2007.10.15 5436
255 PDF 변환 소스 [5] sapjoy 2006.12.20 5452
254 스마트 폼에서 워드를 기본에디터로 설정하는 방법. [8] 혀나미 2008.01.30 5477
253 SAP Tips. [7] file 박성민 2007.11.22 5484
252 외부 명령어 등록(EXTERNAL COMMAND) [2] sapjoy 2012.11.02 5484
251 System field 정리한 내용이에요 [4] 김창훈 2007.08.21 5491
250 BAPI_SALESDOCU_CREATEFROMDATA1 판매오더를 이렇게 생성해도 되는군요. [4] 노름마치 2007.12.10 5507
249 인터널 테이블의 사이즈의 의미 [4] 양키(이경환) 2014.02.12 5508
248 CALL FUNCTION 'STRING_REPLACE' [1] 꿀단지 2011.10.11 5528