Я забыл упомянуть, что функции являются последовательными.Таким образом, если промежуточная функция не выполняется, нет смысла выполнять другие.Я думал о том, чтобы поместить вложенные if, и каждый возвращает прогрессивное число, которое помогает мне понять, если что пошло не так.Как вы думаете?
DECLARE
V_OUTPUT integer;
BEGIN
V_OUTPUT := function1(data_rif);
IF V_OUTPUT <> 0 THEN
return 1
ELSE
V_OUTPUT := function2(data_rif);
IF V_OUTPUT <> 0 THEN
RETURN 2
ELSE
V_OUTPUT := function3(data_rif);
IF V_OUTPUT <> 0 THEN
RETURN 3
ELSE
V_OUTPUT := function4(data_rif);
IF V_OUTPUT <> 0 THEN
RETURN 4
ELSE
return 0;
END IF;
END IF;
END IF;
END IF;
END;