powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Oracle APEX [игнор отключен] [закрыт для гостей] / Apex и ref cursor
17 сообщений из 17, страница 1 из 1
Apex и ref cursor
    #35382148
Apex и ref cursor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Apex может формировать таблицы из ref cursor'а ?
...
Рейтинг: 0 / 0
Apex и ref cursor
    #35383421
Pir
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
нет. какая в этом необходимость ?
не получается обойтись одним запросом и вы пишите процедуру, в которой обрабатываете данные во временных таблицах, и возвращаете рефкурсор?

тогда просто создавайте pl/sql процесс уровня Page Rendering и вызывайте в нем процедуру, которая заполняет временную таблицу. и уже по ней стройте репорт или что нужно..
...
Рейтинг: 0 / 0
Apex и ref cursor
    #35383473
Pir
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
но если очень нужно - рисуйте таблицы самостоятельно
для примера:
Create Region -> PL/SQL Dynamic Content
Код: plaintext
1.
2.
3.
4.
5.
htp.p ('<table>');
for i in (select * from table) loop
 htp.p ('<tr><td>' || i.column_1 || '</td><td>' || i.column_2 || '</td></tr>');
end loop;
htp.p ('</table>');
...
Рейтинг: 0 / 0
Apex и ref cursor
    #35384056
Apex и ref cursor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Я пока присматриваюсь к Apex'у... Подойдет он мне или нет ...
У меня куча запросов формируется в рантайме функциями и их результаты нужно выводить.
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
Apex и ref cursor
    #38145512
alex-ls
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Такую возможность не добавили? Или хотя бы по коллекции? Временная таблица - это фи. Чай оракл, а не MS SQL, правильно использовать реф курсор...
...
Рейтинг: 0 / 0
Apex и ref cursor
    #38145533
rockclimber
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
alex-lsТакую возможность не добавили? Или хотя бы по коллекции? Временная таблица - это фи. Чай оракл, а не MS SQL, правильно использовать реф курсор... Голосуй или проиграешь.
Нет пока, судя по всему.
...
Рейтинг: 0 / 0
Apex и ref cursor
    #38145777
SvDev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
pipelined.

P.S. rockclimber, голосуй - не голосуй, как не позволяет SQL генерировать запросы с переменным количеством столбцов, так и апекс с refcursor дружить скорее всего не будет. Есть вещи, с которыми надо просто смириться...
...
Рейтинг: 0 / 0
Apex и ref cursor
    #38146282
Фотография suPPLer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
alex-lsТакую возможность не добавили?

STFF sys_refcursor .

alex-lsИли хотя бы по коллекции?
Если коллекция -- это SQL-тип TABLE OF, то ничего не мешает использовать соответствующий запрос. Если имеется в виду коллекция APEX , то выборка из представления APEX_COLLECTIONS ничуть не сложнее.
...
Рейтинг: 0 / 0
Apex и ref cursor
    #38146316
Фотография suPPLer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SvDevкак не позволяет SQL генерировать запросы с переменным количеством столбцов
Зато SQL позволяет формировать произвольный XML, который можно потом использовать в качестве источника данных во всяких ExtJS .

PL/SQL позволяет создавать произвольные запросы. А в APEX API есть удобные обёртки вокруг DBMS_SQL, которые позволяют эти запросы выполнять: APEX_PLUGIN_UTIL.get_data , APEX_PLUGIN_UTIL.get_data . И потом в PL/SQL рисовать циклом табличку. Можно считать, что APEX своеобразно дружит со слабо типизированными ссылочными курсорами. Неудобно, конечно.
...
Рейтинг: 0 / 0
Apex и ref cursor
    #38147092
alex-ls
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
кстати попробовал использовать xmltable по Вашему совету suPPLer и что-то странное вышло... колонки есть, строки есть но все пусто :) что это значит???
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
SQL> select rn, km
  2  from xmltable(
  3    '/ROWSET/ROW'
  4    passing xmltype(fut.pkg_logistics.
  5    columns
  6      rn number(10) path 'rn',
  7      st_from varchar2(100) path 'st_f
  8      rg_name varchar2(100) path 'rg_n
  9      sender_name varchar2(100) path '
 10      sender_okpo varchar2(100) path '
 11      gg_name varchar2(100) path 'gg_n
 12      km number(10) path 'km',
 13      cnt number(10) path 'cnt',
 14      st_code varchar2(100) path 'st_c
 15  /

        RN         KM
---------- ----------












        RN         KM
---------- ----------












        RN         KM
---------- ----------




25 rows selected.

SQL>


данные конечно есть, с этим все в порядке...
...
Рейтинг: 0 / 0
Apex и ref cursor
    #38147094
alex-ls
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
опечатка...
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
SQL> select rn, km
  2  from xmltable(
  3    '/ROWSET/ROW'
  4    passing xmltype(fut.pkg_logistics.apex_ref_cursor)
  5    columns
  6      rn number(10) path 'rn',
  7      st_from varchar2(100) path 'st_from',
  8      rg_name varchar2(100) path 'rg_name',
  9      sender_name varchar2(100) path 'sender_name',
 10      sender_okpo varchar2(100) path 'sender_okpo',
 11      gg_name varchar2(100) path 'gg_name',
 12      km number(10) path 'km',
 13      cnt number(10) path 'cnt',
 14      st_code varchar2(100) path 'st_code')
 15  /

        RN         KM
---------- ----------












        RN         KM
---------- ----------












        RN         KM
---------- ----------




25 rows selected.

SQL>
...
Рейтинг: 0 / 0
Apex и ref cursor
    #38147569
guest-04
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
alex-ls,

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
select kod,kod2
   from xmltable(
      '/ROWSET/ROW'
   passing xmltype(cursor(select 1 kod, 'bbb' name from dual))
columns 
kod varchar2(100) path 'KOD',
kod2 varchar2(100) path 'kod'
);
...
Рейтинг: 0 / 0
Apex и ref cursor
    #38148037
Фотография suPPLer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
alex-lsчто это значит???

Как показал примером guest-04, это значит, что XML различает регистр тегов. Потому исправьте PATH для Ваших столбцов.
...
Рейтинг: 0 / 0
Apex и ref cursor
    #38148775
alex-ls
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Всем спасибо! так и есть :)
...
Рейтинг: 0 / 0
Apex и ref cursor
    #38318248
alex-ls
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а как обработать, если курсор не возвращает строк?
получаю ошибку... ORA-06502... хотелось бы просто получить 0 строк.
...
Рейтинг: 0 / 0
Apex и ref cursor
    #38318319
alex-ls
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
пардон, это какой-то мой косяк, from dual пашет....
...
Рейтинг: 0 / 0
Apex и ref cursor
    #38318386
alex-ls
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если кому-то будет интересно...
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
select * from
XMLTABLE(
  '/ROWSET/ROW'
  PASSING XMLTYPE(CURSOR(SELECT dummy m FROM dual where 1=0))
  COLUMNS
    rn NUMBER(10) PATH 'RN'
  ) t
where exists (select * from table(XMLSEQUENCE(CURSOR(SELECT dummy m FROM dual where 1=0))))


так работает, друг помог... XMLSEQUENCE надо добавить было.
...
Рейтинг: 0 / 0
17 сообщений из 17, страница 1 из 1
Форумы / Oracle APEX [игнор отключен] [закрыт для гостей] / Apex и ref cursor
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]