Conecta-seEntrar na plataforma

Laço

Repete os blocos de dentro do contêiner várias vezes ou para cada item de uma lista.

Lógica e processamentoRecurso internoConexão: Sem conexão externa obrigatória

O que faz

O Laço é um contêiner: os blocos colocados dentro dele são executados de novo a cada repetição, um número fixo de vezes, para cada item de uma lista ou enquanto uma condição for verdadeira. Quando todas as repetições terminam, o fluxo segue com a lista de resultados.

Quando usar: Use quando a mesma sequência de etapas precisa rodar para cada pedido, cliente ou linha de uma consulta, ou um número fixo de vezes.

Exemplo de situação: Enviar uma mensagem para cada cliente devolvido por uma consulta ao banco.

O nome Loop é reservado. Se renomear o contêiner, use outro nome (por exemplo, “Cada cliente”) e ajuste as referências.

Antes de começar

Conexão necessária: Sem conexão externa obrigatória.

Escolha o tipo: repetir N vezes, para cada item de uma lista, enquanto uma condição for verdadeira ou faça enquanto.

Passo a passo

  1. Na aba Blocos, arraste Laço para o desenho.
  2. Escolha o tipo: repetir N vezes, para cada item de uma lista, enquanto uma condição for verdadeira ou faça enquanto.
  3. Informe a quantidade de repetições, a lista (ex.: <postgresql.rows>) ou a condição, conforme o tipo.
  4. Arraste para dentro do contêiner os blocos que devem repetir e ligue-os ao ponto de início dele.
  5. Ligue a saída do contêiner à etapa que deve receber o resultado de todas as repetições.
  6. Execute com poucos itens primeiro e confira cada repetição no terminal.

Operações

OperaçãoO que faz
Repetir N vezesExecuta os blocos de dentro um número fixo de vezes.
Para cada itemExecuta os blocos de dentro uma vez para cada item da lista informada.
EnquantoRepete enquanto a condição for verdadeira, testando antes de cada repetição.
Faça enquantoExecuta ao menos uma vez e repete enquanto a condição for verdadeira.

Campos

Mostrar campos de
  • Tipo de laço

    Obrigatório

    Escolhe como as repetições são controladas.

    Opções:
    Repetir N vezes · Para cada item · Enquanto · Faça enquanto
    Padrão:
    Repetir N vezes
  • Iterações do laço

    Obrigatório conforme a operação

    Quantas vezes os blocos de dentro devem executar.

    Aparece em:
    Repetir N vezes
    Padrão:
    5
    Exemplo:
    10
  • Itens da coleção

    Obrigatório conforme a operação

    Lista percorrida pelo laço. Pode ser uma referência a uma lista de outro bloco ou uma lista JSON.

    Aparece em:
    Para cada item
    Exemplo:
    <postgresql.rows>
  • Condição de parada

    Obrigatório conforme a operação

    Expressão avaliada a cada repetição; o laço continua enquanto ela for verdadeira.

    Aparece em:
    Enquanto, Faça enquanto
    Exemplo:
    <loop.index> < 3

Saídas

Para usar um resultado deste bloco em uma etapa seguinte, digite < no campo e escolha o bloco e o campo. A referência tem o formato <loop.index>: antes do ponto vai o nome do bloco no seu fluxo, em minúsculas, sem espaços e sem acentos.

ReferênciaTipoO que contém
<loop.index>numberNúmero da repetição atual, começando em 0. Disponível só para os blocos de dentro.
<loop.currentItem>anyItem da lista que está sendo processado na repetição atual (tipo Para cada item).
<loop.items>arrayLista completa que o laço está percorrendo.
<loop.results>arrayResultados de todas as repetições, disponíveis para a etapa ligada depois do contêiner.

Exemplo de uso

Objetivo: Enviar uma mensagem para cada cliente devolvido por uma consulta.

PostgreSQLLaço (para cada item)Enviar no canal
Tipo de laço
Para cada item
Itens da coleção
<postgresql.rows>

Os valores são ilustrativos. Teste primeiro com dados fictícios ou de homologação.

Erros comuns e como resolver

Os blocos de dentro não executam
Os blocos precisam estar dentro do contêiner e ligados ao ponto de início dele. Blocos soltos dentro do contêiner são ignorados.
A referência ao item atual chega vazia
Confira o tipo escolhido: o item atual só existe quando o contêiner percorre uma coleção. Confira também se a coleção é uma lista válida (por exemplo, a saída rows de um bloco de banco).
O resultado final veio em formato inesperado
A saída results é uma lista com o resultado de cada repetição, na ordem em que foram executadas. Use um bloco Transformar dados para juntar ou filtrar os itens.

Blocos relacionados