✒️ABAP / La arquitectura de un programa de diálogo Por Roberto Fluder Ahumada
ABAP La arquitectura de un programa de diálogo

- Es un tipo de programa ABAP que se compone principalmente de una serie de pantallas o dynpros. Los términos "dynpros" y "pantallas" son sinónimos en SAP.
- El usuario interactúa con estas pantallas para navegar por el programa y realizar acciones que afectan las tablas de la base de datos de SAP.
- Se crea con el tipo "Module Pool", a diferencia de un reporte que es de tipo "Programa Ejecutable".
- Los programas de diálogo no pueden ejecutarse directamente (por ejemplo, presionando F8 o el botón de ejecutar). Requieren la creación de una transacción de diálogo asociada, que se crea usando la transacción estándar SE93.
- Se le denomina "Module Pool" porque el programa está compuesto por módulos.
- Se comienza creando el programa ABAP de tipo Module Pool.
- Luego, se diseñan las pantallas (dynpros), definiendo datos, su visualización y lógica.
- Se crea la transacción asociada al programa utilizando la transacción estándar SE93.
- Se definen los menús de las dynpros, incluyendo teclas de función y botones.
- Se establece el flujo de navegación entre las distintas dynpros del Module Pool.
- Finalmente, se programan los módulos en el PBO y PAI de cada dynpro para su lógica de procesamiento.
- Para trabajar con programas de diálogo, se utiliza la transacción estándar SE80, conocida como el "Navegador de Objetos". A diferencia del Editor ABAP (SE38), la SE80 permite ver en detalle todos los componentes que forman parte del programa de diálogo.
- Desde la transacción SE80, se accede a dos potentes herramientas gráficas:
- Screen Painter: Se usa para crear las dynpros y todos los elementos u objetos que las componen.
- Menu Painter: Se usa para crear los Status GUI. Un Status GUI es un componente independiente de un programa ABAP que proporciona al usuario un amplio rango de funciones en la pantalla. Está compuesto por barras de menú, barras de herramientas estándar, barras de herramientas de aplicaciones y la configuración de las teclas de función.
- La lógica de procesamiento de cada dynpro en un programa de diálogo se basa en la ejecución de dos eventos principales:
- PBO (Process Before Output - Procesamiento Antes de la Salida por pantalla): Este evento se ejecuta antes de que la dynpro se visualice. En el PBO se definen los menús y títulos de la dynpro (usando SET PF-STATUS y SET TITLEBAR), se modifican los atributos de los campos de la dynpro (a través de la estructura SCREEN), y se inicializan o cargan campos con valores. Los módulos que se crean dentro del PBO de una dynpro terminan con la palabra OUTPUT en su definición (ej., MODULE status_0100 OUTPUT).
- PAI (Process After Input - Procesamiento Después de la Entrada por pantalla): Este evento se ejecuta después de que el usuario introduce datos en la dynpro o realiza una acción sobre ella (como hacer clic en un botón). La función principal del PAI es validar los datos ingresados en la pantalla y luego ejecutar alguna acción basada en esas validaciones, como emitir un mensaje o cambiar el flujo de procesamiento. Los módulos que se crean dentro del PAI de una dynpro terminan con la palabra INPUT en su definición (ej., MODULE user_command_0100 INPUT).
 
 
 
Sobre el autor
Publicación académica de Roberto Fluder Ahumada, en su ámbito de estudios para la Carrera Consultor ABAP Nivel Avanzado.
Roberto Fluder Ahumada
Profesión: Analista de Sistemas - Chile - Legajo: TD38U
✒️Autor de: 59 Publicaciones Académicas
🎓Egresado del módulo:
Certificación Académica de Roberto Fluder






Disponibilidad Laboral: FullTime


















