![](/cvo_files/imgs_sap_abap/logos/logo_cvo_academy_it.png)
✒️ABAP La arquitectura de un programa de diálogo
ABAP La arquitectura de un programa de diálogo
![ABAP La arquitectura de un programa de diálogo ABAP La arquitectura de un programa de diálogo](https://www.cvosoft.com/cvo_files/imgs_sap_abap/og-images/300.jpg)
Programa de diálogo o Module Pool
Es un tipo de programa ABAP compuesto principalmente por una serie de pantallas o dynpros por las cuales el usuario navega mientras interactúa con el programa y realiza determinadas acciones.
Dentro de cada dynpro se crean o asocian diferentes objetos para darles funcionalidad a las mismas. Entre ellos:
- Menús
- Títulos
- Botones
- Tablas de control
- Textos
- SubScreens
- Campos de entrada y salida de datos
Un programa de diálogo se crea exactamente igual que un reporte con la excepción que el tipo de programa debe ser Module Pool en vez de Programa Ejecutable.
Para trabajar especificamente con programas de diálogo se utiliza la transacción SE80
Para ejecutar un programa de diálogo se debe crear una transacción del tipo diálogo y asociarla al programa
Los programas de diálogo no pueden ejecutarse presionando F8 o el botón ejecutar. Debe crearse una transacción de diálogo y asociarla al programa para poder ejecutarlo.
Paso para la creación de un programa de diálogo
- Crear el programa ABAP Module Pool
- Crear en el programa ABAP las pantallas o dynpros que intervienen en la transacción, especificando los datos que se visualizarán en cada dynpro, de que forma se visualizarán y cual es la lógica asociada a cada dynpro.
- Crear el código de la transacción en la trx SE93 asociado al programa
- Definir los menús 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 módulos correspondientes a cada dynpro, es decir lo que debe hacer cada pantalla, en el PBO, es decir antes que se visualice la pantalla y en el PAI, es decir después de que se hayan introducido los datos en la pantalla.
Dynpro (Dynamic Program) es una pantalla en SAP
Creación
- Definir caracterízticas básicas o atributos de la pantalla (n° de Dynpro, descrp. breve, tipo, dynpro siguiente...)
- Diseñar formato de pantalla (botones, campos de entrada/salida, Checkboxes, Radiobuttons, textos, etc.)
- Definir atributos de campos o lista de campos (si es de entrada o entrada/salida, formato, longitud, etc.)
- Lógica del flujo de la pantalla, es donde se escribira el código ABAP que dará las funcionalidades a las dynpro
Herramientas para creación de pantallas y menús
ABAP proporciona dos herramientas gráficas muy potentes para la creación de pantallas y menús:
SCREEN PANTER -> Para crear Dynpros y todos los objetos que las componen
MENU PAINTER -> Mediante el cual se crean los STATUS GUI
Menu paniter SE41 -> Editar caracterízticas de los STATUS GUI, títulos, barras de menús con solo introducir el nombre del programa ABAP y nombre del STATUS
Lógica PBO - PAI de una dynpro en un programa de diálogo
La lógica de procesamiento de cada dynpro cumple conm una metodología muy particular que consiste en la ejecución de dos eventos:
PBO -> Process Before Output
Evento que se ejecuta antes de que se visualice una dynpro. Aquí se definen los menús títulos, inicialización y contenido de los campos de la pantalla (que objetos se mostrarán y como se mostrarán en la dynpro)
PAI -> Process After Input
Evento que se ejecuta luego de introducidos los datos en la dynpro y realizada alguna acción sobre ella, como puede ser presionar un botón.
Creación de un Module Pool
Desde la trx SE38 se crea el programa de diálogo o Module Pool -> Ingresar nombre del programa/presionar crear/ingresar descripción/ seleccionar Module Pool en tipo de programa -> asignar tipo de desarrollo.
 
 
 
Sobre el autor
Publicación académica de Ninoska Marquez, en su ámbito de estudios para la Carrera Consultor ABAP.
Ninoska Marquez
Profesión: Ing. de Sistema - Honduras - Legajo: FU90M
✒️Autor de: 99 Publicaciones Académicas
🎓Egresado de los módulos:
Presentación:
Me llamo ninoska marquez tengo 44 anos, tengo varios años de trabajar para una empresa donde me desempeño con el cargo de programador junior, soy perseverante, amable, tranquila
Certificación Académica de Ninoska Marquez