✒️ABAP La lógica de procesamiento en el PAI y las validaciones
ABAP La lógica de procesamiento en el PAI y las validaciones
Lección: Lógica de procesamiento en PAI: Validaciones
1) Validación de los datos de entrada
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 tipos de validaciones de los datos de entrada_
-Chequeo automático realizado por el sistema
-Chequeo manual programado con el comando FIELD de la lógica de process de las dynpros
2) 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 se detecta un valor incorrecto, se desplegará un mensaje de error y se volverán a mostrar los campos para su nueva entrada
Ej vemos en el gráfico anterior, introducimos una letra en un campo numérico lo cual produce un error
Verificación de campos obligatorios
Cuando a un campo de la pantalla se le asigna el atributo de 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 capo 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 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
3) 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 FIELD 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 intrucción FIELD
Dependiendo del tipo de sentencia FIELD que utilicemos, el mecanismo de chequeo se realizará en la lógica de proceso de la dynpro o en un módulo
Es posible realizar distintas validaciones de un campo de entrada dependiendo de la fuente con la que contrastamos los valores posible. 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:
Chequeo de un campo contra una tabla base de datos
Si no se encuentran 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:
Chequeo de un campo respecto de una lista de valores
Donde la lista de valores puede ser:
Si el valor introducido por el usuario no corresponde a ningún valor de la lista el sistema emite un mensaje de error
Chequeo de un campo en un módulo
Para chequear un campo determinado con un módulo utiizamos la siguiente sentencia
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 ej
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
4) Mensajes en pantalla
A continuación analizaremos el comportamiento de cada uno de los tipos de mensajes existentes en un programa de diálogo
Mensaje de Error
El texto de un mensaje de error E es desplegado en la pantalla actual
Todos los campos de pantalla asignados al módulo correspondiente ( instrucción FIELD) se vuelven disponibles para introducir información de nuevo El sistema obliga al usuario a re introducir datos
Mensaje de Advertencia
El texto del mensaje de advertencia W es desplegado en la pantalla actual
Todos los campos de pantalla asignados al módulo correspondiente (instrucción FIELD) se vuelven disponibles para introducir información de nuevo El usuario puede re introducir los datos o ignorar el mensaje de advertencia presioanando la tecla ENTER
Mensaje de Información
El texto de un mensaje de información I es desplegado en la pantalla actual
El proceso de la pantalla actual es suspendido. Después de que el usuario presione la tecla ENTER, el programa continúa con su ejecución normal desde el punto donde fue suspendido
Mensaje de exito
Un mensaje de texto 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 Aida Cortina Fernandez, en su ámbito de estudios para la Carrera Consultor ABAP.
Aida Cortina Fernandez
Profesión: Consultor Junior - Espa?a - Legajo: MK87X
✒️Autor de: 74 Publicaciones Académicas
🎓Cursando Actualmente: Consultor ABAP Nivel Avanzado
🎓Egresado del módulo:
Certificación Académica de Aida Cortina