Consejos de validación en Jitterbit App Builder
Las Reglas de Validación en App Builder protegen sus datos de manipulaciones no deseadas o indebidas. Se configuran en el área SQL de Negocios de la Capa de Lógica de Negocios y, una vez configuradas, se pueden usar en la aplicación añadiéndolas como controles a los paneles de las páginas.
Este artículo proporciona algunas prácticas recomendadas y recomendaciones para trabajar con validaciones en App Builder. Las validaciones se utilizan para proteger la integridad de los datos. Pueden ejecutarse con datos ingresados manualmente y evitar que un usuario agregue registros que infrinjan la lógica de negocio (por ejemplo, registros duplicados). Las reglas de validación también se pueden usar en la capa de lógica de negocio. Si una regla CRUD se configura como capa de negocio, las validaciones también se ejecutarán cuando se ejecute dicha regla.
Los mensajes de validación presentados a los usuarios finales son configurables y pueden aprovechar la sustitución dinámica para mejorar la experiencia del usuario.
Tutorial de reglas de validación
Mejores prácticas y recomendaciones
-
El 99 % del tiempo debería usar la vinculación implícita. La vinculación explícita se usa para validaciones XP (como en una API REST). La vinculación explícita no debería afectar la validación.
-
Su validación debe apuntar a la tabla o al objeto de datos del panel. Si desea registrar a nivel de tabla para que se ejecute cada vez que se guarde un registro mediante cualquier objeto de datos, deberá apuntar a la tabla y registrar a nivel de tabla. Si desea registrar al objeto de datos, entonces apunte a este.
-
La clave reside en saber cómo se referencia el registro temporal/nuevo ("en memoria") en la regla de validación para compararlo con las filas existentes. App Builder reemplazará cualquier objeto de negocio con el nuevo registro en los siguientes casos:
- Reemplaza la primera tabla de destino agregada a la regla de validación. La segunda permanece intacta. De hecho, este es el orden en que se agregaron.
- Reemplaza todos los objetos de datos que apuntan a la misma tabla de destino que el panel/evento.
- Consulte la sección Escenarios de reemplazo a continuación.
Importante
Esto es muy importante al validar un registro con registros existentes. Para ello, debe agregar la tabla de destino dos veces o considerar agregar un objeto de negocio que no tenga como destino la misma tabla a la que apunta el evento.
-
Si se crea una regla de validación que utiliza el enfoque "En memoria", el objeto comercial desde el cual se registra la regla de validación debe contener todas las columnas referenciadas en la regla de validación para "reemplazar" correctamente todos los valores de las columnas.
- Consulte el ejemplo de Correo duplicado "en memoria" a continuación para obtener una configuración de muestra.
-
Las validaciones activadas por reglas de negocio ejecutadas en acciones no pueden realizar confirmaciones. Se redondearán a errores. No es posible ejecutar la mitad del evento principal, confirmar algo y luego seguir ejecutándolo.
-
App Builder admite la sustitución dinámica en los mensajes de las validaciones. Solo necesita proporcionar el valor que desea sustituir en el objeto de datos del panel donde se activa la validación y, a continuación, {{Value}} en el campo de mensaje de la Validación.
Escenarios de reemplazo:
- Cliente, Cliente (Fuente A), Cliente (Fuente B): todos se sustituyen
- Cliente, Cliente: Se sustituye la primera tabla de clientes.
- Cliente (Fuente A), Cliente (Fuente B): Todos se sustituyen
- Cliente, Cliente (Fuente A), Cliente (no me estoy dirigiendo al Cliente): Cliente y Cliente (Fuente A) se sustituyen
Ejemplo de regla de validación de Correo duplicado "en memoria":
Este ejemplo ilustra el enfoque de validación en memoria, donde el valor que el usuario escribe se compara con los valores guardados en las filas de la tabla. Todas las columnas de la regla de validación deben existir en el objeto de negocio para que App Builder pueda colocar correctamente los valores en memoria en las columnas de la regla y que la lógica funcione.
-
Ejemplo de registro de validación para una regla de validación de Correo duplicado:
-
Ejemplo de configuración de la regla de validación:
-
Cláusula Where para la configuración de la regla de validación:
-
Lógica de unión para la configuración de la regla de validación: