Hola a todos, espero q me puedan dar una mano con este problemita...
Tengo una tabla Paradox de Clientes, estos están ordenados por número... mi intención es que uno los pueda ubicar por nombre cuando se va escribiendo el mismo en un edit, lo q me obliga a indexarlo por nombre. Todo me funciona bien pero el problema es que es muy lento... el dbgrid tarda aproximadamente 5 segundos en cargarse, y cuando voy escribiendo el nombre, luego de apretar cada tecla tarda, también, alrededor de 5 segundos (uno puede terminar de teclear el apellido entero y por ahí ni apareció la segunda letra).
¿Hay alguna alternativa para hacer esto más rápido? La tabla tiene 1757 registros, me parece chica ya que leyendo el foro veo que los problemas de lentitud comienzan a aparecer cuando se tienen registros en el orden de decenas de miles...
Acá les paso el código, desde ya les agradezco su tiempo...
Código Delphi
[-]
procedure TeMark_ConsuCli_form.FormActivate(Sender: TObject);
begin
Datamodule1.Client.indexname:='indexnom';
end;
Código Delphi
[-]
procedure TeMark_ConsuCli_form.Edit1Change(Sender: TObject);
begin
Datamodule1.Client.setkey;
Datamodule1.Client['CLI_NOM']:=Edit1.Text;
Datamodule1.Client.GotoNearest;
end;
Código Delphi
[-]
procedure TeMark_ConsuCli_form.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
Datamodule1.Client.indexname:='indexnum';
end;
El dbgrid lo tengo relacionado directamente con la tabla Paradox, traté de hacerlo con un Query pero no me da la función GotoNearest...
De nuevo, gracias.
Juan