✒️ABAP El ALV Grid Control
ABAP El ALV Grid Control
Lección 8: ALV grid control
Introducción al ALV grid control: El sistema SAP permite crear controles Z utilizando objetos ABAP. Uno de los controles es el ALV GRID CONTROL, con el que se podrá crear reportes ALV utilizando objetos. Con este control, se tendrán disponibles todas las funciones estándar de la barra de menús y también se podrá configurar todas las propiedades del ALV para adaptarlo a las necesidades del usuario. Para crear el ALV, se utilizará un contenedor. Este objeto puede contener otros controles a parte del ALV GRID CONTROL, como Tree Control, SAP Picture Control, SAP Splitter Control, etc. El contenedor proporciona un área física para la visualización de los objetos. Todos los controles existen dentro de un contenedor. Se utilizarán dos objetos para administrar los controles Z y el ALV GRID CONTROL. Son las clases “CL_GUI_CUSTOM_CONTAINER” y “CL_GUI_ALV_GRID”. Se pueden ver todos los atributos, métodos y demás configuraciones de los objetos a través del "Generador de clases" en la transacción SE24.
Pasos para la creación del AVL grid control:
- Se creará el reporte “ZPRUEBA_ALV_GRID_OBJETOS”, con la declaración de datos.
- En el evento “START-OF-SELECTION”, se realizará la búsqueda de los datos en la tabla de usuarios. En el evento “END-OF-SELECTION”, se llamará a la dynpro 0100 que es la que almacenará el ALV.
- Se creará la dynpro 0100 y el status GUI 0100 con los botones de navegación estándar. Se asignará el OK_CODE a la dynpro.
- Utilizando el Screen Painter, se creará un Custom Control que servirá de contenedor del ALV.
- Luego en la lista de elementos de la dynpro, se asignará el nombre CONTENEDOR al Custom Control.
- En la lógica de procesamiento de la dynpro, se crearán los módulos.
- En el módulo CREAR_OBJETOS_0100, se crearán los objetos O_CONTENEDOR y O_GRILLA.
- Se utiliza el método “SET_TABLE_FOR_FIRST_DISPLAY” para visualizar el ALV por primera vez. Luego, si se realiza algún cambio, se utilizará el método “REFRESH_TABLE_DISPLAY”. Antes de mostrar el ALV, se debe completar el catálogo.
- Por último, en el módulo “SALIR_0100”, se liberan los objetos O_CONTENEDOR y O_GRILLA, para volver a la pantalla inicial.
- Se ejecuta el reporte.
NOTA: En el reporte se pueden querer excluir botones estándar que no son utiles, para ello se debe completar una tabla interna del tipo UI_FUNCTIONS y pasar esta tabla interna en el parámetro IT_TOOLBAR_EXCLUDING correspondiente al método SET_TABLE_FOR_FIRST_DISPLAY. Los códigos de función de los botones que se desean quitar de la barra, se pueden obtener inspeccionando las constantes de la clase estándar CL_GUI_ALV_GRID en la transacción SE24, para ocultar la barra de herramientas entera se puede asignar 'X' al campo NOW_TOOLBAR del Layout.
NOTA: Cuando se trabaja con el control ALV Grid Control puede suceder que, sea conveniente crear una pantalla de selección tal como la que se crea en los reportes clásicos y luego en base a parámetros introducidos en pantalla por el usuario se llame mediante la sentencia CALL SCREEN a diferentes Dynpros, el programa que se está creando sería un híbrido entre un reporte clásico y un programa de dialogo, si se está en dicha situación y se realiza un CALL SCREEN a la Dynpro 0100 y se desea que al presionar el botón BACK el programa regrese a la pantalla de selección entonces dentro del código correspondiente al botón BACK se debe ejecutar la sentencia LEAVE TO SCREEN 0 en lugar de LEAVE PROGRAM.
 
 
 
Favorito:
Está publicación ha sido agregada a sus favoritos por: Francisco Ortega Aguilar
Sobre el autor
Publicación académica de Felipe Roca Molina, en su ámbito de estudios para la Carrera Consultor ABAP.
Felipe Roca Molina
Profesión: Informático - España - Legajo: LD31G
✒️Autor de: 120 Publicaciones Académicas
🎓Egresado de los módulos: