Закрытие сеанса по выбору в единой службе поддержки

У нас есть несколько сеансов, т.е. четыре сеанса открыты в долларах США. Мне нужно закрыть сеанс, не нажимая «X». Может ли быть на панели инструментов 4 кнопки и нажатие третьей кнопки закроет третью сессию в долларах США?


person user3030869    schedule 26.06.2018    source источник


Ответы (1)


Это должно быть возможно при условии, что документация Microsoft действительна. Даже если это возможно, это будет грубо, ограниченно и сложно реализовать / поддерживать без написания специального кода. Я настоятельно рекомендую кнопку «закрыть текущий сеанс», которая просто закрывает сеанс переднего плана. Однако вот как вы теоретически можете делать то, о чем просите, с помощью конфигурации.

Создайте кнопку «Закрыть» для каждого сеанса, учитывая максимальное количество сеансов, скажем, 4. При запуске нового сеанса срабатывает серия действий в попытке найти кнопку «Закрыть», к которой можно присоединить команду закрытия сеанса, на основе логика такая:

Does Global Context variable Session1ID have data?
If not, place the new session ID in Session1ID.

Does Global Context variable Session2ID have data?  
Is the new session ID already stored in Session1ID?  
If not, place the new session ID in Session2ID.

Does Global Context variable Session3ID have data?
Is the new session ID already stored in Session1ID or Session2ID?
If not, place the new session ID in Session3ID.

Does Global Context variable Session4ID have data?
Is the new session ID already stored in Session1ID, Session2ID, or Session3ID?
If not, place the new session ID in Session4ID.

Сами кнопки можно сделать видимыми или активными в зависимости от того, находится ли их идентификатор сеанса в глобальном контексте.

При нажатии любой из этих кнопок, скажем № 3, произойдет следующее:

Close Session command using Session3ID
Nullify value of Session3ID, making it available for the next attempt to attach a session ID.

Я предвижу несколько проблем с этим. Вы можете столкнуться с проблемами чтения и записи переменных глобального контекста во время сеанса. Кроме того, вы можете столкнуться с проблемами при закрытии фоновых сеансов по их идентификатору.

Более того, закрытие сеансов вне очереди приведет к тому, что новые сеансы будут прикрепляться к кнопкам неупорядоченным образом, создавая плохой пользовательский опыт. Допустим, вам нужно начать шесть занятий (A, B, C, D, E и F). Вы должны закрыть два сеанса посередине (B и C), прежде чем начинать два последних из-за вашего лимита в 4. Когда A на кнопке 1 и D на кнопке 4, вы запускаете сеансы E и F, которые прикрепляются к кнопкам 2 и 3. Теперь ваши четыре кнопки соответствуют сеансам A, E, F и D, в то время как сами вкладки сеансов находятся в том порядке, в котором вы их открывали: A, D, E, F. Это было бы неприятным для пользователя. (Я не верю, что вы можете управлять порядком, в котором появляются кнопки, используя параметры замены. Порядок кнопок, скорее всего, будет только целыми числами конфигурации.)

Надеюсь, это проясняет элегантность более простого решения: создать кнопку «Закрыть текущий сеанс», которая будет активна или видима только во время сеанса.

person Hoffma    schedule 29.06.2018