Sincroniza
O Sincroniza tem como objetivo principal espelhar bases de dados que trabalham independentes. Sua principal utilidade é permitir que uma empresa com mais de uma loja física consiga trabalhar sem um servidor centralizado.
Normalmente utilizado por Matriz e Filiais, em que as informações de uma loja sincronizam com a outra, porem, pode-se utilizar também em empresas que queiram trabalhar com PDVs (estações) off-line, mais comummente em mercados, evitando o risco de os caixas pararem por problemas de rede interna ou pane no servidor.
Configuração
As empresas são interligadas através de uma rede VPN. A partir dai entra o processo de instalação e configuração do sincroniza que pode ser verificado em https://wiki.officesystem.com.br/Sincroniza.
O funcionamento do sistema se da pela geração de logs de tudo que foi feito no Master Key e posteriormente o Sincroniza irá gerar scripts com essas informações para os servidores das outras lojas na rede.
Na maquina principal, (ou na máquina em que ficar rodando o sincroniza) deve-se ativar a Tag de inicialização automática do sincroniza juntamente com o Master Key dentro do arquivo connect.ini --> StartSincroniza = True
Exemplo:
O processo de sincronização é configurado para que seja executado a cada XX minutos (5 por exemplo). A cada ciclo o sincroniza irá primeiramente gerar os Scripts a serem distribuídos para as outras lojas para depois buscar scripts que lhe pertencem em outras lojas.
Pegamos como exemplo uma empresa que possui 3 lojas em endereços distintos. Se algo for alterado ou acrescentado na Loja 2, essa por sua vez gera um log, e posteriormente gera um script com essa informação para as Lojas 1 e 3. Este arquivo sera gerado dentro das pastas
\sincroniza\Temp\Loja01
\sincroniza\Temp\Loja03
As Lojas 1 e 3 por sua vez, ao executarem o clico, irão buscar pela rede atraves do endereço da VPN dentro de suas respectivas pastas os arquivos que serão salvos na pasta local
\sincroniza\A Sincronizar
Uma vez tendo copiado todos os arquivos,e feito as verificações se os mesmos chegaram corretamente, o Sincroniza os importa para as tabelas Sinc_Arquivos e o seu conteúdo para a tabela Sinc_comandos e na sequencia executa os mesmos.
Uma cópia dos arquivos enviados fica na pasta:
\sincroniza\Enviados
Uma cópia dos arquivos recebidos fica em:
\sincroniza\Recebidos
Depois que todas as lojas tiverem feito este processos de alteração ou inserção em suas respectivas bases ambas terão as mesmas informações
Atenção:
Ao executar o Sincroniza ele irá ficar minimizado na área de notificação. Acompanhe constantemente se não ha algum erro de sincronização clicando com o direito no ícone e abrir.
Tutorial Sincroniza SEM Servidor Central
- Esta é a configuração mais comum em um cenário onde o servidor de todas as lojas está sempre ligado e onde todos os computadores sincronizam entre si. Usarei como exemplo a sincronização entre 3 lojas, LOJA1, LOJA2 e LOJA3.
Banco de log ZERADO
- Ao configurar pela primeira vez o Sincroniza é importe que você utilize um banco de log (MKLOG.FDB) zerado, evitando que dados passados sejam sincronizados.
Configuração Generators
- O generator é o campo chave de cada tabela, a sequencia que os lançamentos irão seguir. Por padrão todos os generators vem com o valor 0. O próximo lançamento utilizará ele +1.
Nessa imagem podemos ver alguns generators, em destaque o GEN_CONTROLE que é utilizado por Vendas, Compras, entre outras tabelas.
Os generators devem estar diferentes nos bancos de cada loja. Então, por exemplo, na LOJA1 podemos deixar todos seguindo a sequencia atual do banco.
Na LOJA2 e LOJA3 teremos que avançar os generators (utilizando sequencias diferentes em cada uma das lojas), o número que será utilizado depende da utilização de cada campo.
O GEN_CONTROLE que normalmente é o mais utilizado pode ser avançado para 2.000.000 na LOJA2 e 3.000.000 na LOJA3.
O GEN_CLIENTES que é bastante utilizado também mas não necessita ser avançado tanto pode ser avançado para 200.000 na LOJA2 e 300.000 na LOJA3.
O grande cuidado em relação aos generatos é não deixar que a sequencia de uma loja alcance a sequencia da outra.
Configuração do Sincroniza na primeira loja
- Para começar a cadastrar basta ir até a aba de Configuração e preencher os dados de todas as Lojas seguindo o exemplo abaixo:
Na Aba Servidor preencher o campo nome com o nome da primeira loja.
Na Aba PDV preencher o campo nome com o nome da segunda loja, o campo Host com o IP da segunda loja e o Path com o caminho do mapeamento da segunda loja.
-Repetir o processo para cadastrar a terceira loja:
Ainda na Aba PDV preencher o campo nome com o nome da terceira loja, o campo Host com o IP da terceira loja e o Path com o caminho do mapeamento da terceira loja.
Configuração do Sincroniza na segunda e terceira loja
- Na segunda e terceira loja deve ser invertido o servidor com um dos PDVs utilizados na primeira loja, exemplo:
Aba Servidor da segunda loja.
Aba PDV da segunda loja.
- Repetir o processo na terceira loja seguindo as orientações acima.
Tutorial Sincroniza COM Servidor Central
- Esta é a configuração em um cenário onde há somente um servidor que está sempre ligado e onde todos os computadores das outras lojas enviam seus arquivos para esse servidor. Usarei como exemplo a sincronização entre 3 lojas, LOJA1, LOJA2 e LOJA3 onde LOJA1 é o servidor central.
Banco de log ZERADO
- Ao configurar pela primeira vez o Sincroniza é importe que você utilize um banco de log (MKLOG.FDB) zerado, evitando que dados passados sejam sincronizados.
Configuração Generators
- O generator é o campo chave de cada tabela, a sequencia que os lançamentos irão seguir. Por padrão todos os generators vem com o valor 0. O próximo lançamento utilizará ele +1.
Nessa imagem podemos ver alguns generators, em destaque o GEN_CONTROLE que é utilizado por Vendas, Compras, entre outras tabelas.
Os generators devem estar diferentes nos bancos de cada loja. Então, por exemplo, na LOJA1 podemos deixar todos seguindo a sequencia atual do banco.
Na LOJA2 e LOJA3 teremos que avançar os generators (utilizando sequencias diferentes em cada uma das lojas), o número que será utilizado depende da utilização de cada campo.
O GEN_CONTROLE que normalmente é o mais utilizado pode ser avançado para 2.000.000 na LOJA2 e 3.000.000 na LOJA3.
O GEN_CLIENTES que é bastante utilizado também mas não necessita ser avançado tanto pode ser avançado para 200.000 na LOJA2 e 300.000 na LOJA3.
O grande cuidado em relação aos generatos é não deixar que a sequencia de uma loja alcance a sequencia da outra.
Configuração do Sincroniza na primeira loja onde será o servidor central
- Para começar a cadastrar basta ir até a aba de Configuração e preencher os dados da primeira Loja seguindo o exemplo abaixo:
Na Aba Servidor preencher o campo nome com o nome da primeira loja e marcar a opção Servidor Central.
Na Aba PDV preencher o campo nome com o nome da segunda loja, o campo Host com o IP da segunda loja e o Path com o caminho do mapeamento da segunda loja.
-Repetir o processo para cadastrar a terceira loja:
Ainda na Aba PDV preencher o campo nome com o nome da terceira loja, o campo Host com o IP da terceira loja e o Path com o caminho do mapeamento da terceira loja.
Configuração do Sincroniza na segunda e terceira lojas
- Aqui vem a grande diferença para a sincronização sem servidor central, na segunda e terceira loja deve ser invertido o servidor com um dos PDVs utilizados na primeira loja, porém na aba PDV deve-se cadastrar somente a LOJA1 (que é o servidor central), ou seja, na LOJA2 não teremos a LOJA3 e na LOJA3 não teremos a LOJA2, exemplo:
Aba Servidor da segunda loja.
Aba PDV da segunda loja.
Aba Servidor da terceira loja.
Aba PDV da terceira loja.
- Dessa forma o servidor central (LOJA1) irá buscar os arquivos da LOJA2 e disponibilizar para a LOJA3 e da mesma forma irá buscar os arquivos da LOJA3 e disponibilizar para a LOJA2.