powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Oracle APEX [игнор отключен] [закрыт для гостей] / Получить значение в column report (или IR) асинхронно
25 сообщений из 61, страница 1 из 3
Получить значение в column report (или IR) асинхронно
    #39432790
AlexProOra
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Отчет основан на следующем запросе:

Код: sql
1.
2.
3.
4.
5.
select
id,
function1(id) as func_result,
.....
from table


function1 выполняется долго (возвращает html), так как использует CTX_DOC.SNIPPET который на больших документах может выполняется до секунды, если в Отчете к примеру 20 записей то получаем 20 секунд ожидания, хотя сам запрос выполняется менее секунды.

В попытках решить вопрос получается два решения:
1) В поле отчета func_result изначально писать ID, после после полной загрузки страницы пробежаться по всем записям и через apex.server.process собрать результат.
Запрос будет выглядеть так:
Код: sql
1.
2.
3.
4.
5.
select
id,
id as func_result,
.....
from table



2) Использовать apex_items, значение которого заменять в javascript для каждого поля отдельно.
Запрос будет выглядеть так:
Код: sql
1.
2.
3.
4.
5.
6.
select
id,
APEX_ITEM.TEXT(1,id) as func_result,
'<script> тут магия </script>' as js, -- скрипт выполняет apex.server.process и результат пишет в apex_item.text
.....
from table



