| Exibir mensagem anterior :: Exibir próxima mensagem |
| Autor |
Mensagem |
gszatkoski Novato

Registrado: Quarta-Feira, 21 de Outubro de 2009 Mensagens: 20
|
Enviada: Seg Jul 18, 2011 3:05 pm Assunto: Parametros DBexpress |
|
|
Ola amigos gostria de saber como faco para utilizar varios parametros em uma consulta com dbexpress tenho o seguinte codigo:
no Dataset
select *
from CLIENTES c
where c.nome_razao_social like :pnome and
c.cidade like :pcidade
if rdgfiltro.ItemIndex = 0 then
begin
with cdsconscli do
begin
cdsconscli.Close;
cdsconscli.FetchParams;
cdsconscli.Params.ParamByName('pnome').Value:='%'+UpperCase(edtbusca.Text)+'%';
cdsconscli.Open;
end;
f rdgfiltro.ItemIndex = 1 then
begin
with cdsconscli do
begin
cdsconscli.Close;
cdsconscli.FetchParams;
cdsconscli.Params.ParamByName('pcidade').Value:='%'+UpperCase(edtbusca.Text)+'%';
cdsconscli.Open;
end;
e nesse rariogroup irei filtar por cidade tbm mas n estou conseguindo oq esra errado. |
|
| Voltar ao Topo |
|
 |
imex Moderador

Registrado: Sexta-Feira, 7 de Janeiro de 2011 Mensagens: 11666
|
Enviada: Ter Jul 19, 2011 10:41 am Assunto: |
|
|
Se o objetivo é filtrar por um campo ou por outro, acho melhor alterar a instrução SQL no DataSet para adicionar somente o filtro correspondente a opção selecionada, ou ainda alterar o filtro para que o mesmo não tenha efeito quando for igual a nulo. Ex:
| Código: | | ((:pcidade is null) or (c.cidade like :pcidade)) |
Espero que seja útil.
_________________
Assinatura: Imoveis comerciais em Guarulhos |
|
| Voltar ao Topo |
|
 |
johnny-walker Moderador


Registrado: Sábado, 4 de Outubro de 2003 Mensagens: 10653 Localização: Contagem/MG - BRAZIL
|
Enviada: Ter Jul 19, 2011 10:51 am Assunto: |
|
|
Pode ser feita uma pesquisa desta forma, mas vc terá de limpar os parametros, coso contrário vc tem uma dor de cabeça em maos.
Aconselho a fazer testes, quando fiz assim tive problemas devido nao proceder a limpeza dos parametros, pois os paramentros nao sao limpos mesmo quando vc fecha o cds. Assim fiz um rotina para limpar.
bye _________________ P.O.W.E.R B.Y D.E.L.P.H.I |
|
| Voltar ao Topo |
|
 |
|