Consulta com Table na medida que for digitando
Boa noite pessoal,
Alguem pode me informar o que tem de errado neste codigo?
table1.Filtered := False;
if (Edit1.Text <> '') then
begin
table1.Refresh;
table1.Filter := 'Numeros=' +QuotedStr(Edit1.text + '*');
table1.Filtered := True;
end;
tipo que no campo numeros do meu banco de dados e gravado uma sequencia de 10 numeros e quando eu começo a fazer a busca no edit ate os 2 primeiros digitos ele busca no terceiro digito que informo em diante não retorna nada.
Vinicius Campolina
Curtidas 0
Respostas
Wilton Júnior
12/05/2014
Ola tenta colcoar uma query para pesquisa e faz desse tipo:
query.close;
qujery.sql.clear;
query.sql.add('select * from tabela where campo like ' + quotedstr('%' + edit1.text + '%');
query.open;
dessa forma eu tenho certeza que vai funcionar e pelo que entendi vai ficar como vc quer.
query.close;
qujery.sql.clear;
query.sql.add('select * from tabela where campo like ' + quotedstr('%' + edit1.text + '%');
query.open;
dessa forma eu tenho certeza que vai funcionar e pelo que entendi vai ficar como vc quer.
GOSTEI 0
Vinicius Campolina
12/05/2014
Boa noite Wilton,
Bom mesmo mudando para query e colocando o codigo acima acontece a mesma coisa os dois primeiros digitos ele busca o restante não
Bom mesmo mudando para query e colocando o codigo acima acontece a mesma coisa os dois primeiros digitos ele busca o restante não
GOSTEI 0
Ricardo
12/05/2014
Tipo tenta do jeito que o Wilton passou mudando apenas a linha: query.sql.add('select * from tabela where campo like ' + quotedstr('%' + edit1.text + '%');
para query.sql.add('select * from tabela where campo like '+ quotedstr(edit1.text + '%');
para query.sql.add('select * from tabela where campo like '+ quotedstr(edit1.text + '%');
GOSTEI 0