Compartilhar via


Acompanhamento de esquemas para transações B2B em fluxos de trabalho Standard para Aplicativos Lógicos do Azure (versão prévia)

Aplica-se a: Aplicativos Lógicos do Azure (Standard)

Observação

Esse recurso está em versão prévia e está sujeito aos Termos de uso suplementares para versões prévias do Microsoft Azure.

Os Aplicativos Lógicos do Azure incluem o acompanhamento interno que você pode habilitar para partes do fluxo de trabalho Standard. Para ajudá-lo a monitorar a entrega ou o recebimento bem-sucedido, os erros e as propriedades das mensagens B2B (business-to-business), este guia ajuda você a entender melhor as tabelas que armazenam dados de acompanhamento B2B para suas transações.

Observação

Este artigo se aplica somente aos fluxos de trabalho do aplicativo lógico Standard. Para obter informações sobre como monitorar fluxos de trabalho de aplicativo lógico de consumo, consulte a seguinte documentação:

Tabela de acompanhamento AS2TrackRecords para AS2

A tabela do Gerenciador de Banco de Dados do Azure chamada AS2TrackRecords armazena todos os dados de acompanhamento AS2. O exemplo a seguir descreve a consulta que cria esta tabela e a ordem necessária para especificar as colunas da tabela:

.create table AS2TrackRecords (
   IntegrationAccountSubscriptionId: string, // Subscription ID for the integration account.
   IntegrationAccountResourceGroup: string, // Resource group for the integration account.
   IntegrationAccountName: string, // Name for the integration account.
   IntegrationAccountId: string, // ID for the integration account.
   WorkflowRunOperationInfo: dynamic, // Operation information for the workflow run. This dynamic type uses a specific JSON schema.
   ClientRequestId: string, // Client request ID.
   EventTime: datetime, // Time of the event.
   Error: dynamic, // Error, if any.
   RecordType: string, // Type of tracking record.
   Direction: string, // Message flow direction, which is either 'send' or 'receive'.
   IsMessageFailed: bool, // Whether the AS2 message failed.
   MessageProperties: dynamic, // Message properties. This dynamic type uses different schema based on the tracking record type.
   AdditionalProperties: dynamic, // Additional properties.
   TrackingId: string, // Custom tracking ID, if any.
   AgreementName: string, // Name for the AS2 agreement that resolves the messages.
   As2From: string, // Name for the AS2 message sender in the AS2 message headers.
   As2To: string, // Name for the AS2 message receiver in the AS2 headers.
   ReceiverPartnerName: string, // Partner name for the AS2 message receiver.
   SenderPartnerName: string, // Partner name for the AS2 message sender.
   MessageId: string, // AS2 message ID.
   OriginalMessageId: string,// Original AS2 message ID.
   CorrelationMessageId: string, // Message ID for correlating AS2 messages with Message Disposition Notifications (MDNs).
   IsMdnExpected: bool // Whether the Message Dispoition Notification (MDN) is expected.
)

Observação

A coluna da tabela WorkflowRunOperationInfo tem uma estrutura de tipo dinâmico, que usa um esquema JSON específico. A coluna da tabela MessageProperties também tem uma estrutura de tipo dinâmico, mas usa um esquema JSON diferente, com base no tipo de registro de acompanhamento. Para obter mais informações, consulte as seguintes seções:

Registro de acompanhamento AS2 – esquemas MessageProperties

A coluna da tabela MessageProperties tem uma estrutura de tipo dinâmico que usa esquema JSON diferente, com base no tipo de registro de acompanhamento.

Mensagem AS2 – Esquema MessageProperties

A sintaxe a seguir descreve o esquema MessageProperties quando o tipo de registro de acompanhamento é uma mensagem AS2:

