Locate Lento
Boa Tarde Pessoal
Estou tendo problemas com meu locate, onde utilizado para setar a o ponto onde desejo fazer a alteraço na tabela, isto tenho um dbgrid com varios clientes, no momento do pressiono enter em cima de algum nome e faço o seguinte:
DM_Base.SDSClientes.DisableControls;
DM_Base.SDSclientes.Open;
DM_BASE.SDSclientes.Locate´COD_CLIENTE´,IntToStr SQLPesquisaCOD_CLIENTE.Value),[loPartialKey]);
DM_Base.SDSClientes.EnableControls;
Com isso o tempo de demorra esta grande, devido ao grande numero de cadastro q possuo, alguem uma forma mais rapida de fazer?
Estou tendo problemas com meu locate, onde utilizado para setar a o ponto onde desejo fazer a alteraço na tabela, isto tenho um dbgrid com varios clientes, no momento do pressiono enter em cima de algum nome e faço o seguinte:
DM_Base.SDSClientes.DisableControls;
DM_Base.SDSclientes.Open;
DM_BASE.SDSclientes.Locate´COD_CLIENTE´,IntToStr SQLPesquisaCOD_CLIENTE.Value),[loPartialKey]);
DM_Base.SDSClientes.EnableControls;
Com isso o tempo de demorra esta grande, devido ao grande numero de cadastro q possuo, alguem uma forma mais rapida de fazer?
Kenio_c
Curtidas 0
Respostas
Marcio.theis
28/04/2006
O seu grid está ligado o DM_Base.SDSclientes ? Pois se tiver, não é preciso efetuar este locate, basta alterar, pois a tabela já estará posicionada.
GOSTEI 0
Kenio_c
28/04/2006
Naum ele esta ligado a uma query normal
GOSTEI 0
Tdqr
28/04/2006
nao sei se adiantara pois costumo ter esse tipo de problema também ... mas voce ja tentou ao inves de usar o locate usar o findkey?
e outra , troque a propriedade packetrecords do clientDataSet para 1
Se alguem tiver uma melhor solução por favor ajude , pois tb encontro problemas algumas vezes
e outra , troque a propriedade packetrecords do clientDataSet para 1
Se alguem tiver uma melhor solução por favor ajude , pois tb encontro problemas algumas vezes
GOSTEI 0
Edilcimar
28/04/2006
O campo pesquisado está indexado?
GOSTEI 0