Orchestrator

Looping

O conteúdo de toda a Central de Ajuda é traduzido automaticamente de inglês pelo Phrase Language AI.

Os circuitos podem ser implementados em um fluxo de trabalho para repetir um conjunto de tarefas com base em condições definidas.

Os circuitos executam em sequência. No máximo 4 etapas podem ser executadas em paralelo.

A configuração de loop é acessada na aba Advanced de uma configuração de bloco, ou fazendo clique direito em um bloco e selecionando Editar loop.

Configurações de loop precisam de uma lista de coisas para trabalhar em:

  • Valores simples e simples, que podem ser usados em parâmetros de tarefa como {{ @item }}.

  • Um objeto .JSON em que cada elemento no objeto pode ser endereçado por sua chave como {{ @item.key }}.

Acesso aos resultados agregados de um circuito

A saída de todas as iterações pode ser acessada como uma matriz .JSON após a conclusão de um circuito. A saída de cada iteração deve ser um arquivo .JSON válido.

Existem quatro tipos de circuitos que podem ser definidos e são selecionados no campo loop_with:

  • withSequence

  • withItems

  • comComplexItems

  • withParam

withSequence

O circuito comSequence permite uma iteração em uma seqüência de números ou a geração de uma gama de valores em um fluxo de trabalho.

Pode ser usado para repetir um conjunto de etapas um número específico de vezes ou realizar operações com base em um intervalo de valores.

Para criar uma amostra com o circuito Sequence, siga estes passos:

  1. Selecione um bloco vazio e abra a configuração Loop.

  2. Clique Edicionar circuito.

    As opções de configuração loop_with são apresentadas.

  3. No campo loop_with, selecione comSequence.

  4. Insira o número de iterações de circuitos no campo Contar.

  5. Opcionalmente, insira um valor com o qual o circuito deve começar e/ou terminar.

  6. Clique em Gravar circuito.

  7. Na configuração de parâmetros, clique em Edicionar parâmetros.

    Opções de configuração são apresentadas.

  8. No campo Mensagem insira {{ @item }} e clique em Gravar parâmetros.

    Este valor será convertido no tempo de execução.

Por exemplo, se a contagem for definida como 3 e o valor de início for 2, os resultados desse circuito serão:

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

  • {{ @item }} => 2 ou 3 ou 4, com base na iteração

withItems

O circuito comItems permite a iteração em uma lista de itens.

Pode ser usado quando precisa realizar operações com base em uma lista de itens.

Para criar um ciclo de amostra comItems, siga estes passos:

  1. Selecione um bloco vazio e abra a configuração Loop.

  2. Clique Edicionar circuito.

    As opções de configuração loop_with são apresentadas.

  3. No campo loop_with, selecione withItems

  4. Digite en no campo variável e clique em +Item (uma outra variável é criada).

  5. Insira d no segundo campo variável e crie um terceiro campo.

  6. Insira f no terceiro campo variável e crie um quarto campo.

  7. Insira nos no quarto campo variável.

  8. Clique em Gravar circuito.

  9. Na configuração de parâmetros, clique em Edicionar parâmetros.

    Opções de configuração são apresentadas.

  10. No campo Mensagem insira {{ @item }} e clique em Gravar parâmetros.

    Este valor será convertido no tempo de execução.

Os resultados deste circuito serão uma iteração sobre uma lista de códigos de idiomas:

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

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

withComplexItems

O circuito comComplexItems permite iterar sobre uma lista de objetos.

Pode ser usado quando precisa realizar operações com base em uma lista de itens complexos.

Para criar uma amostra com o circuito ComplexItems, siga estes passos:

  1. Selecione um bloco vazio e abra a configuração Loop.

  2. Clique Edicionar circuito.

    As opções de configuração loop_with são apresentadas.

  3. No campo loop_with, selecione comComplexItems

  4. Clique +Chave:valor para adicionar uma segunda chave.

  5. Para o objeto 1, insira o seguinte:

    • Chave: Value1

      • chave (opcional): nome

      • (opcional): Projeto 1

    • Chave: Value2

      • chave (opcional): ID

      • (opcional): 11

  6. Clique +Objeto para adicionar um segundo objeto e +Chave:value para uma segunda chave.

  7. Para o objeto 2, insira o seguinte:

    • Chave: Value1

      • chave (opcional): nome

      • (opcional): Projeto 2

    • Chave: Value2

      • chave (opcional): ID

      • (opcional): 22

    Amostra de configurações:

    Loop_withComplexItems.png
  8. Na configuração de parâmetros, clique em Edicionar parâmetros.

    Opções de configuração são apresentadas.

  9. No campo Mensagem insira {{ @item.name }} e clique em Gravar parâmetros. Este valor será convertido no tempo de execução.

Os resultados desse circuito serão uma iteração em uma lista de projetos:

  • lista de loop =>

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

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

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

withParam

O circuito comParam permite a iteração em uma lista dinâmica que é saída de qualquer tarefa ou acionamento anterior.

Este circuito só é usado como referência no campo parâmetro.

Exemplo:

Saídas de tarefa (Strings: Publicar um lançamento):

{
  "created_at": "2015-01-28T09:52:53Z",
  "environments": ["development", "production"],
  "id": "abcd1234cdef1234abcd1234cdef1234",
  "locales": [
    {
      "code": "en-GB",
      "id": "abcd1234cdef1234abcd1234cdef1234",
      "name": "Inglês"
    },
    {
      "id": "abcd5678cdef5678abcd5678cdef5678",
      "name": "German",
      "code": "de_DE"
    }
  ],
  "platforms": ["android"],
  "project": {
    "created_at": "2015-01-28T09:52:53Z",
    "id": "abcd1234cdef1234abcd1234cdef1234",
    "main_format": "xml",
    "name": "Meu projeto Android",
    "updated_at": "2015-01-28T09:52:53Z"
  },
  "updated_at": "2015-01-28T09:52:53Z",
  "version": 1
}

Se as configurações de circuito comParam forem definidas com {{ $.locales }}, então:

  • lista de loop =>

    [
      {
        "code": "en-GB",
        "id": "abcd1234cdef1234abcd1234cdef1234",
        "name": "Inglês"
      },
      {
        "id": "abcd5678cdef5678abcd5678cdef5678",
        "name": "German",
        "code": "de_DE"
      }
    ]
  • Primeiro {{ @item }} =>

    {
      "code": "en-GB",
      "id": "abcd1234cdef1234abcd1234cdef1234",
      "name": "Inglês"
    }
  • {{ @item.code }} => en-GB

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

Ou se for referência a {{ $.environments }}, então:

  • loop list => ["desenvolvimento", "produção"]

  • {{ @item }} => desenvolvimento ou produção

Esse artigo foi útil?

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.