{
   "direction": "",
   "messageId": "",
   "dispositionType": "",
   "fileName": "",
   "isMessageFailed": "",
   "isMessageSigned": "",
   "isMessageEncrypted": "",
   "isMessageCompressed": "",
   "correlationMessageId": "",
   "incomingHeaders": {},
   "outgoingHeaders": {},
   "isNrrEnabled": "",
   "isMdnExpected": "",
   "mdnType": ""
}
Propriedade Tipo Descrição
direction fio Direção do fluxo da mensagem (send ou receive)
messageId fio ID da mensagem AS2 do cabeçalho da mensagem AS2
dispositionType fio Tipo de disposição para o MDN (notificação de disposição de mensagem)
fileName fio Nome do arquivo do cabeçalho da mensagem AS2
isMessageFailed Booliano Verifica se há falha na mensagem AS2
isMessageSigned Booliano Verifica se a mensagem AS2 foi assinada
isMessageEncrypted Booliano Verifica se a mensagem AS2 foi criptografada
isMessageCompressed Booliano Verifica se a mensagem AS2 foi compactada
correlationMessageId fio ID da mensagem para correlacionar mensagens AS2 com as MDNs (notificações de disposição de mensagem)
incomingHeaders Dicionário JToken Detalhes do cabeçalho para a mensagem AS2 de entrada
outgoingHeaders Dicionário JToken Detalhes do cabeçalho para a mensagem AS2 de saída
isNrrEnabled Booliano Se o NRR (não repúdio de recebimento) estiver habilitado
isMdnExpected Booliano A MDN (Notificação de Disposição de Mensagem) é esperada
mdnType Enum Valores permitidos: NotConfigured, Sync e Async

ESQUEMA AS2 MDN – MessageProperties

A sintaxe a seguir descreve o esquema MessageProperties quando o tipo de registro de acompanhamento é um MDN AS2:

{
   "direction": "",
   "messageId": "",
   "originalMessageId": "",
   "dispositionType": "",
   "isMessageFailed": "",
   "isMessageSigned": "",
   "isNrrEnabled": "",
   "statusCode": "",
   "micVerificationStatus" "",
   "correlationMessageId": "",
   "incomingHeaders": {},
   "outgoingHeaders": {},
}
Propriedade Tipo Descrição
direction fio Direção do fluxo da mensagem (send ou receive)
messageId fio ID da mensagem AS2 do cabeçalho da mensagem AS2
originalMessageId fio ID da mensagem para a mensagem AS2 original
dispositionType fio Tipo de disposição para o MDN (notificação de disposição de mensagem)
isMessageFailed Booliano Verifica se há falha na mensagem AS2
isMessageSigned Booliano Verifica se a mensagem AS2 foi assinada
isNrrEnabled Booliano Se o NRR (não repúdio de recebimento) estiver habilitado
statusCode Enum Valores permitidos: Accepted, Rejected e AcceptedWithErrors
micVerificationStatus Enum Valores permitidos: NotApplicable, Succeeded e Failed
correlationMessageId fio A ID de correlação, que é a ID da mensagem original em que o MDN foi configurado
incomingHeaders Dicionário JToken Detalhes do cabeçalho para a mensagem AS2 de entrada
outgoingHeaders Dicionário JToken Detalhes do cabeçalho para a mensagem AS2 de saída

Tabela de acompanhamento EdiTrackRecords para X12

A tabela do Gerenciador de Banco de Dados do Azure chamada EdiTrackRecords armazena todos os dados de acompanhamento X12. O exemplo a seguir descreve a consulta que cria esta tabela e a ordem necessária para especificar as colunas da tabela:

