✒️ABAP La arquitectura de un programa de diálogo
ABAP La arquitectura de un programa de diálogo
ARQUITECTURA DE UN PROGRAMA DE DIALOGO.
Es un tipo de programa ABAP que está compuesto principalmente por unaserie de pantallas o dynpros por las cuales el usuario navega mientras interactura con el programa y realiza determinadas acciones.
se le llama tambien Module Pool ya que el programa, como dijimos anteriormente, está compuesto por dynpros (sinomino de pantalla que se identifica por cuatro digitos numericos
Dentro de cada dynpro se crearan o asociaran diferntes objetos para darles funcionalidades a las mismas, entre ellas podemos nombrar los menus, titulos, botones, tablas de control, textos, subscreens, campos de entrada y salida de datos.
Un programa de dialogo se crea exactamente igual que un reporte, con la excepcion que el tipo del programa debe ser Module Pool. en vez de ser un programa ejecutable.
Para trabajar con programas de dialogo debemos utilizar la transaccion SE80 que ejecuta el navegador de objetos ideal para trabajar especialmente con los programas de diálogo.
Para ejecutar un programa de dialogo debemos crear una transaccion del tipo diálogo y asociarla al programa.
Los programas de dialogo no pueden ejecutarse presionando F8 o el boton ejecutar. Debe crearse una transaccion de dialogo y asociarla al programa para poder ejecutarlo.
Los pasos para la creacion de un programa de dialogo son:
1. Crear el programa ABAP de tipo Module Pool.
2. Crear en el programa ABAP las pantallas o dynpros que intervienen en la transaccion, especificando los datos que se visualizaran en cada dynpro, de que forma se visualizarán y cual es la lógica asociada a cada dynpro.
3. Crear el codigo de transaccion en la transaccion SE93 asociado a nuestro programa.
4. Definir los menus de las dynpros especificando su contenido (teclas de funcion, botones, etc.).
5. Programar en el Module Pool los modulos correspondientes a cada dynpro, es decir lo que debe hacer cada pantalla, en el PBO (Process before output, evento que se ejecuta antes de la visualizacion en pantalla de una dynpro) y en el PAI (Process after Input, evento que se ejecuta luego de introducidos los datos en pantalla y realiza alguna accion sobre ella como por ejemplo presionar un boton.
Hay dos herramientas para crear pantallas y menus.
SCREEN PAINTER: Mediante el cual crearemos las dynpros y todos los objetos que componen a estas.
MENU PAINTER: mediante el cual crearemos los STATUS GUI (Es un componente de un programa ABAP que permite poroporcionar al usuari un amplo rango de funcionalidades en la pantalla. Accedemos a traves de la transacion SE41
LOGICA PBO - PAI de una dynpro en un programa de dialogo.
La logia de un procesamiento de cada dynpro cumple con una metodologia muy particular que consisten en la ejecucion de dos eventos PBO (procesos before output) y PAI (procesos after input).
El PBO es el evento que se ejecuta antes de que se visualice una dynpro. Aqui definireos los menus, los titulos, la inicializacion 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 accion sobre ella, como puede ser presionar un botón.
Aqui lo que haremos sera validar los datos ingresados en la pantalla y luego tomar alguna accion con base a nuestras validaciones que puede ser emitir un mensaje de error por pantalla o seguir el flujo del procesamiento hacia otra dynpro.
4. CREACION DE UN MODULE POOL
para crear el programa de dialogo o Module Pool accedemos a la transaccion SE38 ingresamos el nombre del programa, por ejemplo ZPRUEBA_DIALOGO y presionamos el boton crear, tal como lo haciamos al crear un reporte.
Luego ingresamos una descripcion del programa y en vez de seleccionar programa ejecutable, seleccionamos la opcion Module Pool.
NOTA: de ahora en mas se trabajara con la transaccion SE80. todo el proceso anteriormente descrito tambien puede ser realizado mediante la ejecucion de esta transaccion.
 
 
 
Sobre el autor
Publicación académica de Rainer Diaz, en su ámbito de estudios para la Carrera Consultor ABAP.
Rainer Diaz
Profesión: Ingeniero Informático - Colombia - Legajo: UX12J
✒️Autor de: 97 Publicaciones Académicas
🎓Egresado de los módulos:
Certificación Académica de Rainer Diaz