PROMO SEPTIEMBRE en CVOSOFT United States Of America: 💎Calidad, 🔥Bonificaciones, 🥶Precios Congelados y MÁS!

 X 

✒️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

La lógica de procesamiento en el PAI y las validaciones

La 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 usados.

Existen 2 tipos de validaciones de los datos de entrada:

Las validaciones automáticas realizadas por el sistema

Las validaciones manuales programadas con la sentencia FIELD en la lógica de proceso del PAI de las dynpros.

A continuación veremos cada una de las validaciones.

Las validaciones automáticas

El sistema realiza automáticamente una serie de validaciones de los datos de entrada antes de procesar el evento PAI. Estas validaciones son las siguientes:

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 mostrar los campos para su nueva entrada.

En el ejemplo que vemos en la imagen anterior, introducimos una fecha invalida en un campo de tipo fecha lo cual produce un error y también introducimos una letra en un campo numérico lo cual también produce un error.

Veamos un ejemplo:

La 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.

Veamos a continuación un ejemplo para ver qué sucede cuando no completamos un campo de la pantalla que es obligatorio y hacemos clic en un botón de la dynpro.

La verificación del ámbito de valores

En el diccionario d datos se puede definir un ámbito de valores asociados a un dominio de un campo de una BD.

Por ejemplo, para el campo ESTADO_USU de la tabla BD ZTABLA_USUARIOS tenemos definido al dominio ZZ_ESTADO_USUARIO tal como vemos en la siguiente imagen:

Y dentro del dominio Z_ESTADO_USU definimos un ámbito de valores con tres valores posible: A (Activo), I (Inactivo) y N (Anulado).

Si se define un campo de pantalla con referencia a un dominio con un ámbito de valores asociados, 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.

Si por ejemplo, creamos en una dynpro el campo de entrada/salida Estado del usuario cuya definición será ZTABLA_USUARIOS-ESTADO_USU.

Comprobamos que al visualizar la dynpro en ejecución y presionar la tecla F4 sobre el campo, aparecen en una ventana de diálogo los posibles valores para introducir en el campo.

Y si introducimos un valor diferente a alguno de los valores posibles y presionamos la tecla enter entonces visualizaremos el mensaje de error en pantalla Indique un valor valido correspondiente a la validación automática tal como vemos a continuación:

Las validaciones manuales

Además de las validaciones automáticas es posible realizar una validación más extensa de los valores de entrada con las sentencias FIELD y CHAIN-ENDCHAIN.

Co la sentencia 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 sentencia FIELD.

Es posible realizar distintas validaciones de un campo de entrada, veamos a continuación cada una e estas opciones:

La validación de un campo de la dynpro en un MODULE

Para probar esta validación, dentro del PAI de nuestro programa PRUEBA_DIALOGO_DV67X escribimos la sentencia FIELD tal como vemos a continuación, declarando el módulo VALIDAR_DNI_0100, el cual va a validar que el DNI introducido en la pantalla exista en la tabla de la BD ZTABLA_USUARIOS.

Vamos a crear el MODULE VALIDAR_DNI_0100 dentro del include correspondiente al PAI tal como vemos en la siguiente imagen:

Si ejecutamos la transacción ZACT_USU asociada al programa, completamos el campo DNI con un valor que no existe en la tabla BD ZTABLA_USUARIOS y hacemos clic en el botón Buscar usuarios entonces visualizamos el mensaje de error El DNI introducido no existe.

Tal como vemos en la imagen anterior, la pantalla es desplegada nuevamente pero sin procesar los MODULE PBO. El texto del mensaje es mostrado y solo el campo que ocasionó el error se encuentra disponible para introducir datos nuevamente, es decir si en la pantalla existirían mas campos de entrada entonces no se mostrarían habilitados para introducir valores.

La validación de más de un campo de la dynpro en un MODULE

Existe la posibilidad también de crear un solo MODULE para validar más de un campo de la dynpro o todos ellos, con una misma sentencia FIELD, lo cual resulta conveniente en la mayoría de los casos.