.create table EdiTrackRecords (
   IntegrationAccountSubscriptionId: string, // Subscription ID for the integration account.
   IntegrationAccountResourceGroup: string, // Resource group for the integration account.
   IntegrationAccountName: string, // Name for the integration account.
   IntegrationAccountId: string, // ID for the integration account.
   WorkflowRunOperationInfo: dynamic, // Operation information for the workflow run.
   ClientRequestId: string, // Client request ID.
   EventTime: datetime, // Time of the event.
   Error: dynamic, // Error, if any.
   RecordType: string, // Type of tracking record.
   Direction: string, // Message flow direction, which is either 'receive' or 'send'.
   IsMessageFailed: bool, // Whether the message failed.
   MessageProperties: dynamic, // Message properties.
   AdditionalProperties: dynamic, // Additional properties.
   TrackingId: string, // Custom tracking ID, if any.
   AgreementName: string, // Name for the agreement that resolves the messages.
   SenderPartnerName: string, // Partner name for the message sender.
   ReceiverPartnerName: string, // Partner name for the X12 message receiver.
   SenderQualifier: string, // Qualifier for the partner X12 message sender.
   SenderIdentifier: string, // Identifier for the partner X12 message sender.
   ReceiverQualifier: string, // Qualifier for the partner X12 message receiver.
   ReceiverIdentifier: string, // Identiifer for the partner X12 message receiver.
   TransactionSetControlNumber: string, // Control number for the transaction set.
   FunctionalGroupControlNumber: string, // Control number for the functional group.
   InterchangeControlNumber: string, // Control number for the interchange.
   MessageType: string, // Transaction set or document type.
   RespondingTransactionSetControlNumber: string, // Control number for the responding transaction set, in case of acknowledgment.
   RespondingFunctionalGroupControlNumber: string, // Control number for the responding functional group, in case of acknowledgment.
   RespondingInterchangeControlNumber: string, // Control number for the responding interchange, in case of acknowledgement.
   ProcessingStatus: string // Acknowledgment processing status with these permitted values: 'Received', 'Generated', and 'Sent'
)

Registro de acompanhamento X12 – esquemas MessageProperties

A coluna da tabela MessageProperties tem uma estrutura de tipo dinâmico que usa esquema JSON diferente, com base no tipo de registro de acompanhamento.

Conjunto de transações X12 – Esquema MessageProperties

A sintaxe a seguir descreve o esquema MessageProperties quando o tipo de registro de acompanhamento é um conjunto de transações X12:

{
   "direction": "",
   "interchangeControlNumber": "",
   "functionalGroupControlNumber": "",
   "transactionSetControlNumber": "",
   "correlationMessageId": "",
   "messageType": "",
   "isMessageFailed": "",
   "isTechnicalAcknowledgmentExpected": "",
   "isFunctionalAcknowledgmentExpected": "",
   "needAk2LoopForValidMessages": "",
   "segmentsCount": ""
}
Propriedade Tipo Descrição
direction Enum Direção do fluxo da mensagem (send ou receive)
interchangeControlNumber fio Número de controle para o intercâmbio
functionalGroupControlNumber fio Número de controle do grupo funcional
transactionSetControlNumber fio Número de controle do conjunto de transações
correlationMessageId fio ID de correlação de mensagem, que combina esses valores: {AgreementName}{Interchange-or-FunctionalGroup-ControlNumber}{TransactionSetControlNumber}
messageType fio Tipo de documento ou conjunto de transações
isMessageFailed Booliano Verifica se houve falha na mensagem X12
isTechnicalAcknowledgmentExpected Booliano Verifica se a confirmação técnica está configurada no contrato X12
isFunctionalAcknowledgmentExpected Booliano Verifica se a confirmação funcional está configurada no contrato X12
needAk2LoopForValidMessages Booliano Verifica se o loop AK2 é necessário para uma mensagem válida
segmentsCount Número Inteiro Número de segmentos no conjunto de transações do X12

Confirmação do conjunto de transações X12 – esquema MessageProperties

A sintaxe a seguir descreve o esquema MessageProperties quando o tipo de registro de acompanhamento é uma confirmação do conjunto de transações X12:

{
   "direction": "",
   "interchangeControlNumber": "",
   "functionalGroupControlNumber": "",
   "respondingFunctionalGroupControlNumber": "",
   "respondingFunctionalGroupId": "",
   "respondingTransactionSetId": "",
   "statusCode": "",
   "processingStatus": "",
   "correlationMessageId": "",
   "isMessageFailed": ""
}
Propriedade Tipo Descrição
direction fio Direção do fluxo da mensagem (send ou receive)
interchangeControlNumber fio Número de controle de intercâmbio para a confirmação funcional. Esse valor é preenchido somente para o remetente quando uma confirmação funcional é recebida para as mensagens enviadas ao parceiro.
functionalGroupControlNumber fio Número de controle de grupo funcional para a confirmação funcional. Esse valor é preenchido somente para o remetente quando uma confirmação funcional é recebida para as mensagens enviadas ao parceiro.
respondingFunctionalGroupControlNumber fio Número de controle para o grupo funcional de resposta
respondingFunctionalGroupId fio Número de controle para o grupo funcional de resposta
respondingTransactionSetId fio ID do grupo funcional de resposta que mapeia para AK101 na confirmação
statusCode Booliano Código de status de confirmação para o conjunto de transações
processingStatus Enum Status de processamento de confirmação com estes valores permitidos: Received, Generated e Sent
correlationMessageId fio ID de correlação de mensagem, que combina esses valores: {AgreementName}{InterchangeORFunctionalGroupControlNumber}{TransactionSetControlNumber}
isMessageFailed fio Verifica se houve falha na mensagem X12

