Partilhar via


Automatizar mensagens B2B entre parceiros comerciais usando fluxos de trabalho no Azure Logic Apps

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

Para integrações business-to-business (B2B), pode automatizar a comunicação entre parceiros comerciais construindo fluxos de trabalho com artefactos B2B e protocolos padrão da indústria no Azure Logic Apps.

Por exemplo, pode criar uma conta de integração para definir artefactos como parceiros comerciais, acordos, mapas e esquemas. Os fluxos de trabalho suportam protocolos como AS2, X12, EDIFACT e RosettaNet. Crie integrações de ponta a ponta combinando estas capacidades B2B com 1.400+ conectores disponíveis nas aplicações Azure Logic, como Office 365 Outlook, SQL Server e Salesforce.

Este guia mostra como criar um exemplo de fluxo de trabalho B2B que possa completar as seguintes tarefas:

  • Receber pedidos HTTPS com o gatilho Request nomeado Quando um pedido HTTP é recebido.
  • Descodificar o conteúdo da mensagem recebida com a ação de decodificação AS2 (v2) e a ação de decodificação X12 .
  • Devolva uma resposta ao chamador com a ação Resposta .

Pré-requisitos

  • Uma conta e subscrição do Azure. Crie uma conta Azure gratuita.

  • O recurso da aplicação lógica e o fluxo de trabalho em branco onde queres construir a integração B2B neste exemplo.

    As operações AS2 (v2) e X12 não incluem nenhum trigger. O seu fluxo de trabalho pode começar com qualquer gatilho ou usar qualquer ação para receber mensagens.

    Os exemplos neste artigo utilizam o gatilho de pedido chamado When an HTTP request is received (quando um pedido HTTP é recebido).

    Para obter mais informações, consulte:

  • Um recurso de conta de integração para definir e armazenar artefactos para integração empresarial e fluxos de trabalho B2B.

    • Tanto a conta de integração como o recurso da aplicação lógica devem existir na mesma subscrição Azure e na mesma região Azure.

    • Define pelo menos dois parceiros comerciais na sua conta de integração. As definições para ambos os parceiros devem usar o mesmo qualificador de identidade empresarial , como AS2, X12, EDIFACT ou RosettaNet.

    • Define um acordo AS2 e um acordo X12 entre os parceiros comerciais que participam no seu fluxo de trabalho. Cada acordo requer um parceiro anfitrião e um parceiro convidado.

      O conteúdo das mensagens entre os parceiros deve corresponder ao tipo de acordo. Para informações sobre as definições do acordo a usar ao receber e enviar mensagens, veja:

  • Antes de começar a trabalhar com as operações AS2 e X12, deve ligar a sua aplicação de lógica de consumo ou a sua aplicação de lógica Standard à conta de integração para poder trabalhar com artefactos como parceiros comerciais e acordos. Pode ligar uma conta de integração a múltiplos recursos da aplicação Consumption ou Standard Logic para partilhar os mesmos artefactos.

    Quando adicionas as operações AS2 e X12, podes ter de criar uma ligação à conta de integração:

    Fluxo de trabalho da aplicação lógica É necessária ligação?
    Consumo - Conector AS2 (v2): Não é necessária ligação

    - Conector X12: Ligação necessária
    Standard - Conector AS2 (v2): Não é necessária ligação

    - Conector incorporado X12: Não é necessária ligação

Adicionar o gatilho de solicitação

Para iniciar o fluxo de trabalho neste exemplo, adicione o gatilho Request.

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

  2. No designer, abre o teu fluxo de trabalho. Siga estes passos gerais para adicionar ao seu fluxo de trabalho o gatilho Request incorporado, chamado Quando um pedido HTTP é recebido .

    O painel de informação de gatilho abre-se com o separador Parâmetros selecionado.

  3. Deixe o parâmetro Request Body JSON Schema do gatilho vazio porque o gatilho recebe mensagens X12 em formato de ficheiro plano.

    A captura de ecrã mostra o portal Azure, o designer de workflow e os parâmetros do disparador do pedido.

  4. Salve seu fluxo de trabalho. Na barra de ferramentas do designer, selecione Salvar.

    Este passo gera o URL HTTP, que depois usa para enviar um pedido que desencadeia o fluxo de trabalho.

    A captura de ecrã mostra o designer do fluxo de trabalho, os parâmetros do disparador do pedido e o URL gerado para o disparador do pedido.

  5. Copie e guarde o URL para uso posterior.

Adicionar a ação decodificar AS2

