Partilhar via


Criar ou unir ramificações paralelas com ações de fluxo de trabalho nos Aplicativos Lógicos do Azure

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

Por padrão, suas 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, você pode criar ramificações paralelas e, em seguida , unir essas ramificações posteriormente 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 diagrama de alto nível:

A captura de tela mostra um diagrama conceitual de alto nível com ramificações paralelas que mais tarde se juntam ao fluxo de trabalho.

Gorjeta

Se o gatilho do fluxo de trabalho receber uma matriz e você quiser executar uma instância de fluxo de trabalho para cada item na matriz, em vez de criar ramificações paralelas, você poderá desagrupar essa matriz usando a propriedade de gatilho SplitOn.

Pré-requisitos

  • Uma subscrição do Azure. Se não tiver uma subscrição, inscreva-se numa conta do Azure gratuita.

  • Um fluxo de trabalho de aplicativo lógico que começa com um gatilho e as ações desejadas. Certifique-se de que seu fluxo de trabalho inclua as ações entre onde você deseja adicionar uma ramificação paralela.

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

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

  • Seu 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 aplicativo lógico padrão e fluxo de trabalho no designer.

  2. Entre as ações em que você deseja adicionar uma ramificação paralela, mova o ponteiro sobre a seta de conexão.

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

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

  4. Agora, 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 o fluxo de trabalho padrão com a caixa de pesquisa chamada Escolha uma operação.

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

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

  5. 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 o fluxo de trabalho padrão e como adicionar outra ação à mesma ramificação paralela.

  6. Na caixa de pesquisa Escolha uma operação, localize e selecione a ação desejada.

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

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

Para mesclar ramificações novamente, junte suas ramificações paralelas.

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

Se você estiver trabalhando na visualização de código, poderá definir a estrutura paralela na definição JSON do fluxo de trabalho do seu aplicativo lógico, por exemplo:

{
  "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, sob todas as ramificações, basta adicionar 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 padrão e fluxo de trabalho com as ramificações paralelas que você deseja associar ao designer.

  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 o fluxo de trabalho padrão 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 o fluxo de trabalho padrão, 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. No painel Configurações, em Executar após, abra a lista Selecionar ações e selecione a última ação em cada ramificação que deve ser concluída antes que a ação de associação seja executada.

    Você está efetivamente especificando que a ação de associação é executada somente depois que todas as ações selecionadas terminam de ser executadas.

    A captura de tela mostra o fluxo de trabalho padrão, 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, por exemplo:

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

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

Se você estiver trabalhando na visualização de código, poderá definir a ação de junção na definição JSON do fluxo de trabalho do seu aplicativo lógico, por exemplo:

{
  "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": {}
}

Próximos passos