Partilhar via


Criar ou associar ramificações paralelas de ações de fluxo de trabalho em Aplicativos Lógicos do Azure

Aplica-se a: Aplicativos Lógicos do Azure (Consumo + Padrão)

Por padrão, as ações em um fluxo de trabalho de aplicativo lógico são executadas sequencialmente. Para organizar ações em ramificações separadas e executá-las ao mesmo tempo, crie ramificações paralelas. Você pode ingressar nessas ramificações mais tarde em seu fluxo de trabalho.

Este guia mostra como criar ramificações paralelas em um fluxo de trabalho e reingressar nessas ramificações, conforme mostrado neste fluxo de trabalho de exemplo:

A captura de tela mostra um exemplo de fluxo de trabalho com ramificações paralelas que depois se mesclam.

Gorjeta

Em cenários em que você tem um gatilho de fluxo de trabalho que recebe e retorna matrizes e deseja que uma instância de fluxo de trabalho separada seja executada para cada item de matriz, você pode desagrupar a matriz como uma alternativa à ramificação. Nos gatilhos que suportam esse recurso, no designer, você pode ativar a configuração Dividir em , que mapeia para uma splitOn propriedade na definição de gatilho. Somente gatilhos que podem aceitar e retornar matrizes oferecem suporte a esse recurso. Para obter mais informações, consulte Desencadear várias execuções numa matriz.

Pré-requisitos

Considerações para trabalhar com ramificações paralelas

  • Uma ramificação paralela é executada somente quando o valor da sua propriedade runAfter é igual ao status concluído da ação pai. Por exemplo, ambas as ramificações branchAction1 e branchAction2 são executadas somente quando parentAction é concluído com o status Succeeded .

  • O fluxo de trabalho aguarda a conclusão de todas as ramificações paralelas no mesmo nível antes de executar a ação que une essas ramificações.

Adicionar uma ação de ramificação paralela

  1. No portal do Azure, abra seu recurso de aplicativo lógico.

  2. Com base se tem uma aplicação lógica de Consumo ou Padrão, siga o passo correspondente.

    • Consumo

      • Na barra lateral do recurso, em Ferramentas de Desenvolvimento, selecione o designer para abrir o fluxo de trabalho.
    • Standard

      1. Na barra lateral do recurso, em Fluxos de trabalho, selecione Fluxos de trabalho.

      2. Na página Fluxos de trabalho , selecione um fluxo de trabalho.

      3. Na barra lateral do fluxo de trabalho, em Ferramentas, selecione o designer para abrir o fluxo de trabalho.

  3. Entre as ações em que você deseja adicionar uma ramificação paralela, passe o mouse sobre a seta de conexão.

  4. Selecione o sinal de adição (+) que aparece e, em seguida, selecione Adicionar uma ramificação paralela.

    A captura de tela mostra um fluxo de trabalho com o sinal de adição selecionado e a opção selecionada, Adicionar uma ramificação paralela.

  5. Adicione a ação que você deseja executar na ramificação paralela. Na caixa Adicionar um painel de ação e pesquisa, localize e selecione a ação desejada.

    A captura de tela mostra um fluxo de trabalho com a caixa de pesquisa chamada Escolha uma operação.

    A ação selecionada agora aparece na ramificação paralela:

    A captura de tela mostra um fluxo de trabalho, ramificação paralela e ação selecionada anteriormente.

  6. Para adicionar outra ação à ramificação paralela, na ação em que pretende adicionar uma nova ação, selecione o sinal de adição (+) e, em seguida, selecione Adicionar uma ação.

    A captura de tela mostra um fluxo de trabalho e como adicionar outra ação à mesma ramificação paralela.

  7. Na caixa Adicionar um painel de ação e pesquisa, localize e selecione a ação desejada.

    Sua ação selecionada agora aparece dentro da ramificação atual:

    A captura de tela mostra um fluxo de trabalho com ação sequencial adicionada.

Para unir as ramificações, junte suas ramificações paralelas, conforme descrito numa seção seguinte.

Definição de ramificação paralela (JSON)

Na visualização de código, você pode definir a estrutura paralela na definição JSON do fluxo de trabalho do seu aplicativo lógico.

{
  "triggers": {
    "myTrigger": {}
  },
  "actions": {
    "parentAction": {
      "type": "<action-type>",
      "inputs": {},
      "runAfter": {}
    },
    "branchAction1": {
      "type": "<action-type>",
      "inputs": {},
      "runAfter": {
        "parentAction": [
          "Succeeded"
        ]
      }
    },
    "branchAction2": {
      "type": "<action-type>",
      "inputs": {},
      "runAfter": {
        "parentAction": [
          "Succeeded"
        ]
      }
    }
  },
  "outputs": {}
}

Junte-se a ramificações paralelas

** Para mesclar ramificações paralelas em todas as ramificações, adicione outra ação. Esta ação é executada somente depois que todas as ramificações paralelas anteriores terminam de ser executadas.

  1. No portal do Azure, abra seu aplicativo lógico e fluxo de trabalho conforme descrito no procedimento anterior.

  2. Em qualquer uma das ramificações paralelas às quais pretende aderir, selecione o sinal de adição (+) e, em seguida, selecione Adicionar uma ação.

    A captura de tela mostra um fluxo de trabalho com o sinal de adição selecionado.

  3. Na caixa Adicionar um painel de ação e pesquisa, localize e selecione a ação que deseja usar para ingressar nas ramificações.

    A captura de tela mostra um fluxo de trabalho, a caixa de pesquisa chamada Escolha uma operação e as ações disponíveis para unir ramificações paralelas.

  4. No designer, selecione a ação adicionada anteriormente. Depois que o painel de informações da ação for aberto, selecione Configurações.

  5. Na guia Configurações , em Executar após, abra a lista Selecionar ações . Selecione a última ação em cada ramificação que deve ser concluída antes da execução da ação de associação.

    A ação de junção é executada somente depois que todas as ações selecionadas terminam de ser executadas.

    A captura de tela mostra um fluxo de trabalho, a ação que une ramificações paralelas anteriores e as ações selecionadas para concluir a execução pela primeira vez.

    Quando terminar, a ação selecionada aparecerá sob as ramificações paralelas às quais você deseja ingressar:

    A captura de tela mostra um fluxo de trabalho com a ação que une as ramificações paralelas anteriores.

Definição de junção (JSON)

Na visualização de código, você pode definir a ação de junção na definição JSON do fluxo de trabalho do aplicativo lógico.

{
  "triggers": {
    "myTrigger": { }
  },
  "actions": {
    "parentAction": {
      "type": "<action-type>",
      "inputs": { },
      "runAfter": {}
    },
    "branchAction1": {
      "type": "<action-type>",
      "inputs": { },
      "runAfter": {
        "parentAction": [
          "Succeeded"
        ]
      }
    },
    "branchAction2": {
      "type": "<action-type>",
      "inputs": { },
      "runAfter": {
        "parentAction": [
          "Succeeded"
        ]
      }
    },
    "joinAction": {
      "type": "<action-type>",
      "inputs": { },
      "runAfter": {
        "branchAction1": [
          "Succeeded"
        ],
        "branchAction2": [
          "Succeeded"
        ]
      }
    }
  },
  "outputs": {}
}