Готовых примеров найти не получилось, подскажите куда копать?
Какой вариант в данной ситуации применять?
Гугл дает только примеры реализации обратной связи на изменение значений в apex_items и последующим сохранением их в базе, а вот получение данных из базы и их асинхронное отображение найти не смог ((
В js я lol, помогите с магией....
...
Рейтинг: 0 / 0
Получить значение в column report (или IR) асинхронно
    #39432833
blkangel
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
AlexProOra,

Цель именно асинхронно загрузить или избавится от 20 секунд?

Ваш второй вариант, построчный запрос на получение результата, даст нагрузку на сервер.
Если бы пошел этим вариантом, я бы сделал это одни AJAX запросом.

Вариант №3
Код: plsql
1.
2.
3.
4.
5.
select
id,
result,
.....
from table(pipeliend function)



Вариант №4
Репорт целиком грузиться со всеми столбцами грузиться Ajax-ом. Т.е. при загрузки страницы репорт пустой, а после загрузки идет запрос на сервер и обновляется заполненный.
...
Рейтинг: 0 / 0
Получить значение в column report (или IR) асинхронно
    #39432869
AlexProOra
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
blkangel,

Хочу избавить пользователя от ожидания 20 сек.
В отчете есть множество других данных которые пользователь может изучать до "подгрузки" остальных.
Нагрузка на сервер не беспокоит, можно ее распределить (REST сервисы), главно чтобы пользователь получал данные сразу после запроса - без ожидания его полного формирования на стороне сервера....
...
Рейтинг: 0 / 0
Получить значение в column report (или IR) асинхронно
    #39432895
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AlexProOraВ отчете есть множество других данных которые пользователь может изучать до "подгрузки" остальных.
тогда уберите ту тормозящую функцию и либо грузите позже, либо в отдельную таблу либо меняете её на быструю.
...
Рейтинг: 0 / 0
Получить значение в column report (или IR) асинхронно
    #39432896
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вариант грузить позже возможен с подгрузкой при наведении мышкой (контекст всплыв. окно)
...
Рейтинг: 0 / 0
Получить значение в column report (или IR) асинхронно
    #39432897
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вариант №5 тут была таблица с развёртыванием подтаблицы на плюсик. Если она подгружает асинхронно.
...
Рейтинг: 0 / 0
Получить значение в column report (или IR) асинхронно
    #39432917
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AlexProOraunction1 выполняется долго (возвращает html), так как использует CTX_DOC.SNIPPET
посмотрел API.
Если без неё никак, то вариант№6 - триггер на изменение текста и заранее формирование VIEW текста вместо апекса.
А потом быстрый-быстрый его показ.
...
Рейтинг: 0 / 0
Получить значение в column report (или IR) асинхронно
    #39432927
AlexProOra
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123,

Для удобства понимания можно представить поисковик по названию лекарства, который выводит результаты запроса с подсвеченными поисковыми словами + имя файла и т.д.
Мы сначала покажем таблицу с 20 строками, один столбец - имя файла, второй - имя аптеки, третий - самое продаваемое лекарство, четвертый наши данные, которые подгружаются по мере выполнения ajax запросов.
Я готов RESTсервисы написать и json возвращать, но вот как все это на js реализовать в привязке к отчету APEX?
...
Рейтинг: 0 / 0
Получить значение в column report (или IR) асинхронно
    #39432946
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AlexProOraЯ готов RESTсервисы написать и json возвращать, но вот как все это на js реализовать в привязке к отчету APEX?
с учётом что вы junior в JS?
AlexProOraВ js я lol, помогите с магией....
т.к. REST сервисы тут делают не для самого апекса, а для клиентов например на JS.
...
Рейтинг: 0 / 0
Получить значение в column report (или IR) асинхронно
    #39432950
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AlexProOraДля удобства понимания можно представить поисковик по названию лекарства, который выводит результаты запроса с подсвеченными поисковыми словами + имя файла и т.д.
т.к. долгий запрос на 20сек УЖЕ работает - покажи скриншот как это выглядит.
...
Рейтинг: 0 / 0
Получить значение в column report (или IR) асинхронно
    #39432988
blkangel
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
AlexProOra,

Зря вы третий вариант обходите стороной, он скорее всего снимет проблему...

Но второй вариант тоже интересен мне в реализации, я нигде не применял, но наверное интересно получиться.

Например вместо данных с нужном нам столбце, в каждой строчке GIF загрузки (колесик, часы песочные и т.д.).
Потом идет Ajax запрос (один это правильно). Возращается JSON и расставляет значения вместо GIF-ок. Ну как минимум красиво получится. :)
...
Рейтинг: 0 / 0
Получить значение в column report (или IR) асинхронно
    #39432999
AlexProOra
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123,

Пример только столбцов побольше...
Как правило знаний хватает адаптировать примеры js под себя, когда примеров нет - "сажусь в лужу".
...
Рейтинг: 0 / 0
Получить значение в column report (или IR) асинхронно
    #39433008
AlexProOra
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
blkangelAlexProOra,
Зря вы третий вариант обходите стороной, он скорее всего снимет проблему...

Ни в коем разе, просто данный подход для меня новый, сначала надо попробовать, если получится то отпишусь обязательно!

blkangelAlexProOra,
Например вместо данных с нужном нам столбце, в каждой строчке GIF загрузки (колесик, часы песочные и т.д.).
Потом идет Ajax запрос (один это правильно). Возращается JSON и расставляет значения вместо GIF-ок. Ну как минимум красиво получится. :)
Вот это было бы просто мега круто! я раньше писал про это, но реальных решений найти не получилось....
Поэтому тему переформулировал с учетом нарытых вариантов....
...
Рейтинг: 0 / 0
Получить значение в column report (или IR) асинхронно
    #39433009
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AlexProOra Пример только столбцов побольше...
)))
выделяй на клиенте в JS без SNIPPET
...
Рейтинг: 0 / 0
Получить значение в column report (или IR) асинхронно
    #39433012
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AlexProOraКак правило знаний хватает адаптировать примеры js под себя
а заявки на гуглопоиск?
Придётся вам ходить на JS ветку за советами.
Динамического выделения в рантайме в апексе нету.
...
Рейтинг: 0 / 0
Получить значение в column report (или IR) асинхронно
    #39433016
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AlexProOraя раньше писал про это,
блин! Прошло 2 года?
Хочется сказать вам до свидания). Баловство у вас всё. Раз пару лет прошло.
...
Рейтинг: 0 / 0
Получить значение в column report (или IR) асинхронно
    #39433019
blkangel
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
AlexProOrablkangelAlexProOra,
Например вместо данных с нужном нам столбце, в каждой строчке GIF загрузки (колесик, часы песочные и т.д.).
Потом идет Ajax запрос (один это правильно). Возращается JSON и расставляет значения вместо GIF-ок. Ну как минимум красиво получится. :)
Вот это было бы просто мега круто! я раньше писал про это, но реальных решений найти не получилось....
Поэтому тему переформулировал с учетом нарытых вариантов....

