✒️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
Ejecución condicionada de módulos.
Si se especifica un ON INPUT después de un module en una instrucción FIELD, el modulo es ejecutado si el valor es diferente al valor inicial.
En la sentencia CHAIN ENDCHAIN se debe utilizar la instrucción ON CHAIN-INPUT, el modulo es procesado si al menos uno de los campos de la pantalla de CHAIN ENDCHAIN contiene un valor diferente al valor inicial.
Si se especifica la cláusula ON REQUEST después de MODULE en una instrucción FIELD, el modulo es ejecutado si el campo tiene una nueva entrada.
En la sentencia CHAIN ENDCHAIN se debe utilizar la instrucción ON CHAIN-REQUEST, el modulo es procesado si al menos uno de los campos de la pantalla de CHAIN ENDCHAIN tiene una nueva entrada.
Si se quiere salir de la pantalla sin las validaciones automáticas, se utilizara la cláusula AT-EXIT-COMMAND de la instrucción MODULE, de ahí que se le asigne en el campo de tipo de función el valor E.
Tratamiento de los códigos de Función:
En la transacción de dialogo cuando se pulse una tecla de función, un punto de menú, un pushbuton, un icono o enter los módulos pasaran a los módulos PAI para ser procesado lo requerido.
Para dar el tratamiento del OK_CODE, se utilizara el comando USER_COMMAD (último evento PAI), se ejecutara cuando los datos de entrada han sido validados.
Una vez procesado se borrara el OK_CODE, inicializándolo para la próxima dynpro guardándose en una variable intermedia o inicializándolo directamente.
Secuencia dinámica de las pantallas.
Existen dos instrucciones que permiten pasar de una dynpro a otra dentro del mismo programa.
SET_SCREEN: reescribe temporalmente la siguiente pantalla a procesar, y será procesada cuando termine de procesar la actual o termine la ejecución de la instrucción LEAVE_SCREEN, si se desea terminar la pantalla actual y pasar inmediatamente a la otra se utiliza la transacción LEAVE_TO_SCREEN.
CALL_SCREEN: interrumpe el procesamiento actual para procesar la pantalla X y subsecuentes.
Ya sean las instrucciones SET_SCREEN_0, LEAVE_SCREEN, LEAVE_TO_SCREEN_0, regresa el control al lugar donde fue ejecutada la instrucción CALL_SCREEN, al utilizarlas en modo de no ceder pantalla a otra dynpro entonces el programa termina.
Usando las clausulas STARTING AT y ENDING AT en la instrucción CALL_SCREEN, puede especificar posición y el tamaño de la pantalla a llamar, si aparece incompleta la pantalla, se incluye en la misma una barra de desplazamiento.
 
 
 
Sobre el autor
Publicación académica de David De Jesùs Restrepo Cañas, en su ámbito de estudios para la Carrera Consultor ABAP.
David De Jesùs Restrepo Cañas
Profesión: Ingenieria de Sistemas - Colombia - Legajo: JC61B
✒️Autor de: 146 Publicaciones Académicas
🎓Egresado de los módulos:
- Máster ABAP Orientado a Objetos
- Carrera Consultor ABAP Nivel Avanzado
- Carrera Consultor ABAP Nivel Inicial