Fausto, também não funcionou, não sei o que ta acontecendo, mas não funciona
tambe´m..

Fiz uma gambiarra aqui, muito feia por sinal, que resolveu meu problema....

Obrigado a vc e a todos que se dispuseram a me ajudar.
  -----Mensagem original-----
  De: delphi-br@yahoogrupos.com.br [mailto:[EMAIL PROTECTED]
nome de Fausto Cintra Junior
  Enviada em: quarta-feira, 26 de outubro de 2005 07:37
  Para: delphi-br@yahoogrupos.com.br
  Assunto: Re: [delphi-br] Erro maluco de SQL


  Eduardo, observe a sequência de comandos:
    ParamByName('p_pessoa').AsString := 'F';
  ParamByName('p_sexo').AsString := '';
  ParamByName('p_pessoa').AsString := '';
  Após a execução do último comando o que vc tem?
  parâmetro p_sexo=''
  parâmetro p_pessoa=''
  E a cláusula where do seu sql fica:
  where TP_PESSOA = '' AND NM_SEXO = ''
  OR TP_PESSOA = ''
  veja que acima também faltaram os parênteses que tinham no sql que
  funcionou:
  where (TP_PESSOA = 'F' AND NM_SEXO = '')
  OR TP_PESSOA = ''
  Pelo que entendi vc precisa mudar o sql para:
  Close;
  Sql.Clear;
  Sql.Add('SELECT TP_PESSOA, NM_SEXO FROM SIAE0101');
  Sql.Add(' WHERE (TP_PESSOA = :p_pessoa'); <----- abre parênteses
  Sql.Add(' AND NM_SEXO = :p_sexo)'); <----- fecha parênteses
  Sql.Add(' OR TP_PESSOA ='''''); <----- 5 aspas simples
  ParamByName('p_pessoa').AsString := 'F';
  ParamByName('p_sexo').AsString := '';
  Open;

  Fausto

  On 10/26/05, Eduardo Silva (r) <[EMAIL PROTECTED]> wrote:
  >
  > Já fiz isso e mesmo assim não deu cert.
  >
  > Eu credito que o problema seja na forma de comparar os parametros
  >
  > ParamByName('p_sexo').AsString := '';
  >
  > Acho que a string vazia é onde esta o problema, mas nõ estou conseguindo
  > resolver...
  >
  >
  > -----Mensagem original-----
  > De: delphi-br@yahoogrupos.com.br [mailto:[EMAIL PROTECTED]
  > nome de Valdir Marcos
  > Enviada em: terça-feira, 25 de outubro de 2005 13:41
  > Para: delphi-br@yahoogrupos.com.br
  > Assunto: Re: [delphi-br] Erro maluco de SQL
  >
  >
  > Crie :p_pessoa1 e :p_pessoa2 para diferenciar os parâmetros...
  >
  > Um abraço,
  >
  > Valdir marcos
  >
  > ----- Original Message -----
  > From: Eduardo Silva (r)
  > To: delphi-br@yahoogrupos.com.br
  > Sent: Tuesday, October 25, 2005 1:14 PM
  > Subject: RES: [delphi-br] Erro maluco de SQL
  >
  >
  > Amigo, não é isso.
  >
  > Não sei o que acontece, mas as outras instruções sql, que são quase
  > identicas a essa, executam normalmente e somente esta não esta
  > executando.
  >
  > Já tirei uma clausula pra ver se era isso e mesmo assim continua o erro,
  > ela
  > me retorna zero, sendo que quando eu testo dentro do programa (tempo de
  > projeto) com o botão direito do mouse em cima da query -> expolore, a
  > rotina
  > funciona.
  >
  > O que pode ser ainda?
  >
  > To ficando louco.....só isso não ta rodando......
  > -----Mensagem original-----
  > De: delphi-br@yahoogrupos.com.br
  > [mailto:[EMAIL PROTECTED]
  > nome de Romario (Listas)
  > Enviada em: terça-feira, 25 de outubro de 2005 11:24
  > Para: delphi-br@yahoogrupos.com.br
  > Assunto: Re: [delphi-br] Erro maluco de SQL
  >
  >
  > Acredito que o erro está na falta dos parênteses que não estão
  > distingüindo as operações dos filtros.
  >
  > Tente da seguinte forma e veja se funciona:
  >
  > Close;
  >
  > Sql.Clear;
  >
  > Sql.Add('SELECT TP_PESSOA, NM_SEXO FROM SIAE0101');
  > Sql.Add(' WHERE ((TP_PESSOA = :p_pessoa )');
  > Sql.Add(' AND (NM_SEXO = :p_sexo ))');
  > Sql.Add(' OR (TP_PESSOA = :p_pessoa )');
  >
  > ParamByName('p_pessoa').AsString := 'F';
  > ParamByName('p_sexo' ).AsString := '';
  > ParamByName('p_pessoa').AsString := '';
  >
  > Open;
  >
  > lblNaoInformado.Caption := IntToStr(qryAux.RecordCount);
  >
  > Sds,
  >
  > Romario
  >
  >
  >
  >
  > Eduardo Silva (r) escreveu:
  > > Galera, quando eu uso o código abaixo para testar a instrução SQL em
  > tempo
  > > de projeto ela funciona beleza
  > >
  > > SELECT TP_PESSOA, NM_SEXO
  > > FROM SIAE0101
  > > WHERE (TP_PESSOA = 'F'
  > > AND NM_SEXO = '')
  > > OR TP_PESSOA = ''
  > >
  > > Agora, se eu usar a instrução abaixo em tempo de execução, ela não
  > me
  > > retorna nada, nem da erro, o que pode estar acontecendo?
  > >
  > > Close;
  > > Sql.Clear;
  > > Sql.Add('SELECT TP_PESSOA, NM_SEXO FROM SIAE0101');
  > > Sql.Add(' WHERE TP_PESSOA = :p_pessoa');
  > > Sql.Add(' AND NM_SEXO = :p_sexo');
  > > Sql.Add(' OR TP_PESSOA = :p_pessoa');
  > > ParamByName('p_pessoa').AsString := 'F';
  > > ParamByName('p_sexo').AsString := '';
  > > ParamByName('p_pessoa').AsString := '';
  > > Open;
  > > lblNaoInformado.Caption := IntToStr(qryAux.RecordCount
  > >
  > > Eduardo de Almeida Silva
  >
  >
  >
  >
  >
  > _______________________________________________________
  > Promoção Yahoo! Acesso Grátis: a cada hora navegada você acumula
  > cupons e
  > concorre a mais de 500 prêmios! Participe! http://yahoo.fbiz.com.br/
  >
  >
  > --
  > <<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>>
  >
  >
  >
  >
  >
  > Yahoo! Grupos, um serviço oferecido por:
  >
  >
  >
  > ------------------------------------------------------------------------
  > ----
  > --
  > Links do Yahoo! Grupos
  >
  > a.. Para visitar o site do seu grupo na web, acesse:
  > http://br.groups.yahoo.com/group/delphi-br/
  >
  > b.. Para sair deste grupo, envie um e-mail para:
  > [EMAIL PROTECTED]
  >
  > c.. O uso que você faz do Yahoo! Grupos está sujeito aos Termos do
  > Serviço do Yahoo!.
  >
  >
  >
  > __________ NOD32 1.1264 (20051024) Information __________
  >
  > This message was checked by NOD32 antivirus system.
  > http://www.nod32.com
  >
  >
  > [As partes desta mensagem que não continham texto foram removidas]
  >
  >
  >
  > --
  > <<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>>
  >
  >
  >
  >
  >
  > Yahoo! Grupos, um serviço oferecido por:
  >
  >
  >


> --------------------------------------------------------------------------
  > ----
  > Links do Yahoo! Grupos
  >
  > a.. Para visitar o site do seu grupo na web, acesse:
  > http://br.groups.yahoo.com/group/delphi-br/
  >
  > b.. Para sair deste grupo, envie um e-mail para:
  > [EMAIL PROTECTED]
  >
  > c.. O uso que você faz do Yahoo! Grupos está sujeito aos Termos do
  > Serviço do Yahoo!.
  >
  >
  >
  > [As partes desta mensagem que não continham texto foram removidas]
  >
  >
  >
  > --
  > <<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>>
  >
  >
  >
  >
  >
  > Yahoo! Grupos, um serviço oferecido por:
  >
  >
  >
  >


> --------------------------------------------------------------------------
--
  > --
  > Links do Yahoo! Grupos
  >
  > a.. Para visitar o site do seu grupo na web, acesse:
  > http://br.groups.yahoo.com/group/delphi-br/
  >
  > b.. Para sair deste grupo, envie um e-mail para:
  > [EMAIL PROTECTED]
  >
  > c.. O uso que você faz do Yahoo! Grupos está sujeito aos Termos do
  > Serviço do Yahoo!.
  >
  >
  >
  > __________ NOD32 1.1265 (20051025) Information __________
  >
  > This message was checked by NOD32 antivirus system.
  > http://www.nod32.com
  >
  >
  > [As partes desta mensagem que não continham texto foram removidas]
  >
  >
  >
  > --
  > <<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>>
  >
  >
  >
  > Links do Yahoo! Grupos
  >
  >
  >
  >
  >
  >
  >
  >


  [As partes desta mensagem que não continham texto foram removidas]



  --
  <<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>>





        Yahoo! Grupos, um serviço oferecido por:



----------------------------------------------------------------------------
--
  Links do Yahoo! Grupos

    a.. Para visitar o site do seu grupo na web, acesse:
    http://br.groups.yahoo.com/group/delphi-br/

    b.. Para sair deste grupo, envie um e-mail para:
    [EMAIL PROTECTED]

    c.. O uso que você faz do Yahoo! Grupos está sujeito aos Termos do
Serviço do Yahoo!.



  __________ NOD32 1.1265 (20051025) Information __________

  This message was checked by NOD32 antivirus system.
  http://www.nod32.com


[As partes desta mensagem que não continham texto foram removidas]



-- 
<<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>>

<*> Para ver as mensagens antigas, acesse:
    http://br.groups.yahoo.com/group/delphi-br/messages

<*> Para falar com o moderador, envie um e-mail para:
    [EMAIL PROTECTED]
 
Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
    http://br.groups.yahoo.com/group/delphi-br/

<*> Para sair deste grupo, envie um e-mail para:
    [EMAIL PROTECTED]

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
    http://br.yahoo.com/info/utos.html

 


Responder a