|
как сделать блокировку на несколько часов | ☑ | ||
---|---|---|---|---|
0
vde69
13.11.23
✎
14:53
|
Есть некий инструмент с которым должен работать только один человек. Причем это может требовать от человека значительное время (больше часа), по факту это работа в сторонней системе через сервисы.
кроме того необходимо, чтобы блокировка снималась автоматически если человек вышел (или его выкинули) из 1с. как лучше реализовать подобную блокировку? |
|||
1
rphosts
13.11.23
✎
15:09
|
(0) клиент может отвалиться по ошибке, нужен внешний процесс контролирующий активность... ну типа костыли и лисапеды: пока клиент жив - периодически (регламентным) обновляет сигнальный файл/запись в РС(или справочник) с актуальной датой. Как провал на 2 периода - пора блокировать.
|
|||
2
Smit1C
13.11.23
✎
15:05
|
(0) а что блокировать надо ?
|
|||
3
АНДР
13.11.23
✎
15:11
|
1) В процессе выполнения задания клиент/регзадание устанавливает в константу текущее время;
2) Другое регзадание, снимает блокировку, если превышен таймаут. Годится? |
|||
4
H A D G E H O G s
13.11.23
✎
15:15
|
ЗаблокироватьДанныеДляРедактирования(СсылкаНаПредопределенныйЭлементСправочникаБлокировок,,ИдентификаторФормы);
ИдентификаторФормы = Форма, которая висит в режиме рабочего стола, есть в типовых например, ТекущиеДела. |
|||
5
vde69
13.11.23
✎
15:31
|
(4) вроде подходит...
|
|||
6
H A D G E H O G s
13.11.23
✎
15:34
|
(5) Там только снятие блокировки через некоторое время, если ее явно не снимать. Но можно снять и явно, в обработчике ПередЗавершениемРаботыСистемы()
|
|||
7
PLUT
13.11.23
✎
15:48
|
вот еще, как вариант
Блокировка = Новый БлокировкаСеансов; Блокировка.КодРазрешения = Настройки["КодРазрешения"]; Блокировка.Начало = НачалоДня(ТекущаяДата()) + Число(Настройки["ВремяНачалаБлокировки"] - Дата(1,1,1)); Блокировка.Конец = НачалоДня(ТекущаяДата()) + Число(Настройки["ВремяОкончанияБлокировки"] - Дата(1,1,1)); Блокировка.Сообщение = Настройки["ТекстСообщения"]; Блокировка.Установлена = Истина; УстановитьБлокировкуСеансов(Блокировка); |
|||
8
PLUT
13.11.23
✎
15:50
|
(7) но это для "монопольной" работы по расписанию и вход по коду разрешения /UC...
невнимательно прочитал (0) |
|||
9
rphosts
13.11.23
✎
16:10
|
(6) ну вот и почти идеально, по регламенту периодически блочить, если сеанс отвалится - само разблочится
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |