sou iniciante e gostaria de pesquisar e selecionar produto no DBGRID

Delphi

15/09/2015

Então pessoal sou iniciante no delphi, estou usando o delphi7.

Estou criando um form para entrada de produtos, coloquei nele um dbgrid e criei um campo "nome produto" nesse campo eu busco meus produtos cadastrados.

No dbgrid já aparece todos os meus produtos, eu gostaria de filtrar os produtos, como faço ??

Estou usando um banco da dados access!!
Tiago Zappelini

Tiago Zappelini

Curtidas 0

Melhor post

Fabio Cardoso

Fabio Cardoso

15/09/2015

Da uma olhada nesse tópico abaixo, vc vai fazer a mesma coisa que esta descrito la porem com o componente de acesso a dados do access. Caso você esteja usado bde para conexão e so fazer como esta descrito la no post que eu fiz.

https://www.devmedia.com.br/forum/filtro-em-tabela-paradox/531572
GOSTEI 1

Mais Respostas

Allan

Allan

15/09/2015

olá.. então..não sei se entendi bem... mas...

geralmente eu uso o seguinte

adiciono um componente Edit e no envento onchange coloco


[]
procedure TFrm.ValorCampoChange(Sender: TObject);

begin

Dm.Tab_produtos.Locate('Nome',ValorCampo.Text,[loCaseInsensitive, loPartialKey]);

end;
[]
GOSTEI 1
Tiago Zappelini

Tiago Zappelini

15/09/2015

Allan,

estou fazendo esta pesquisa em um dbgrid, pq estou buscando as informações em outra tabela,

tipo vou dar entrada em uma nota fiscal ai vou buscar o produto no meu cadastro de produto, qual clico em produto ele aparece a lista de todos os produtos cadastrados eu quero filtrar por exemplo só os que comecem com a letra A, conseguiu entender melhor?? desculpe minha ignorancia!!
GOSTEI 0
Raimundo Pereira

Raimundo Pereira

15/09/2015

Tiago de Oliveira Zappelini.


function SelectSQL(qry: TClientDataSet; Instr: String): Boolean; *
begin
Try
qry.Close;
qry.CommandText := Instr;
qry.Open;
Result := True
Except
Result := False
End; // Try
end;

Para Chamar a função
SelectSQL(ClientDataSet1, "select * from NOME_DA_SUA_TABELA where NOME_DO_CAMPO like " + QuotedStr (Edit1.Text + "%"))
GOSTEI 1
Tiago Zappelini

Tiago Zappelini

15/09/2015

desculpe a minha ignorancia, mas esse comando eu coloco em qual lugar ???
GOSTEI 0
Raimundo Pereira

Raimundo Pereira

15/09/2015

implementation

{$R *.dfm}

//A função entra abaixo de {$R *.dfm}
//-----------------------------------------------------------------------------------------

function SelectSQL(qry:TClientDataSet; Instr: String): Boolean;
begin
Try
qry.Close;
qry.CommandText := Instr;
qry.Open;
Result := True
Except
Result := False
End; // Try
end;

-----------------------------------------------------------------------------------------------

Ao chamar a função >> Você pode adicionar no click de um button ou no event key press de algun edit



begin
SuaQuery.Close;
SelectSQL(SuaQuery, 'select * from NOME_DA_SUA_TABELA where NOME_DO_CAMPO like ' + QuotedStr (Edit1.Text + '%'));
SuaQuery.open;
end;


Testa ai .

Aguardo Retorno.
rcp@outlook.com.br
Whatz 71.93052489
GOSTEI 0
Ricardo Araujo

Ricardo Araujo

15/09/2015

você pode usar assim,

Query.Filtered := false;
Query.Filter := ' Nome_produto like ' + QuotedStr(Edit1.texte + '%');
Query.Filtered := true;

Deste jeito e o mais fácil que conheço.

espero te ajudado.
GOSTEI 0
POSTAR