CREATE OR ALTER TRIGGER TTBFRETE_TRANSPORTADORA_B02I FOR TBFRETE_TRANSPORTADORA
ACTIVE BEFORE INSERT POSITION 0
AS
DECLARE VARIABLE HISTORICO VARCHAR(500);
BEGIN

    HISTORICO = '';

    IF (NEW.ID > 0) THEN
    BEGIN
        HISTORICO = HISTORICO||'Transportadora incluida';
    END

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

CREATE OR ALTER TRIGGER TTBFRETE_TRANSPORTADORA_B01U FOR TBFRETE_TRANSPORTADORA
ACTIVE BEFORE UPDATE POSITION 0
AS
DECLARE VARIABLE HISTORICO VARCHAR(500);
BEGIN

    HISTORICO = '';

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

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

    IF (OLD.MODAL <> NEW.MODAL) THEN
    BEGIN
        IF(cast(NEW.MODAL as varchar(10)) = '1') THEN
        BEGIN
              HISTORICO = HISTORICO||', Modalidade Rodoviaria ';
        END

        IF(cast(NEW.MODAL as varchar(10)) = '2') THEN
        BEGIN
              HISTORICO = HISTORICO||', Modalidade Aerea ';
        END

        IF(cast(NEW.MODAL as varchar(10)) = '3') THEN
        BEGIN
              HISTORICO = HISTORICO||', Modalidade Maritima ';
        END

        IF(cast(NEW.MODAL as varchar(10)) = '4') THEN
        BEGIN
              HISTORICO = HISTORICO||', Modalidade Ferroviaria ';
        END
    END

    IF (OLD.CLASSIFICACAO <> NEW.CLASSIFICACAO) THEN
    BEGIN
        IF( NEW.CLASSIFICACAO = 'RODO/ESPECIAL') THEN
        BEGIN
              HISTORICO = HISTORICO||', Class. Rodoviaria/Especial ';
        END

        IF( NEW.CLASSIFICACAO = 'RODO/NORMAL') THEN
        BEGIN
              HISTORICO = HISTORICO||', Class. Rodoviaria/Normal ';
        END

        IF( NEW.CLASSIFICACAO = 'AÉREO') THEN
        BEGIN
              HISTORICO = HISTORICO||', Class. Aerea ';
        END

        IF( NEW.CLASSIFICACAO = 'MARITIMO') THEN
        BEGIN
              HISTORICO = HISTORICO||', Class. Maritima ';
        END

        IF( NEW.CLASSIFICACAO = 'FERROVIARIO') THEN
        BEGIN
              HISTORICO = HISTORICO||', Class. Ferroviaria ';
        END
    END

    IF (OLD.STATUS <> NEW.STATUS) THEN
    BEGIN
        IF(NEW.STATUS = '1') THEN
        BEGIN
              HISTORICO = HISTORICO||', Status Ativo ';
        END

        IF(NEW.STATUS = '0') THEN
        BEGIN
              HISTORICO = HISTORICO||', Status Inativo ';
        END
    END

    if (OLD.TRANSPORTADORA_ID <> NEW.TRANSPORTADORA_ID ) then
    BEGIN
        HISTORICO = HISTORICO||', Cod. Transportadora'||OLD.TRANSPORTADORA_ID||' ->'||NEW.TRANSPORTADORA_ID;
    END

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

CREATE OR ALTER TRIGGER TTBFRETE_TRANSPORTADORA_B01D FOR TBFRETE_TRANSPORTADORA
ACTIVE BEFORE DELETE POSITION 0
AS
DECLARE VARIABLE HISTORICO VARCHAR(500);
BEGIN

    HISTORICO = '';

    IF (OLD.ID > 0) THEN
    BEGIN
        HISTORICO = HISTORICO||'Transportadora excluida';
    END

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

