✒️ABAP La búsqueda de Exits en transacciones
ABAP La búsqueda de Exits en transacciones
BUSQUEDA DE EXITS EN TRANSACCIONES
Para poder hacerlo, utilizaremos el programa ZBUSCAR_EXITS, el cual nos permitirá buscar Ampliaciones dentro de las Transacciones Estándares de SAP.
Ejecutándolo, nos aparece una ventana de diálogo donde buscaremos alguna transacción para analizarla.
En la siguiente pantalla nos aparecen las Ampliaciones asociadas a la transacción.
Haciendo doble click en la Ampliación, nos aparecerá la pantalla de selección de la Trx SMOD.
Presionando el botón Visualizar, veremos la Configuración de la Ampliación
Presionando el botón Componentes, visualizaremos los Objetos que la componen
Haciendo doble click en el Nombre del Módulo, podremos ver el código ABAP y dentro de éste hay unINCLUDE Z.
Haciendo doble click en el Nombre del INCLUDE nos aparecerá un código ABAP del Tipo Z, es decirNO ESTÁNDAR.
*&---------------------------------------------------------------------* *& Report ZBUSCAR_EXITS *& *&---------------------------------------------------------------------* *& *& *&---------------------------------------------------------------------* REPORT zbuscar_exits NO STANDARD PAGE HEADING. ************************************************************************ * Encontrando los Exits de una transacción SAP * * * * Ingresar la transacción en donde se están buscando los Exit y se * * mostrará una lista de todos los Exits existentes para esa * * transacción. * * Haciendo doble click en el Exit podremos verlo en la transacción SMOD* ************************************************************************ TABLES : tstc, tadir, modsapt, modact, trdir, tfdir, enlfdir,tstct. DATA : jtab LIKE tadir OCCURS 0 WITH HEADER LINE, field1(30), 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
 
 
 
Sobre el autor
Publicación académica de Oscar Guillermo Rodriguez Villate, en su ámbito de estudios para la Carrera Consultor ABAP.
Oscar Guillermo Rodriguez Villate
Profesión: Ingeniero de Sistemas - Colombia - Legajo: WM49P
✒️Autor de: 103 Publicaciones Académicas
🎓Egresado de los módulos:
Disponibilidad Laboral: FullTime
Certificación Académica de Oscar Rodriguez