Hey,
tenta colar este código em um novo programa e executá-lo: ele te dirá quase tudo o que você precisa saber:
-
REPORT ZZ_JE_FIND_USER_EXIT NO STANDARD PAGE HEADING.
&----
&----
*& Tabelas
&----
TABLES : tstc, "Códigos de transação SAP
tadir, "Diretório de objetos de repositório
modsapt, "Melhorias SAP - Textos curtos
modact, "Modificações
trdir, "Tabela de sistema TRDIR
tfdir, "Módulo de função
enlfdir, "Atributos adicionais para módulos de função
tstct. "Textos de códigos de transação
&----
*& Variáveis
&----
DATA : jtab LIKE tadir OCCURS 0 WITH HEADER LINE.
DATA : field1(30).
DATA : v_devclass LIKE tadir-devclass.
&----
*& Parâmetros de tela de seleção
&----
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.
&----
*& Início do programa principal
&----
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 = enlfdir-area.
MOVE : tadir-devclass TO v_devclass.
ENDIF.
SELECT * FROM