Para ejecutar un comando o grupo de comandos en una cadena repetidamente, configure un iterador.
Nota: Para convertir una salida de una base de datos relacional o un servicio web externo a una matriz JSON para usar con un iterador, use el comando CSV a JSON ] del conector JSON o una variableJSON transformación.
Configurar un iterador
Con un iterador, puedes repetir un comando o grupo basándose en:
- Una lista estática o dinámica de valores.
- Un número exacto de valores.
- Según si existe una condición
Un iterador puede repetir un comando o grupo sobre:
- Una lista estática de valores, como regiones o entidades.
- Una lista de valores dinámica o variable, como la de un archivo cargado como recurso del espacio de trabajo o el resultado de un comando anterior en la cadena.
Nota: Un comando o grupo está limitado a 1000 iteraciones.
Para ejecutar un iterador sobre una lista de valores:
- En la cadena, seleccione el comando o grupo para ejecutar repetidamente y haga clic en Editar .
- En la pestaña Iteraciones , habilite Iterador .
- En Seleccione el tipo de modificador, seleccione Lista.
- Introduzca los valores de las iteraciones:
- Para una lista estática, ingrese el valor para cada iteración, presionando Enter después de cada una.
- Para obtener una lista dinámica, seleccione la salida del comando anterior con los valores a usar.
- Para una lista estática, ingrese el valor para cada iteración, presionando Enter después de cada una.
Un iterador puede repetir un comando o grupo sobre un número exacto de valores, como un total de páginas generadas por un comando anterior en la cadena.
Paso 1. Configure una variable para el valor numérico
Para indicar el número de iteraciones, cree una variable de cadena dinámica:
- En la cadena, agrega una variable dinámica para el número de iteraciones, como Counter, sin valor inicial.
- Para establecer el valor inicial de la variable cuando se ejecuta la cadena, después del comando que genera el número de iteraciones, agregue un evento Establecer variable de cadena dinámica :
- Seleccione la variable dinámica creada para el número de iteraciones.
- En Valore ingrese su valor inicial, como 1.
Paso 2. Agrega un grupo de comandos
Para indicar los comandos a iterar y la regla de iteración, agregue un grupo de comandos:
- Después del evento Establecer variable de cadena dinámica, agregue Grupo de comandosy arrastre un vínculo entre ellos.
- Seleccione el grupo y haga clic en Editar.
- En la pestaña Iteraciones
del grupo, habilite Iterador . - En Seleccione el tipo de modificador, seleccione Repetir hasta.
- Haga clic en + Regla, seleccione un tipo de datos flotante y especifique cuándo detener las iteraciones. Por ejemplo, para iterar en función de la salida Total de registros de un comando anterior, establezca una regla para detener las iteraciones cuando el valor de la variable sea mayor que (>) la salida Total de registros.
- Agregue los comandos para iterar al grupo.
Paso 3. Agregue un evento para incrementar el valor de la variable
Para incrementar el valor de la variable con cada iteración:
- Como último paso del grupo, agregue otro evento Establecer variable de cadena dinámica :
- Seleccione la variable dinámica creada para el número de iteraciones.
- En Valor, seleccione la misma variable.
- Para transformar el valor, haga clic en la variable en Valory agregue una transformación Número de análisis.
- Agregue una transformación Agregar con un valor de 1 y haga clic en Aceptar.
Si se desconocen los valores o el número exacto de valores, puede iterar en función de si se cumplen condiciones específicas. Por ejemplo, puede repetir un comando mientras exista un criterio específico o hasta que exista.
Paso 1. Configurar variables para los valores condicionales
Para representar las condiciones que indican valores sobre los que iterar, cree variables de cadena dinámicas. Por ejemplo, si un comando proporciona una salida de clave booleana para indicar si su respuesta contiene páginas adicionales y un parámetro de desplazamiento de número entero para identificar cada página, cree variables para estos valores:
- En la cadena, agrega una variable dinámica para cada condición, sin valor inicial.
- Para establecer los valores iniciales de las variables cuando se ejecuta la cadena, después del comando que genera los valores de las condiciones, agregue un Establecer variable de cadena dinámica evento, seleccione las variables dinámicas e ingrese sus valores iniciales.
Por ejemplo, ingrese el valor de la clave booleana como Verdadero y el valor de compensación como 0.
Paso 2. Agrega un grupo de comandos
Para indicar los comandos a iterar y la regla de iteración, agregue un grupo de comandos:
- Después del evento Establecer variable de cadena dinámica, agregue Grupo de comandosy arrastre un vínculo entre ellos.
- Seleccione el grupo y haga clic en Editar.
- En la pestaña Iteraciones
del grupo, habilite Iterador . - En Seleccione el tipo de modificador, seleccione Repetir hasta.
- Haga clic en + Reglay especifique cuándo detener las iteraciones, como cuando la clave booleana es Falsa.
- Agregue los comandos para iterar al grupo.
Paso 3. Establecer valores de variables con cada iteración
Como último paso del grupo, agregue otro evento Establecer variable de cadena dinámica para establecer o incrementar los valores de las variables con cada iteración.
- Para establecer valores de variables, asigne cada variable a sus respectivas salidas del comando anterior. Por ejemplo, para la variable booleana, seleccione la salida de la clave booleana; para la variable Desplazamiento, el parámetro de desplazamiento entero.
- Para incrementar una variable, como Offset, haga clic en su valor y luego aplique una transformación Parse Number y una transformación Add con el valor a incrementar con cada iteración.
Salidas del iterador
Puede utilizar la salida de un iterador como propiedad para otros comandos o eventos posteriores en la cadena. Las salidas dependen del modificador del iterador:Lista o Repetir hasta.
Resultado | Descripción |
---|---|
Iteración de comando o iteración de grupo | El valor de la variable de la iteración procesada en el bucle. |
Índice | El recuento de base cero para indicar la iteración procesada en el bucle. |
Primera iteración |
Un valor booleano para especificar si la iteración procesada es la primera en el bucle. |
Última iteración | Solo para un iterador Lista, un valor booleano para especificar si la iteración procesada es la última en el bucle |
iteraciones totales | Solo para un iterador List, un recuento de base cero del total de iteraciones procesadas por el bucle |
Para usar una salida como propiedad para otro comando o evento, selecciónela en Iterador de comando o Iterador de grupo, respectivamente.