Descrição
O EAI Protheus possui um sincronizador de carga inicial para os cadastros que podem ser trafegados via EAI. É possível, dentre os adapters cadastrados, escolher qual destes se deseja iniciar a sincronização, enviando todos os registros impactados por aquele adapter via EAI para o outro sistema.
Este sincronizador é somente para a sincronização de carga inicial entre uma base Protheus populada e uma outra base. Não há controle se o registro já existe ou não no outro sistema. No cenário ideal do sincronizador os dados existem no Protheus e não existem no outro sistema integrado. Uma vez iniciado o sincronizador ele irá enviar, respeitando as regras do adapter selecionado, todos os registros via EAI para o outro sistema escolhido.
O sincronizador é um facilitador de implantação para enviar, a partir do Protheus, os registros de um determinado cadastro através do EAI. O sincronizador não é responsável por realizar as gravações de de-para, internalid (quando tratar-se de Mensagem Única TOTVS) ou processar a regra de negócio envolvida nas integrações.
Atenção! Este sincronizador deve ser utilizado somente no momento da implantação das integrações, e nunca durante a operação do sistema.
Este sincronizador é somente para a sincronização de carga inicial entre uma base Protheus populada e uma outra base. Não há controle se o registro já existe ou não no outro sistema. No cenário ideal do sincronizador os dados existem no Protheus e não existem no outro sistema integrado. Uma vez iniciado o sincronizador ele irá enviar, respeitando as regras do adapter selecionado, todos os registros via EAI para o outro sistema escolhido.
Adapters para carga Inicial
Apenas algumas rotinas de cadastro poderão ser usadas na carga inicial. Rotinas de processamento(Vendas, Inventario, Fechamento de caixa, Notas etc.) não devem ser utilizadas na carga inicial conforme tabela abaixo
Protheus poderá enviar as seguintes Mensagens na carga inicial:.
Mensagem Única | Rotina Protheus | Mensagem | Descrição |
Sim | MATA030 | CustomerVendor | Cliente |
Sim | MATA010 | Item | Produto |
Sim | MATA020M | CustomerVendor | Fornecedor |
Sim | OMSA010 | PriceListHeaderItem | Tabela de Preço |
|
|
|
|
| |||
Sim | LOJA210 | Item | Código de barras |
| |||
|
| ||
Sim | MATA040 | Seller | Vendedor |
Procedimento para Utilização
Para selecionar os adapters para sincronização é necessário que este já esteja cadastrado no grupo no qual a rotina foi iniciada.
Para verificar como cadastrar um adapter, verifique o tópico do cadastro de adapter do EAI Protheus.
Selecionando a opção do sincronizador é apresentado o browse com todos os adapters já cadastrados no Protheus.
O sistema calcula o número máximo de threads de acordo com a quantidade de registros existentes para envio. Após selecionar a quantidade de threads e clicar em Finalizar a mensagem é apresentada, e os registros começam a ser enviados
Obs.: o número de Threads tem impacto no tempo de execução dos processos.
A tela dos Logs de Sincronização
Existe uma interface própria para acompanhamento dos eventos enviados para sincronização. Esta tela permite através de gráficos e outras formas de visualização controlar o progresso da sincronização.
Para acessar esta rotina, na tela de sincronização do EAI , clique na aba Log de sincronização.
Vamos explicar cada componente desta tela e o seu comportamento.
Interface superior da tela
A interface superior da tela de logs de sincronização controla o tempo de atualização da tela e é responsável pela maioria dos comandos que podem ser executados aqui.
São recursos desta interface:
- Atualizar a cada - A partir deste combo é possível selecionar o intervalo de atualização da tela. A tela de Logs de sincronização é atualizada automaticamente, respeitando o intervalo definido pelo usuário através do combo atualizar a cada. A tela é automaticamente atualizada, mas de maneira assíncrona. É enviado um sinal para que sejam recalculados todos os valores e as tabelas são atualizadas, e a tela é atualizada com base nos valores já existentes. Estes valores são recalculados por outra thread, que atualiza a tabela de sincronização. Na próxima atualização de tela, estes valores são lidos e um novo pulso é enviado para iniciar o recálculo;
- Texto com informações - Este texto (no nosso exemplo "Não há dados sendo sincronizados no momento") indica o status geral do sincronizador EAI. Ele é responsável por indicar se os registros estão sendo processados, se não existe mais processamento ou se o sincronizador está em tentativa de parar (em processos de multiplas threads a parada do sincronizador pode demorar, pois é necessário parar todas as Threads antes);
- Botão Iniciar - Caso o sincronizador esteja parado, é possível reiniciar o sincronizador;
- Botão Parar - Responsável por parar o sincronizador (em processos de multiplas threads a parada do sincronizador pode demorar, pois é necessário parar todas as Threads antes);
- Botão reprocessar - Envia um sinal para que ocorra o reprocessamento de sincronização com erro (erro causado no sistema) ou por retorno negativo de outro EAI (possível somente após o término do processo). Para um reprocessamento com mensagens de retorno negativo de outro EAI o sincronizador não irá chamar o adapter novamente. Ele irá carregar as mensagens já enviadas e irá realizar o reenvio das mesmas e o adapter será chamado no retorno das mensagens enviadas.;
- Botão Bloquear/Excluir - Botão responsável por bloquear um processo de sincronização. Processos bloqueados não podem ser reinicializados. Caso um registro já esteja bloqueado é possível excluir este registro. Assim sendo, só é possível excluir um registro que já esteja bloqueado. Para bloquear registros que estejam com o status de executando é necessário parar o sincronizador.
Importante!
Visando uma economia de recursos toda vez que um processo é reiniciado (reprocessado, iniciado novamente após uma falha, etc) o número de threads máximas a utilizar é reavaliado, partindo do valor escolhido do usuário. Este valor pode ser reduzido, chegando até o valor de 1 thread.
Obs. Após a sincronização podemos consultar no painel de Integração Live, levando sempre em consideração que este endereço é fornecido pela equipe da Bematech durante à integração. Nos testes utilizamos o endereço http://10.22.20.73/TotvsEAI/dashboard, verificar com a equipe de integração.