Orchestrator

Looping

El contenido se traduce automáticamente del inglés por Phrase Language AI.

Los bucles se pueden implementar dentro de un flujo de trabajo para repetir un conjunto de tareas basadas en condiciones definidas.

Los bucles se ejecutan en secuencia. Un máximo de 4 pasos pueden ejecutarse en paralelo.

La configuración del bucle se accede en la pestaña Avanzado de la configuración de un bloque, o haciendo clic derecho en un bloque y seleccionando Editar bucle.

La configuración del bucle requiere una lista de cosas sobre las que operar:

  • Valores simples y únicos, que luego son utilizables en parámetros de tarea como {{ @item }}.

  • Un objeto .JSON donde cada elemento en el objeto puede ser dirigido por su clave como {{ @item.key }}.

Accediendo a los resultados agregados de un bucle

La salida de todas las iteraciones se puede acceder como un array .JSON una vez que se completa un bucle. La salida de cada iteración debe ser un archivo .JSON válido.

Hay cuatro tipos de bucles que se pueden definir y se seleccionan en el campo bucles_con:

  • conSecuencia

  • conElementos

  • conElementosComplejos

  • withParam

conSecuencia

El bucle conSecuencia permite una iteración sobre una secuencia de números o la generación de un rango de valores dentro de un flujo de trabajo.

Se puede usar para repetir un conjunto de pasos un número específico de veces o realizar operaciones basadas en un rango de valores.

Para crear un bucle de muestra conSecuencia, sigue estos pasos:

  1. Selecciona un bloque vacío y abre la configuración Bucle.

  2. Haga clic en Editar bucle.

    Las opciones de configuración de bucle_con se presentan.

  3. Desde el campo bucle_con, seleccione conSecuencia.

  4. Ingrese el número de iteraciones del bucle en el campo Contar.

  5. Opcionalmente, ingrese un valor desde el cual el bucle debería comenzar y/o terminar.

  6. Haga clic en Guardar bucle.

  7. Desde la configuración de Parámetros, haga clic en Editar parámetros.

    Se presentan las opciones de configuración.

  8. En el campo Mensaje, ingrese {{ @item }} y haga clic en Guardar parámetros.

    Este valor se convertirá en tiempo de ejecución.

Por ejemplo, si el conteo se establece en 3 y el valor inicial es 2, los resultados de este bucle serán:

  • lista de bucles => ["2", "3", "4"]

  • {{ @item }} => 2 o 3 o 4, basado en la iteración

conElementos

El bucle conElementos permite la iteración sobre una lista de elementos.

Se puede usar cuando se necesitan realizar operaciones basadas en una lista de elementos.

Para crear un bucle de muestra conElementos, siga estos pasos:

  1. Selecciona un bloque vacío y abre la configuración Bucle.

  2. Haga clic en Editar bucle.

    Las opciones de configuración de bucle_con se presentan.

  3. Desde el campo bucle_con, seleccione conElementos

  4. Ingrese en en el campo variable y haga clic en +Elemento (se crea otro campo variable).

  5. Ingrese de en el segundo campo variable y cree un tercer campo.

  6. Ingrese fr en el tercer campo variable y cree un cuarto campo.

  7. Ingrese us en el cuarto campo variable.

  8. Haga clic en Guardar bucle.

  9. Desde la configuración de Parámetros, haga clic en Editar parámetros.

    Se presentan las opciones de configuración.

  10. En el campo Mensaje, ingrese {{ @item }} y haga clic en Guardar parámetros.

    Este valor se convertirá en tiempo de ejecución.

Los resultados de este bucle serán una iteración sobre una lista de códigos de idioma:

  • lista de bucles => ["en", "de", "fr", "ua"]

  • {{ @item }} => en o de .. ua

conElementosComplejos

El bucle conElementosComplejos permite iterar sobre una lista de objetos.

Se puede usar cuando se necesitan realizar operaciones basadas en una lista de elementos complejos.

