Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

Estrutura

A comunicação através do protocolo transaction (EAI) possui uma estrutura composta dos seguintes elementos:

...

Graficamente, a estrutura pode ser descrita conforme abaixo:

Funcionamento

Os modos de operação podem ser: síncrono e assíncrono, sendo que neste último temos a necessidade de uma fila e de um agente que se responsabilize por sua gestão (processador de fila).

...

Clique aqui para saber mais sobre internalId

Mensagem

A mensagem padronizada, utilizada através de transactions (EAI), é composta dos elementos Header e Content.

...

  • ReceivedMessage
  • ProcessingInformation: Contém atributo Details, que por sua vez, contém as mensagens referentes ao processamento da mensagem original. Elas estarão estruturadas conforme definido no Guia de Implementação de APIs TOTVS, item Mensagens de erro, com a ressalva de que os atributos utilizaram a forma capitalizada, em vez do formato "camelCase", ou seja, em vez de "code", é usado "Code", por exemplo.
  • ReturnContent: Contém o resultado do processamento da mensagem original, conforme definido para a transação. Além disso, pode conter também o atributo ListOfInternalId, onde constam todos os internalIDs relacionados a mensagem. A estrutura correspondente ao internal ID tém os seguintes atributos:
    • Name: nome da entidade correspondente ao valor sendo trafegado. Exemplo: "CustomerVendor", "Item", "SalesOrder";
    • Origin: mesma definição da tag Origin;
    • Destination: mesma definição da tag Destination.

Tipos de Mensagens

O padrão de mensagem TOTVS através do protocolo transactions (EAI) estabelece quatro tipos de mensagens: BusinessMessageResponseMessage e ReceiptMessage.

BusinessMessage

Uma mensagem do tipo BusinessMessage são aquelas que iniciam qualquer processo de troca de mensagens entre os aplicativos. Sempre que um aplicativo A quiser enviar ou solicitar informações do aplicativo B, ele enviará uma BusinessMessage que será processada pelo aplicativo destinatário.

...



  Event  


  Request

Objetivo

Replicação de Dados

Compartilhar   Lógicas

Quem   Gera (normalmente)

Um   (cadastro Master)

Vários   (clientes que precisam da lógica)

Quem   Responde
  (normalmente)

Vários (cadastros replicados)

Um (detentor da lógica)

Uso   + comum

Síncrono   (Envia e aguarda)

Assíncrono   (envia e esquece)

Exemplo

Upsert   UnitOfMeasure

getCashAvailableOnDate


BusinessMessage – Event

As mensagens de eventos de negócio basicamente descrevem o evento ocorrido, como no exemplo abaixo:

...

  • Event: Qual foi o evento associado à mensagem (pode ser upsert – inclusão/alteração – ou delete – eliminação).
  • Content: JSON com informações sobre o evento, normalmente contendo todas as informações pertinentes àquela entidade.

BusinessMessage – Request

As mensagens de request descrevem qual função se deseja executar e os parâmetros necessários, como no exemplo abaixo:

...

  • BusinessContent:  JSON com informações necessárias para o processamento, normalmente parâmetros de entrada

ResponseMessage
Âncora
ResponseMessage
ResponseMessage

Uma ResponseMessage representa o resultado do processamento de uma BusinessMessage pelo aplicativo que a recebeu e o seu conteúdo pode variar de acordo com o tipo de mensagem e com o resultado do processamento.

...

Obs: Consultar Catalogo de Erros 

ReceiptMessage
Âncora
ReceiptMessage
ReceiptMessage

Uma ReceiptMessage representa a confirmação de recebimento de uma BusinessMessage pelo aplicativo destino.

...