SET TERM ^ ;

CREATE OR ALTER TRIGGER TTBPDV_CONFERENCIA_ITEM_B0U4 FOR TBPDV_CONFERENCIA_ITEM
ACTIVE BEFORE UPDATE POSITION 0
AS
DECLARE VARIABLE DEVOLUCAO_ITEM_ID INTEGER;
BEGIN
    IF(OLD.SITUACAO <> NEW.SITUACAO) THEN
    BEGIN
        IF(NEW.SITUACAO = 4) THEN
        BEGIN

            UPDATE TBPDV_CONFERENCIA_ITEM_SALDO
               SET QUANTIDADE = 0
               WHERE PDV_CONFERENCIA_ITEM_ID = NEW.ID;

        END

        IF(NEW.SITUACAO = 0) THEN
        BEGIN
            /*:DEVOLUCAO_ITEM_ID = COALESCE((SELECT FIRST 1 DEV.ID FROM TBPDV_CONFERENCIA_TROCA_ITEM DEV
                                    WHERE DEV.PRE_PEDIDO_ITEM_ORIGEM = NEW.ID AND DEV.PRE_PEDIDO_ID = NEW.PDV_CONFERENCIA_ID),0);

            IF(:DEVOLUCAO_ITEM_ID > 0) THEN
            BEGIN*/
                UPDATE TBPDV_CONFERENCIA_ITEM_SALDO A
                    SET A.QUANTIDADE = NEW.QUANTIDADE
                    WHERE A.PDV_CONFERENCIA_ITEM_ID = NEW.ID;
            --END
        END
    END
END^

^ SET TERM ; ^