Partilhar via


Mensagens X12 do Exchange em fluxos de trabalho B2B usando Aplicativos Lógicos do Azure

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

Para enviar e receber mensagens X12 em fluxos de trabalho criados usando os Aplicativos Lógicos do Azure, use o conector X12 . Este conector fornece operações que suportam e gerenciam a comunicação X12.

Este guia mostra como adicionar as ações de codificação e decodificação do X12 a um fluxo de trabalho de aplicativo lógico existente. Você pode usar qualquer gatilho com as ações X12. Os exemplos neste guia usam o gatilho Request.

Referência técnica do conector

O conector X12 tem diferentes versões, com base no tipo de aplicativo lógico e no ambiente de host.

Aplicação de Lógica Meio Ambiente Versão do conector
Consumo Aplicativos Lógicos Multilocatário do Azure Conector gerenciado X12, que aparece na galeria de conectores em Compartilhado. O conector X12 tem um gatilho e várias ações. Você pode usar qualquer gatilho que funcione para o seu cenário. Para mais informações, consulte:

- Referência do conector gerenciado X12
- Limites de mensagens X12
Standard Aplicações Lógicas do Azure de locatário único, Ambiente de Serviço de Aplicações v3 (planos Windows apenas) e implantação híbrida Conector integrado X12, que aparece na galeria de conectores em Embutido, e conector gerenciado X12, que aparece na galeria de conectores em Compartilhado. O conector gerenciado X12 tem um gatilho e várias ações. O conector integrado X12 fornece apenas ações. Você pode usar qualquer gatilho que funcione para o seu cenário.

A versão integrada difere das seguintes maneiras:

- A versão interna pode acessar diretamente as redes virtuais do Azure. Você não precisa de um gateway de dados local.

- A versão integrada oferece maior taxa de transferência e menor latência.

Para mais informações, consulte:

- Referência do conector gerenciado X12
- Operações de conector integrado X12
- Limites de mensagens X12

Operações integradas X12

As seções a seguir descrevem as operações do conector integrado X12 e seus parâmetros:

Descodificar X12

ID da operação: x12Decode

Decodifica uma mensagem X12 convertendo um arquivo simples para o formato XML.

Parâmetros
Nome de exibição Nome JSON Necessário Tipo Description
Mensagem para descodificar messageToDecode Sim Cordão A mensagem X12 para descodificar.
Id de rastreamento B2B b2bTrackingId Não Cordão O ID de rastreamento B2B.

Codificar X12

ID da operação: x12Encode

Codifica uma mensagem X12 convertendo XML em formato de arquivo simples.

Parâmetros
Nome de exibição Nome JSON Necessário Tipo Description
Mensagem para codificar messageToEncode Sim Cordão A mensagem X12 para codificar.
Identidade do remetente Qualificador do remetente senderIdentity.qualifier Não Cordão O qualificador do remetente.
Identidade do remetente Identificador do remetente senderIdentity.value Não Cordão O identificador do remetente.
Identidade do recetor Qualificador do recetor receiverIdentity.qualifier Não Cordão O qualificador do recetor.
Identidade do destinatário Identificador do recetor receiverIdentity.value Não Cordão O identificador do recetor.
Nome do contrato X12 agreementName Não Cordão O nome do contrato X12.
Id de rastreamento B2B b2bTrackingId Não Cordão O identificador de seguimento B2B.

Codificar lote X12

ID da operação: x12BatchEncode

Codifica um lote de mensagens X12 convertendo XML em formato de arquivo simples.

Parâmetros
Nome de exibição Nome JSON Necessário Tipo Description
Mensagens em Bloco batchMessage.items Sim Array A mensagem X12 para codificar.
ID da Mensagem batchMessage.items.messageId Sim Cordão O ID exclusivo do item do lote.
Content batchMessage.items.content Sim Cordão O conteúdo do item do lote.
Nome do lote batchMessage.batchName Não Cordão O nome do lote.
Nome da partição batchMessage.partitionName Não Cordão O nome da partição.
Identidade do remetente Qualificador do remetente senderIdentity.qualifier Não Cordão O qualificador do remetente.
Identidade do remetente Identificador do remetente senderIdentity.value Não Cordão O identificador do remetente.
Identidade do receptor Qualificador do receptor receiverIdentity.qualifier Não Cordão O qualificador do recetor.
Identidade do destinatário Identificador do recetor receiverIdentity.value Não Cordão O identificador do recetor.
Nome do contrato X12 agreementName Não Cordão O nome do acordo X12.
Id de rastreamento B2B b2bTrackingId Não Cordão O identificador de rastreamento B2B.

