✒️ABAP / Los reportes ALV Por Luciano Martinez
ABAP Los reportes ALV

Reportes ALV (ABAP List Viewer)
Es una herramienta de ABAP que se usa para crear reportes de manera eficaz, rapida y estandarizada, sus ventajas son:
- Simplifica el desarrollo de reportes y los tiempos de programacion.
- Porporcionan funcionalidades estandar y funciones integradas para manipular resultados como: clasificacion, obtener totales, aplicar filtros, ordenar por columnas o ocutar columnas, exportar resultados a Excel, a un fichero local, archivos CSV, formato HTML, entre otras.
- Salida de datos por pantalla estandarizada e uniforme.
Hay varias opciones a tener en cuenta a la hora de crear un reporte ALV:
- La lista ABAP: fue la primera herramienta, esta salida se genera usando WRITE para mostrar los datos por pantalla, los campos deben colocarse en posiciones estaticas especificas mientras se procesan en un bucle o un ciclo. Esta presentacion tradiciones basado en mainframe resulta inconveniente a la hora de la realizacion de cambios.
- ALV Lista: implementada en framework, mejoras importantes respecto a la lista abap, las columnas estan alineadas y la barra de herramientas ofrece clasificacion, filtrado y subtotales. Los users pueden elegir que columnas visualizar y que orden, las preferencias se pueden guardar en un diseño que se puede aplicar cuando se ejecute el programa.
- ALV Grilla: formato tabular similar a Excel, sus primeras implementaciones utilizaban modulos de funciones SAP; tambien se incorpora el ALV jerarquico el cual se usa en casos de cabeceras y detalles.
- Primer framework ALV orientado a objetos: clases de objetos en lugar de modulos de funciones, permite que un objeto ALV se vincule a un contenedor personalizado en una pantalla, hace posible presentar varios contenedores ALV en la misma pantalla, utiliza clases de objetos que comienzan con CL_GUI_ALV.
- El framework SALV: la implementacion actual, lo proporcionan clases de objetos con nombres que comienzan con CL_SALV y admite formato de tabla ALV, arbol ALV y lista de secuencia jerarquica.
- ALV con IDA: una variedad mas reciente del SALV, aprovecha la funcionalidad de la base de datos en memoria HANA, usa la clase de objetos CL_SALV_TABLE_IDA.
Creacion de ALV mediante modulos de funciones
Para crear los siguentes tipos de reportes con modulos de funciones:
Grillas ----> modulo REUSE_ALV_GRID_DISPLAY
Listas -----> modulo REUSE_ALV_LIST_DISPLAY
Jerarquico -----> modulo REUSE_ALV_HIERSEQ_LIST_DISPLAY
Para crear un reporte ALV utilizando los modulos de funciones REUSE_ALV:
- Declaramos el grupo de tipos o type-pool SLIS que es necesario para utilizar reportes ALV. Declaramos una tabla interna del tipo SLIS_T_FIELDCAT_ALV y una estructura del tipo SLIS_FIELDCAT_ALV para el catalogo del ALV. Tambien se declaran una estructura para la configuracion de la salida por pantalla o layout del tipo SLIS_LAYOUT_ALV y una variable del tipo SY-REPID que almacenara el nombre del programa.
- Se declara una tabla interna del tipo de una tabla de base de datos que se mostrara en el ALV, tambien una estructura.
- En el evento STAR-OF-SELECTION se definen las subrutinas, una para seleccionar los datos o registros de la tabla de base de datos y que los guardara en la tabla interna del mismo tipo.
- Una subrutina para armar el catalogo del ALV con campos que seran columnas del reporte, se completan cada columna con sus propiedades (nombre campo, nombre tabla, descripcion corta/media/larga de cabecera, ancho de columna, alineacion).
- Otra para configurar los aspectos de la salida o la estructura del layout del ALV.
- Otra subrutina para ejecutar el modulo de funciones correspondiente a uno de grilla o lista (ambos se completan de la misma manera)
 
 
 
Sobre el autor
Publicación académica de Luciano Martinez, en su ámbito de estudios para la Carrera Consultor ABAP Nivel Inicial.
Luciano Martinez
Profesión: Consultor Abap - Argentina - Legajo: LR86R
✒️Autor de: 66 Publicaciones Académicas
🎓Egresado del módulo:
Disponibilidad Laboral: FullTime
Presentación:
Me capacito para desempeñar el rol de un consultor abap, además soy sql developer jr, como ambos lenguajes (sql y abap) se relacionan, hace que mi perfil sea más completo y se complemente.
Certificación Académica de Luciano Martinez
























