ActiveDelphi - Índice do Fórum ActiveDelphi
.: O site do programador Delphi! :.
 
 FAQFAQ   PesquisarPesquisar   MembrosMembros   GruposGrupos   RegistrarRegistrar 
 PerfilPerfil   Entrar e ver Mensagens ParticularesEntrar e ver Mensagens Particulares   EntrarEntrar 

Parametros DBexpress

 
Novo Tópico   Responder Mensagem    ActiveDelphi - Índice do Fórum -> Delphi
Exibir mensagem anterior :: Exibir próxima mensagem  
Autor Mensagem
gszatkoski
Novato
Novato


Registrado: Quarta-Feira, 21 de Outubro de 2009
Mensagens: 20

MensagemEnviada: Seg Jul 18, 2011 3:05 pm    Assunto: Parametros DBexpress Responder com Citação

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
Ver o perfil de Usuários Enviar Mensagem Particular MSN Messenger
imex
Moderador
Moderador


Registrado: Sexta-Feira, 7 de Janeiro de 2011
Mensagens: 11666

MensagemEnviada: Ter Jul 19, 2011 10:41 am    Assunto: Responder com Citação

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
Ver o perfil de Usuários Enviar Mensagem Particular
johnny-walker
Moderador
Moderador


Registrado: Sábado, 4 de Outubro de 2003
Mensagens: 10653
Localização: Contagem/MG - BRAZIL

MensagemEnviada: Ter Jul 19, 2011 10:51 am    Assunto: Responder com Citação

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
Ver o perfil de Usuários Enviar Mensagem Particular MSN Messenger
Mostrar os tópicos anteriores:   
Novo Tópico   Responder Mensagem    ActiveDelphi - Índice do Fórum -> Delphi Todos os horários são GMT - 3 Horas
Página 1 de 1

 
Ir para:  
Enviar Mensagens Novas: Proibido.
Responder Tópicos Proibido
Editar Mensagens: Proibido.
Excluir Mensagens: Proibido.
Votar em Enquetes: Proibido.


Powered by phpBB © 2001, 2005 phpBB Group
Traduzido por: Suporte phpBB