powered by simpleCommunicator - 2.0.44     © 2025 Programmizd 02
Форумы / Oracle APEX [игнор отключен] [закрыт для гостей] / Отрисовка Spinner на время выполнения PL/SQL кода в Dynamic Action
2 сообщений из 2, страница 1 из 1
Отрисовка Spinner на время выполнения PL/SQL кода в Dynamic Action
    #40094074
valerakhazaryan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем добрый день.

Используется APEX версии 5.1.4.00.08
Есть оракловая процедура, которая вызывается по нажатию кнопки в интерфейсе APEX и выполняется несколько секунд. На время выполнения процедуры необходимо отображать "Спиннер" и убирать его по завершению выполнения процедуры.
Для этого создал Dynamic Action следующим образом:

1. Execute JavaScript Code:

apex.widget.waitPopup();

2. Execute PL/SQL Code:

/*Вызов оракловой процедуры*/
package.procedure

3. Execute JavaScript Code

$("#apex_wait_overlay").remove();
$(".u-Processing").remove();

Для шага №2 Execute PL/SQL Code настройка Wait For Result = YES

По какой-то причине, при нажатии на кнопку, сразу начинает выполняться оракловая процедура, а после неё уже отрисовывается спиннер и сразу пропадает, т.е. по сути js код из шага №1 выполняется после шага №2.

Подскажите пожалуйста, по какой причине код выполняется не в такой последовательности, как указано в DA, и можно ли всё таки сделать так, чтобы спиннер отображался только на время выполнения процедуры?

P.S. Процедуру нужно вызывать только из DA, вариант вызывать в Processing не подойдёт.
APEX версии 5.1.4.00.08
...
Рейтинг: 0 / 0
Отрисовка Spinner на время выполнения PL/SQL кода в Dynamic Action
    #40094103
Никанор Кузьмич
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
У меня совершенно случайно дома завалялся апекс 5.0, но не уверен, что сегодня будет время попробовать на нем. Где взять 5.1 - не имею понятия. Когда работал с 5.1, сталкивался с точно такой же задачей - проблем не было, спиннер отрисовывался и пропадал как надо. А если проблемы и были, то я об этом уже забыл.

В качестве workaround могу предложить создать Application Process и делать к нему ajax call с помощью apex.server.process . Тогда у вас будет одна js функция, в которой будет идти последовательно "показать спиннер - вызвать PL/SQL - убрать спиннер".

valerakhazaryan
Подскажите пожалуйста, по какой причине код выполняется не в такой последовательности, как указано в DA
У меня с были другие проблемы с DA в апексе 5.2. Выглядело так, как будто там были глюки самого апекса. Сейчас на 20-й версии той старой проблемы нет - видать пофиксили. А еще, по моим наблюдениям, апекс подглючивает в фаерфоксе.
...
Рейтинг: 0 / 0
2 сообщений из 2, страница 1 из 1
Форумы / Oracle APEX [игнор отключен] [закрыт для гостей] / Отрисовка Spinner на время выполнения PL/SQL кода в Dynamic Action
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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