✒️ABAP El ALV Grid Control
ABAP El ALV Grid Control
ALV GRID CONTROL
INTRODUCCION AL ALV GRID CONTROL
Uno de los controles de los que hablamos es el ALV GRID CONTROL con el cual podremos crear reportes ALV utilizando objetos
Con este control tendremos disponibles todas las funciones estándar de la barra de menús y también podremos configurar todas las propiedades del ALV para adaptarlo a nuestras necesidades
Para crear el ALV utilizaremos un Contenedor. Objeto que puede contener otros controles a parte del ALV GRID CONTROL como por ejemplo Tree Control, SAP Picture Control, SAP Splitter Control y más
Clases para administrar los controles Z y el ALV GRID CONTROL:
- CL_GUI_CUSTOM_CONTAINER
- CL_GUI_ALV_GRID
PASOS PARA LA CREACION DEL ALV GRID CONTROL
Creamos el reporte, realizando sus declaraciones.
En el evento STARTOFSELECTION realizaremos la búsqueda de los datos en la tabla ZTABLA_USUARIOS. En el evento ENDOFSELECTION se llamará a la dynpro 0100 que es la que almacenará el ALV
Crearemos la dynpro 0100 y el Status GUI 0100 con los botones de navegación estándar. Asignaremos el OK_CODE a la dynpro
Utilizando el Screen Painter, a través de la transacción SE80, crearemos un Custom Control que servirá de contenedor de nuestro ALV
En la lista, asignaremos el nombre CONTENEDOR al Custom control
Creamos su metodo en la logica de procesamiento
En el módulo CREAR_OBJETOS_0100 crearemos los objetos O_CONTENEDOR y O_GRILLA tal como se muestra.
En nuestro reporte podemos querer excluir algunos delos botones estándar del menú ya que no son útiles para el usuario. Para excluir estos botones estándar deberemos completar una tabla interna del tipo UI_FUNTIONS 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 deseamos quitar de la barra se pueden obtener inspeccionando las constantes de la clase estándar CL_GUI_ALV_GRID en la transacción estándar SE24. Para ocultar la barra de herramientas entera podemos asignar 'X' al campo NO_TOOLBAR del Layout
Utilizamos el método SET_TABLE_FOR_FIRST_DISPLAY para visualizar el ALV por primera vez
Se realiza un cambio al mismo utilizando el metodo REFRESH_TABLE_DISPLAY
Finalmente en el módulo SALIR_0100 liberamos los objetos O_CONTENEDOR y O_GRILLA y volvemos a la pantalla inicial
Ejecutamos el reporte
Cuando trabajamos con el control ALV_GRID_CONTROL nos puede suceder que dado un requerimiento sea conveniente crear una pantalla de selección tal como la que creamos 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 estaríamos creando sería un híbrido entre un reporte clásico y un programa de diálogo. Si nos encontramos en dicha situación y realizamos por ejemplo un call_screen a la dynpro 0100 y deseamos que al presionar el botón back del status en la dynpro 0100 el programa regrese a la pantalla de selección entonces dentro del código correspondiente al botón back deberíamos ejecutar la sentencia LEAVE TO SCREEN 0 en lugar de LEAVE PROGRAM tal como mostramos en la lección ya que de lo contrario estaríamos abandonando el programa sin pasar por la pantalla de selección
 
 
 
Sobre el autor
Publicación académica de Ixhel Magai Lopez Valencia, en su ámbito de estudios para la Carrera Consultor ABAP.
Ixhel Magai Lopez Valencia
Mexico - Legajo: PM62E
✒️Autor de: 134 Publicaciones Académicas
🎓Egresado de los módulos:
- Máster ABAP for HANA
- Máster ABAP Orientado a Objetos
- Carrera Consultor ABAP Nivel Avanzado
- Carrera Consultor ABAP Nivel Inicial
Disponibilidad Laboral: PartTime
Presentación:
Soy ingeniera en telematica, estoy interesada en aprender programacion en sap, solo tengo conocimientos basicos en java
Certificación Académica de Ixhel Lopez