пытаюсь вызвать функцию, которая на входе ждет параметр с типом dbms_sql.varchar2_table

Есть функция, например, тестовая:

    create or replace function test1(p_names dbms_sql.varchar2_table,
                          p_values dbms_sql.varchar2_table,
                          p_sel_levels dbms_sql.varchar2_table,
                          p_sel_ids dbms_sql.varchar2_table) return sys_refcursor AS
   VAR_REF SYS_REFCURSOR;
  begin
 OPEN VAR_REF FOR
        SELECT 1
        FROM DUAL;

    RETURN VAR_REF;
   
  end;

Далее, пытаюсь таким образом вызвать данную функцию:

declare
  p_names      dbms_sql.varchar2_table;
  p_values     dbms_sql.varchar2_table;
  p_sel_levels dbms_sql.varchar2_table;
  p_sel_ids    dbms_sql.varchar2_table;
  l_my_cur sys_refcursor;
begin
  p_names(1) := 'period_type';
  p_names(2):='start_date';
  p_names(3):='end_date';

  p_values(1) := 'MONTH';
  p_values(2):='2020.08.01 00:00:00';
  p_values(3):='2021.08.31 23:59:59';

  p_sel_levels(1) := 'TOTAL';
  p_sel_levels(2):='DCHECK';
   p_sel_levels(3):=Null;

  p_sel_ids(1) := 'Итого';
  p_sel_ids(2):=0;
  p_sel_ids(3):=Null;
  
open l_my_cur for select  test1(p_names,  p_values,p_sel_levels,p_sel_ids) from dual;
    dbms_sql.return_result(rfc);
END;

И получаю ошибку: введите сюда описание изображения

Помогите, пожалуйста, найти ошибку


Ответы (0 шт):