![](/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/351.jpg)
Una de las funciones más importantes del PAI, es la de validar los datos de entrada de la pantalla antes de ser utilizados.
Existen dos tipo de validaciones de los datos de entrada:
- Un chequeo autómatico realizado por el sistema.
- Un chequeo manual programado con el comando FIELD de la lógica de procesos de las dynpros.
A continuación veremos cada uno de ellos.
La 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 siguuientes:
- La verificación del formato
El sistema valida las entradas de acuerdo a los atributos de cada campo. Si se detecta un valor incorrecto, se desplegará un mensaje de error y se volverán a mostras los campos para su nueva entrada.
- La verificación de campos obligatorios
Cuando a un campo de la pantalla se le asigna el atributo obligatorio, el sistema no continuará con el procesamiento, a menos que el campo obligatorio tenga algún valor.
- La 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.
- La 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 con un ámbito de valores asociado, ocurre lo siguiente:
- Los valores del ámbito de valores son desplegados si el usuario presiona la tecla 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 correspondiente.
La Validación Manual
Además del chequeo automático es posible realizar una validación más extensa de los valores de entrada con las instrucciones FIEL y CHAIN-ENDCHAIN.
Con FIELD podemos validar individualmente cada campo de forma que en caso de error, la siguiente entrada de datos sólo 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. Así podemos chequear el contenido de un campo. comparándolo con una tabla base de datos, con una lista de valores o realizando la validación en un módulo del Module Pool.
Veamos a continuación cada una de estas opciones:
- El chequeo de un campo contra una tabla base de datos
Si no se encuentras registros en la base de datos el sistema emite un mensaje de error estándar. Existe una versiín ampliada de la instrucción anterior que permite enviar mensajes o warnings (advertencias) en caso de que encuentre o no registros.
- El chequeo de un campo respecto de una lista de valores
- El chequeo de un campo en un módulo
Si el módulo resulta con un error (E) o un mensaje de advertencia (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 introducir datos nuevamente.
- 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, mientas que los que nos pertenezcan al CHAIN-ENDCHAIN estarán bloqueados para la entrada de datos.
Los mensajes en pantalla
A continuación analizaremos el comportamiento de cada uno de los tipos de mensajes existentes en un programa de diálogo.
- El mensaje de error: El texto de un mensaje de error (E) es desplegado en la pantalla actual.
- El mensaje de advertencia: El texto del mensaje de advertencia (W) es desplegado en la pantalla actual.
- El mensaje de información: El texto del mensaje de advertencia (I) es desplegado en la pantalla actual.
- El mensaje de éxito: Un mensaje de texto de éxito (S) es desplegado en la pantalla siguiente a la actual.
- El mensaje de interrupción: El texto de un mensaje de Interrupción (A) es desplegado en la pantalla actual.
 
 
 
Sobre el autor
Publicación académica de Liliana Noemi Palacios Ramirez, en su ámbito de estudios para la Carrera Consultor ABAP.
Liliana Noemi Palacios Ramirez
Profesión: Ingeniera en Telemática - Mexico - Legajo: XG92G
✒️Autor de: 5 Publicaciones Académicas
🎓Egresado del módulo:
Certificación Académica de Liliana Palacios