A pesar de que lo mejor sería verificar si se va a dar la excepción y actuar en consecuencia, existe una posibilidad:
WHEN XXX DO
Código SQL
[-]create procedure insertar_aglo (VALOR varchar(3))
as
begin
for select familia from art_familias
where(empresa=1) into :familia do
begin
insert into propaga(familia)
values(:familia) ;
when SQLCODE -803 do exit ;
end
end
Código SQL
[-]create procedure trunca100 (CADENA1 varchar(200))
returns (CADENA2 varchar(100))
as
begin
cadena2 ='INICIALIZA';
cadena2 = cadena1;
when any do suspend;
end