GARANTIR DESCONTO

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á!


Luiz.gv

Luiz.gv

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


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


Responder

Gostei + 0

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

Aceitar