CREATE OR ALTER TRIGGER TTBFRETE_TRANSPORTADOR_PER_B03I FOR TBFRETE_TRANSPORTADORA_PERIODO
ACTIVE BEFORE INSERT POSITION 0
AS
DECLARE VARIABLE HISTORICO VARCHAR(500);
BEGIN

    HISTORICO = '';

    IF (NEW.ID > 0) THEN
    BEGIN
        HISTORICO = HISTORICO||'Periodo ID:'||lpad(NEW.ID,5,'0')||' incluido';
    END

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

CREATE OR ALTER TRIGGER TTBFRETE_TRANSPORTADOR_PER_B02U FOR TBFRETE_TRANSPORTADORA_PERIODO
ACTIVE BEFORE UPDATE POSITION 0
AS
DECLARE VARIABLE HISTORICO VARCHAR(500);
BEGIN

    HISTORICO = '';

    IF (OLD.DATA_1 <> NEW.DATA_1) THEN
    BEGIN
        HISTORICO = HISTORICO||'Periodo ID'||LPAD(OLD.ID,5,'0')||', Data Inicial: '||FORMATDATE(OLD.DATA_1)||' ->'||FORMATDATE(OLD.DATA_1);
    END

    IF (OLD.DATA_2 <> NEW.DATA_2) THEN
    BEGIN
        HISTORICO = HISTORICO||'Periodo ID'||LPAD(OLD.ID,5,'0')||', Data Final: '||FORMATDATE(OLD.DATA_2)||' ->'||FORMATDATE(OLD.DATA_2);
    END

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

CREATE OR ALTER TRIGGER TTBFRETE_TRANSPORTADOR_PER_B01D FOR TBFRETE_TRANSPORTADORA_PERIODO
ACTIVE BEFORE DELETE POSITION 0
AS
DECLARE VARIABLE HISTORICO VARCHAR(500);
BEGIN

    HISTORICO = '';

    IF (OLD.ID > 0) THEN
    BEGIN
         HISTORICO = HISTORICO||'Periodo ID:'||lpad(old.ID,5,'0')||' excluido';
    END

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

CREATE TRIGGER TTBFRETE_CIDADE_AGRUP_B02I FOR TBFRETE_CIDADE_AGRUPAMENTO
ACTIVE BEFORE INSERT POSITION 0
AS
DECLARE VARIABLE HISTORICO VARCHAR(500);
BEGIN

    HISTORICO = '';

    IF (NEW.ID > 0) THEN
    BEGIN
        HISTORICO = HISTORICO||'Agrup. ID: '||LPAD(NEW.ID,6,'0')||' incluida';
    END

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

CREATE OR ALTER TRIGGER TTBFRETE_CIDADE_AGRUP_B01U FOR TBFRETE_CIDADE_AGRUPAMENTO
ACTIVE BEFORE UPDATE POSITION 0
AS
DECLARE VARIABLE HISTORICO VARCHAR(500);
BEGIN

    HISTORICO = '';

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

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

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

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

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

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

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

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

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

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

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

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

CREATE OR ALTER TRIGGER TTBFRETE_CIDADE_AGRUP_B01D FOR TBFRETE_CIDADE_AGRUPAMENTO
ACTIVE BEFORE DELETE POSITION 0
AS
DECLARE VARIABLE HISTORICO VARCHAR(500);
BEGIN

    HISTORICO = '';

    IF (OLD.ID > 0) THEN
    BEGIN
         HISTORICO = HISTORICO||'Agrup. ID:'||lpad(old.ID,6,'0')||' excluido';
    END

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

CREATE OR ALTER TRIGGER TTBFRETE_CIDADE_B01U FOR TBFRETE_CIDADE
ACTIVE BEFORE UPDATE POSITION 0
AS
DECLARE VARIABLE HISTORICO VARCHAR(500);
BEGIN

    HISTORICO = '';

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

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

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

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

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

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

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

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

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

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

