Синтаксис и применение БлокировкаСеансов.По умолчанию в платформе 1С:Предприятие. Описание и примеры кода.
Синтаксис
Новый БлокировкаСеансовПолное описание, параметры и ограничения
БлокировкаСеансов.По умолчанию
БлокировкаСеансов (SessionsLock)
По умолчанию
Синтаксис:
Новый БлокировкаСеансов
Методическая информация
Практические примеры
Установить ограниченную по времени блокировку новых сеансов
Используем настоящий БлокировкаСеансов с коротким интервалом, а не логический аргумент методу.
Где и как запускать
Обычный сервер 1С; также указанные глобальные административные методы могут быть доступны толстому клиенту и внешнему соединению.
Подготовка
Вставьте блок в модуль собственной управляемой формы. Клиентскую процедуру вызовите из обработчика своей кнопки; серверную — через собственный серверный обработчик команды. Специальное место вставки указано отдельно.
Только собственная учебная копия базы с необходимыми правами. Не выполняйте административный пример в рабочей базе.
Только отдельная учебная база, где временная невозможность нового входа допустима. Нужны административные права и заранее понятный ручной способ снять блокировку.
&НаСервереБезКонтекста
Процедура ОграничитьУчебныеПодключения()
Блокировка = Новый БлокировкаСеансов;
Блокировка.Установлена = Истина;
Блокировка.Начало = ТекущаяДата();
Блокировка.Конец = Блокировка.Начало + 300;
Блокировка.Сообщение = "Учебная проверка: подключения временно ограничены";
УстановитьБлокировкуСеансов(Блокировка);
ТекущаяБлокировка = ПолучитьБлокировкуСеансов();
Сообщить("Установлена: " + Строка(ТекущаяБлокировка.Установлена));
КонецПроцедурыРазбор по шагам
Создайте описание с началом и концом через 300 секунд.
Установите его.
Прочитайте фактическую блокировку базы.
Как проверить результат
Конец задан, блокировка не бессрочная.
Полученный признак не подменяется собственной переменной Истина.
Ожидаемый результат
Получено действующее описание блокировки сеансов.
На что обратить внимание
Не завершает уже работающие сеансы и не является монопольным режимом. Ошибка настройки времени может препятствовать входу; не применяйте в рабочей базе.
Пример не запускался в вашей базе. Перед применением проверьте его в указанном учебном контексте.
Подготовить собственное описание окна обслуживания, не применять блокировку
Новый БлокировкаСеансов создаёт объект параметров. Даже Установлена=Истина у нового объекта не является применением настройки к базе без отдельного метода установки.
Где и как запускать
Полный серверный модуль собственной учебной конфигурации. Штатное чтение настроек с сохранением фактической ошибки и остановкой либо новый собственный черновик в памяти, без применения настроек.
Подготовка
Используйте только отдельную конфигурацию УчебнаяКонфигурацияСинтаксиса. Создайте серверный общий модуль УчебнаяПолитика с флагом Сервер, без флага Привилегированный; вставьте полный модуль выбранного урока и вызовите ВыполнитьПример из собственной серверной команды.
Первые четыре урока вызывают реальные штатные getters в серверном модуле. Выбранные страницы справки не задают для этих методов отдельного требования Администрирование; это не обещание отсутствия внутренних проверок прав. Любая фактическая ошибка сохраняется в ОписаниеОшибки и останавливает опыт без повышения прав, повторного вызова или подстановки значений. Пятый урок создаёт только новый объект в памяти и не читает текущие настройки.
Первые четыре урока только читают настройки. Пятый создаёт новый черновик БлокировкаСеансов в памяти. Ни один урок не вызывает УстановитьБлокировкуСеансов или изменение политики паролей.
Не вводите пароли пользователей и коды разрешения действующих блокировок. Учебник не проверяет чей-либо пароль, не отправляет его на внешний сервис и не выводит код /uc.
Секунды для сроков действия паролей сверены по вашему реальному модулю УНФ: C:\claude\UNF\UNF_XML\CommonModules\ПользователиСлужебный\Ext\Module.bsl, процедура ЗаполнитьНастройкиИзПолитикиПаролейПользователей, строки 3197–3233. Там используется деление на 24×60×60. Урок не вызывает этот модуль и не зависит от БСП.
Фактические настройки и административные ограничения зависят от вашей собственной базы. BSL-примеры не исполнялись в 1С автоматически.
Процедура ВыполнитьПример() Экспорт
Черновик = Новый БлокировкаСеансов;
Черновик.Установлена = Истина;
Черновик.Начало = Дата(2030, 1, 15, 10, 0, 0);
Черновик.Конец = Дата(2030, 1, 15, 10, 30, 0);
Черновик.КодРазрешения = "НЕСЕКРЕТ_ТОЛЬКО_ЧЕРНОВИК";
Черновик.Сообщение = "Учебное окно обслуживания: собственный объект не применён";
Черновик.Параметр = "УчебнаяЗадача=Обслуживание";
Если Черновик.Конец <= Черновик.Начало Тогда
ВызватьИсключение "Конец собственного окна должен быть позже начала";
КонецЕсли;
Сообщить(Черновик.Установлена);
Сообщить(Черновик.Конец - Черновик.Начало = 30 * 60);
Сообщить(Черновик.КодРазрешения = "НЕСЕКРЕТ_ТОЛЬКО_ЧЕРНОВИК");
Сообщить(Черновик.Параметр = "УчебнаяЗадача=Обслуживание");
Сообщить(СтрНайти(Строка(Черновик.Сообщение), "не применён") > 0);
Черновик.Установлена = Ложь;
Сообщить(Черновик.Установлена = Ложь);
Сообщить("Это изменения только нового черновика, настройка своей базы не устанавливалась и не снималась");
КонецПроцедурыРазбор по шагам
Создать новый объект в памяти, не получать рабочую блокировку для изменения.
Задать вымышленное окно 15.01.2030 10:00–10:30, учебный текст, параметр и несекретный код, не используемый для реального входа.
До расчёта длительности проверить, что конец позже начала.
Проверить 1800 секунд и остальные свойства своего объекта.
Поменять только его локальный флаг на Ложь. Не вызывать УстановитьБлокировкуСеансов ни для одного состояния.
Как проверить результат
Шесть сообщений Истина; длительность собственного окна 1800 секунд.
Сеансы базы не блокируются и не разблокируются: код не применяет ни один созданный объект.
Ожидаемый результат
Есть полный реальный пример конструктора и всех writable-свойств на своём ограниченном черновике без административной записи.
На что обратить внимание
Локальное Установлена=Ложь у черновика не снимает существующую блокировку базы.
Несекретный пример кода не подходит для реальной защиты окна обслуживания.
Даты закреплены как учебные: не используйте их как реальное расписание и не добавляйте применение в рабочей базе.
Пример не запускался в вашей базе. Перед применением проверьте его в указанном учебном контексте.