Histórico da Página
...
- Visão Geral
- Arquitetura TOTVS
- TOTVS Connector Client
- TOTVS Connector Server
- TOTVS Agro Plataforma
- TOTVS Agro Conecta Dados
- Monitoramento TOTVS Apps
- Fluxo de Dados/APIs
01.
...
Visão Geral
Esta integração foi construída para efetuar o envio de dados entre TOTVS Agro Bioenergia (módulo de Pagadoria) para Salesforce com foco em "dados mestres" de Fazenda (Nível 1), Setor (Nível 2) e Talhão (Nível 3), quando inseridos ou atualizados via aplicação (Bioenergia/Pagadoria).
...
- Exemplo de requisição Postman: PATCH - Talhão
...
03. Fluxo de Dados/APIs
1. Trigger
1.1. Trigger monitora cada novo evento na tabela
1.2. Para os eventos gerados a trigger insere o registro na tabela TCC_EVENT, com os dados que foram gerados no schema definition e status unprocessed
2. TOTVS Agro Connector Client
2.1. monitora a tabela TCC_EVENT, por meio da classe EventScheduler.java
2.2. Após receber os dados é feito uma verificação e uma atualização na tabela TCC_EVENT, alterando o status para processed por meio da classe RowDataService.java
2.3. Com os dados validados, é processado para tabela OUTCOMING_DATA e enviado para o TOTVS Agro Connector Server por meio da classe EventProcessor.java
3. TOTVS Agro Connector Server
3.1. A lista de eventos recebidas pelo TOTVS Agro Connector Client é enviado na tabela própria do produto chamada CLIENT_DATA que pode ser encontrado por meio da classe CriateClientDataService.java
3.2. ClientDataScheduler.java é responsavel por processar o JSON recebido para a fila do RabbitMQ no TOTVS Agro Plataforma.
4. TOTVS Agro Plataforma
4.1. Nesse momento o JSON é classificado de acordo com schema definition e inserido coluna por coluna nas tabelas com suas integridades do TOTVS Agro Plataforma
4.1.1. Se for uma fazenda (Nível 1) (FazendaTCServerListener.java), é inserido e registrado na tabela FAZENDA, por meio da classe FazendaTCServerProcessor.java
4.1.2. Se for um setor (Nível 2) (SetorTCServerListener.java), é inserido e registrado na tabela SETOR, por meio da classe SetorTCServerProcessor.java
4.1.3. Se for um talhão (Nível 3) (TalhaoTCServerListener.java), é inserido e registrado na tabela talhao_logico, por meio da classe TalhaoTCServerProcessor.java
4.2. Após as inserções e validações a mensagem (JSON) é novamente inserido em outra fila do Rabbit para enviar para o TOTVS Agro Conecta Dados por meio da classe EntidadePlataformaPublisher.java
5. TOTVS Agro Conecta Dados
5.1. Em uma fila única, a mensagem recebida é verificada o tipo do connector e a mesma é processada na classe AcaoConectorEntidade.java
5.2. TOKEN
5.2.1 O token é recuperado por meio do preenchimento no front e inserido nas tabelas do TOTVS Agro Conecta Dados, a autenticação e atualização de token pode ser acompanhado na classe: AtualizarTokenSalesforceService.java
5.3. FAZENDA
5.3.1. SalesforceEnvioFazendaProcessor.java é a classe responsavél por ler a mensagem, criar e tratar o JSON com a estrutura da Salesforce
5.3.2. SalesforceFazendaHttpClient.java realiza a autenticação e realiza o envio se comunicando com a API Salesforce.
5.4. SETOR
5.4.1. SalesforceEnvioSetorProcessor.java é a classe responsavél por ler a mensagem, criar e tratar o JSON com a estrutura da Salesforce
5.4.2. SalesforceSetorHttpClient.java realiza a autenticação e realiza o envio se comunicando com a API Salesforce.
5.5. TALHAO
5.5.1. SalesforceEnvioTalhaoProcessor.java é a classe responsavél por ler a mensagem, criar e tratar o JSON com a estrutura da Salesforce
5.5.2. SalesforceTalhaoHttpClient.java realiza a autenticação e realiza o envio se comunicando com a API Salesforce.