✒️ABAP / La arquitectura de un programa de diálogo Por Francisco Compte Sanchez
ABAP La arquitectura de un programa de diálogo

Unidad 2: Programación de Diálogo (Module Pool)
Lección 1: Arquitectura de un Programa de Diálogo.
1.- Que es un Programa de Diálogo o Module Pool?.
Es un programa ABAP que se compone principalmente de una serie de pantallas (dynpros) entre las cuales el usuario navega mientras interactúa con el programa y realiza determinadas acciones.
El nombre de Module Pool se debe a que estos programas se componen de una o varias dynpros y que el código asociado a cada dynpro se especifica en distintos módulos. Cada dynpro puede contener distintos objetos que les dan funcionalidad:
- Menús.
- Títulos
- Botones
- Tablas de control
- Textos
- SubScreens
- Campos de entrada y salida de datos.
Los programas de diálogo se crean igual que cualquier reporte. La diferencia es que el tipo de programa es Module Pool y no Programa ejecutable. Un module pool no puede ejecutarse directamente, debe estar asociado siempre a una transacción.
La creación de un module pool sigue los siguientes pasos:
- Crear el programa ABAP module pool.
- Crear en el programa los dynpros que forman parte de la transacción, Hay que especificar los campos a visualizar en cada dynpro, en que forma se visualizan y cual es la lógica asociada a los mismos.
- Crear una transacción en SE93 y asociarle el programa de module pool creado.
- Definir los menús de los dynpros especificando su contenido (teclas función, botones ...)
- Defunir el flujo de las dynpros en el module pool,
- Programar en módule pool los módulos correspondientes a cada dynpro. Que se debe hacer antes de visualizar la pantalla (PBO) y después de rellenar los datos de la misma (PAI).
La definición de la dynpro se debe hacer lo siguiente:
- Definir características básicas o atributos de la pantalla como número de dynpro, tipo de dynpro o siguiente dynpro en el flujo)..
- Diseñar el formato de la pantalla (campos, check, boxes, radio butons, textos ...)
- Definición de atributos de campos o lista de campo. Definimos para cada campo si es de entrada, salida o entrada/salida, formato, longitud ...
- Escribimos lógica o sea el código asociado a cada pantalla que es el responsable de su funcionalidad.
2.- Herramientas para la creación de pantallas y menús.
- SCREEN PAINTER:
Esta herramienta es la que permite crear los dynpros y los objetos que las componen.
- MENÚ PAINTER. Nos permite la creación de los STATUS GUI. (SE41). Podemos completar su definición con solo informar el nombre del programa module pool y el nombre que daremos al status gui.
3.- Lógica PBO/PAI de una dynpro de un programa de diálogo.
La lógica de una dypro se asocía a dos eventos:
- PBO (Process Before Output).
Este evento se ejecuta antes de visualizarse la dynpro. Se definirán menús, títulos, inicialización y el contenido de campos de pantalla. Básicamente que mostraremos y como en el dynpro.
- PAI (Proces After Input).
Este evento se ejecuta después de introducir los datos en la dynpro y realizar alguna acción. Se validan los datos y se actúa en función de los resultados de la misma.
En una dynpro hay otros eventos ademas de estos dos y se mencionarán mas adelante de esta lección.
 
 
 
Sobre el autor
Publicación académica de Francisco Compte Sanchez, en su ámbito de estudios para la Carrera Consultor ABAP Nivel Avanzado.
Francisco Compte Sanchez
Profesión: Sap Business&integration Architect - España - Legajo: QQ38S
✒️Autor de: 105 Publicaciones Académicas
🎓Egresado de los módulos:
Disponibilidad Laboral: FullTime
Presentación:
Consultor sap mm y sd con algún conocimiento abap a nivel de debug. quiero consolidar conocimientos técnicos para reforzar mi perfil profesional.
Certificación Académica de Francisco Compte
























