Pesquisa em uma dbgrid
Tenho uma edit para pesquisar em meu banco de dados para excluir meus produtos porem queria que ao ser digitado na edit (evento onchange) ele mostrasse os nomes na dbgrid conforme a barra de pesquisa do google completando os nomes e nao mostrando os outros o codigo da edit usado é este:
DataModule_dados.TblCondicao.Locate('CONDICAO',Vararrayof([EditPesquisa.Text]),[loPartialKey,LocaseInsensitive]);Daniel
Curtidas 0
Respostas
Marcos Iwazaki
04/08/2010
e qual o teu problema amigo?
GOSTEI 0
Daniel
04/08/2010
e qual o teu problema amigo?
Na verdade ele nao tem nenhum problema so quero deixa-lo com um visual mais bonito. Espero que vc possa me ajudar.
GOSTEI 0
Eriley Barbosa
04/08/2010
DataModule_dados.TblCondicao.Locate('CONDICAO',Vararrayof([EditPesquisa.Text]),[loPartialKey,LocaseInsensitive]);
Não utilize Vararrayof, isto é para procura em mais de um campo, seu comando deve ficar assim:
DataModule_dados.TblCondicao.Locate('CONDICAO',EditPesquisa.Text,[loPartialKey,LocaseInsensitive]);
Só para constar aqui vai um exemplo, utilizando Vararrayof:
tbsenha.locate('usuario;senha',VarArrayOf ([EditNome.text,EditSenha.text]),[]);
Atenciosamente
Eriley
GOSTEI 0
Daniel
04/08/2010
DataModule_dados.TblCondicao.Locate('CONDICAO',Vararrayof([EditPesquisa.Text]),[loPartialKey,LocaseInsensitive]);
Não utilize Vararrayof, isto é para procura em mais de um campo, seu comando deve ficar assim:
DataModule_dados.TblCondicao.Locate('CONDICAO',EditPesquisa.Text,[loPartialKey,LocaseInsensitive]);
Só para constar aqui vai um exemplo, utilizando Vararrayof:
tbsenha.locate('usuario;senha',VarArrayOf ([EditNome.text,EditSenha.text]),[]);
Atenciosamente
Eriley
Nao resolveu ele faz a pesquisa mas mostra todos os cadastros na dbgrid
Porem ao inves de limpar a pesquisa, que é o que eu queria, a dbgrid poderia me mostrar os dados (no caso nome da condição) em ordem alfabetica ao inves de ordem de codigo de cadastro.
Tem como?
GOSTEI 0
Wilson Junior
04/08/2010
Utilize as propriedades Filter e Filtered da sua DataModule_dados.TblCondicao.
Filter -> Condição (Filtro). Exemplo: 'Nome = 'teste' OR Apelido = 'teste'';
Filtered -> Ativa/Desativa as condições do Filter.
Espero ter colaborado.
Filter -> Condição (Filtro). Exemplo: 'Nome = 'teste' OR Apelido = 'teste'';
Filtered -> Ativa/Desativa as condições do Filter.
Espero ter colaborado.
GOSTEI 0
Eriley Barbosa
04/08/2010
DataModule_dados.TblCondicao.Locate('CONDICAO',EditPesquisa.Text,[loPartialKey,LocaseInsensitive]);
No seu Datamodule, selecione o seu componente TblCondicao e na sua propriedade IndexFieldNames digite CONDICAO.
Mas se sua pesquisa não ta funcionando, deveria tentar de outra forma para ver se resolve o problema:
DataModule_dados.TblCondicao.Filtered := False;
DataModule_dados.TblCondicao.Filter := 'Upper(CONDICAO) like ' + QuotedStr('%' + AnsiUpperCase(EditPesquisa.Text) + '%');
DataModule_dados.TblCondicao.Filtered := True; Atenciosamente Eriley
DataModule_dados.TblCondicao.Filter := 'Upper(CONDICAO) like ' + QuotedStr('%' + AnsiUpperCase(EditPesquisa.Text) + '%');
DataModule_dados.TblCondicao.Filtered := True; Atenciosamente Eriley
GOSTEI 0