CREATE trigger tbmenu_b02i for tbmenu
active before insert position 2
AS
DECLARE VARIABLE HISTORICO VARCHAR(500);
BEGIN

    HISTORICO = '';

    IF ( NEW.ID > 0) THEN
    BEGIN
        HISTORICO = HISTORICO||'Registro incluido';
    END
    IF (HISTORICO <> '') THEN
    BEGIN
        EXECUTE PROCEDURE SPI_HISTORICO('TBMENU',NEW.ID, HISTORICO);
    END
END;


CREATE trigger tbmenu_b02u for tbmenu
active before update position 2
AS

DECLARE VARIABLE HISTORICO VARCHAR(500);
BEGIN

    HISTORICO = '';

    IF ( OLD.CONTROLE <> NEW.CONTROLE) THEN
    BEGIN
        HISTORICO = HISTORICO||'Controle:'|| OLD.CONTROLE||'->'||NEW.CONTROLE;
    END
    
    IF ( OLD.GRUPO <> NEW.GRUPO) THEN
    BEGIN
        HISTORICO = HISTORICO||', Grupo:'|| OLD.GRUPO||'->'||NEW.GRUPO;
    END

     IF ( OLD.SUBGRUPO <> NEW.SUBGRUPO) THEN
    BEGIN
        HISTORICO = HISTORICO||', Subgrupo:'|| OLD.GRUPO||'->'||NEW.SUBGRUPO;
    END

     IF ( OLD.TIPO <> NEW.TIPO) THEN
    BEGIN
        HISTORICO = HISTORICO||', Tipo:'|| OLD.TIPO||'->'||NEW.TIPO;
    END

     IF ( OLD.URL <> NEW.URL) THEN
    BEGIN
        HISTORICO = HISTORICO||', URL:'|| OLD.URL ||'->'||NEW.URL;
    END

     IF ( OLD.DESCRICAO <> NEW.GRUPO) THEN
    BEGIN
        HISTORICO = HISTORICO||', Descrição:'|| OLD.DESCRICAO||'->'||NEW.DESCRICAO;
    END
    
    IF (HISTORICO <> '') THEN
    BEGIN
        EXECUTE PROCEDURE SPI_HISTORICO('TBMENU',NEW.id, HISTORICO);
    END
END;


CREATE trigger tbmenu_b02d for tbmenu
active before delete position 2
AS
DECLARE VARIABLE HISTORICO VARCHAR(500);
BEGIN

    HISTORICO = '';

    IF ( OLD.id > 0) THEN
    BEGIN
        HISTORICO = HISTORICO||'Registro Excluido';
    END

    IF (HISTORICO <> '') THEN
    BEGIN
        EXECUTE PROCEDURE SPI_HISTORICO('TBMENU',old.id, HISTORICO);
    END
end;


