Fórum consulta em dois edit's usando adoquery #402278
03/06/2011
0
Estou tentando fazer um pesquisa mas não está dando certo...
Tenho essa tela de pesquisa e esse código no adoquery...
Estou usando o seguinte código no evento OnChange dos edit's
if edtConsultar.Text <> '' then
begin
qryGrid.Close;
qryGrid.Parameters.ParamByName('processo').Value := edtConsultar.Text;
qryGrid.Open;
end
else
begin
qryGrid.Close;
end;
O mesmo código para os dois edit's (alterando somente os nomes dos componentes, lógico)
A consulta está sendo feita, porém, quando eu pesquiso o processo primeiro ele pesquisa certinho,
aí quando eu mudo para o outro edit e digito algo para pesquisar ele me retorna um monte de dados
que eu não pesquisei (geralmente dados pesquisado no edit anterior)...
a mesma coisa acontece se eu começar a pesquisar no edit de baixo, ele dá certo, mas quando passo
para o edit de cime me retorna uma pesquisa imprecisa...
Grato...
Klaus
Curtir tópico
+ 0Posts
06/06/2011
Nigro
qryGrid.Close;
if edtConsultar.Text <> '' then
qryGrid.Parameters.ParamByName('processo').Value := edtConsultar.Text;
if edtProcesso.Text <> '' then
qryGrid.Parameters.ParamByName('processo').Value := edtConsultar.Text;
qryGrid.Open;
Gostei + 0
06/06/2011
Emerson Nascimento
se puderem ser usados simultaneamente:
cSQL := 'select * from controle';
cCondicao := '';
if edtConsultar.Text <> '' then
cCondicao := cCondicao + 'processo like '+QuotedStr('%'+edtConsultar.Text+'%');
if edtExecutado.Text <> '' then
begin
if cCondicao <> '' then cCondicao := cCondicao + ' and ';
cCondicao := cCondicao + 'executado like '+QuotedStr('%'+edtExecutado.Text+'%');
end;
if cCondicao <> '' then
cSQL := cSQL + ' where ' + cCondicao;
qryGrid.Close;
qryGrid.SQL.Text := cSQL;
qryGrid.Open;
se puder ser pesquisado somente um dos campos:
cSQL := 'select * from controle';
if edtConsultar.Text <> '' then
cSQL := cSQL + ' where processo like '+QuotedStr('%'+edtConsultar.Text+'%');
else
if edtExecutado.Text <> '' then
cSQL := cSQL + ' where executado like '+QuotedStr('%'+edtExecutado.Text+'%');
qryGrid.Close;
qryGrid.SQL.Text := cSQL;
qryGrid.Open;
Gostei + 0
09/06/2011
Klaus
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)