ola pessoal, no xHarbour, estou gerando CDX, quando abro um arquivo, abro todos os indices com o set index como mostrado abaixo, gostaria de saber porque alguns indices aparecem com a data atualizada, no caso abaixo, por exemplo, somente o ind1 fica com a data atualizada os outros nao, achei que a data dos indices eram atualizados somente quando indexava(index on codmer to ind1).
SET INDEX TO ind1, indi2, ind3, ind4
duvida atualizacao de indice CDX
Moderador: Moderadores
- Toledo
- Administrador

- Mensagens: 3133
- Registrado em: 22 Jul 2003 18:39
- Localização: Araçatuba - SP
- Contato:
duvida atualizacao de indice CDX
Amigo, sempre que for atualizado algum campo no DBF (ou inserir um registro novo) que seja chave do arquivo de índice, então o arquivo de índice será também atualizado, e assim a data do arquivo será alterada. Caso o campo atualizado não faça parte da chave de índice, então a data do arquivo não será alterada.
Obs.: em arquivos CDX, você pode criar tag e indexar em um mesmo arquivo CDX várias chaves diferentes, isto é, em um mesmo arquivo CDX ter várias chaves de índices. Neste caso, abrir apenas um CDX no SET INDEX TO.
Abraços,
Obs.: em arquivos CDX, você pode criar tag e indexar em um mesmo arquivo CDX várias chaves diferentes, isto é, em um mesmo arquivo CDX ter várias chaves de índices. Neste caso, abrir apenas um CDX no SET INDEX TO.
Abraços,
Toledo - Clipper On Line
toledo@pctoledo.com.br
Harbour 3.2/MiniGui/HwGui
Faça uma doação para o fórum, clique neste link: http://www.pctoledo.com.br/doacao
toledo@pctoledo.com.br
Harbour 3.2/MiniGui/HwGui
Faça uma doação para o fórum, clique neste link: http://www.pctoledo.com.br/doacao
-
alxsts
- Colaborador

- Mensagens: 3092
- Registrado em: 12 Ago 2008 15:50
- Localização: São Paulo-SP-Brasil
duvida atualizacao de indice CDX
Olá!
Só complementando, no RDD CDX, se, e somente se, o nome do arquivo estrutural de índices (o arquivo .CDX único que contém todas as tags de índices), também conhecido como Order Bag, tiver o mesmo nome do arquivo .DBF e a opção SET AUTOPEN estiver ON, então, o comando USE detectará isto e abrirá o arquivo de índices automaticamente. Opcionalmente, se a opção SET AUTORDER for especificada, poderá ser especificada uma ordem inicial.
Só complementando, no RDD CDX, se, e somente se, o nome do arquivo estrutural de índices (o arquivo .CDX único que contém todas as tags de índices), também conhecido como Order Bag, tiver o mesmo nome do arquivo .DBF e a opção SET AUTOPEN estiver ON, então, o comando USE detectará isto e abrirá o arquivo de índices automaticamente. Opcionalmente, se a opção SET AUTORDER for especificada, poderá ser especificada uma ordem inicial.
[]´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
duvida atualizacao de indice CDX
Porter, não sei se está fazendo por etapas.
Só pra reforçar o que já disseram:
No NTX: é só o nome do arquivo ARQUIVO.NTX
No CDX: tem também um nome interno, a TAG, pode ter até 10 letras. Tag repetida, é considerada somente uma.
No CDX: cada arquivo pode conter vários índices.
Isso em CDX resulta no arquivo CLIENTES.CDX contendo os três índices.
Além da vantagem de não esquecer de abrir índice adicional, ainda conta como 1 único arquivo aberto.
No exemplo acima, vai criar ARQUIVO1.CDX, ARQUIVO2.CDX, ARQUIVO3.CDX
No exemplo acima, vai criar ARQUIVO1.CDX contendo os índices INDICE1 e INDICE2, e ARQUIVO2.CDX contendo INDICE3
Neste último está errado. Apesar de criar 3, só vale 1 por causa do nome interno repetido.
Não sei se é este o seu caso.
Também é bom lembrar disto na hora de indexar, porque o espaço ocupado será de 3 índices. Convém apagar um CDX e recriá-lo pra isto não acontecer - isto não acontece com NTX.
Só pra reforçar o que já disseram:
No NTX: é só o nome do arquivo ARQUIVO.NTX
No CDX: tem também um nome interno, a TAG, pode ter até 10 letras. Tag repetida, é considerada somente uma.
No CDX: cada arquivo pode conter vários índices.
Código: Selecionar todos
USE CLIENTES
INDEX ON CODIGO TAG INDICE1
INDEX ON NOME TAG INDICE2
INDEX ON ENDERECO TAG INDICE3
SET INDEX TO CLIENTES
Além da vantagem de não esquecer de abrir índice adicional, ainda conta como 1 único arquivo aberto.
Código: Selecionar todos
USE CLIENTES
INDEX ON CODIGO TAG INDICE1 TO ARQUIVO1
INDEX ON NOME TAG INDICE2 TO ARQUIVO2
INDEX ON ENDERECO TAG INDICE3 TO ARQUIVO3
SET INDEX TO ARQUIVO1, ARQUIVO2, ARQUIVO3
Código: Selecionar todos
USE CLIENTES
INDEX ON CODIGO TAG INDICE1 TO ARQUIVO1
INDEX ON NOME TAG INDICE2 TO ARQUIVO1
INDEX ON ENDERECO TAG INDICE3 TO ARQUIVO2
SET INDEX TO ARQUIVO1, ARQUIVO2
Código: Selecionar todos
USE CLIENTES
INDEX ON CODIGO TAG INDICE
INDEX ON NOME TAG INDICE
INDEX ON ENDERECO TAG INDICE
SET INDEX TO CLIENTES
Não sei se é este o seu caso.
Também é bom lembrar disto na hora de indexar, porque o espaço ocupado será de 3 índices. Convém apagar um CDX e recriá-lo pra isto não acontecer - isto não acontece com NTX.
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/
