DBF em branco
Moderador: Moderadores
-
supgaroto
- Usuário Nível 2

- Mensagens: 51
- Registrado em: 19 Ago 2003 14:24
- Localização: Rua Aristotoles Fernandes Valdares, 1190
DBF em branco
Em um cliente um dbf com 30000 registros simplesmente 23000 registros ficaram em branco. Existe o registro só que todas as informações desapareceram tudo limpo, valores zerados.... Já verifiquei todo o codigo do sistema e não tem nenhum comando que possa ter feito isso!! Alguem já passou por isso? Como faço pra disponibilizar o arquivo aqui, caso alguém queira olhar?
- Gilberto M Silva
- Usuário Nível 3

- Mensagens: 230
- Registrado em: 13 Mar 2007 18:00
- Localização: Natal-RN / Parelhas(RN) / Natal(RN)
- Contato:
DBF em branco
Cara, qual tipo de indece vc utiliza? ntx ou cdx, esse tipo de pane no dbf é tipíco do ntx corrumpido ai corrumpe o dbf, já aconteceu comigo quando usava dbf/ntx em rede não consegui recuperar os dados corrumpidos mudei para dbf/cdx os problemas foram eliminados em 100%.
Gilberto[]
A cada conversasão realizada conquistamos mais amigos, isto é um lucro inestimável
Clip5.2 DBFCDX
marcolinosilva@click21.com.br gmarcolinosilva@hotmail.com / Skype:gilberto.marcolino
A cada conversasão realizada conquistamos mais amigos, isto é um lucro inestimável
Clip5.2 DBFCDX
marcolinosilva@click21.com.br gmarcolinosilva@hotmail.com / Skype:gilberto.marcolino
DBF em branco
Gilberto, desculpe, mas dizer que o NTX dá pau e o CDX não dá, não é a minha experiência (e talvez de muitos outros colegas). Tenho programas rodando há 20 anos, com NTX, rodando embaixo do Win95 até o XP, Clipper Summer e 52e, em rede ou mono, e nunca tive problema com DBF corrompido.
O CDX pode ser mais rápido, mais seguro etc., mas afirmar que, com ele, não dá DBF corrompido, como dá com o NTX, eu não concordo. O mais provável, na minha opinião, no caso do nosso colega, ou é algum erro no programa (por exemplo, DBF atualizado sem o respectivo índice aberto, indice com chave incorreta e SEEK e replace sem controle etc.) ou algum problema de hardware ou rede (EXE abortando no meio de uma gravação, por ex).
Acresce, a isso, que o colega diz que há registros em branco e não dados corrompidos. Me parece mais algum erro de lógica, mesmo. Num DBF corrompido, tipicamente, um campo data mostra letras, um campo lógico mostra números etc.
O CDX pode ser mais rápido, mais seguro etc., mas afirmar que, com ele, não dá DBF corrompido, como dá com o NTX, eu não concordo. O mais provável, na minha opinião, no caso do nosso colega, ou é algum erro no programa (por exemplo, DBF atualizado sem o respectivo índice aberto, indice com chave incorreta e SEEK e replace sem controle etc.) ou algum problema de hardware ou rede (EXE abortando no meio de uma gravação, por ex).
Acresce, a isso, que o colega diz que há registros em branco e não dados corrompidos. Me parece mais algum erro de lógica, mesmo. Num DBF corrompido, tipicamente, um campo data mostra letras, um campo lógico mostra números etc.
DBF em branco
Ah, SupGaroto: se vc não tem backup dos arquivos, vc está em apuros... Se o DBF está abrindo normalmente e não há informações 'estranhas' nos campos (só campos em branco), as suas perspectivas não são das melhores...
Em tempo: de qualquer forma, tente abrir o DBF em baixo nível, com o FOPEN() ou algum programa que abra DBF (Excel?). Quem sabe dá pra achar alguma coisa?
Em tempo: de qualquer forma, tente abrir o DBF em baixo nível, com o FOPEN() ou algum programa que abra DBF (Excel?). Quem sabe dá pra achar alguma coisa?
DBF em branco
Segundo o Eolo, tens backup?
) ou 
Com DBF desconfie de todos!
Com DBF desconfie de todos!
►Harbour 3.x | Minigui xx-x | HwGui◄
Pense nas possibilidades abstraia as dificuldades.
Não corrigir nossas falhas é o mesmo que cometer novos erros.
A imaginação é mais importante que o conhecimento. (Albert Einstein)
Pense nas possibilidades abstraia as dificuldades.
Não corrigir nossas falhas é o mesmo que cometer novos erros.
A imaginação é mais importante que o conhecimento. (Albert Einstein)
DBF em branco
Não entendi. vc quer dizer que com DBF é sempre ruim, sempre é pra desconfiar? Ou, com alguma ferramente mais atual, como o SQL, pode confiar 100%, mesmo que os comandos sejam mal construídos? Tipo vc faz um comando errado e o SQL, parafraseando o Google, diz "ops, vc quis dizer X, não Y?" e corrige automaticamente a operação?Com DBF desconfie de todos!
Não sei do SQL, ainda to aprendendo, mas com DBF fomos pra Lua e, naquele tempo, olha que ainda era o BETA do NTX... :%
DBF em branco
SupGaroto, manda o DBF pra mim: eolo.ventura@gmail.com.
Quem sabe acho alguma coisa que ajude.
Quem sabe acho alguma coisa que ajude.
- Gilberto M Silva
- Usuário Nível 3