Intercâmbio X12 – Esquema MessageProperties

A sintaxe a seguir descreve o esquema MessageProperties quando o tipo de registro de acompanhamento é um intercâmbio X12:

{
   "direction": "",
   "interchangeControlNumber": "",
   "isTechnicalAcknowledgmentExpected": "",
   "isMessageFailed": "",
   "isa09": "",
   "isa10": "",
   "isa11": "",
   "isa12": "",
   "isa14": "",
   "isa15": "",
   "isa16": ""
}
Propriedade Tipo Descrição
direction Enum Direção do fluxo da mensagem (send ou receive)
interchangeControlNumber fio Número de controle para o intercâmbio
isTechnicalAcknowledgmentExpected Booliano Verifica se a confirmação técnica está configurada no contrato X12
isMessageFailed Booliano Verifica se houve falha na mensagem X12
isa09 fio Data de intercâmbio do documento X12
isa10 fio Hora de intercâmbio do documento X12
isa11 fio Identificador de padrões de controle de intercâmbio X12
isa12 fio Número de versão de controle de intercâmbio X12
isa14 fio A confirmação do X12 é solicitada
isa15 fio Indicador de teste ou produção
isa16 fio Separador de elementos

Confirmação de intercâmbio X12 – Esquema MessageProperties

A sintaxe a seguir descreve o esquema MessageProperties quando o tipo de registro de acompanhamento é uma confirmação de intercâmbio X12:

{
   "direction": "",
   "interchangeControlNumber": "",
   "respondingInterchangeControlNumber": "",
   "isMessageFailed": "",
   "statusCode": "",
   "processingStatus": "",
   "ta102": "",
   "ta103": "",
   "ta105": ""
}
Propriedade Tipo Descrição
direction Enum Direção do fluxo da mensagem (send ou receive)
interchangeControlNumber fio Número de controle de intercâmbio para a confirmação técnica recebida dos parceiros
isMessageFailed Booliano Verifica se houve falha na mensagem X12
statusCode Booliano Código de status da confirmação de intercâmbio com estes valores permitidos: Accepted, Rejected e AcceptedWithErrors
processingStatus Enum Status de processamento de confirmação com estes valores permitidos: Received, Generated e Sent
ta102 fio Data do intercâmbio
ta103 fio Hora do intercâmbio
ta103 fio Código da observação do intercâmbio

Grupo funcional X12 – Esquema MessageProperties

A sintaxe a seguir descreve o esquema MessageProperties quando o tipo de registro de acompanhamento é um grupo funcional X12:

{
   "direction": "",
   "interchangeControlNumber": "",
   "functionalGroupControlNumber": "",
   "isTechnicalAcknowledgmentExpected": "",
   "isFunctionalAcknowledgmentExpected": "",
   "isMessageFailed": "",
   "gs01": "",
   "gs02": "",
   "gs03": "",
   "gs04": "",
   "gs05": "",
   "gs07": "",
   "gs08": ""
}
Propriedade Tipo Descrição
direction Enum Direção do fluxo da mensagem (send ou receive)
interchangeControlNumber fio Número de controle para o intercâmbio
functionalGroupControlNumber fio Número de controle do grupo funcional
isTechnicalAcknowledgmentExpected Booliano Verifica se a confirmação técnica está configurada no contrato X12
isFunctionalAcknowledgmentExpected Booliano Verifica se a confirmação funcional está configurada no contrato X12
isMessageFailed Booliano Verifica se houve falha na mensagem X12
gs01 fio Código do identificador de grupo funcional
gs02 fio Código do remetente do aplicativo
gs03 fio Código do receptor do aplicativo
gs04 fio Data do grupo funcional
gs05 fio Hora do grupo funcional
gs07 fio Código da agência responsável
gs08 fio Código de identificação da versão, do lançamento ou do setor

