Fórum Locate no change do Edit #207927

21/01/2004

0

Ola. Estou dando um locate no change do Edit... Esse procedimento funciona apenas uma vez... ou seja: digito ´A´, ele localiza o primeiro registro com ´A´... depois digito ´n´ e apesar de existir vários registros com ´An... ´ não acaba achando.

Alguem pode me ajudar? Desde já gradeço.


Danielclubedelphi

Danielclubedelphi

Responder

Post mais votado

21/01/2004

Faz assim:

´dados.ClientDataSet1.locate(´rsocial´, Edit1[color=red:a1b103aa60].text[/color:a1b103aa60], [loCaseInsensitive, loPartialKey]);´,


Rômulo Barros

Rômulo Barros
Responder

Gostei + 1

Mais Posts

21/01/2004

Lindomar.des

Colega,

tente isso:

tabela.locate(´campo´, texto, [loCaseInsensitive, loPartialKey]);

inclua a unit Db na clausula uses.


Responder

Gostei + 0

21/01/2004

Danielclubedelphi

Lindomar, muito obrigado...

Eu não estava usando os dois: [loCaseInsensitive, loPartialKey]. Usava apenas um...

Mas eu não entendi pq funcionou... vc pode me explicar?

Muito obrigado.


Responder

Gostei + 0

21/01/2004

Nebrio

bem o CaseInsensitive procura pelo texto digitado sem fazer diferença entre maiusculo ou minisculo....e o PartialKey procura por partes do texto digitado...


T+

Nébrio


Responder

Gostei + 0

21/01/2004

Lindomar.des

Obrigado Nébrio.


Responder

Gostei + 0

21/01/2004

Programalista

Caro Lindomar, e quando eu estou usando sqlserver, clientdataset, datamodule....no form eu so tenho o datasource, então como fazer para localizar usando o locate, a partir o onchange de um edit?

Lourival Oliveira
Sete Lagoas - MG


Responder

Gostei + 0

21/01/2004

Rômulo Barros

Basta mandar usar a Unit do seu DataModule e implementar o código abaixo no evento OnChange do Edit:

DataModule.Tabela.Locate(<Parâmetros>);


Responder

Gostei + 0

21/01/2004

Programalista

Caro Undeclared Identifier,
após a sua sugestão, estou usando o seguinte código:
´dados.ClientDataSet1.locate(´rsocial´, Edit1, [loCaseInsensitive, loPartialKey]);´, no entanto o delphi me apresenta o seguinte erro:
´ [Error] clientes.pas(72): Incompatible types: ´Variant´ and ´TEdit´
[Fatal Error] cadcli.dpr(6): Could not compile used unit ´clientes.pas´ ´


Responder

Gostei + 0

21/01/2004

Lindomar.des

Lourival,

Pelo que vi os colegas do forum responderam sua pergunta, mas para não ser indelicado em não te responder também.... basta incluir o datamudule antes do nome da tabela:

datamodule.tabela.locate(´campo´, texto, [loCaseInsensitive, loPartialKey]);


Responder

Gostei + 0

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

Aceitar