[firebase-br] Declare Procedure - Variable
Marcos R. Weimer
marcosweimer em gmail.com
Terça Março 23 10:55:26 -03 2021
Olá Cantu!
fazer mais ou menos assim:
CREATE OR ALTER PROCEDURE prc_teste
AS
DECLARE VARIABLE var1 INTEGER;
DECLARE VARIABLE var2 INTEGER;
DECLARE PROCEDURE testeinterno(valor INT)
AS
BEGIN
insert into tabela_teste (campo1, campo2) values (:var1, :valor);
END
BEGIN
var1 = select x from y where z = zz;
execute procedure testeinterno(5);
execute procedure testeinterno(6);
SUSPEND;
END
passando apenas 1 parâmetro para a sub-procedure e dentro dela usando uma
variável interna (da procedure "pai"), tenho vários parâmetros para passar
e se fosse possível utililizar a variável interna da procedure "pai" o
código ficaria bem mais clean
-=Ma®©oS=-
Marcos R. Weimer
Pessoas quietas têm as mentes mais barulhentas - Stephen Hawking
Viver significa ter algumas alegrias e muito sofrimento - Pepe Mujica
Muitos daqueles que te chamam de louco queriam ter a sua coragem - Silvio
Santos
Em ter., 23 de mar. de 2021 às 10:52, Carlos H. Cantu via lista <
lista em firebase.com.br> escreveu:
> Passar ela como parâmetro pra procedure "interna"?
>
> []s
> Carlos H. Cantu
> eBook Guia de Migração para o FB 3 - www.firebase.com.br/guiafb3.php
> www.FireBase.com.br - www.firebirdnews.org - blog.firebase.com.br
>
> MRWvl> Ola!
>
> MRWvl> Tem alguma maneira de acessar a variavel da procedure "pai" ?
>
> MRWvl> Exemplo:
>
> MRWvl> CREATE OR ALTER PROCEDURE prc_teste
> MRWvl> AS
> MRWvl> DECLARE VARIABLE var1 INTEGER;
> MRWvl> DECLARE VARIABLE var2 INTEGER;
> MRWvl> DECLARE PROCEDURE testeinterno(valor INT)
> MRWvl> AS
> MRWvl> BEGIN
> MRWvl> insert into tabela_teste (campo1, campo2) values (:var1,
> :valor);
> MRWvl> END
> MRWvl> BEGIN
> MRWvl> /* Procedure Text */
> MRWvl> SUSPEND;
> MRWvl> END
>
> MRWvl> não compila: "Unknow variable 'var1'"
>
> MRWvl> A dúvida é se tem alguma maneira de acessar esta variável.
>
>
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> Para saber como gerenciar/excluir seu cadastro na lista, use:
> http://www.firebase.com.br/fb/artigo.php?id=1107
> Para consultar mensagens antigas:
> http://www.firebase.com.br/pesquisa_lista.html
>
Mais detalhes sobre a lista de discussão lista