For Each

A ferramenta For Each permite processar cada item em uma coleção, um de cada vez. Isso é importante para operações em lote nas quais vários itens precisam de manipulação similar.

Automatizar o processamento de vários itens reduz a intervenção manual, aumentando assim a eficiência e a consistência no processamento de dados.

Considere a integração de uma plataforma de E-commerce com um CRM. Para cada cliente que faz uma compra na plataforma, você deseja:

  • Adicionar os dados do cliente ao CRM.

  • Enviar um email de boas-vindas.

Nesta integração, o For Each lida com vários clientes em um único pedido. Ele garante que, para cada cliente encontrado nos detalhes do pedido, as ações subsequentes (adicionar ao CRM e enviar um e-mail) sejam realizadas individualmente.

Em seguida, aprenda como adicionar o For Each ao canvas e como configurar seu formulário.

Adicione o For Each ao canvas

  1. Clique no ícone ícone de ferramenta com sinal de mais no menu de edição à esquerda.

  2. Selecione o For Each para adicioná-lo ao canvas. Você pode usar a barra de pesquisa search steps icon para encontrá-lo.

  3. Arraste para dentro do quadro do For Each os steps (exceto trigger) que serão iterados (repetidos).

Para remover steps de dentro do For Each sem excluí-los do canvas, há dois botões:

  • Detach: desvincula um único step. Selecione o step que deseja desvincular e clique no terceiro botão à direita.

  • Ungroup: desagrupa todos os steps e deixa o quadro do For Each vazio. Selecione o quadro do For Each e clique no terceiro botão à direita.

Para excluir o For Each do canvas, selecione-o e clique no botão icone lixeira. Todos os steps dentro do For Each serão excluídos e as conexões serão removidas.

O ícone de alerta icone alerta do quadro For Each só desaparece se houver:

  • Ao menos um step dentro do For Each;

  • A conexão de entrada, à esquerda;

  • A conexão de saída, à direita.

alerta for each

Configure o formulário

  1. Selecione o For Each no canvas.

  2. Clique no ícone de edição icone lapis.

  3. Preencha os seguintes campos do formulário:

    • Name: insira um nome único para o For Each. Este é um campo alfanumérico que permite caracteres especiais e espaços vazios, com limite de 20 caracteres.

    • Variable List: insira a lista de variáveis a serem executadas. Os valores devem ser um array (lista). Este é um campo alfanumérico que permite caracteres especiais e espaços vazios, com limite de 1024 caracteres.

      Ao clicar no ícone de Properties icone de lista à direita, você pode:
      a. Selecionar variáveis previamente cadastradas.
      b. Criar expressões usando o Expression Builder.
    • Iteration Element: nome da estrutura que identifica os elementos dentro do For Each. Este é um campo alfanumérico que permite caracteres especiais e espaços vazios, com limite de 250 caracteres.

      Você poderá visualizar o nome cadastrado em Properties ou no Data Mapping (FROM/TO) dos steps que estiverem dentro do For Each.
      A quantidade de iterações é determinada pela quantidade de itens do array (lista).
  4. Configure o botão Ignore Errors: por padrão, o botão é desabilitado e você pode habilitá-lo.

    Habilitado switch Desabilitado switch off

    A execução continua, mesmo que haja erros no processo.

    A execução será interrompida imediatamente.

    Os logs apresentam o step com erro.

    Os logs mostram a execução até a última iteração.

    Steps após o For Each serão executados.

    Nenhum step após o For Each será executado.

  5. Clique em SAVE.

formulario for each
Consulte um exemplo de integração com CRM e For Each.

For Each dentro de outro For Each

Você pode inserir um For Each dentro de outro For Each. Dessa forma, seu fluxo de integração processará dados em estruturas com loops aninhados.

Considere a integração entre uma plataforma de E-commerce e um sistema de gestão de estoque. Cada pedido contém múltiplos itens e, para cada item, você precisa atualizar os níveis de estoque.

  • Pedido 1: Item 1, Item 2, Item 3.

  • Pedido 2: Item 1, Item 2.

  • Pedido 3: Item 1, Item 2, …​, Item 10.

  • O For Each externo é responsável por iterar através de cada pedido, garantindo que cada pedido seja processado um de cada vez.

  • O For Each interno opera dentro do contexto de um único pedido, iterando através de cada item naquele pedido para realizar operações necessárias, como atualizar níveis de estoque.

Esta seria uma representação visual desta integração:

diagram for each ext int
Para mover um step entre dois quadros de For Each, você deverá desanexá-lo do For Each inicial. Para isso, clique em X e arraste-o para o novo For Each.

Ignorando erros

Quando um fluxo possui um For Each dentro de um For Each, as seguintes regras se aplicam ao botão Ignore Errors:

"Ignore Errors" no For Each externo "Ignore Errors" no For Each interno Resultado

Desabilitado

Desabilitado

O fluxo será interrompido quando ocorrer um erro.

Habilitado

Habilitado

O fluxo NÃO será interrompido quando ocorrer um erro.

Habilitado

Desabilitado

Ocorrerá a execução de toda a iteração do For Each externo.

Desabilitado

Habilitado

O fluxo NÃO será interrompido quando ocorrer um erro.

Expression Builder

O componente Expression Builder permite que você crie expressões com parâmetros e variáveis através de funções e condições disponíveis dentro do componente. Assim, você pode ajustar a expressão conforme suas necessidades.

Siga os passos abaixo para acessar a tela do Expression Builder:

  1. Clique no ícone de Properties icone de lista, à direita do campo Variable List.

  2. Em seguida, clique no ícone icone de expressão no canto superior direito.

expression builder for each

A tela de Expression Builder contém as seguintes seções:

  • Properties: mostra os dados dos steps anteriores e as variáveis de ambiente. Você pode filtrar os atributos usando o campo de busca no topo da seção e clicando em icone lupa. Você pode selecionar mais de um atributo. Ao selecioná-lo, o atributo aparece no campo Expression.

  • Expression: campo para inserir os atributos de entrada ou criar uma expressão clicando no botão botao fx à direita. Apenas a função Concat está disponível para criar a expressão.

Ao selecionar dois ou mais atributos no campo Properties, será obrigatória a criação de uma expressão.

Para salvar as informações, clique em CONFIRM.

Thanks for your feedback!
EDIT

Share your suggestions with us!
Click here and then [+ Submit idea]