<< Clic para mostrar Tabla de Contenidos >> Obtener y utilizar información del usuario actual |
Bizagi proporciona varias funciones que permiten encontrar y manipular la información del usuario actual.
Se puede obtener la infromación del usuario dependiendo de si hay contexto o no (si se está en un caso en ejecución o es utilizado fuera de un caso):
•Utilice Me.WorkingCredential cuando se requiera utilizar la información del usuario actual asignado a una tarea en Formas de Proceso o expresiones (es decir, con contexto).
Vea un ejemplo.
•Utilice Credential cuando se requiera utilizar la información del usuario que inició sesión en formas de Consulta, Resumen o Globales (es decir, sin contexto).
Vea un ejemplo.
Estas funciones se encuentran en la categoría de Información del usuario actual.
Los siguientes son los métodos disponibles para el usuario actual:
Propiedades |
Descripción |
---|---|
AreaName |
Retorna el nombre del área del usuario actual. |
FullName |
Retorna el nombre completo del usuario. |
IsInPosition |
Retorna Verdadero si el usuario tiene una determinada posición, falso de lo contrario. |
IsInRole |
Retorna verdadero si el usuario tiene un role especifico, falso de lo contrario. |
IsInSkill |
Retorna Verdadero si el usuario tiene una habilidad especifica, falso de lo contrario. |
IsInPersona |
Retorna verdadero si el usuario tiene una Persona especificada, falso de lo contrario incluso si la Persona está inhabilitada. |
UserId |
Regresa el id del usuario. |
UserProperties |
Regresa el valor de una propiedad de usuario especificada. |
Ejemplos
Los siguientes ejemplos ilustran cómo utilizar las funciones anteriores:
Evaluar si el usuario asignado a la tarea actual tiene un rol específico
Suponga un banco que tiene como misión hacer que el proceso de crédito sea más eficiente: cuando la solicitud es creada por una persona que tiene el rol de Pagador, el proceso no necesita pasar por la actividad de Análisis de Crédito.
Para evitar la actividad, el atributo booleano RequiereEstudio debe ser creado. Si el valor del atributo es verdadero, el caso irá a la tarea Análisis de crédito, de lo contrarió, la tarea será pasada de largo.
La siguiente regla evalúa si el usuario actual tiene el rol de pagador. Si la condición se cumple, el caso no necesita más estudio.
La regla se ejecuta Al Salir de la actividad del proceso de Solicitud de Crédito.
//Evalúa si el usuario actual tiene el role de Pagador.
if(Me.Case.WorkingCredential.IsInRole("Disburser")==true)
{
//Si la condición se cumple es atributo requiere estudio se define en falso y la actividad no se ejecuta.
<CreditRequest.RequiresStudy>=false;
}
else
{
// Si la condición no se cumple, el atributo requiere estudio se define en verdadero e ingresa a la tarea de análisis de crédito.
<CreditRequest.RequiresStudy>=true;
}
Obtener información del usuario que inició sesión
En algunas ocasiones, puede ser necesario identificar quién es el usuario que visualiza una Forma de consulta, global o de resumen. Esto es especialmente útil en situaciones en que se debe mostrar u ocultar alguna información según propiedades específicas de un usuario (por ejemplo, un rol).
Para obtener esta información en formas globales o de resumen se puede utilizar el método de Credential con las mismas funciones del método Me.WorkingCredential.
Supongamos que en un proceso de gestión de oportunidades de venta, la información de Clientes y Partners sólo se muestra a los miembros del equipo de ventas en el momento que consultan el estado de un caso. El resto de la información se muestra a cualquier usuario.
Supongamos que los usuarios pertenecientes al equipo de ventas poseen un rol de Bizagi. Para mostrar u ocultar la información de los Clientes y Partners en la forma global del proceso, se puede utilizar una expresión de visibilidad.
Vaya a la Forma global y establezca una expresión como condición de visibilidad para la información del Cliente y el Partner.
Cree una expresión de script y agregue un elemento de expresión.
Use la función Credential.IsInRole para evaluar si el usuario visualizando la forma posee el role requerido:
//Si la persona visualizando la forma Global posee el rol de Miembro del equipo de ventas
if (Credential.IsInRole("SalesTeam")==true)
{
//Muestre la información
true;
}
//De lo contrario
else
{
//Oculte la información
false;
}
Finalmente guarde la expresión.
Last Updated 2/21/2023 9:29:39 PM