Para crear un bucle de muestra conElementosComplejos, siga estos pasos:

  1. Selecciona un bloque vacío y abre la configuración Bucle.

  2. Haga clic en Editar bucle.

    Las opciones de configuración de bucle_con se presentan.

  3. Desde el campo bucle_con, seleccione conElementosComplejos

  4. Haga clic en +Clave:valor para agregar una segunda clave.

  5. Para Objeto 1, ingrese lo siguiente:

    • Clave: Value1

      • clave (opcional): nombre

      • (opcional): Proyecto 1

    • Clave: Value2

      • clave (opcional): id

      • (opcional): 11

  6. Haga clic en +Objeto para agregar un segundo objeto y +Clave:valor para una segunda clave.

  7. Para Objeto 2, ingrese lo siguiente:

    • Clave: Value1

      • clave (opcional): nombre

      • (opcional): Proyecto 2

    • Clave: Value2

      • clave (opcional): id

      • (opcional): 22

    Ejemplo de configuración:

    Loop with Complex Items Example
  8. Desde la configuración de Parámetros, haga clic en Editar parámetros.

    Se presentan las opciones de configuración.

  9. En el campo Mensaje, ingrese {{ @item.name }} y haga clic en Guardar parámetros. Este valor se convertirá en tiempo de ejecución.

Los resultados de este bucle serán una iteración sobre una lista de proyectos:

  • lista de bucles =>

    [
      {
        "name": "Proyecto 1",
        "id": 11
      },
      {
        "name": "Proyecto 2",
        "id": 22
      }
    ]
  • {{ @item }} =>

    {
      "name": "Proyecto 1",
      "id": 11
    }
  • {{ @item.name }} => Proyecto 1

  • {{ @item.id }} => 11

withParam

El bucle conParam permite la iteración sobre una lista dinámica que se genera a partir de cualquier tarea o desencadenador anterior.

Este bucle se utiliza solo como referencia en el campo de parámetros.

Ejemplo:

Salidas de la tarea (Cadenas: Publicar una versión):

{
  "created_at": "2015-01-28T09:52:53Z",
  "entornos": ["desarrollo", "producción"],
  "id": "abcd1234cdef1234abcd1234cdef1234",
  "locales": [
    {
      "código": "en-GB",
      "id": "abcd1234cdef1234abcd1234cdef1234",
      "name": "English"
    },
    {
      "id": "abcd5678cdef5678abcd5678cdef5678",
      "name": "Alemán",
      "code": "de_DE"
    }
  ],
  "platforms": ["android"],
  "project": {
    "created_at": "2015-01-28T09:52:53Z",
    "id": "abcd1234cdef1234abcd1234cdef1234",
    "main_format": "xml",
    "name": "Mi Proyecto de Android",
    "updated_at": "2015-01-28T09:52:53Z"
  },
  "updated_at": "2015-01-28T09:52:53Z",
  "versión": 1
}

Si la configuración del bucle conParam está establecida con {{ $.locales }}, entonces:

  • lista de bucles =>

    [
      {
        "código": "en-GB",
        "id": "abcd1234cdef1234abcd1234cdef1234",
        "name": "English"
      },
      {
        "id": "abcd5678cdef5678abcd5678cdef5678",
        "name": "Alemán",
        "code": "de_DE"
      }
    ]
  • Primero {{ @item }} =>

    {
      "código": "en-GB",
      "id": "abcd1234cdef1234abcd1234cdef1234",
      "name": "English"
    }
  • {{ @item.code }} => en-GB

  • {{ @item.name }} => Inglés

O si {{ $.environments }} es referenciado, entonces:

  • lista de bucles => ["desarrollo", "producción"]

  • {{ @item }} => desarrollo o producción

¿Fue útil este artículo?

Sorry about that! In what way was it not helpful?

The article didn’t address my problem.
I couldn’t understand the article.
The feature doesn’t do what I need.
Other reason.

Note that feedback is provided anonymously so we aren't able to reply to questions.
If you'd like to ask a question, submit a request to our Support team.
Thank you for your feedback.