✒️ABAP / La lógica de procesamiento en el PAI y las validaciones Por Cristian Arteaga Diaz
ABAP La lógica de procesamiento en el PAI y las validaciones

LOGICA EN PROCESAMIENTO EN PAI, VALIDACIONES – LECCION 2-5
VALIDACION DE LOS DATOS DE ENTRADA
Existen dos tipos de datos de entrada
- Chequeo automático realizado por el sistema,
- Chequeo manual programado con el comando FIELD de la lógica de proceso de la DYNPRO
VALIDACION AUTOMATICA el sistema realiza automáticamente una serie de chequeos de los datos de entrada antes de procesar el evento PAI
- VERIFICACION DEL FORMATO, el sistema valida las entradas de acuerdo a los atributos de cada campo, si se detecta un valor incorrecto, se despliega un mensaje de error y se volverá a mostrar los campos para su nueva entrada
- VERIFICACION DE CAMPOS OBLIGATORIOS, cuando el campo de la pantalla se le asigna el atributo obligatorio, el sistema no continuara con el procesamiento a menos que el campo obligatorio tenga un valor
- VERIFICACION DE CLAVE FORANEA, 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 activar
- VERIFICACION DEL AMBITO DE VALORES, el diccionario de datos se puede definir en 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:
o Los valores del ámbito de valores son desplegados si el usuario presiona la tecla F4 para los posibles valores del campo de entrada
o El sistema verifica los valores introducidos en el campo contra el conjunto de valores del ámbito de valores del dominio correspondiente
TABLA DE VERIFICACION es una tabla de la base de dato de SAP que se utiliza para verificar los valores de un campo determinado
AMBITO DE VALORES es una lista de posibles valores fijos asignados a un dominio de datos, se utiliza un dominio de datos dentro de un elemento de dato definido en el diccionario de dato ABAP correspondiente a la transacción SE11.
VALIDACION 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-ENDCHAI
Con FIELD se puede validar individualmente cada campo de forma que, en caso de errores, la siguiente entrada de datos solo permitirá introducir el campo erróneo sobre el que estamos utilizando la instrucción FIELD
CHAIN-ENDCHAIN es la sentencia ABAP que encierra un conjunto de instrucciones FIELD de campos de la pantalla y en caso de errores en la entrada de alguno de ellos, todos los campos del CHAIN se podrán modificar, mientras que los que no pertenezcan al CHAIN estarán bloqueados para la entrada de datos
Esta sentencia es útil ya que si ella, al producir un mensaje del tipo E, error, en una DYNPRO, se pierde el procesamiento y no queda de otra que cancelar la transacción
NOTA, dependiendo del tipo de sentencia FIELD que utilicemos, el mecanismo de chequeo se realizara en la lógica del proceso de la DYNPRO o en un modulo
Es posible realizar distintas validaciones de un campo de entrada, dependiendo de la fuente con la que contrastamos los valores posibles, así se puede chequear el contenido de un campo, comparándolo con una tabla base de dato, con una lista de valores o realizando la validación de un módulo de MODULE POOL
- CHEQUEO DE UN CAMPO CONTRA UNA TABLA BASE DE DATO, si no se encuentran registros en la base de dato el sistema emite un mensaje de error estándar, existe una versión ampliada de la instrucción anterior que permite enviar mensajes o warning (advertencias) en caso de que encuentre o no registros
FIELD <campo_pantalla> SELECT * FROM <tabla>
WHERE <condicion>
WHENEVER (NOT) FOUND SEND
ERRORMESSAGE / WARNING <numero>
WITH <campo-texto>.
- CHEQUEO DE UN CAMPO CON RESPECTO A LA LISTA DE VALORES
FIELD <campo_pantalla> VALUE (<lista_valores>).
NOTA, si el valor introducido por el usuario no corresponde a ningún valor de la lista, el sistema emitirá un mensaje de error
- CHEQUEO DE UN CAMPO EN UN MODULO,
FIELD <campo_pantalla> MODULE <modulo_ABAP/4>.
Si el modulo resulta con un error (E) o un mensaje de advertencia (W) la pantalla es desplegada nuevamente, pero sin procesar los módulos de PBO, el texto del mensaje es mostrado y solo el campo que ocasiono el error estará disponible para introducir datos nuevamente
- LA INSTRUCCIÓN CHAIN-ENDCHAIN
MENSAJES EN PANTALLA
- MENSAJE DE ERROR, el texto de un mensaje de error (E) es desplegado en la pantalla actual
NOTA, 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 de un mensaje de advertencia (W) es desplegado en la pantalla actual
NOTA, 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 presionando la tecla ENTER
- MENSAJE DE INFORMACION, el texto de un mensaje de información (I) es desplegado en la pantalla actual
NOTA, el proceso de la pantalla actual es suspendido, después que el usuario presione la tecla ENTER, el programa continua con su ejecución normal desde el punto donde fue suspendido.
- MENSAJE DE ÉXITO, un mensaje de texto de éxito (S) es desplegado en la pantalla siguiente a la actual
- MENSAJE DE INTERRUPCION, el texto de un mensaje de interrupción (A) es desplegado en la pantalla actual
NOTA, 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 Cristian Darwin Arteaga Diaz, en su ámbito de estudios para el Curso SAP ABAP Avanzado.
Cristian Darwin Arteaga Diaz
Profesión: Abap Developer - Argentina - Legajo: GP81Q
✒️Autor de: 165 Publicaciones Académicas
🎓Cursando Actualmente: Master Funcional ABAP
🎓Egresado de los módulos:
Disponibilidad Laboral: FullTime
Presentación:
Me considero una persona responsable, siempre estoy investigando y capacitandome para adquirir nuevos conocimientos, tengo el gusto de iniciarme en el mundo de abap como desarrollador, es genial.
Certificación Académica de Cristian Arteaga
























