SET TERM ^ ;

CREATE trigger ttbcliente_produto_b01u for tbcliente_produto
active before update position 0
AS
DECLARE VARIABLE HISTORICO VARCHAR(500);
BEGIN

    HISTORICO = '';

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

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

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

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

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

    IF (HISTORICO <> '') THEN
    BEGIN
        HISTORICO = ' PRODUTO: '||LPAD(NEW.ID,4,'0')||' ALTERADO'||HISTORICO;
        EXECUTE PROCEDURE SPI_HISTORICO('TBEMPRESA', NEW.CLIENTE_ID, HISTORICO);
    END

END
^

SET TERM ; ^

