[firebase-br] Executar procedure em trigger

andre conrado acf.andre em gmail.com
Sex Ago 26 11:04:01 -03 2011


Nenhum problema, com exceção de uma reentrância, isto é, a SP chamada
efetuar uma alteração na tabela que iniciou a TRIGGER.

abçs

Em 26 de agosto de 2011 10:56, Hélio Oliveira <hpensador em gmail.com> escreveu:
> Bom dia Colegas!
>
> Há algum impedimento em se executar uma procedure dentro de uma trigger?
>
> Utilizo o Firebird 2.5 e ao executar a trigger abaixo, apesar de não
> apresentar nenhuma mensagem de erro o resultado (da execução da procedure)
> não ocorre.
>
> CREATE OR ALTER trigger funcionario_bu0 for funcionario
> active before update position 0
> AS
> declare variable mes integer;
> declare variable ano integer;
> begin
>  select x.folha_mes,
>         x.folha_ano
>  from empresa x into :mes, :ano;
>  if (new.data_admissao <> old.data_admissao) then
>  begin
>    if (((extract(month from new.data_admissao) <> :mes) and
>        (extract(year from new.data_admissao) = :ano)) or
>       ((extract(month from new.data_admissao) = :mes) and
>        ((extract(year from new.data_admissao) > :ano) or
>         (extract(year from new.data_admissao) < :ano))))  then
>      exception alteracao_nao_permitida;
>    else
>      execute procedure calcula_salario(old.matricula, :mes, :ano, 0);
>  end
> end
>
> --
> []'s,
>
> Hélio Oliveira
> Bel. Ciência da Computação
> Técnico em Contabilidade
> e-mail : hpensador em gmail.com
> Skype : hpensador
> http://hpensador.blogspot.com/
> www.hpensador.net
> (71) 9975-9176
>
>
> ______________________________________________
> 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://firebase.com.br/pesquisa
>



-- 
Um Abraço,
André Conrado.

055 21 9176-7013 - Claro




Mais detalhes sobre a lista de discussão lista