![](/cvo_files/imgs_sap_abap/logos/logo_cvo_academy_it.png)
✒️ABAP La lógica de procesamiento en el PAI y las validaciones
ABAP La lógica de procesamiento en el PAI y las validaciones
![ABAP La lógica de procesamiento en el PAI y las validaciones ABAP La lógica de procesamiento en el PAI y las validaciones](https://www.cvosoft.com/cvo_files/imgs_sap_abap/og-images/216.jpg)
Lógica de procesamiento en PAI: Validaciones
Validación de los datos de entrada
Una de las funciones mas importantes del PAI es la de validar los datos de entrada de la pantalla antes de ser utilizados. Existen 2 tipos de validaciones de entrada:
- Un chequeo automático realizado por el sistema
- Un chequeo manual programado por el comando FIELD de la lógica de proceso de las dynpros.
Validación automática
El sistema realiza automáticamente una serie de chequeos de los datos de entrada antes de procesar el evento PAI; Estos chequeos son los siguientes:
Verificación del Formato.- El sistema valida las entradas de acuerdo a los atributos de cada campo, si detecta un valor incorrecto se desplegará un mensaje de error y volverá a mostrar los campos para la nueva entrada.
Verificación de campos obligatorios.- Cuando un campo de la pantalla es obligatorio , el sistema no continuará con el procesamiento a menos que el campo obligatorio tenga algún valor.
Verificación de claves foráneas.- Una verificación de clave foránea es procesada solo si un campo de la pantalla se refiere a un campo del Diccionario de datos para el cual se ha definido una tabla de verificación.
Al mismo tiempo la funcionalidad de la tecla F4 es activada.Esto significa que las posibles entradas para un campo son desplegadas.
Verificación del ámbito de valores.- En el diccionario de datos se puede definir un ámbito de valores asociado a un dominio, si se define un campo de pantalla con referencia a un dominio, ocurre lo siguiente:
Los valores del ámbito de valores son desplegados si el usuario presiona F4 para ver los posibles valores para el campo de entrada
El sistema verificará los valores introducidos en el campo contra el conjunto de valores del ámbito de valores del dominio.
Validación manual
Además del chequeo automático, es posible realizar una validación mas extensa de los valores de entrada con las instrucciones FIELD y CHAIN-ENDCHAIN.
Con FIELD se puede validar individualmente cada campo de forma que en caso de error, la siguiente entrada de datos solo permitirá introducir el campo erróneo sobre el que estamos utilizando la instrucción FIELD.
Es posible realizar distintas validaciones de un campo de entrada dependiendo de la fuente con la que contrastamos los valores posibles.
Chequeo de un campo contra una tabla BD.- Si no se encuentra registros en la Base de datos el sistema emite un mensaje de error estándar
Chequeo de un campo respecto a una lista de valores:
FIELD <campos_pantalla> VALUES (<Lista_valores>).
Si el valor introducido por el usuario no corresponde a ningún valor de la lista emite un error.
Chequeo de un campo en un módulo.- Para checar un campo determinado con un módulo utilizaremos la siguiente sentencia:
FIELD <campos_pantalla> MODULE <modulo>Abap/4>.
Si el módulo resulta con error (E) o un warning (W), la pantalla es desplegada nuevamente pero sin procesar los módulos del PBO. El texto del mensaje es mostrado y solo el campo que ocasionó el error estará disponible para que se introduzcan datos.
La instrucción CHAIN-ENDCHAIN
La instrucción CHAIN-ENDCHAIN encierra un conjunto de instrucciones FIELD, que en caso de error en la entrada de alguno de ellos, todos los campos del CHAIN-ENDCHAIN se podrán modificar mientras que los que no pertenezcan al CHAIN-ENDCHAIN estarán bloqueados para la entrada de datos.
Mensaje de Error (E)- El texto del mensaje del error (E) es desplegado en la pantalla actual, todos los campos de pantalla asignados al módulo correspondiente se vuelven disponibles para introducir información de nuevo. El sistema obliga al usuario a re-introducir datos.
Mensaje de Advertencia o Warning(W)- El texto del mensaje del warning (W) es desplegado en la pantalla actual, todos los campos de pantalla asignados al módulo correspondiente se vuelven disponibles para introducir información de nuevo. El usuario puede re-introducir los datos o ignorar el mensaje de advertencia con ENTER.
Mensaje de Información (I) - El texto del mensaje de información (I) es desplegado en la pantalla actual, el proceso de la pantalla es suspendido. Después de que el usuario presione la tecla ENTER, el programa continua con su ejecución normal desde el punto donde fue suspendido.
Mensaje de Éxito - El texto del mensaje de éxito (S) es desplegado en la pantalla siguiente a la actual.
Mensaje de Interrupción - El texto de un mensaje de interrupción (A) es desplegado en la pantalla actual. Luego que el usuario presione la tecla ENTER, el proceso actual es terminado y el proceso regresa a la pantalla inicial.
 
 
 
Sobre el autor
Publicación académica de José Luis Zevallos Mamani, en su ámbito de estudios para la Carrera Consultor ABAP.
José Luis Zevallos Mamani
Profesión: Ingeniero de Sistemas - Peru - Legajo: MZ47M
✒️Autor de: 164 Publicaciones Académicas
🎓Egresado de los módulos:
- Máster ABAP for HANA
- Máster Funcional ABAP
- Carrera Consultor ABAP Nivel Avanzado
- Carrera Consultor ABAP Nivel Inicial