✒️ABAP La lógica de procesamiento en el PAI y la ejecución de las acciones
ABAP La lógica de procesamiento en el PAI y la ejecución de las acciones
LÓGICA EN PROCESAMIENTO EN PAI; EJECUCIÓN DE LAS ACCIONES.
La clausula ON INPUT después del MODULE en una instrucción :
-FIELD, es ejecutado solamente si el campo en cuestión contiene un valor diferente a inicial.
Ejemplo: Module validar_dni_0100 ON INPUT.
-En la sentencia CHAIN-ENDCHAIN se utiliza la opción CHAIN-INPUT.
Ejemplo: CHAIN.
FIELD campo wa_screen_001-dni.
MODULE validar_campo_0100 CHAIN-INPUT.
ENDCHAIN.
- ON REQUEST, claúsula que después del MODULE en un FIELD, el módulo es ejecutado solamente sI el campo tiene una nueva entrada.
-FIELD es ON REQUEST.
- CHAIN es ON CHAIN-REQUEST.
AT EXIT-COMMAND.
Instrucción utilizada para los casos en que el usuario desea utilizar los botones de la barra "Back", "Cancel", "Exit".
Ejemplo: MODULE modulo_abap AT EXIT-COMMAND.
Si se desea salir de la transacción o pantalla es LEAVE PROGRAM.
Salir de la pantalla en proceso es: LEAVE TO SCREEN 0.
2. Tratamiento de los códigos de función.
Cualquier de las acciones que el usuario ejecuta en el menú, pushbutton, enter, ícono , pasan a la pantalla por el PAI, por el código de función denominado OK_CODE. Para ello se utiliza el módulo USER_COMMAND.
Con el valor de ok_code se programa cada acción. El contenido o valor de OK_CODE no se debe alterar , es por ello que siempre se debe asignar a otra variable de igual definición sy-ucomm.
El OK_code es una variable definida durante la Dynpro que toma la acción recibida en la sy-ucomm (propia del sistema).
El OK_CODE se debe limpiar, de manera que no tome valores arrastrados por otras acciones
3. Secuencias Dinámicas de las pantallas.
En un programa de diálogo o transacción de diálogo podemos controlar la secuencia de ejecución de cada una de las Dynpros.
Existen dos instrucciones que permiten de una Dynpro a otra, debe ser una pantalla del mismo module pool.
SET SCREEN 0100.
La pantalla siguientes es procesada después de procesar la actual o al menos que se termine la ejecución con LEAVE SCREEN y así se ejecuta inmediatamente la otra.
Si se desea terminar el procesamiento de la pantalla actual e ir directamente a la siguiente en una sola instrucción se usa: LEAVE TO SCREEN 0100.
CALL SCREEN, interrumpe el procesamiento de la actual para procesar la pantalla X y las subsecuentes.
EJemplo: CALL SCREEN 0200.
 
 
 
Sobre el autor
Publicación académica de Morela Silva, en su ámbito de estudios para la Carrera Consultor ABAP.
Morela Silva
Profesión: Ingeniero de Sistemas - Venezuela - Legajo: DH52U
✒️Autor de: 53 Publicaciones Académicas
🎓Egresado del módulo:
Presentación:
Consultor sap mm, qm y programador abap.
Certificación Académica de Morela Silva