SET TERM ^ ;

CREATE trigger ttbparametros_insumo_item_b01i for tbparametros_insumo_item
active before insert position 0
AS
declare variable HISTORICO VARCHAR(500);
begin
    HISTORICO = '';

    IF(NEW.ID > 0) THEN
    BEGIN
        HISTORICO = 'ITEM INCLUÍDO: '||FN_LPAD(NEW.ID, 4, '0');
    END

    IF(HISTORICO <> '') THEN
    BEGIN
        EXECUTE PROCEDURE SPI_HISTORICO('TBPARAMETROS_INSUMO', NEW.PARAMETROS_INSUMO_ID, HISTORICO);
    END
end
^

SET TERM ; ^

SET TERM ^ ;

CREATE trigger ttbparametros_insumo_item_b01u for tbparametros_insumo_item
active before update position 0
AS
DECLARE VARIABLE HISTORICO VARCHAR(500);
BEGIN
    HISTORICO = '';

    IF(NEW.DESCRICAO IS DISTINCT FROM OLD.DESCRICAO) THEN
    BEGIN
        HISTORICO = 'DESC: '||OLD.DESCRICAO||' -> '||NEW.DESCRICAO||' ALTERADA DO ITEM '||NEW.ID;
    END

    IF(NEW.TIPO_CAMPO IS DISTINCT FROM OLD.TIPO_CAMPO) THEN
    BEGIN
        HISTORICO = 'TIPO DO CAMPO: '||OLD.TIPO_CAMPO||' -> '||NEW.TIPO_CAMPO||' ALTERADA DO ITEM '||NEW.ID;
    END

    IF(HISTORICO <> '') THEN
    BEGIN
        EXECUTE PROCEDURE SPI_HISTORICO('TBPARAMETROS_INSUMO', NEW.PARAMETROS_INSUMO_ID, HISTORICO);
    END 
END
^

SET TERM ; ^


SET TERM ^ ;

CREATE OR ALTER trigger ttbparametros_insumo_item_b01d for tbparametros_insumo_item
active before delete position 0
AS
declare variable HISTORICO VARCHAR(500);
begin
    HISTORICO = '';

    IF(OLD.ID > 0) THEN
    BEGIN
        HISTORICO = 'ITEM EXCLUÍDO: '||FN_LPAD(OLD.ID, 4, '0');
    END

    IF(HISTORICO <> '') THEN
    BEGIN
        EXECUTE PROCEDURE SPI_HISTORICO('TBPARAMETROS_INSUMO', OLD.PARAMETROS_INSUMO_ID, HISTORICO);
    END
end
^

SET TERM ; ^

