Serviços do EAI Protheus
Existem dois serviços ativos de Webservices no Protheus dedicados ao EAI. Em ambos os serviços o parâmetro esperado para recebimento sempre é uma cadeia de caracteres, contendo um XML, com um formato previamente acordado (nos métodos que possuem parâmetro de entrada esperado). O formato esperado será explicado mais adiante, pois ele depende do tipo de arquitetura escolhido para a integração. Os serviços disponíveis atualmente são:
- EAISERVICE – Serviço de mensagens EAI Protheus. Este serviço substituí o FWWSEAI (serviço mostrado abaixo) devido a padronização de nomes e métodos do EAI entre as marcas TOTVS e terceiros. Este serviço possui somente um método:
- FWWSEAI – Serviço genérico de mensagens do EAI Protheus. É o primeiro Webservice dedicado ao EAI Protheus. Possuí os métodos:
- receiveMessage – Método que recebe as mensagens externas e as envia para a camada do EAI. Este método recebe um parâmetro de entrada (inMsg), uma cadeia de caracteres com um XML acordado entre os produtos;
- SendMessage – Método utilizado para o envio das mensagens originadas no Protheus para o aplicativo externo. Este método é utilizado internamente pelo EAI Protheus. Este método recebe um parâmetro de entrada (XML), uma cadeia de caracteres com um XML acordado entre os produtos;
- GetStatus – Método que retorna o status da conexão de Webservices. Este método não espera nenhum parâmetro de entrada, e retorna 'OK', para as conexões com sucesso. Este método verifica se o usuário administrador pode ser atribuído ao EAI Protheus e se a empresa e filial recebidos na mensagem são válidos para o Protheus.
- GetMessage – Este método está obsoleto. Ao ser chamado, emitirá um SoapFault (uma mensagem de erro do protocolo SOAP – Simple Object Access Protocol – Protocolo Simples de Acesso a Objetos) de método não disponível.
O Identificador Universal Único – UUID (Universally Unique Identifier)
Todas as mensagens recebidas e enviadas pelo EAI Protheus possuem, no seu XML, uma tag com um identificador único para determinar o ID do XML enviado/recebido. Nas mensagens do protocolo TOTVSIntegrator esta informação consta na Tag DocIdentifier e nas Mensagens Únicas TOTVS na tag UUID. Este identificador é único e caso seja recebido pelo Protheus uma mensagem cujo identificador já exista na base Protheus (todas as mensagens recebidas e enviadas são gravadas na fila de Integrações (tabela XX3) do Protheus) a mensagem é rejeitada, e é gerado um erro, via SoapFault, indicando que já existe mensagem com este UUID no grupo de empresas. Para detalhes sobre o UUID consulte a RFC (Request for Comments) 4122, que trata deste assunto. Consulte a RFC4122 aqui.