Pesquisa com dois filtros dbgrid com Delphi e firebird
28/03/2020
0
Estou usando Firebird com TIBQuery. Estou usando o código abaixo mais eu não sei como incluir os filtros combobox na pesquisa sql.
procedure TfrmPesqIpasgo.btnLocalizarClick(Sender: TObject);
begin
with dm.ibIpasgo do
case rdPesqLocador.ItemIndex of
0 :Begin
close;
sql.Clear;
sql.Add(''''select * from ipasgo'''');
SQL.Add(''''where upper(CODIGOIPASGO) like upper(''''+ QuotedStr(''''%'''' + edtpesquisa.Text + ''''%''''));
sql.Add('''')'''');
sql.Add(''''order by upper(CODIGOIPASGO)'''');
open;
end;
1 :Begin
close;
sql.Clear;
sql.Add(''''select * from ipasgo'''');
sql.Add(''''where upper(descricao) like upper(''''+ QuotedStr(''''%'''' + edtpesquisa.Text + ''''%''''));
sql.Add('''')'''');
sql.Add(''''order by upper(descricao)'''');
open;
end;
end;
dm.ibIpasgo.Open;
if dm.ibIpasgo.IsEmpty then
ShowMessage(''''Nenhum registro encontrado não encontrado!'''');
End;
Vandeir
Posts
30/03/2020
Emerson Nascimento
procedure TfrmPesqIpasgo.btnLocalizarClick(Sender: TObject); var sFiltro: string; sOrdem: string; begin sFiltro := ''; sOrdem := ''; case rdPesqLocador.ItemIndex of 0: begin sFiltro := 'upper(CODIGOIPASGO) like '+ QuotedStr('%' + upper(edtpesquisa.Text) + '%'); sOrdem := 'upper(CODIGOIPASGO)'; end; 1: begin sFiltro := 'upper(descricao) like '+ QuotedStr('%' + upper(edtpesquisa.Text) + '%'); sOrdem := 'upper(descricao)'; end; end; with dm.ibIpasgo do begin close; SQL.Clear; SQL.Add('select * from ipasgo'); SQL.Add('where '+sFiltro); SQL.Add('order by '+sOrdem); open; end; end;
30/03/2020
Emerson Nascimento
procedure TfrmPesqIpasgo.btnLocalizarClick(Sender: TObject); var sFiltro: string; sOrdem: string; begin sFiltro := ''; sOrdem := ''; case rdPesqLocador.ItemIndex of 0: begin sFiltro := 'upper(CODIGOIPASGO) like '+ QuotedStr('%' + uppercase(edtpesquisa.Text) + '%'); // uppercase() ou ansiuppercase() sOrdem := 'upper(CODIGOIPASGO)'; end; 1: begin sFiltro := 'upper(descricao) like '+ QuotedStr('%' + uppercase(edtpesquisa.Text) + '%'); // uppercase() ou ansiuppercase() sOrdem := 'upper(descricao)'; end; end; with dm.ibIpasgo do begin close; SQL.Clear; SQL.Add('select * from ipasgo'); SQL.Add('where '+sFiltro); SQL.Add('order by '+sOrdem); open; end; end;
30/03/2020
Vandeir
TABELA VERSAO:
ID_VERSAO (chave primária)
DATA_VERSAO
TABELA IPASGO:
ID (chave primária)
ID_VERSAO ( FK - relacionamento) (Esse campo no formulário pesquisa eu precisava colocar um filtro na combobox)
CODIGO_MAT_MED
DESCRIÇÃO
TIPO (Aqui separa os dados por MAT ou MED - Onde precisava colocar um dos filtros no combobox do formulário de pesquisa)
VALOR
Então no código que vc me passou eu precisa incluir um filtro com a data de atualização, para que eu selecione a data, ue pesquisa apenas os registros referente a essa atualização, e dentro da tabela é divido em MAT e MED, ae precisa do segundo combobox para filtrar ou só mat ou só med, conforme necessidade do usuário.
Clique aqui para fazer login e interagir na Comunidade :)