Fórum quot;Index is out of datequot; Alguém sabe? #174128
10/08/2003
0
Tenho um form de consultas, e no OnShow, coloco o índice em Clientes:
TBClientes.indexName:=´indexClientes´;
Ao abrir o form, os registros ficam em ordem de clientes. Desta forma dá certo.
Mas quando eu salvo um novo cliente, e logo em seguida abro o form de consultas, ele me retorna o erro ´Index is out of date´.
Já verifiquei que o erro está quando eu executo a instrução:
TBClientes.indexName:=emptystr;
que serve para voltar com o índice para CODIGO, depois pego o último registro para adicionar mais um, criando o código do novo cliente automaticamente.
Sempre que executo: TBClientes.indexName:=emptystr;
e depois executo: TBClientes.indexName:=´indexClientes´;
ocorre o erro: ´Index is out of date´.
Alguém sabe me dizer pq???
Agradeço desde já!
TBClientes.indexName:=´indexClientes´;
Ao abrir o form, os registros ficam em ordem de clientes. Desta forma dá certo.
Mas quando eu salvo um novo cliente, e logo em seguida abro o form de consultas, ele me retorna o erro ´Index is out of date´.
Já verifiquei que o erro está quando eu executo a instrução:
TBClientes.indexName:=emptystr;
que serve para voltar com o índice para CODIGO, depois pego o último registro para adicionar mais um, criando o código do novo cliente automaticamente.
Sempre que executo: TBClientes.indexName:=emptystr;
e depois executo: TBClientes.indexName:=´indexClientes´;
ocorre o erro: ´Index is out of date´.
Alguém sabe me dizer pq???
Agradeço desde já!
Luiz.gv
Curtir tópico
+ 0
Responder
Posts
10/08/2003
Koplin
Eu evito erros assim mantendo as tabelas fechadas.
Abro para visualizar. Fecho quando não preciso mais.
Abro para inserir ou editar, Fecho quando Termino.
Assim eu tenho certeza que o ttable me traz os registros atualizados, e minimizo o risco de estourar indices.
Os componentes Dataset tem a propriedade Refresh, que recarrega os dados. Mas eu prefiro usar close e open;
TBClientes.close;
TBClientes.indexName:=emptystr;
TBClientes.open;
...
TBClientes.close;
TBClientes.indexName:=´indexClientes´;
TBClientes.open;
Pode não ser o melhor metodo, mas eu não tenho estes problemas.
Melhor seria vc usar uma Query para consulta e trazer os registros order by. O risco de corrupção de indices é menor.
Espero ter ajudado
Abro para visualizar. Fecho quando não preciso mais.
Abro para inserir ou editar, Fecho quando Termino.
Assim eu tenho certeza que o ttable me traz os registros atualizados, e minimizo o risco de estourar indices.
Os componentes Dataset tem a propriedade Refresh, que recarrega os dados. Mas eu prefiro usar close e open;
TBClientes.close;
TBClientes.indexName:=emptystr;
TBClientes.open;
...
TBClientes.close;
TBClientes.indexName:=´indexClientes´;
TBClientes.open;
Pode não ser o melhor metodo, mas eu não tenho estes problemas.
Melhor seria vc usar uma Query para consulta e trazer os registros order by. O risco de corrupção de indices é menor.
Espero ter ajudado
Responder
Gostei + 0
11/08/2003
Bacalhau
O problema reside não nas tabelas, mas na parametrização da drive Paradox do BDE (Borland Database Engine).
Abraço do bacalhau
Abraço do bacalhau
Responder
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)