![]() |
![]() |
![]() |
|
Завершение работы пользователей | ☑ | ||
---|---|---|---|---|
0
URAL
17.07.09
✎
14:08
|
Возможно ли организовать завершение работы(сеанса) пользователей с конфигуратора
|
|||
1
Mitriy
17.07.09
✎
14:10
|
нет
|
|||
2
fisher
17.07.09
✎
14:11
|
Легко.
"Файл -> Открыть" и запустить скрипт, который завершит сеансы пользователей :) |
|||
3
URAL
17.07.09
✎
17:40
|
(2)Файл -> Открыть" и запустить скрипт, который завершит сеансы пользователей
Можно подробнее пожалуйста, недогоняю |
|||
4
asady
17.07.09
✎
18:22
|
(0) запустить из конфигуратора сеанс предприятия с установленным параметром запуска некошерно?
|
|||
6
URAL
18.07.09
✎
05:57
|
А в режиме Предприятие возможно???
|
|||
7
fisher
18.07.09
✎
13:41
|
(3) Ну, это скорее шутка такая была. Просто можно работать с сервером предприятия через COM. Т.е. можно написать скрипт (vbs, js, ect.) который подключится к серверу и поотрубает нужные сеансы нужных баз.
(6) В типовых уже реализовано. Напомнило анекдот: Девочка-даун поймала Золотую рыбку, смотрит на неё "тупыми" глазами, а та ей говорит: - Девочка, отпусти меня, я исполню твои три самые сокровенные желания! - Хотю огломный нос и штоб с бододавками. - И появился у неё огромный нос с бородавками. - Второе желание. - Хотю огломные уши и штоб волосатые такие...- и появились у неё огромные волосатые уши. - А третье твоё желание, девочка. - А есё хотю вот такую больфую опу и штоб она вот так колыхалась из стороны в сторону. Всё получилось, как хотела девочка. Рыбка посмотрела на это зрелище и говорит: - Девочка, ну скажи мне, пожалуйста, ТЫ и так ДЕБИЛЬНАЯ, СТРАШНАЯ И ТУПАЯ КАК ВАЛЕНОК, ты что, не могла заказать у меня, чтобы ты была КРАСИВОЙ, СТРОЙНОЙ, УМНОЙ, а!? - ......а что, МОЖНО БЫЛО!!!??? |
|||
9
fisher
18.07.09
✎
13:46
|
(7) +
Этот скрипт, ессно, можно запустить из конфигуратора как и любой исполняемый файл. |
|||
10
Лефмихалыч
18.07.09
✎
13:50
|
(0) зачем именно из конфигуратора?
|
|||
12
URAL
18.07.09
✎
17:24
|
(7) В типовых уже реализовано
В каких именно?????????????????????????????? |
|||
13
fisher
20.07.09
✎
10:22
|
(12) Ну, я с типовыми неплотно работаю. В "УТП для Украины" точно есть. Почти уверен, что и в других то же самое. В полном интерфейсе меню "Пользователи -> Завершение работы пользователей". Предусматривается несколько режимов завершения работы пользователей.
Реализовано предельно просто - в сеансе каждого пользователя подключается обработчик ожидания, опрашивающий константу режима завершения работы. Т.е. когда админу нужно выгнать народ - он меняет значение константы на нужное и все пользовательские сеансы говорят "Есть!". Самый жесткий режим - безусловное завершение работы. При этом вызывается метод глобального контекста ПрекратитьРаботуСистемы(), которому пох на модальные диалоги. |
|||
14
asady
20.07.09
✎
10:57
|
(13) а разве при открытом модальном окошке обработчик ожидания срабатывает?
|
|||
15
fisher
20.07.09
✎
11:14
|
(14) Да.
|
|||
16
Quadro_pb
20.07.09
✎
11:36
|
>??????????????????????????????
facepalm.jpg Извините. |
|||
17
GenV
20.07.09
✎
11:38
|
(0) В типовых есть обработка ОбновлениеКонфигурации в которой есть пример скрипта по завершению всех сеансов. Пример кода 1С по завершению соединений есть в общем модуле УправлениеСоединениямиИБ (это для БП, для других похожий модуль будет).
|
|||
18
mikecool
20.07.09
✎
11:43
|
(17) в типовых кажется уже этот функционал убрали? по крайней мере в 14 релизе УПП было, а в 16-м уже нет
|
|||
19
GenV
20.07.09
✎
11:46
|
(18) 16 не смотрел, а в 22 проверил - вроде есть. По нему обновление конфигурации через интернет должно работать.
|
|||
20
mikecool
20.07.09
✎
11:55
|
(19) а , точно... про это обновление забыл...
а в 14 - для РИБ работало, только видимо народ много глюков отловил :) |
|||
21
Serg_1960
20.07.09
✎
12:06
|
Глюки в том и заключались - модальные окна не закрывались :)
|
|||
22
URAL
21.07.09
✎
14:34
|
Скачал с ифостарта обработку , а она отрубает только мою сессию
запускаю открывается ТЗ, в ней колонки Имя пользователя, УИД пользователя и.т.д. кликаю мышъю по нужному пользователю и выбираю в меню завершить сеанс, не срабатывает Запускаю с одного компа сразу несколько сессий под разными именами, того кто запустил обработку с полными правами отрубает, а остальных нет Может кто подскажет что не так Вот часть задействованного кода при текущем действии: Процедура КоманднаяПанель3ЗаввершитьСеанс(Кнопка) ЗавешитьСеансПользователя(ЭлементыФормы.СписокПользователей.ТекущиеДанные); КонецПроцедуры Процедура ЗавешитьСеансПользователя(СтрокаТЗ) // СформироватьСообщение(1,10,ЭлементыФормы.СписокПользователей.ТекущиеДанные.УИДПользователя); Текст = "Попытка "+ " Форма.ОтключитьОбработчикОжидания(""ЗавершитьСеанс"");"+ " Исключение"+ " КонецПопытки;"+ " ОжиданиеЗавершенияСобытия = Ложь;"+ " _ОчиститьСообщения(1);"+ " Попытка"+ " ЗавершитьРаботуСистемы(Ложь);"+ " Исключение"+ " КонецПопытки;"; СформироватьСообщение(3,10,ЭлементыФормы.СписокПользователей.ТекущиеДанные.УИДПользователя, Строка(_ТекущийПользователь.УникальныйИдентификатор),,Текст); КонецПроцедуры Процедура СформироватьСообщение(ТипСобытия,ВремяДоСтарта=5,УИДПолучателя,УИДОтправителя,_ТекстОповещения="",КодИсполнения="") Экспорт Сообщение = РегистрыСведений.dsСообщения.СоздатьМенеджерЗаписи(); Сообщение.ТипСобытия = ТипСобытия; Сообщение.УИДПолучателя = УИДПолучателя; Сообщение.УИДОтправителя = УИДОтправителя; Сообщение.ТекстОповещения = _ТекстОповещения; Сообщение.КодИсполнения = КодИсполнения; Сообщение.ВремяДоСтарта = ВремяДоСтарта; Сообщение.ИмяОтправителя = _ТекущийПользователь.ПолноеИмя; Сообщение.Записать(); КонецПроцедуры |
|||
23
URAL
21.07.09
✎
15:04
|
Каким образом указать конкретно какого пользователя отрубить?????
|
|||
24
lordmb
21.07.09
✎
16:40
|
(23) ПолучитьСоединенияИнформационнойБазы()
|
|||
25
URAL
21.07.09
✎
17:42
|
(24)в какое место кода реализовать
|
|||
26
GenV
21.07.09
✎
17:50
|
(25) Принцип работы скачанного механизма хоть понял? )
|
|||
27
URAL
21.07.09
✎
17:55
|
немного, но если приблизительно подскажите что куда то буду премного благодарен, много чего не понимаю....
|
|||
28
URAL
21.07.09
✎
17:58
|
прошу извинить но сей момент уже реализован
Процедура ЗаполнитьСписокПользователей() МассивСоединений = ПолучитьСоединенияИнформационнойБазы(); СписокПользователей.Очистить(); Если МассивСоединений <> Неопределено тогда Для Каждого Значение Из МассивСоединений Цикл СтрокаТЗ = СписокПользователей.Добавить(); // при ожиданни ввода имени пользователя не удается получить полное имя Попытка СтрокаТЗ.ИмяПользователя = Значение.Пользователь.ПолноеИмя; Исключение КонецПопытки; СтрокаТЗ.ИмяКомпьютера = Значение.ИмяКомпьютера; СтрокаТЗ.ИмяПриложения = Значение.ИмяПриложения; СтрокаТЗ.НачалоСеанса = Значение.НачалоСеанса; СтрокаТЗ.НомерСоединения = Значение.НомерСоединения; СтрокаТЗ.УИДПользователя = Значение.Пользователь.УникальныйИдентификатор; КонецЦикла; КонецЕсли; КонецПроцедуры |
|||
29
GenV
21.07.09
✎
18:00
|
(27) В системе есть регистр сведений в который пишутся сообщения для пользователей. В текущем сеансе проверяется, нет ли сообщений для текущего пользователя (в обработчике ожидания) и если есть они либо выводятся, либо если в них задан программных код он выполняется. В твоем примере программный код отключает нужного пользователя при получении им сообщения (код выполняет отключение _текущего_ соединения).
|
|||
30
URAL
21.07.09
✎
18:03
|
(29) но почему себя я отключаю без проблем а других ничего не происходит
|
|||
31
URAL
21.07.09
✎
18:45
|
проверил через отладчик как проходит запись в регистр и себя и других пользователей, не могу понять что делаю не так
|
|||
32
GenV
21.07.09
✎
22:27
|
(30) Наверное потому, что у себя обработчик ожидания ты включаешь, а другие сеансы про него не знают ) Соотвю. у других пользователей он должен включаться при начале работы системы (или как там написано в описании к обработки), тогда другие пользователи будут знать о получаемых сообщениях.
|
|||
33
URAL
22.07.09
✎
09:16
|
||||
34
GenV
22.07.09
✎
13:04
|
(33) Тупишь. Смотри в демке модуль приложения.
|
|||
35
URAL
22.07.09
✎
18:36
|
что за демка
|
|||
36
URAL
23.07.09
✎
06:40
|
что за демка
|
|||
37
GenV
23.07.09
✎
12:03
|
(35) Там вроде выбор небольшой ) Один файл конфы, другой демка )
|
|||
38
URAL
24.07.09
✎
09:47
|
что за демка, что за файл напиши
|
|||
39
URAL
24.07.09
✎
09:59
|
я так понимаю что демка это 1Cv8.1CD и как ее просмотреть
|
|||
40
fisher
24.07.09
✎
10:44
|
(39) Гм... Вообще-то это база 1С и есть. Смотреть, соответственно, через 1С.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |