Fórum ClientDataSet vs PAF #428857

16/11/2012

0

Colegas,

Estou desenvolvendo um PAF e o requisito II prevê funcionamento StandAlone. Então gostaria de trabalhar com o ClientDataSet
off-line, gravando o cache em DataPacket e ao final da transação seria enviado para o banco. Como eu gostaria de realmente trabalhar off-line durante todo o movimento e no fechamento de caixa é que seria feita a transmissão, esbarrei com um problema: todas as tabelas de movimentação tem o campo ID, no caso o campo pelo qual os relacionamentos são feitos. O problema é no momento em que eu vou "subir" os dados, como tratar essa situação de mater a relação MESTRE/DETALHE no banco, uma vez que o campo ID é auto-incremento por TRIGGER, e no cache em DataPacket eu usei um numeral diferente do que será encontrado no banco.

Abraço.
Lucas Belkys

Lucas Belkys

Responder

Posts

16/11/2012

Claudia Nogueira

Eu mantenho uma cópia do BD local com os cadastros e a movimentação local também, e a chave primária de todas as tabelas de movimentação são compostas por um número incremental + o id do terminal, sendo assim não tem problema, que não vai duplicar.
O sistema trabalha totalmente off, e não importa se acabar a energia, ou o sistema for finalizado, tudo fica sempre local e no final do dia/abertura do dia ou por meio de uma função específica acionada manualmente, os dados são enviados para o servidor.
Quando fui homologar não tive problemas trabalhando dessa forma.
Responder

Gostei + 0

16/11/2012

Lucas Belkys

Eu mantenho uma cópia do BD local com os cadastros e a movimentação local também, e a chave primária de todas as tabelas de movimentação são compostas por um número incremental + o id do terminal, sendo assim não tem problema, que não vai duplicar.
O sistema trabalha totalmente off, e não importa se acabar a energia, ou o sistema for finalizado, tudo fica sempre local e no final do dia/abertura do dia ou por meio de uma função específica acionada manualmente, os dados são enviados para o servidor.
Quando fui homologar não tive problemas trabalhando dessa forma.


MAs é que eu quero trabalhar apenas com DataPacket salvo em XML local.
Responder

Gostei + 0

16/11/2012

Claudia Nogueira

Eu entendi o jeito que você quer trabalhar e como não acho muito viável por causa que a base pode ser muito grande com relação a manter os cadastros de produtos/clientes e etc também no XML quando o sistema estiver OFF aí postei a minha forma de trabalhar.
Também não conversei ainda com ninguém que tenha homologado dessa forma o PAF, vamos ver se alguém aqui no fórum conhece sobre o assunto.
Responder

Gostei + 0

16/11/2012

Lucas Belkys

Eu entendi o jeito que você quer trabalhar e como não acho muito viável por causa que a base pode ser muito grande com relação a manter os cadastros de produtos/clientes e etc também no XML quando o sistema estiver OFF aí postei a minha forma de trabalhar.
Também não conversei ainda com ninguém que tenha homologado dessa forma o PAF, vamos ver se alguém aqui no fórum conhece sobre o assunto.


Não quero manter tudo em XML. Pretendo acumular em XML apenas um dia de movimento, até ele enviar para o servidor Cloud. O que acha asssim ?
Responder

Gostei + 0

16/11/2012

Claudia Nogueira

Pelo que já li sobre o PAF e meu entendimento sobre o ato cotepe, a rede a que se refere o requisito, quer dizer uma rede interna, ou seja, o bando de dados centralizador das informações do PAF-ECF deve estar em um computador que esteja fisicamente dentro da empresa, na qual as estações se conectam e enviam e recebem informações.
Não é permitido usar sistema PAF-ECF com banco de dados hospedado em outro lugar por exemplo, mas isso você pode também esclarecer com o homologador, no meu caso o homologador me explicou dessa forma.
Sobre guardar somente a movimentação em XML local, um jeito de resolver o problema das chaves seria criar uma numeração específica pra cada máquina, ou seja, teria um cadastro de terminal e no terminal 1 a chave começaria do 100000001 no 2 do 200000001 e no 3 do 300000001, isso em todas as tabelas envolvidas, na hora de replicar seria mais fácil a manutenção.
Agora tem a questão que quando o sistema está OFF, pelo menos os cadastros de produtos devem estar disponíveis para efetuar uma venda, essa questão que levantei, tem que de tempo em tempo atualizar os cadastros locais por causa de uma eventual queda da rede o sistema poder continuar vendendo com os preços atualizados.
Vamos debatendo mais o assunto até chegar num jeito melhor pra você trabalhar.
Responder

Gostei + 0

16/11/2012

Lucas Belkys

