GARANTIR DESCONTO

Fórum Fazer pesquisa incremental na Query tem como ???? #177118

24/08/2003

0

Para fazer pesquisa incremental TABLE eu sei, no evento OnChange do Edit: digita..........

Table1.FindNearest([Edit1.Text]);

...........Quero saber se tem como fazer esta pesquisa na QUERY ???? se tem como , qual e o codigo ......

agradeço..........


Tatulegal

Tatulegal

Responder

Posts

24/08/2003

Mmtoor

Pega essa amigo.

procedure TForm1.Edit2Change(Sender: TObject);
var a,b: String;
Begin
dmfinancas.qryClientes.SQL.Clear;
a:=´Select * From Clientes ´;
b:=´Where Nome Like:Consulta ´;
dmfinanas.qryClientes.SQL.Add(a+b);
dmfinancas.qryClientes.Params[0].AsString;
dmfinancas.qryClientes.ParamByName(´Consulta´).AsString:=´´+´¬´+Edit1.Text+´¬´;
dmfinancas.qryClientes.Close;
dmfinancas.qryClientes.Open;
end;

MMTOOR2003
mmtoor2003@yahoo.com.br


Responder

Gostei + 0

24/08/2003

Vinicius2k

Queryes não tem índices... vc eh q determina a ordem de apresentação com o ´Order by´ por isso este método não se aplica... vc pode usar o locate... eh um pouco mais lento por não ter indice mas em compesação oferece mais recursos, se vc passar o paramentro [LoPartialKey] ele irá localizar qualquer parte do campo que contenha o texto do seu edit.
ex :

1) query.Locate(´DESCRICAO´,Edit1.text,[])
2) query.Locate(´DESCRICAO´,Edit1.text,[LoPartialKey])
3)se precisar de chave composta :
query.Locate(´NOME;SENHA´,VarArrayOf([Edit1.Text,Edit2.Text)]),[])

o locate retora true ou false, então vc pode usar
if query.Locate(´NOME;SENHA´,VarArrayOf([Edit1.Text,Edit2.Text)]),[]) then
begin
....
end;


Responder

Gostei + 0

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

Aceitar