
Arquitectura de un programa de dialogo
Programa de dialogo o module pool
Es un tipo de programa ABAP que esta compuesto principalmente por una serie de pantallas o dynpros por las cuales el usuario navega mientras interactura con el programa y realiza determinadas acciones.
dentro de cada dynpro se crearán o asociarán diferentes objetos para darles funcionalidades a las mismas. Entre ellos podemos mencionar:
- Menus
- Titulos
- Botones
- Tablas de control
- Textos
- Subscreens
- Campos de entrada y salida de datos
para ello se crean de tipo Module Pool, por medio de la transacción SE80; asignandole una transacción de dialogo para poderlo ejecutar.
Pasos para la creación de un programa de dialogo son:
- Crear el programa ABAP module pool
- Crear en el programa ABAP las pantallas o dynpros que intervenien en la transacción, especificando los datos que se visualizarán en cada dynpro, de que forma se visualizarán y cual es la logíca asociada a cada dynpro.
- Crear el codigo de la transacción en la transacción SE93, asociandolo a nuestro programa
- Definir los menus de las dynpros especificando su contenido (teclas de función, botones, etc).
- Definir el flujo de las dynpros en el module pool.
- Programar en el module pool los modulos correspondientes a cada dynpro, es decir lo que debe hacer cada pantalla, el PBO (antes que se visualice la pantalla) y PAI (Despues de introducido los datos en la pantalla).
Herramientas para la creación de pantallas y menus
ABAP nos proporciona dos herraminetas graficas muy potentes para la creación de pantallas y menus:
- Screen painter: mediante la cual creamos las dynpros y los objetos que la integran.
- Menu painter: mediante el cual creamos los status gui
Logica PBO-PAI de una dynrpro en un programa de dialogo:
La logica de procesamiento de cada dynpro cumple con una metodología muy particular que consiste en la ejecución de dos eventos:
- PBO (Process before output) que es el evento que se ejecuta antes de que se visualice una dynpro. aqui definiremos los menus, los titulos, la inicialización y el contenido de los campos de la pantalla.
- PAI (Process after input), es el evento que se ejecuta luego de introducidos los datos en la dynpro y realizada alguna acción sobre ella, como puede ser presionar un boton, asi como la validación de los datos ingresados.