В принципе реализация не сложная.
Надо немного знаний по JS или Jquery, разметку Апексойдовую изучить, Ajax, Json, всего помаленьку.
Звучит как ах... как много всего, на деле все выйдет в 10 строчный код...
...
Рейтинг: 0 / 0
Получить значение в column report (или IR) асинхронно
    #39433030
AlexProOra
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123AlexProOra Пример только столбцов побольше...
)))
выделяй на клиенте в JS без SNIPPET
Для "грамотной" подсветки нужно иметь весь документ, чтобы извлечь наиболее релевантные фразы и т.д.
Все это тянуть на клиента - затратно....
...
Рейтинг: 0 / 0
Получить значение в column report (или IR) асинхронно
    #39433036
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AlexProOraДля "грамотной" подсветки нужно иметь весь документ, чтобы извлечь наиболее релевантные фразы и т.д.
Все это тянуть на клиента - затратно....
да.
Делают так
https://ru.wikipedia.org/wiki/Lucene
...
Рейтинг: 0 / 0
Получить значение в column report (или IR) асинхронно
    #39433047
AlexProOra
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
blkangelВ принципе реализация не сложная.
Надо немного знаний по JS или Jquery, разметку Апексойдовую изучить, Ajax, Json, всего помаленьку.
Звучит как ах... как много всего, на деле все выйдет в 10 строчный код...
Вот где такова гуру найти, который все эти технологии в голове держит и имеет "желание" эти 10 строк кода людям выложить?
...
Рейтинг: 0 / 0
Получить значение в column report (или IR) асинхронно
    #39433055
AlexProOra
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123AlexProOraДля "грамотной" подсветки нужно иметь весь документ, чтобы извлечь наиболее релевантные фразы и т.д.
Все это тянуть на клиента - затратно....
да.
Делают так
https://ru.wikipedia.org/wiki/Lucene
Я уже подсел на Oracle Text + RCO for Oracle....
...
Рейтинг: 0 / 0
Получить значение в column report (или IR) асинхронно
    #39433063
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AlexProOraЯ уже подсел на Oracle Text + RCO for Oracle....
которых ждать 20 сек?
Тогда выдавайте по одной записи с часиками.
Я вам написал 6 вариантов реализации.
Вы упёрлись в один вариант.
...
Рейтинг: 0 / 0
Получить значение в column report (или IR) асинхронно
    #39433068
AlexProOra
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123AlexProOraЯ уже подсел на Oracle Text + RCO for Oracle....
которых ждать 20 сек?
Тогда выдавайте по одной записи с часиками.
Я вам написал 6 вариантов реализации.
Вы упёрлись в один вариант.
)) я же писал что траблов с выполнением запроса нет, он выполняется очень быстро, вопрос в том как асинхронно получить данные в ячейке отчета...
+ представьте себе поисковик который выводит записи по одной, хотя если Вы покажите пример как это сделать то будет полезно всем....
...
Рейтинг: 0 / 0
Получить значение в column report (или IR) асинхронно
    #39433074
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AlexProOraя же писал что траблов с выполнением запроса нет, он выполняется очень быстро,
у меня с пагинацией любой размер строк выводится за 0,2 сек.
Поэтому вы написали неправду.
AlexProOraвопрос в том как асинхронно получить данные в ячейке отчета...
дал 6 вариантов. Большинство требуют JS. Тот что с таблой - не требует.
AlexProOra+ представьте себе поисковик который выводит записи по одной, хотя если Вы покажите пример как это сделать то будет полезно всем....
такая странная задача с 15-го года только у вас.
Решается на JS костылём.
Я делал костыль с селекторами по замене текста в таблице после открытия.
...
Рейтинг: 0 / 0
Получить значение в column report (или IR) асинхронно
    #39433078
AlexProOra
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123такая странная задача с 15-го года только у вас.
Решается на JS костылём.
Я делал костыль с селекторами по замене текста в таблице после открытия.
Мне многие говорят что я странный и задачи у меня соответствующие )
Спасибо Вам что тратите на меня свое время!
Выложите плиз js скрипт который земеняет значения в таблице после открытия.
...
Рейтинг: 0 / 0
25 сообщений из 61, страница 1 из 3
Форумы / Oracle APEX [игнор отключен] [закрыт для гостей] / Получить значение в column report (или IR) асинхронно
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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