CREATE OR ALTER TRIGGER TTBFRETE_CIDADE_B01D FOR TBFRETE_CIDADE
ACTIVE BEFORE DELETE POSITION 0
AS
DECLARE VARIABLE HISTORICO VARCHAR(500);
BEGIN

    HISTORICO = '';

    IF (OLD.FRETE_CIDADE_AGRUPAMENTO_ID > 0) THEN
    BEGIN
        HISTORICO = HISTORICO||'Frete Cidade ID: '||LPAD(OLD.CIDADE_ID,6,'0')||' excluida';
    END

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

CREATE OR ALTER TRIGGER TTBFRETE_COMPOSICAO_B02I FOR TBFRETE_COMPOSICAO
ACTIVE BEFORE INSERT POSITION 0
AS
DECLARE VARIABLE HISTORICO VARCHAR(500);
BEGIN

    HISTORICO = '';

    IF (NEW.ID > 0) THEN
    BEGIN
        HISTORICO = HISTORICO||'Composicao ID: '||lpad(NEW.ID,5,'0')||' incluida';
    END

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

CREATE OR ALTER TRIGGER TTBFRETE_COMPOSICAO_B01U FOR TBFRETE_COMPOSICAO
ACTIVE BEFORE UPDATE POSITION 0
AS
DECLARE VARIABLE HISTORICO VARCHAR(500);
BEGIN

    HISTORICO = '';

    IF (OLD.DESCRICAO <> NEW.DESCRICAO) THEN
    BEGIN
        HISTORICO = HISTORICO||'Composicao ID'||LPAD(OLD.ID,6,'0')||', Descricao: '||OLD.DESCRICAO||' -> '||NEW.DESCRICAO;
    END

    IF (OLD.VARIAVEL <> NEW.VARIAVEL) THEN
    BEGIN
        HISTORICO = HISTORICO||'Composicao ID'||LPAD(OLD.ID,6,'0')||', Variavel: '||OLD.VARIAVEL||' -> '||NEW.VARIAVEL;
    END
    
    IF (OLD.CAMPO_XML <> NEW.CAMPO_XML) THEN
    BEGIN
        HISTORICO = HISTORICO||'Composicao ID'||LPAD(OLD.ID,6,'0')||', Campo XML: '||OLD.CAMPO_XML||' -> '||NEW.CAMPO_XML;
    END

    IF (OLD.OBSERVACAO <> NEW.OBSERVACAO) THEN
    BEGIN
        HISTORICO = HISTORICO||'Composicao ID'||LPAD(OLD.ID,6,'0')||', Observacao alterada.';
    END

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

CREATE OR ALTER TRIGGER TTBFRETE_COMPOSICAO_B01D FOR TBFRETE_COMPOSICAO
ACTIVE BEFORE DELETE POSITION 0
AS
DECLARE VARIABLE HISTORICO VARCHAR(500);
BEGIN

    HISTORICO = '';

    IF (OLD.ID > 0) THEN
    BEGIN
        HISTORICO = HISTORICO||'Composicao ID: '||LPAD(OLD.ID,6,'0')||' excluida';
    END

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

CREATE OR ALTER TRIGGER TTBFRETE_TRANSPORT_VAR_B02I FOR TBFRETE_TRANSPORTADORA_VARIAVEL
ACTIVE BEFORE INSERT POSITION 0
AS
DECLARE VARIABLE HISTORICO VARCHAR(500);
BEGIN

    HISTORICO = '';

    IF (NEW.ID > 0) THEN
    BEGIN
        HISTORICO = HISTORICO||'Variavel ID: '||lpad(NEW.ID,6,'0')||' incluida';
    END

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

