✒️ABAP / Los reportes ALV Por Gabriel Luces González
ABAP Los reportes ALV

El ALV (ABAP List Viewer) es una herramienta exclusiva de ABAP diseñada para la creación de reports de manera eficaz, rápida y estandarizada.
1. Ventajas Clave del ALVLas principales ventajas de utilizar reports ALV son:
- Estandarización y Uniformidad: Proporcionan una salida en pantalla estandarizada y uniforme.
- Funcionalidades Estándar Integradas: Ofrecen muchas funcionalidades estándar sin necesidad de codificación manual. Entre ellas se encuentran opciones para:
- Clasificación (ascendente y descendente).
- Aplicar filtros y obtener totales.
- Ordenar u ocultar columnas.
- Exportar resultados a Microsoft Excel, archivos locales (.TXT, .XLS), archivos CSV, o HTML.
- Enviar el report por correo electrónico como anexo (funcionalidad de destinatario de mail).
- Visualizar detalles del registro seleccionado.
- Visualizar el report en formato ALV Lista (presentación preliminar).
- Simplificación del Desarrollo: Simplifican el desarrollo de reports, lo que reduce los tiempos de programación. Los desarrolladores solo necesitan preparar los datos comerciales, y el ALV se encarga de la presentación.
A lo largo de la historia de los reports en ABAP, el framework ALV ha evolucionado a partir de la limitativa "Lista ABAP" (creada con la sentencia WRITE). Los tipos de ALV más comunes son:
| ALV Lista | Presentación de datos con columnas bien alineadas y funciones estándar (clasificación, filtrado). | REUSE_ALV_LIST_DISPLAY. | Reportes generales. |
| ALV Grilla | Presenta los datos en un formato de cuadrícula similar a Microsoft Excel. | REUSE_ALV_GRID_DISPLAY. | Reportes generales; permite agrupación, logos y encabezados. |
| ALV Jerárquico | Utilizado específicamente para mostrar datos de cabecera y de detalle (ej. facturas y sus detalles, o aerolíneas y vuelos). Requiere un campo clave común entre las tablas de cabecera y detalle. | REUSE_ALV_HIERSEQ_LIST_DISPLAY. | Datos estructurados en dos niveles. |
Evolución del Framework:
- ALV Lista y Grilla (Módulos de Función): Las primeras implementaciones del ALV Grilla se hicieron usando módulos de funciones de SAP que comienzan con REUSE_ALV.
- ALV Orientado a Objetos (Clases CL_GUI_ALV): Introducido a partir de SAP ERP 4.6C, utiliza clases de objetos que empiezan con CL_GUI_ALV. Permite vincular un objeto ALV a un contenedor personalizado en una pantalla, haciendo posible mostrar varios reports ALV en la misma pantalla.
- Framework SALV: La implementación actual, disponible desde SAP NetWeaver 7.0, utiliza clases que comienzan con CL_SALV y soporta formatos de tabla, árbol y lista secuencial jerárquica.
- ALV con IDA: Una variante más reciente del framework SALV (SAP List Viewer with Integrated Data Access) que aprovecha la base de datos en memoria SAP HANA, usando la clase CL_SALV_TABLE_IDA.
La creación de un report ALV usando módulos de funciones (como REUSE_ALV_GRID_DISPLAY) típicamente involucra los siguientes pasos:
- Declaraciones: Declarar tipos, estructuras y tablas internas específicas del ALV, incluyendo el type pool SLIS. Se necesitan estructuras para el catálogo (SLIS_FIELDCAT_ALV) y para la configuración del layout (SLIS_LAYOUT_ALV).
- Selección de Datos: Cargar la tabla interna de salida con los datos a mostrar.
- Armado del Catálogo: Definir los campos (columnas) del report. Esto se puede hacer manualmente (ingresando campo por campo) o automáticamente usando el módulo de funciones REUSE_ALV_FIELDCATALOG_MERGE.
- La creación automática requiere declarar la tabla interna de datos usando la sentencia OCCURS y LIKE referenciando campos de una tabla de base de datos existente.
- También es necesario restringir el ancho del editor ABAP a 72 caracteres para evitar errores de tiempo de ejecución (dump).
- Configuración del Layout: Configurar aspectos de la salida, como el título del reporte (wa_layout-window_titlebar).
- Agrupamiento (Sorting): Es posible agrupar registros utilizando una tabla interna (TI_SORT) del tipo SLIS_T_SORTINFO_ALV y completando el parámetro IT_SORT en la llamada al módulo de funciones (principalmente aplicable al ALV Grilla).
- Encabezados y Logos: En el ALV Grilla, se pueden añadir logos y encabezados, declarando las estructuras SLIS_T_LISTHEADER y SLIS_LISTHEADER y llamando al módulo REUSE_ALV_COMMENTARY_WRITE dentro de una subrutina referenciada por el parámetro I_CALLBACK_TOP_OF_PAGE.
- Exclusión de Funcionalidades: Se pueden excluir funcionalidades estándar de la barra de herramientas declarando una tabla interna de exclusiones (SLIS_T_EXTAB) y pasándola a través del parámetro IT_EXCLUDING del módulo de funciones.
- Ejecución: Llamar al módulo de funciones correspondiente (REUSE_ALV_GRID_DISPLAY o REUSE_ALV_LIST_DISPLAY), exportando el catálogo y el layout, y pasando la tabla interna de datos en la cláusula TABLES.
 
 
 
Sobre el autor
Publicación académica de Gabriel José Luces González, en su ámbito de estudios para la Carrera Consultor ABAP Nivel Inicial.
Gabriel José Luces González
Profesión: Consultor Sap Pm - Chile - Legajo: LA36W
✒️Autor de: 214 Publicaciones Académicas
🎓Cursando Actualmente: Carrera Consultor ABAP Nivel Avanzado
🎓Egresado de los módulos:
- Carrera Consultor ABAP Nivel Inicial
- Carrera Consultor SAP FI Nivel Inicial
- Carrera Consultor SAP MM Nivel Inicial
Presentación:
Objetivo principal, adquirir todos los conococimiento relacionado al modulo de mm que me permita complementar mis conocimientos en el mundo sap
Certificación Académica de Gabriel Luces






Disponibilidad Laboral: FullTime


















