✒️ABAP Los reportes ALV
ABAP Los reportes ALV
- Reportes ALV: Grillas y Listas
- ¿Qué es un ALV?
ALV (ABAP List Viewer): Herramienta exclusiva de ABAP, utilizada para crear reportes de manera eficaz, rápida y estandarizada.
Ventajas:
- Simplificación del desarrollo de reportes, reduce el tiempo de programación.
- Reportes con mayor funcionalidad estándar.
- Salida por pantalla estandarizada y uniforme.
Reporte ALV utiliza funciones y a cada tipo de ALV le corresponde una función. Los tres tipos más comunes de ALV son:
Grillas: Usa la función REUSE ALV GRID DISPLAY. Este tipo de ALV es utilizado en cualquier reporte.
Listas: Función REUSE ALV LIST DISPLAY. Este tipo de ALV también es usado en cualquier reporte.
Jerárquico: Función REUSE ALV HIERSEQ LIST DISPLAY. Usado únicamente en casos donde se muestran datos de cabecera y de detalle (números e factura y detalles o Aerolíneas y vuelos, etc.).
Este tipo de reportes se ejecutan de manera Online nada más, debido a la interacción que se tiene con el usuario.
- Mi primer reporte ALV
Pasos para crear un reporte ALV:
- Declaraciones de tipos, estructuras y tablas propias:
Declaramos el tipo SLIS, necesario para la utilización de reportes ALV.
TYPE-POOLS: slis.
Declaramos una tabla y una estructura para el catálogo del ALV de tipo SLIS_T_FIELDCAT_ALV y SLIS_FIELDCAT_ALV, otra estructura para la config de salida de tipo SLIS_LAYOUT_ALV y una variable SY-REPID, para almacenar el nombre del programa.
DATA: ti_catalogo TYPE slis_t_fieldcat_alv,
st_catalogo TYPE slis_fieldcat_alv,
st_layout TYPE slis_layout_alv,
v_repid LIKE sy_repid.
- Declaración de la tabla de salida del ALV
DATA: ti_usuarios TYPE STANDARD TABLE OF tabla_usuarios,
st_usuarios LIKE LINE OF ti_usuarios.
- Selección de los datos que se mostrarán en el ALV
SELECT <campos>
FROM <tabla>
INTO CORRESPONDING FIELDS OF TABLE <tabla interna>.
- Armado del catálogo del ALV
Para cada columna de nuestro listado debemos crear una los siguientes campos pertenecientes a la tabla del catálogo:
CLEAR st_ctalogo.
st_catalogo-fieldname = '<nombre del campo>'.
st_catalogo-tabname = '<nombre tabla>'.
st_catalogo-seltext_s = '<descripción corta de la cabecera>'.
st_catalogo-seltext_m = '<descripción media de la cabecera>'.
st_catalogo-outputlen = <ancho de la columna>.
st_catalogo-just = '<alineación>'.
APPEND st_catalogo TO ti_catalogo.
- Configuración de la salida del ALV
Cargamos los valores de la estructura ST_LAYOUT para configurar ciertos aspectos de la salida del ALV.
CLEAR st_layout.
st_layout-zebra = 'X'. ---------> Rayado de líneas
st_layout-window_titlebar = text-001. ---------> Título Ventana Principal
- Ejecución de la función del ALV
Ejecutamos la función que se acoplé según el tipo de reporte que queramos: Grilla, Lista o Jerárquico.
Se debe tener en cuenta que por convicción de ABAP debemos colocar siempre a la derecha de la tabla interna del catalogo una llave abierta y una cerrada, tanto en la función que genera la grilla como la que genera la lista.
Finalmente ejecutamos el reporte.
* Notas:
La principal diferencia entre la grilla y la lista, es la manera en la que se visualizan.
La grilla permite la generación de un encabezado en la parte superior en el cual podemos generar un logo con totales y subtotales, lo cual no es posible en la lista.
La lista genera una lista de visualización la cual es muy similar a la apariencia de un reporte clásico, mientras que la grilla es más bonita visualmente y permite copiar y pegar columnas en donde queramos, algo que no podemos hacer en la lista.
El grilla no se puede ejecutar de fondo, así que si lo ejecutamos de fondo entonces será traducido como un lista.
El grilla consume más memoria en el servidor que la lista.
La lista permite solo la visualización mientras que en la grilla podemos editar los registros o campos si así lo queremos.
 
 
 
Sobre el autor
Publicación académica de Sandra Erika Bernabe Abreu, en su ámbito de estudios para la Carrera Consultor ABAP.
Sandra Erika Bernabe Abreu
Profesión: Ingeniería en Sistemas Computacionales - Mexico - Legajo: EW68S
✒️Autor de: 58 Publicaciones Académicas
🎓Egresado del módulo:
Certificación Académica de Sandra Bernabe