✒️ABAP La lógica de procesamiento en el PBO
ABAP La lógica de procesamiento en el PBO
1. CREACIÓN de MÓDULOS
Para llamar a un módulo usaremos la sentencia MODULE seguida del nombre del módulo. Ej. MODULE cargar_campos_0100. Si creamos un módulo en el PBO, el código empezará con la sentencia MODULE nombre OUTPUT. En el PAI, empezaría por MODULE nombre INPUT.
2. CÓDIGO ABAP en el PBO de una DYNPRO
Usaremos el evento PBO para seleccionar todos los datos y realizar las configuraciones que queremos se lleven a cabo cuando se visualice la pantalla. Ello puede incluir:
- Ajustar el Status GUI y los Títulos de la dynpro
- Modificar los atributos de los campos de la dynpro
- Inicializar o cargar datos en los campos de la pantalla
3. AJUSTE del STATUS GUI y de los TÍTULOS
En el PBO definiremos cuál es el Status GUI y los Títulos que se utilizarán en la Dynpro. Para ello, creamos en el PBO un MODULE status_xxxx (donde xxxx es el nº de dynpro). Al hacer doble click el sistema propone crear el módulo. En la ventana de diálogo, eligiremos crear un include para el código PBO (NombrePrograma_PBO).
Descomentamos las 2 sentencias previamente comentadas:
- SET PF-STATUS '0100' . Para configurar el Status Gui. Si se desean excluir botones del Status Gui, los añadimos a una tabla interna (ti_botones) del tipo SLIS_T_EXTAB y después hacemos un SET PF-STATUS '0100' EXCLUDING ti_botones.
- SET TITLEBAR '0100' . Para configurar el Título. Se puede armar un título con variables (hasta un máximo de 9 variables) con la sentencia SET TITLEBAR WITH. En tiempo de ejecución el título se guarda en la variable del sistema SY-TITLE
4. MODIFICACIÓN de los ATRIBUTOS de los CAMPOS de la PANTALLA
Los elementos de una dynpro se almacenan en la estructura SCREEN (palabra reservada en ABAP). La estructura SCREEN se inicializa con los valores y atributos definidos en el Screen Painter cada vez que se ejecuta el módulo PBO.
Activaremos o desactivaremos los atributos de los campos de la estructura SCREEN asignado valores 0 ó 1. Para guardar los cambios realizados usaremos la sentencia MODIFY SCREEN. Hacemos un bucle sobre Screen y si el nombre es el del campo, modificamos la propiedad (a 0 ó a 1) y ejecutamos Modify Screen. Dentro del PBO (MODULE OUTPUT):
LOOP AT SCREEN.
IF screen-name = 'WA_SCREEN_0100-DNI'.
screen-input = 0.
MODIFY SCREEN.
ENDIF.
ENDLOOP.
Otros: screen-invisible, screen-required, screen-intensified (Valor 1: True)
5. CARGAR CAMPOS de una DYNPRO
Para cargar un campo, estructura o tabla interna con datos y mostrarlos en una dynpro basta con asignar los datos a los campos de la dynpro en el PBO.
 
 
 
Sobre el autor
Publicación académica de David Campillo Martinez, en su ámbito de estudios para la Carrera Consultor ABAP.
David Campillo Martinez
Profesión: Administrador de Sistemas - España - Legajo: PC32Z
✒️Autor de: 56 Publicaciones Académicas
🎓Egresado del módulo:
Certificación Académica de David Campillo