✒️ABAP La arquitectura de un programa de diálogo
ABAP La arquitectura de un programa de diálogo
Lección: Arquitectura de un Programa de diálogo
1) Qué es un Programa de diálogo o Module Pool?
Programa de diálogo: es un tipo de programa ABAP que está 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
Se lo llama también Module Pool ya que el programa, está compuesto por dynpros y la lógica de cada dynpro está especificada en distintos módulos
Dentro de cada dynpro se crearán o asociarán diferentes objetos para darles funcionalidades a las mismas. Entre ellos podemos nombrar:
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 con programas de diálogo debemos utilizar la transacción SE80, de modo que desde allí veremos en detalle todos los componentes de un programa de diálogo
Transacción SE80; utilizaremos la transacción estándar SE80 " Navegador de objetos" para trabajar especialmente con los programas de diálogo
Para ejecutar un programa de diálogo debemos crear una transacción del tipo de 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
Los pasos para la creación de un Programa de diálogo son:
Crear el programa ABAP Module Pool
Çrear 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 transacción SE93 asociado a nuestro 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
2) Herramientas para la creación de pantallas y menús
ABAP nos proporciona dos herramientas gráficas muy potentes para la creación de pantallas y menús
Ellas son:
SCREEN PAINTER: mediante el cual crearemos las dynpros y todos los objetos que componen a estas
MENÚ PAINTER: mediante el cual crearemos los STATUS GUI
3) Lógica PBO-PAI de una dynpro en un programa de diálogo
La lógica 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)
PAI (Process After Input)
El PBO es el evento que se ejecuta antes de que se visualice una dynpro. Aqui definiremos los menús, los títulos, la inicialización y el contenido de los campos de la pantalla, o sea que objetos mostraremos y como los mostraremos en la dynpro.
El PAI 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 botón
Aquí lo que haremos será validar los datos ingresados en la pantalla y luego tomar alguna acción en la base a nuestras validaciones que puede ser emitir un mensaje de error por pantalla o seguir el flujo del procesamiento hacia otra dynpro
4) Creación de un Module Pool
Para crear el programa de diálogo o Module Pool accedemos a la transacción SE38, ingresamos el nombre del programa, ej ZPRUEBA_DIALOGO y presionamos el botón Crear, tal como hacíamos hasta ahora con los reportes
Luego ingresamos una descripción para el programa y seleccionamos la opción Module Pool en el tipo de programa
Finalmente guardamos la configuración del programa y asignamos una clase de desarrollo al mismo
De ahora en más trabajaremos con la transacción SE80. Todo el proceso anteriormente descrito también puede ser realizado mediante esta transacción
 
 
 
Sobre el autor
Publicación académica de Aida Cortina Fernandez, en su ámbito de estudios para la Carrera Consultor ABAP.
Aida Cortina Fernandez
Profesión: Consultor Junior - Espa?a - Legajo: MK87X
✒️Autor de: 74 Publicaciones Académicas
🎓Cursando Actualmente: Consultor ABAP Nivel Avanzado
🎓Egresado del módulo:
Certificación Académica de Aida Cortina