Ejecutar acciones sobre colecciones

<< Click to Display Table of Contents >>

Navigation:  Bizagi Studio > Asistente de Procesos > Definir Formas > Personalizar comportamientos del Control > Ejecutar Acciones y Validaciones > Componentes de las acciones >

Ejecutar acciones sobre colecciones

Las Acciones se pueden usar para afectar el comportamiento de las colleciones (tablas en el Portal de trabajo). Las siguientes son las opciones disponibles para trabajar con colecciones en las Acciones

 

Cambiar el comportamiento de celdas específicas en una tabla.

 Por ejemplo, cambiar el color de una sola celda de acuerdo a una condición.

Afectar a toda la tabla.

 Por ejemplo, esconder toda una tabla de acuerdo a una condición.

Afectar el comportamiento de controles fuera de una tabla basado en el valor de registros de la tabla.

 Por ejemplo, calcular un valor total de acuerdo a la suma de registros de la tabla.

 Tenga en cuenta que este escenario funciona cuando se usa Adición En línea y Edición En línea.

 

Cuando tenga que afectar una celda específica de una tabla, es necesario seleccionar una opción avanzada que permite cambiar el contexto y concentrarse sólo en la tabla. El contexto se refiere al objetivo de la acción; puede Forma  (seleccionada por defecto) que determina el comportamiento de toda la Forma o una tabla en particular que  afecta las columnas y filas dentro de una colección.

Esta opción se encuentra en la parte superior de la acción y que se denomina Aplicar a.

 

Decimos que el contexto cambia cuando se selecciona una de las colecciones. La Acción creada con el contexto de una tabla se aplica completamente a la colección elegida. Una vez el contexto es modificado al de una colección específica, se aplicarán las siguientes restricciones:

 

Solo los elementos (columnas) de la colección estarán disponibles para ser evaluados en condiciones.

Las acciones evaluarán cada fila de manera independiente.

 

ActionsandValidations50

 

 

note_pin

Usted no puede utilizar Acciones y Validaciones para manipular colecciones filtradas con el mismo XPath.

Cuando se utilicen dos tablas filtradas, usted deberá utilizar las expresiones de control (visible, requerido, editable).

 

Ejemplo: Usar una acción para afectar el color de una celda

Ejemplo: Usar una acción mostrar u ocultar una tabla

Ejemplo: Usar acciones para asignar valores a controles fuera de la tabla

 

 

 

Usar acciones para cambiar el color de una celda

Cuando usted necesita afectar una columna o celda de una tabla, tendrá que cambiar el contexto.

 

Suponga que usted esta definiendo una forma para una actividad en un proceso de Solicitud de Crédito. En la actividad de Registrar Solicitud, un analista de crédito ingresa la información relacionada a una solicitud presentada por un Cliente.

 

Un Cliente puede solicitar varios productos en la misma solicitud. Cada uno de ellos posee un Monto solicitado y, de acuerdo a su capacidad de pago y a un análisis de riesgo, se define un Monto máximo permitido.

 

Si el Monto solicitado de un producto es menor al Monto máximo permitido para ese producto, la celda del monto solicitado debería mostrarse con fondo verde, de lo contrario, debería mostrarse con fondo rojo.

 

1. Construya la forma.

Observe que los productos solicitados se incluyen en una tabla denominada Productos. Incluya el Nombre del producto, Monto Solicitado y Monto máximo como columnas de la tabla.

 

 

ActionsandValidations12

 

 

2. Cree la Acción.

En el diseñador de Formas seleccione Acciones y Validaciones y agregue una nueva acción.

 

ActionsandValidations44

 

 

3. Defina el contexto de la acción.

Para este caso la acción se evaluará y aplicará sobre elementos de la colección Productos , por lo cual se selecciona Productos en el campo Aplicar a.

 

ActionsandValidations51

 

 

4. Incluya la condición. Dé clic en Agregar una condición y seleccione el control, operador y argumento así:

Cuándo Productos.MontoSolicitado es mayor a Productos.MontoMaximo .

 

ActionsandValidations13

 

Observe que cuando se definen acciones a nivel de colección, los elementos de la colección (columnas) se identifican por su nombre seguido de un punto (.) y el nombre del elemento (es decir, colección.nombre_de_la_columna).

 

ActionsandValidations14

 

5. Incluya la Acción (Entonces). Dé clic en Agregar una acción y defina lo que pasará cuando se cumpla la condición.

Cambie color de fondo para  Productos.MontoSolicitado a rojo.

 

 

ActionsandValidations15

 

Observe de nuevo que estamos haciendo referencia a las columnas de la colección Productos.

 

ActionsandValidations16

 