Pré-requisitos

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

  • O recurso do aplicativo lógico e o fluxo de trabalho onde você deseja usar as operações X12.

    Para obter mais informações, consulte:

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

    • Sua conta de integração e o recurso do aplicativo lógico devem existir na mesma assinatura do Azure e na mesma região do Azure.

    • Define pelo menos dois parceiros comerciais que participam da operação X12 usada em seu fluxo de trabalho. As definições para ambos os parceiros devem usar o mesmo qualificador de identidade comercial X12.

    • Define um contrato X12 entre os parceiros comerciais que participam do seu fluxo de trabalho. Cada acordo requer um parceiro anfitrião e um parceiro convidado. O conteúdo das mensagens entre você e o outro parceiro deve corresponder ao tipo de contrato. Para obter informações sobre as configurações de contrato a serem usadas ao receber e enviar mensagens, consulte Configurações de mensagem X12.

      Importante

      Se você estiver trabalhando com esquemas da Lei de Portabilidade e Responsabilidade de Seguros de Saúde (HIPAA), deverá adicionar uma schemaReferences seção ao seu contrato. Para obter mais informações, consulte Esquemas e tipos de mensagem HIPAA.

    • Define os esquemas a serem usados para validação XML.

      Importante

      Se você estiver trabalhando com esquemas HIPAA (Health Insurance Portability and Accountability Act), certifique-se de revisar os esquemas e os tipos de mensagem da HIPAA.

  • Antes de começar a trabalhar com operações X12, você deve vincular seu aplicativo lógico de consumo ou vincular seu aplicativo lógico padrão a uma conta de integração.

    Ao adicionar uma operação X12, você também deve criar uma conexão com a conta de integração. Você pode criar a conexão ao adicionar a operação X12 ao seu fluxo de trabalho.

Codificar mensagens X12

A operação de mensagem Codificar para X12 executa as seguintes tarefas:

  • Resolve o contrato combinando as propriedades de contexto do remetente e do destinatário.

  • Serializa o Electronic Data Interchange (EDI) e converte mensagens codificadas em XML em conjuntos de transações EDI no intercâmbio.

  • Aplica segmentos de cabeçalho e reboque do conjunto de transações.

  • Gera um número de controle de intercâmbio, um número de controle de grupo e um número de controle de conjunto de transações para cada intercâmbio de saída.

  • Substitui os separadores nos dados de carga útil.

  • Valida EDI e propriedades específicas do parceiro.

    • Validação de esquema de elementos de dados do conjunto de transações em relação ao esquema de mensagem.
    • Validação EDI em elementos de dados do conjunto de transações.
    • Validação estendida em elementos de dados de conjunto de transações.
  • Solicita um Reconhecimento Técnico e Funcional, se configurado.

    • Gera um Reconhecimento Técnico como resultado da validação do cabeçalho. O reconhecimento técnico informa o status do processamento de um cabeçalho de intercâmbio e reboque pelo recetor de endereço.
    • Gera um Reconhecimento Funcional como resultado da validação corporal. O reconhecimento funcional relata cada erro encontrado durante o processamento do documento recebido.

