[firebase-br] Executar procedure em trigger

Hélio Oliveira hpensador em gmail.com
Sex Ago 26 10:56:30 -03 2011


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





Mais detalhes sobre a lista de discussão lista