|
![]() |
#1 |
Участник
|
Цитата:
![]()
![]() Последний раз редактировалось gl00mie; 12.05.2008 в 12:38. Причина: typo |
|
![]() |
#2 |
Участник
|
Цитата:
Сообщение от gl00mie
![]() Мне кажется, это какой-то некорректный "дизайн". В (почти) любой системе есть пользователи, которые работают с системой, вводят какие-то данные, etc., и есть администраторы, которые следят за тем, чтобы система нормально функционировала, в т.ч. ограничивая и даже прерывая работу пользователей.
В Аксапте у администраторов есть возможность удалить сессию. Речь идет об автозавершении. Сама аксапта не должна решать что можно, а что нельзя пользователю. И это правильный дизайн. Если пользователь держит открытую форму с несохраненными данными, то прервать эту сессию может либо он, либо администратор руками. Ни в коем случае не сама система. "Приложение зависло" или "пользователь не сохранил". Это все-таки разные статусы. |
|
![]() |
#3 |
Участник
|
Цитата:
Цитата:
Приведу еще одну аналогию с виндами. Есть термильные сервера (Terminal Services и связанные с ней службы), там тоже есть понятие статуса сессии (активная, бездействующая) и подсчет времени бездействия, а также настройки того, что делать с неактиными сессиями - их тоже можно принудительно завершать. Когда терминальный сервер "насчитает" сессии определенное время неактивности, то для нее запускается процедура завершения (logoff), в ходе которой всем приложениям пользователя, запущенным в рамках этой сессии, дается определенное время на завершение своей работы, по истечение которого они просто прибиваются. Что именно было запущено в сессии - значения не имеет, будь то пасьянс, winword с несохраненной докторской диссертацией или тот же аксаптовский клиент, в котром идет создание новой позиции в номенклатурном справочнике. Итог для всех приложений будет один: они получат сообщение о завершении работы и после заданного таймаута, если не завершатся сами, будут принудительно "жестко" прибиты. Такая настройка терминального сервера оставляется на усмотрение администратора, но уж коль скоро он так настроит систему, неактивные терминальные сессии будут завершаться безотносительно того, что и в какой фазе в них выполняется.Различие статусов в данном случае роли не имеет и значения не играет. Есть административная настройка, определяющая определенное поведение системы, она должна работать - "и никаких гвоздей". Если есть задумка как-то спасать несохраненные данные, то нужно ввести дополнительную настройку типа "автозавершение даже если есть несохраненные данные". А покуда такой настройки нет, система должна работать так, как написано: истек таймаут неактивности для сессии - сессия завершилась. Точка. |
|
![]() |
#4 |
Участник
|
Цитата:
Сообщение от gl00mie
![]() А что есть автозавершение неактивных сессий по таймауту, если не один из инструментов администрирования? Кто настраивает это самое автозавершение, сам пользователь что ли? И в конце концов, зачем все эти настройки автозавершения, если администратор все равно вынужден будет сам лазить и руками прибивать сессии?
зачем? чтобы выводить тех, кто ничего не делает. тот, кто не записал является вводящим данные ![]() зачем... если...? а чтобы данные пользователя не потерять. Цитата:
![]() Цитата:
Сообщение от gl00mie
![]() Есть термильные сервера (Terminal Services и связанные с ней службы), там тоже есть понятие статуса сессии (активная, бездействующая) и подсчет времени бездействия, а также настройки того, что делать с неактиными сессиями - их тоже можно принудительно завершать. Когда терминальный сервер "насчитает" сессии определенное время неактивности, то для нее запускается процедура завершения (logoff), в ходе которой всем приложениям пользователя, запущенным в рамках этой сессии, дается определенное время на завершение своей работы, по истечение которого они просто прибиваются.
![]() Цитата:
Сообщение от gl00mie
![]() Что именно было запущено в сессии - значения не имеет, будь то пасьянс, winword с несохраненной докторской диссертацией или тот же аксаптовский клиент, в котром идет создание новой позиции в номенклатурном справочнике. Итог для всех приложений будет один: они получат сообщение о завершении работы и после заданного таймаута, если не завершатся сами, будут принудительно "жестко" прибиты. Такая настройка терминального сервера оставляется на усмотрение администратора, но уж коль скоро он так настроит систему, неактивные терминальные сессии будут завершаться безотносительно того, что и в какой фазе в них выполняется.Различие статусов в данном случае роли не имеет и значения не играет.
|
|
![]() |
#5 |
Member
|
Функция явно глючит. В 4.0 она закрывает все окна кроме окна с созданной записью и незаполненными полями. Т.е. остается одно окно, которое она не смогла закрыть ввиду особеностей реализации механизма завершения работы клиента. Если запись дозаполнить и сохранить, то неактивность больше не отслеживается до выйти и зайти (один раз обламавшись система не пытается закрываться больше по причине неактивности).
Кстати. Если в форме начать модификацию данных и не сохранить запись, то Аксапа при этом закрывается. Сама. Автоматически. Запись при этом сохраняется. Исходя из этого сложно предположить, что созданная запись с незаполненными обязательными для заполнения полями является ценной информацией, и по причине незавершенности ввода такой записи стоит не закрывать клиент.
__________________
С уважением, glibs® |
|
![]() |
#6 |
Участник
|
Цитата:
Согласен. Это надо исправить. |
|
![]() |
#7 |
Участник
|
Извиняюсь за возникшую паузу в обсуждении...
Цитата:
![]() Цитата:
Сообщение от mazzy
![]() Данные пользователя в Аксапте на мой взгляд более ценны, нежели удобство админа
![]() Цитата:
Сообщение от mazzy
![]() если хочется оценку увеличить, то надо писать обоснование и доказывать, что нельзя обойтись обычными административными мерами, которые не приводят к повышенным рискам потери данных
![]() ![]() Цитата:
Цитата:
This method returns the number of cpu ticks elapsed since last information exchange between the client and the Object Server. This counter is reset when some sort of communication is taking place between the client and the Object Server. All interaction between the client and the Object Server is regarded as activity so idle counter might be reset even though the client is not actively performing tasks within Axapta.
![]() |
|
|
За это сообщение автора поблагодарили: kashperuk (5). |
![]() |
#8 |
Member
|
Цитата:
Сообщение от gl00mie
...
корректнее говорить именно о неактивности пользователя, и связано это именно с тем, как реализована функция автозавершения клиентской сессии по таймауту ... А вообще я поддерживаю т.з., что автозавершение необходимо. А заботиться о сохранности данных обязан пользователь. А то это напоминает: "Ой, у нас диск накрылся, резервный мы не покупали, бэкап не делали, что нам теперь делать?". Ввел ценные данные — сохрани. Что за разгильдяйское отношение к ценным данным в конце концов? А если свет погаснет?
__________________
С уважением, glibs® |
|
![]() |
#9 |
Участник
|
Возник такой вопрос:
В 4.0 и дальше есть настройка времени между проверками новых оповещений. Допустим, период 5 минут. При этом настройка выхода по неактивности - 15 минут. Получается, что клиент никогда не закроется, т.к. каждые пять минут будет "дергать" сервер? P.S. В 4.0 существует проблема, когда клиент аксапты закрывается нештатно (например, по тайм-ауту на терминальном сервере), после чего в EventLog сервера AOS сыплются ошибки; когда таких ошибок очень много, есть вероятность падения самого AOS'а. В "решении" проблемы от MS предложено настроить автовыход из Аксапты на время меньшее, чем время тайм-аута на терминальном сервере. Получается, что MS считает автовыход именно администраторским "tool", это в дополнение к предыдущим обсуждениям в данной ветке.
__________________
Ivanhoe as is.. |
|