CREATE trigger ttbmodelo_fluxo_b01iud for tbmodelo_fluxo
active before insert or update or delete position 0
AS
begin

  if(inserting or updating)then
  begin
    FN_ALTERACAO_TEMPO('TBMODELO', new.modelo_id);
  end else
  begin
    FN_ALTERACAO_TEMPO('TBMODELO', old.modelo_id);
  end

end;

COMMENT ON TRIGGER TTBMODELO_FLUXO_B01IUD IS 'marca modelo para recalculo de tempo';

CREATE OR ALTER trigger ttbup_fluxo_b01iud for tbup_fluxo
active before insert or update or delete position 0
AS
begin
  if(inserting or updating)then
  begin
    FN_ALTERACAO_TEMPO('TBUP', new.up_id);
  end else
  begin
    FN_ALTERACAO_TEMPO('TBUP', old.up_id);
  end
end;

COMMENT ON TRIGGER ttbup_fluxo_b01iud IS 'marca up para recalculo de tempo';

CREATE trigger ttbmodelo_fluxo_producao_b01iud for tbmodelo_fluxo_producao
active before insert or update or delete position 0
AS
begin

  if(inserting or updating)then
  begin
    FN_ALTERACAO_TEMPO('TBMODELO', new.modelo_id);
  end else
  begin
    FN_ALTERACAO_TEMPO('TBMODELO', old.modelo_id);
  end

end;

COMMENT ON TRIGGER TTBMODELO_FLUXO_PRODUCAO_B01IUD IS 'marca modelo para recalculo de tempo';

CREATE trigger ttbferramentaria_b03u for tbferramentaria
active before update position 0
AS
declare variable MODELO_ID integer;
begin

    if(new.TEMPO_SETUP <> old.TEMPO_SETUP or new.TEMPO_SETUP_AQUECIMENTO <> old.TEMPO_SETUP_AQUECIMENTO )then
    begin

        for
            select m.codigo from tbmodelo m where m.matriz_codigo = new.matriz_id
        into
            :MODELO_ID
        do begin
            FN_ALTERACAO_TEMPO('TBMODELO', :MODELO_ID);
        end

    end
end;

COMMENT ON TRIGGER TTBFERRAMENTARIA_B03U IS 'marca modelo para recalculo de tempo';

CREATE trigger ttbmodelo_b01iu for tbmodelo
active before insert or update or delete position 0
AS
begin

    if(inserting or updating)then
    begin
        if(updating)then
        begin
            if(new.matriz_codigo <> old.matriz_codigo)then
            begin
                FN_ALTERACAO_TEMPO('TBMODELO', new.codigo);
            end
        end else
        begin
           FN_ALTERACAO_TEMPO('TBMODELO', new.codigo);
        end

    end else
    begin
        FN_ALTERACAO_TEMPO('TBMODELO', old.codigo);
    end

end;

COMMENT ON TRIGGER TTBMODELO_B01IU IS 'marca modelo para recalculo de tempo';