Para codificar mensagens com o conector X12, siga estes passos:

  1. No portal do Azure, abra o recurso e o fluxo de trabalho do aplicativo lógico no designer.

  2. Na interface do designer, siga estes procedimentos gerais para adicionar a ação X12 chamada Codificar para mensagem X12 pelo nome do contrato no seu fluxo de trabalho.

    Nota

    Para utilizar a ação Codificar mensagem para X12 por identidades, deve posteriormente fornecer valores diferentes de parâmetros, como o identificador de remetente e o identificador de recetor especificados pelo acordo X12. Você também deve especificar o valor da mensagem XML para codificação, que pode ser selecionado como a saída do disparador ou de uma ação anterior.

  3. Quando lhe for pedido para criar uma ligação à sua conta de integração, forneça as seguintes informações:

    Parâmetro Necessário Description
    Nome da Ligação Sim Um nome para a conexão.
    ID da conta de integração Sim O ID do recurso para sua conta de integração, que tem o seguinte formato:

    /subscriptions/<Azure-subscription-ID>/resourceGroups/<resource-group-name>/providers/Microsoft.Logic/integrationAccounts/<integration-account-name>

    Por exemplo:
    /subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/integrationAccount-RG/providers/Microsoft.Logic/integrationAccounts/myIntegrationAccount

    Para localizar este ID de recurso, siga estes passos:

    1. No portal do Azure, abra sua conta de integração.
    2. Na barra lateral da conta de integração, selecione Visão geral.
    3. Na página Visão geral , selecione Visualização JSON.
    4. A partir da propriedade Resource ID, copie o valor.
    URL SAS da Conta de Integração Sim A URL do ponto de extremidade de solicitação que usa a autenticação de assinatura de acesso compartilhado (SAS) para fornecer acesso à sua conta de integração. Este URL de retorno de chamada tem o seguinte formato:

    https://<request-endpoint-URI>sp=<permissions>sv=<SAS-version>sig=<signature>

    Por exemplo:
    https://prod-04.west-us.logic-azure.com:443/integrationAccounts/aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb?api-version=2015-08-1-preview&sp=XXXXXXXXX&sv=1.0&sig=aB1cD2eF-3gH4iJ5kL6-mN7oP8qR

    Para localizar este URL, siga estes passos:

    1. No portal do Azure, abra sua conta de integração.
    2. Na barra lateral da conta de integração, em Configurações, selecione URL de retorno de chamada.
    3. A partir da propriedade URL de retorno de chamada gerado, copie o valor.
    Tamanho do bloco de número de controle Não O tamanho do bloco de números de controle a serem reservados a partir de um acordo para cenários de alta taxa de transferência.

    Por exemplo:

    A captura de tela mostra o portal do Azure, o fluxo de trabalho com a ação chamada Codificar para mensagem X12 pelo nome do contrato e as informações de conexão da ação.

  4. Quando terminar, selecione Criar novo.

  5. No painel de informações da ação X12, forneça os seguintes valores:

    Parâmetro Necessário Description
    Nome do contrato X12 Sim O contrato X12 a utilizar.
    Mensagem XML para codificar Sim A mensagem XML a ser codificada.
    Parâmetros avançados Não Mais parâmetros que você pode selecionar:

    - Separador de elementos de dados
    - Separador de componentes
    - Caráter de substituição
    - Terminador de segmento
    - Sufixo terminador de segmento
    - Número de versão do controle (ISA12)
    - Identificador do remetente do aplicativo/código GS02
    - Identificador/Código GS03 do Recetor de Aplicação

    Para obter mais informações, consulte Configurações de mensagem X12.

    Por exemplo, pode usar a saída de conteúdo Body do gatilho Request como carga útil da mensagem XML.

    Para localizar e selecionar essa saída, siga estas etapas:

    1. Selecione a caixa mensagem XML para codificar e, em seguida, selecione o ícone de relâmpago para abrir a lista de conteúdo dinâmico.

    2. Na lista, em Quando uma mensagem HTTP for recebida, selecione Corpo.

    A captura de tela mostra uma ação chamada Encodar para mensagem X12 pelo nome do acordo com parâmetros especificados.

Descodificar mensagens X12

A operação de mensagem Decode X12 executa as seguintes tarefas:

  • Valida o envelope em relação ao contrato de parceiro comercial.

  • Valida EDI e propriedades específicas do parceiro.

    • Validação estrutural EDI e validação estendida de esquema
    • Validação estrutural do envelope de intercâmbio
    • Validação de esquema do envelope em relação ao esquema de controle
    • Validação de esquema dos elementos de dados do conjunto de transações em relação ao esquema de mensagem
    • Validação EDI em elementos de dados do conjunto de transações
  • Verifica se os números de controle do conjunto de intercâmbio, grupo e transação não são duplicados.

    • Verifica o número de controle de intercâmbio em relação a intercâmbios recebidos anteriormente.
    • Verifica o número de controle de grupo em relação a outros números de controle de grupo no intercâmbio.
    • Verifica o número de controle do conjunto de transações em relação a outros números de controle do conjunto de transações nesse grupo.
  • Divide um intercâmbio em conjuntos de transações ou preserva todo o intercâmbio:

    • Divida o intercâmbio em conjuntos de transações ou suspenda conjuntos de transações em caso de erro: analise cada conjunto de transações. A ação de decodificação X12 produz apenas os conjuntos de transações que falham na validação para badMessages, e produz os conjuntos de transações restantes para goodMessages.

    • Divida o intercâmbio em conjuntos de transações ou suspenda o intercâmbio em caso de erro: analise cada conjunto de transações. Se um ou mais conjuntos de transações no intercâmbio falharem na validação, a ação de decodificação X12 produzirá todos os conjuntos de transações nesse intercâmbio para badMessages.

    • Preservar o intercâmbio ou suspender conjuntos de transações em caso de erro: Preserve o intercâmbio e processe todo o intercâmbio em lote. A ação de decodificação X12 produz apenas os conjuntos de transações que falham na validação para badMessages, e produz os conjuntos de transações restantes para goodMessages.

    • Preservar o intercâmbio ou suspender o intercâmbio em caso de erro: Preserve o intercâmbio e processe todo o intercâmbio em lote. Se um ou mais conjuntos de transações no intercâmbio falharem na validação, a ação de decodificação X12 produzirá todos os conjuntos de transações nesse intercâmbio para badMessages.

  • Gera um Reconhecimento Técnico e Funcional, se configurado.

    • Gera um Reconhecimento Técnico como resultado da validação do cabeçalho. O reconhecimento técnico informa o status do processamento de um cabeçalho de intercâmbio e reboque pelo recetor de endereço.
    • Gera um Reconhecimento Funcional como resultado da validação corporal. O reconhecimento funcional relata cada erro encontrado durante o processamento do documento recebido.

