3_1_3_303

This commit is contained in:
Компания 1С committed 2020-10-16 15:12:00 +03:00
1 parent a88dc04b2c
commit 904212c216
41 files changed
+743 -476

No files matched your search

@@ -825,10 +825,10 @@
&НаСервере &НаСервере
Функция ЗаблокироватьНедействительныхПользователейВСистемеВзаимодействийНаСервере() Функция ЗаблокироватьНедействительныхПользователейВСистемеВзаимодействийНаСервере()
Результат = ""; Результат = "";
МодульОсбужденияСлужебный = ОбщегоНазначения.ОбщийМодуль("ОбсужденияСлужебный"); МодульОбсужденияСлужебный = ОбщегоНазначения.ОбщийМодуль("ОбсужденияСлужебный");
НедействительныеПользователи = МодульОсбужденияСлужебный.НедействительныеПользователи(); НедействительныеПользователи = МодульОбсужденияСлужебный.НедействительныеПользователи();
Для каждого НедействительныйПользователь Из НедействительныеПользователи Цикл Для каждого НедействительныйПользователь Из НедействительныеПользователи Цикл
РезультатБлокировки = МодульОсбужденияСлужебный.ЗаблокироватьПользователяСистемыВзаимодействия(НедействительныйПользователь); РезультатБлокировки = МодульОбсужденияСлужебный.ЗаблокироватьПользователяСистемыВзаимодействия(НедействительныйПользователь);
Если РезультатБлокировки <> Неопределено Тогда Если РезультатБлокировки <> Неопределено Тогда
Результат = КраткоеПредставлениеОшибки(РезультатБлокировки); Результат = КраткоеПредставлениеОшибки(РезультатБлокировки);
ЗаписьЖурналаРегистрации(НСтр("ru='Обсуждения.Блокировка недействительных пользователей'", ОбщегоНазначения.КодОсновногоЯзыка()), ЗаписьЖурналаРегистрации(НСтр("ru='Обсуждения.Блокировка недействительных пользователей'", ОбщегоНазначения.КодОсновногоЯзыка()),
@@ -83,8 +83,16 @@
ТаблицаПараметрыШаблона = Запрос.Выполнить().Выгрузить(); ТаблицаПараметрыШаблона = Запрос.Выполнить().Выгрузить();
Для каждого Реквизит Из ТаблицаПараметрыШаблона Цикл Для каждого Реквизит Из ТаблицаПараметрыШаблона Цикл
ОписаниеТипа = Реквизит.Тип.Получить();
ДобавляемыеРеквизиты.Добавить(Новый РеквизитФормы(Реквизит.Имя, ОписаниеТипа,, Реквизит.Представление)); ОписниеТипПараметра = ОбщегоНазначения.ОписаниеТипаСтрока(250);
Если ТипЗнч(Реквизит.Тип) = Тип("ХранилищеЗначения") Тогда
ТипПараметраЗначение = Реквизит.Тип.Получить();
Если ТипЗнч(ТипПараметраЗначение) = Тип("ОписаниеТипов") Тогда
ОписниеТипПараметра = ТипПараметраЗначение;
КонецЕсли;
КонецЕсли;
ДобавляемыеРеквизиты.Добавить(Новый РеквизитФормы(Реквизит.Имя, ОписниеТипПараметра,, Реквизит.Представление));
КонецЦикла; КонецЦикла;
КонецЕсли; КонецЕсли;
@@ -892,6 +892,16 @@
Если СтрНачинаетсяС(ПолноеИмяОбъекта, "Документ") Тогда Если СтрНачинаетсяС(ПолноеИмяОбъекта, "Документ") Тогда
НовыйОбъект = Менеджер.СоздатьДокумент(); НовыйОбъект = Менеджер.СоздатьДокумент();
ИначеЕсли СтрНачинаетсяС(ПолноеИмяОбъекта, "БизнесПроцесс") Тогда
НовыйОбъект = Менеджер.СоздатьБизнесПроцесс();
ИначеЕсли СтрНачинаетсяС(ПолноеИмяОбъекта, "Задача") Тогда
НовыйОбъект = Менеджер.СоздатьЗадачу();
ИначеЕсли СтрНачинаетсяС(ПолноеИмяОбъекта, "ПланСчетов") Тогда
НовыйОбъект = Менеджер.СоздатьСчет();
ИначеЕсли СтрНачинаетсяС(ПолноеИмяОбъекта, "ПланВидовРасчета") Тогда
НовыйОбъект = Менеджер.СоздатьВидРасчета();
ИначеЕсли СтрНачинаетсяС(ПолноеИмяОбъекта, "ПланОбмена") Тогда
НовыйОбъект = Менеджер.СоздатьУзел();
Иначе Иначе
НовыйОбъект = Менеджер.СоздатьЭлемент(); НовыйОбъект = Менеджер.СоздатьЭлемент();
КонецЕсли; КонецЕсли;
@@ -800,6 +800,7 @@
|ГДЕ |ГДЕ
| ДополнительныеРеквизитыИСведения.Имя ПОДОБНО """" | ДополнительныеРеквизитыИСведения.Имя ПОДОБНО """"
| ИЛИ ДополнительныеРеквизитыИСведения.Имя ПОДОБНО ""%-%"" | ИЛИ ДополнительныеРеквизитыИСведения.Имя ПОДОБНО ""%-%""
| ИЛИ ДополнительныеРеквизитыИСведения.Имя ПОДОБНО ""%«%""
| |
|ОБЪЕДИНИТЬ ВСЕ |ОБЪЕДИНИТЬ ВСЕ
| |
@@ -30,7 +30,8 @@
Элементы.СписокРасширенийБезопасныйРежимФлаг.ТолькоПросмотр = Истина; Элементы.СписокРасширенийБезопасныйРежимФлаг.ТолькоПросмотр = Истина;
КонецЕсли; КонецЕсли;
Если СтандартныеПодсистемыСервер.ЭтоБазоваяВерсияКонфигурации() Тогда Если СтандартныеПодсистемыСервер.ЭтоБазоваяВерсияКонфигурации()
И Не СтандартныеПодсистемыСервер.ДоступнаУстановкаПодписанныхРасширенийВБазовойВерсии() Тогда
ВызватьИсключение НСтр("ru = 'Расширения недоступны в базовой версии программы.'"); ВызватьИсключение НСтр("ru = 'Расширения недоступны в базовой версии программы.'");
КонецЕсли; КонецЕсли;
@@ -19,7 +19,7 @@
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
Если СтандартныеПодсистемыСервер.ЭтоБазоваяВерсияКонфигурации() Тогда Если СтандартныеПодсистемыСервер.ЭтоБазоваяВерсияКонфигурации() Тогда
ДоступнаУстановкаПатчей = ОбновлениеКонфигурации.ДоступнаУстановкаПатчейВБазовойВерсии(); ДоступнаУстановкаПатчей = СтандартныеПодсистемыСервер.ДоступнаУстановкаПодписанныхРасширенийВБазовойВерсии();
Если Не ДоступнаУстановкаПатчей Тогда Если Не ДоступнаУстановкаПатчей Тогда
ТекстСообщения = НСтр("ru = 'Для установки исправлений (патчей) рекомендуется обновить платформу 1С:Предприятие на версию: ТекстСообщения = НСтр("ru = 'Для установки исправлений (патчей) рекомендуется обновить платформу 1С:Предприятие на версию:
| • 8.3.15.1958 или выше | • 8.3.15.1958 или выше
@@ -513,7 +513,7 @@
Письмо.Ответственный = Пользователи.ТекущийПользователь(); Письмо.Ответственный = Пользователи.ТекущийПользователь();
Письмо.Дата = ТекущаяДатаСеанса(); Письмо.Дата = ТекущаяДатаСеанса();
Письмо.Важность = Перечисления.ВариантыВажностиВзаимодействия.Обычная; Письмо.Важность = Перечисления.ВариантыВажностиВзаимодействия.Обычная;
Письмо.Кодировка = КодировкаТекста.UTF8; Письмо.Кодировка = "UTF-8";
Письмо.ОтправительПредставление = Строка(УчетнаяЗапись); Письмо.ОтправительПредставление = Строка(УчетнаяЗапись);
Если ПисьмоHTML Тогда Если ПисьмоHTML Тогда
@@ -8619,6 +8619,7 @@
Возврат Ложь; Возврат Ложь;
КонецЕсли; КонецЕсли;
УстановитьПривилегированныйРежим(Истина);
СписокЗаданий = РегламентныеЗаданияСервер.НайтиЗадания(Новый Структура("Метаданные", СписокЗаданий = РегламентныеЗаданияСервер.НайтиЗадания(Новый Структура("Метаданные",
Метаданные.РегламентныеЗадания.ПолучениеИОтправкаЭлектронныхПисем)); Метаданные.РегламентныеЗадания.ПолучениеИОтправкаЭлектронныхПисем));
@@ -1408,9 +1408,14 @@
Если МетаданныеСсылки = Неопределено Тогда Если МетаданныеСсылки = Неопределено Тогда
Возврат Неопределено; Возврат Неопределено;
КонецЕсли; КонецЕсли;
Таблица = МетаданныеСсылки.ПолноеИмя();
ПоляШапки = ДатыЗапретаИзмененияСлужебныйПовтИсп.ПоляШапки(Таблица);
Если Не ПоляШапки.Свойство(ПолеПути) Тогда
Возврат Неопределено;
КонецЕсли;
Запрос = Новый Запрос; Запрос = Новый Запрос;
Запрос.Текст = СтрЗаменить(ТекстЗапроса, "ПолеПути", ПолеПути); Запрос.Текст = СтрЗаменить(ТекстЗапроса, "ПолеПути", ПолеПути);
Запрос.Текст = СтрЗаменить(Запрос.Текст, "&ТекущаяТаблица", МетаданныеСсылки.ПолноеИмя()); Запрос.Текст = СтрЗаменить(Запрос.Текст, "&ТекущаяТаблица", Таблица);
Запрос.УстановитьПараметр("ТекущаяСсылка", ТекущаяСсылка); Запрос.УстановитьПараметр("ТекущаяСсылка", ТекущаяСсылка);
Выборка = Запрос.Выполнить().Выбрать(); Выборка = Запрос.Выполнить().Выбрать();
@@ -20,4 +20,28 @@
КонецФункции КонецФункции
// Возвращает поля шапки объекта метаданных.
//
// Параметры:
// Таблица - Строка - полное имя объекта метаданных.
//
// Возвращаемое значение:
// ФиксированнаяСтруктура:
// * Ключ - Строка - имя поля.
// * Значение - Неопределено.
//
Функция ПоляШапки(Таблица) Экспорт
СхемаЗапроса = Новый СхемаЗапроса;
СхемаЗапроса.УстановитьТекстЗапроса("ВЫБРАТЬ * ИЗ " + Таблица);
ПоляШапки = Новый Структура;
Для Каждого Колонка Из СхемаЗапроса.ПакетЗапросов[0].Колонки Цикл
ПоляШапки.Вставить(Колонка.Псевдоним);
КонецЦикла;
Возврат Новый ФиксированнаяСтруктура(ПоляШапки);
КонецФункции
#КонецОбласти #КонецОбласти
@@ -982,10 +982,14 @@
НаименованиеФоновогоЗадания = ?(ПустаяСтрока(ПараметрыВыполнения.НаименованиеФоновогоЗадания), НаименованиеФоновогоЗадания = ?(ПустаяСтрока(ПараметрыВыполнения.НаименованиеФоновогоЗадания),
ИмяПроцедуры, ПараметрыВыполнения.НаименованиеФоновогоЗадания); ИмяПроцедуры, ПараметрыВыполнения.НаименованиеФоновогоЗадания);
УстановитьПривилегированныйРежим(Истина);
ПараметрыКлиента = ПараметрыСеанса.ПараметрыКлиентаНаСервере;
УстановитьПривилегированныйРежим(Ложь);
ВсеПараметры = Новый Структура; ВсеПараметры = Новый Структура;
ВсеПараметры.Вставить("ИмяПроцедуры", ИмяПроцедуры); ВсеПараметры.Вставить("ИмяПроцедуры", ИмяПроцедуры);
ВсеПараметры.Вставить("ПараметрыПроцедуры", ПараметрыПроцедуры); ВсеПараметры.Вставить("ПараметрыПроцедуры", ПараметрыПроцедуры);
ВсеПараметры.Вставить("ПараметрыКлиентаНаСервере", СтандартныеПодсистемыСервер.ПараметрыКлиентаНаСервере()); ВсеПараметры.Вставить("ПараметрыКлиентаНаСервере", ПараметрыКлиента);
ВсеПараметры.Вставить("ПараметрыВыполнения", ПараметрыВыполнения); ВсеПараметры.Вставить("ПараметрыВыполнения", ПараметрыВыполнения);
ВсеПараметры.Вставить("БезопасныйРежим", БезопасныйРежим); ВсеПараметры.Вставить("БезопасныйРежим", БезопасныйРежим);
@@ -3751,7 +3751,7 @@
Возврат ПараметрыКонвертации; Возврат ПараметрыКонвертации;
КонецФункции КонецФункции
// Вызывается из правил // АПК:299-выкл - Вызывается из правил
Процедура ИнициализироватьРасширениеПравилаКонвертацииОбъекта(ПравилоКонвертации, Знач ПространствоИмен) Экспорт Процедура ИнициализироватьРасширениеПравилаКонвертацииОбъекта(ПравилоКонвертации, Знач ПространствоИмен) Экспорт
СтруктураРасширенияПравилаКонвертацииОбъекта = Новый Структура; СтруктураРасширенияПравилаКонвертацииОбъекта = Новый Структура;
@@ -3762,6 +3762,7 @@
ПравилоКонвертации.Расширения.Вставить(ПространствоИмен, СтруктураРасширенияПравилаКонвертацииОбъекта); ПравилоКонвертации.Расширения.Вставить(ПространствоИмен, СтруктураРасширенияПравилаКонвертацииОбъекта);
КонецПроцедуры КонецПроцедуры
// АПК:299-вкл
#КонецОбласти #КонецОбласти
@@ -41,7 +41,7 @@
Процедура ПриДобавленииПодсистемы(Описание) Экспорт Процедура ПриДобавленииПодсистемы(Описание) Экспорт
Описание.Имя = "СтандартныеПодсистемы"; Описание.Имя = "СтандартныеПодсистемы";
Описание.Версия = "3.1.3.289"; Описание.Версия = "3.1.3.303";
Описание.ИдентификаторИнтернетПоддержки = "SSL"; Описание.ИдентификаторИнтернетПоддержки = "SSL";
Описание.РежимВыполненияОтложенныхОбработчиков = "Параллельно"; Описание.РежимВыполненияОтложенныхОбработчиков = "Параллельно";
Описание.ПараллельноеОтложенноеОбновлениеСВерсии = "2.3.3.0"; Описание.ПараллельноеОтложенноеОбновлениеСВерсии = "2.3.3.0";
@@ -503,26 +503,6 @@
#Область СлужебныйПрограммныйИнтерфейс #Область СлужебныйПрограммныйИнтерфейс
Функция ДоступнаУстановкаПатчейВБазовойВерсии() Экспорт
ДоступнаУстановкаПатчей = Истина;
СистемнаяИнформация = Новый СистемнаяИнформация;
ВерсияПлатформы = СистемнаяИнформация.ВерсияПриложения;
ВерсияПлатформыБезНомераСборки = ОбщегоНазначенияКлиентСервер.ВерсияКонфигурацииБезНомераСборки(ВерсияПлатформы);
Если ОбщегоНазначенияКлиентСервер.СравнитьВерсииБезНомераСборки(ВерсияПлатформыБезНомераСборки, "8.3.15") < 0
Или (ВерсияПлатформыБезНомераСборки = "8.3.15"
И ОбщегоНазначенияКлиентСервер.СравнитьВерсии(ВерсияПлатформы, "8.3.15.1958") < 0)
Или (ВерсияПлатформыБезНомераСборки = "8.3.16"
И ОбщегоНазначенияКлиентСервер.СравнитьВерсии(ВерсияПлатформы, "8.3.16.1476") < 0)
Или (ВерсияПлатформыБезНомераСборки = "8.3.17"
И ОбщегоНазначенияКлиентСервер.СравнитьВерсии(ВерсияПлатформы, "8.3.17.1480") < 0) Тогда
ДоступнаУстановкаПатчей = Ложь;
КонецЕсли;
Возврат ДоступнаУстановкаПатчей;
КонецФункции
Процедура ПроверитьНаличиеУстаревшихИсправлений() Экспорт Процедура ПроверитьНаличиеУстаревшихИсправлений() Экспорт
Результат = ИсправленияИзменены(Истина); Результат = ИсправленияИзменены(Истина);
Если Результат.ЕстьИзменения Тогда Если Результат.ЕстьИзменения Тогда
@@ -139,7 +139,7 @@
Процедура УдалитьИсправленияИзСкрипта() Экспорт Процедура УдалитьИсправленияИзСкрипта() Экспорт
Если СтандартныеПодсистемыСервер.ЭтоБазоваяВерсияКонфигурации() Если СтандартныеПодсистемыСервер.ЭтоБазоваяВерсияКонфигурации()
И Не ОбновлениеКонфигурации.ДоступнаУстановкаПатчейВБазовойВерсии() Тогда И Не СтандартныеПодсистемыСервер.ДоступнаУстановкаПодписанныхРасширенийВБазовойВерсии() Тогда
ТекстСообщения = НСтр("ru = 'Удаление исправлений до запуска обновления программы не выполнялось. ТекстСообщения = НСтр("ru = 'Удаление исправлений до запуска обновления программы не выполнялось.
|На используемой версии платформы работа с патчами не поддерживается.'"); |На используемой версии платформы работа с патчами не поддерживается.'");
ЗаписьЖурналаРегистрации(ОбновлениеКонфигурации.СобытиеЖурналаРегистрации(), УровеньЖурналаРегистрации.Информация,,, ТекстСообщения); ЗаписьЖурналаРегистрации(ОбновлениеКонфигурации.СобытиеЖурналаРегистрации(), УровеньЖурналаРегистрации.Информация,,, ТекстСообщения);
@@ -186,7 +186,7 @@
КонецПроцедуры КонецПроцедуры
// Блокирует бользователя в системе взаимодействия. // Блокирует пользователя в системе взаимодействия.
// Если при блокировке были ошибки, то возвращается ИнформацияОбОшибке. // Если при блокировке были ошибки, то возвращается ИнформацияОбОшибке.
// Если пользователь заблокирован, то возвращается Неопределено. // Если пользователь заблокирован, то возвращается Неопределено.
// //
@@ -207,12 +207,14 @@
Возврат Результат; Возврат Результат;
КонецЕсли; КонецЕсли;
// АПК:280-выкл - При отсутствии пользователя система взаимодействия может выбросить исключение.
Попытка Попытка
ИдентификаторПользователяСВ = СистемаВзаимодействия.ПолучитьИдентификаторПользователя( ИдентификаторПользователяСВ = СистемаВзаимодействия.ПолучитьИдентификаторПользователя(
ИдентификаторПользователяИБ); ИдентификаторПользователяИБ);
Исключение Исключение
// Если выброшено исключение, то пользователя системы взаимодействия не удалось найти. // Если выброшено исключение, то пользователя системы взаимодействия не удалось найти.
КонецПопытки; КонецПопытки;
// АПК:280-вкл
Если ИдентификаторПользователяСВ = Неопределено Тогда Если ИдентификаторПользователяСВ = Неопределено Тогда
Возврат Результат; Возврат Результат;
@@ -291,18 +293,17 @@
Если ОбъектыСОшибками > 0 Тогда Если ОбъектыСОшибками > 0 Тогда
ОшибкаЖураналаРегистрации = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( ОшибкаЖурналаРегистрации = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
НСтр("ru='Не удалось заблокировать пользователей в системе взаимодействия: %1. НСтр("ru='Не удалось заблокировать пользователей в системе взаимодействия: %1.
|Возможно, система взаимодействия временно недоступна. |Возможно, система взаимодействия временно недоступна.
|Для блокировки нажмите ""Заблокировать недействительных в системе взаимодействия"" в подменю Еще списка пользователей. |Для блокировки нажмите ""Заблокировать недействительных в системе взаимодействия"" в подменю Еще списка пользователей.'") + Символы.ПС,
|'"),
ОбъектыСОшибками); ОбъектыСОшибками);
ЗаписьЖурналаРегистрации( ЗаписьЖурналаРегистрации(
СобытиеЖурналаРегистрации(НСтр("ru='Блокировка недействительных пользователей'", ОбщегоНазначения.КодОсновногоЯзыка())), СобытиеЖурналаРегистрации(НСтр("ru='Блокировка недействительных пользователей'", ОбщегоНазначения.КодОсновногоЯзыка())),
УровеньЖурналаРегистрации.Предупреждение,,, УровеньЖурналаРегистрации.Предупреждение,,,
СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ОшибкаЖураналаРегистрации, ОбъектыСОшибками) + СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ОшибкаЖурналаРегистрации, ОбъектыСОшибками)
Символы.ПС + ТекстПоследнейОшибки); + Символы.ПС + ТекстПоследнейОшибки);
КонецЕсли; КонецЕсли;
@@ -5456,9 +5456,12 @@
Процедура СохранитьПерсональныеНастройки(Настройки) Экспорт Процедура СохранитьПерсональныеНастройки(Настройки) Экспорт
Если Настройки.Свойство("НапоминатьОбУстановкеРасширенияРаботыСФайлами") Тогда Если Настройки.Свойство("НапоминатьОбУстановкеРасширенияРаботыСФайлами") Тогда
ПараметрыКлиентаНаСервере = ПараметрыСеанса.ПараметрыКлиентаНаСервере; Если ЭтоВебКлиент() Тогда
Если ПараметрыКлиентаНаСервере.Получить("ЭтоВебКлиент") Тогда ИдентификаторКлиента = ПараметрыСеанса.ПараметрыКлиентаНаСервере.Получить("ИдентификаторКлиента");
ИдентификаторКлиента = ПараметрыКлиентаНаСервере.Получить("ИдентификаторКлиента"); Если ИдентификаторКлиента = Неопределено Тогда
СистемнаяИнформация = Новый СистемнаяИнформация;
ИдентификаторКлиента = СистемнаяИнформация.ИдентификаторКлиента;
КонецЕсли;
ХранилищеОбщихНастроекСохранить( ХранилищеОбщихНастроекСохранить(
"НастройкиПрограммы/ПредлагатьУстановкуРасширенияРаботыСФайлами", "НастройкиПрограммы/ПредлагатьУстановкуРасширенияРаботыСФайлами",
ИдентификаторКлиента, Настройки.НапоминатьОбУстановкеРасширенияРаботыСФайлами); ИдентификаторКлиента, Настройки.НапоминатьОбУстановкеРасширенияРаботыСФайлами);
@@ -51,7 +51,7 @@
ВыражениеВычисленияЗначениеПометки = ОписаниеКоманды.ЗначениеПометки; ВыражениеВычисленияЗначениеПометки = ОписаниеКоманды.ЗначениеПометки;
КонецЕсли; КонецЕсли;
Форма.Элементы[ОписаниеКоманды.ИмяВФорме].Пометка = Вычислить(ВыражениеВычисленияЗначениеПометки); Форма.Элементы[ОписаниеКоманды.ИмяВФорме].Пометка = Вычислить(ВыражениеВычисленияЗначениеПометки); // АПК:488 Исполняемый код безопасен.
КонецЕсли; КонецЕсли;
КонецЦикла; КонецЦикла;
@@ -6104,7 +6104,8 @@
Записать = Истина; Записать = Истина;
КонецЕсли; КонецЕсли;
ИспользуемыйКлиент = СтандартныеПодсистемыСервер.ПараметрыКлиентаНаСервере().Получить("ИспользуемыйКлиент"); ИспользуемыйКлиент = СтандартныеПодсистемыСервер.ПараметрыКлиентаНаСервере().Получить("ИспользуемыйКлиент");
Если СведенияОПользователе.ПоследнийИспользуемыйКлиент <> ИспользуемыйКлиент Тогда Если ИспользуемыйКлиент <> Неопределено
И СведенияОПользователе.ПоследнийИспользуемыйКлиент <> ИспользуемыйКлиент Тогда
СведенияОПользователе.ПоследнийИспользуемыйКлиент = ИспользуемыйКлиент; СведенияОПользователе.ПоследнийИспользуемыйКлиент = ИспользуемыйКлиент;
Записать = Истина; Записать = Истина;
КонецЕсли; КонецЕсли;
@@ -99,12 +99,11 @@
НовыеПараметры = Новый Структура; НовыеПараметры = Новый Структура;
ДобавитьПоправкиКВремени(НовыеПараметры, Параметры); ДобавитьПоправкиКВремени(НовыеПараметры, Параметры);
ОбработатьПараметрыКлиентаНаСервере(Параметры);
ЗапомнитьВременныеПараметры(Параметры); ЗапомнитьВременныеПараметры(Параметры);
ОбщегоНазначенияКлиентСервер.ДополнитьСтруктуру(Параметры, НовыеПараметры); ОбщегоНазначенияКлиентСервер.ДополнитьСтруктуру(Параметры, НовыеПараметры);
ОбработатьПараметрыКлиентаНаСервере(Параметры);
Если Параметры.ПолученныеПараметрыКлиента <> Неопределено Тогда Если Параметры.ПолученныеПараметрыКлиента <> Неопределено Тогда
Если НЕ Параметры.Свойство("ПропуститьОчисткуСкрытияРабочегоСтола") Тогда Если НЕ Параметры.Свойство("ПропуститьОчисткуСкрытияРабочегоСтола") Тогда
// Обновить состояние скрытия рабочего стола, если при предыдущем // Обновить состояние скрытия рабочего стола, если при предыдущем
@@ -138,6 +137,7 @@
Параметры = Новый Структура; Параметры = Новый Структура;
ДобавитьПоправкиКВремени(Параметры, СвойстваКлиента); ДобавитьПоправкиКВремени(Параметры, СвойстваКлиента);
ОбработатьПараметрыКлиентаНаСервере(СвойстваКлиента);
ИнтеграцияПодсистемБСП.ПриДобавленииПараметровРаботыКлиента(Параметры); ИнтеграцияПодсистемБСП.ПриДобавленииПараметровРаботыКлиента(Параметры);
@@ -165,8 +165,9 @@
// скрывает рабочий стол на сервере, если право есть, // скрывает рабочий стол на сервере, если право есть,
// в противном случае вызывает исключение. // в противном случае вызывает исключение.
// //
Процедура ПроверитьПравоОтключитьЛогикуНачалаРаботыСистемы() Экспорт Процедура ПроверитьПравоОтключитьЛогикуНачалаРаботыСистемы(СвойстваКлиента) Экспорт
ОбработатьПараметрыКлиентаНаСервере(СвойстваКлиента);
СкрытьРабочийСтолПриНачалеРаботыСистемы(Истина); СкрытьРабочийСтолПриНачалеРаботыСистемы(Истина);
ВходВОбластьДанных = ОбщегоНазначения.РазделениеВключено() ВходВОбластьДанных = ОбщегоНазначения.РазделениеВключено()
@@ -317,9 +318,10 @@
ПривилегированныйРежимУстановленПриЗапуске = ПривилегированныйРежим(); ПривилегированныйРежимУстановленПриЗапуске = ПривилегированныйРежим();
УстановитьПривилегированныйРежим(Истина); УстановитьПривилегированныйРежим(Истина);
Если ПараметрыСеанса.ПараметрыКлиентаНаСервере.Количество() = 0 Тогда Если ПараметрыСеанса.ПараметрыКлиентаНаСервере.Получить("ПервыйСерверныйВызовВыполнен") <> Истина Тогда
// Первый серверный вызов с клиента при запуске. // Первый серверный вызов с клиента при запуске.
ПараметрыКлиента = Новый Соответствие; ПараметрыКлиента = Новый Соответствие(ПараметрыСеанса.ПараметрыКлиентаНаСервере);
ПараметрыКлиента.Вставить("ПервыйСерверныйВызовВыполнен", Истина);
ПараметрыКлиента.Вставить("ПараметрЗапуска", Параметры.ПараметрЗапуска); ПараметрыКлиента.Вставить("ПараметрЗапуска", Параметры.ПараметрЗапуска);
ПараметрыКлиента.Вставить("СтрокаСоединенияИнформационнойБазы", Параметры.СтрокаСоединенияИнформационнойБазы); ПараметрыКлиента.Вставить("СтрокаСоединенияИнформационнойБазы", Параметры.СтрокаСоединенияИнформационнойБазы);
ПараметрыКлиента.Вставить("ПривилегированныйРежимУстановленПриЗапуске", ПривилегированныйРежимУстановленПриЗапуске); ПараметрыКлиента.Вставить("ПривилегированныйРежимУстановленПриЗапуске", ПривилегированныйРежимУстановленПриЗапуске);
@@ -277,7 +277,10 @@
Если ОтключенаЛогикаНачалаРаботыСистемы() Тогда Если ОтключенаЛогикаНачалаРаботыСистемы() Тогда
Попытка Попытка
СтандартныеПодсистемыВызовСервера.ПроверитьПравоОтключитьЛогикуНачалаРаботыСистемы(); // Проверка права и заполнение параметров работы клиента на сервере.
СвойстваКлиента = Новый Структура;
ЗаполнитьПараметрыРаботыКлиентаНаСервере(СвойстваКлиента);
СтандартныеПодсистемыВызовСервера.ПроверитьПравоОтключитьЛогикуНачалаРаботыСистемы(СвойстваКлиента);
Исключение Исключение
ИнформацияОбОшибке = ИнформацияОбОшибке(); ИнформацияОбОшибке = ИнформацияОбОшибке();
ПользователиСлужебныйКлиент.УстановитьИнтерактивнуюОбработкуПриОшибкеНедостаточноПравДляВходаВПрограмму( ПользователиСлужебныйКлиент.УстановитьИнтерактивнуюОбработкуПриОшибкеНедостаточноПравДляВходаВПрограмму(
@@ -290,6 +293,17 @@
Возврат; Возврат;
КонецЕсли; КонецЕсли;
// Стандартный первый серверный вызов с целью предварительного
// заполнения параметров работы клиента на сервере.
Попытка
ОбщегоНазначенияКлиент.ПодсистемаСуществует("СтандартныеПодсистемы.БазоваяФункциональность");
Исключение
ОбработатьОшибкуПередНачаломРаботыСистемы(Параметры, ИнформацияОбОшибке(), Истина);
КонецПопытки;
Если ИнтерактивнаяОбработкаПередНачаломРаботыСистемы(Параметры) Тогда
Возврат;
КонецЕсли;
ВыполнитьОбработкуОповещения(Параметры.ОбработкаПродолжения); ВыполнитьОбработкуОповещения(Параметры.ОбработкаПродолжения);
КонецПроцедуры КонецПроцедуры
@@ -1923,6 +1937,217 @@
КонецПроцедуры КонецПроцедуры
#Область ПараметрыРаботыКлиентаНаСервере
Процедура ЗаполнитьПараметрыРаботыКлиентаНаСервере(Параметры) Экспорт
Параметры.Вставить("ПараметрЗапуска", ПараметрЗапуска);
Параметры.Вставить("СтрокаСоединенияИнформационнойБазы", СтрокаСоединенияИнформационнойБазы());
Параметры.Вставить("ЭтоВебКлиент", ЭтоВебКлиент());
Параметры.Вставить("ЭтоLinuxКлиент", ОбщегоНазначенияКлиент.ЭтоLinuxКлиент());
Параметры.Вставить("ЭтоMacOSКлиент", ОбщегоНазначенияКлиент.ЭтоMacOSКлиент());
Параметры.Вставить("ЭтоWindowsКлиент", ОбщегоНазначенияКлиент.ЭтоWindowsКлиент());
Параметры.Вставить("ЭтоМобильныйКлиент", ЭтоМобильныйКлиент());
Параметры.Вставить("ИспользуемыйКлиент", ИспользуемыйКлиент());
Параметры.Вставить("КаталогПрограммы", ТекущийКаталогПрограммы());
Параметры.Вставить("ИдентификаторКлиента", ИдентификаторКлиента());
Параметры.Вставить("СкрытьРабочийСтолПриНачалеРаботыСистемы", Ложь);
Параметры.Вставить("ОперативнаяПамять", ОбщегоНазначенияКлиент.ОперативнаяПамятьДоступнаяКлиентскомуПриложению());
Параметры.Вставить("РазрешениеОсновногоЭкрана", РазрешениеОсновногоЭкрана());
// Установка даты клиента непосредственно перед вызовом, чтобы уменьшить погрешность.
// АПК:143-выкл - №643.2.1 Требуется ТекущаяДата для расчета ПоправкаКВремениСеанса.
Параметры.Вставить("ТекущаяДатаНаКлиенте", ТекущаяДата());
// АПК:143-вкл.
Параметры.Вставить("ТекущаяУниверсальнаяДатаВМиллисекундахНаКлиенте", ТекущаяУниверсальнаяДатаВМиллисекундах());
КонецПроцедуры
Функция ИспользуемыйКлиент()
ИспользуемыйКлиент = "";
#Если ТонкийКлиент Тогда
ИспользуемыйКлиент = "ТонкийКлиент";
#ИначеЕсли ТолстыйКлиентУправляемоеПриложение Тогда
ИспользуемыйКлиент = "ТолстыйКлиентУправляемоеПриложение";
#ИначеЕсли ТолстыйКлиентОбычноеПриложение Тогда
ИспользуемыйКлиент = "ТолстыйКлиентОбычноеПриложение";
#ИначеЕсли ВебКлиент Тогда
ОписаниеБраузера = ТекущийБраузер();
Если ПустаяСтрока(ОписаниеБраузера.Версия) Тогда
ИспользуемыйКлиент = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку("ВебКлиент.%1", ОписаниеБраузера.Название);
Иначе
ИспользуемыйКлиент = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку("ВебКлиент.%1.%2", ОписаниеБраузера.Название, СтрРазделить(ОписаниеБраузера.Версия, ".")[0]);
КонецЕсли;
#КонецЕсли
Возврат ИспользуемыйКлиент;
КонецФункции
Функция ТекущийБраузер()
Результат = Новый Структура("Название,Версия", "Другой", "");
СистемнаяИнформация = Новый СистемнаяИнформация;
Строка = СистемнаяИнформация.ИнформацияПрограммыПросмотра;
Строка = СтрЗаменить(Строка, ",", ";");
// Opera
Идентификатор = "Opera";
Позиция = СтрНайти(Строка, Идентификатор, НаправлениеПоиска.СКонца);
Если Позиция > 0 Тогда
Строка = Сред(Строка, Позиция + СтрДлина(Идентификатор));
Результат.Название = "Opera";
Идентификатор = "Version/";
Позиция = СтрНайти(Строка, Идентификатор);
Если Позиция > 0 Тогда
Строка = Сред(Строка, Позиция + СтрДлина(Идентификатор));
Результат.Версия = СокрЛП(Строка);
Иначе
Строка = СокрЛП(Строка);
Если СтрНачинаетсяС(Строка, "/") Тогда
Строка = Сред(Строка, 2);
КонецЕсли;
Результат.Версия = СокрЛ(Строка);
КонецЕсли;
Возврат Результат;
КонецЕсли;
// IE
Идентификатор = "MSIE"; // v11-
Позиция = СтрНайти(Строка, Идентификатор);
Если Позиция > 0 Тогда
Результат.Название = "IE";
Строка = Сред(Строка, Позиция + СтрДлина(Идентификатор));
Позиция = СтрНайти(Строка, ";");
Если Позиция > 0 Тогда
Строка = СокрЛ(Лев(Строка, Позиция - 1));
Результат.Версия = Строка;
КонецЕсли;
Возврат Результат;
КонецЕсли;
Идентификатор = "Trident"; // v11+
Позиция = СтрНайти(Строка, Идентификатор);
Если Позиция > 0 Тогда
Результат.Название = "IE";
Строка = Сред(Строка, Позиция + СтрДлина(Идентификатор));
Идентификатор = "rv:";
Позиция = СтрНайти(Строка, Идентификатор);
Если Позиция > 0 Тогда
Строка = Сред(Строка, Позиция + СтрДлина(Идентификатор));
Позиция = СтрНайти(Строка, ")");
Если Позиция > 0 Тогда
Строка = СокрЛ(Лев(Строка, Позиция - 1));
Результат.Версия = Строка;
КонецЕсли;
КонецЕсли;
Возврат Результат;
КонецЕсли;
// Chrome
Идентификатор = "Chrome/";
Позиция = СтрНайти(Строка, Идентификатор);
Если Позиция > 0 Тогда
Результат.Название = "Chrome";
Строка = Сред(Строка, Позиция + СтрДлина(Идентификатор));
Позиция = СтрНайти(Строка, " ");
Если Позиция > 0 Тогда
Строка = СокрЛ(Лев(Строка, Позиция - 1));
Результат.Версия = Строка;
КонецЕсли;
Возврат Результат;
КонецЕсли;
// Safari
Идентификатор = "Safari/";
Если СтрНайти(Строка, Идентификатор) > 0 Тогда
Результат.Название = "Safari";
Идентификатор = "Version/";
Позиция = СтрНайти(Строка, Идентификатор);
Если Позиция > 0 Тогда
Строка = Сред(Строка, Позиция + СтрДлина(Идентификатор));
Позиция = СтрНайти(Строка, " ");
Если Позиция > 0 Тогда
Результат.Версия = СокрЛП(Лев(Строка, Позиция - 1));
КонецЕсли;
КонецЕсли;
Возврат Результат;
КонецЕсли;
// Firefox
Идентификатор = "Firefox/";
Позиция = СтрНайти(Строка, Идентификатор);
Если Позиция > 0 Тогда
Результат.Название = "Firefox";
Строка = Сред(Строка, Позиция + СтрДлина(Идентификатор));
Если Не ПустаяСтрока(Строка) Тогда
Результат.Версия = СокрЛП(Строка);
КонецЕсли;
Возврат Результат;
КонецЕсли;
Возврат Результат;
КонецФункции
Функция ТекущийКаталогПрограммы()
#Если ВебКлиент Или МобильныйКлиент Тогда
КаталогПрограммы = "";
#Иначе
КаталогПрограммы = КаталогПрограммы();
#КонецЕсли
Возврат КаталогПрограммы;
КонецФункции
Функция РазрешениеОсновногоЭкрана()
ИнформациюЭкрановКлиента = ПолучитьИнформациюЭкрановКлиента();
Если ИнформациюЭкрановКлиента.Количество() > 0 Тогда
DPI = ИнформациюЭкрановКлиента[0].DPI; // АПК:1353 - не требуется перевод на русский язык.
РазрешениеОсновногоЭкрана = ?(DPI = 0, 72, DPI);
Иначе
РазрешениеОсновногоЭкрана = 72;
КонецЕсли;
Возврат РазрешениеОсновногоЭкрана;
КонецФункции
Функция ИдентификаторКлиента()
СистемнаяИнформация = Новый СистемнаяИнформация;
Возврат СистемнаяИнформация.ИдентификаторКлиента;
КонецФункции
Функция ЭтоВебКлиент()
#Если ВебКлиент Тогда
Возврат Истина;
#Иначе
Возврат Ложь;
#КонецЕсли
КонецФункции
Функция ЭтоМобильныйКлиент()
#Если МобильныйКлиент Тогда
Возврат Истина;
#Иначе
Возврат Ложь;
#КонецЕсли
КонецФункции
#КонецОбласти
//////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////
// Вспомогательные процедуры и функции. // Вспомогательные процедуры и функции.
@@ -29,30 +29,14 @@
Параметры.Вставить("ПропуститьОчисткуСкрытияРабочегоСтола"); Параметры.Вставить("ПропуститьОчисткуСкрытияРабочегоСтола");
КонецЕсли; КонецЕсли;
Параметры.Вставить("ПараметрЗапуска", ПараметрЗапуска);
Параметры.Вставить("СтрокаСоединенияИнформационнойБазы", СтрокаСоединенияИнформационнойБазы());
Параметры.Вставить("ЭтоВебКлиент", ЭтоВебКлиент());
Параметры.Вставить("ЭтоLinuxКлиент", ОбщегоНазначенияКлиент.ЭтоLinuxКлиент());
Параметры.Вставить("ЭтоMacOSКлиент", ОбщегоНазначенияКлиент.ЭтоMacOSКлиент());
Параметры.Вставить("ЭтоWindowsКлиент", ОбщегоНазначенияКлиент.ЭтоWindowsКлиент());
Параметры.Вставить("ЭтоМобильныйКлиент", ЭтоМобильныйКлиент());
Параметры.Вставить("ИспользуемыйКлиент", ИспользуемыйКлиент());
Параметры.Вставить("КаталогПрограммы", ТекущийКаталогПрограммы());
Параметры.Вставить("ИдентификаторКлиента", ИдентификаторКлиента());
Параметры.Вставить("СкрытьРабочийСтолПриНачалеРаботыСистемы", Ложь);
Параметры.Вставить("ОперативнаяПамять", ОбщегоНазначенияКлиент.ОперативнаяПамятьДоступнаяКлиентскомуПриложению());
Параметры.Вставить("РазрешениеОсновногоЭкрана", РазрешениеОсновногоЭкрана());
// Установка даты клиента непосредственно перед вызовом, чтобы уменьшить погрешность.
Параметры.Вставить("ТекущаяДатаНаКлиенте", ТекущаяДата()); // Для расчета ПоправкаКВремениСеанса.
Параметры.Вставить("ТекущаяУниверсальнаяДатаВМиллисекундахНаКлиенте", ТекущаяУниверсальнаяДатаВМиллисекундах());
Если ПараметрыПриЗапускеПрограммы.Свойство("ОпцииИнтерфейса") Если ПараметрыПриЗапускеПрограммы.Свойство("ОпцииИнтерфейса")
И ТипЗнч(Параметры.ПолученныеПараметрыКлиента) = Тип("Структура") Тогда И ТипЗнч(Параметры.ПолученныеПараметрыКлиента) = Тип("Структура") Тогда
Параметры.ПолученныеПараметрыКлиента.Вставить("ОпцииИнтерфейса"); Параметры.ПолученныеПараметрыКлиента.Вставить("ОпцииИнтерфейса");
КонецЕсли; КонецЕсли;
СтандартныеПодсистемыКлиент.ЗаполнитьПараметрыРаботыКлиентаНаСервере(Параметры);
ПараметрыКлиента = СтандартныеПодсистемыВызовСервера.ПараметрыРаботыКлиентаПриЗапуске(Параметры); ПараметрыКлиента = СтандартныеПодсистемыВызовСервера.ПараметрыРаботыКлиентаПриЗапуске(Параметры);
Если ПараметрыПриЗапускеПрограммы.Свойство("ПолученныеПараметрыКлиента") Если ПараметрыПриЗапускеПрограммы.Свойство("ПолученныеПараметрыКлиента")
@@ -79,11 +63,7 @@
ПроверитьПорядокЗапускаПрограммыПриНачалеРаботыСистемы(); ПроверитьПорядокЗапускаПрограммыПриНачалеРаботыСистемы();
СвойстваКлиента = Новый Структура; СвойстваКлиента = Новый Структура;
СтандартныеПодсистемыКлиент.ЗаполнитьПараметрыРаботыКлиентаНаСервере(СвойстваКлиента);
// Установка даты клиента непосредственно перед вызовом, чтобы уменьшить погрешность.
СвойстваКлиента.Вставить("ТекущаяДатаНаКлиенте", ТекущаяДата()); // Для расчета ПоправкаКВремениСеанса.
СвойстваКлиента.Вставить("ТекущаяУниверсальнаяДатаВМиллисекундахНаКлиенте",
ТекущаяУниверсальнаяДатаВМиллисекундах());
Возврат СтандартныеПодсистемыВызовСервера.ПараметрыРаботыКлиента(СвойстваКлиента); Возврат СтандартныеПодсистемыВызовСервера.ПараметрыРаботыКлиента(СвойстваКлиента);
@@ -132,191 +112,4 @@
КонецФункции КонецФункции
#Область ПараметрыРаботыКлиентаПриЗапуске
Функция ИспользуемыйКлиент()
ИспользуемыйКлиент = "";
#Если ТонкийКлиент Тогда
ИспользуемыйКлиент = "ТонкийКлиент";
#ИначеЕсли ТолстыйКлиентУправляемоеПриложение Тогда
ИспользуемыйКлиент = "ТолстыйКлиентУправляемоеПриложение";
#ИначеЕсли ТолстыйКлиентОбычноеПриложение Тогда
ИспользуемыйКлиент = "ТолстыйКлиентОбычноеПриложение";
#ИначеЕсли ВебКлиент Тогда
ОписаниеБраузера = ТекущийБраузер();
Если ПустаяСтрока(ОписаниеБраузера.Версия) Тогда
ИспользуемыйКлиент = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку("ВебКлиент.%1", ОписаниеБраузера.Название);
Иначе
ИспользуемыйКлиент = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку("ВебКлиент.%1.%2", ОписаниеБраузера.Название, СтрРазделить(ОписаниеБраузера.Версия, ".")[0]);
КонецЕсли;
#КонецЕсли
Возврат ИспользуемыйКлиент;
КонецФункции
Функция ТекущийБраузер()
Результат = Новый Структура("Название,Версия", "Другой", "");
СистемнаяИнформация = Новый СистемнаяИнформация;
Строка = СистемнаяИнформация.ИнформацияПрограммыПросмотра;
Строка = СтрЗаменить(Строка, ",", ";");
// Opera
Идентификатор = "Opera";
Позиция = СтрНайти(Строка, Идентификатор, НаправлениеПоиска.СКонца);
Если Позиция > 0 Тогда
Строка = Сред(Строка, Позиция + СтрДлина(Идентификатор));
Результат.Название = "Opera";
Идентификатор = "Version/";
Позиция = СтрНайти(Строка, Идентификатор);
Если Позиция > 0 Тогда
Строка = Сред(Строка, Позиция + СтрДлина(Идентификатор));
Результат.Версия = СокрЛП(Строка);
Иначе
Строка = СокрЛП(Строка);
Если СтрНачинаетсяС(Строка, "/") Тогда
Строка = Сред(Строка, 2);
КонецЕсли;
Результат.Версия = СокрЛ(Строка);
КонецЕсли;
Возврат Результат;
КонецЕсли;
// IE
Идентификатор = "MSIE"; // v11-
Позиция = СтрНайти(Строка, Идентификатор);
Если Позиция > 0 Тогда
Результат.Название = "IE";
Строка = Сред(Строка, Позиция + СтрДлина(Идентификатор));
Позиция = СтрНайти(Строка, ";");
Если Позиция > 0 Тогда
Строка = СокрЛ(Лев(Строка, Позиция - 1));
Результат.Версия = Строка;
КонецЕсли;
Возврат Результат;
КонецЕсли;
Идентификатор = "Trident"; // v11+
Позиция = СтрНайти(Строка, Идентификатор);
Если Позиция > 0 Тогда
Результат.Название = "IE";
Строка = Сред(Строка, Позиция + СтрДлина(Идентификатор));
Идентификатор = "rv:";
Позиция = СтрНайти(Строка, Идентификатор);
Если Позиция > 0 Тогда
Строка = Сред(Строка, Позиция + СтрДлина(Идентификатор));
Позиция = СтрНайти(Строка, ")");
Если Позиция > 0 Тогда
Строка = СокрЛ(Лев(Строка, Позиция - 1));
Результат.Версия = Строка;
КонецЕсли;
КонецЕсли;
Возврат Результат;
КонецЕсли;
// Chrome
Идентификатор = "Chrome/";
Позиция = СтрНайти(Строка, Идентификатор);
Если Позиция > 0 Тогда
Результат.Название = "Chrome";
Строка = Сред(Строка, Позиция + СтрДлина(Идентификатор));
Позиция = СтрНайти(Строка, " ");
Если Позиция > 0 Тогда
Строка = СокрЛ(Лев(Строка, Позиция - 1));
Результат.Версия = Строка;
КонецЕсли;
Возврат Результат;
КонецЕсли;
// Safari
Идентификатор = "Safari/";
Если СтрНайти(Строка, Идентификатор) > 0 Тогда
Результат.Название = "Safari";
Идентификатор = "Version/";
Позиция = СтрНайти(Строка, Идентификатор);
Если Позиция > 0 Тогда
Строка = Сред(Строка, Позиция + СтрДлина(Идентификатор));
Позиция = СтрНайти(Строка, " ");
Если Позиция > 0 Тогда
Результат.Версия = СокрЛП(Лев(Строка, Позиция - 1));
КонецЕсли;
КонецЕсли;
Возврат Результат;
КонецЕсли;
// Firefox
Идентификатор = "Firefox/";
Позиция = СтрНайти(Строка, Идентификатор);
Если Позиция > 0 Тогда
Результат.Название = "Firefox";
Строка = Сред(Строка, Позиция + СтрДлина(Идентификатор));
Если Не ПустаяСтрока(Строка) Тогда
Результат.Версия = СокрЛП(Строка);
КонецЕсли;
Возврат Результат;
КонецЕсли;
Возврат Результат;
КонецФункции
Функция ТекущийКаталогПрограммы()
#Если ВебКлиент Или МобильныйКлиент Тогда
КаталогПрограммы = "";
#Иначе
КаталогПрограммы = КаталогПрограммы();
#КонецЕсли
Возврат КаталогПрограммы;
КонецФункции
Функция РазрешениеОсновногоЭкрана()
ИнформациюЭкрановКлиента = ПолучитьИнформациюЭкрановКлиента();
Если ИнформациюЭкрановКлиента.Количество() > 0 Тогда
DPI = ИнформациюЭкрановКлиента[0].DPI; // АПК:1353 - не требуется перевод на русский язык.
РазрешениеОсновногоЭкрана = ?(DPI = 0, 72, DPI);
Иначе
РазрешениеОсновногоЭкрана = 72;
КонецЕсли;
Возврат РазрешениеОсновногоЭкрана;
КонецФункции
Функция ИдентификаторКлиента()
СистемнаяИнформация = Новый СистемнаяИнформация;
Возврат СистемнаяИнформация.ИдентификаторКлиента;
КонецФункции
Функция ЭтоВебКлиент() Экспорт
#Если ВебКлиент Тогда
Возврат Истина;
#Иначе
Возврат Ложь;
#КонецЕсли
КонецФункции
Функция ЭтоМобильныйКлиент() Экспорт
#Если МобильныйКлиент Тогда
Возврат Истина;
#Иначе
Возврат Ложь;
#КонецЕсли
КонецФункции
#КонецОбласти
#КонецОбласти #КонецОбласти
@@ -29,10 +29,24 @@
// имена уже установленных параметров сеанса сохраняются в массиве УстановленныеПараметры. // имена уже установленных параметров сеанса сохраняются в массиве УстановленныеПараметры.
УстановленныеПараметры = Новый Массив; УстановленныеПараметры = Новый Массив;
Если ИменаПараметровСеанса = Неопределено Тогда Если ИменаПараметровСеанса <> Неопределено
ПараметрыСеанса.ПараметрыКлиентаНаСервере = Новый ФиксированноеСоответствие(Новый Соответствие); И ИменаПараметровСеанса.Найти("ПараметрыКлиентаНаСервере") <> Неопределено Тогда
Справочники.ВерсииРасширений.УстановкаПараметровСеанса(ИменаПараметровСеанса, УстановленныеПараметры);
ПараметрыСеанса.ПараметрыКлиентаНаСервере = Новый ФиксированноеСоответствие(Новый Соответствие);
УстановленныеПараметры.Добавить("ПараметрыКлиентаНаСервере");
Если ИменаПараметровСеанса.Количество() = 1 Тогда
Возврат УстановленныеПараметры;
КонецЕсли;
КонецЕсли;
Если ИменаПараметровСеанса = Неопределено Тогда
Если ПараметрыСеанса.ПараметрыКлиентаНаСервере.Количество() = 0 Тогда
НезаполненныеПараметрыКлиента = Новый Соответствие;
НезаполненныеПараметрыКлиента.Вставить("ПервыйСерверныйВызовВыполнен",
?(ТекущийРежимЗапуска() = Неопределено, Неопределено, Ложь));
ПараметрыСеанса.ПараметрыКлиентаНаСервере = Новый ФиксированноеСоответствие(НезаполненныеПараметрыКлиента);
КонецЕсли;
Справочники.ВерсииРасширений.УстановкаПараметровСеанса(ИменаПараметровСеанса, УстановленныеПараметры);
МультиязычностьСервер.УстановкаПараметровСеанса(ИменаПараметровСеанса, УстановленныеПараметры); МультиязычностьСервер.УстановкаПараметровСеанса(ИменаПараметровСеанса, УстановленныеПараметры);
// При установке соединения с информационной базой до вызова всех остальных обработчиков. // При установке соединения с информационной базой до вызова всех остальных обработчиков.
@@ -40,11 +54,6 @@
Возврат УстановленныеПараметры; Возврат УстановленныеПараметры;
КонецЕсли; КонецЕсли;
Если ИменаПараметровСеанса.Найти("ПараметрыКлиентаНаСервере") <> Неопределено Тогда
ПараметрыСеанса.ПараметрыКлиентаНаСервере = Новый ФиксированноеСоответствие(Новый Соответствие);
УстановленныеПараметры.Добавить("ПараметрыКлиентаНаСервере");
КонецЕсли;
Если ИменаПараметровСеанса.Найти("КлючДанныхПовторногоИспользования") <> Неопределено Тогда Если ИменаПараметровСеанса.Найти("КлючДанныхПовторногоИспользования") <> Неопределено Тогда
ПараметрыСеанса.КлючДанныхПовторногоИспользования = Новый УникальныйИдентификатор; ПараметрыСеанса.КлючДанныхПовторногоИспользования = Новый УникальныйИдентификатор;
УстановленныеПараметры.Добавить("КлючДанныхПовторногоИспользования"); УстановленныеПараметры.Добавить("КлючДанныхПовторногоИспользования");
@@ -475,10 +484,52 @@
ПараметрыКлиента = ПараметрыСеанса.ПараметрыКлиентаНаСервере; ПараметрыКлиента = ПараметрыСеанса.ПараметрыКлиентаНаСервере;
УстановитьПривилегированныйРежим(Ложь); УстановитьПривилегированныйРежим(Ложь);
Если ПараметрыКлиента.Количество() = 0 Если ТекущийРежимЗапуска() = Неопределено
И ТекущийРежимЗапуска() <> Неопределено Тогда И ПараметрыКлиента.Получить("ПервыйСерверныйВызовВыполнен") = Неопределено
Или ПараметрыКлиента.Получить("ПервыйСерверныйВызовВыполнен") = Истина Тогда
ВызватьИсключение НСтр("ru = 'Не заполнены параметры клиента на сервере.'"); Возврат ПараметрыКлиента;
КонецЕсли;
Если ТекущийРежимЗапуска() <> Неопределено Тогда
// Сброс клиентских кэшей для обращения к серверу при обращении к параметрам работы клиента,
// чтобы при этом перезаполнились параметры клиента на сервере.
ОбновитьПовторноИспользуемыеЗначения();
КонецЕсли;
ПриЗапуске = ПараметрыКлиента.Получить("ПервыйСерверныйВызовВыполнен") = Ложь;
Если ПриЗапуске Тогда
КомментарийДляЖурналаРегистрацииБезСтекаВызовов =
НСтр("ru = 'Недопустимое обращение к неинициализированным параметрам клиента на сервере.
|Вероятно, программный интерфейс БСП был преждевременно вызван до завершения
|инициализации в СтандартныеПодсистемыКлиент.ПередНачаломРаботыСистемы.'",
ОбщегоНазначения.КодОсновногоЯзыка());
Иначе
КомментарийДляЖурналаРегистрацииБезСтекаВызовов =
НСтр("ru = 'Недопустимое обращение к неинициализированным параметрам клиента на сервере.
|Вероятно, программный интерфейс БСП был вызван после некорректной очистки всех
|параметров сеанса без использования ОбщегоНазначения.ОчиститьПараметрыСеанса.'",
ОбщегоНазначения.КодОсновногоЯзыка());
КонецЕсли;
Попытка
ВызватьИсключение КомментарийДляЖурналаРегистрацииБезСтекаВызовов;
Исключение
ИнформацияОбОшибке = ИнформацияОбОшибке();
КонецПопытки;
КомментарийСоСтекомВызовов = ПодробноеПредставлениеОшибки(ИнформацияОбОшибке);
ИмяСобытия = НСтр("ru = 'Не заполнены параметры клиента на сервере'",
ОбщегоНазначения.КодОсновногоЯзыка());
ЗаписьЖурналаРегистрации(ИмяСобытия, УровеньЖурналаРегистрации.Ошибка,,, КомментарийСоСтекомВызовов);
Если Не ПриЗапуске Тогда
ТекстОшибки =
НСтр("ru = 'Не инициализированы параметры клиента на сервере.
|Для их инициализации повторите действие или перезапустите сеанс.'");
ВызватьИсключение ТекстОшибки;
КонецЕсли; КонецЕсли;
Возврат ПараметрыКлиента; Возврат ПараметрыКлиента;
@@ -1358,6 +1409,29 @@
КонецФункции КонецФункции
// Проверяет используемую версию платформы и возвращает признак
// возможности установки подписанных расширений в базовой версии конфигурации.
//
Функция ДоступнаУстановкаПодписанныхРасширенийВБазовойВерсии() Экспорт
ДоступнаУстановка = Истина;
СистемнаяИнформация = Новый СистемнаяИнформация;
ВерсияПлатформы = СистемнаяИнформация.ВерсияПриложения;
ВерсияПлатформыБезНомераСборки = ОбщегоНазначенияКлиентСервер.ВерсияКонфигурацииБезНомераСборки(ВерсияПлатформы);
Если ОбщегоНазначенияКлиентСервер.СравнитьВерсииБезНомераСборки(ВерсияПлатформыБезНомераСборки, "8.3.15") < 0
Или (ВерсияПлатформыБезНомераСборки = "8.3.15"
И ОбщегоНазначенияКлиентСервер.СравнитьВерсии(ВерсияПлатформы, "8.3.15.1958") < 0)
Или (ВерсияПлатформыБезНомераСборки = "8.3.16"
И ОбщегоНазначенияКлиентСервер.СравнитьВерсии(ВерсияПлатформы, "8.3.16.1476") < 0)
Или (ВерсияПлатформыБезНомераСборки = "8.3.17"
И ОбщегоНазначенияКлиентСервер.СравнитьВерсии(ВерсияПлатформы, "8.3.17.1480") < 0) Тогда
ДоступнаУстановка = Ложь;
КонецЕсли;
Возврат ДоступнаУстановка;
КонецФункции
//////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////
// Обработчики событий подсистем конфигурации. // Обработчики событий подсистем конфигурации.
@@ -223,17 +223,33 @@
ЗначенияСсылочныхТипов = СсылкиНаУдаляемыеОбъектыВРегистрах(Источник, МетаданныеИсточника); ЗначенияСсылочныхТипов = СсылкиНаУдаляемыеОбъектыВРегистрах(Источник, МетаданныеИсточника);
КонецЕсли; КонецЕсли;
ВремяСнятияБлокировки = ТекущаяДатаСеанса() - УдалениеПомеченныхОбъектовСлужебный.ВремяЖизниБлокировки();
Запрос = Новый Запрос("ВЫБРАТЬ Запрос = Новый Запрос("ВЫБРАТЬ
| УдаляемыеОбъекты.Объект КАК Ссылка, | УдаляемыеОбъекты.Объект КАК Ссылка,
| ПРЕДСТАВЛЕНИЕ(УдаляемыеОбъекты.Объект) КАК Представление | ПРЕДСТАВЛЕНИЕ(УдаляемыеОбъекты.Объект) КАК Представление
|ИЗ |ИЗ
| РегистрСведений.УдаляемыеОбъекты КАК УдаляемыеОбъекты | РегистрСведений.УдаляемыеОбъекты КАК УдаляемыеОбъекты
|ГДЕ |ГДЕ
| УдаляемыеОбъекты.Объект В (&УдаляемыеОбъекты)"); | УдаляемыеОбъекты.Объект В(&УдаляемыеОбъекты)
| И УдаляемыеОбъекты.ВремяБлокировки >= &ВремяСнятияБлокировки");
Запрос.УстановитьПараметр("УдаляемыеОбъекты", ЗначенияСсылочныхТипов); Запрос.УстановитьПараметр("УдаляемыеОбъекты", ЗначенияСсылочныхТипов);
РезультатЗапроса = Запрос.Выполнить().Выбрать(); Запрос.УстановитьПараметр("ВремяСнятияБлокировки", ВремяСнятияБлокировки);
Пока (РезультатЗапроса.Следующий()) Цикл
СсылкиНаУдаляемыеОбъекты.Вставить(РезультатЗапроса.Ссылка, РезультатЗапроса.Представление); РезультатЗапроса = Запрос.Выполнить().Выгрузить();
ЗначенияПометокУдаления = ОбщегоНазначения.ЗначениеРеквизитаОбъектов(
РезультатЗапроса.ВыгрузитьКолонку("Ссылка"),
"ПометкаУдаления");
СсылкиНаУдаляемыеОбъекты = Новый Соответствие;
Для каждого ОбъектЗначениеПометки Из ЗначенияПометокУдаления Цикл
Если ОбъектЗначениеПометки.Значение Тогда
СсылкиНаУдаляемыеОбъекты.Вставить(
ОбъектЗначениеПометки.Ключ,
РезультатЗапроса.Найти(ОбъектЗначениеПометки.Ключ, "Ссылка").Представление);
КонецЕсли;
КонецЦикла; КонецЦикла;
Возврат СсылкиНаУдаляемыеОбъекты; Возврат СсылкиНаУдаляемыеОбъекты;
@@ -309,8 +309,8 @@
Возврат; Возврат;
КонецЕсли; КонецЕсли;
ВремяЖизниСеанса = 3 * 60*60; ВремяЖизниБлокировки = ВремяЖизниБлокировки();
ВремяСнятияБлокировки = ОбщегоНазначения.ТекущаяДатаПользователя() - ВремяЖизниСеанса; ВремяСнятияБлокировки = ТекущаяДатаСеанса() - ВремяЖизниБлокировки;
Запрос = Новый Запрос; Запрос = Новый Запрос;
Запрос.Текст = Запрос.Текст =
@@ -339,6 +339,20 @@
КонецЦикла; КонецЦикла;
КонецПроцедуры КонецПроцедуры
// Возвращает число секунд, в течение которых должна держаться блокировка использования удаляемого объекта
//
// Возвращаемое значение:
// Число
//
Функция ВремяЖизниБлокировки() Экспорт
Перем ВремяЖизниБлокировки;
ВремяЖизниБлокировки = 3 * 60 * 60;
Возврат ВремяЖизниБлокировки;
КонецФункции
// Формирует строковый ключ для сохранения настроек отображения помеченных на удаления. // Формирует строковый ключ для сохранения настроек отображения помеченных на удаления.
// //
// Параметры: // Параметры:
@@ -715,7 +729,7 @@
Набор = РегистрыСведений.УдаляемыеОбъекты.СоздатьНаборЗаписей(); Набор = РегистрыСведений.УдаляемыеОбъекты.СоздатьНаборЗаписей();
Набор.Отбор.ИдентификаторСеанса.Установить(Идентификатор); Набор.Отбор.ИдентификаторСеанса.Установить(Идентификатор);
ВремяНачалаУдаления = ОбщегоНазначения.ТекущаяДатаПользователя(); ВремяНачалаУдаления = ТекущаяДатаСеанса();
Для Каждого Элемент Из Пакет Цикл Для Каждого Элемент Из Пакет Цикл
Запись = Набор.Добавить(); Запись = Набор.Добавить();
Запись.ИдентификаторСеанса = Идентификатор; Запись.ИдентификаторСеанса = Идентификатор;
@@ -976,10 +990,11 @@
Попытка Попытка
СсылкиНаУдаляемыеОбъекты = УдалениеПомеченныхОбъектов.СсылкиНаУдаляемыеОбъекты(Источник); СсылкиНаУдаляемыеОбъекты = УдалениеПомеченныхОбъектов.СсылкиНаУдаляемыеОбъекты(Источник);
Исключение Исключение
Ошибка = ИнформацияОбОшибке();
ЗаписьЖурналаРегистрации( ЗаписьЖурналаРегистрации(
НСтр("ru = 'Удаление помеченных'", ОбщегоНазначения.КодОсновногоЯзыка()), НСтр("ru = 'Удаление помеченных'", ОбщегоНазначения.КодОсновногоЯзыка()),
УровеньЖурналаРегистрации.Ошибка, , , УровеньЖурналаРегистрации.Ошибка, , ,
НСтр("ru='Не удалось выполнить контроль удаляемых объектов:'") + ОписаниеОшибки()); НСтр("ru='Не удалось выполнить контроль удаляемых объектов:'") + ПодробноеПредставлениеОшибки(Ошибка));
КонецПопытки; КонецПопытки;
Если СсылкиНаУдаляемыеОбъекты.Количество() > 0 Тогда Если СсылкиНаУдаляемыеОбъекты.Количество() > 0 Тогда
@@ -188,7 +188,7 @@
Обработчик.НачальноеЗаполнение = Истина; Обработчик.НачальноеЗаполнение = Истина;
Обработчик = Обработчики.Добавить(); Обработчик = Обработчики.Добавить();
Обработчик.Версия = "3.1.3.69"; Обработчик.Версия = "3.1.3.294";
Обработчик.Идентификатор = Новый УникальныйИдентификатор("ecd6aad4-4b04-43be-82bc-cd4f563beb0b"); Обработчик.Идентификатор = Новый УникальныйИдентификатор("ecd6aad4-4b04-43be-82bc-cd4f563beb0b");
Обработчик.Процедура = "ПланыВидовХарактеристик.ДополнительныеРеквизитыИСведения.ОбработатьДанныеДляПереходаНаНовуюВерсию"; Обработчик.Процедура = "ПланыВидовХарактеристик.ДополнительныеРеквизитыИСведения.ОбработатьДанныеДляПереходаНаНовуюВерсию";
Обработчик.Комментарий = НСтр("ru = 'Заполняет уникальное имя и обновляет зависимости дополнительных реквизитов и сведений. Обработчик.Комментарий = НСтр("ru = 'Заполняет уникальное имя и обновляет зависимости дополнительных реквизитов и сведений.
@@ -1779,7 +1779,7 @@
КонецФункции КонецФункции
Процедура УдалитьНедопустимыеСимволы(Строка) Экспорт Процедура УдалитьНедопустимыеСимволы(Строка) Экспорт
НедопустимыеСимволы = """'`/\[]{}:;|-=?*<>,.()+#№@!%^&~"; НедопустимыеСимволы = """'`/\[]{}:;|-=?*<>,.()+#№@!%^&~«»";
Строка = СтрСоединить(СтрРазделить(Строка, НедопустимыеСимволы, Истина)); Строка = СтрСоединить(СтрРазделить(Строка, НедопустимыеСимволы, Истина));
КонецПроцедуры КонецПроцедуры
@@ -1310,7 +1310,18 @@
Результат.ФорматыВложений = СтрокаСведенийОШаблоне.ФорматВложений.Получить(); Результат.ФорматыВложений = СтрокаСведенийОШаблоне.ФорматВложений.Получить();
Для каждого СтрокаПараметр Из РезультатЗапроса[2].Выгрузить() Цикл Для каждого СтрокаПараметр Из РезультатЗапроса[2].Выгрузить() Цикл
Результат.Параметры.Вставить(СтрокаПараметр.ИмяПараметра, Новый Структура("ОписаниеТипа, Представление", СтрокаПараметр.ТипПараметра.Получить(), СтрокаПараметр.ПредставлениеПараметра));
ОписниеТипПараметра = ОбщегоНазначения.ОписаниеТипаСтрока(250);
Если ТипЗнч(СтрокаПараметр.ТипПараметра) = Тип("ХранилищеЗначения") Тогда
ТипПараметраЗначение = СтрокаПараметр.ТипПараметра.Получить();
Если ТипЗнч(ТипПараметраЗначение) = Тип("ОписаниеТипов") Тогда
ОписниеТипПараметра = ТипПараметраЗначение;
КонецЕсли;
КонецЕсли;
Результат.Параметры.Вставить(СтрокаПараметр.ИмяПараметра,
Новый Структура("ОписаниеТипа, Представление", ОписниеТипПараметра, СтрокаПараметр.ПредставлениеПараметра));
КонецЦикла; КонецЦикла;
КонецЕсли; КонецЕсли;
+9 -9
View File
@@ -1,17 +1,17 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<mdclass:Configuration xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="25b6d0ca-0357-11eb-b085-0242ac110002"> <mdclass:Configuration xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="c475bee0-0fa7-11eb-0195-0242ac110002">
<name>БиблиотекаСтандартныхПодсистем</name> <name>БиблиотекаСтандартныхПодсистем</name>
<synonym> <synonym>
<key>ru</key> <key>ru</key>
<value>Библиотека стандартных подсистем, редакция 3.1</value> <value>Библиотека стандартных подсистем, редакция 3.1</value>
</synonym> </synonym>
<containedObjects classId="9cd510cd-abfc-11d4-9434-004095e12fc7" objectId="25b6d0cb-0357-11eb-b085-0242ac110002"/> <containedObjects classId="9cd510cd-abfc-11d4-9434-004095e12fc7" objectId="c475beea-0fa7-11eb-0195-0242ac110002"/>
<containedObjects classId="9fcd25a0-4822-11d4-9414-008048da11f9" objectId="25b6d0f2-0357-11eb-b085-0242ac110002"/> <containedObjects classId="9fcd25a0-4822-11d4-9414-008048da11f9" objectId="c475bf1c-0fa7-11eb-0195-0242ac110002"/>
<containedObjects classId="e3687481-0a87-462c-a166-9f34594f9bba" objectId="25b6d0fc-0357-11eb-b085-0242ac110002"/> <containedObjects classId="e3687481-0a87-462c-a166-9f34594f9bba" objectId="c475bf26-0fa7-11eb-0195-0242ac110002"/>
<containedObjects classId="9de14907-ec23-4a07-96f0-85521cb6b53b" objectId="25b6d0fd-0357-11eb-b085-0242ac110002"/> <containedObjects classId="9de14907-ec23-4a07-96f0-85521cb6b53b" objectId="c475bf30-0fa7-11eb-0195-0242ac110002"/>
<containedObjects classId="51f2d5d8-ea4d-4064-8892-82951750031e" objectId="25b6d0fe-0357-11eb-b085-0242ac110002"/> <containedObjects classId="51f2d5d8-ea4d-4064-8892-82951750031e" objectId="c475bf31-0fa7-11eb-0195-0242ac110002"/>
<containedObjects classId="e68182ea-4237-4383-967f-90c1e3370bc7" objectId="25b6d106-0357-11eb-b085-0242ac110002"/> <containedObjects classId="e68182ea-4237-4383-967f-90c1e3370bc7" objectId="c475bf3a-0fa7-11eb-0195-0242ac110002"/>
<containedObjects classId="fb282519-d103-4dd3-bc12-cb271d631dfc" objectId="fb7aa4a7-ed11-4a6f-bfc5-8953aa564fa9"/> <containedObjects classId="fb282519-d103-4dd3-bc12-cb271d631dfc" objectId="9f074fc1-9ff3-48f2-bb9f-1f228cfb5eb6"/>
<defaultRunMode>ManagedApplication</defaultRunMode> <defaultRunMode>ManagedApplication</defaultRunMode>
<usePurposes>PersonalComputer</usePurposes> <usePurposes>PersonalComputer</usePurposes>
<scriptVariant>Russian</scriptVariant> <scriptVariant>Russian</scriptVariant>
@@ -19,7 +19,7 @@
<defaultRoles>Role.АдминистраторСистемы</defaultRoles> <defaultRoles>Role.АдминистраторСистемы</defaultRoles>
<defaultRoles>Role.ИнтерактивноеОткрытиеВнешнихОтчетовИОбработок</defaultRoles> <defaultRoles>Role.ИнтерактивноеОткрытиеВнешнихОтчетовИОбработок</defaultRoles>
<vendor>Фирма &quot;1С&quot;</vendor> <vendor>Фирма &quot;1С&quot;</vendor>
<version>3.1.3.289</version> <version>3.1.3.303</version>
<updateCatalogAddress>http://downloads.v8.1c.ru/tmplts/</updateCatalogAddress> <updateCatalogAddress>http://downloads.v8.1c.ru/tmplts/</updateCatalogAddress>
<includeHelpInContents>true</includeHelpInContents> <includeHelpInContents>true</includeHelpInContents>
<usedMobileApplicationFunctionalities> <usedMobileApplicationFunctionalities>
@@ -1 +1 @@
{6,1,1,6841c3e6-0357-11eb-2297-0242ac110002,1,5bad6f0e-0357-11eb-3889-0242ac110002,"3.1.3.289","Фирма ""1С""","БиблиотекаСтандартныхПодсистем",6172,1,0,25b6d0ca-0357-11eb-b085-0242ac110002,25b6d0ca-0357-11eb-b085-0242ac110002,1,0,db4a9ccb-9ef5-4b3c-8577-b6fe5db1b62e,db4a9ccb-9ef5-4b3c-8577-b6fe5db1b62e,1,0,9233322b-dfdb-4c66-91fe-1299292d40a5,9233322b-dfdb-4c66-91fe-1299292d40a5,1,0,7795348b-2f52-47f7-bf00-e11e5e795a43,7795348b-2f52-47f7-bf00-e11e5e795a43,1,0,0421b67e-ed26-491d-ab98-ec59002ed4ce,0421b67e-ed26-491d-ab98-ec59002ed4ce,1,0,bb47ced2-31f9-4870-8633-20b986e53ccc,bb47ced2-31f9-4870-8633-20b986e53ccc,1,0,7d8acec9-f5a9-411e-921c-446ed0dd3332,7d8acec9-f5a9-411e-921c-446ed0dd3332,1,0,739c01a9-1125-45ef-ab4e-8c73af4eeff0,739c01a9-1125-45ef-ab4e-8c73af4eeff0,1,0,cdbd26b1-9583-46e8-adf7-8cc705639892,cdbd26b1-9583-46e8-adf7-8cc705639892,1,0,c0e38c3e-7088-4e35-9d84-2d0ab9655402,c0e38c3e-7088-4e35-9d84-2d0ab9655402,1,0,1098786f-dd24-4cce-b212-be0cb5f01735,1098786f-dd24-4cce-b212-be0cb5f01735,1,0,3c0037f3-4422-4836-b116-8c72e32bdd55,3c0037f3-4422-4836-b116-8c72e32bdd55,1,0,6f7c6c31-206b-4010-bdad-1ad2e304f154,6f7c6c31-206b-4010-bdad-1ad2e304f154,1,0,a8659e53-8c6b-4b0c-9736-fe93a91e4d69,a8659e53-8c6b-4b0c-9736-fe93a91e4d69,1,0,fe9a1d1a-19c0-499f-8e1b-09cadabe882f,fe9a1d1a-19c0-499f-8e1b-09cadabe882f,1,0,5b68d479-7880-44de-84e3-7f578b43f0dc,5b68d479-7880-44de-84e3-7f578b43f0dc,1,0,bf9ca98c-5c95-4cfb-9181-8c1d847f9fbb,bf9ca98c-5c95-4cfb-9181-8c1d847f9fbb,1,0,b4629308-42de-4ce8-8591-cf0c2399a9a2,b4629308-42de-4ce8-8591-cf0c2399a9a2,1,0,c7e984ae-1dbb-4041-b18a-bfd0d63a002f,c7e984ae-1dbb-4041-b18a-bfd0d63a002f,1,0,bb0424b8-dfd1-4a27-bd66-9dea3ffc77c4,bb0424b8-dfd1-4a27-bd66-9dea3ffc77c4,1,0,a4ac0a50-ee39-4dc1-b84f-eec8fe485f03,a4ac0a50-ee39-4dc1-b84f-eec8fe485f03,1,0,1861ee4f-fd8c-4afa-8441-c074bf51f67e,1861ee4f-fd8c-4afa-8441-c074bf51f67e,1,0,de7ed8f7-3c02-47e0-aea8-4747ac68a5d5,de7ed8f7-3c02-47e0-aea8-4747ac68a5d5,1,0,b93b8760-6200-40ee-8bdc-875ba80a6155,b93b8760-6200-40ee-8bdc-875ba80a6155,1,0,e8b248d9-9049-456a-9c7d-7a0462cc67ab,e8b248d9-9049-456a-9c7d-7a0462cc67ab,1,0,d4562287-440d-4462-9de2-7097ccbf3764,d4562287-440d-4462-9de2-7097ccbf3764,1,0,1983fe34-c984-4659-ba41-0e94504f8989,1983fe34-c984-4659-ba41-0e94504f8989,1,0,ec797c75-02c5-4cf5-9dd4-26cd46c99519,ec797c75-02c5-4cf5-9dd4-26cd46c99519,1,0,6fccdf59-fc99-4a2b-a144-fffe438a147c,6fccdf59-fc99-4a2b-a144-fffe438a147c,1,0,af8bd73a-d8e8-487d-8f36-d835ab10ea3a,af8bd73a-d8e8-487d-8f36-d835ab10ea3a,1,0,08a413ff-bebd-42e5-8ff3-2115746a0844,08a413ff-bebd-42e5-8ff3-2115746a0844,1,0,da9b32e6-5b93-45a6-84b2-238d57541e18,da9b32e6-5b93-45a6-84b2-238d57541e18,1,0,e43d69c8-b284-47da-b236-611bc94a15b6,e43d69c8-b284-47da-b236-611bc94a15b6,1,0,31eeaa05-6c49-41fe-b840-1edbad4ccac7,31eeaa05-6c49-41fe-b840-1edbad4ccac7,1,0,842c8662-8f39-405e-9665-cbdabc116159,842c8662-8f39-405e-9665-cbdabc116159,1,0,fca4b033-02c4-4d61-9e51-87783c3cef1a,fca4b033-02c4-4d61-9e51-87783c3cef1a,1,0,396ef757-d7f6-411f-8c4c-1acb1106a009,396ef757-d7f6-411f-8c4c-1acb1106a009,1,0,839e29b1-a0d2-40fa-9f3e-46e66b943358,839e29b1-a0d2-40fa-9f3e-46e66b943358,1,0,c56d2cc7-630a-441b-b23f-ba78c34849bd,c56d2cc7-630a-441b-b23f-ba78c34849bd,1,0,9aecf4f5-46ed-4d1c-a584-cd028e467895,9aecf4f5-46ed-4d1c-a584-cd028e467895,1,0,21d92c2f-6c78-43ce-b1f4-59d7845b5a91,21d92c2f-6c78-43ce-b1f4-59d7845b5a91,1,0,a1c379be-43d3-4e02-83bb-d2e7de2d4ae3,a1c379be-43d3-4e02-83bb-d2e7de2d4ae3,1,0,a1f10624-22e9-4a04-b370-fd085bdd0f67,a1f10624-22e9-4a04-b370-fd085bdd0f67,1,0,2a4b10be-3cd7-4755-905f-7b4d02ff6a22,2a4b10be-3cd7-4755-905f-7b4d02ff6a22,1,0,3cffb795-2a28-4beb-92f4-5813f5994022,3cffb795-2a28-4beb-92f4-5813f5994022,1,0,3323ca68-1382-4710-a933-23fc56588935,3323ca68-1382-4710-a933-23fc56588935,1,0,d6b12775-3255-42b8-88b2-62684f873e7d,d6b12775-3255-42b8-88b2-62684f873e7d,1,0,cc23d903-ccc5-42f4-862f-5e7278c4e346,cc23d903-ccc5-42f4-862f-5e7278c4e346,1,0,98f033e0-fa40-46e0-b51a-87a066749a35,98f033e0-fa40-46e0-b51a-87a066749a35,1,0,e8b4cb2d-1180-4101-954a-4cb5464f198c,e8b4cb2d-1180-4101-954a-4cb5464f198c,1,0,a379287d-1ce8-460d-a503-910e728e28f1,a379287d-1ce8-460d-a503-910e728e28f1,1,0,f765c4ba-c677-42ac-8d0c-43bb485405b9,f765c4ba-c677-42ac-8d0c-43bb485405b9,1,0,2fd1287d-d96d-4480-baf7-8815ae5ffbfb,2fd1287d-d96d-4480-baf7-8815ae5ffbfb,1,0,d8c58e53-b7b9-4426-bdfa-d0816adf8cc1,d8c58e53-b7b9-4426-bdfa-d0816adf8cc1,1,0,4009cb3a-6754-481f-911b-907558cea38a,4009cb3a-6754-481f-911b-907558cea38a,1,0,653a7fd8-91c7-49aa-aa63-45da087e0d0a,653a7fd8-91c7-49aa-aa63-45da087e0d0a,1,0,d7cf3981-cf63-4a21-868b-8175a7704a8f,d7cf3981-cf63-4a21-868b-8175a7704a8f,1,0,0ae93712-74e8-41c7-8f2d-4dfc8983697d,0ae93712-74e8-41c7-8f2d-4dfc8983697d,1,0,9e4dfdfa-ec05-4c9e-89bd-fc24f60f2678,9e4dfdfa-ec05-4c9e-89bd-fc24f60f2678,1,0,64f548c8-c1fc-434e-b3ee-5be367ead1db,64f548c8-c1fc-434e-b3ee-5be367ead1db,1,0,cd592a5d-b184-4558-8a28-7079ccf28b89,cd592a5d-b184-4558-8a28-7079ccf28b89,1,0,2009c673-c1a5-45fc-8da2-a36c435085a6,2009c673-c1a5Line truncated {6,1,1,1077329c-0fa8-11eb-e387-0242ac110002,1,0212180c-0fa8-11eb-f69d-0242ac110002,"3.1.3.303","Фирма ""1С""","БиблиотекаСтандартныхПодсистем",6173,1,0,c475bee0-0fa7-11eb-0195-0242ac110002,c475bee0-0fa7-11eb-0195-0242ac110002,1,0,db4a9ccb-9ef5-4b3c-8577-b6fe5db1b62e,db4a9ccb-9ef5-4b3c-8577-b6fe5db1b62e,1,0,9233322b-dfdb-4c66-91fe-1299292d40a5,9233322b-dfdb-4c66-91fe-1299292d40a5,1,0,7795348b-2f52-47f7-bf00-e11e5e795a43,7795348b-2f52-47f7-bf00-e11e5e795a43,1,0,0421b67e-ed26-491d-ab98-ec59002ed4ce,0421b67e-ed26-491d-ab98-ec59002ed4ce,1,0,bb47ced2-31f9-4870-8633-20b986e53ccc,bb47ced2-31f9-4870-8633-20b986e53ccc,1,0,7d8acec9-f5a9-411e-921c-446ed0dd3332,7d8acec9-f5a9-411e-921c-446ed0dd3332,1,0,739c01a9-1125-45ef-ab4e-8c73af4eeff0,739c01a9-1125-45ef-ab4e-8c73af4eeff0,1,0,cdbd26b1-9583-46e8-adf7-8cc705639892,cdbd26b1-9583-46e8-adf7-8cc705639892,1,0,c0e38c3e-7088-4e35-9d84-2d0ab9655402,c0e38c3e-7088-4e35-9d84-2d0ab9655402,1,0,1098786f-dd24-4cce-b212-be0cb5f01735,1098786f-dd24-4cce-b212-be0cb5f01735,1,0,3c0037f3-4422-4836-b116-8c72e32bdd55,3c0037f3-4422-4836-b116-8c72e32bdd55,1,0,6f7c6c31-206b-4010-bdad-1ad2e304f154,6f7c6c31-206b-4010-bdad-1ad2e304f154,1,0,a8659e53-8c6b-4b0c-9736-fe93a91e4d69,a8659e53-8c6b-4b0c-9736-fe93a91e4d69,1,0,fe9a1d1a-19c0-499f-8e1b-09cadabe882f,fe9a1d1a-19c0-499f-8e1b-09cadabe882f,1,0,5b68d479-7880-44de-84e3-7f578b43f0dc,5b68d479-7880-44de-84e3-7f578b43f0dc,1,0,bf9ca98c-5c95-4cfb-9181-8c1d847f9fbb,bf9ca98c-5c95-4cfb-9181-8c1d847f9fbb,1,0,b4629308-42de-4ce8-8591-cf0c2399a9a2,b4629308-42de-4ce8-8591-cf0c2399a9a2,1,0,c7e984ae-1dbb-4041-b18a-bfd0d63a002f,c7e984ae-1dbb-4041-b18a-bfd0d63a002f,1,0,bb0424b8-dfd1-4a27-bd66-9dea3ffc77c4,bb0424b8-dfd1-4a27-bd66-9dea3ffc77c4,1,0,a4ac0a50-ee39-4dc1-b84f-eec8fe485f03,a4ac0a50-ee39-4dc1-b84f-eec8fe485f03,1,0,1861ee4f-fd8c-4afa-8441-c074bf51f67e,1861ee4f-fd8c-4afa-8441-c074bf51f67e,1,0,de7ed8f7-3c02-47e0-aea8-4747ac68a5d5,de7ed8f7-3c02-47e0-aea8-4747ac68a5d5,1,0,b93b8760-6200-40ee-8bdc-875ba80a6155,b93b8760-6200-40ee-8bdc-875ba80a6155,1,0,e8b248d9-9049-456a-9c7d-7a0462cc67ab,e8b248d9-9049-456a-9c7d-7a0462cc67ab,1,0,d4562287-440d-4462-9de2-7097ccbf3764,d4562287-440d-4462-9de2-7097ccbf3764,1,0,1983fe34-c984-4659-ba41-0e94504f8989,1983fe34-c984-4659-ba41-0e94504f8989,1,0,ec797c75-02c5-4cf5-9dd4-26cd46c99519,ec797c75-02c5-4cf5-9dd4-26cd46c99519,1,0,6fccdf59-fc99-4a2b-a144-fffe438a147c,6fccdf59-fc99-4a2b-a144-fffe438a147c,1,0,af8bd73a-d8e8-487d-8f36-d835ab10ea3a,af8bd73a-d8e8-487d-8f36-d835ab10ea3a,1,0,08a413ff-bebd-42e5-8ff3-2115746a0844,08a413ff-bebd-42e5-8ff3-2115746a0844,1,0,da9b32e6-5b93-45a6-84b2-238d57541e18,da9b32e6-5b93-45a6-84b2-238d57541e18,1,0,e43d69c8-b284-47da-b236-611bc94a15b6,e43d69c8-b284-47da-b236-611bc94a15b6,1,0,31eeaa05-6c49-41fe-b840-1edbad4ccac7,31eeaa05-6c49-41fe-b840-1edbad4ccac7,1,0,842c8662-8f39-405e-9665-cbdabc116159,842c8662-8f39-405e-9665-cbdabc116159,1,0,fca4b033-02c4-4d61-9e51-87783c3cef1a,fca4b033-02c4-4d61-9e51-87783c3cef1a,1,0,396ef757-d7f6-411f-8c4c-1acb1106a009,396ef757-d7f6-411f-8c4c-1acb1106a009,1,0,839e29b1-a0d2-40fa-9f3e-46e66b943358,839e29b1-a0d2-40fa-9f3e-46e66b943358,1,0,c56d2cc7-630a-441b-b23f-ba78c34849bd,c56d2cc7-630a-441b-b23f-ba78c34849bd,1,0,9aecf4f5-46ed-4d1c-a584-cd028e467895,9aecf4f5-46ed-4d1c-a584-cd028e467895,1,0,21d92c2f-6c78-43ce-b1f4-59d7845b5a91,21d92c2f-6c78-43ce-b1f4-59d7845b5a91,1,0,a1c379be-43d3-4e02-83bb-d2e7de2d4ae3,a1c379be-43d3-4e02-83bb-d2e7de2d4ae3,1,0,a1f10624-22e9-4a04-b370-fd085bdd0f67,a1f10624-22e9-4a04-b370-fd085bdd0f67,1,0,2a4b10be-3cd7-4755-905f-7b4d02ff6a22,2a4b10be-3cd7-4755-905f-7b4d02ff6a22,1,0,3cffb795-2a28-4beb-92f4-5813f5994022,3cffb795-2a28-4beb-92f4-5813f5994022,1,0,3323ca68-1382-4710-a933-23fc56588935,3323ca68-1382-4710-a933-23fc56588935,1,0,d6b12775-3255-42b8-88b2-62684f873e7d,d6b12775-3255-42b8-88b2-62684f873e7d,1,0,cc23d903-ccc5-42f4-862f-5e7278c4e346,cc23d903-ccc5-42f4-862f-5e7278c4e346,1,0,98f033e0-fa40-46e0-b51a-87a066749a35,98f033e0-fa40-46e0-b51a-87a066749a35,1,0,e8b4cb2d-1180-4101-954a-4cb5464f198c,e8b4cb2d-1180-4101-954a-4cb5464f198c,1,0,a379287d-1ce8-460d-a503-910e728e28f1,a379287d-1ce8-460d-a503-910e728e28f1,1,0,f765c4ba-c677-42ac-8d0c-43bb485405b9,f765c4ba-c677-42ac-8d0c-43bb485405b9,1,0,2fd1287d-d96d-4480-baf7-8815ae5ffbfb,2fd1287d-d96d-4480-baf7-8815ae5ffbfb,1,0,d8c58e53-b7b9-4426-bdfa-d0816adf8cc1,d8c58e53-b7b9-4426-bdfa-d0816adf8cc1,1,0,4009cb3a-6754-481f-911b-907558cea38a,4009cb3a-6754-481f-911b-907558cea38a,1,0,653a7fd8-91c7-49aa-aa63-45da087e0d0a,653a7fd8-91c7-49aa-aa63-45da087e0d0a,1,0,d7cf3981-cf63-4a21-868b-8175a7704a8f,d7cf3981-cf63-4a21-868b-8175a7704a8f,1,0,0ae93712-74e8-41c7-8f2d-4dfc8983697d,0ae93712-74e8-41c7-8f2d-4dfc8983697d,1,0,9e4dfdfa-ec05-4c9e-89bd-fc24f60f2678,9e4dfdfa-ec05-4c9e-89bd-fc24f60f2678,1,0,64f548c8-c1fc-434e-b3ee-5be367ead1db,64f548c8-c1fc-434e-b3ee-5be367ead1db,1,0,cd592a5d-b184-4558-8a28-7079ccf28b89,cd592a5d-b184-4558-8a28-7079ccf28b89,1,0,2009c673-c1a5-45fc-8da2-a36c435085a6,2009c673-c1a5Line truncated
@@ -1670,6 +1670,46 @@
<textSize>Normal</textSize> <textSize>Normal</textSize>
</extInfo> </extInfo>
</items> </items>
<items xsi:type="form:FormField">
<name>ОбработчикиОбновленияПорядокБиблиотеки</name>
<id>248</id>
<visible>true</visible>
<enabled>true</enabled>
<userVisible/>
<dataPath xsi:type="form:DataPath">
<segments>Объект.ОбработчикиОбновления.ПорядокБиблиотеки</segments>
</dataPath>
<extendedTooltip>
<name>ОбработчикиОбновленияПорядокБиблиотекиРасширеннаяПодсказка</name>
<id>250</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<contextMenu>
<name>ОбработчикиОбновленияПорядокБиблиотекиКонтекстноеМеню</name>
<id>249</id>
<autoFill>true</autoFill>
</contextMenu>
<type>InputField</type>
<readOnly>true</readOnly>
<editMode>Auto</editMode>
<showInHeader>true</showInHeader>
<headerHorizontalAlign>Left</headerHorizontalAlign>
<showInFooter>true</showInFooter>
<extInfo xsi:type="form:InputFieldExtInfo">
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<wrap>true</wrap>
<chooseType>true</chooseType>
<typeDomainEnabled>true</typeDomainEnabled>
<textEdit>true</textEdit>
<textSize>Normal</textSize>
</extInfo>
</items>
<items xsi:type="form:FormField"> <items xsi:type="form:FormField">
<name>ОбработчикиОбновленияИмяОбъекта</name> <name>ОбработчикиОбновленияИмяОбъекта</name>
<id>239</id> <id>239</id>
@@ -67,6 +67,7 @@
ОбработчикиПодсистем = НовыйОбработчикиПодсистем(); ОбработчикиПодсистем = НовыйОбработчикиПодсистем();
ОписаниеПодсистем = СтандартныеПодсистемыПовтИсп.ОписанияПодсистем(); ОписаниеПодсистем = СтандартныеПодсистемыПовтИсп.ОписанияПодсистем();
ПорядокБиблиотеки = 1;
Для Каждого ИмяПодсистемы Из ОписаниеПодсистем.Порядок Цикл Для Каждого ИмяПодсистемы Из ОписаниеПодсистем.Порядок Цикл
ОписаниеПодсистемы = ОписаниеПодсистем.ПоИменам.Получить(ИмяПодсистемы); ОписаниеПодсистемы = ОписаниеПодсистем.ПоИменам.Получить(ИмяПодсистемы);
@@ -82,7 +83,9 @@
СтрокаОбработчика.ИмяОсновногоСерверногоМодуля = ОписаниеПодсистемы.ОсновнойСерверныйМодуль; СтрокаОбработчика.ИмяОсновногоСерверногоМодуля = ОписаниеПодсистемы.ОсновнойСерверныйМодуль;
СтрокаОбработчика.РежимВыполненияОтложенныхОбработчиков = ОписаниеПодсистемы.РежимВыполненияОтложенныхОбработчиков; СтрокаОбработчика.РежимВыполненияОтложенныхОбработчиков = ОписаниеПодсистемы.РежимВыполненияОтложенныхОбработчиков;
СтрокаОбработчика.Обработчики = Обработчики; СтрокаОбработчика.Обработчики = Обработчики;
СтрокаОбработчика.ПорядокБиблиотеки = ПорядокБиблиотеки;
ПорядокБиблиотеки = ПорядокБиблиотеки + 1;
КонецЦикла; КонецЦикла;
ЗагрузитьОбработчикиПодсистем(ОбработчикиПодсистем); ЗагрузитьОбработчикиПодсистем(ОбработчикиПодсистем);
@@ -98,13 +101,16 @@
// //
Процедура ЗагрузитьОбработчикиПодсистем(ОбработчикиПодсистем) Процедура ЗагрузитьОбработчикиПодсистем(ОбработчикиПодсистем)
РежимыОтложенныхОбработчиков = Неопределено; ДополнительныеСведения = Неопределено;
Если ТипЗнч(ОбработчикиПодсистем) = Тип("Массив") Тогда Если ТипЗнч(ОбработчикиПодсистем) = Тип("Массив") Тогда
РежимыОтложенныхОбработчиков = Новый Соответствие; ДополнительныеСведения = Новый Соответствие;
ОписанияПодсистем = СтандартныеПодсистемыПовтИсп.ОписанияПодсистем(); ОписанияПодсистем = СтандартныеПодсистемыПовтИсп.ОписанияПодсистем();
Для Каждого Библиотека Из ОбработчикиПодсистем Цикл Для Каждого Библиотека Из ОбработчикиПодсистем Цикл
Сведения = ОписанияПодсистем.ПоИменам[Библиотека.Подсистема]; Сведения = ОписанияПодсистем.ПоИменам[Библиотека.Подсистема];
РежимыОтложенныхОбработчиков.Вставить(Библиотека.Подсистема, Сведения.РежимВыполненияОтложенныхОбработчиков); ЕщеСведения = ЕщеСведения();
ЕщеСведения.РежимВыполненияОтложенныхОбработчиков = Сведения.РежимВыполненияОтложенныхОбработчиков;
ЕщеСведения.ПорядокБиблиотеки = ОписанияПодсистем.Порядок.Найти(Библиотека.Подсистема) + 1;
ДополнительныеСведения.Вставить(Библиотека.Подсистема, ЕщеСведения);
КонецЦикла; КонецЦикла;
КонецЕсли; КонецЕсли;
@@ -117,12 +123,15 @@
МодулиПодсистем = Новый Структура; МодулиПодсистем = Новый Структура;
Для Каждого Библиотека Из ОбработчикиПодсистем Цикл Для Каждого Библиотека Из ОбработчикиПодсистем Цикл
Если РежимыОтложенныхОбработчиков = Неопределено Тогда Если ДополнительныеСведения = Неопределено Тогда
РежимВыполненияОтложенныхОбработчиков = Библиотека.РежимВыполненияОтложенныхОбработчиков; ЕщеСведения = ЕщеСведения();
ЕщеСведения.РежимВыполненияОтложенныхОбработчиков = Библиотека.РежимВыполненияОтложенныхОбработчиков;
ЕщеСведения.ПорядокБиблиотеки = Библиотека.ПорядокБиблиотеки;
Иначе Иначе
РежимВыполненияОтложенныхОбработчиков = РежимыОтложенныхОбработчиков[Библиотека.Подсистема]; ЕщеСведения = ДополнительныеСведения[Библиотека.Подсистема];
КонецЕсли; КонецЕсли;
ЗагрузитьТаблицуОбработчиков(Библиотека, РежимВыполненияОтложенныхОбработчиков);
ЗагрузитьТаблицуОбработчиков(Библиотека, ЕщеСведения);
МодулиПодсистем.Вставить(Библиотека.Подсистема, Библиотека.ИмяОсновногоСерверногоМодуля); МодулиПодсистем.Вставить(Библиотека.Подсистема, Библиотека.ИмяОсновногоСерверногоМодуля);
@@ -417,7 +426,7 @@
#Область ЗагрузкаОбработчиков #Область ЗагрузкаОбработчиков
Процедура ЗагрузитьТаблицуОбработчиков(Библиотека, РежимВыполненияОтложенныхОбработчиков) Процедура ЗагрузитьТаблицуОбработчиков(Библиотека, ДополнительныеСведения)
Для Каждого ОписаниеОбработчика Из Библиотека.Обработчики Цикл Для Каждого ОписаниеОбработчика Из Библиотека.Обработчики Цикл
@@ -430,8 +439,9 @@
НовоеОписание.Подсистема = Библиотека.Подсистема; НовоеОписание.Подсистема = Библиотека.Подсистема;
НовоеОписание.ИмяОсновногоСерверногоМодуля = Библиотека.ИмяОсновногоСерверногоМодуля; НовоеОписание.ИмяОсновногоСерверногоМодуля = Библиотека.ИмяОсновногоСерверногоМодуля;
НовоеОписание.ИмяБиблиотеки = СтрЗаменить(Библиотека.ИмяОсновногоСерверногоМодуля, "ОбновлениеИнформационнойБазы", ""); НовоеОписание.ИмяБиблиотеки = СтрЗаменить(Библиотека.ИмяОсновногоСерверногоМодуля, "ОбновлениеИнформационнойБазы", "");
НовоеОписание.ПорядокБиблиотеки = ДополнительныеСведения.ПорядокБиблиотеки;
НовоеОписание.ИмяОбъекта = СтрСоединить(Имена,"."); НовоеОписание.ИмяОбъекта = СтрСоединить(Имена,".");
НовоеОписание.РежимВыполненияОтложенныхОбработчиков = РежимВыполненияОтложенныхОбработчиков; НовоеОписание.РежимВыполненияОтложенныхОбработчиков = ДополнительныеСведения.РежимВыполненияОтложенныхОбработчиков;
НовоеОписание.ВерсияЧислом = ВерсияЧислом(ОписаниеОбработчика.Версия); НовоеОписание.ВерсияЧислом = ВерсияЧислом(ОписаниеОбработчика.Версия);
ЗаполнитьВерсиюРедакции(НовоеОписание); ЗаполнитьВерсиюРедакции(НовоеОписание);
@@ -503,6 +513,7 @@
// * ИмяОсновногоСерверногоМодуля - Строка // * ИмяОсновногоСерверногоМодуля - Строка
// * РежимВыполненияОтложенныхОбработчиков - Строка // * РежимВыполненияОтложенныхОбработчиков - Строка
// * Обработчики - Строка // * Обработчики - Строка
// * ПорядокБиблиотеки - Число
Функция НовыйОбработчикиПодсистем() Функция НовыйОбработчикиПодсистем()
ОбработчикиПодсистем = Новый ТаблицаЗначений; ОбработчикиПодсистем = Новый ТаблицаЗначений;
@@ -512,6 +523,7 @@
ОбработчикиПодсистем.Колонки.Добавить("ИмяОсновногоСерверногоМодуля"); ОбработчикиПодсистем.Колонки.Добавить("ИмяОсновногоСерверногоМодуля");
ОбработчикиПодсистем.Колонки.Добавить("РежимВыполненияОтложенныхОбработчиков"); ОбработчикиПодсистем.Колонки.Добавить("РежимВыполненияОтложенныхОбработчиков");
ОбработчикиПодсистем.Колонки.Добавить("Обработчики"); ОбработчикиПодсистем.Колонки.Добавить("Обработчики");
ОбработчикиПодсистем.Колонки.Добавить("ПорядокБиблиотеки");
Возврат ОбработчикиПодсистем; Возврат ОбработчикиПодсистем;
@@ -535,11 +547,11 @@
Функция ТекстЗапросаОбновленияДанныхОКонфликтах() Функция ТекстЗапросаОбновленияДанныхОКонфликтах()
Возврат ТекстУничтожения =
"УНИЧТОЖИТЬ КонфликтыОбработчиков "УНИЧТОЖИТЬ КонфликтыОбработчиков;";
|;
| Текст = ТекстУничтожения + "
|////////////////////////////////////////////////////////////////////////////////
|ВЫБРАТЬ |ВЫБРАТЬ
| Т.ОбъектМетаданных КАК ОбъектМетаданных, | Т.ОбъектМетаданных КАК ОбъектМетаданных,
| Т.ОбработчикПисатель КАК ОбработчикПисатель, | Т.ОбработчикПисатель КАК ОбработчикПисатель,
@@ -712,6 +724,12 @@
| ТОГДА Приоритеты.ЗаданПорядокВыполнения | ТОГДА Приоритеты.ЗаданПорядокВыполнения
| ИНАЧЕ | ИНАЧЕ
| ВЫБОР | ВЫБОР
| КОГДА Обработчики1.ПорядокБиблиотеки > 0 И Обработчики2.ПорядокБиблиотеки > 0
| И Обработчики1.ПорядокБиблиотеки < Обработчики2.ПорядокБиблиотеки
| ТОГДА &До
| КОГДА Обработчики1.ПорядокБиблиотеки > 0 И Обработчики2.ПорядокБиблиотеки > 0
| И Обработчики1.ПорядокБиблиотеки > Обработчики2.ПорядокБиблиотеки
| ТОГДА &После
| КОГДА Обработчики1.ОчередьОтложеннойОбработки > 0 И Обработчики2.ОчередьОтложеннойОбработки > 0 | КОГДА Обработчики1.ОчередьОтложеннойОбработки > 0 И Обработчики2.ОчередьОтложеннойОбработки > 0
| И Обработчики1.ОчередьОтложеннойОбработки < Обработчики2.ОчередьОтложеннойОбработки | И Обработчики1.ОчередьОтложеннойОбработки < Обработчики2.ОчередьОтложеннойОбработки
| ТОГДА &До | ТОГДА &До
@@ -727,6 +745,12 @@
| ТОГДА Приоритеты.Порядок | ТОГДА Приоритеты.Порядок
| ИНАЧЕ | ИНАЧЕ
| ВЫБОР | ВЫБОР
| КОГДА Обработчики1.ПорядокБиблиотеки > 0 И Обработчики2.ПорядокБиблиотеки > 0
| И Обработчики1.ПорядокБиблиотеки < Обработчики2.ПорядокБиблиотеки
| ТОГДА &До
| КОГДА Обработчики1.ПорядокБиблиотеки > 0 И Обработчики2.ПорядокБиблиотеки > 0
| И Обработчики1.ПорядокБиблиотеки > Обработчики2.ПорядокБиблиотеки
| ТОГДА &После
| КОГДА Обработчики1.ОчередьОтложеннойОбработки > 0 И Обработчики2.ОчередьОтложеннойОбработки > 0 | КОГДА Обработчики1.ОчередьОтложеннойОбработки > 0 И Обработчики2.ОчередьОтложеннойОбработки > 0
| И Обработчики1.ОчередьОтложеннойОбработки < Обработчики2.ОчередьОтложеннойОбработки | И Обработчики1.ОчередьОтложеннойОбработки < Обработчики2.ОчередьОтложеннойОбработки
| ТОГДА &До | ТОГДА &До
@@ -863,6 +887,8 @@
| ЛЕВОЕ СОЕДИНЕНИЕ Проблемы КАК Проблемы | ЛЕВОЕ СОЕДИНЕНИЕ Проблемы КАК Проблемы
| ПО Обработчики.Ссылка = Проблемы.Обработчик"; | ПО Обработчики.Ссылка = Проблемы.Обработчик";
Возврат Текст;
КонецФункции КонецФункции
Функция ЗапросВременныхТаблиц() Функция ЗапросВременныхТаблиц()
@@ -1048,6 +1074,7 @@
| Обработчики.Изменен КАК Изменен, | Обработчики.Изменен КАК Изменен,
| Обработчики.ТехническийПроект КАК ТехническийПроект, | Обработчики.ТехническийПроект КАК ТехническийПроект,
| Обработчики.ИмяБиблиотеки КАК ИмяБиблиотеки, | Обработчики.ИмяБиблиотеки КАК ИмяБиблиотеки,
| Обработчики.ПорядокБиблиотеки КАК ПорядокБиблиотеки,
| Обработчики.ИмяОбъекта КАК ИмяОбъекта | Обработчики.ИмяОбъекта КАК ИмяОбъекта
|ПОМЕСТИТЬ Обработчики |ПОМЕСТИТЬ Обработчики
|ИЗ |ИЗ
@@ -1451,7 +1478,7 @@
ТекстПоляТаблицы = СтрСоединить(МассивПолей, "," + Символы.ПС); ТекстПоляТаблицы = СтрСоединить(МассивПолей, "," + Символы.ПС);
ТекстПоляИндексирования = ?(ПоляИндексирования = "", "", "ИНДЕКСИРОВАТЬ ПО " + ПоляИндексирования); ТекстПоляИндексирования = ?(ПоляИндексирования = "", "", "ИНДЕКСИРОВАТЬ ПО " + ПоляИндексирования);
ТекстЗапросаВТ = СтрЗаменить(ТекстЗапросаВТ, "&Поля", ТекстПоляТаблицы); ТекстЗапросаВТ = СтрЗаменить(ТекстЗапросаВТ, "&Поля", ТекстПоляТаблицы); // @Query-part-1
ТекстЗапросаВТ = СтрЗаменить(ТекстЗапросаВТ, "ИмяПриемника", ИмяТаблицы); ТекстЗапросаВТ = СтрЗаменить(ТекстЗапросаВТ, "ИмяПриемника", ИмяТаблицы);
ТекстЗапросаВТ = ТекстЗапросаВТ + Символы.ПС + ТекстПоляИндексирования; ТекстЗапросаВТ = ТекстЗапросаВТ + Символы.ПС + ТекстПоляИндексирования;
@@ -1675,6 +1702,10 @@
КонецФункции КонецФункции
Функция ЕщеСведения()
Возврат Новый Структура("РежимВыполненияОтложенныхОбработчиков,ПорядокБиблиотеки");
КонецФункции
#КонецОбласти #КонецОбласти
#КонецОбласти #КонецОбласти
@@ -561,6 +561,22 @@
<maxValue xsi:type="core:UndefinedValue"/> <maxValue xsi:type="core:UndefinedValue"/>
<fillValue xsi:type="core:StringValue"/> <fillValue xsi:type="core:StringValue"/>
</attributes> </attributes>
<attributes uuid="c8a0da4e-0b0f-4def-a61e-5f6e04468e01">
<name>ПорядокБиблиотеки</name>
<synonym>
<key>ru</key>
<value>Порядок библиотеки</value>
</synonym>
<type>
<types>Number</types>
<numberQualifiers>
<precision>10</precision>
</numberQualifiers>
</type>
<minValue xsi:type="core:UndefinedValue"/>
<maxValue xsi:type="core:UndefinedValue"/>
<fillValue xsi:type="core:UndefinedValue"/>
</attributes>
<attributes uuid="d60aae4f-7c61-416c-bbc9-e7c95d757848"> <attributes uuid="d60aae4f-7c61-416c-bbc9-e7c95d757848">
<name>ИмяОбъекта</name> <name>ИмяОбъекта</name>
<synonym> <synonym>
@@ -87,7 +87,7 @@
Пользователи.ЭтоПолноправныйПользователь(); Пользователи.ЭтоПолноправныйПользователь();
Если СтандартныеПодсистемыСервер.ЭтоБазоваяВерсияКонфигурации() Если СтандартныеПодсистемыСервер.ЭтоБазоваяВерсияКонфигурации()
И Не МодульОбновлениеКонфигурации.ДоступнаУстановкаПатчейВБазовойВерсии() Тогда И Не СтандартныеПодсистемыСервер.ДоступнаУстановкаПодписанныхРасширенийВБазовойВерсии() Тогда
Элементы.УстановкаОбновлений.Заголовок = НСтр("ru = 'Установка обновлений'"); Элементы.УстановкаОбновлений.Заголовок = НСтр("ru = 'Установка обновлений'");
Элементы.УстановкаОбновлений.РасширеннаяПодсказка.Заголовок = Элементы.УстановкаОбновлений.РасширеннаяПодсказка.Заголовок =
НСтр("ru = 'Обновление программы из файла на локальном диске или в сетевой папке.'"); НСтр("ru = 'Обновление программы из файла на локальном диске или в сетевой папке.'");
@@ -19,7 +19,8 @@
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
// Настройки видимости при запуске. // Настройки видимости при запуске.
Элементы.Расширения.Видимость = Не СтандартныеПодсистемыСервер.ЭтоБазоваяВерсияКонфигурации(); Элементы.Расширения.Видимость = Не (СтандартныеПодсистемыСервер.ЭтоБазоваяВерсияКонфигурации()
И Не СтандартныеПодсистемыСервер.ДоступнаУстановкаПодписанныхРасширенийВБазовойВерсии());
Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ДополнительныеОтчетыИОбработки") Тогда Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ДополнительныеОтчетыИОбработки") Тогда
РазделениеВключено = ОбщегоНазначения.РазделениеВключено(); РазделениеВключено = ОбщегоНазначения.РазделениеВключено();
@@ -19,6 +19,9 @@
УстановитьСерверВзаимодействияПоУмолчанию(ЭтотОбъект); УстановитьСерверВзаимодействияПоУмолчанию(ЭтотОбъект);
ИмяИнформационнойБазы = Константы.ЗаголовокСистемы.Получить(); ИмяИнформационнойБазы = Константы.ЗаголовокСистемы.Получить();
Если Не ЗначениеЗаполнено(ИмяИнформационнойБазы) Тогда
ИмяИнформационнойБазы = Метаданные.КраткаяИнформация;
КонецЕсли;
СостояниеРегистрации = ТекущееСостояниеРегистрации(); СостояниеРегистрации = ТекущееСостояниеРегистрации();
ПриИзмененииСостоянияФормы(ЭтотОбъект); ПриИзмененииСостоянияФормы(ЭтотОбъект);
@@ -595,7 +595,7 @@
// Представление с приоритетами. // Представление с приоритетами.
Если Не ПустаяСтрока(Представление) Тогда Если Не ПустаяСтрока(Представление) Тогда
Результат.Представление = Представление; Результат.Представление = Представление;
ИначеЕсли ЗначениеЗаполнено(ПолеПредставления) Тогда ИначеЕсли ЗначениеЗаполнено(ПолеПредставления) Или ТипЗначенийПолей = Тип("СписокЗначений") Тогда
Результат.Представление = ПолеПредставления; Результат.Представление = ПолеПредставления;
Иначе Иначе
Результат.Представление = РаботаСАдресамиКлиентСервер.ПредставлениеАдреса(Результат, Истина, ) Результат.Представление = РаботаСАдресамиКлиентСервер.ПредставлениеАдреса(Результат, Истина, )
@@ -79,7 +79,7 @@
Элементы.ПоискИУстановкаОбновлений.Видимость = ОбщегоНазначения.ПодсистемаСуществует("ИнтернетПоддержкаПользователей.ПолучениеОбновленийПрограммы"); Элементы.ПоискИУстановкаОбновлений.Видимость = ОбщегоНазначения.ПодсистемаСуществует("ИнтернетПоддержкаПользователей.ПолучениеОбновленийПрограммы");
ДоступнаУстановкаПатчейВБазовойВерсии = ОбновлениеКонфигурации.ДоступнаУстановкаПатчейВБазовойВерсии(); ДоступнаУстановкаПатчейВБазовойВерсии = СтандартныеПодсистемыСервер.ДоступнаУстановкаПодписанныхРасширенийВБазовойВерсии();
ЭтоБазоваяВерсия = СтандартныеПодсистемыСервер.ЭтоБазоваяВерсияКонфигурации(); ЭтоБазоваяВерсия = СтандартныеПодсистемыСервер.ЭтоБазоваяВерсияКонфигурации();
Если ЭтоБазоваяВерсия И Не ДоступнаУстановкаПатчейВБазовойВерсии Тогда Если ЭтоБазоваяВерсия И Не ДоступнаУстановкаПатчейВБазовойВерсии Тогда
ЗаголовокВариантаВыбора = НСтр("ru = 'Укажите файл обновления'"); ЗаголовокВариантаВыбора = НСтр("ru = 'Укажите файл обновления'");
@@ -43,7 +43,7 @@
|ИЗ |ИЗ
| РегистрСведений.ДвоичныеДанныеФайлов КАК ДвоичныеДанныеФайлов | РегистрСведений.ДвоичныеДанныеФайлов КАК ДвоичныеДанныеФайлов
|ГДЕ |ГДЕ
| ТИПЗНАЧЕНИЯ(ДвоичныеДанныеФайлов.Файл.Ссылка) = &ТипФайла"; | ТИПЗНАЧЕНИЯ(ДвоичныеДанныеФайлов.Файл) = &ТипФайла";
Запрос.УстановитьПараметр("ТипФайла", ТипЗнч(Справочники.Файлы.ПустаяСсылка())); Запрос.УстановитьПараметр("ТипФайла", ТипЗнч(Справочники.Файлы.ПустаяСсылка()));
@@ -977,93 +977,6 @@
<value>true</value> <value>true</value>
</right> </right>
</object> </object>
<object>
<name>Configuration.БиблиотекаСтандартныхПодсистем</name>
<right>
<name>Administration</name>
<value>true</value>
</right>
<right>
<name>DataAdministration</name>
<value>true</value>
</right>
<right>
<name>UpdateDataBaseConfiguration</name>
<value>true</value>
</right>
<right>
<name>ExclusiveMode</name>
<value>true</value>
</right>
<right>
<name>ActiveUsers</name>
<value>true</value>
</right>
<right>
<name>EventLog</name>
<value>true</value>
</right>
<right>
<name>ThinClient</name>
<value>true</value>
</right>
<right>
<name>WebClient</name>
<value>true</value>
</right>
<right>
<name>ThickClient</name>
<value>true</value>
</right>
<right>
<name>ExternalConnection</name>
<value>true</value>
</right>
<right>
<name>Automation</name>
<value>true</value>
</right>
<right>
<name>TechnicalSpecialistMode</name>
<value>true</value>
</right>
<right>
<name>MainWindowModeNormal</name>
<value>true</value>
</right>
<right>
<name>MainWindowModeWorkplace</name>
<value>true</value>
</right>
<right>
<name>MainWindowModeEmbeddedWorkplace</name>
<value>true</value>
</right>
<right>
<name>MainWindowModeFullscreenWorkplace</name>
<value>true</value>
</right>
<right>
<name>MainWindowModeKiosk</name>
<value>true</value>
</right>
<right>
<name>AnalyticsSystemClient</name>
<value>true</value>
</right>
<right>
<name>SaveUserData</name>
<value>true</value>
</right>
<right>
<name>ConfigurationExtensionsAdministration</name>
<value>true</value>
</right>
<right>
<name>Output</name>
<value>true</value>
</right>
</object>
<object> <object>
<name>CommonForm.НастройкаДоступаКСервисуMorpher</name> <name>CommonForm.НастройкаДоступаКСервисуMorpher</name>
<right> <right>
@@ -3928,6 +3841,93 @@
<value>true</value> <value>true</value>
</right> </right>
</object> </object>
<object>
<name>Configuration.БиблиотекаСтандартныхПодсистем</name>
<right>
<name>Administration</name>
<value>true</value>
</right>
<right>
<name>DataAdministration</name>
<value>true</value>
</right>
<right>
<name>UpdateDataBaseConfiguration</name>
<value>true</value>
</right>
<right>
<name>ExclusiveMode</name>
<value>true</value>
</right>
<right>
<name>ActiveUsers</name>
<value>true</value>
</right>
<right>
<name>EventLog</name>
<value>true</value>
</right>
<right>
<name>ThinClient</name>
<value>true</value>
</right>
<right>
<name>WebClient</name>
<value>true</value>
</right>
<right>
<name>ThickClient</name>
<value>true</value>
</right>
<right>
<name>ExternalConnection</name>
<value>true</value>
</right>
<right>
<name>Automation</name>
<value>true</value>
</right>
<right>
<name>TechnicalSpecialistMode</name>
<value>true</value>
</right>
<right>
<name>MainWindowModeNormal</name>
<value>true</value>
</right>
<right>
<name>MainWindowModeWorkplace</name>
<value>true</value>
</right>
<right>
<name>MainWindowModeEmbeddedWorkplace</name>
<value>true</value>
</right>
<right>
<name>MainWindowModeFullscreenWorkplace</name>
<value>true</value>
</right>
<right>
<name>MainWindowModeKiosk</name>
<value>true</value>
</right>
<right>
<name>AnalyticsSystemClient</name>
<value>true</value>
</right>
<right>
<name>SaveUserData</name>
<value>true</value>
</right>
<right>
<name>ConfigurationExtensionsAdministration</name>
<value>true</value>
</right>
<right>
<name>Output</name>
<value>true</value>
</right>
</object>
<object> <object>
<name>Constant.СообщениеОбменаДаннымиИзГлавногоУзла</name> <name>Constant.СообщениеОбменаДаннымиИзГлавногоУзла</name>
<right> <right>
@@ -14,37 +14,6 @@
<value>true</value> <value>true</value>
</right> </right>
</object> </object>
<object>
<name>Configuration.БиблиотекаСтандартныхПодсистем</name>
<right>
<name>MainWindowModeNormal</name>
<value>true</value>
</right>
<right>
<name>MainWindowModeWorkplace</name>
<value>true</value>
</right>
<right>
<name>MainWindowModeEmbeddedWorkplace</name>
<value>true</value>
</right>
<right>
<name>MainWindowModeFullscreenWorkplace</name>
<value>true</value>
</right>
<right>
<name>MainWindowModeKiosk</name>
<value>true</value>
</right>
<right>
<name>AnalyticsSystemClient</name>
<value>true</value>
</right>
<right>
<name>Output</name>
<value>true</value>
</right>
</object>
<object> <object>
<name>Catalog.РассылкиОтчетов.Command.СобытияРассылки</name> <name>Catalog.РассылкиОтчетов.Command.СобытияРассылки</name>
<right> <right>
@@ -107,6 +76,37 @@
<value>true</value> <value>true</value>
</right> </right>
</object> </object>
<object>
<name>Configuration.БиблиотекаСтандартныхПодсистем</name>
<right>
<name>MainWindowModeNormal</name>
<value>true</value>
</right>
<right>
<name>MainWindowModeWorkplace</name>
<value>true</value>
</right>
<right>
<name>MainWindowModeEmbeddedWorkplace</name>
<value>true</value>
</right>
<right>
<name>MainWindowModeFullscreenWorkplace</name>
<value>true</value>
</right>
<right>
<name>MainWindowModeKiosk</name>
<value>true</value>
</right>
<right>
<name>AnalyticsSystemClient</name>
<value>true</value>
</right>
<right>
<name>Output</name>
<value>true</value>
</right>
</object>
<restrictionTemplate> <restrictionTemplate>
<name>ДляОбъекта(ПолеОбъекта)</name> <name>ДляОбъекта(ПолеОбъекта)</name>
<condition>// ДляОбъекта(ПолеОбъекта = "") <condition>// ДляОбъекта(ПолеОбъекта = "")
@@ -1367,45 +1367,6 @@
<value>false</value> <value>false</value>
</right> </right>
</object> </object>
<object>
<name>Configuration.БиблиотекаСтандартныхПодсистем</name>
<right>
<name>Administration</name>
<value>false</value>
</right>
<right>
<name>UpdateDataBaseConfiguration</name>
<value>false</value>
</right>
<right>
<name>ThickClient</name>
<value>false</value>
</right>
<right>
<name>ExternalConnection</name>
<value>false</value>
</right>
<right>
<name>Automation</name>
<value>false</value>
</right>
<right>
<name>TechnicalSpecialistMode</name>
<value>false</value>
</right>
<right>
<name>ConfigurationExtensionsAdministration</name>
<value>false</value>
</right>
<right>
<name>InteractiveOpenExtDataProcessors</name>
<value>false</value>
</right>
<right>
<name>InteractiveOpenExtReports</name>
<value>false</value>
</right>
</object>
<object> <object>
<name>Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы</name> <name>Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы</name>
<right> <right>
@@ -5396,6 +5357,45 @@
<value>false</value> <value>false</value>
</right> </right>
</object> </object>
<object>
<name>Configuration.БиблиотекаСтандартныхПодсистем</name>
<right>
<name>Administration</name>
<value>false</value>
</right>
<right>
<name>UpdateDataBaseConfiguration</name>
<value>false</value>
</right>
<right>
<name>ThickClient</name>
<value>false</value>
</right>
<right>
<name>ExternalConnection</name>
<value>false</value>
</right>
<right>
<name>Automation</name>
<value>false</value>
</right>
<right>
<name>TechnicalSpecialistMode</name>
<value>false</value>
</right>
<right>
<name>ConfigurationExtensionsAdministration</name>
<value>false</value>
</right>
<right>
<name>InteractiveOpenExtDataProcessors</name>
<value>false</value>
</right>
<right>
<name>InteractiveOpenExtReports</name>
<value>false</value>
</right>
</object>
<object> <object>
<name>Constant.СообщениеОбменаДаннымиИзГлавногоУзла</name> <name>Constant.СообщениеОбменаДаннымиИзГлавногоУзла</name>
<right> <right>
@@ -3,6 +3,13 @@
<setForNewObjects>false</setForNewObjects> <setForNewObjects>false</setForNewObjects>
<setForAttributesByDefault>true</setForAttributesByDefault> <setForAttributesByDefault>true</setForAttributesByDefault>
<independentRightsOfChildObjects>false</independentRightsOfChildObjects> <independentRightsOfChildObjects>false</independentRightsOfChildObjects>
<object>
<name>DataProcessor.ЖурналРегистрации.Command.ЖурналРегистрации</name>
<right>
<name>View</name>
<value>true</value>
</right>
</object>
<object> <object>
<name>Configuration.БиблиотекаСтандартныхПодсистем</name> <name>Configuration.БиблиотекаСтандартныхПодсистем</name>
<right> <right>
@@ -34,13 +41,6 @@
<value>true</value> <value>true</value>
</right> </right>
</object> </object>
<object>
<name>DataProcessor.ЖурналРегистрации.Command.ЖурналРегистрации</name>
<right>
<name>View</name>
<value>true</value>
</right>
</object>
<object> <object>
<name>DataProcessor.ЖурналРегистрации</name> <name>DataProcessor.ЖурналРегистрации</name>
<right> <right>