Mostrar validaciones al usuario final

<< Click to Display Table of Contents >>

Navigation:  Bizagi Studio > Asistente de Procesos > Reglas de Negocio > Ejemplos de reglas de negocio >

Mostrar validaciones al usuario final

Las validaciones son mensajes de error personalizados que se muestran en el portal de Trabajo para informar al usuario final que falta alguna información o que un error ha ocurrido en una actividad. Los mensajes de validación generalmente se definen en las acciones Al Salir o en una validación de tabla.

 

Si no se cumple una validación luego de dar clic en Siguiente en la actividad, el proceso quedará detenido y se mostrará el mensaje de error.

Si no se cumple una validación al momento de guardar un nuevo registro de una tabla, el registro no se guardará y se mostrará un mensaje de error.

 

Las validaciones se configuran utilizando la función ThrowValidationError. La sintaxis de la función es la siguiente:

 

CHelper.ThrowValidationError("sMessage")

 

El parámetro de la función es el mensaje de error que se muestra cuando se lanza la validación.

 

La función ThrowValidationError se encuentra en la categoría Validación de datos.

 

Validation1

 

Ejemplo

En el proceso de Solicitud de viajes es necesario verificar que la fecha de regreso sea mayor a la fecha de salida, esto para poder calcular el número de días de la solicitud. Si las fechas no cumplen esta condición se debe mostrar un mensaje al usuario final informado del error.

 

Para mostrar el mensaje de validación utilice la función ThrowValidationError.

 

1. En el cuarto paso del Asistente seleccione la opción Acciones de la actividad. Luego agregue una expresión Al Salir de la tarea Registrar Solicitud de Vacaciones.

 

Date Operations2

2. En un elemento de expresión compra le fecha de salida con la fecha de regreso.

 

3. Escriba el mensaje de error en la función ThrowValidationError, “La fecha de regreso debe ser mayor que la fecha de salida”.

 

Date Operations10

 

if (<VacationRequest.LeavingDate>>=<VacationsRequest.ReturningDate>)

{

 CHelper.ThrowValidationError("Returning Date cannot be less than the Leaving Date");

}

 

4. Clic en Ok para guardar la regla.

 

 

5. En el Portal de Trabajo, ingrese una fecha de regreso menor que la fecha de salida.

El mensaje de error será mostrado.

 

 

Date Operations19

 

 

 

Mostrar validaciones localizadas

En algunos casos puede ser necesario localizar los mensajes de validación con el fin de mostrarse de acuerdo al idioma de los usuarios.

Esto puede hacerse utilizando Recursos extendidos.

 

Suponga que el mensaje de validación de la Solicitud de Vacaciones debe mostrarse en el idioma de solicitante. Para hacerlo, siga los pasos descritos a continuación:

 

1. Desde la Vista de Experto cree un Recursos extendidos y defina la localización para los idiomas deseados.

 

Date Operations37

 

2. Vaya al cuarto paso del Asistente de Bizagi y cree una expresión a la salida de la tarea Registrar Solicitud de Vacaciones.

En un elemento de expresión, defina la condición requerida para mostrar el mensaje de validación tal como se hizo en el ejemplo anterior.

 

Date Operations38

 

3. Utilice la función Me.Case.WorkingCredential.UserProperties para obtener el idioma del usuario solicitante.

 

 

Date Operations39

 

 

4. Utilice la función CHelper.GetAttrib para obtener el nombre (CultureName) del idioma del usuario.

 

Date Operations40

 

 

5. Utilice la función CHelper.GetStringExtended para obtener el mensaje de validación en el idioma requerido. Esta función utiliza tres parámetros:

 

Parámetro 1: Nombre del Recurso Extendido.

Parámetro 2: Mensaje por defecto (Mostrado si el recurso no está localizado en idioma especificado).

Parámetro 3: Nombre del Idioma (CultureName).

 

 

Date Operations41

 

 

6. Finalmente utilice la función CHelper.ThrowValidationError para mostrar el mensaje de validación.

 

Date Operations42

 

 

if (<VacationRequest.LeavingDate>>=<VacationsRequest.ReturningDate>)

{

//Obtenga el idioma del usuario.

idLang=Me.Case.WorkingCredential.UserProperties["language"];

//Obtenga el nombre (CultureName)del idioma del usuario.

Lang = CHelper.getAttrib("LANGUAGE",idLang,"CultureName");

//Obtenga el mensaje localizado.

LocalizedMessage= CHelper.GetStringExtended("ReturningDateValidation","Returning Date cannot be less than the Leaving Date",Lang);

//Muestre el mensaje localizado.

CHelper.ThrowValidationError(LocalizedMessage);

}