- Mensagens: 230
- Registrado em: 13 Mar 2007 18:00
- Localização: Natal-RN / Parelhas(RN) / Natal(RN)
- Contato:
DBF em branco
Eolo, me esprecei mau, é verdade que tinha mais problemas com o ntx, nos clientes onde a energia eletrica ocilava muito, os arquivos corrumpia mais facil, tanto q recomendava reindexar uma ou duas vezes por dia, no cdx recomendo fazer uma indexação pelo menos 3 vezes por semana, aconteceu em um cliente travar vendas fui verificar, indece corrumpido, verifiquei o dbf estava intacto, por isso que te falo, minha vida ficou mais facil com o cdx. No caso do colega os registros ficaram em branco, corrumpido os registros ficam cheios de caracteres doido.
Eolo vc teria a função para gerar MD5 e a lib? se sim poderia me passar por e-mail?? ficaria muito grato.
Eolo vc teria a função para gerar MD5 e a lib? se sim poderia me passar por e-mail?? ficaria muito grato.
Gilberto[]
A cada conversasão realizada conquistamos mais amigos, isto é um lucro inestimável
Clip5.2 DBFCDX
marcolinosilva@click21.com.br gmarcolinosilva@hotmail.com / Skype:gilberto.marcolino
A cada conversasão realizada conquistamos mais amigos, isto é um lucro inestimável
Clip5.2 DBFCDX
marcolinosilva@click21.com.br gmarcolinosilva@hotmail.com / Skype:gilberto.marcolino
-
supgaroto
- Usuário Nível 2