6. Defina la acción alterna (Si no), que se ejecutará cuando NO se cumpla la condición.

Cambie color de fondo para Productos.MontoSolicitado a verde.

 

 

ActionsandValidations18

 

Así se comportará el Portal de Trabajo de acuerdo a los valores ingresados:

 

ActionsandValidations25

 

 

Usar acciones para mostrar u ocultar una colección

En este caso usted puede mostrar u ocultar una tabla de la misma manera que muestra u oculta cualquier otro control en la Forma. No hay necesidad de cambiar el contexto.

 

Suponga que usted esta definiendo una forma para una actividad en un proceso de Solicitud de Crédito. En la actividad de Registrar Solicitud, un analista de crédito ingresa la información relacionada a una solicitud presentada por un Cliente.

 

Un Cliente puede solicitar varios productos en la misma solicitud. Cada uno de ellos posee un Monto solicitado y, de acuerdo a su capacidad de pago y a un análisis de riesgo, se define un Monto máximo permitido.

 

Si la capacidad de pago del cliente es menor a 1000, no se podrá solicitar ningún tipo de producto y por lo tanto la tabla de Productos no debería mostrarse al usuario final.

 

Con el fin de mostrar u ocultar la tabla de Productos de acuerdo al valor ingresado en el campo de Capacidad de pago, usted puede utilizar acciones.

 

 

1. Cree la Acción.

En el diseñador de Formas seleccione Acciones y Validaciones y agregue una nueva acción.

 

ActionsandValidations44

 

 

2. Usted no necesita cambiar el contexto de la Acción. En el campo Aplica a, mantenga la opción Forma.

 

ActionsandValidations52

 

3. Incluya la condición.

Dé clic en Agregar una condición y seleccione el control, operador y argumento así:

Cuándo Capacidad de Pago es menor a 1000.

 

 

ActionsandValidations45

 

4. Incluya la Acción (Entonces). Dé clic en Agregar una acción y defina lo que pasará cuando se cumpla la condición.

En este caso, oculte la colección Productos.

Cambie la visibilidad para Productos a falso.

 

Observe que las colecciones son referenciadas de la misma manera que los atributos.

 

ActionsandValidations46

 

5. Defina la acción alterna (Si no), que se ejecutará cuando no se cumpla la condición.

Cambie la visibilidad para Fecha de Salida a verdadero.

 

 

ActionsandValidations47

 

Así se comportará el Portal de Trabajo de acuerdo a los valores ingresados:

 

ActionsandValidations49

 

Usar acciones para asignar valores a controles fuera de la tabla

Es posible usar acciones para definir el cambio de controles fuera de una tabla, basados en cambios o comportamientos dentro de ésta.

 

Ejemplo

En un proceso de Solicitud de Compras, se requiere calcular el Costo total de la solicitud incluyendo impuestos y descuentos.

Cuando el Precio Total de un producto de la tabla cambia o cuando el usuario borra una fila, se ejecuta una expresión para obtener el Costo total. Como queremos que solamente el control Costo total (Total Cost) sea actualizado cuando la columna Precio Total cambie o cuando el usuario borre una fila, debemos usar una acción.

 

 

Action68

 

1. Cree la Acción.

Seleccione Acciones y Validaciones y agregue una nueva Acción.

Como estamos incluyendo controles FUERA de la tabla en esta acción, el contexto debe ser Forma.

 

2. Incluya la condición.

Dé clic en Agregue una condición y seleccione la tabla de la columna en el campo de controles. La opción Cambiar estará disponible para identificar cuándo cambia este campo. Agregue también, una acción para identificar cuándo se ha eliminado un registro.

 

Action69

 

La condición será

Requested Products.Total Price cambia

   ó Requested Products ha eliminado un registro

 

 

Action70

 

3. Incluya la acción (Entonces).

Dé clic en Agregue una acción y defina qué va a pasar cuando se cumpla la condición anterior.

Seleccione ejecutar regla como comando y después encuentre la regla en el editor de expresiones.

 

Action71

 

En este caso, la regla para calcular el total de la solicitud se llama Calcular Costo Total (Calculate Total Cost).

La acción debe ser Execute rule Calculate Total Cost

 

Action72

 

 

4. Actualice los controles afectados.

Dé clic en agregar una acción y defina los controles que van a ser actualizados después  de la ejecución de la regla. Para esto, use el comando Actualizar.

 

En este caso, el control a refrescar es Costo Total (Total Cost).

Actualizar Total Cost.

 

 

Action73

 

 

 

5. Defina la acción Entonces. En este caso, no se ejecutará ninguna acción cuando NO se cumpla la condición, por lo tanto, deje esta opción en No hacer nada.

 

 

Action74