powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Oracle APEX [игнор отключен] [закрыт для гостей] / Долгая загрузка отчета в апексе
16 сообщений из 16, страница 1 из 1
Долгая загрузка отчета в апексе
    #39019616
mansion
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день.

Писал большой отчет на заказ в pl\sql девелопере. Отрабатывает ~до 3 секунд максимум и использует 1 параметр в 4 местах.
Но при выводе данного отчета с параметром в апексе через простой classic report и айтемом date_picker отчет грузит 15-20 сек.
Прописывал дату жестко в репорте, работал быстро как в девелопере, подставил параметр, опять грузит долго.
Как решить проблему?
...
Рейтинг: 0 / 0
Долгая загрузка отчета в апексе
    #39019648
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mansion,
такая тема была - поищи
...
Рейтинг: 0 / 0
Долгая загрузка отчета в апексе
    #39019738
blkangel
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
mansionДобрый день.

Писал большой отчет на заказ в pl\sql девелопере. Отрабатывает ~до 3 секунд максимум и использует 1 параметр в 4 местах.
Но при выводе данного отчета с параметром в апексе через простой classic report и айтемом date_picker отчет грузит 15-20 сек.
Прописывал дату жестко в репорте, работал быстро как в девелопере, подставил параметр, опять грузит долго.
Как решить проблему?

Количество выводимых строк?
...
Рейтинг: 0 / 0
Долгая загрузка отчета в апексе
    #39020040
mansion
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
blkangel,

примерно 1.5к. Стояли все выводимые сразу, поменял на 30 на страницу, грузиться стало быстро.
Но в девелопере те же 1.5к грузятся за пару секунд. Значит апекс тратит время на построение таблицы? или как? мне необходимо видеть все строки сразу.
...
Рейтинг: 0 / 0
Долгая загрузка отчета в апексе
    #39020058
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mansionдевелопере он там не все грузит, а видимые
...
Рейтинг: 0 / 0
Долгая загрузка отчета в апексе
    #39020062
irbis_al
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mansionblkangel,

примерно 1.5к. Стояли все выводимые сразу, поменял на 30 на страницу, грузиться стало быстро.
Но в девелопере те же 1.5к грузятся за пару секунд. Значит апекс тратит время на построение таблицы? или как? мне необходимо видеть все строки сразу.

Тут может быть просто браузер долго строит.
В линуксе(аналогию в винде не знаю) можно было бы сделать wget ваш урл.(предварительно страницу сделав public,чтоб без авторизации ,иначе не пропустит)
И посмотреть как долго он отрабатывает.
И если быстро значит апекс отклик делает быстро...а косячит прорисовка.
...
Рейтинг: 0 / 0
Долгая загрузка отчета в апексе
    #39020101
mansion
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Petro123,

Я не такой глупый как вы могли подумать, вот скрин времени загрузки всех строк в pl\sql
...
Рейтинг: 0 / 0
Долгая загрузка отчета в апексе
    #39020105
mansion
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
mansionPetro123,


и в апексе при прописывании даты в сам sql код репорта, работает так же ~2сек. А при подставлении вместо даты айтема проблема с долгой загрузкой снова появляется. Айтем и сам репорт абсолютно простые, без наворотов и плагинов
...
Рейтинг: 0 / 0
Долгая загрузка отчета в апексе
    #39020181
blkangel
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
mansionmansionPetro123,


и в апексе при прописывании даты в сам sql код репорта, работает так же ~2сек. А при подставлении вместо даты айтема проблема с долгой загрузкой снова появляется. Айтем и сам репорт абсолютно простые, без наворотов и плагинов

Тут два момента.
1. Это браузер долго строит, поэтом ограничение строк явно сказывается.
2. Собственно про сами даты. Есть два способа подстановки биндов в запрос. Стандартный :PXX_ITEM, и при помощи использовании функции v('PXX_ITEM').
a) Что происходит при первом методе (:PXX_ITEM), апекс берет запрос, выделяет все бинды в данном запросе и выполняет запрос вида для каждого из них
Код: plsql
1.
select v('PXX_ITEM') into value_bind from dual;


А потом тупо делает замену такого бинда в запросе.
б) При использовании второго метода, функция ни чем не подменяется, а тупо выполняется на лету вместе с запросом.
В зависимости от ситуации, либо первый либо второй случай лучше подходит, например если бинд в условии, а запрос возвращает много строк, то второй метод лучше не брать.

Мне кажется в твой ситуации выход напрашивается такой, используй функцию который возвращает запрос, уже с жестко задонной датой.

declare
v_date_of date:=to_date(:PXX_DATE_ITEM,'DD.MM.YYYY');
Begin
return 'select * from table where date_of='||v_date_of;
End;
...
Рейтинг: 0 / 0
Долгая загрузка отчета в апексе
    #39020187
Gustly
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А еще можно посмотреть планы и закрепить хинтами.
...
Рейтинг: 0 / 0
Долгая загрузка отчета в апексе
    #39020291
Gustly
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
blkangel,

Где можно почитать про подмену бинденных переменных?
...
Рейтинг: 0 / 0
Долгая загрузка отчета в апексе
    #39020365
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mansionmansionPetro123,

и в апексе при прописывании даты в сам sql код репорта, работает так же ~2сек. А при подставлении вместо даты айтема проблема с долгой загрузкой снова появляется. Айтем и сам репорт абсолютно простые, без наворотов и плагинов
я же тебе писал - поищи такую тему.
...
Рейтинг: 0 / 0
Долгая загрузка отчета в апексе
    #39020381
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mansionи в апексе при прописывании даты в сам sql код репорта, работает так же ~2сек. А при подставлении вместо даты айтема проблема с долгой загрузкой снова появляется. Айтем и сам репорт абсолютно простые, без наворотов и плагинов
у меня 1000 записей из
APEX_040200.WWV_FLOW_ACTIVITY_LOG
грузится 1сек.
Приведи свои тормоза на данном примере. Чтобы я смог проверить.
Удачи!
...
Рейтинг: 0 / 0
Долгая загрузка отчета в апексе
    #39020549
Casufi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
irbis_alТут может быть просто браузер долго строит.
Chrome Developer Tools, Firefox Developer Tools даст тебе раскладку по этапам обработки запроса (DNS, Обработака сервером, постоение DOM)
...
Рейтинг: 0 / 0
Долгая загрузка отчета в апексе
    #39020648
blkangel
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Gustlyblkangel,

Где можно почитать про подмену бинденных переменных?

Это я раскопал при реализации плагинов. В части парсинга источника данных. Сейчас уже не найду.
...
Рейтинг: 0 / 0
Долгая загрузка отчета в апексе
    #39020929
SvDev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mansion,

Без планов запросов тема ни о чем. Смотрите планы, например, через dbms_xplan.display_cursor и v$sql, либо сделайте трассировку (добавить в url &p_trace=YES), оттуда дергайте планы, сравнивайте, оптимизируйте.

+ пара советов:

- Не используйте функцию v в запросах
- Используйте явное преобразование to_date, все bind variables в апексе строчного типа.
- НЕ НАДО в pl/sql developer менять bind переменную на статическое значение, это 2 разных запроса, они не должны работать одинаково, в pl SQL developer-е тоже сеть bind переменные

Можно, конечно, плюнуть на планы и использовать вместо bind переменных подстановки ( '&ITEM_NAME.' ), но этот подход дурной, плохо для сервера, лучше разберитесь с планами
...
Рейтинг: 0 / 0
16 сообщений из 16, страница 1 из 1
Форумы / Oracle APEX [игнор отключен] [закрыт для гостей] / Долгая загрузка отчета в апексе
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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