Para descodificar mensagens X12 no seu fluxo de trabalho com o conector X12, siga estes passos:

  1. No portal do Azure, abra o recurso e o fluxo de trabalho do aplicativo lógico no designer.

  2. No designer, siga estas etapas gerais para adicionar a ação X12 chamada Decodificar mensagem X12 ao seu fluxo de trabalho.

  3. Quando lhe for pedido para criar uma ligação à sua conta de integração, forneça as seguintes informações:

    Parâmetro Necessário Description
    Nome da Ligação Sim Um nome para a conexão.
    ID da conta de integração Sim O ID do recurso para sua conta de integração, que tem o seguinte formato:

    /subscriptions/<Azure-subscription-ID>/resourceGroups/<resource-group-name>/providers/Microsoft.Logic/integrationAccounts/<integration-account-name>

    Por exemplo:
    /subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/integrationAccount-RG/providers/Microsoft.Logic/integrationAccounts/myIntegrationAccount

    Para localizar este ID de recurso, siga estes passos:

    1. No portal do Azure, abra sua conta de integração.
    2. Na barra lateral da conta de integração, selecione Visão geral.
    3. Na página Visão geral , selecione Visualização JSON.
    4. A partir da propriedade Resource ID, copie o valor.
    URL SAS da Conta de Integração Sim A URL do ponto de extremidade de solicitação que usa a autenticação de assinatura de acesso compartilhado (SAS) para fornecer acesso à sua conta de integração. Este URL de retorno de chamada tem o seguinte formato:

    https://<request-endpoint-URI>sp=<permissions>sv=<SAS-version>sig=<signature>

    Por exemplo:
    https://prod-04.west-us.logic-azure.com:443/integrationAccounts/aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb?api-version=2015-08-1-preview&sp=XXXXXXXXX&sv=1.0&sig=aB1cD2eF-3gH4iJ5kL6-mN7oP8qR

    Para localizar este URL, siga estes passos:

    1. No portal do Azure, abra sua conta de integração.
    2. Na barra lateral da conta de integração, em Configurações, selecione URL de retorno de chamada.
    3. A partir da propriedade URL de retorno de chamada gerado, copie o valor.
    Tamanho do bloco de número de controle Não O tamanho do bloco de números de controle a serem reservados de um contrato para cenários de alta taxa de transferência.

    Por exemplo:

    A captura de tela mostra o portal do Azure, o fluxo de trabalho com a ação chamada Decodificar mensagem X12 e as informações de conexão da ação.

  4. Quando terminar, selecione Criar novo.

  5. Na caixa de informações da ação X12, forneça os seguintes valores:

    Parâmetro Necessário Description
    Mensagem de ficheiro simples X12 para descodificar Sim A mensagem X12 em formato de arquivo simples para decodificar

    Nota: A carga ou o conteúdo da mensagem XML em uma matriz de mensagens é codificado em base64. Você deve usar uma expressão que processe esse conteúdo. Por exemplo, a expressão a seguir processa o conteúdo numa matriz de mensagens como XML, usando as funções xml(), base64ToBinary() e item().

    xml(base64ToBinary(item()?['Body']))
    Parâmetros avançados Não Esta operação inclui os seguintes outros parâmetros:

    - Preservar o intercâmbio
    - Suspender intercâmbio em caso de erro

    Para obter mais informações, consulte Configurações de mensagem X12.

    Por exemplo, você pode usar a saída de conteúdo do Body do ativador Request como carga útil de uma mensagem XML, mas primeiro deve processar esse conteúdo como mostrado na expressão seguinte.

    xml(base64ToBinary(item()?['Body']))

    Para concluir esta tarefa, siga estes passos:

    1. Selecione dentro da mensagem de arquivo simples X12 para decodificar a caixa e, em seguida, selecione o ícone de função para abrir o editor de expressão.

    2. Na caixa editor de expressão, digite a seguinte expressão, que faz referência à saída Body do gatilho Request:

      xml(base64ToBinary(string(triggerBody())))

    3. Quando terminar, selecione Adicionar.

    A captura de tela mostra uma ação chamada Decodificar mensagem X12 com parâmetros especificados.