CREATE OR ALTER trigger ttblinha_perfil_b9u for tblinha_perfil
active before update position 9
AS
DECLARE VARIABLE HISTORICO VARCHAR(500);
begin

end;


ALTER TABLE TBLINHA_PERFIL ADD OLD_PERFIL VARCHAR(10) DEFAULT '';
update TBLINHA_PERFIL set OLD_PERFIL = PERFIL;
ALTER TABLE TBLINHA_PERFIL DROP PERFIL;
ALTER TABLE TBLINHA_PERFIL ADD PERFIL VARCHAR(10) DEFAULT '';
update TBLINHA_PERFIL set PERFIL = OLD_PERFIL;
ALTER TABLE TBLINHA_PERFIL DROP OLD_PERFIL;

CREATE OR ALTER trigger ttblinha_perfil_b9u for tblinha_perfil
active before update position 9
AS
DECLARE VARIABLE HISTORICO VARCHAR(500);
begin

   HISTORICO = '';

   if (OLD.CAP_PRODUTIVA <> NEW.CAP_PRODUTIVA) then
       BEGIN
       HISTORICO = HISTORICO||' Cap.'||OLD.CAP_PRODUTIVA||'->'||NEW.CAP_PRODUTIVA;
       END
   if (OLD.MULTIPLICADOR <> NEW.MULTIPLICADOR) then
       BEGIN
       HISTORICO = HISTORICO||' Mult.'||OLD.MULTIPLICADOR||'->'||NEW.MULTIPLICADOR;
       END
   if (OLD.PERFIL <> NEW.PERFIL) then
       BEGIN
       HISTORICO = HISTORICO||' Perf.'||OLD.PERFIL||'->'||NEW.PERFIL;
       END

   if (HISTORICO <> '') Then
       Begin
       HISTORICO = 'Tam. ['||OLD.TAMANHO||'] - '||HISTORICO;
       INSERT INTO TBHISTORICO (
       TABELA, TABELA_ID, USUARIO, IP, HISTORICO) VALUES (
      'TBLINHA', OLD.LINHA_ID,
      (Select First 1 MON$USER from mon$attachments where mon$attachment_id = current_connection),
      (Select First 1 MON$REMOTE_ADDRESS from mon$attachments where mon$attachment_id = current_connection),
       :Historico);
       End
End;

