Ir para conteúdo
  • Cadastre-se

dev botao

Integridade entre ECF e banco de dados


Ver Solução Respondido por schrsistemas,
  • Este tópico foi criado há 1890 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

Postado

Saudações,

ja tentei de diversas formas, mas vira e mexe em clientes grandes principalmente supermercados onde ocorre muitas transações,

por falhas diversas, energia, rede, desligamentos, ocorre divergencia entre o que tem no ecf e o que foi devidamente gravado no banco.

isso me refiro principalmente aos itens registrados no ecf e aos itens registrados no banco.

 

hoje a rotina faz assim:

 

inicio a transação no banco de dados (sql server)

incluo o registro no banco de dados

envio o comando para o ecf

se o comando foi enviado, eu executo o commit

 

porem pode ocorrer um desligamento depois da impressao do item e antes do commit, isso faz com que perco os dados no banco, porem o mesmo ja foi impresso no ecf.

 

ja tentei tambem, enviar para o ecf, e posteriormente enviar para o banco, mas pode tambem ocorrer de imprimir, e da uma falha externa e nao gravar no banco.

ja tentei tambem gravar no banco, da o commit, e enviar para o ecf, mas novamente pode ocorrer uma falha e nao imprimir.. e nao conseguir excluir do banco o registro nao impresso.

que solução voces utilizam para garantir com 100% de certeza que vou ter os dados integros entre banco e ECF?

 

  • Consultores
Postado

No-Breaks.

[]'s

Consultor SAC ACBr

Elton
Profissionalize o ACBr na sua empresa, conheça o ACBr Pro.

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

Um engenheiro de Controle de Qualidade(QA) entra num bar. Pede uma cerveja. Pede zero cervejas.
Pede 99999999 cervejas. Pede -1 cervejas. Pede um jacaré. Pede asdfdhklçkh.
  • Moderadores
Postado

Uma coisa que é bom deixar claro, no Paf-ECF é mandatório gravar os dados no BD após a execução do comando no ECF, não antes, isso é testado por algumas homologadoras inclusive.

No ACBr existe o evento onDepoisVendeItem e outros eventos OnDepois... que você pode usar para esse tipo de controle.

Equipe ACBr

Régys Borges da Silveira

http://www.regys.com.br

certificacao delphicertificacao delphi
Postado (editado)

ja tentei tambem dessa forma, em um ambiente perfeito funciona legal, em milhares de vendas inevitalvamente uma hora ou outra isso vai falhar

como nao existe um starttransaction , e committransaction entre banco e ecf tudo junto, isso simplemente nao tem solucao.

envio para o ecf, e antes de gravar no banco, cai a rede, energia, ai ja foi... tenho o dado no ecf e nao tenho no banco.

o negocio e deixar como esta, e aguardar o fim do ecf, so assim os problemas vao ser resolvidos...

Editado por wilton_rad
Postado

Eu controlo pelo número do item. 

Caso ocorra uma falta de energia, ao recuperar a venda eu consulto o número do último item na impressora e comparo com ultimo item gravado no meu banco de dados.

Se por acaso o item acabou sendo impresso e eu por ventura não gravei no meu banco de dados eu cancelo o item na impressora. O sincronismo é mantido.

Em último caso se faz forma tradicional, tirando a fita-detalhe ou gerando o arquivo das vendas da ecf e vendo o que falta.

Att.
 

Giuliano Naspolini Ribeiro

Automalog Consultoria e Sistemas Ltda

  • 4 anos depois...
  • Solution
Postado

Estou a utilizar a gravação dos itens com base no evento onDepoisVendeItem 

 

Está bem crítico, já mudei várias estratégias de implementação.

Dependendo a mesma marca modelo, até mandado a assistência a ecf.

 

Perde se itens ao gravar na base de dados. Independente de hardware, já peguei casos de hardware ruim, sistema operacional depreciado e a integridade dos dados perfeito. 

  • Curtir 1
  • Este tópico foi criado há 1890 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora
×
×
  • Criar Novo...

Informação Importante

Colocamos cookies em seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies, caso contrário, assumiremos que você está bem para continuar.