Имя: Пароль:
1C
1С v8
Как не дать пользователю зайти второй раз в программу ?
0 Родной
 
30.07.12
17:17
Юзаем вэб-клиент. Посколько пользователи заходят по несколько раз в программу (открываю по несколько закладок) - вылетают разнообразные клюки.
Как бароться с дублями ? Как запретить заходить в базу несколько раз ?
1 MadHead
 
30.07.12
17:20
можно получать соединения сервера 1с и искать там текущего пользователя 1с. Может как-то проще есть вариант, но в голову этот первым делом пришел
2 Amra
 
30.07.12
17:21
Посмотри как в типовых реализовано
3 Родной
 
30.07.12
17:21
(2)В какой например ?
4 Maxus43
 
30.07.12
17:24
УПП
разрешить открывать нескоко сеансов
в настройках юзера
5 Родной
 
30.07.12
17:25
А в УТ 11 есть ?
6 Maxus43
 
30.07.12
17:28
хз
7 Родной
 
30.07.12
21:07
Сделал как в типовой. Но если пользоваться Вэб клиентом, можно открыть второе, третье и т.д окно и спокойно зайти в программу. При этом в окне активных пользователей будет висеть один пользователь несколько раз.
Вот код, которым пытаюсь поймать дубль пользователя:

Модуль упр. приложения:

Процедура ПриНачалеРаботыСистемы()
   
   ЕстьТакойПользователь = ПривилигированныйМодуль.ВыполнитьПоискПользователя();    
   Если ЕстьТакойПользователь Тогда
       ЗавершитьРаботуСистемы(Ложь,Ложь);
       Возврат;
   КонецЕсли;
КонецПроцедуры


&НаСервере
Функция ВыполнитьПоискПользователя() Экспорт
   
   ТекущийНомерСоединения = НомерСоединенияИнформационнойБазы();
   УникальныйИдентификаторПользователя = ПользователиИнформационнойБазы.ТекущийПользователь().УникальныйИдентификатор;
   
   МассивСоединений = ПолучитьСоединенияИнформационнойБазы();
   Для Каждого ТекСоединение Из МассивСоединений Цикл
       Если (ТекСоединение.ИмяПриложения = "WebClient")
              И (НЕ ТекСоединение.НомерСоединения = ТекущийНомерСоединения)
              И (НЕ ТекСоединение.Пользователь = неопределено)
              И (ТекСоединение.Пользователь.УникальныйИдентификатор = УникальныйИдентификаторПользователя) Тогда
           Возврат Истина;
       КонецЕсли;
   КонецЦикла;
   
   Возврат Ложь;
   
КонецФункции
8 Родной
 
30.07.12
21:07
Как все таки сделать чтобы только один раз юзер смог зайти ?
9 Партизан
 
30.07.12
21:08
а в семерке достаточно прописать каталог пользователя...
10 AlexITGround
 
30.07.12
21:18
(0) Друг, ты в модуле приложения зафигачил это?
11 Родной
 
30.07.12
21:19
Управляемого. А что ?
12 AlexITGround
 
30.07.12
21:58
Я так понимаю, что надо это же в модуле внешнего соединения прописать
13 Родной
 
30.07.12
22:20
(12)Попробовал. Все равно несколько окон можно открыть.
14 AlexITGround
 
30.07.12
22:38
хм...вроде все правильно, единственное - если не заходит в процедуру, в отладке смотрел?
15 Nirvana
 
30.07.12
22:45
(9) Недостаточно...
16 Voronve
 
30.07.12
22:51
(15) даладно
17 AlexITGround
 
30.07.12
22:51
Есть у кого идеи какие, мне самому интересно, почему не взлетает...
18 Nirvana
 
30.07.12
23:06
(16) Правда-правда. :)
19 Попытка1С
 
31.07.12
00:00
(15) Достаточно
20 Balabass
 
31.07.12
05:23
При отключении полных прав и бухгалтерских прав при старте 1ска вышибает пользолвателя.
Вот туда добавить пунктик на проверке прав - какой раз пользователь зашел в систему.
И гнать его тряпками ссаными.
21 vcv
 
31.07.12
06:41
А 7.7 я бы в подобной ситуации при входе пользователя в систему устанавливал бы блокировку на какой-нибудь подходящий элемент справочника или документ (можно специально созданный служебный). Если не удаётся установить блокировку - значит пользователь уже один раз зашел. А про 8ку ничего не скажу, не знаю :-)
22 DEVIce
 
31.07.12
06:57
Посмотри как в типовых сделано, там это есть.
23 KRV
 
31.07.12
07:26
(0) А если просто лопатой йопнуть разок?
24 Родной
 
31.07.12
08:35
(22)Я пробовал так сделать. В толстом все работает. А в вэб клиенте нет.
25 dmpl
 
31.07.12
08:40
(0) Ввести удержание из зарплаты за второй и последующие входы в систему.

(21) Угу, а если он перед этим вылетел, и блокировка не снялась?
26 Родной
 
31.07.12
11:33
^
27 Nirvana
 
31.07.12
13:35
(19) Ты споришь о том, чего не знаешь.
У меня, кстати, тоже долгое время была эта иллюзия про каталог пользователя.
28 Попытка1С
 
01.08.12
04:17
(27) Ну поясни тогда как обходится сообщение что каталог пользователя занят?
29 zva
 
01.08.12
07:56
(28) можно 1С 7.7 из командной строки запустить, указав новый каталог пользователя
30 Попытка1С
 
01.08.12
08:54
(29) Это будут разные каталоги тогда, речь не об этом шла.
31 zva
 
01.08.12
09:00
(30) Будет 2 сеанса одного пользователя в одной базе 7.7 с разными рабочими каталогами.