Caros, uma tabela DBF com indices NTX possui indicadores de mudança ?
Sei que eu acrescento registros a contagem de registros aumenta.
Mas quando acontece uma edição de registro em algum lugar isso fica indicado ?
Pergunto pois estava querendo fazer um serviço que mantivesse uma copia do DBF em um banco SQL.
Não tenho o código fonte que usa as tabelas portanto não tenho como implementar o ADS que foi sugerido em outro post.
Abraço.
Tabela DBF tem indicador de mudança
Moderador: Moderadores
-
a.lima.silva
- Usuário Nível 1

- Mensagens: 6
- Registrado em: 02 Jun 2021 19:56
- Localização: niteroi rj
-
alxsts
- Colaborador

- Mensagens: 3092
- Registrado em: 12 Ago 2008 15:50
- Localização: São Paulo-SP-Brasil
Tabela DBF tem indicador de mudança
Olá!
De dentro de uma aplicação xBase, usa-se a função LUpdate()
DBF File structure
De dentro de uma aplicação xBase, usa-se a função LUpdate()
Neste caso, terá que abrir o arquivo .DBF, através da tua linguagem de programação, e ler os bytes de 1 a 3 do cabeçalho do arquivo. Para maiores informações, veja: DBF File structurea.lima.silva escreveu:Não tenho o código fonte que usa as tabelas portanto não tenho como implementar o ADS que foi sugerido em outro post.
DBF File structure
[]´s
Alexandre Santos (AlxSts)
Alexandre Santos (AlxSts)
- JoséQuintas
- Administrador

- Mensagens: 20267
- Registrado em: 26 Fev 2007 11:59
- Localização: São Paulo-SP
Tabela DBF tem indicador de mudança
Não.a.lima.silva escreveu:Mas quando acontece uma edição de registro em algum lugar isso fica indicado ?
A única indicação é a data da última atualização do próprio DBF, como já indicaram, mas isso seria quase o mesmo de usar a data do arquivo.
Dependendo de como o aplicativo Clipper foi gerado, pode existir a opção de descompilar.a.lima.silva escreveu:Não tenho o código fonte que usa as tabelas portanto não tenho como implementar o ADS que foi sugerido em outro post.
Se for por blinker extended, sem opção.
Porque uma opção seria alterar os fontes, como já foi falado.
A descompilação não é 100% garantida, porque pode trazer variáveis com nomes diferentes, e até precisar de ajustes, mas seria uma possível opção a tentar.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
https://github.com/JoseQuintas/
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
https://github.com/JoseQuintas/
-
alxsts
- Colaborador

- Mensagens: 3092
- Registrado em: 12 Ago 2008 15:50
- Localização: São Paulo-SP-Brasil
Tabela DBF tem indicador de mudança
Olá!
Pelo que o autor dá a entender, ele quer saber se o DBF foi alterado. Com certeza a indicação da data do arquivo é melhor pois vem com o ano com 4 dígitos e traz também a hora.
Se fosse em Harbour, tem aquele tipo de campo "(^) RowVers 8 bytes. Row version number; modification count of this record" Há dois anos fiz um teste e não funcionou ... Coluna RowVersion em Tabela DBF
Ué... então em algum lugar fica indicado que o DBF sofreu alteração...JoséQuintas escreveu:Não.
A única indicação é a data da última atualização do próprio DBF, como já indicaram, mas isso seria quase o mesmo de usar a data do arquivo.
Pelo que o autor dá a entender, ele quer saber se o DBF foi alterado. Com certeza a indicação da data do arquivo é melhor pois vem com o ano com 4 dígitos e traz também a hora.
Se fosse em Harbour, tem aquele tipo de campo "(^) RowVers 8 bytes. Row version number; modification count of this record" Há dois anos fiz um teste e não funcionou ... Coluna RowVersion em Tabela DBF
[]´s
Alexandre Santos (AlxSts)
Alexandre Santos (AlxSts)
-
a.lima.silva
- Usuário Nível 1

- Mensagens: 6
- Registrado em: 02 Jun 2021 19:56
- Localização: niteroi rj
Tabela DBF tem indicador de mudança
Agradeço a todos que responderam.
Realmente manter um controle da data e hora de modificação do arquivo teria o mesmo efeito.
De qualquer maneira em caso de update a tabela teria que ser varrida e comparada para se saber onde mudou.
Abraços.
Realmente manter um controle da data e hora de modificação do arquivo teria o mesmo efeito.
De qualquer maneira em caso de update a tabela teria que ser varrida e comparada para se saber onde mudou.
Abraços.
- rochinha
- Administrador

- Mensagens: 4664
- Registrado em: 18 Ago 2003 20:43
- Localização: São Paulo - Brasil
- Contato:
Tabela DBF tem indicador de mudança
Amiguinhos,
Depois de 50 anos de Clipper entendi que update() não era verificação de modificação do DBF e sim dos GETs que antecedem uma alteração em registros.
Talvez por isto nunca me serviu de nada.
Fonte
Para se aprofundar mais na estrutura de um DBF dê uma olhada:
www.dbase.com
Depois de 50 anos de Clipper entendi que update() não era verificação de modificação do DBF e sim dos GETs que antecedem uma alteração em registros.
Talvez por isto nunca me serviu de nada.
Fonte
Para se aprofundar mais na estrutura de um DBF dê uma olhada:
www.dbase.com
OPS! LINK QUEBRADO? Veja ESTE TOPICO antes e caso não encontre ENVIE seu email com link do tópico para [url=mailto://fivolution@hotmail.com]fivolution@hotmail.com[/url]. Agradecido.
@braços : ? )
A justiça divina tarda mas não falha, enquanto que a justiça dos homens falha porque tarda.
@braços : ? )
A justiça divina tarda mas não falha, enquanto que a justiça dos homens falha porque tarda.
- JoséQuintas
- Administrador

- Mensagens: 20267
- Registrado em: 26 Fev 2007 11:59
- Localização: São Paulo-SP
Tabela DBF tem indicador de mudança
E pode ter inclusões e exclusões, além das alterações.a.lima.silva escreveu:De qualquer maneira em caso de update a tabela teria que ser varrida e comparada para se saber onde mudou.
Opções possíveis, não necessariamente nessa ordem:
1) Tentar modificar aquela chave por algo compatível
2) Fazer uma conversão pra SQL durante a noite, e só consultas em Delphi, caso não dê pra atualizar índices
3) Períodos anteriores em Delphi, reduzindo cada vez mais o que sobra em Clipper, até não precisar mais dele
4) Se for o caso, reduzir por módulos (tipo financeiro, estoque, etc)
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
https://github.com/JoseQuintas/
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
https://github.com/JoseQuintas/