Para ello, vamos a crear el MODULE VALIDAR_CAMPOS_0300 dentro del include correspondiente al PAI, de modo de validar todos los campos indicados en la sentencia FIELD.

Dentro del MODULE VALIDAR_CAMPOS_0300 vamos a generar la siguiente lógica:

Si ejecutamos la transacción ZACT_USU asociada al programa, configurando a la dynpro 0300 como a primera dynpro que se visualiza, completamos el campo Código Postal y presionamos la tecla enter, entonces visualizamos el mensaje de error Debe introducir una dirección.

Tal como vemos en la imagen anterior, todos los campos de la dynpro quedan grisados, es decir no disponibles para introducir datos, por lo que esta solución así como la planteamos no sirve.

Para evitar que todos los campos de la dynpro se bloqueen vamos a usar la sentencia CHAIN.ENDCHAIN.

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 se encuentren dentro del CHAIN-ENDCHAIN estarán bloqueados para la entrada de datos.

Veamos a continuación, cómo sería la implementación de la sentencia CHAIN-ENDCHAIN en nuestro programa de diálogo:

Si ahora volvemos a ejecutar la transacción ZACT_USU asociada al programa, configurando a la dynpro 0300 como la primera dynpro que se visualiza, completamos el campo Código Postal y presionamos la tecla enter, entonces visualizamos el mensaje de error Debe introducir una dirección y todos los campos de la dynpro disponibles para ingresar datos.

Los mensajes en la pantalla

A continuación, analizaremos el comportamiento de cada uno de los tipos de mensajes existentes en programa de diálogo.

El mensaje de error

El texto del mensaje de error (E) es desplegado en la pantalla actual.

La sintaxis de los mensajes de error es tal como vemos en la siguiente imagen:

Todos los campos de pantalla asignados al MODULE correspondiente en la sentencia FIELD se vuelven disponibles para introducir información de nuevo.

El sistema obliga al usuario a volver a introducir datos.

Si ejecutamos la transacción ZACT_USU asociada al programa no completamos el DNi en la dynpro 0100 y hacemos clic en el botón Buscar usuarios entonces visualizamos el mensaje de error El DNI introducido no existe tal como vemos a continuación:

El mensaje de advertencia

El texto del mensaje de advertencia (W) es desplegado en la pantalla actual.

La sintaxis de los mensajes de advertencia es tal como vemos en la siguiente imagen:

Todos los campos de la pantalla asignados al MODULE correspondiente en la sentencia FIELD se vuelven disponibles para introducir información de nuevo.

El usuario puede volver a introducir los datos o ignorar el mensaje de advertencia presionando la tecla ENTER.

Si ejecutamos la transacción ZACT_USU asociada al programa, no completamos el DNI en la dynpro 0100 y hacemos clic en el botón Buscar usuarios entonces visualizamos el mensaje de advertencia El DNI introducido no existe tal como vemos a continuación:

El mensaje de información

El teto de un mensaje de información (I) se muestra en una ventana de diálogo que se visualiza encima de la pantalla actual.

La sintaxis de los mensajes de información es tal como vemos en la siguiente imagen:

El proceso de la pantalla actual es suspendido.

Después que el usuario presione la tecla ENTER, el programa continúa con su ejecución normal desde el punto donde fue suspendido.

El mensaje de éxito

El mensaje de un mensaje de éxito (S) es desplegado en la pantalla actual.

La sintaxis de los mensajes de éxito es tal como vemos en la siguiente imagen:

Los mensajes de éxito se van a usar generalmente en los programas de diálogo para informar que la actualización de los datos se realizo correctamente tal como mostramos en la siguiente imagen en donde se visualiza el teto Se actualizaron los datos correctamente.

El mensaje de interrupción

El texto de un mensaje de interrupción (A) es desplegado en la pantalla actual dentro de una ventana de diálogo junto con los botones Finalizar y Ayuda.

El usuario debe presionar la tecla ENTER para finalizar y a continuación el proceso actual es terminado y se regresa a la pantalla inicial.

