SET TERM ^ ;

CREATE OR ALTER trigger ttbpdv_caixa_b04iu for tbpdv_caixa
active before insert or update position 0
AS
DECLARE VARIABLE PDV_CAIXA_ID INTEGER;
BEGIN
    FOR
        SELECT
            C.CAIXABANCO_ID
        FROM TBPDV T
        INNER JOIN TBPDV_CAIXA C ON C.PDV_ID = T.ID
        WHERE C.PDV_ID = NEW.PDV_ID
    INTO
        :PDV_CAIXA_ID
    DO
    BEGIN
        IF(:PDV_CAIXA_ID = NEW.CAIXABANCO_ID) THEN
        BEGIN
            EXCEPTION "..." 'Caixa/Banco já cadastrado para esse PDV';
        END
    END 
END
^

SET TERM ; ^