Siga estes passos para adicionar a ação de decodificação AS2 (v2).

  1. No botão Request trigger, siga estes passos gerais para adicionar a seguinte ação AS2 (v2), com base no seu tipo de fluxo de trabalho:

    Workflow Nome da ação
    Consumo Descodificação AS2
    Standard Decodificar AS2
  2. No parâmetro Mensagem para decodificar da ação, forneça o conteúdo da mensagem a decodificar.

    Este exemplo especifica o conteúdo do corpo com base na saída do disparador Request. Pode fornecer este conteúdo selecionando da lista dinâmica de conteúdos ou introduzindo uma expressão:

    • Para escolher a saída de operações anteriores, siga estes passos para a lista de conteúdo dinâmico:

      1. Selecione dentro da caixa Mensagem para decodificar , depois selecione o ícone de relâmpago para abrir a lista dinâmica de conteúdo.

      2. Em Quando um pedido HTTP é recebido, selecione Corpo, por exemplo:

        A captura de ecrã mostra o designer do fluxo de trabalho, os parâmetros de acionamento do pedido e a lista de conteúdo dinâmico com o parâmetro Corpo selecionado.

        Nota

        Se Corpo não aparecer na lista de conteúdo dinâmico, ao lado do rótulo da secção Quando um pedido HTTP é recebido , selecione Ver mais.

    • Para introduzir uma expressão que faça referência ao conteúdo da body propriedade a partir da saída do disparador Request , siga estes passos:

      1. Selecione dentro da caixa Mensagem para decodificar , depois selecione o ícone de função para abrir o editor de expressões.

      2. Na caixa do editor, introduza a seguinte expressão e selecione Adicionar:

        triggerOutputs()['body']

  3. No parâmetro cabeçalhos de mensagem da ação, introduza quaisquer cabeçalhos que a ação AS2 necessite. Pode encontrar estes valores na propriedade headers a partir da saída do trigger Request seguindo estes passos:

    1. Na secção de Cabeçalhos de Mensagem , selecione Mudar cabeçalhos de Mensagem para modo texto:

      A captura de ecrã mostra a ação de decodificação do AS2 com os cabeçalhos de Mudar Mensagem para o modo texto selecionados.

    2. Selecione dentro da caixa de cabeçalhos de mensagem , depois selecione o ícone de função para abrir o editor de expressões.

    3. Na caixa do editor, introduza a seguinte expressão e selecione Adicionar:

      triggerOutputs()['Headers']

      O ecrã mostra a caixa de cabeçalhos de Mensagem com uma expressão que faz referência aos cabeçalhos na saída do trigger.

    4. Para resolver a expressão no Headers token, na barra de ferramentas designer, selecione Vista de código e depois selecione Designer.

Confirmar receção da mensagem

Para confirmar a receção da mensagem, devolve uma resposta que contenha uma Notificação de Disposição de Mensagem AS2 (MDN) ao remetente usando as ações de Condição e Resposta .

Importante

Certifique-se de que estas ações seguem imediatamente a ação AS2 para que o fluxo de trabalho continue a ser processado caso a ação AS2 tenha sucesso. Caso contrário, o fluxo de trabalho para de processar se a ação AS2 falhar.

Adicionar uma ação Condição para escolher o caminho da ação

Estes passos adicionam a ação Condição para que possa especificar uma ou várias condições a avaliar e escolher as ações a tomar, dependendo se a ação de decodificação do AS2 (v2) tem sucesso.

  1. No projetista, na ação de decodificação AS2 (v2), siga estes passos gerais para adicionar a ação incorporada Condição.

    A ação Condição aparece com os caminhos vazios Verdadeiro e Falso. Mais tarde, adiciona-se as ações a executar nesses caminhos, dependendo se a condição se avalia como verdadeira ou falsa.

    A captura de ecrã mostra a ação Condição com caminhos vazios.

  2. Selecione a barra de título da Condição para expandir a ação e assim poder fornecer uma ou mais condições que serão avaliadas.

  3. No lado esquerdo Escolher um valor , introduza a seguinte expressão, com base no tipo de fluxo de trabalho:

    Consumo

    @body('AS2_Decode')?['messageContent']?['isMdnExpected']

    Standard

    @body('Decode_AS2')?['messageContent']?['isMdnExpected']

    Importante

    Certifica-te de que o nome da ação de decodificação e os nomes de saída do AS2 correspondem aos nomes da ação AS2 selecionada.

  4. Da lista do meio, selecione o sinal igual (=).

  5. No lado direito, na caixa Escolha um valor, introduza o valor Expected.

    A captura de ecrã mostra a ação Condição com a condição de exemplo a avaliar.

  6. Salve seu fluxo de trabalho.