Si ejecutamos la transacción ZACT_USU asociada al programa, no completamos el DNI en la dynpro 0100 y hacemos clic en el botón Buscar usuarios entonces visualizamos el mensaje de interrupción El DNI introducido no existe tal como vemos a continuación:


 

 

 


Sobre el autor

Publicación académica de Lisimaco Prieto Herrera, en su ámbito de estudios para la Carrera Consultor ABAP.

SAP Master

Lisimaco Prieto Herrera

Profesión: Ingeniero de Sistemas - Colombia - Legajo: DV67X

✒️Autor de: 96 Publicaciones Académicas

🎓Egresado de los módulos:

Presentación:

Ingeniero de sistemas con amplia experiencia en el desarrollo de software para el sistema sap r/3 en lenguaje de programaci?n abap.

Certificación Académica de Lisimaco Prieto

✒️+Comunidad Académica CVOSOFT

Continúe aprendiendo sobre el tema "La lógica de procesamiento en el PAI y las validaciones" de la mano de nuestros alumnos.

SAP Expert


Unidad 2: Programación de diálogo Lección 5: gica de procesamiento en PAI: Validaciones Audio Tip: Las sentencias CHAIN-ENDCHAIN de la lógica de procesamiento de una dynpro definen cadenas de procesamiento dentro de CHAIN-ENDCHAIN se ejecutan las sentencias field y module. Las sentencias que están entre CHAIN-ENDCHAIN forman una cadena de procesamiento. Las cadenas de procesamiento no se pueden anidar, es decir, no podemos colocar un CHAIN-ENDCHAIN dentro de otro CHAIN-ENDCHAIN. La sentencia CHAIN-ENDCHAIN puede ser especificada tanto en PAI como en el PBO, sin embargo en el PBO no tiene efecto alguno.

Acceder a esta publicación

Creado y Compartido por: Brenda Castillo Dom?nguez / Disponibilidad Laboral: FullTime

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Master

Lección: gica de procesamiento en PAI: Validaciones [ 5º de 9 ] VALIDACIÓN DE LOS DATOS DE ENTRADA Una de las funciones más importantes del PAI es la validación de los datos de entrada antes de ser utilizados. Existen 2 validaciones: Chequeo automático realizado por el sistema y el chequeo manual programado con el comando FIELD de la lógica de proceso de las dynpros. VALIDACIÓN AUTOMATICA Verificación del formato: El sistema valida las entradas de acuerdo a los atributos de cada campo. Verificación de campos obligatorios: Valida que el campo tenga algún valor. Verificación de clave foránea: Valida cuando el campo se se refiere a un campo del...

Acceder a esta publicación

Creado y Compartido por: Jose Angel Valles Bustos

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Master

Hay dos tipos de validaciones de los datos de estrada: El chequeo automatico y el chequeo manual programado con el comando FIELD de la gica de proceso de las Dynpros. 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 el modulo.

Acceder a esta publicación

Creado y Compartido por: William Alejandro Lemus

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Expert


La gica de procesamiento en el PAI y las validaciones 1 - la validacion de los datos d entrada. PAI valida los datos de entrada. - validaciones automáticas. - validaciones manuales: con sentencias field en la logica. 2 - Validaciones automáticas. El sistema realiza automaticamente las sig validaciones: - verificacion de formato. - campos obligatorios. - verificacion del ambito de valores. 3 - Validaciones Manuales. validaciones a los datos de entrada con: field: validar individualmente cada campo. Chain-EndChain. La validacion de un campo de la dynpro en un module. field wa_screen_0100-dni module validar_dni_0100. crear el module para hacer la validacion. module validar_dni_0100...

Acceder a esta publicación

Creado y Compartido por: Pablo Adrian Oggero

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Master

Logica de procesamiento en PAI: Validaciones 1. Validacion 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: Un chequeo automático realizado por el sistema. Un chequeo manual programado con el comando FIELD de la lógica de proceso de las dynpros. A continuación veremos cada uno de ellos. 2. Validacion Automatica. 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...

