Filtro SQL ao digitar no Edit

25/03/2016

0

Boa tarde,
Atualmente eu efetuo o filtro SQL com Like através de um edit simples sem problemas, porém gostaria de ajuda nessa mesma natureza:

Na tabela de colaboradores eu defino se ele é Ajudante ou Motorista no campo Tipo (A ou M), ou seja, eu queria filtrar ao digitar o nome no edit por Tipo (apenas ajudantes ou motoristas com o nome digitado).

Esse é o código que uso para abrir o mesmo Form no qual ocorre o Select :

procedure TFRMVEICULOS.btn_select_motClick(Sender: TObject);
begin
   FRMSELECTCOLAB.Caption := 'Selecione o Motorista';
   Dm.ZQuery_colab_mot.Active := false;
   Dm.ZQuery_colab_mot.SQL.Clear;
   Dm.ZQuery_colab_mot.SQL.Add('Select * from Colaboradores where Tipo LIKE  ''%M%''ORDER BY ID ASC'); //   ASC ou DESC      e ''%M%'' Motorista
   Dm.ZQuery_colab_mot.Open;

   FRMSELECTCOLAB.ShowModal;

end;

procedure TFRMVEICULOS.btn_select_ajudanteClick(Sender: TObject);
begin
   FRMSELECTCOLAB.Caption := 'Selecione o Ajudante';
   Dm.ZQuery_colab_mot.Active := false;
   Dm.ZQuery_colab_mot.SQL.Clear;
   Dm.ZQuery_colab_mot.SQL.Add('Select * from Colaboradores where Tipo LIKE ''%A%''ORDER BY ID ASC'); //   ASC ou DESC
   Dm.ZQuery_colab_mot.Open;

   FRMSELECTCOLAB.ShowModal;
end;


Muito Obrigado antecipado!!!!
Mauro Monteiro

Mauro Monteiro

Responder

Post mais votado

25/03/2016

Boa noite .
Usa dois edits e filtra pelos campos nome e tipo

FRMSELECTCOLAB.Caption := 'Selecione o Motorista';
Dm.ZQuery_colab_mot.Active := false;
Dm.ZQuery_colab_mot.SQL.Clear;
Dm.ZQuery_colab_mot.SQL.Add('Select * from Colaboradores where nome like'+QuotedStr(edtNome.text+'%'));
Dm.ZQuery_colab_mot.SQL.Add('and Tipo like '+QuotedStr(edtTipo.text));
Dm.ZQuery_colab_mot.Open;

Romulo Silva

Romulo Silva
Responder

Mais Posts

25/03/2016

Mauro Monteiro

Muito obrigado, deu certo !!!!
Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

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

Aceitar