
Logica de procesamiento en PBO
Creación de modulos
En el flujo de la logica de una dynpro utilizaremos modulos para realizar el procesamiento. De aqui viene el hecho que a los programas de dialogose los denomine Module Pool.
- Si creamos un modulo en PBO, el codigo del mismo empezará con la sentencia MODULE OUTPUT.
- Si creamos un modulo en PAI, el codigo del mismo empezará con la sentencia MODULE_INPUT.
Codigo ABAP en el PBO de una dynpro
Utilizaremos el evento PBO para seleccionar todos los datos y realizar las configuraciones que queremos que tomen efecto al momento en que se visualice en pantalla. Esto puede incluir entre otras cosas cualquiera de las siguientes acciones:
- Setear el status GUI y los titulos de la dynpro: En el PBO es donde definiremos cual es el status GUI y los titulos que se utilizará en la dynpro.
- Modificar los atributos de los campos de la dynpro
- Inicializar o cargar campos de la pantalla con determinados valores.
Es ampliamente recomendable crear un include para almacenar todos los modulos y subrutinas que utilizaremos en la logicaa de procesamiento del PBO.
Este mismo razonamiento aplica pra el PAI y todas las declaraciones de datos que utilicemos en un programa de dialogo.
- SET PF-STATUS para setear el status GUI
- SET TITLEBAR para setear el titulo correspondientes a la dynpro.
Si deseamos mostrar un boton, tendriamos que agregar los codigos de los botones que no deseamos mostrar a una tabla interna de tipo SLIS_T_EXTAB y luego al momento de ejecutar la sentencia SET PF-STATUS.
Recordando que para utilizar las estructuras SLIS tendremos que agregar el TYPE-POOLS SLIS.
Modificación de los atributos de los campos de la pantalla
Los elemento que componen a una dynpro estan almacenados en la estructura SCREEN. La palabra SCREEN es una palabra reservada en ABAP.
La estructura de SCREEN es la siguiente:
- SCREEN-NAME: Nombre del campo
- SCREEN-GROUP1,2,3,4: Grupo de modificación 1, 2, 3, 4
- SCREEN-REQUIRED: Campo obligatorio
- SCREEN-INPUT: Campo de entrada
- SCREEN-OUTPUT: Campo de salida
- SCREEN-INTENSIFIED: Campo intensificado
- SCREEN-INVISIBLE: Campo visible o no visible
- SCREEN-LENGHT: Longitud del campo
- SCREEN-ACTIVE: Campo activo
- SCREEN-DISPLAY_3D: Campo en 3D
- SCREEN-VALUE_HELP: Campo con ayuda de busqueda
- SCREEN-REQUEST: Campo reservado para uso interno del sistema
Activaremos o desactivaremos los atributos de los campos de estructura SCREEN asignado valores 0 o 1. para almacenar los campos realiados a los atributos utilizaremos la sentencia MODIFY SCREEN.
Cargar campos de una dynpro.
Para cargar un campo, estructura o tabla interna con datos y luego mostrar dichos datos en una dynpro, simplemente tendremos que asignar los datos a los campos de la dynpro en el PBO para que luego los mismos se vean reflejados en la pantalla.