CREATE OR ALTER trigger ttbformulario_pergunta_b02i for tbformulario_pergunta
active before insert position 1
AS
DECLARE VARIABLE HISTORICO VARCHAR(500);
BEGIN
    HISTORICO = '';

    IF ( NEW.ID > 0) THEN
    BEGIN
        HISTORICO = HISTORICO||' PERGUNTA INCLUIDA: '||NEW.ID||', ORDEM: '||NEW.ORDEM||', TIPO: '||NEW.FORMULARIO_RESPOSTA_TIPO_ID;
    END

    IF (HISTORICO <> '') THEN
    BEGIN
        EXECUTE PROCEDURE SPI_HISTORICO('TBFORMULARIO',NEW.FORMULARIO_ID, HISTORICO);
    END
END;


CREATE OR ALTER trigger ttbformulario_pergunta_b1u for tbformulario_pergunta
active before update position 1
AS
DECLARE VARIABLE HISTORICO VARCHAR(500);
BEGIN

    HISTORICO = '';

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

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

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

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

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

     IF (HISTORICO <> '') THEN
    BEGIN
        HISTORICO = ' PERGUNTA ALTERADA: '||NEW.ID||', ORDEM: '||NEW.ORDEM||', '||HISTORICO;
        EXECUTE PROCEDURE SPI_HISTORICO('TBFORMULARIO',NEW.FORMULARIO_ID, HISTORICO);
    END
END;




CREATE OR ALTER trigger ttbformulario_pergunta_b01d for tbformulario_pergunta
active before delete position 0
AS
DECLARE VARIABLE HISTORICO VARCHAR(500);
BEGIN
    HISTORICO = '';

    IF ( OLD.ID > 0) THEN
    BEGIN
        HISTORICO = HISTORICO||' PERGUNTA EXCLUIDA: '||OLD.ID||', ORDEM: '||OLD.ORDEM||', TIPO: '||OLD.FORMULARIO_RESPOSTA_TIPO_ID||' '||HISTORICO;
    END

    IF (HISTORICO <> '') THEN
    BEGIN
        EXECUTE PROCEDURE SPI_HISTORICO('TBFORMULARIO',OLD.FORMULARIO_ID, HISTORICO);
    END
END;