- Mensagens: 51
- Registrado em: 19 Ago 2003 14:24
- Localização: Rua Aristotoles Fernandes Valdares, 1190
DBF em branco
Uso CDX!
O programa já roda a quase 10 anos em muitos clientes... Achei muito estranho. Pq o DBF não corrompeu, simplesmente os registros ficaram em branco. Foi verificado todo o codigo e não encontramos nada com tal função. Esse cliente trabalha em rede 1 servidor + 9 terminais. O bom é que o cliente tem backup do dia anterior!
)
O programa já roda a quase 10 anos em muitos clientes... Achei muito estranho. Pq o DBF não corrompeu, simplesmente os registros ficaram em branco. Foi verificado todo o codigo e não encontramos nada com tal função. Esse cliente trabalha em rede 1 servidor + 9 terminais. O bom é que o cliente tem backup do dia anterior!
DBF em branco
Como é a "segurança" do cliente? Todo mundo tem acesso a tudo no servidor?
Pergunto porque já aconteceu comigo um treco parecido: cerca de 500 registros de um arquivo simplesmente sumiram, sem nenhuma outra explicação. Única explicação possível: alguém abriu o DBF com o Excel (ou outro) e deletou as linhas... Depois disso, modificamos o acesso ao servidor, nunca mais aconteceu.
Pergunto porque já aconteceu comigo um treco parecido: cerca de 500 registros de um arquivo simplesmente sumiram, sem nenhuma outra explicação. Única explicação possível: alguém abriu o DBF com o Excel (ou outro) e deletou as linhas... Depois disso, modificamos o acesso ao servidor, nunca mais aconteceu.
DBF em branco
Me parece algo relacionado alguma funcao de controle de rede, que em determinada configuracao de maquina pode acarretar neste problema.
Se o arquivo tem linhas em BRANCO, deve ter tido em alguma parte do sistema um APPEND (BLANK ou FROM) que inseriram essas linhas sem deixar nenhum vestigio em nenhum campo. Neste caso, nao creio que seja nem manipulacao externa (excel, dbu e etc) e nem problema de indices corrompidos, mesmo porque, o problema de indice corrompido aparece com caracters estranhos (tipo de dados trocados, exemplo char em num) em campos que fazem parte do indice.
Veja tambem funcoes de LOCK, FLOCK.
Agora com relacao ao Windows, tente acertar o servidor para NAO UTILIZAR CACHE, diminuindo a demora da gravação em disco.
Em tempo, ja usei NTX e uso CDX atualmente em indice simples (IDX) e corruption ocorre em ambos... diminuiu bastante depois que reescrevi minha funcao de abertura de dbf e seus indices, mais em caso de quedas ou oscilacoes de energias constantes ainda sim é passivel de ocorrer o problema. Acho que somente com um NOBREAK é que temos 99% de paz sobre este assunto.
Boa sorte.
Se o arquivo tem linhas em BRANCO, deve ter tido em alguma parte do sistema um APPEND (BLANK ou FROM) que inseriram essas linhas sem deixar nenhum vestigio em nenhum campo. Neste caso, nao creio que seja nem manipulacao externa (excel, dbu e etc) e nem problema de indices corrompidos, mesmo porque, o problema de indice corrompido aparece com caracters estranhos (tipo de dados trocados, exemplo char em num) em campos que fazem parte do indice.
Veja tambem funcoes de LOCK, FLOCK.
Agora com relacao ao Windows, tente acertar o servidor para NAO UTILIZAR CACHE, diminuindo a demora da gravação em disco.
Estes caminhos sao baseados no XP, ok.Meu Computador-> DISCO C: -> Propriedades -> Hardware-> SEU HD (de dois cliques sobre ele) -> Va em Diretivas-> Desmarque a opcao ATIVAR CACHE.
Em tempo, ja usei NTX e uso CDX atualmente em indice simples (IDX) e corruption ocorre em ambos... diminuiu bastante depois que reescrevi minha funcao de abertura de dbf e seus indices, mais em caso de quedas ou oscilacoes de energias constantes ainda sim é passivel de ocorrer o problema. Acho que somente com um NOBREAK é que temos 99% de paz sobre este assunto.
Boa sorte.
Clipper 5.2e / Blinker 5.1 / Harbour 3.2 / GTwvg
DBF em branco
SupGaroto, lhe mandei um email. É DBF corrompido, mesmo. Até o registro 3663, tudo em ordem. A partir daí, os dados estão bagunçados. Pelo jeito, algum problema na rede ou em alguma rotina sua.
-
supgaroto
- Usuário Nível 2

- Mensagens: 51
- Registrado em: 19 Ago 2003 14:24
- Localização: Rua Aristotoles Fernandes Valdares, 1190
DBF em branco
Realmente!! Pedi ao cliente que checasse a rede. Ele contratou um empresa especializada em redes e realmente a rede dele estava com problemas as vezes perdia conexão com o servidor.
DBF em branco
Eolo,
Eu quis dizer "desconfie de todos" no bom português é desconfie também do usuário, sabemos que dbf pode ser aberto de várias formas. Se os registros estão simplesmente em branco sem caracteres estranhos em campos disitintos do tipo numérico, data e lógico e não há no código do supgaroto instrução para limpar o conteúdo dos campos faço outra pergunta: este dbf contém informações importantes que resultam em calculo de vendas,resultados etc.
Teste usar chksum em tabelas importantes.
É só minha opinião e experiência por ter passado por situação parecida e achava que era rede, sistema com erro e na verdade era usuário mal intencionado.
Eu quis dizer "desconfie de todos" no bom português é desconfie também do usuário, sabemos que dbf pode ser aberto de várias formas. Se os registros estão simplesmente em branco sem caracteres estranhos em campos disitintos do tipo numérico, data e lógico e não há no código do supgaroto instrução para limpar o conteúdo dos campos faço outra pergunta: este dbf contém informações importantes que resultam em calculo de vendas,resultados etc.
Teste usar chksum em tabelas importantes.
É só minha opinião e experiência por ter passado por situação parecida e achava que era rede, sistema com erro e na verdade era usuário mal intencionado.
►Harbour 3.x | Minigui xx-x | HwGui◄
Pense nas possibilidades abstraia as dificuldades.
Não corrigir nossas falhas é o mesmo que cometer novos erros.
A imaginação é mais importante que o conhecimento. (Albert Einstein)
Pense nas possibilidades abstraia as dificuldades.
Não corrigir nossas falhas é o mesmo que cometer novos erros.
A imaginação é mais importante que o conhecimento. (Albert Einstein)