Pelo que já li sobre o PAF e meu entendimento sobre o ato cotepe, a rede a que se refere o requisito, quer dizer uma rede interna, ou seja, o bando de dados centralizador das informações do PAF-ECF deve estar em um computador que esteja fisicamente dentro da empresa, na qual as estações se conectam e enviam e recebem informações.
Não é permitido usar sistema PAF-ECF com banco de dados hospedado em outro lugar por exemplo, mas isso você pode também esclarecer com o homologador, no meu caso o homologador me explicou dessa forma.
Sobre guardar somente a movimentação em XML local, um jeito de resolver o problema das chaves seria criar uma numeração específica pra cada máquina, ou seja, teria um cadastro de terminal e no terminal 1 a chave começaria do 100000001 no 2 do 200000001 e no 3 do 300000001, isso em todas as tabelas envolvidas, na hora de replicar seria mais fácil a manutenção.
Agora tem a questão que quando o sistema está OFF, pelo menos os cadastros de produtos devem estar disponíveis para efetuar uma venda, essa questão que levantei, tem que de tempo em tempo atualizar os cadastros locais por causa de uma eventual queda da rede o sistema poder continuar vendendo com os preços atualizados.
Vamos debatendo mais o assunto até chegar num jeito melhor pra você trabalhar.


(risos) Você é fantástica. Durante a próxima semana voltaremos a conversar. Até aqui minhas citações foram sem qualquer requinte. Então a partir de segunda explicarei melhor minhas idéias. Boa noite e bom final de semana.
Responder

Gostei + 0

16/11/2012

Claudia Nogueira

Você está rindo de mim?
Hehehehe.
Tudo bem.
Responder

Gostei + 0

16/11/2012

Lucas Belkys

Você está rindo de mim?
Hehehehe.
Tudo bem.


Sim, ri. Mas foi um riso do bem. Fiquei impressionado com seu comprometimento com um desconhecido. E pessoas como eu, acha isso o máximo, pois se com um desconhecido você é assim, com os clientes e colaboradores fica fácil de imaginar.
Responder

Gostei + 0

16/11/2012

Claudia Nogueira

Ah deixa eu te contar uma coisa.
A pior época da minha vida foram os meses que eu fiquei por conta de desenvolver e homologar o PAF-ECF.
Sofri muito, e quase cometi suicídio (sério hehehe).
Eu fiz tudo do jeito que entendi, e chegou lá precisei mudar muita coisa de última hora, mesmo tendo tido bastante suporte por parte da homologadora.
O temido bloco VII deve realmente ser temido, pois é é muito cansativo, muito demorado, e qualquer deslize tem que refazer.
Mas enfim, depois de tanto sofrimento eu consegui homologar de primeira em 5 dias, e se foi parte dos meus neurônios e 7 mil reais.
Por isso tento ajudar no que posso, explicando a forma que eu fiz.
Eu achava que homologar o TEF tinha sido minha pior experiência, depois que homologuei o PAF percebi que foi uns 500% mais difícil.
Responder

Gostei + 0

16/11/2012

Lucas Belkys

Ah deixa eu te contar uma coisa.
A pior época da minha vida foram os meses que eu fiquei por conta de desenvolver e homologar o PAF-ECF.
Sofri muito, e quase cometi suicídio (sério hehehe).
Eu fiz tudo do jeito que entendi, e chegou lá precisei mudar muita coisa de última hora, mesmo tendo tido bastante suporte por parte da homologadora.
O temido bloco VII deve realmente ser temido, pois é é muito cansativo, muito demorado, e qualquer deslize tem que refazer.
Mas enfim, depois de tanto sofrimento eu consegui homologar de primeira em 5 dias, e se foi parte dos meus neurônios e 7 mil reais.
Por isso tento ajudar no que posso, explicando a forma que eu fiz.
Eu achava que homologar o TEF tinha sido minha pior experiência, depois que homologuei o PAF percebi que foi uns 500% mais difícil.


Eu já homologuei ambos. Posso dizer que não foi fácil, nem difícil. Teria sido fácil se eu tivesse mais concentração na época. É que aquela pressão deixa você improdutivo. A suíte ACBR adianta 60%, senão mais.

No momento estou reescrevendo todo nosso ERP. Começando pelo PAF e ta indo MUITO rápido. Outro problema também é você já ter um software fiscal e ter que adaptá-lo pra ser um PAF. É melhor começar do ZERO. Acredite! rs
Responder

Gostei + 0

16/11/2012

Claudia Nogueira

Concordo que é melhor começar do zero mesmo. Meu problema maior foi que peguei um software com 15 anos de mercado e tive que adaptar. Então imagina a situação...
Pra você está bem mais fácil então, já que tem toda a experiência e você só quer mesmo um feedback de alguém que já tenha feito gravando a movimentação em XML.
Se eu tiver alguma ideia sobre isso eu posto aqui, vou ficar pensando. :)
Responder

Gostei + 0

16/11/2012

Lucas Belkys

Concordo que é melhor começar do zero mesmo. Meu problema maior foi que peguei um software com 15 anos de mercado e tive que adaptar. Então imagina a situação...
Pra você está bem mais fácil então, já que tem toda a experiência e você só quer mesmo um feedback de alguém que já tenha feito gravando a movimentação em XML.
Se eu tiver alguma ideia sobre isso eu posto aqui, vou ficar pensando. :)


Acho que vou basear tudo em fluxo de DataPacket com DataSnap. O Paf gera o XML, grava num diretório qualquer, uma Thread fica enviando esses XML para o servidor, se o mesmo estiver on-line, caso não, a Thread fica aguardando.

O que você acha ?
Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar