SET TERM ^ ;

CREATE trigger ttbunidademedida_b03iu for tbunidademedida
active before insert or update position 3
AS
DECLARE VARIABLE UM_EXISTENTE INTEGER;
BEGIN
    :UM_EXISTENTE = COALESCE((SELECT FIRST 1 T.ID FROM TBUNIDADEMEDIDA T WHERE T.SIGLA = NEW.SIGLA AND T.ID <> NEW.ID), 0);
    IF(COALESCE(:UM_EXISTENTE, 0) > 0) THEN
    BEGIN
        EXCEPTION "..."'UNIDADE DE MEDIDA '||TRIM(NEW.SIGLA)||' JA CADASTRADA. ';
    END

END
^

SET TERM ; ^

