Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Oracle APEX [игнор отключен] [закрыт для гостей] / Как понять, что пользователь приложения закрыл вкладку с приложением, но не сделал logount / 5 сообщений из 5, страница 1 из 1
14.02.2017, 16:54
    #39404300
DoubleDouchebag
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как понять, что пользователь приложения закрыл вкладку с приложением, но не сделал logount
APEX version - 4.2.2.00.11, status - VALID
ORACLE - Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production

Пользователь заходит на страницу с операциями в приложении (обычный список операций ), начинает редактировать , бросает и закрывает вкладку.
В операции при этом не меняется параметр, который меняется в.г. только при logout или при выходе из операции.

Я собирался написать скрипт ( использующий апексовые вьюхи для определения закрывших вкладку пользователей) меняющий тот злополучный параметр но информации по определению закрытия вкладки не нашел.

Нужна либо инфа по поводу закрытия вкладок пользователями, либо мнение знающего человека подтверждающее, что в апексовых вьюхах такой информации нет, и средствами oracle обработать такой случай невозможно , нужно использовать плагины, javascript или что-то еще.
...
Рейтинг: 0 / 0
14.02.2017, 18:01
    #39404341
blkangel
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как понять, что пользователь приложения закрыл вкладку с приложением, но не сделал logount
DoubleDouchebag,

авторЯ собирался написать скрипт ( использующий апексовые вьюхи для определения закрывших вкладку пользователей) меняющий тот злополучный параметр но информации по определению закрытия вкладки не нашел.

Апекс не отслеживает закрытие вкладки.

Я использую JavaScript, назвал его пингер.
Пингер тупо посылает Ajax запрос на сервер. Сервер отвечает фигней (я даты и время возвращаю). Что возвращать вообще не принципиально. Главное что сервер понимает, что вкладка не открыта.
Как только пингер перестает обращаться на сервер (вкладку закрыли). Апекс своими стандартными средствами по параметру IDLE SESSION завершает сессию.

Но Вам нужно, еще какие то действия произвести? Какие?
...
Рейтинг: 0 / 0
14.02.2017, 18:51
    #39404378
Petro123
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как понять, что пользователь приложения закрыл вкладку с приложением, но не сделал logount
blkangel проснулся - "Леша с Любой ходят парой"
)
DoubleDouchebagПользователь заходит на страницу с операциями в приложении (обычный список операций ), начинает редактировать , бросает и закрывает вкладку.
В операции при этом не меняется параметр, который меняется в.г. только при logout или при выходе из операции.
В общем случае "из коробки" в апексе нет готового средства.
Думаю не случайно, т.к. все демки оракла содержать для сохранения результатов кнопки сабмит: Сохранить\Отменить\Редактировать и т.д.
Если вы рядом с операцией повесите кнопку в стиле жёлтеньким (см.скрин).
То и вопросы никто задавать не будет.
Постоянно спрашивать: "Хотите выйти? Вы уверены? Вы так мало были(" в вебе делать не принято.
Хотя сделать можно разными средствами.
Отсюда вопрос - что у вас там за проблемный параметр, который нельзя просто бросить и не обработать.
...
Рейтинг: 0 / 0
15.02.2017, 17:52
    #39405181
DoubleDouchebag
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как понять, что пользователь приложения закрыл вкладку с приложением, но не сделал logount
blkangel,

Нужно после того, как пользователь закрыл вкладку с редактируемой операцией отловить ситуацию закрытия вкладки с операцией
и исскуственно (скрипт отрабатывающий каждую скажем минуту - оракловый джобик) поменять в операции (сначала найти ее конечно) атрибут (пусть он называется lock, его надо поменять на 'N' после закрытия вкладки - этот lock автоматически становится 'Y', когда пользователь открывает операцию на редктирование, становится 'N' если пользователь вышел из операции или вышел из приложения, но не становится 'N' если пользователь закрыл вкладку)
...
Рейтинг: 0 / 0
16.02.2017, 17:29
    #39405991
blkangel
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как понять, что пользователь приложения закрыл вкладку с приложением, но не сделал logount
DoubleDouchebagblkangel,

Нужно после того, как пользователь закрыл вкладку с редактируемой операцией отловить ситуацию закрытия вкладки с операцией
и исскуственно (скрипт отрабатывающий каждую скажем минуту - оракловый джобик) поменять в операции (сначала найти ее конечно) атрибут (пусть он называется lock, его надо поменять на 'N' после закрытия вкладки - этот lock автоматически становится 'Y', когда пользователь открывает операцию на редктирование, становится 'N' если пользователь вышел из операции или вышел из приложения, но не становится 'N' если пользователь закрыл вкладку)

Предположим, вы будете метить открытие операции вместо буквы Y, номер сессии, а если операция не заблокирована то поле is null

тогда джобик будет выглядеть так.
Код: plsql
1.
2.
3.
update таблица_с_операциями set флаг_блокировки_операции = null 
where   флаг_блокировки_операции  is not null
and флаг_блокировки_операции not in (select apex_session_id from APEX_WORKSPACE_SESSIONS);
...
Рейтинг: 0 / 0
Форумы / Oracle APEX [игнор отключен] [закрыт для гостей] / Как понять, что пользователь приложения закрыл вкладку с приложением, но не сделал logount / 5 сообщений из 5, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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