✒️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 de procesamiento en PAI (Ejecución de las acciones)
Ejecución condicionada de módulos:
Si especificamos la cláusula ON INPUT después de MODULE en una instrucción FIELD, el módulo es ejecutado solamente si el campo en cuestión contiene un valor diferente al valor inicial. En la sentencia CHAIN-ENDCHAIN se debe usar la instrucción ON CHAIN-INPUT. Entonces, el módulo es procesado solamente si al menos uno de los campos de la pantalla en la sentencia CHAIN-ENDCHAIN contiene un valor diferente al valor inicial.
Tratamiento de los códigos de función:
Cuando el usuario de una transacción de diálogo pulsa una tecla de función, un punto de menú, un pushbutton, un ícono o simplemente la tecla ENTER, los datos introducidos en la pantalla se pasan a los módulos definidos en el PAI para ser procesados junto a un código de función que indicará que función ha solicitado el usuario. En la lógica de procesamiento de cada dynpro, tendremos que realizar el tratamiento del OK_CODE. Para ello, utilizaremos el módulo USER_COMMAND que deberá ser el último del evento PAI, es decir que se ejecutará una vez que todos los datos de entrada han sido validados correctamente.
Nota: La diferencia entre la variable del sistema SY_UCOMM y la variable OK_CODE en un programa de dialogo, el SY_UCOMM se utiliza principalmente en los menú y contiene la última acción ejecutada por un usuario, la variable OK_CODE es una variable que se declara en los programas ABAP que es del tipo SY_UCOMM y se utiliza generalmente en las pantallas.
Secuencia dinámica de las pantallas:
En un programa de diálogo o también llamado transacción de diálogo podemos controlar la secuencia de ejecución de cada una de las dynpros que componen a la transacción. Existen dos instrucciones que nos permitirán pasar a otra dynpro:
1. SET SCREEN reescribe temporalmente la siguiente pantalla a procesar. La pantalla siguiente debe ser una pantalla del mismo Module Pool, poe ejemplo: SET SCREEN 0200.
Nota: La instrucción LEAVE SCREEN ejecuta la pantalla siguiente en forma inmediata y la sentencia LEAVE TO SCREEN permite terminar el procesamiento de la pantalla actual e ir directamente a la pantalla siguiente en una sola instrucción, por ejemplo: LEAVE TO SCREEN 0200.
2. CALL SCREEN interrumpe el procesamiento de la pantalla actual para procesar la pantalla X y las pantallas subsecuentes. La pantalla llamada con esta instrucción deberá ser una pantalla del mismo Module Pool.
Nota: Cualquiera de las instrucciones: SET SCREEN 0, LEAVE SCREEN, LEAVE TO SCREEN 0, regresa el control al lugar donde fue ejecutada la instrucción CALL SCREEN. Si se usa cualquiera de estas instrucciones cuando no se cedió el control a otra dynpro del programa, entonces el programa termina.
p { margin-bottom: 0.25cm; direction: ltr; color: #000000; line-height: 115%; orphans: 2; widows: 2 } p.western { font-family: "Liberation Serif", "Times New Roman", serif; so-language: es-ES } p.cjk { font-family: "Noto Serif CJK SC"; so-language: zh-CN } p.ctl { font-family: "Lohit Devanagari"; so-language: hi-IN } a:link { so-language: zxx }
 
 
 
Sobre el autor
Publicación académica de Jos? Valent?n L?pez Montilla, en su ámbito de estudios para la Carrera Consultor ABAP.
Jos? Valent?n L?pez Montilla
Profesión: Ingeniero de Sistemas - Venezuela - Legajo: GT35M
✒️Autor de: 134 Publicaciones Académicas
🎓Egresado de los módulos:
Disponibilidad Laboral: FullTime
Presentación:
Ingeniero de sistemas y magister scientiarum en ingenier?a de software, con m?s de 30 a?os de experiencia en el ?rea de tecnolog?a de informaci?n, objetivo principal consultor sap abap
Certificación Académica de Jos? L?pez