Получить блокировку сеансов области данных. Получить информацию о блокировке сеансов области данных.
// Получить информацию о блокировке сеансов области данных.
//
// Параметры:
// ПоМестномуВремени - Булево - время начала и окончания блокировки необходимо вернуть
// в местном времени сеанса. Если Ложь, то
// возвращается в универсальном времени.
//
// Возвращаемое значение:
// Структура - см. НовыеПараметрыБлокировкиСоединений.
//
Функция ПолучитьБлокировкуСеансовОбластиДанных(Знач ПоМестномуВремени = Истина) Экспорт
Результат = НовыеПараметрыБлокировкиСоединений();
Если Не ОбщегоНазначения.РазделениеВключено() Или Не ОбщегоНазначения.ДоступноИспользованиеРазделенныхДанных() Тогда
Возврат Результат;
КонецЕсли;
Если Не Пользователи.ЭтоПолноправныйПользователь() Тогда
ВызватьИсключение НСтр("ru ='Недостаточно прав для выполнения операции'");
КонецЕсли;
МодульРаботаВМоделиСервиса = ОбщегоНазначения.ОбщийМодуль("РаботаВМоделиСервиса");
УстановитьПривилегированныйРежим(Истина);
НаборБлокировок = РегистрыСведений.БлокировкиСеансовОбластейДанных.СоздатьНаборЗаписей();
НаборБлокировок.Отбор.ОбластьДанныхВспомогательныеДанные.Установить(
МодульРаботаВМоделиСервиса.ЗначениеРазделителяСеанса());
НаборБлокировок.Прочитать();
Если НаборБлокировок.Количество() = 0 Тогда
Возврат Результат;
КонецЕсли;
Блокировка = НаборБлокировок[0];
Результат.Начало = ?(ПоМестномуВремени И ЗначениеЗаполнено(Блокировка.НачалоБлокировки),
МестноеВремя(Блокировка.НачалоБлокировки), Блокировка.НачалоБлокировки);
Результат.Конец = ?(ПоМестномуВремени И ЗначениеЗаполнено(Блокировка.КонецБлокировки),
МестноеВремя(Блокировка.КонецБлокировки), Блокировка.КонецБлокировки);
Результат.Сообщение = Блокировка.СообщениеБлокировки;
Результат.Эксклюзивная = Блокировка.Эксклюзивная;
Результат.Установлена = Истина;
Если ЗначениеЗаполнено(Блокировка.КонецБлокировки) И ТекущаяДатаСеанса() > Блокировка.КонецБлокировки Тогда
Результат.Установлена = Ложь;
КонецЕсли;
Возврат Результат;
КонецФункции
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2019, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
НовыеПараметрыБлокировкиСоединений (БСП)
УстановитьБлокировкуСеансовОбластиДанных (БСП)
ДанныеСеансаИзБлокировки (БСП)
ПараметрыБлокировкиСеансов (БСП)
ОбластьДанныхЗаблокирована (БСП)
Канал FastCode 1C в Телеграм! Шаблоны кода, статьи, полезные советы, курсы по 1С (8К участников)