✒️ABAP Los reportes ALV
ABAP Los reportes ALV
Reportes ALV
Es una herramienta de ABAP que se usa para crear reportes de manera eficaz, rapida y estandarizada
Ventajas
No se pueden ejecutar en batch
Reducen tiempos de desarrollo
Proporcionan a reportes funciones estandar (Exportar a excel, etc)
Proporcionan salida por pantalla entandarizada e uniforme
Se basa en la utilización de funciones
Hay tres tipos
Grillas, listas y jerarquico (Solo es utilizado cuando se requiere encabezado y detalle)
REUSE ALV GRID DISPLAY = función para mostrar reporte tipo grilla
REUSE ALV LIST DISPLAY = función para mostrar reporte tipo lista
REUSE ALV HIERSEQ LIST DISPLAY = función para mostrar reporte tipo jerarquico
Creación de Reportes ALV
*&---------------------------------------------------------------------* *& Report ZREPORTE_ALV *& *&---------------------------------------------------------------------* *& *& *&---------------------------------------------------------------------* REPORT zreporte_alv. TYPE-POOLS: slis. * Tabla de salida del ALV DATA: ti_usuarios TYPE STANDARD TABLE OF ztabla_usuarios, st_usuarios LIKE LINE OF ti_usuarios. * Tabla y estructura del catalogo DATA: ti_catalogo TYPE slis_t_fieldcat_alv, st_catalogo TYPE slis_fieldcat_alv, * Estructura para la configuración de la salida st_layout TYPE slis_layout_alv, * Variable con el nombre del programa v_repid LIKE sy-repid. *----------------------------------------------------------------------* * Pantalla de selección *----------------------------------------------------------------------* SELECTION-SCREEN BEGIN OF BLOCK bloque WITH FRAME TITLE text-002. PARAMETER: p_grilla RADIOBUTTON GROUP bot2, p_lista RADIOBUTTON GROUP bot2. SELECTION-SCREEN END OF BLOCK bloque. *----------------------------------------------------------------------* START-OF-SELECTION. *----------------------------------------------------------------------* * Selección de los datos PERFORM seleccion_datos. * Seteo del Layout PERFORM layout_alv. * Armado automático del catálogo PERFORM armar_catalogo. * Ejecución de la función del ALV PERFORM ejecutar_alv. *&---------------------------------------------------------------------* *& Form armar_CATALOGO *&---------------------------------------------------------------------* FORM armar_catalogo. CLEAR ti_catalogo. REFRESH ti_catalogo. CLEAR st_catalogo. st_catalogo-fieldname = 'DNI'. "Nombre del campo st_catalogo-tabname = 'TI_USUARIOS'. "Nombre Tabla st_catalogo-seltext_s = 'DNI'. "Descripción corta Cabecera st_catalogo-seltext_m = 'DNI'. "Descripción media Cabecera st_catalogo-seltext_l = 'DNI'. "Descripción larga Cabecera st_catalogo-outputlen = 10. "Ancho de la columna st_catalogo-just = 'R'. "Alineación APPEND st_catalogo TO ti_catalogo. CLEAR st_catalogo. st_catalogo-fieldname = 'NOMBRE_APE'. st_catalogo-tabname = 'TI_USUARIOS'. st_catalogo-seltext_s = 'Nombre y Apellido'. st_catalogo-seltext_m = 'Nombre y Apellido'. st_catalogo-seltext_l = 'Nombre y Apellido'. st_catalogo-outputlen = 25. st_catalogo-just = 'R'. APPEND st_catalogo TO ti_catalogo. CLEAR st_catalogo. st_catalogo-fieldname = 'ESTADO_USU'. st_catalogo-tabname = 'TI_USUARIOS'. st_catalogo-seltext_s = 'Estado del Usuario'. st_catalogo-seltext_m = 'Estado del Usuario'. st_catalogo-seltext_l = 'Estado del Usuario'. st_catalogo-outputlen = 20. st_catalogo-just = 'R'. APPEND st_catalogo TO ti_catalogo. CLEAR st_catalogo. st_catalogo-fieldname = 'DIRECCION'. st_catalogo-tabname = 'TI_USUARIOS'. st_catalogo-seltext_s = 'Dirección'. st_catalogo-seltext_m = 'Dirección'. st_catalogo-seltext_l = 'Dirección'. st_catalogo-outputlen = 30. st_catalogo-just = 'R'. APPEND st_catalogo TO ti_catalogo. CLEAR st_catalogo. st_catalogo-fieldname = 'CODIGO_POSTAL'. st_catalogo-tabname = 'TI_USUARIOS'. st_catalogo-seltext_s = 'Código Postal'. st_catalogo-seltext_m = 'Código Postal'. st_catalogo-seltext_l = 'Código Postal'. st_catalogo-outputlen = 15. st_catalogo-just = 'R'. APPEND st_catalogo TO ti_catalogo. CLEAR st_catalogo. st_catalogo-fieldname = 'F_NACIMIENTO'. st_catalogo-tabname = 'TI_USUARIOS'. st_catalogo-seltext_s = 'Fecha Nacimiento'. st_catalogo-seltext_m = 'Fecha Nacimiento'. st_catalogo-seltext_l = 'Fecha Nacimiento'. st_catalogo-outputlen = 15. st_catalogo-just = 'R'. APPEND st_catalogo TO ti_catalogo. CLEAR st_catalogo. st_catalogo-fieldname = 'ESTADO_CIVIL'. st_catalogo-tabname = 'TI_USUARIOS'. st_catalogo-seltext_s = 'Estado Civil'. st_catalogo-seltext_m = 'Estado Civil'. st_catalogo-seltext_l = 'Estado Civil'. st_catalogo-outputlen = 15. st_catalogo-just = 'R'. APPEND st_catalogo TO ti_catalogo. ENDFORM. "armar_catalogo *&---------------------------------------------------------------------* *& Form ejecutar_alv *&---------------------------------------------------------------------* * text *----------------------------------------------------------------------* FORM ejecutar_alv. v_repid = sy-repid. IF p_grilla = 'X'. CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY' EXPORTING i_callback_program = v_repid it_fieldcat = ti_catalogo[] is_layout = st_layout TABLES t_outtab = ti_usuarios. ELSEIF p_lista = 'X'. CALL FUNCTION 'REUSE_ALV_LIST_DISPLAY' EXPORTING i_callback_program = v_repid it_fieldcat = ti_catalogo[] is_layout = st_layout TABLES t_outtab = ti_usuarios. ENDIF. ENDFORM. "ejecutar_alv *&---------------------------------------------------------------------* *& Form SELECCION_DATOS *&---------------------------------------------------------------------* * text *----------------------------------------------------------------------* FORM seleccion_datos . CLEAR ti_usuarios. REFRESH ti_usuarios. SELECT dni nombre_ape estado_usu direccion codigo_postal f_nacimiento estado_civil FROM ztabla_usuarios INTO CORRESPONDING FIELDS OF TABLE ti_usuarios. ENDFORM. " SELECCION_DATOS *&---------------------------------------------------------------------* *& Form LAYOUT_ALV *&---------------------------------------------------------------------* * text *----------------------------------------------------------------------* FORM layout_alv . CLEAR st_layout. st_layout-window_titlebar = text-001. " Titulo Ventana Principal. ENDFORM. " LAYOUT_ALV 
 
 
Sobre el autor
Publicación académica de James Johan Cardona Quinchia, en su ámbito de estudios para la Carrera Consultor ABAP.
James Johan Cardona Quinchia
Profesión: Gerente de Proyectos - Colombia - Legajo: VB54F
✒️Autor de: 41 Publicaciones Académicas
🎓Cursando Actualmente: Consultor ABAP Nivel Avanzado
Certificación Académica de James Cardona