Configurar caminhos de ação

Estes passos especificam as ações a tomar e as respostas a devolver com base no sucesso da ação de decodificação AS2 (v2 ).

  1. Para quando a ação de decodificação AS2 (v2) tem sucesso, siga estes passos:

    1. Na caixa True, selecione o sinal de mais (+) >para adicionar uma ação.

    2. Na caixa de pesquisa Adicionar uma ação , introduza response. No Pedido, selecione a ação incorporada Resposta.

    3. Para referenciar o MDN AS2 a partir da saída da ação de decodificação AS2 (v2), especifique as seguintes expressões:

      • No parâmetro Headers da ação, para o valor-chave, introduza a seguinte expressão:

        Consumo

        @body('AS2_Decode')?['outgoingMdnContent']?['outgoingMdnHeaders']

        Standard

        @body('Decode_AS2')?['outgoingMdnContent']?['outgoingMdnHeaders']

      • No parâmetro Corpo da ação, introduza a seguinte expressão:

        Consumo

        @body('AS2_Decode')?['outgoingMdnContent']?['messageContent']

        Standard

        @body('Decode_AS2')?['outgoingMdnContent']?['messageContent']

      Importante

      Certifica-te de que o nome da ação de decodificação e os nomes de saída do AS2 correspondem aos nomes da ação AS2 selecionada.

      O exemplo seguinte mostra como é a ação de Resposta :

      A captura de ecrã mostra a ação de resposta e as expressões resolvidas que acedem ao MDN AS2.

  2. Para quando a ação de decodificação AS2 (v2) falhar, siga estes passos:

    1. Na caixa Falso , selecione o sinal de mais (+) >Adicionar uma ação.

    2. Na caixa de pesquisa Adicionar uma ação , introduza response. Em Pedido, selecione a ação Resposta incorporada.

    3. Configure a ação Resposta para retornar o status e o erro desejados.

  3. Salve seu fluxo de trabalho.

Adicionar a ação de mensagem X12 de decodificação

Siga estes passos para decodificar mensagens X12.

  1. No designer, na ação Resposta , siga estes passos gerais para adicionar a seguinte ação de decodificação X12, com base no seu tipo de fluxo de trabalho:

    Workflow Nome da ação
    Consumo Decodificar mensagem X12
    Standard Decodificação X12

    Para mais informações, consulte as mensagens Exchange X12 em fluxos de trabalho B2B com o Azure Logic Apps.

  2. Se a ação o pedir para criar uma ligação, forneça a seguinte informação e selecione Criar nova.

    • Nome da ligação
    • ID da conta de integração
    • URL SAS da conta de integração

    Para mais informações, consulte Decodificar mensagens X12.

  3. No painel de informação de ações, especifique o conteúdo para a ação a decodificar, com base no tipo de fluxo de trabalho:

    Workflow Nome da ação Nome do parâmetro
    Consumo Decodificar mensagem X12 Mensagem de ficheiro simples X12 para descodificar
    Standard Decodificação X12 Mensagem para descodificar

    Este exemplo utiliza o conteúdo da mensagem da saída da ação AS2 (v2 ). No entanto, esta saída utiliza o formato de objeto JSON e é codificada em base64. Tens de converter o conteúdo para uma cadeia.

    Para converter o conteúdo, introduza a seguinte expressão na caixa de mensagem para decodificar, com base no tipo de fluxo de trabalho:

    Consumo

    @base64ToString(body('AS2_Decode')?['messageContent'])

    Standard

    @base64ToString(body('Decode_AS2')?['messageContent'])

    Importante

    Certifica-te de que o nome da ação de decodificação e os nomes de saída do AS2 correspondem aos nomes da ação AS2 selecionada.

  4. Salve seu fluxo de trabalho.

  5. Para resolver a expressão num token, alterne entre a vista de código e a vista designer. Na barra de ferramentas designer, selecione Vista de código e depois selecione Designer.

Agora terminou de configurar este exemplo de fluxo de trabalho B2B. Numa aplicação do mundo real, pode querer armazenar o conteúdo X12 decodificado numa aplicação de linha de negócio (LOB) ou numa loja de dados.

Para obter mais informações, consulte:

Para ligar as suas próprias aplicações LOB e usar estas APIs no seu fluxo de trabalho, adicione mais ações ou escreva APIs personalizadas.