Luis,

Não sei o conteúdo do seu statement SQL.
Normalmente faria isso com uma condicional da seguinte forma :

select <campos>
from <tabela>
where ((<campo_condicional> = :parametro) or (:todos_registros = 0))

Usando seu exemplo, na unit na passagem de parâmetros faço um if como segue:

  if (edtCodFor.AsInteger = 0) then
     begin
          query.paramByName('parametro').clear;
          query.paramByName('todos_registros').asinteger := 0;
     end
else
    begin
          query.paramByName('parametro').asInteger := edtCodFor.AsInteger
          query.paramByName('todos_registros').asinteger := 1; //ou outro
valor que seja diferente de 0(zero)
   end


  Galera é o seguinte...
>
>   Estou passando parâmetro para um SQL, certo..
>
>   mas eu gostaria de que quando o parâmetro vir com o valor zero, ele
>   filtrar todos os campos, ou Null
>
>   teria como fazer isso na sql em run-time, tipo fazer uma condição
>
>   Ex:
>   Ib_Pag.ParamByName('nFor').AsInteger := edtCodFor.AsInteger
>
>   Onde se  edtCodFor.AsInteger vier com Zero "0", ele filtrar todos os
>   codigos cadastrados , nao somente o zero como esta fazendo agora
>
>   --
>   ****************************
>   Grato pelo atenção
>
>     Luís
>
>


[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