Las características deseadas comunes de cualquier informe son «alineación de columnas», ordenamiento, filtrado, subtotales, totales, etc. Para implementar estos desde cero, se debe poner mucho esfuerzo en codificación. Para evitar eso, podemos usar un concepto llamado Visualizador de Listas ABAP (ALV). Cada uno de estos informes proporciona módulos de función que ayudan a producir la salida deseada sin mucho esfuerzo. Veamos en detalle –
Los módulos de función importantes en estos informes son –
REUSE_ALV_FIELDCATALOG_MERGE
Este módulo de función se utiliza para poblar un catálogo de campos que es esencial para mostrar los datos en ALV. Si los datos de salida provienen de una sola tabla de diccionario y se seleccionan todas las columnas, entonces no es necesario crear explícitamente el catálogo de campos. Es suficiente mencionar el nombre de la tabla como un parámetro (I_structure_name) en el REUSE_ALV_LIST_DISPLAY. Pero en otros casos, necesitamos crearlo.
Nota: El catálogo de campos también se puede llenar manualmente llenando todos los detalles necesarios en la tabla interna.
Parámetros importantes son:
REUSE_ALV_LIST_DISPLAY
Este es el módulo de función que imprime los datos. Los parámetros importantes son:
REUSE_ALV_EVENTS_GET:
Devuelve una tabla de eventos posibles para un tipo de lista
REUSE_ALV_GRID_DISPLAY
Una nueva función de la versión ABAP4.6, para mostrar los resultados en una cuadrícula en lugar de una vista previa. Parámetros: iguales que reuse_alv_list_display
Nota: La cuadrícula no puede manejar volúmenes altos. Funciones como ordenar, desplazarse hacia abajo consume muchos recursos / tiempo si el volumen de datos a mostrar es alto. No hay una definición clara de tal manera que si la cantidad de datos es X vaya a lista o cuadrícula, pero el desarrollador tiene que tomar una decisión basada en su experiencia. Si no está seguro, entonces la lista es la mejor opción.
REUSE_ALV_COMMENTARY_WRITE
Esto se usa en el evento Top-of-page para imprimir los encabezados y otros comentarios para la lista. Parámetros importantes
Este parece un informe simple pero este informe tiene las características de ordenar y filtrar solamente. Este informe se usa si tiene que mostrar más de un informe en la salida. Técnicamente hablando, si tiene múltiples tablas internas con datos que se van a mostrar como bloques separados, entonces vamos al informe de bloque de ALV. Las funciones importantes utilizadas para crear este informe son:
REUSE_ALV_BLOCK_LIST_INIT
Este módulo de función se utiliza para establecer el estado de la interfaz gráfica de usuario por defecto, etc. Los parámetros son similares a los utilizados en reuse_alv_list_display o reuse_alv_grid_display
REUSE_ALV_BLOCK_LIST_APPEND
Este módulo de función agrega los datos al bloque. Parámetros importantes
REUSE_ALV_BLOCK_LIST_DISPLAY
Este módulo de función muestra la lista con los datos añadidos por la función anterior. Parámetros: Todos los parámetros son opcionales.
La presentación jerárquica se utiliza para mostrar datos que están relacionados. Como detalles de la orden de venta y los detalles del artículo. Aquí los detalles de la orden de venta pueden ser los datos del encabezado mientras que los elementos en la orden de venta pueden ser los datos del artículo. El módulo de función utilizado para esto es REUSE_ALV_HIERSEQ_LIST_DISPLAY
Exportar: I_CALLBACK_PROGRAM I_CALLBACK_PF_STATUS_SET I_CALLBACK_USER_COMMAND IS_LAYOUT It_fieldcat It_events I_tabname_header: Nombre de la tabla interna en el programa que contiene los datos de salida del nivel jerárquico más alto. I_tabname_item: Nombre de la tabla interna en el programa que contiene los datos de salida del nivel jerárquico más bajo. Is_keyinfo: Esta estructura contiene los nombres de campo de la tabla de encabezado y del artículo que vinculan las dos tablas (clave compartida). Tablas t_outtab_header: Tabla de encabezados con datos a imprimir t_outtab_item: Nombre de la tabla interna en el programa que contiene los datos de salida del nivel jerárquico más bajo.
Todas las definiciones de tablas internas, estructuras y constantes se declaran en un tipo-pool llamado SLIS. Esta tabla interna se puede llenar automáticamente utilizando REUSE_ALV_FIELDCATALOG_MERGE’.
Las variantes de visualización se utilizan para establecer las propiedades predeterminadas de una salida alv como criterios de ordenamiento, criterios de filtrado, totalización y subtotalización, etc. Las variantes de visualización pueden ser específicas del usuario y estándar (las variantes estándar pueden ser utilizadas por cualquier usuario)
El tipo de variantes de visualización que se pueden guardar está controlado por el parámetro i_save que se pasa en los módulos de funciones reuse_alv_list_display / reuse_alv_grid_display.
Puede proporcionar una opción en la pantalla de selección para seleccionar qué variante de visualización se va a utilizar
Los módulos de funciones comunes relacionados con la selección / validación de variantes de visualización son Reuse_alv_variant_default_get Reuse_alv_variant_f4 Reuse_alv_variant_existence ¡Eso es todo para la programación ABAP – ALV!
Calle Eloy Gonzalo, 27
Madrid, Madrid.
Código Postal 28010
Paseo de la Reforma 26
Colonia Juárez, Cuauhtémoc
Ciudad de México 06600
Real Cariari
Autopista General Cañas,
San José, SJ 40104
Av. Jorge Basadre 349
San Isidro
Lima, LIM 15073