Confirmação de grupo funcional X12 – esquema MessageProperties

A sintaxe a seguir descreve o esquema MessageProperties quando o tipo de registro de acompanhamento é uma confirmação de grupo funcional X12:

{
   "direction": "",
   "interchangeControlNumber": "",
   "functionalGroupControlNumber": "",
   "respondingFunctionalGroupControlNumber": "",
   "respondingFunctionalGroupId": "",
   "isMessageFailed": "",
   "statusCode": "",
   "processingStatus": "",
   "ak903": "",
   "ak904": "",
}
Propriedade Tipo Descrição
direction Enum Direção do fluxo da mensagem (send ou receive)
interchangeControlNumber fio Número de controle do intercâmbio. Esse valor é preenchido para o remetente quando uma confirmação técnica é recebida de parceiros.
functionalGroupControlNumber fio Número de controle do grupo funcional
respondingFunctionalGroupControlNumber fio Número de controle do grupo funcional original
respondingFunctionalGroupId fio Mapeia para AK101 na ID do grupo funcional de confirmação
statusCode Enum Código de status de confirmação com estes valores permitidos: Accepted, Rejected e AcceptedWithErrors
processingStatus fio Status de processamento de confirmação com estes valores permitidos: Received, Generated e Sent
ak903 fio Número de conjuntos de transações recebidos
ak903 fio Número de conjuntos de transações aceitos no grupo funcional identificado

WorkflowRunOperationInfo schema

A coluna da tabela WorkflowRunOperationInfo na tabela AS2TrackRecords e na tabela EdiTrackRecords captura informações sobre a execução do fluxo de trabalho do aplicativo lógico Standard. Esta coluna tem uma estrutura de tipo dinâmico que usa o seguinte esquema JSON:

{
   "title": "WorkflowRunOperationInfo",
   "type": "object",
   "properties": {
      "Workflow": {
         "type": "object",
         "properties": {
            "SystemId": {
               "type": "string",
               "description": "The workflow system ID."
            },
            "SubscriptionId": {
               "type": "string",
               "description": "The subscription ID of the workflow."
            },
            "ResourceGroup": {
               "type": "string",
               "description": "The resource group name of the workflow."
            },
            "LogicAppName": {
               "type": "string",
               "description": "The logic app name of the workflow."
            },
            "Name": {
               "type": "string",
               "description": "The name of the workflow."
            },
            "Version": {
               "type": "string",
               "description": "The version of the workflow."
            }
         }
      },
      "RunInstance": {
         "type": "object",
         "properties": {
            "RunId": {
               "type": "string",
               "description": "The logic app run id."
            },
            "TrackingId": {
               "type": "string",
               "description": "The tracking id of the run."
            },
            "ClientTrackingId": {
               "type": "string",
               "description": "The client tracking id of the run."
            }
         }
      },
      "Operation": {
         "type": "object",
         "properties": {
            "OperationName": {
               "type": "string",
               "description": "The logic app operation name."
            },
            "RepeatItemScopeName": {
               "type": "string",
               "description": "The repeat item scope name."
            },
            "RepeatItemIndex": {
            "type": "integer",
            "description": "The repeat item index."
            },
            "RepeatItemBatchIndex": {
               "type": "integer",
               "description": "The index of the repeat item batch."
            },
            "TrackingId": {
               "type": "string",
               "description": "The tracking id of the logic app operation."
            },
            "CorrelationId": {
               "type": "string",
               "description": "The correlation id of the logic app operation."
            },
            "ClientRequestId": {
               "type": "string",
               "description": "The client request id of the logic app operation."
            },
            "OperationTrackingId": {
               "type": "string",
               "description": "The operation tracking id of the logic app operation."
            }
         }
      }
   }
}