Elemento Iterate over XPath

<< Click to Display Table of Contents >>

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

Elemento Iterate over XPath

Introducción

Iterate over XPath permite realizar iteraciones (o ciclos) sobre una expresión XPath que tiene una colección, es decir, una relación uno-a-muchos.

Es posible acceder a cada una de los registros en la relación de forma individual para realizar operaciones tales como modificar registros de la relación, o realizar cálculos y validaciones. 

También es posible realizar filtros sobre la colección para solo trabajar sobre algunos registros.

 

 

¿Qué se debe hacer en Bizagi?

1. Crear una expresión de Scripting

2. Declarar una variable para almacenar los elementos de la colección.

3. Incluir un elemento Iterate over XPath donde se define la colección XPath a iterar y se incluyen los filtros si se necesitan.

4. Durante la iteración del ciclo incluya una elemento de expresión para realizar los cálculos requeridos.

5. Guarde la regla.

 

 

Ejemplo

En el siguiente escenario, usted trabaja en el departamento de crédito de un banco. Dos solicitantes solicitan el análisis de su capacidad de crédito para comprobar si califican para un crédito. El banco realiza el análisis financiero y evalúa la capacidad de pago de cada uno de los solicitantes.

La entidad de proceso es Solicitud. Cada solicitud puede tener varios solicitantes, por lo que es necesario definir una relación uno a muchos entre la entidad Solicitud y Solicitantes. Adicionalmente cada solicitante tiene una descripción de la capacidad financiera del momento en que se realiza la solicitud.

Una regla debe evaluar cada solicitante en cuanto a sus ingresos, salario fijo y salario variable. La regla calcula los ingresos totales.

 

Business Rules Elements18

 

 

1. Cree una regla Al Salir de la actividad donde se ingresa la información.

 

2. Declare las siguientes variables:

Applicant (object) para guardar la colección de registros.

MonthlyBaseIncome (int) para guardar el valor del ingreso base para futuros cálculos.

MonthlyVarIncome (int) para guardar el valor del ingreso variable para futuros cálculos.

TotalIncome (int) para guardar el ingreso total.

 

Business Rules Elements19

 

 

3.Incluya el elemento Iterate over XPath.

Seleccione la variable Applicant para guardar la colección de registros.

Seleccione la colección XPath. En este caso seleccione Request.Applicants.

 

Business Rules Elements20

 

4. Incluya un elemento de expresión para calcular el ingreso total.

 

Business Rules Elements21

 

 

Ingrese el siguiente código en la ventada de edición de la expresión:

 

MonthlyBaseIncome = Applicant.getXPath("CustomerSnapshot.MonthlyBaseIncome");
MonthlyVarIncome = Applicant.getXPath("CustomerSnapshot.MonthlyVariableIncome");
TotalIncome=0;
if(!BAIsBlank(MonthlyBaseIncome))
  TotalIncome = TotalIncome + MonthlyBaseIncome
if (!BAIsBlank(MonthlyVarIncome))
  TotalIncome = TotalIncome + MonthlyVarIncome
Applicant.setXPath("CustomerSnapshot.MonthlyTotalIncome", TotalIncome);

 

Note que la variable Applicant se utiliza para consultar y para asignar registros de forma individual

Variable.getXPath("attribute within the collection");

 

Variable.setXPath("attribute within the collection", value to set);

 

Si la colección XPath tiene filtros, la iteración, y la modificación de los registros solamente se realizará sobre los registros que cumplen la condición del filtro.