where dinamico na store procedure
13/02/2006
0
Esto criando uma store procedure com alguns parametros que não são obrigatórios. Alguém sabe como passar estes parametros somente se não forem nulos na condição do select dentro da procedure.
Exemplo
alter procedure proc Texte(
Campo1 integer,
campo2 integer)
as
begin
for select * from Tabela1
where
if campo1 > 0 then
codcli = :campo1;
if campo2 > 0 then
and codfor = :campo2
do
begin
//..
end;
Isso eu não consegui fazer ele me da um erro.
Se alguém souber.
Exemplo
alter procedure proc Texte(
Campo1 integer,
campo2 integer)
as
begin
for select * from Tabela1
where
if campo1 > 0 then
codcli = :campo1;
if campo2 > 0 then
and codfor = :campo2
do
begin
//..
end;
Isso eu não consegui fazer ele me da um erro.
Se alguém souber.
Acacio
Curtir tópico
+ 0
Responder
Posts
13/02/2006
Motta
Tente algo assim :
Se vc passar um valor ele filtra o valor passado senão
retorna tudo.
SELECT * FROM CLIENTES WHERE NVL(:P_NF,UF) = UF
Se vc passar um valor ele filtra o valor passado senão
retorna tudo.
Responder
Clique aqui para fazer login e interagir na Comunidade :)