CREATE trigger tbrequisicao_oc_b01i for tbrequisicao_oc
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('TBREQUISICAO_OC',new.ID, HISTORICO);
    END
end;


CREATE trigger tbrequisicao_oc_b02u for tbrequisicao_oc
active before update position 2
AS
DECLARE VARIABLE HISTORICO VARCHAR(500);
BEGIN

    HISTORICO = '';

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

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

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

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

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

   IF (OLD.EMPRESA_ID <> NEW.EMPRESA_ID) THEN
       BEGIN
       HISTORICO = HISTORICO||' EMP.: '||OLD.EMPRESA_ID||'->'||NEW.EMPRESA_ID;
       END
   IF (OLD.DATA <> NEW.DATA) THEN
       BEGIN
       HISTORICO = HISTORICO||' DAT.: '||OLD.DATA||'->'||NEW.DATA;
       END

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

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

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

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


CREATE trigger tbrequisicao_oc_b01d for tbrequisicao_oc
active before delete position 0
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('TBREQUISICAO_OC',old.id, HISTORICO);
    END
end;




