![]() |
![]() |
![]() |
|
Как блокировать многократное открытие сеанса одним пользователем? | ☑ | ||
---|---|---|---|---|
0
Метелица
18.11.08
✎
05:25
|
Ситуация: пользователь1 заходит в систему под своим именем со своего компа сколько хочет раз, не закрывая предыдущих сеансов. Вопрос: система не блокирует автоматически пользователя при попытке второй раз войти в базу под своим же именем при открытом первом сеансе?
Пытаюсь сама создать блокировку. Еще вопрос: как узнать имена пользователей, с открытыми сейчас сеансами? |
|||
1
Adoff
18.11.08
✎
05:46
|
Перебрать все подключения ПолучитьСоединенияИнформационнойБазы(), исключая текущее НомерСоединенияИнформационнойБазы(). Если Соединение.Пользователь.Имя = ИмяПользователя - блокировать соединение
|
|||
2
Нэт2008
18.11.08
✎
06:00
|
В настройках пользователя поставить флажок "Запретить открытие нескольких сеансов", а имена пользователей можно узнать посмотрев в Сервис - Активные пользователи.
|
|||
3
4347
18.11.08
✎
06:30
|
(2) Можно подробнее, Операции-Спавочники-пользователи не нашла "Запретить открытие нескольких сеансов"
|
|||
4
Нэт2008
18.11.08
✎
08:21
|
Справочники - Пользователи - открываете форму конкретного пользователя (два раза щелкаете мышкой по нужному пользователю) - Другие настройки - "Запретить открытие нескольких сеансов".
|
|||
5
skunk
18.11.08
✎
08:24
|
(4)уверен(а) что везде онное есть?
|
|||
6
ZanderZ
18.11.08
✎
08:28
|
(2) енто не везде реализовано по моему только в УПП
|
|||
7
4347
19.11.08
✎
07:10
|
(4 ) В УПП (1.1.9.3) нет такого, в Бух(1.6.9.4) тоже нет . В каких программах это все же работает?
|
|||
8
shuhard
19.11.08
✎
08:24
|
(7) УПП 1.2.19.1
|
|||
9
Serg_1960
19.11.08
✎
08:50
|
Запрет на открытие нескольких сиансов зависит больше от платформы, чем от конфигурации. Ищите в своей конфе следующий код (или вставляйте и адаптируйте сами):
Процедура ПриНачалеРаботыСистемы() ... ЗапретитьОткрытиеНесколькихСеансов = УправлениеПользователями.ПолучитьЗначениеПоУмолчанию(глЗначениеПеременной("глТекущийПользователь"), "ЗапретитьОткрытиеНесколькихСеансов"); Если ЗапретитьОткрытиеНесколькихСеансов Тогда ТекущийНомерСоединения = НомерСоединенияИнформационнойБазы(); УникальныйИдентификаторПользователя = ПользователиИнформационнойБазы.ТекущийПользователь().УникальныйИдентификатор; МассивСоединений = ПолучитьСоединенияИнформационнойБазы(); Для Каждого ТекСоединение Из МассивСоединений Цикл Если (ТекСоединение.ИмяПриложения = "1CV8") И (НЕ ТекСоединение.НомерСоединения = ТекущийНомерСоединения) И (НЕ ТекСоединение.Пользователь = неопределено) И (ТекСоединение.Пользователь.УникальныйИдентификатор = УникальныйИдентификаторПользователя) Тогда Предупреждение("Пользователем с таким именем уже выполнен вход в систему"); ЗавершитьРаботуСистемы(Ложь); Возврат; КонецЕсли; КонецЦикла; КонецЕсли; |
|||
10
Serg_1960
19.11.08
✎
08:56
|
Главную роль играет поддержка Вашего релиза платформы комманды НомерСоединенияИнформационнойБазы() и ПолучитьСоединенияИнформационнойБазы()...
|
|||
11
almar
19.11.08
✎
09:00
|
(0) А зачем?
|
|||
12
mango
19.11.08
✎
10:26
|
Действительно зачем? Данная возможность предназначена для того, чтобы можно было запустить какую-либо долгую процедуру в одном сеансе и, при этом, безпроблемно работать в другом. Если не секрет поделитесь зачем Вам этот запрет?
|
|||
13
Метелица
19.11.08
✎
11:22
|
Всем Большое спасибо! Код Serg 1960 работает без единого изменения! Отдельное спасибо.
|
|||
14
Serg_1960
19.11.08
✎
11:30
|
(13) И Вам спасибо :) Доброе слово и кошке приятно :)
(11) и (12) Отвечу за автора :) А затем, что некоторые нетерпеливые узверы исхитряются по несколько раз нажать на ярлык запуска программы, прежде чем она успеет запуститься. Такие тормоза работают с одним сеансом, не обращая внимание на другие закладки 1С в трее... |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |