Мне нужно написать вложенную конвейерную функцию в pl / sql, которую я пытался реализовать следующим образом.
create package body XYZ AS
function main_xyz return data_type_1 pipelined is
begin
--code
pipe row(sub_func);
end;
function sub_func return data_type_1 pipelined is
begin
--code
pipe row(sub_func_1);
end;
function sub_func_1 return data_type_1 pipelined is
begin
--code
pipe row(main_abc);
end;
end;
create package body abc AS
function main_abc return data_type_2 pipelined is
var data_type_2;
begin
--code
return var;
end;
end;
Однако я получаю следующую ошибку
[Ошибка] PLS-00653: PLS-00653: агрегатные / табличные функции не разрешены в области PL / SQL.
Где я ошибаюсь? Это синтаксис или логика?