Acceder a esta publicación

Creado y Compartido por: Edward Henry Rosario Piezal / Disponibilidad Laboral: FullTime

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Master


gica de Procesamiento en PAI Un programa de diálogo está compuesto por dynpros. La lógica de procesamiento de cada dynpro cumple con una metodología muy particular que consiste en la ejecución de dos eventos: PBO (Process Before Output) PAI (Process After Input) El PAI es el evento que se ejecuta luego de introducidos los datos en la dynpro y realizada alguna acción sobre ella, como puede ser presionar un botón. Aquí lo que haremos será validar los datos ingresados en la pantalla y luego tomar alguna acción en base a nuestras validaciones que puede ser emitir un mensaje de error por pantalla o seguir el flujo del procesamiento hacia otra dynpro. Existen...

Acceder a esta publicación

Creado y Compartido por: Cesar Armando Gutierrez Gomez / Disponibilidad Laboral: FullTime

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Senior

La 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 tipo de variables de los datos de entrada: Las variables automáticas realizadas por el sistema. Las variables manuales programadas con la sentencia FIELD en la gica de proceso del PAI de las dynpro. Las validaciones automáticas. El sistema realiza automáticamente una serie de validaciones de los datos de entrada antes de procesar el evento PAI. Estas validaciones son las siguientes: La verificación del formato: el sistema valida las entradas de acuerdo a los atributos de cada campo. LA verificación...

Acceder a esta publicación

Creado y Compartido por: Javier Miguel Angel Barcelo / Disponibilidad Laboral: PartTime

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Senior

GICA DE PROCESAMIENTOS EN PAI- VALIDACIONES. 1. VALIDACIONES DE LOS DATOS DE ENTRADA. Una de las funciones del PAI es validar los datos de entrada de la pantalla antes de ser utilizados. Existen dos tipo 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 proceso de las DYNPROS. 2. Validación Automática. El sistema valida automáticamente: Verificación del formato - Screen Painter. Esto de acuerdo a los atributos del campo, si hay algo inconsistente genera sus mensajes para que vuelva a introducir sus valores. Validación de campos obligatorio. Definido así en...

Acceder a esta publicación

Creado y Compartido por: Morela Silva

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Master

LOGICA DE PROCESAMIENTO EN PAI: VALIDACIONES VALIDACION DE LOS DATOS DE ENTRADA Funcion PAI, para validar los datos de entrada en pantalla antes de utilizarlos. Existen dos validaciones de entrada: Un chequeo automatico realizado por el sistema. (VALIDACION AUTOMATICA) Se realizan automaticamente los chequeos de los datos de entrada antes de procesar el PAI. Chequeos: Verificacion del formato: El sistema valida las entradas confirme a los atributos. Si detecta un valor incorrecto despliega mensaje de error y vuelve a mostrar los campos para su nueva entrada Verificacion de campos obligatorios: Cuando se asigna un atributo obligatorio, el sistema no continua el proceso, al menso que tenga algun valor Verificacion de claves foraneas: se...

Acceder a esta publicación

Creado y Compartido por: Ixhel Magai Lopez Valencia / Disponibilidad Laboral: PartTime + Carta Presentación

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

Validaciones PAI Una de las funciones del PAI, es validar los datos de entrada en pantalla antes de ser utilizados. Los dos tipos de validaciones que se pueden generar son la automática en donde el sistema realiza automáticamente chequeos de los datos de entrada antes de procesar el PAI y la validación manual en donde se utilizan las instrucciones FIELD y CHAIN-ENDCHAIN.

Acceder a esta publicación

Creado y Compartido por: Erika Andrea Rojas Gutierrez

 


 

👌Genial!, estos fueron los últimos artículos sobre más de 80.000 publicaciones académicas abiertas, libres y gratuitas compartidas con la comunidad, para acceder a ellas le dejamos el enlace a CVOPEN ACADEMY.

Buscador de Publicaciones:

 


 

No sea Juan... Solo podrá llegar alto si realiza su formación con los mejores!