ALTER TABLE TBCAIXABANCO_LANCAMENTO_REG ADD ADQUIRENTE_ID INTEGER DEFAULT 0;
ALTER TABLE TBCAIXABANCO_LANCAMENTO_REG ADD MERCHANT_ID   VARCHAR(50) DEFAULT '';

ALTER TABLE TBPDV_ADQUIRENTE ADD OPERACAO_BAIXA INTEGER;
ALTER TABLE TBPDV_ADQUIRENTE ADD OPERACAO_OUTRAS_DESPESAS INTEGER;

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

    HISTORICO = '';

    IF ( OLD.MERCHANTID <> NEW.MERCHANTID) THEN
    BEGIN
        HISTORICO = HISTORICO||' ID MERCH.'|| OLD.MERCHANTID||'->'||NEW.MERCHANTID;
    END

    IF ( OLD.CHAVE_REQUISICAO <> NEW.CHAVE_REQUISICAO) THEN
    BEGIN
        HISTORICO = HISTORICO||' CHAVE DE REQ.'|| OLD.CHAVE_REQUISICAO||'->'||NEW.CHAVE_REQUISICAO;
    END

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

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

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

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

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

    execute procedure SPI_INTEGRACAO('TBPDV_ADQUIRENTE',new.ID,1);
end;