O processamento de operações do PDV consiste na sincronização das operações feitas no PDV com o retaguarda, e sua efetivação logística, fiscal e financeira.
O processamento compreende 2 etapas: enviar informações do PDV para o banco do servidor (REPLICAÇÃO, feita pelo serviços LojamixRemotingService), e processar as operações que estão nas tabelas temporárias do servidor para as tabelas efetivas (PROCESSAMENTO, feita pelo serviço LojamixProcessadorService). Para mais detalhes sobre o funcionamento dos serviços clique aqui
REPLICAÇÃO: do PDV para o Retaguarda:
A “replicação” de informações do PDV para o retaguarda consiste em enviar os dados de operações de PDV (operação, itens, finalizadores, etc) para as tabelas temporárias do retaguarda. Estas tabelas temporárias no retaguarda tem exatamente o mesno nome do PDV, mas são precedidas pelo prefixo “hiperpdv_” no mone da tabela. Por exemplo, a tabela temporária que recebe as operações de PDV no retaguarda enviadas pelo LojamixRemotingService é a “hiperpdv_operacao_pdv”.
O campo responsável por indicar se uma operação e todas as suas dependências (itens, finalizadores, recebimento, etc) será processada ou não é o campo “situacao_replicacao” da tabela “operacao_pdv”. Para NCF-e / SAT, as notas serão processadas com base no campo “Lojamix_SitReplicacao” da tabela “GRS_NFE”. Os códigos das situações de replicação obedecem a tabela abaixo:
- 0 – Não definido: sem definição de deve replicar operações
- 1 – Replicação pendente: a replicação será efetuada
- 2 – Replicação ignorada: não será mais replicada
- 9 – Replicação efetuada: replicação feita com sucesso
Com base nos códigos acima, as operações / notas serão replicadas para o retaguarda caso campo responsável pela replicação seja igual a 1 (replicação pendente). Toda vez que este campo for 1 e o serviço LojamixRemotingService estiver ativo, a operação / nota será replicada. Caso a operação já existe no retaguarda, o LojamixRemotingService irá gerar um log informando que a operação já existe e nada será feito. No caso da nota (NFC-e / SAT), a mesma será identificada pela chave e número, e caso exista será editada. Para maiores detalhes sobre a utilização de logs do Lojamix, clicar aqui.
PROCESSAMENTO: efetivando operações do PDV no Retaguarda
Após o serviço LojamixRemotingService enviar as informações do PDV para as tabelas temporárias do retaguarda, as mesmo precisam ser “processadas”. Este processamento faz toda a parte logística (movimentações de estoque), financeira (documentos a pagar e a receber) e fiscal (registro de documentos fiscais). Este processamento é feito pelo LojamixProcessadorService.
Os campos responsáveis para que o processamento da operação de PDV e todas suas dependências aconteça é o campo “situacao_replicacao” da tabela “hiperpdv_operacao_pdv”, e para NFC-e / SAT é o campo “situacao_replicacao” da tabela “hiperpdv_nota_fiscal”. Os códigos das situações de processamento obedecem a tabela abaixo:
- 0 – Não definido: sem definição de deve processar operações
- 1 – Processamento pendente: a processamento será efetuado
- 2 – Processamento com erro: deve-se revisar os logs
- 9 – Processamento efetuado: processamento feito com sucesso
Com base nos códigos acima, as operações / notas serão processadas caso campo responsável pelo processamento seja igual a 1 (processamento pendente). Toda vez que este campo for 1 e o serviço LojamixProcessadorService estiver ativo, a operação / nota será processada.
“REPROCESSAR” operações
Conforme comentado anteriormente, para reporcessar operações / notas pode-se replicar novamente do PDV para as tabelas temporárias do retaguarda, e processá-las novamente.
Para que o ato de replicar novamente as operações tenha efeito, primeiramente é necessário excluí-las das tabelas temporárias (as que começam com “hiperpdv_” no banco do retaguarda).
Para “reprocessar” uma operação / nota, o processo é bem mais complexo, pois todas as movimentações geradas pelas mesmas devem antes serem “estornadas” (para que os movimentos de estoque, financeiro, etc sejam revertidos), e as operações / notas que já estão nas tabelas finais do retaguarda devem ser “excluídas”, além de todas as suas dependências, o que pode ser um trabalho bastante complexo.
Para replicar ou reprocessar uma operação, basta fazer um “update” no banco de dados para que os campos responsáveis pela replicação (no PDV) e processamento (no retaguarda) seja 1 e ativar os serviço. Neste momento os processos terão início, e os logs serão novamente gerados.
Sobre o Autor