CREATE OR ALTER TRIGGER TTBFRETE_TRANSPORT_VAR_B01U FOR TBFRETE_TRANSPORTADORA_VARIAVEL
ACTIVE BEFORE UPDATE POSITION 0
AS
DECLARE VARIABLE HISTORICO VARCHAR(500);
BEGIN

    HISTORICO = '';

    IF (OLD.DESCRICAO <> NEW.DESCRICAO) THEN
    BEGIN
        HISTORICO = HISTORICO||' Variavel ID: '||lpad(NEW.ID,6,'0')||', Descricao: '||OLD.DESCRICAO||' -> '||NEW.DESCRICAO;
    END

    IF (OLD.VARIAVEL <> NEW.VARIAVEL) THEN
    BEGIN
        HISTORICO = HISTORICO||' Variavel ID: '||lpad(NEW.ID,6,'0')||', Campo Variavel: '||OLD.VARIAVEL||' -> '||NEW.VARIAVEL;
    END
    
    IF (OLD.VALOR <> NEW.VALOR) THEN
    BEGIN
        HISTORICO = HISTORICO||' Variavel ID: '||lpad(NEW.ID,6,'0')||', Valor Alterado.';
    END

    IF (OLD.OBSERVACAO <> NEW.OBSERVACAO) THEN
    BEGIN
        HISTORICO = HISTORICO||' Variavel ID: '||lpad(NEW.ID,6,'0')||', Observacao alterada.';
    END

    IF (OLD.RESULTADO <> NEW.RESULTADO) THEN
    BEGIN
        HISTORICO = HISTORICO||' Variavel ID: '||lpad(NEW.ID,6,'0')||', Resultado: '||OLD.RESULTADO||' -> '||NEW.RESULTADO;
    END

    IF (OLD.SEQUENCIA <> NEW.SEQUENCIA) THEN
    BEGIN
        HISTORICO = HISTORICO||' Variavel ID: '||lpad(NEW.ID,6,'0')||', Seq.: '||OLD.SEQUENCIA||' -> '||NEW.SEQUENCIA;
    END

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

CREATE OR ALTER TRIGGER TTBFRETE_PESO_TARIFA_B02I FOR TBFRETE_PESO_TARIFA
ACTIVE BEFORE INSERT POSITION 0
AS
DECLARE VARIABLE HISTORICO VARCHAR(500);
BEGIN

    HISTORICO = '';

    IF (NEW.ID > 0) THEN
    BEGIN
        HISTORICO = HISTORICO||'Tarifa(Peso) ID: '||lpad(NEW.ID,6,'0')||' incluida';
    END

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


CREATE OR ALTER TRIGGER TTBFRETE_PESO_TARIFA_B01U FOR TBFRETE_PESO_TARIFA
ACTIVE BEFORE UPDATE POSITION 0
AS
DECLARE VARIABLE HISTORICO VARCHAR(500);
BEGIN

    HISTORICO = '';

    IF (OLD.TARIFA <> NEW.TARIFA) THEN
    BEGIN
        HISTORICO = HISTORICO||'Tarifa(Peso) ID: '||lpad(NEW.ID,6,'0')||', Campo Tarifa: '||OLD.TARIFA||' -> '||NEW.TARIFA;
    END

    IF (OLD.FAIXA_1 <> NEW.FAIXA_1) THEN
    BEGIN
        HISTORICO = HISTORICO||'Tarifa(Peso) ID: '||lpad(NEW.ID,6,'0')||', Faixa 1: '||OLD.FAIXA_1||' -> '||NEW.FAIXA_1;
    END
    
    IF (OLD.FAIXA_2 <> NEW.FAIXA_2) THEN
    BEGIN
       HISTORICO = HISTORICO||'Tarifa(Peso) ID: '||lpad(NEW.ID,6,'0')||', Faixa 2: '||OLD.FAIXA_2||' -> '||NEW.FAIXA_2;
    END

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

CREATE OR ALTER TRIGGER TTBFRETE_PESO_TARIFA_B01D FOR TBFRETE_PESO_TARIFA
ACTIVE BEFORE DELETE POSITION 0
AS
DECLARE VARIABLE HISTORICO VARCHAR(500);
BEGIN

    HISTORICO = '';

    IF (OLD.ID > 0) THEN
    BEGIN
        HISTORICO = HISTORICO||'Tarifa(Peso) ID: '||LPAD(OLD.ID,6,'0')||' excluida';
    END

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



















