Páginas filhas
  • O Sincronizador de Carga Inicial do EAI Protheus

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.
Aviso
titleMelhoria ainda não disponível

Esta melhoria só estará disponível a partir de outubro de 2015.

Âncora
_titulo
_titulo
O sincronizador de carga inicial

          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.

Nota
titleAtenção

Este sincronizador deve ser utilizado somente no momento da implantação das integrações, e nunca durante a operação do sistema.

Âncora
_selecionandoadapter
_selecionandoadapter
Selecionando o adapter para a sincronização inicial

          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.

          Vamos selecionar a opção Sinc. Carga inicial (APCFG020A) no menu do configurador Protheus:

Opção do menu do sigacfg, onde é possível verificar o sincronizador EAI.Image Added

Opção do menu do sigacfg, onde é possível verificar o sincronizador EAI


          Selecionando a opção do sincronizador é apresentado o browse com todos os adapters já cadastrados no Protheus

Tela do sincronizador EAIImage Added

          Tela do sincronizador EAI


          Podemos selecionar então os adpaters que iremos realizar a sincronização. Basta selecionar um adapter e clicar em Sincronização inicial. O sincronizador irá tentar identificar o alias principal relacionado à aquele adapter. Para isto ele busca se existe modelo de dados Protheus (modeldef) dentro do adapter e em caso positivo, assume como alias principal a tabela master deste modelo. Caso não exista modelo de dados e somente para as Mensagens Única TOTVS o sincronizador irá buscar o conteúdo do campo Alias(XX4_ALIASP) do cadastro do referido adapter. Caso exista valor neste campo, este será assumido como alias a ser utilizado. Caso as duas alternativas acima não sejam capazes de identificar o alias da tabela o sincronizador buscará as informações do campo SYS_OBJ do SX2 e verificará através das tabelas relacionadas ao adapter o alias principal. Caso isto não seja possível, uma mensagem adverte o usuário que aquele adapter não está pronto para sincronização:

Mensagem indicando ao usuário que o adapter não está preparado para a sincronizaçãoImage Added

Mensagem indicando ao usuário que o adapter não está preparado para a sincronização

          Para um adapter de Mensagem Única TOTVS existe a opção para o usuário de preencher o campo Alias, do cadastro de adapter. Este campo é responsável por enviar uma série de informações para o outro sistema. Para entender o conceito deste campo, verifique o tópico do cadastro de adapter do EAI. Se nenhuma das opções acima puder ser verificada a equipe responsável pelo adapter deverá ser acionada.

          Caso o adpater esteja em condições de sincronização o sistema calcula e apresenta um range de threads disponíveis para realizar o processamento (no mínimo 1 e no máximo 9 threads). Um número maior de threads torna o processo mais rápido, pois são realizados envios de mensagens de forma paralela. Porém isto consome mais recursos do sistema e pode até mesmo sobrecarregar o sistema que irá receber as mensagens.

Nota
titleAtenção

Outro ponto a se considerar é que, em um processo multi-thread, em um erro onde o servidor pare de responder (queda de energia, erro em alguma rotina relacionada) o sistema pode posteriormente não conseguir iniciar o processamento no ponto exato de parada, podendo iniciar alguns registros antes ou depois, pois o processo ocorreu em paralelo.

           Já o processo com uma única thread tende a ser mais demorado porém em caso de erro fatal o processo recomeçará do ponto exato onde foi interrompido. Estes pontos devem ser levados em consideração no momento de escolher o número de threads a utilizar.

Tela para a escolha de threads de execuçãoImage Added

Tela de escolha de threads de execução

        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.

Mensagem que indica que o processo de sincronização começouImage Added

Mensagem que indica que o processo de sincronização começou

          Enquanto a sincronização deste adapter não terminar com sucesso ou não for bloqueada não é possível iniciar uma sincronização do mesmo adapter.

Mensagem indicando que já existe sincronização em execução para o adapter em questãoImage Added

Mensagem indicando que já existe sincronização para o adapter

        A partir deste momento para cada linha do alias associado ao adapter a integração será chamada.

Âncora
_teladelogs
_teladelogs
A tela dos Logs de Sincronização

          Existe uma interface própria para acompanhamento dos eventos enviados para sincronização

 

 

Status do documentoEm construção
Data19/05/2015
Versão1.0
Versão anterior1.0
Autores

Jandir Deodato De Souza Silva

Índice resumido
Índice
maxLevel1
indent10px
Índice
Índice
outlinetrue
indent10px