3_2_1_446

This commit is contained in:
Компания 1С committed 2026-06-16 23:21:00 +03:00
1 parent 006ab9cdc2
commit 1577b50598
70 files changed
+2830 -1642

No files matched your search

@@ -102,6 +102,7 @@
Результат = Новый Структура; Результат = Новый Структура;
Результат.Вставить("ИдентификаторыОбъектовМетаданных", Ложь); Результат.Вставить("ИдентификаторыОбъектовМетаданных", Ложь);
Результат.Вставить("ИдентификаторыОбъектовРасширений", Ложь); Результат.Вставить("ИдентификаторыОбъектовРасширений", Ложь);
Результат.Вставить("ОбновлениеВыполняется", Ложь);
ПараметрыСеанса.ОбновлениеСправочниковИдентификаторов = Новый ФиксированнаяСтруктура(Результат); ПараметрыСеанса.ОбновлениеСправочниковИдентификаторов = Новый ФиксированнаяСтруктура(Результат);
@@ -648,6 +649,41 @@
Процедура ВыполнитьОбновлениеДанных(ЕстьИзменения, ЕстьУдаленные, ТолькоПроверка, Процедура ВыполнитьОбновлениеДанных(ЕстьИзменения, ЕстьУдаленные, ТолькоПроверка,
ЕстьКритичныеИзменения = Ложь, СписокКритичныхИзменений = "", ОбъектыРасширений = Ложь) Экспорт ЕстьКритичныеИзменения = Ложь, СписокКритичныхИзменений = "", ОбъектыРасширений = Ложь) Экспорт
Если Не ОбновлениеСправочниковИдентификаторов().ОбновлениеВыполняется Тогда
УстановитьОбновлениеИдентификаторовВыполняется(Истина);
Попытка
ВыполнитьОбновлениеДанныхПослеПроверкиЗацикливания(ЕстьИзменения, ЕстьУдаленные, ТолькоПроверка,
ЕстьКритичныеИзменения, СписокКритичныхИзменений, ОбъектыРасширений);
Исключение
УстановитьОбновлениеИдентификаторовВыполняется(Ложь);
ВызватьИсключение;
КонецПопытки;
УстановитьОбновлениеИдентификаторовВыполняется(Ложь);
Возврат;
КонецЕсли;
ИменаСлужебныхОбъектов = Новый Массив;
ИменаСлужебныхОбъектов.Добавить(Метаданные.Справочники.ВерсииРасширений.ПолноеИмя());
ИменаСлужебныхОбъектов.Добавить(Метаданные.Справочники.ИдентификаторыОбъектовМетаданных.ПолноеИмя());
ИменаСлужебныхОбъектов.Добавить(Метаданные.Справочники.ИдентификаторыОбъектовРасширений.ПолноеИмя());
ИменаСлужебныхОбъектов.Добавить(Метаданные.РегистрыСведений.ИдентификаторыОбъектовВерсийРасширений.ПолноеИмя());
ИменаСлужебныхОбъектов.Добавить(Метаданные.РегистрыСведений.ПараметрыРаботыПрограммы.ПолноеИмя());
ИменаСлужебныхОбъектов.Добавить(Метаданные.РегистрыСведений.ПараметрыРаботыВерсийРасширений.ПолноеИмя());
ТекстОшибки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
НСтр("ru = 'Недопустимое получение идентификаторов объектов метаданных в процессе их обновления.
|Следует исключать из подписок на события %1 служебные объекты, в частности:
|%2.'"),
"ПередЗаписью" + "/" + "ПриЗаписи",
"- " + СтрСоединить(ИменаСлужебныхОбъектов, "," + Символы.ПС + "- "));
ВызватьИсключение(ТекстОшибки, КатегорияОшибки.ОшибкаКонфигурации);
КонецПроцедуры
Процедура ВыполнитьОбновлениеДанныхПослеПроверкиЗацикливания(ЕстьИзменения, ЕстьУдаленные, ТолькоПроверка,
ЕстьКритичныеИзменения, СписокКритичныхИзменений, ОбъектыРасширений)
Если ОбъектыРасширений Если ОбъектыРасширений
И ЗначениеЗаполнено(ПараметрыСеанса.ПодключенныеРасширения) И ЗначениеЗаполнено(ПараметрыСеанса.ПодключенныеРасширения)
И Не ОбщегоНазначения.ДоступноИспользованиеРазделенныхДанных() Тогда И Не ОбщегоНазначения.ДоступноИспользованиеРазделенныхДанных() Тогда
@@ -3497,6 +3533,12 @@
// Для функций ИдентификаторыОбъектовМетаданныхСПопыткойПовтора, // Для функций ИдентификаторыОбъектовМетаданныхСПопыткойПовтора,
// ОбъектыМетаданныхПоИдентификаторамСПопыткойПовтора. // ОбъектыМетаданныхПоИдентификаторамСПопыткойПовтора.
// //
// Возвращаемое значение:
// ФиксированнаяСтруктура:
// * ИдентификаторыОбъектовМетаданных - Булево
// * ИдентификаторыОбъектовРасширений - Булево
// * ОбновлениеВыполняется - Булево
//
Функция ОбновлениеСправочниковИдентификаторов() Функция ОбновлениеСправочниковИдентификаторов()
УстановитьОтключениеБезопасногоРежима(Истина); УстановитьОтключениеБезопасногоРежима(Истина);
@@ -3511,6 +3553,22 @@
КонецФункции КонецФункции
Процедура УстановитьОбновлениеИдентификаторовВыполняется(ОбновлениеВыполняется)
УстановитьОтключениеБезопасногоРежима(Истина);
УстановитьПривилегированныйРежим(Истина);
ОбновлениеСправочников = Новый Структура(ПараметрыСеанса.ОбновлениеСправочниковИдентификаторов);
ОбновлениеСправочников.ОбновлениеВыполняется = ОбновлениеВыполняется;
ПараметрыСеанса.ОбновлениеСправочниковИдентификаторов = Новый ФиксированнаяСтруктура(ОбновлениеСправочников);
УстановитьПривилегированныйРежим(Ложь);
УстановитьОтключениеБезопасногоРежима(Ложь);
КонецПроцедуры
// Для функций ОбъектМетаданныхПоИдентификатору, ОбъектыМетаданныхПоИдентификаторам. // Для функций ОбъектМетаданныхПоИдентификатору, ОбъектыМетаданныхПоИдентификаторам.
Функция ОбъектыМетаданныхПоИдентификаторамСПопыткойПовтора(Идентификаторы, ВызыватьИсключение) Функция ОбъектыМетаданныхПоИдентификаторамСПопыткойПовтора(Идентификаторы, ВызыватьИсключение)
@@ -109,9 +109,7 @@
УстановитьПривилегированныйРежим(Истина); УстановитьПривилегированныйРежим(Истина);
СвойстваСеанса = УправлениеДоступомСлужебныйПовтИсп.ОписаниеСвойствВидовДоступаСеанса().СвойстваСеанса; Кэш = УправлениеДоступомСлужебныйПовтИсп.ОписаниеПоставляемыхПрофилейСеанса(Ложь);
НовоеЗначение = "";
ПроверенныеПоставляемыеПрофилиСеанса(СвойстваСеанса, НовоеЗначение);
НачатьТранзакцию(); НачатьТранзакцию();
Попытка Попытка
@@ -119,7 +117,7 @@
СтандартныеПодсистемыСервер.ОбновитьПараметрРаботыПрограммы( СтандартныеПодсистемыСервер.ОбновитьПараметрРаботыПрограммы(
"СтандартныеПодсистемы.УправлениеДоступом.ОписаниеПоставляемыхПрофилей", "СтандартныеПодсистемы.УправлениеДоступом.ОписаниеПоставляемыхПрофилей",
НовоеЗначение, ЕстьТекущиеИзменения); Кэш.ХешСумма, ЕстьТекущиеИзменения);
СтандартныеПодсистемыСервер.ДобавитьИзмененияПараметраРаботыПрограммы( СтандартныеПодсистемыСервер.ДобавитьИзмененияПараметраРаботыПрограммы(
"СтандартныеПодсистемы.УправлениеДоступом.ОписаниеПоставляемыхПрофилей", "СтандартныеПодсистемы.УправлениеДоступом.ОписаниеПоставляемыхПрофилей",
@@ -2954,7 +2952,6 @@
ПараметрыОбновления = ПоставляемыеПрофили.ПараметрыОбновления; ПараметрыОбновления = ПоставляемыеПрофили.ПараметрыОбновления;
Для Каждого СвойстваПрофиля Из ОписанияПрофилей Цикл Для Каждого СвойстваПрофиля Из ОписанияПрофилей Цикл
СвойстваПрофиля = СвойстваПрофиля; // см. Справочники.ПрофилиГруппДоступа.СвойстваПоставляемогоПрофиля
Если СвойстваПрофиля.ЭтоГруппа Тогда Если СвойстваПрофиля.ЭтоГруппа Тогда
Продолжить; Продолжить;
КонецЕсли; КонецЕсли;
@@ -37,9 +37,7 @@
&НаКлиенте &НаКлиенте
Процедура ПарольНачалоВыбора(Элемент, ДанныеВыбора, ВыборДобавлением, СтандартнаяОбработка) Процедура ПарольНачалоВыбора(Элемент, ДанныеВыбора, ВыборДобавлением, СтандартнаяОбработка)
РаботаСПочтовымиСообщениямиКлиент.ПолеПароляНачалоВыбора(Элемент, СтандартнаяОбработка);
РаботаСПочтовымиСообщениямиКлиент.ПолеПароляНачалоВыбора(Элемент, Пароль, СтандартнаяОбработка);
КонецПроцедуры КонецПроцедуры
#КонецОбласти #КонецОбласти
@@ -172,9 +172,11 @@
Возврат; Возврат;
КонецЕсли; КонецЕсли;
Если Параметр.Отозван Тогда Если Параметр.Отозван Тогда
ЭтотОбъект.Прочитать();
ОбновитьВидимостьПредупреждения(); ОбновитьВидимостьПредупреждения();
КонецЕсли; КонецЕсли;
Если Параметр.Установлен Тогда Если Параметр.Установлен Тогда
ЭтотОбъект.Прочитать();
ПодключитьОбработчикОжидания("ОбработчикОжиданияПоказатьСостояниеСертификата", 0.1, Истина); ПодключитьОбработчикОжидания("ОбработчикОжиданияПоказатьСостояниеСертификата", 0.1, Истина);
КонецЕсли; КонецЕсли;
Возврат; Возврат;
@@ -61,11 +61,9 @@
Если Не ПроверитьУникальностьТомаХраненияРазмещенногоВХранилищеДвоичныхДанных(Ссылка, ВидТомаХраненияФайлов, СпособХраненияФайлов) Тогда Если Не ПроверитьУникальностьТомаХраненияРазмещенногоВХранилищеДвоичныхДанных(Ссылка, ВидТомаХраненияФайлов, СпособХраненияФайлов) Тогда
// АПК:1297-выкл Локализация строки выполняется в коде ниже.
ТекстОшибки = ТекстОшибкиНеуникальностиТомаХранилищаДвоичныхДанных(); ТекстОшибки = ТекстОшибкиНеуникальностиТомаХранилищаДвоичныхДанных();
// АПК:1297-вкл
ОбщегоНазначения.СообщитьПользователю(НСтр(ТекстОшибки), , "СпособХраненияФайлов", "Объект", Отказ); ОбщегоНазначения.СообщитьПользователю(ТекстОшибки,, "СпособХраненияФайлов", "Объект", Отказ);
КонецЕсли; КонецЕсли;
Если МаксимальныйРазмер <> 0 Тогда Если МаксимальныйРазмер <> 0 Тогда
@@ -177,9 +175,7 @@
Если Не ПометкаУдаления Тогда Если Не ПометкаУдаления Тогда
Если Не ПроверитьУникальностьТомаХраненияРазмещенногоВХранилищеДвоичныхДанных(Ссылка, ВидТомаХраненияФайлов, СпособХраненияФайлов) Тогда Если Не ПроверитьУникальностьТомаХраненияРазмещенногоВХранилищеДвоичныхДанных(Ссылка, ВидТомаХраненияФайлов, СпособХраненияФайлов) Тогда
// АПК:1297-выкл Локализация строки выполняется в коде ниже.
ТекстОшибки = ТекстОшибкиНеуникальностиТомаХранилищаДвоичныхДанных(Истина); ТекстОшибки = ТекстОшибкиНеуникальностиТомаХранилищаДвоичныхДанных(Истина);
// АПК:1297-вкл
ВызватьИсключение НСтр(ТекстОшибки); ВызватьИсключение НСтр(ТекстОшибки);
КонецЕсли; КонецЕсли;
@@ -286,40 +282,45 @@
КонецФункции КонецФункции
Функция ПредставлениеСпособаХРаненияФайловДляСообщения(СпособХраненияФайлов)
// АПК:1297-выкл Результат функции локализуется в процедурах ОбработкаПроверкиЗаполнения и ПриЗаписи.
Если СпособХраненияФайлов = Перечисления.СпособыХраненияФайлов.ВоВнешнемХранилищеПоПротоколуS3 Тогда
Результат = "во внешнем хранилище двоичных данных (по протоколу S3)";
ИначеЕсли СпособХраненияФайлов = Перечисления.СпособыХраненияФайлов.ВоВстроенномХранилище Тогда
Результат = "во встроенном хранилище двоичных данных";
Иначе
Результат = Строка(СпособХраненияФайлов);
КонецЕсли;
// АПК:1297-вкл
Возврат Результат;
КонецФункции
Функция ТекстОшибкиНеуникальностиТомаХранилищаДвоичныхДанных(ПроверкаПриЗаписи = Ложь) Функция ТекстОшибкиНеуникальностиТомаХранилищаДвоичныхДанных(ПроверкаПриЗаписи = Ложь)
// АПК:1297-выкл Локализация строки выполняется в коде процедур ОбработкаПроверкиЗаполнения и ПриЗаписи.
ДополнениеПриПроверкеПриЗаписи = "";
Если ПроверкаПриЗаписи Тогда Если ПроверкаПриЗаписи Тогда
ДополнениеПриПроверкеПриЗаписи = " и не помеченный на удаление"; Если СпособХраненияФайлов = Перечисления.СпособыХраненияФайлов.ВоВнешнемХранилищеПоПротоколуS3 Тогда
Результат = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
НСтр("ru = 'В системе уже существует том с видом %1, размещающий данные во внешнем хранилище двоичных данных (по протоколу S3) и не помеченный на удаление.'"),
НРег(ВидТомаХраненияФайлов));
ИначеЕсли СпособХраненияФайлов = Перечисления.СпособыХраненияФайлов.ВоВстроенномХранилище Тогда
Результат = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
НСтр("ru = 'В системе уже существует том с видом %1, размещающий данные во встроенном хранилище двоичных данных и не помеченный на удаление.'"),
НРег(ВидТомаХраненияФайлов));
Иначе
Результат = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
НСтр("ru = 'В системе уже существует том с видом %1, размещающий данные %2 и не помеченный на удаление'"),
НРег(ВидТомаХраненияФайлов),
Строка(СпособХраненияФайлов));
КонецЕсли;
Иначе
Если СпособХраненияФайлов = Перечисления.СпособыХраненияФайлов.ВоВнешнемХранилищеПоПротоколуS3 Тогда
Результат = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
НСтр("ru = 'В системе уже существует том с видом %1, размещающий данные во внешнем хранилище двоичных данных (по протоколу S3).'"),
НРег(ВидТомаХраненияФайлов));
ИначеЕсли СпособХраненияФайлов = Перечисления.СпособыХраненияФайлов.ВоВстроенномХранилище Тогда
Результат = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
НСтр("ru = 'В системе уже существует том с видом %1, размещающий данные во встроенном хранилище двоичных данных.'"),
НРег(ВидТомаХраненияФайлов));
Иначе
Результат = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
НСтр("ru = 'В системе уже существует том с видом %1, размещающий данные %2. Используйте другой том.'"),
НРег(ВидТомаХраненияФайлов),
Строка(СпособХраненияФайлов));
КонецЕсли;
КонецЕсли; КонецЕсли;
Результат = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку("ru = 'В системе уже существует том с видом %1, размещающий данные %2%3'",
НРег(ВидТомаХраненияФайлов),
ПредставлениеСпособаХРаненияФайловДляСообщения(СпособХраненияФайлов),
ДополнениеПриПроверкеПриЗаписи);
// АПК:1297-вкл
Возврат Результат; Возврат Результат;
КонецФункции КонецФункции
#КонецОбласти #КонецОбласти
#Иначе #Иначе
@@ -310,10 +310,6 @@
<key>ru</key> <key>ru</key>
<value>Команды списка</value> <value>Команды списка</value>
</title> </title>
<toolTip>
<key>ru</key>
<value>Команды списка</value>
</toolTip>
<extendedTooltip> <extendedTooltip>
<name>КомандыСпискаРасширеннаяПодсказка</name> <name>КомандыСпискаРасширеннаяПодсказка</name>
<id>70</id> <id>70</id>
@@ -654,6 +654,7 @@
<autoFill>true</autoFill> <autoFill>true</autoFill>
</contextMenu> </contextMenu>
<type>Label</type> <type>Label</type>
<width>80</width>
<autoMaxWidth>true</autoMaxWidth> <autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight> <autoMaxHeight>true</autoMaxHeight>
<skipOnInput>false</skipOnInput> <skipOnInput>false</skipOnInput>
@@ -700,6 +701,7 @@
<key>ru</key> <key>ru</key>
<value>Дерево форма заполнения</value> <value>Дерево форма заполнения</value>
</title> </title>
<horizontalStretch>false</horizontalStretch>
<extendedTooltip> <extendedTooltip>
<name>ДеревоФормаЗаполненияРасширеннаяПодсказка</name> <name>ДеревоФормаЗаполненияРасширеннаяПодсказка</name>
<id>103</id> <id>103</id>
@@ -87,6 +87,23 @@
КонецПроцедуры КонецПроцедуры
&НаКлиенте
Процедура Подключаемый_КомментарийОткрытие(Элемент, СтандартнаяОбработка)
Если АнкетированиеКлиент.ЕстьРодительскаяГруппаТолькоПросмотр(Элемент) Тогда
Возврат;
КонецЕсли;
СтандартнаяОбработка = Ложь;
Если Элементы.Найти(Элемент.Имя) = Неопределено Тогда
Возврат;
КонецЕсли;
ОбщегоНазначенияКлиент.ПоказатьФормуРедактированияКомментария(
Элемент.ТекстРедактирования, ЭтотОбъект, Элемент.Имя, Элемент.ПодсказкаВвода);
КонецПроцедуры
#КонецОбласти #КонецОбласти
#Область ОбработчикиКомандФормы #Область ОбработчикиКомандФормы
@@ -1414,7 +1414,7 @@
КнопкаНастройкиФормата.КартинкаЗначений = БиблиотекаКартинок.ПараметрыВыводаКомпоновкиДанных; КнопкаНастройкиФормата.КартинкаЗначений = БиблиотекаКартинок.ПараметрыВыводаКомпоновкиДанных;
КнопкаНастройкиФормата.Заголовок = НСтр("ru = 'Настройка формата'"); КнопкаНастройкиФормата.Заголовок = НСтр("ru = 'Настройка формата'");
КнопкаНастройкиФормата.ПоложениеЗаголовка = ПоложениеЗаголовкаЭлементаФормы.Нет; КнопкаНастройкиФормата.ПоложениеЗаголовка = ПоложениеЗаголовкаЭлементаФормы.Нет;
КнопкаНастройкиФормата.ГиперссылкаЯчейки = Истина; КнопкаНастройкиФормата.ОтображениеГиперссылкиЯчейки = ОтображениеГиперссылкиЯчейки.Отображать;
КнопкаНастройкиФормата.ОтображатьВПодвале = Ложь; КнопкаНастройкиФормата.ОтображатьВПодвале = Ложь;
УстановитьПримерыЗначений(); УстановитьПримерыЗначений();
@@ -3961,7 +3961,7 @@
КнопкаНастройкиФормата.КартинкаЗначений = БиблиотекаКартинок.ПараметрыВыводаКомпоновкиДанных; КнопкаНастройкиФормата.КартинкаЗначений = БиблиотекаКартинок.ПараметрыВыводаКомпоновкиДанных;
КнопкаНастройкиФормата.Заголовок = НСтр("ru = 'Настройка формата'"); КнопкаНастройкиФормата.Заголовок = НСтр("ru = 'Настройка формата'");
КнопкаНастройкиФормата.ПоложениеЗаголовка = ПоложениеЗаголовкаЭлементаФормы.Нет; КнопкаНастройкиФормата.ПоложениеЗаголовка = ПоложениеЗаголовкаЭлементаФормы.Нет;
КнопкаНастройкиФормата.ГиперссылкаЯчейки = Истина; КнопкаНастройкиФормата.ОтображениеГиперссылкиЯчейки = ОтображениеГиперссылкиЯчейки.Отображать;
КнопкаНастройкиФормата.ОтображатьВПодвале = Ложь; КнопкаНастройкиФормата.ОтображатьВПодвале = Ложь;
УстановитьПримерыЗначений(); УстановитьПримерыЗначений();
@@ -720,7 +720,6 @@
// АПК: 1297-выкл Данные адресного классификатора, не локализуются // АПК: 1297-выкл Данные адресного классификатора, не локализуются
Результат = Новый Соответствие; Результат = Новый Соответствие;
Результат.Вставить("Г.О.", "Городской округ"); // @Non-NLS-1, @Non-NLS-2 Результат.Вставить("Г.О.", "Городской округ"); // @Non-NLS-1, @Non-NLS-2
Результат.Вставить("М.Р-Н", "муниципальный район"); // @Non-NLS-1, @Non-NLS-2
Результат.Вставить("ВН.ТЕР.", "Внутригородская территория"); // @Non-NLS-1, @Non-NLS-2 Результат.Вставить("ВН.ТЕР.", "Внутригородская территория"); // @Non-NLS-1, @Non-NLS-2
Результат.Вставить("ВН.ТЕР.Г.", "Внутригородская территория"); // @Non-NLS-1, @Non-NLS-2 Результат.Вставить("ВН.ТЕР.Г.", "Внутригородская территория"); // @Non-NLS-1, @Non-NLS-2
Результат.Вставить("М.О.", "Муниципальный округ"); // @Non-NLS-1, @Non-NLS-2 Результат.Вставить("М.О.", "Муниципальный округ"); // @Non-NLS-1, @Non-NLS-2
@@ -739,7 +738,6 @@
Результат.Вставить("Г. П.", "Городское поселение"); // @Non-NLS-1, @Non-NLS-2 Результат.Вставить("Г. П.", "Городское поселение"); // @Non-NLS-1, @Non-NLS-2
Результат.Вставить("ВН.Р-Н", "Внутригородской район"); // @Non-NLS-1, @Non-NLS-2 Результат.Вставить("ВН.Р-Н", "Внутригородской район"); // @Non-NLS-1, @Non-NLS-2
Результат.Вставить("С.П.", "Сельское поселение"); // @Non-NLS-1, @Non-NLS-2 Результат.Вставить("С.П.", "Сельское поселение"); // @Non-NLS-1, @Non-NLS-2
Результат.Вставить("МЕЖ.ТЕР.", "Межселенная территория"); // @Non-NLS-1, @Non-NLS-2
// АПК: 1297-вкл // АПК: 1297-вкл
@@ -4693,7 +4693,26 @@
Если ЭтоРегион И ЗначениеЗаполнено(Адрес["areaValue"]) Тогда Если ЭтоРегион И ЗначениеЗаполнено(Адрес["areaValue"]) Тогда
Возврат Адрес["areaValue"]; Возврат Адрес["areaValue"];
КонецЕсли; КонецЕсли;
// АПК: 1297-выкл Данные адресного классификатора, не локализуются
Если СтрСравнить(ИмяУровня, "munDistrict") = 0 Тогда
Если СтрНачинаетсяС(ВРег(Адрес[ИмяУровня]), ВРег("Муниципальный район"))
Или СтрНачинаетсяС(ВРег(Адрес[ИмяУровня]), ВРег("Муниципальные районы")) Тогда
Возврат Адрес[ИмяУровня];
КонецЕсли;
КонецЕсли;
Если СтрСравнить(ИмяУровня, "settlement") = 0 Тогда
Если СтрНачинаетсяС(ВРег(Адрес[ИмяУровня]), ВРег("Межселенные территории"))
Или СтрНачинаетсяС(ВРег(Адрес[ИмяУровня]), ВРег("Межселенная территория"))
Или СтрНачинаетсяС(ВРег(Адрес[ИмяУровня]), ВРег("Эвенкийское")) Тогда
Возврат Адрес[ИмяУровня];
КонецЕсли;
КонецЕсли;
// АПК: 1297-вкл
Возврат СоединитьНаименованиеИТипАдресногоОбъекта(Адрес[ИмяУровня], Адрес[ИмяУровня + "Type"], ЭтоРегион); Возврат СоединитьНаименованиеИТипАдресногоОбъекта(Адрес[ИмяУровня], Адрес[ИмяУровня + "Type"], ЭтоРегион);
КонецФункции КонецФункции
@@ -4704,7 +4723,6 @@
Возврат Номер; Возврат Номер;
КонецЕсли; КонецЕсли;
Возврат ТРег(ТипЗданияИлиПомещения) + " "+ Номер; Возврат ТРег(ТипЗданияИлиПомещения) + " "+ Номер;
КонецФункции КонецФункции
@@ -8928,7 +8946,7 @@
Процедура ОбработатьОбщепринятыеСокращенияИУдалитьТочкуВКонецТипа(АдресПоЧастям) Процедура ОбработатьОбщепринятыеСокращенияИУдалитьТочкуВКонецТипа(АдресПоЧастям)
ОбщепринятыеСокращения = ОбщепринятыеСокращенияЗданийИПомещений(); ОбщепринятыеСокращения = ОбщепринятыеСокращенияАдресныхЭлементовИОбъектов();
Фильтр = Новый Структура("Уровень", 0); Фильтр = Новый Структура("Уровень", 0);
НераспознанныеСтроки = АдресПоЧастям.НайтиСтроки(Фильтр); НераспознанныеСтроки = АдресПоЧастям.НайтиСтроки(Фильтр);
@@ -8963,20 +8981,25 @@
КонецПроцедуры КонецПроцедуры
Функция ОбщепринятыеСокращенияЗданийИПомещений() Функция ОбщепринятыеСокращенияАдресныхЭлементовИОбъектов()
СтатическиеСокращения = Новый Соответствие; СтатическиеСокращения = Новый Соответствие;
СтатическиеСокращения.Вставить("КОРП", "Корпус");
СтатическиеСокращения.Вставить("К", "Корпус"); // Адресные элементы
СтатическиеСокращения.Вставить("КВ", "Квартира"); СтатическиеСокращения.Вставить("ЛИНИЯ", "Лн.");
СтатическиеСокращения.Вставить("КВАРТ", "Квартира");
СтатическиеСокращения.Вставить("ОФ", "Офис"); // Дома, здания, помещения, офисы, квартиры
СтатическиеСокращения.Вставить("ПОМЕЩ", "Помещение"); СтатическиеСокращения.Вставить("КОРП", "Корпус");
СтатическиеСокращения.Вставить("ПОМ", "Помещение"); СтатическиеСокращения.Вставить("К", "Корпус");
СтатическиеСокращения.Вставить("Д", "Дом"); СтатическиеСокращения.Вставить("КВ", "Квартира");
СтатическиеСокращения.Вставить("СТР", "Строение"); СтатическиеСокращения.Вставить("КВАРТ", "Квартира");
СтатическиеСокращения.Вставить("ОФ", "Офис");
СтатическиеСокращения.Вставить("ПОМЕЩ", "Помещение");
СтатическиеСокращения.Вставить("ПОМ", "Помещение");
СтатическиеСокращения.Вставить("Д", "Дом");
СтатическиеСокращения.Вставить("СТР", "Строение");
СтатическиеСокращения.Вставить("СТРОЕН", "Строение"); СтатическиеСокращения.Вставить("СТРОЕН", "Строение");
СтатическиеСокращения.Вставить("ЛИТЕР", "Литера"); СтатическиеСокращения.Вставить("ЛИТЕР", "Литера");
Возврат СтатическиеСокращения; Возврат СтатическиеСокращения;
@@ -9849,11 +9872,7 @@
ОбщегоНазначения.РазрешенДоступКИнтернетСервисам(Истина); ОбщегоНазначения.РазрешенДоступКИнтернетСервисам(Истина);
URLПорталаПоддержки = "https://portal.1c.ru/"; URLПорталаПоддержки = URLСтраницыПорталаПоддержки();
СохраненныйТекущийURLПорталаПоддержки = ОбщегоНазначения.ХранилищеОбщихНастроекЗагрузить("АдресныйКлассификатор", "URLПорталаПоддержки");
Если ТипЗнч(СохраненныйТекущийURLПорталаПоддержки) = Тип("Строка") И ЗначениеЗаполнено(СохраненныйТекущийURLПорталаПоддержки) Тогда
URLПорталаПоддержки = СохраненныйТекущийURLПорталаПоддержки;
КонецЕсли;
УстановитьОтключениеБезопасногоРежима(Истина); УстановитьОтключениеБезопасногоРежима(Истина);
УстановитьПривилегированныйРежим(Истина); УстановитьПривилегированныйРежим(Истина);
@@ -9888,22 +9907,6 @@
ЗащищенноеСоединение = ОбщегоНазначенияКлиентСервер.НовоеЗащищенноеСоединение(); ЗащищенноеСоединение = ОбщегоНазначенияКлиентСервер.НовоеЗащищенноеСоединение();
ИспользоватьАутентификациюОС = Ложь; ИспользоватьАутентификациюОС = Ложь;
Если Не ОбщегоНазначения.РазделениеВключено() Тогда
СохраненныйТекущийURLВебСервиса = ОбщегоНазначения.ХранилищеОбщихНастроекЗагрузить("АдресныйКлассификатор", "URLСервисаКлассификатора1С");
Если ТипЗнч(СохраненныйТекущийURLВебСервиса) = Тип("Строка") И ЗначениеЗаполнено(СохраненныйТекущийURLВебСервиса) Тогда
URLВебСервисаПоЧастям = СтрРазделить(СохраненныйТекущийURLВебСервиса, ":", Ложь);
ИмяСервера = СокрЛП(URLВебСервисаПоЧастям[0]);
Если URLВебСервисаПоЧастям.Количество() > 1 Тогда
ТипЧисло = Новый ОписаниеТипов("Число");
Порт = ТипЧисло.ПривестиЗначение(URLВебСервисаПоЧастям[1]);
ЗащищенноеСоединение = Неопределено;
Если Порт = 0 Тогда
Порт = 80;
КонецЕсли;
КонецЕсли;
КонецЕсли;
КонецЕсли;
УстановитьОтключениеБезопасногоРежима(Истина); УстановитьОтключениеБезопасногоРежима(Истина);
Попытка Попытка
@@ -9955,6 +9958,10 @@
КонецФункции КонецФункции
Функция URLСтраницыПорталаПоддержки()
Возврат "https://portal.1c.ru/";
КонецФункции
Функция ВыполнитьЗапросЧерезВебСервис(СтрокаЗапроса, ВремяОжидания = 60) Функция ВыполнитьЗапросЧерезВебСервис(СтрокаЗапроса, ВремяОжидания = 60)
Результат = НовыйОтветИзВебСервиса(); Результат = НовыйОтветИзВебСервиса();
@@ -69,7 +69,6 @@
МодульВариантыОтчетов.НастроитьОтчетВМодулеМенеджера(Настройки, Метаданные.Отчеты.АналитическийОтчетПоАнкетированию); МодульВариантыОтчетов.НастроитьОтчетВМодулеМенеджера(Настройки, Метаданные.Отчеты.АналитическийОтчетПоАнкетированию);
КонецПроцедуры КонецПроцедуры
// См. РассылкаОтчетовПереопределяемый.ОпределитьИсключаемыеОтчеты // См. РассылкаОтчетовПереопределяемый.ОпределитьИсключаемыеОтчеты
Процедура ПриОпределенииИсключаемыхОтчетов(ИсключаемыеОтчеты) Экспорт Процедура ПриОпределенииИсключаемыхОтчетов(ИсключаемыеОтчеты) Экспорт
@@ -623,7 +622,7 @@
ИначеЕсли СтрокаДерева.ТипОтвета = Перечисления.ТипыОтветовНаВопрос.НесколькоВариантовИз Тогда ИначеЕсли СтрокаДерева.ТипОтвета = Перечисления.ТипыОтветовНаВопрос.НесколькоВариантовИз Тогда
ВариантыОтветовНаВопрос = ВариантыОтветовНаВопрос(СтрокаДерева.ЭлементарныйВопрос, Форма); ВариантыОтветовНаВопрос = ВариантыОтветовНаВопрос(СтрокаДерева.ЭлементарныйВопрос, Форма);
ОписаниеТипаСтроки = Новый ОписаниеТипов("Строка", , Новый КвалификаторыСтроки(150)); ОписаниеТипаСтроки = Новый ОписаниеТипов("Строка");
ОписаниеТипаБулево = Новый ОписаниеТипов("Булево"); ОписаниеТипаБулево = Новый ОписаниеТипов("Булево");
Счетчик = 0; Счетчик = 0;
@@ -642,7 +641,7 @@
Если (СтрокаДерева.ТипОтвета <> Перечисления.ТипыОтветовНаВопрос.НесколькоВариантовИз) Если (СтрокаДерева.ТипОтвета <> Перечисления.ТипыОтветовНаВопрос.НесколькоВариантовИз)
И (СтрокаДерева.ТребуетсяКомментарий) Тогда И (СтрокаДерева.ТребуетсяКомментарий) Тогда
ОписаниеТипаСтроки = Новый ОписаниеТипов("Строка", , Новый КвалификаторыСтроки(150)); ОписаниеТипаСтроки = Новый ОписаниеТипов("Строка");
ДобавляемыеРеквизиты.Добавить(Новый РеквизитФормы(ИмяВопроса + "_Комментарий", ОписаниеТипаСтроки, , ДобавляемыеРеквизиты.Добавить(Новый РеквизитФормы(ИмяВопроса + "_Комментарий", ОписаниеТипаСтроки, ,
СтрокаДерева.ПояснениеКомментария)); СтрокаДерева.ПояснениеКомментария));
КонецЕсли; КонецЕсли;
@@ -766,7 +765,7 @@
ВариантыОтветовНаВопрос = ВариантыОтветовНаВопрос(СтрокаКомплексногоВопроса.ЭлементарныйВопрос, Форма); ВариантыОтветовНаВопрос = ВариантыОтветовНаВопрос(СтрокаКомплексногоВопроса.ЭлементарныйВопрос, Форма);
ОписаниеТипаСтроки = Новый ОписаниеТипов("Строка", , Новый КвалификаторыСтроки(150)); ОписаниеТипаСтроки = Новый ОписаниеТипов("Строка");
ОписаниеТипаБулево = Новый ОписаниеТипов("Булево"); ОписаниеТипаБулево = Новый ОписаниеТипов("Булево");
Счетчик = 0; Счетчик = 0;
@@ -796,7 +795,7 @@
Если (ПредставлениеТипВопроса.ТипОтвета <> Перечисления.ТипыОтветовНаВопрос.НесколькоВариантовИз) Если (ПредставлениеТипВопроса.ТипОтвета <> Перечисления.ТипыОтветовНаВопрос.НесколькоВариантовИз)
И (СтрокаКомплексногоВопроса.ТребуетсяКомментарий) Тогда И (СтрокаКомплексногоВопроса.ТребуетсяКомментарий) Тогда
ОписаниеТипаСтроки = Новый ОписаниеТипов("Строка", , Новый КвалификаторыСтроки(150)); ОписаниеТипаСтроки = Новый ОписаниеТипов("Строка");
ДобавляемыеРеквизиты.Добавить(Новый РеквизитФормы(ИмяВопроса + "_Комментарий_" + Формат( ДобавляемыеРеквизиты.Добавить(Новый РеквизитФормы(ИмяВопроса + "_Комментарий_" + Формат(
СтрокаКомплексногоВопроса.НомерСтроки, "ЧГ="), ОписаниеТипаСтроки, , СтрокаКомплексногоВопроса.НомерСтроки, "ЧГ="), ОписаниеТипаСтроки, ,
СтрокаКомплексногоВопроса.ПояснениеКомментария)); СтрокаКомплексногоВопроса.ПояснениеКомментария));
@@ -1163,8 +1162,9 @@
Элемент.АвтоМаксимальнаяШирина = Ложь; Элемент.АвтоМаксимальнаяШирина = Ложь;
Элемент.ПодсказкаВвода = СтрокаТаблицы.ПояснениеКомментария; Элемент.ПодсказкаВвода = СтрокаТаблицы.ПояснениеКомментария;
Элемент.ПоложениеЗаголовка = ПоложениеЗаголовкаЭлементаФормы.Нет; Элемент.ПоложениеЗаголовка = ПоложениеЗаголовкаЭлементаФормы.Нет;
Элемент.РастягиватьПоГоризонтали = Неопределено; Элемент.РастягиватьПоГоризонтали = Истина;
Элемент.КнопкаВыбора = Истина; Элемент.КнопкаОткрытия = Истина;
Элемент.УстановитьДействие("Открытие", "Подключаемый_КомментарийОткрытие");
КонецЕсли; КонецЕсли;
КонецЕсли; КонецЕсли;
@@ -1573,8 +1573,9 @@
"ПояснениеКомментария"); "ПояснениеКомментария");
Элемент.ПодсказкаВвода = ПояснениеКомментария; Элемент.ПодсказкаВвода = ПояснениеКомментария;
Элемент.ПоложениеЗаголовка = ПоложениеЗаголовкаЭлементаФормы.Нет; Элемент.ПоложениеЗаголовка = ПоложениеЗаголовкаЭлементаФормы.Нет;
Элемент.РастягиватьПоГоризонтали = Ложь; Элемент.РастягиватьПоГоризонтали = Истина;
Элемент.КнопкаВыбора = Истина; Элемент.КнопкаОткрытия = Истина;
Элемент.УстановитьДействие("Открытие", "Подключаемый_КомментарийОткрытие");
КонецЕсли; КонецЕсли;
КонецЦикла; КонецЦикла;
@@ -1816,7 +1817,7 @@
| ВопросыШаблонаАнкеты.ТипВопроса КАК ТипВопроса, | ВопросыШаблонаАнкеты.ТипВопроса КАК ТипВопроса,
| ВопросыШаблонаАнкеты.ТипТабличногоВопроса КАК ТипТабличногоВопроса, | ВопросыШаблонаАнкеты.ТипТабличногоВопроса КАК ТипТабличногоВопроса,
| ВопросыШаблонаАнкеты.ЭлементарныйВопрос КАК ЭлементарныйВопрос, | ВопросыШаблонаАнкеты.ЭлементарныйВопрос КАК ЭлементарныйВопрос,
| ""Вопрос"" КАК ТипСтроки, | &ИдентификаторВопрос КАК ТипСтроки,
| ВопросыШаблонаАнкеты.РодительВопрос КАК РодительВопрос, | ВопросыШаблонаАнкеты.РодительВопрос КАК РодительВопрос,
| ВопросыШаблонаАнкеты.Подсказка КАК Подсказка, | ВопросыШаблонаАнкеты.Подсказка КАК Подсказка,
| ВопросыШаблонаАнкеты.СпособОтображенияПодсказки КАК СпособОтображенияПодсказки, | ВопросыШаблонаАнкеты.СпособОтображенияПодсказки КАК СпособОтображенияПодсказки,
@@ -1922,6 +1923,7 @@
Запрос.УстановитьПараметр("ШаблонАнкеты", ШаблонАнкеты); Запрос.УстановитьПараметр("ШаблонАнкеты", ШаблонАнкеты);
Запрос.УстановитьПараметр("Раздел", Раздел); Запрос.УстановитьПараметр("Раздел", Раздел);
Запрос.УстановитьПараметр("ИдентификаторВопрос", "Вопрос");
МассивРезультатовЗапросов = Запрос.ВыполнитьПакет(); МассивРезультатовЗапросов = Запрос.ВыполнитьПакет();
@@ -371,4 +371,20 @@
КонецПроцедуры КонецПроцедуры
Функция ЕстьРодительскаяГруппаТолькоПросмотр(Элемент) Экспорт
Родитель = Элемент.Родитель;
Пока ТипЗнч(Родитель) = Тип("ГруппаФормы") Цикл
Если Родитель.ТолькоПросмотр Тогда
Возврат Истина;
КонецЕсли;
Родитель = Родитель.Родитель;
КонецЦикла;
Возврат Ложь;
КонецФункции
#КонецОбласти #КонецОбласти
@@ -94,6 +94,7 @@
ОбщаяКомпонента = Ссылка.ПолучитьОбъект(); ОбщаяКомпонента = Ссылка.ПолучитьОбъект();
ОбщаяКомпонента.Заблокировать(); ОбщаяКомпонента.Заблокировать();
ОбщаяКомпонента.ПометкаУдаления = Ложь;
КонецЕсли; КонецЕсли;
ОбщаяКомпонента.Заполнить(Неопределено); ОбщаяКомпонента.Заполнить(Неопределено);
@@ -338,12 +338,10 @@
// расширений конфигурации. Имеет приоритет над параметром ЗапуститьНеВФоне. // расширений конфигурации. Имеет приоритет над параметром ЗапуститьНеВФоне.
// * СРасширениямиБазыДанных - Булево - если Истина, то фоновое задание будет запущено с последней версией // * СРасширениямиБазыДанных - Булево - если Истина, то фоновое задание будет запущено с последней версией
// расширений конфигурации. Имеет приоритет над параметром ЗапуститьНеВФоне. // расширений конфигурации. Имеет приоритет над параметром ЗапуститьНеВФоне.
// * ВнешнийОтчетОбработка - Неопределено - по умолчанию. // * ВнешнийОтчетОбработка - см. НовоеОписаниеВнешнегоОтчетаОбработки
// - ДвоичныеДанные - когда указано имя метода, которое начинается // - Неопределено - по умолчанию, когда указано имя метода, которое
// с "ВнешнийОтчет." или "ВнешняяОбработка.". // не начинается с "ВнешнийОтчет." или "ВнешняяОбработка.", в противном случае
// Для вызова такого метода требуется право интерактивного открытия // следует использовать конструктор описания внешнего отчета или обработки.
// внешнего отчета или обработки соответственно.
// Внешний отчет или обработка подключаются с защитой от опасных действий.
// * ПрерватьВыполнениеЕслиОшибка - Булево - если Истина, то при возникновении ошибки в одном из дочерних фоновых // * ПрерватьВыполнениеЕслиОшибка - Булево - если Истина, то при возникновении ошибки в одном из дочерних фоновых
// заданий, выполнение многопоточного фонового задания будет прервано. // заданий, выполнение многопоточного фонового задания будет прервано.
// Выполнение уже запущенных дочерних фоновых задания будет отменно. // Выполнение уже запущенных дочерних фоновых задания будет отменно.
@@ -390,12 +388,10 @@
// расширений конфигурации. Имеет приоритет над параметром ЗапуститьНеВФоне. // расширений конфигурации. Имеет приоритет над параметром ЗапуститьНеВФоне.
// * СРасширениямиБазыДанных - Булево - если Истина, то фоновое задание будет запущено с последней версией // * СРасширениямиБазыДанных - Булево - если Истина, то фоновое задание будет запущено с последней версией
// расширений конфигурации. Имеет приоритет над параметром ЗапуститьНеВФоне. // расширений конфигурации. Имеет приоритет над параметром ЗапуститьНеВФоне.
// * ВнешнийОтчетОбработка - Неопределено - по умолчанию. // * ВнешнийОтчетОбработка - см. НовоеОписаниеВнешнегоОтчетаОбработки
// - ДвоичныеДанные - когда указано имя метода, которое начинается // - Неопределено - по умолчанию, когда указано имя метода, которое
// с "ВнешнийОтчет." или "ВнешняяОбработка.". // не начинается с "ВнешнийОтчет." или "ВнешняяОбработка.", в противном случае
// Для вызова такого метода требуется право интерактивного открытия // следует использовать конструктор описания внешнего отчета или обработки.
// внешнего отчета или обработки соответственно.
// Внешний отчет или обработка подключаются с защитой от опасных действий.
// * ПрерватьВыполнениеЕслиОшибка - Булево - если Истина, то при возникновении ошибки в одном из дочерних фоновых // * ПрерватьВыполнениеЕслиОшибка - Булево - если Истина, то при возникновении ошибки в одном из дочерних фоновых
// заданий, выполнение многопоточного фонового задания будет прервано. // заданий, выполнение многопоточного фонового задания будет прервано.
// Выполнение уже запущенных дочерних фоновых задания будет отменно. // Выполнение уже запущенных дочерних фоновых задания будет отменно.
@@ -502,15 +498,8 @@
ПроверитьИмяПроцедуры(ИмяПроцедуры, ПроверитьИмяПроцедуры(ИмяПроцедуры,
"ИмяПроцедуры", "ДлительныеОперации.ВыполнитьВФоне", ПараметрыВыполнения); "ИмяПроцедуры", "ДлительныеОперации.ВыполнитьВФоне", ПараметрыВыполнения);
// Обратная совместимость ЗаполнитьПараметрыВыполненияСУчетомОбратнойСовместимости(ПараметрыВыполнения);
НовыеПараметрыВыполнения = ПараметрыВыполненияВФоне(); ПроверитьПараметрыВыполнения(ИмяПроцедуры, ПараметрыВыполнения);
ЗаполнитьЗначенияСвойств(НовыеПараметрыВыполнения, ПараметрыВыполнения);
Если ПараметрыВыполнения.Свойство("ОжидатьЗавершения") И ПараметрыВыполнения.ОжидатьЗавершения <> -1 Тогда
ПараметрыВыполнения.ОжидатьЗавершение = ПараметрыВыполнения.ОжидатьЗавершения;
КонецЕсли;
ПараметрыВыполнения = НовыеПараметрыВыполнения;
ПроверитьПараметрыВыполнения(ПараметрыВыполнения);
Если ПараметрыВыполнения.СвойстваИсполняющегоПотокаМногопоточнойДлительнойОперации = Неопределено Тогда Если ПараметрыВыполнения.СвойстваИсполняющегоПотокаМногопоточнойДлительнойОперации = Неопределено Тогда
ПроверитьИЗаполнитьАдресРезультата(ПараметрыВыполнения, "ДлительныеОперации.ВыполнитьВФоне"); ПроверитьИЗаполнитьАдресРезультата(ПараметрыВыполнения, "ДлительныеОперации.ВыполнитьВФоне");
КонецЕсли; КонецЕсли;
@@ -695,12 +684,10 @@
// расширений конфигурации. Имеет приоритет над параметром ЗапуститьНеВФоне. // расширений конфигурации. Имеет приоритет над параметром ЗапуститьНеВФоне.
// * СРасширениямиБазыДанных - Булево - если Истина, то фоновое задание будет запущено с последней версией // * СРасширениямиБазыДанных - Булево - если Истина, то фоновое задание будет запущено с последней версией
// расширений конфигурации. Имеет приоритет над параметром ЗапуститьНеВФоне. // расширений конфигурации. Имеет приоритет над параметром ЗапуститьНеВФоне.
// * ВнешнийОтчетОбработка - Неопределено - по умолчанию. // * ВнешнийОтчетОбработка - см. НовоеОписаниеВнешнегоОтчетаОбработки
// - ДвоичныеДанные - когда указано имя метода, которое начинается // - Неопределено - по умолчанию, когда указано имя метода, которое
// с "ВнешнийОтчет." или "ВнешняяОбработка.". // не начинается с "ВнешнийОтчет." или "ВнешняяОбработка.", в противном случае
// Для вызова такого метода требуется право интерактивного открытия // следует использовать конструктор описания внешнего отчета или обработки.
// внешнего отчета или обработки соответственно.
// Внешний отчет или обработка подключаются с защитой от опасных действий.
// * УточнениеОшибки - Строка - если не пустая строка, тогда для пользователя текст ошибки // * УточнениеОшибки - Строка - если не пустая строка, тогда для пользователя текст ошибки
// будет уточнен указанным начальным текстом. Пример уточнения: // будет уточнен указанным начальным текстом. Пример уточнения:
// НСтр("ru = 'Не удалось очистить адресный классификатор по причине:'") // НСтр("ru = 'Не удалось очистить адресный классификатор по причине:'")
@@ -714,6 +701,39 @@
КонецФункции КонецФункции
// Конструктор значения свойства ВнешнийОтчетОбработка см. ПараметрыВыполненияВФоне
// Требуется, когда указано имя метода, которое начинается
// с "ВнешнийОтчет." или "ВнешняяОбработка.".
// Когда используется режим ВыполнитьНеВФоне, а данные не указаны (Неопределено),
// тогда производится попытка создать объект внешнего отчета или обработки по его имени,
// исходя из того, что объект уже подключен в текущем сеансе.
//
// Возвращаемое значение:
// Структура:
// * Данные - ДвоичныеДанные - для подключения объекта требуется право
// интерактивного открытия внешнего отчета или обработки соответственно.
// Внешний отчет или обработка подключаются с защитой от опасных действий.
// - СправочникСсылка - ссылка на дополнительный отчет или обработку,
// добавленную администратором. Требуется подсистема ДополнительныеОтчетыИОбработки.
// Для подключения объекта не требуется право интерактивного открытия внешнего отчета и
// внешней обработки, так как подключение объекта выполняется по настройкам,
// сделанным администратором, а также не требуется защита от опасных действий,
// так как администратор уже проверил и подтвердил безопасность.
// * ПолноеИмяФайла - Строка - пустая строка по умолчанию.
// Если указать полное имя файла, который содержит указанные
// двоичные данные внешнего отчета или внешней обработки, тогда этот файл
// будет использован при подключении вместо создания временного файла.
//
Функция НовоеОписаниеВнешнегоОтчетаОбработки() Экспорт
Результат = Новый Структура;
Результат.Вставить("Данные", Неопределено);
Результат.Вставить("ПолноеИмяФайла", "");
Возврат Результат;
КонецФункции
// Регистрирует информацию о ходе выполнения длительной операции. // Регистрирует информацию о ходе выполнения длительной операции.
// Не следует использовать для передачи результата работы длительной операции по частям. // Не следует использовать для передачи результата работы длительной операции по частям.
// //
@@ -1845,47 +1865,46 @@
Функция ВнешняяОбработкаОтчетОбъект(ЭтоВнешнийОтчет, ПараметрыВыполнения, ИмяПодключеннойОбработкиОтчета) Функция ВнешняяОбработкаОтчетОбъект(ЭтоВнешнийОтчет, ПараметрыВыполнения, ИмяПодключеннойОбработкиОтчета)
МенеджерОбъекта = ?(ЭтоВнешнийОтчет, ВнешниеОтчеты, ВнешниеОбработки); МенеджерОбъекта = ?(ЭтоВнешнийОтчет, ВнешниеОтчеты, ВнешниеОбработки);
ВнешнийОтчетОбработка = ПараметрыВыполнения.ВнешнийОтчетОбработка;
Если ПараметрыВыполнения.ВнешнийОтчетОбработка = Неопределено Тогда Если ВнешнийОтчетОбработка = Неопределено Тогда
Если ПараметрыВыполнения.ЗапуститьНеВФоне Тогда Если ПараметрыВыполнения.ЗапуститьНеВФоне Тогда
Возврат МенеджерОбъекта.Создать(ИмяПодключеннойОбработкиОтчета, БезопасныйРежим()); Возврат МенеджерОбъекта.Создать(ИмяПодключеннойОбработкиОтчета, БезопасныйРежим());
КонецЕсли; КонецЕсли;
ТекстОшибки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( ТекстОшибки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
НСтр("ru = 'Для вызова процедуры внешнего отчета или внешней обработки НСтр("ru = 'Для вызова процедуры внешнего отчета или внешней обработки в фоне
|требуется заполнить параметр %1.'"), |требуется заполнить свойство %1 параметра %2.'"),
"ВнешнийОтчетОбработка"); "ВнешнийОтчетОбработка", "ПараметрыВыполнения");
ВызватьИсключение(ТекстОшибки, КатегорияОшибки.ОшибкаКонфигурации); ВызватьИсключение(ТекстОшибки, КатегорияОшибки.ОшибкаКонфигурации);
КонецЕсли; КонецЕсли;
ИмяПраваДоступа = ?(ЭтоВнешнийОтчет, "ИнтерактивноеОткрытиеВнешнихОтчетов", "ИнтерактивноеОткрытиеВнешнихОбработок");
ВыполнитьПроверкуПравДоступа(ИмяПраваДоступа, Метаданные);
БезопасныйРежим = БезопасныйРежим(); БезопасныйРежим = БезопасныйРежим();
Если БезопасныйРежим <> Ложь Тогда Если БезопасныйРежим <> Ложь Тогда
УстановитьОтключениеБезопасногоРежима(Истина); УстановитьОтключениеБезопасногоРежима(Истина);
КонецЕсли; КонецЕсли;
Если ТипЗнч(ПараметрыВыполнения.ВнешнийОтчетОбработка) = Тип("ДвоичныеДанные") Тогда Если ТипЗнч(ВнешнийОтчетОбработка.Данные) <> Тип("ДвоичныеДанные") Тогда
ДвоичныеДанные = ПараметрыВыполнения.ВнешнийОтчетОбработка; МодульДополнительныеОтчетыИОбработки = ОбщегоНазначения.ОбщийМодуль("ДополнительныеОтчетыИОбработки");
ПолноеИмяФайла = ""; Возврат МодульДополнительныеОтчетыИОбработки.ОбъектВнешнейОбработки(
ВнешнийОтчетОбработка.Данные);
КонецЕсли;
ИмяПраваДоступа = ?(ЭтоВнешнийОтчет, "ИнтерактивноеОткрытиеВнешнихОтчетов", "ИнтерактивноеОткрытиеВнешнихОбработок");
ВыполнитьПроверкуПравДоступа(ИмяПраваДоступа, Метаданные);
ДвоичныеДанные = ВнешнийОтчетОбработка.Данные;
ПолноеИмяФайла = ВнешнийОтчетОбработка.ПолноеИмяФайла;
Если Не ЗначениеЗаполнено(ПолноеИмяФайла) Тогда
СоздатьВременныйФайл = Истина; СоздатьВременныйФайл = Истина;
Иначе Иначе
ДвоичныеДанные = ПараметрыВыполнения.ВнешнийОтчетОбработка.ДвоичныеДанные; СоздатьВременныйФайл = Ложь;
ПолноеИмяФайла = ПараметрыВыполнения.ВнешнийОтчетОбработка.ПолноеИмяФайла; Попытка
Если Не ЗначениеЗаполнено(ПолноеИмяФайла) Тогда ДвоичныеДанныеФайла = Новый ДвоичныеДанные(ПолноеИмяФайла);
Исключение
СоздатьВременныйФайл = Истина; СоздатьВременныйФайл = Истина;
Иначе КонецПопытки;
СоздатьВременныйФайл = Ложь; Если Не СоздатьВременныйФайл Тогда
Попытка СоздатьВременныйФайл = ДвоичныеДанныеФайла <> ВнешнийОтчетОбработка.Данные;
ДвоичныеДанныеФайла = Новый ДвоичныеДанные(ПолноеИмяФайла);
Исключение
СоздатьВременныйФайл = Истина;
КонецПопытки;
Если Не СоздатьВременныйФайл Тогда
СоздатьВременныйФайл = ДвоичныеДанныеФайла <>
ПараметрыВыполнения.ВнешнийОтчетОбработка.ДвоичныеДанные;
КонецЕсли;
КонецЕсли; КонецЕсли;
КонецЕсли; КонецЕсли;
@@ -2383,6 +2402,8 @@
ЗаполнитьЗначенияСвойств(Параметры, ПараметрыВыполнения); ЗаполнитьЗначенияСвойств(Параметры, ПараметрыВыполнения);
КонецЕсли; КонецЕсли;
Параметры.ЗапуститьНеВФоне = Истина; Параметры.ЗапуститьНеВФоне = Истина;
ЗаполнитьПараметрВнешнийОтчетОбработка(Параметры.ВнешнийОтчетОбработка);
ПроверитьПараметрВнешнийОтчетОбработка(Параметры, ИмяПроцедуры, ИмяМетода);
Объект = ОбработкаОтчетОбъект(ИмяПроцедуры, Объект = ОбработкаОтчетОбъект(ИмяПроцедуры,
ЧастиИмени, Параметры, "ИмяПроцедуры", "ВызватьПроцедуру"); ЧастиИмени, Параметры, "ИмяПроцедуры", "ВызватьПроцедуру");
ПроверяемоеИмяПроцедуры = ЧастиИмени[3]; ПроверяемоеИмяПроцедуры = ЧастиИмени[3];
@@ -2437,7 +2458,47 @@
КонецФункции КонецФункции
Процедура ПроверитьПараметрыВыполнения(ПараметрыВыполнения) Процедура ЗаполнитьПараметрыВыполненияСУчетомОбратнойСовместимости(ПараметрыВыполнения)
НовыеПараметрыВыполнения = ПараметрыВыполненияВФоне();
ЗаполнитьЗначенияСвойств(НовыеПараметрыВыполнения, ПараметрыВыполнения);
Если ПараметрыВыполнения.Свойство("ОжидатьЗавершения") И ПараметрыВыполнения.ОжидатьЗавершения <> -1 Тогда
ПараметрыВыполнения.ОжидатьЗавершение = ПараметрыВыполнения.ОжидатьЗавершения;
КонецЕсли;
ЗаполнитьПараметрВнешнийОтчетОбработка(НовыеПараметрыВыполнения.ВнешнийОтчетОбработка);
ПараметрыВыполнения = НовыеПараметрыВыполнения;
КонецПроцедуры
Процедура ЗаполнитьПараметрВнешнийОтчетОбработка(ЗначениеПараметра)
Если ЗначениеПараметра = Неопределено Тогда
Возврат;
КонецЕсли;
Результат = НовоеОписаниеВнешнегоОтчетаОбработки();
Если ТипЗнч(ЗначениеПараметра) = Тип("ДвоичныеДанные") Тогда
Результат.Данные = ЗначениеПараметра;
ИначеЕсли ТипЗнч(ЗначениеПараметра) = Тип("Структура") Тогда
ЗаполнитьЗначенияСвойств(Результат, ЗначениеПараметра);
Если Результат.Данные = Неопределено Тогда
УстаревшиеСвойства = Новый Структура("ДвоичныеДанные");
ЗаполнитьЗначенияСвойств(УстаревшиеСвойства, ЗначениеПараметра);
Результат.Данные = УстаревшиеСвойства.ДвоичныеДанные;
КонецЕсли;
КонецЕсли;
ЗначениеПараметра = Результат;
КонецПроцедуры
Процедура ПроверитьПараметрыВыполнения(ИмяПроцедуры, ПараметрыВыполнения)
ОбщегоНазначенияКлиентСервер.ПроверитьПараметр("ДлительныеОперации.ВыполнитьВФоне", "ПараметрыВыполнения", ОбщегоНазначенияКлиентСервер.ПроверитьПараметр("ДлительныеОперации.ВыполнитьВФоне", "ПараметрыВыполнения",
ПараметрыВыполнения, Тип("Структура")); ПараметрыВыполнения, Тип("Структура"));
@@ -2487,7 +2548,51 @@
КатегорияОшибки.ОшибкаКонфигурации); КатегорияОшибки.ОшибкаКонфигурации);
КонецЕсли; КонецЕсли;
КонецПроцедуры ПроверитьПараметрВнешнийОтчетОбработка(ПараметрыВыполнения,
ИмяПроцедуры, "ДлительныеОперации.ВыполнитьВФоне");
КонецПроцедуры
Процедура ПроверитьПараметрВнешнийОтчетОбработка(ПараметрыВыполнения, ИмяПроцедуры, ИмяМетода)
Если ПараметрыВыполнения.ВнешнийОтчетОбработка = Неопределено Тогда
Если ПараметрыВыполнения.ЗапуститьНеВФоне
Или Не СтрНачинаетсяС(ВРег(ИмяПроцедуры), "ВНЕШНИЙОТЧЕТ.")
И Не СтрНачинаетсяС(ВРег(ИмяПроцедуры), "ВНЕШНЯЯОБРАБОТКА.") Тогда
Возврат;
КонецЕсли;
ТекстОшибки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
НСтр("ru = 'Для вызова процедуры внешнего отчета или внешней обработки в фоне
|требуется заполнить свойство %1 параметра %2 в %3.'"),
"ВнешнийОтчетОбработка", "ПараметрыВыполнения", ИмяМетода);
ВызватьИсключение(ТекстОшибки, КатегорияОшибки.ОшибкаКонфигурации);
КонецЕсли;
ТипыДанных = ОбщегоНазначенияКлиентСервер.ЗначениеВМассиве(Тип("ДвоичныеДанные"));
Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ДополнительныеОтчетыИОбработки") Тогда
МодульДополнительныеОтчетыИОбработки = ОбщегоНазначения.ОбщийМодуль("ДополнительныеОтчетыИОбработки");
ТипыДанных.Добавить(МодульДополнительныеОтчетыИОбработки.ТипДополнительныйОтчетИлиОбработка());
КонецЕсли;
ОжидаемыеТипыСвойств = Новый Структура;
ОжидаемыеТипыСвойств.Вставить("Данные", Новый ОписаниеТипов(ТипыДанных));
ОжидаемыеТипыСвойств.Вставить("ПолноеИмяФайла", Тип("Строка"));
ОбщегоНазначенияКлиентСервер.ПроверитьПараметр(ИмяМетода,
"ПараметрыВыполнения.ВнешнийОтчетОбработка",
ПараметрыВыполнения.ВнешнийОтчетОбработка,
Тип("Структура"),
ОжидаемыеТипыСвойств);
Если Не ЗначениеЗаполнено(ПараметрыВыполнения.ВнешнийОтчетОбработка.Данные) Тогда
ТекстОшибки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
НСтр("ru = 'Для вызова процедуры внешнего отчета или внешней обработки в фоне
|требуется заполнить свойство %1 параметра %2 в %3.'"),
"ВнешнийОтчетОбработка.Данные", "ПараметрыВыполнения", ИмяМетода);
ВызватьИсключение(ТекстОшибки, КатегорияОшибки.ОшибкаКонфигурации);
КонецЕсли;
КонецПроцедуры
Процедура ПроверитьИЗаполнитьАдресРезультата(ПараметрыВыполнения, ИмяФункции) Процедура ПроверитьИЗаполнитьАдресРезультата(ПараметрыВыполнения, ИмяФункции)
@@ -2840,6 +2945,7 @@
РезультатЗапускаУказан = РезультатЗапуска <> Неопределено; РезультатЗапускаУказан = РезультатЗапуска <> Неопределено;
УстановитьОтключениеБезопасногоРежима(Истина);
УстановитьПривилегированныйРежим(Истина); УстановитьПривилегированныйРежим(Истина);
Если Не РезультатЗапускаУказан Тогда Если Не РезультатЗапускаУказан Тогда
@@ -2984,6 +3090,7 @@
Попытка Попытка
Блокировка.Заблокировать(); Блокировка.Заблокировать();
УстановитьОтключениеБезопасногоРежима(Истина);
УстановитьПривилегированныйРежим(Истина); УстановитьПривилегированныйРежим(Истина);
НаборЗаписей = РегистрыСведений.ДлительныеОперации.СоздатьНаборЗаписей(); НаборЗаписей = РегистрыСведений.ДлительныеОперации.СоздатьНаборЗаписей();
@@ -3144,6 +3251,7 @@
Функция ЕстьЗавершенныеПотоки(Потоки, ЗавершитьДосрочноЕслиОшибка, ИдентификаторПроцесса) Функция ЕстьЗавершенныеПотоки(Потоки, ЗавершитьДосрочноЕслиОшибка, ИдентификаторПроцесса)
УстановитьОтключениеБезопасногоРежима(Истина);
УстановитьПривилегированныйРежим(Истина); УстановитьПривилегированныйРежим(Истина);
ЕстьЗавершенныеПотоки = Ложь; ЕстьЗавершенныеПотоки = Ложь;
@@ -3209,6 +3317,7 @@
// //
Процедура ОтменитьВыполнениеВсехПотоков(ИдентификаторПроцесса) Процедура ОтменитьВыполнениеВсехПотоков(ИдентификаторПроцесса)
УстановитьОтключениеБезопасногоРежима(Истина);
УстановитьПривилегированныйРежим(Истина); УстановитьПривилегированныйРежим(Истина);
Потоки = АктивныеПотоки(ИдентификаторПроцесса); Потоки = АктивныеПотоки(ИдентификаторПроцесса);
@@ -3226,6 +3335,7 @@
// //
Процедура УдалитьНесуществующиеПотоки() Процедура УдалитьНесуществующиеПотоки()
УстановитьОтключениеБезопасногоРежима(Истина);
УстановитьПривилегированныйРежим(Истина); УстановитьПривилегированныйРежим(Истина);
ВсеПотоки = ПотокиДлительныхОпераций(); ВсеПотоки = ПотокиДлительныхОпераций();
@@ -3342,6 +3452,7 @@
КонецЕсли; КонецЕсли;
УстановитьОтключениеБезопасногоРежима(Истина);
УстановитьПривилегированныйРежим(Истина); УстановитьПривилегированныйРежим(Истина);
Возврат Запрос.Выполнить().Выгрузить(); Возврат Запрос.Выполнить().Выгрузить();
@@ -3385,6 +3496,7 @@
Функция АктивныеПотоки(ИдентификаторПроцесса = Неопределено) Функция АктивныеПотоки(ИдентификаторПроцесса = Неопределено)
УстановитьОтключениеБезопасногоРежима(Истина);
УстановитьПривилегированныйРежим(Истина); УстановитьПривилегированныйРежим(Истина);
Запрос = Новый Запрос; Запрос = Новый Запрос;
@@ -3440,6 +3552,7 @@
// //
Функция ПотокиОжидающиеОбработки(ИдентификаторПроцесса) Функция ПотокиОжидающиеОбработки(ИдентификаторПроцесса)
УстановитьОтключениеБезопасногоРежима(Истина);
УстановитьПривилегированныйРежим(Истина); УстановитьПривилегированныйРежим(Истина);
Запрос = Новый Запрос; Запрос = Новый Запрос;
@@ -3482,6 +3595,7 @@
ИмяПользователя = ИмяПользователя(); ИмяПользователя = ИмяПользователя();
ТекущаяДатаСеанса = ТекущаяДатаСеанса(); ТекущаяДатаСеанса = ТекущаяДатаСеанса();
УстановитьОтключениеБезопасногоРежима(Истина);
УстановитьПривилегированныйРежим(Истина); УстановитьПривилегированныйРежим(Истина);
НаборЗаписей = РегистрыСведений.ДлительныеОперации.СоздатьНаборЗаписей(); НаборЗаписей = РегистрыСведений.ДлительныеОперации.СоздатьНаборЗаписей();
@@ -3815,6 +3929,7 @@
Процедура УдалитьДанныеОПотоках(ИдентификаторПроцесса) Процедура УдалитьДанныеОПотоках(ИдентификаторПроцесса)
УстановитьОтключениеБезопасногоРежима(Истина);
УстановитьПривилегированныйРежим(Истина); УстановитьПривилегированныйРежим(Истина);
НаборЗаписей = РегистрыСведений.ДлительныеОперации.СоздатьНаборЗаписей(); НаборЗаписей = РегистрыСведений.ДлительныеОперации.СоздатьНаборЗаписей();
@@ -3826,6 +3941,7 @@
Процедура ЗапланироватьЗапускПотоковДлительныхОпераций(РезультатЗапуска, ПараметрыОперации) Процедура ЗапланироватьЗапускПотоковДлительныхОпераций(РезультатЗапуска, ПараметрыОперации)
УстановитьОтключениеБезопасногоРежима(Истина);
УстановитьПривилегированныйРежим(Истина); УстановитьПривилегированныйРежим(Истина);
ИдентификаторПотока = ОбщегоНазначенияКлиентСервер.ПустойУникальныйИдентификатор(); ИдентификаторПотока = ОбщегоНазначенияКлиентСервер.ПустойУникальныйИдентификатор();
@@ -1851,6 +1851,10 @@
КонецФункции КонецФункции
Функция ТипДополнительныйОтчетИлиОбработка() Экспорт
Возврат Тип("СправочникСсылка.ДополнительныеОтчетыИОбработки");
КонецФункции
Функция ЭтоВидОбработкиДляШаблоновСообщений(ВидОбработки) Экспорт Функция ЭтоВидОбработкиДляШаблоновСообщений(ВидОбработки) Экспорт
Если ВидОбработки = ПолучитьВидОбработкиПоСтроковомуПредставлениюВида( Если ВидОбработки = ПолучитьВидОбработкиПоСтроковомуПредставлениюВида(
@@ -261,22 +261,31 @@
КонецФункции КонецФункции
Функция ПоследняяПроверкаОбъекта(Ссылка) Экспорт Функция ПоследняяПроверкаОбъекта(Ссылка) Экспорт
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ ПЕРВЫЕ 1
| РезультатыПроверкиУчета.Выявлено КАК Выявлено
|ИЗ
| РегистрСведений.РезультатыПроверкиУчета КАК РезультатыПроверкиУчета
|ГДЕ
| РезультатыПроверкиУчета.ПроблемныйОбъект = &ПроблемныйОбъект
|
|УПОРЯДОЧИТЬ ПО
| Выявлено УБЫВ";
Запрос.УстановитьПараметр("ПроблемныйОбъект", Ссылка);
УстановитьПривилегированныйРежим(Истина); УстановитьПривилегированныйРежим(Истина);
Набор = РегистрыСведений.РезультатыПроверкиУчета.СоздатьНаборЗаписей(); РезультатЗапроса = Запрос.Выполнить();
Набор.Отбор.ПроблемныйОбъект.Установить(Ссылка);
Набор.Прочитать();
УстановитьПривилегированныйРежим(Ложь); УстановитьПривилегированныйРежим(Ложь);
Данные = Набор.Выгрузить(, "Выявлено"); Выборка = РезультатЗапроса.Выбрать();
Данные.Сортировать("Выявлено Убыв"); Если Выборка.Следующий() Тогда
Результат = Выборка.Выявлено;
Если Данные.Количество() = 0 Тогда Иначе
Возврат Неопределено; Результат = Неопределено;
КонецЕсли; КонецЕсли;
Возврат Результат;
Возврат Данные[0].Выявлено;
КонецФункции КонецФункции
// Подготавливает данные, необходимые для выполнения проверки ведения учета. // Подготавливает данные, необходимые для выполнения проверки ведения учета.
@@ -189,14 +189,17 @@
КонецПроцедуры КонецПроцедуры
// См. СтандартныеПодсистемыКлиент.ПриПолученииСерверногоОповещения. // См. СтандартныеПодсистемыКлиент.ПриПолученииСерверногоОповещения.
//
// Параметры:
// ИмяОповещения - Строка
// Результат - Структура - см. НапоминанияПользователяСлужебный.НовыеИзмененныеНапоминания
//
Процедура ПриПолученииСерверногоОповещения(ИмяОповещения, Результат) Экспорт Процедура ПриПолученииСерверногоОповещения(ИмяОповещения, Результат) Экспорт
Если ИмяОповещения <> НапоминанияПользователяКлиентСервер.ИмяСерверногоОповещения() Тогда Если ИмяОповещения <> НапоминанияПользователяКлиентСервер.ИмяСерверногоОповещения() Тогда
Возврат; Возврат;
КонецЕсли; КонецЕсли;
Результат = Результат; // см. НапоминанияПользователяСлужебный.НовыеИзмененныеНапоминания
Для Каждого Напоминание Из Результат.Удаленные Цикл Для Каждого Напоминание Из Результат.Удаленные Цикл
УдалитьЗаписьИзКэшаОповещений(Напоминание); УдалитьЗаписьИзКэшаОповещений(Напоминание);
КонецЦикла; КонецЦикла;
@@ -44,7 +44,7 @@
Процедура ПриДобавленииПодсистемы(Описание) Экспорт Процедура ПриДобавленииПодсистемы(Описание) Экспорт
Описание.Имя = "СтандартныеПодсистемы"; Описание.Имя = "СтандартныеПодсистемы";
Описание.Версия = "3.2.1.425"; Описание.Версия = "3.2.1.446";
Описание.ИдентификаторИнтернетПоддержки = "SSL"; Описание.ИдентификаторИнтернетПоддержки = "SSL";
Описание.РежимВыполненияОтложенныхОбработчиков = "Параллельно"; Описание.РежимВыполненияОтложенныхОбработчиков = "Параллельно";
Описание.ПараллельноеОтложенноеОбновлениеСВерсии = "2.3.3.0"; Описание.ПараллельноеОтложенноеОбновлениеСВерсии = "2.3.3.0";
@@ -1439,17 +1439,9 @@
ПараметрыЗадания = Новый Структура("Использование", Использование); ПараметрыЗадания = Новый Структура("Использование", Использование);
ТребуетсяУстановитьЗапланированныйМоментЗапуска = Ложь;
Если ОбщегоНазначения.ПодсистемаСуществует("ТехнологияСервиса.БазоваяФункциональность") Тогда
МодульТехнологияСервиса = ОбщегоНазначения.ОбщийМодуль("ТехнологияСервиса");
ВерсияБиблиотекиБТС = МодульТехнологияСервиса.ВерсияБиблиотеки();
ТребуетсяУстановитьЗапланированныйМоментЗапуска = ОбщегоНазначенияКлиентСервер.СравнитьВерсии(ВерсияБиблиотекиБТС, "2.0.1.0") > 0;
КонецЕсли;
Если ОбщегоНазначения.РазделениеВключено() Если ОбщегоНазначения.РазделениеВключено()
И ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаВМоделиСервиса.ОбновлениеВерсииИБВМоделиСервиса") И ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаВМоделиСервиса.ОбновлениеВерсииИБВМоделиСервиса")
И Использование И Использование Тогда
И ТребуетсяУстановитьЗапланированныйМоментЗапуска Тогда
МодульОбновлениеИнформационнойБазыСлужебныйВМоделиСервиса = ОбщегоНазначения.ОбщийМодуль("ОбновлениеИнформационнойБазыСлужебныйВМоделиСервиса"); МодульОбновлениеИнформационнойБазыСлужебныйВМоделиСервиса = ОбщегоНазначения.ОбщийМодуль("ОбновлениеИнформационнойБазыСлужебныйВМоделиСервиса");
ЗапланированныйМоментЗапуска = МодульОбновлениеИнформационнойБазыСлужебныйВМоделиСервиса.ЗапланированныйМоментЗапускаОбновленияОбласти(); ЗапланированныйМоментЗапуска = МодульОбновлениеИнформационнойБазыСлужебныйВМоделиСервиса.ЗапланированныйМоментЗапускаОбновленияОбласти();
ПараметрыЗадания.Вставить("ЗапланированныйМоментЗапуска", ЗапланированныйМоментЗапуска); ПараметрыЗадания.Вставить("ЗапланированныйМоментЗапуска", ЗапланированныйМоментЗапуска);
@@ -2673,7 +2665,7 @@
Если ОбщегоНазначения.ПодсистемаСуществует("ИнтернетПоддержкаПользователей.ПолучениеОбновленийПрограммы") Тогда Если ОбщегоНазначения.ПодсистемаСуществует("ИнтернетПоддержкаПользователей.ПолучениеОбновленийПрограммы") Тогда
МодульПолучениеОбновленийПрограммы = ОбщегоНазначения.ОбщийМодуль("ПолучениеОбновленийПрограммы"); МодульПолучениеОбновленийПрограммы = ОбщегоНазначения.ОбщийМодуль("ПолучениеОбновленийПрограммы");
Результат = МодульПолучениеОбновленийПрограммы.ИнформацияОДоступныхИсправлениях(); Результат = МодульПолучениеОбновленийПрограммы.ИнформацияОДоступныхИсправлениях();
Если Результат <> Неопределено Тогда Если Результат.Исправления <> Неопределено Тогда
Исправления = Результат.Исправления.ВыгрузитьКолонку("Наименование"); Исправления = Результат.Исправления.ВыгрузитьКолонку("Наименование");
Результат.Вставить("КоличествоИсправлений", Результат.Исправления.Количество()); Результат.Вставить("КоличествоИсправлений", Результат.Исправления.Количество());
Результат.Вставить("Исправления", Исправления); Результат.Вставить("Исправления", Исправления);
@@ -2904,6 +2896,13 @@
СброситьПрогрессВыполненияОбработчиков(); СброситьПрогрессВыполненияОбработчиков();
ОчиститьЗарегистрированныеПроблемыСДанными(); ОчиститьЗарегистрированныеПроблемыСДанными();
Если ОбщегоНазначения.РазделениеВключено()
И Не ОбщегоНазначения.ДоступноИспользованиеРазделенныхДанных()
И ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаВМоделиСервиса.ОбновлениеВерсииИБВМоделиСервиса") Тогда
МодульОбновлениеИнформационнойБазыСлужебныйВМоделиСервиса = ОбщегоНазначения.ОбщийМодуль("ОбновлениеИнформационнойБазыСлужебныйВМоделиСервиса");
МодульОбновлениеИнформационнойБазыСлужебныйВМоделиСервиса.УдалитьЗаданияОбновленияОбластей();
КонецЕсли;
Если ПараметрыОбновления.ВФоне Тогда Если ПараметрыОбновления.ВФоне Тогда
ДлительныеОперации.СообщитьПрогресс(10); ДлительныеОперации.СообщитьПрогресс(10);
КонецЕсли; КонецЕсли;
@@ -4107,6 +4106,7 @@
Обработанные = Новый Массив; Обработанные = Новый Массив;
ДатаПоследнейПроверки = Неопределено; ДатаПоследнейПроверки = Неопределено;
ВременноОтключитьОбновление = Ложь;
Попытка Попытка
Если ФорсироватьОбновление(СведенияОбОбновлении) Тогда Если ФорсироватьОбновление(СведенияОбОбновлении) Тогда
Группы = НовоеОписаниеГруппПотоковОбработчиковОтложенногоОбновления(); Группы = НовоеОписаниеГруппПотоковОбработчиковОтложенногоОбновления();
@@ -4128,6 +4128,7 @@
ОжидатьЗавершениеВсехПотоков(Группы); // @skip-check query-in-loop - многопоточное обновление. ОжидатьЗавершениеВсехПотоков(Группы); // @skip-check query-in-loop - многопоточное обновление.
Прервать; Прервать;
ИначеЕсли Поток = "ПрерватьВыполнение" Тогда ИначеЕсли Поток = "ПрерватьВыполнение" Тогда
ВременноОтключитьОбновление = Истина;
ОжидатьЗавершениеВсехПотоков(Группы); // @skip-check query-in-loop - многопоточное обновление. ОжидатьЗавершениеВсехПотоков(Группы); // @skip-check query-in-loop - многопоточное обновление.
Прервать; Прервать;
КонецЕсли; КонецЕсли;
@@ -4158,6 +4159,12 @@
УдалитьВсеПотокиОбновления(); УдалитьВсеПотокиОбновления();
КонецПопытки; КонецПопытки;
Если ВременноОтключитьОбновление Тогда
// Выполняется только в режиме сервиса, когда все обработчики текущего порядка выполнены.
// Включается автоматически при переключении порядка.
ПриВключенииОтложенногоОбновления(Ложь);
КонецЕсли;
СведенияОбОбновлении = СведенияОбОбновленииИнформационнойБазы(); СведенияОбОбновлении = СведенияОбОбновленииИнформационнойБазы();
Если Не ОбработчикиВыполнялись Или ВыполненыВсеОтложенныеОбработчики(СведенияОбОбновлении) Тогда Если Не ОбработчикиВыполнялись Или ВыполненыВсеОтложенныеОбработчики(СведенияОбОбновлении) Тогда
УдалитьВсеПотокиОбновления(); УдалитьВсеПотокиОбновления();
@@ -7828,16 +7835,20 @@
Запрос = Новый Запрос; Запрос = Новый Запрос;
Запрос.УстановитьПараметр("ОбластиДляПроверки", ОбластиДляПроверки); Запрос.УстановитьПараметр("ОбластиДляПроверки", ОбластиДляПроверки);
Запрос.УстановитьПараметр("РежимВыполнения", Перечисления.РежимыВыполненияОбработчиков.Отложенно); Запрос.УстановитьПараметр("РежимВыполнения", Перечисления.РежимыВыполненияОбработчиков.Отложенно);
Запрос.УстановитьПараметр("РежимВыполненияОтложенногоОбработчика", Перечисления.РежимыВыполненияОтложенныхОбработчиков.Параллельно);
Запрос.УстановитьПараметр("ПредельноеЧислоПопыток", 3);
Запрос.УстановитьПараметр("Порядок", ПорядокОбрабатываемыхДанных); Запрос.УстановитьПараметр("Порядок", ПорядокОбрабатываемыхДанных);
Запрос.УстановитьПараметр("Статусы", Статусы); Запрос.УстановитьПараметр("Статусы", Статусы);
Запрос.Текст = Запрос.Текст =
"ВЫБРАТЬ ПЕРВЫЕ 1 "ВЫБРАТЬ РАЗЛИЧНЫЕ
| ИСТИНА | ОбработчикиОбновления.ОбластьДанныхВспомогательныеДанные КАК Область
|ИЗ |ИЗ
| РегистрСведений.ОбработчикиОбновления КАК ОбработчикиОбновления | РегистрСведений.ОбработчикиОбновления КАК ОбработчикиОбновления
|ГДЕ |ГДЕ
| ОбработчикиОбновления.РежимВыполнения = &РежимВыполнения | ОбработчикиОбновления.РежимВыполнения = &РежимВыполнения
| И ОбработчикиОбновления.РежимВыполненияОтложенногоОбработчика = &РежимВыполненияОтложенногоОбработчика
| И ОбработчикиОбновления.ОбластьДанныхВспомогательныеДанные В(&ОбластиДляПроверки) | И ОбработчикиОбновления.ОбластьДанныхВспомогательныеДанные В(&ОбластиДляПроверки)
| И ОбработчикиОбновления.ЧислоПопыток <= &ПредельноеЧислоПопыток
| И ОбработчикиОбновления.Порядок = &Порядок | И ОбработчикиОбновления.Порядок = &Порядок
| И ОбработчикиОбновления.Статус В(&Статусы) | И ОбработчикиОбновления.Статус В(&Статусы)
| И &УсловиеОбычныхОбработчиков"; | И &УсловиеОбычныхОбработчиков";
@@ -7851,15 +7862,52 @@
КонецЕсли; КонецЕсли;
Запрос.Текст = СтрЗаменить(Запрос.Текст, "&УсловиеОбычныхОбработчиков", УсловиеОбычныхОбработчиков); Запрос.Текст = СтрЗаменить(Запрос.Текст, "&УсловиеОбычныхОбработчиков", УсловиеОбычныхОбработчиков);
НеобновленныеОбласти = Запрос.Выполнить().Выгрузить().ВыгрузитьКолонку("Область");
ОтключитьЗадание = Ложь; ОтключитьЗадание = Ложь;
Если Запрос.Выполнить().Пустой() И Не ЕстьОжидающие Тогда ПорядокИзменен = Ложь;
Если НеобновленныеОбласти.Количество() = 0 И Не ЕстьОжидающие Тогда
Если ПорядокОбрабатываемыхДанных = Перечисления.ПорядокОбработчиковОбновления.Критичный Тогда Если ПорядокОбрабатываемыхДанных = Перечисления.ПорядокОбработчиковОбновления.Критичный Тогда
Константы.ПорядокОбрабатываемыхДанных.Установить(Перечисления.ПорядокОбработчиковОбновления.Обычный); Константы.ПорядокОбрабатываемыхДанных.Установить(Перечисления.ПорядокОбработчиковОбновления.Обычный);
Иначе Иначе
Константы.ПорядокОбрабатываемыхДанных.Установить(Перечисления.ПорядокОбработчиковОбновления.Некритичный); Константы.ПорядокОбрабатываемыхДанных.Установить(Перечисления.ПорядокОбработчиковОбновления.Некритичный);
ОтключитьЗадание = Истина; ОтключитьЗадание = Истина;
КонецЕсли; КонецЕсли;
ПорядокИзменен = Истина;
КонецЕсли;
Если ПорядокИзменен Тогда
ПриВключенииОтложенногоОбновления(Истина);
Иначе
// Проверка, что задания для необновленных областей включены.
ОтборЗаданий = Новый Структура;
ОтборЗаданий.Вставить("Метаданные", Метаданные.РегламентныеЗадания.ОтложенноеОбновлениеИБ);
ОтборЗаданий.Вставить("Использование", Ложь);
Задания = РегламентныеЗаданияСервер.НайтиЗадания(ОтборЗаданий);
Запрос = Новый Запрос;
Запрос.УстановитьПараметр("ЗаданияОчереди", Задания);
Запрос.УстановитьПараметр("НеобновленныеОбласти", НеобновленныеОбласти);
Запрос.Текст =
"ВЫБРАТЬ
| ЗаданияОчереди.Идентификатор КАК Идентификатор,
| ЗаданияОчереди.ОбластьДанных КАК ОбластьДанных
|ПОМЕСТИТЬ ВТЗаданияОчереди
|ИЗ
| &ЗаданияОчереди КАК ЗаданияОчереди
|;
|
|////////////////////////////////////////////////////////////////////////////////
|ВЫБРАТЬ
| НезавершенныеЗаданияОчереди.Идентификатор КАК Идентификатор
|ИЗ
| ВТЗаданияОчереди КАК НезавершенныеЗаданияОчереди
|ГДЕ
| НезавершенныеЗаданияОчереди.ОбластьДанных В(&НеобновленныеОбласти)";
ЗаданияДляВключения = Запрос.Выполнить().Выгрузить().ВыгрузитьКолонку("Идентификатор");
Для Каждого Задание Из ЗаданияДляВключения Цикл
РегламентныеЗаданияСервер.ИзменитьЗадание(Задание, Новый Структура("Использование", Истина));
КонецЦикла;
КонецЕсли; КонецЕсли;
Если ОтключитьЗадание Тогда Если ОтключитьЗадание Тогда
@@ -8550,7 +8598,6 @@
КонецПроцедуры КонецПроцедуры
// См. СтандартныеПодсистемыСервер.ПриОтправкеДанныхПодчиненному.
Процедура ПриОтправкеВерсийПодсистем(ЭлементДанных, ОтправкаЭлемента, Знач СозданиеНачальногоОбраза = Ложь) Процедура ПриОтправкеВерсийПодсистем(ЭлементДанных, ОтправкаЭлемента, Знач СозданиеНачальногоОбраза = Ложь)
СтандартнаяОбработка = Истина; СтандартнаяОбработка = Истина;
@@ -469,6 +469,18 @@
КонецФункции КонецФункции
Процедура УдалитьЗаданияОбновленияОбластей() Экспорт
ОтборЗадания = Новый Структура;
ОтборЗадания.Вставить("ИмяМетода", "ОбновлениеИнформационнойБазыСлужебныйВМоделиСервиса.ВыполнитьОбновлениеТекущейОбластиДанных");
Задания = РегламентныеЗаданияСервер.НайтиЗадания(ОтборЗадания);
Для Каждого Задание Из Задания Цикл
РегламентныеЗаданияСервер.УдалитьЗадание(Задание);
КонецЦикла;
КонецПроцедуры
#Область ОбработчикиСобытийПодсистемКонфигурации #Область ОбработчикиСобытийПодсистемКонфигурации
// См. ОбновлениеИнформационнойБазыБСП.ПередОбновлениемИнформационнойБазы. // См. ОбновлениеИнформационнойБазыБСП.ПередОбновлениемИнформационнойБазы.
@@ -390,56 +390,74 @@
#Область ОбработчикиОтправкиИПолученияДанныхДляОбменаВРаспределеннойИнформационнойБазе #Область ОбработчикиОтправкиИПолученияДанныхДляОбменаВРаспределеннойИнформационнойБазе
// Дополнительный обработчик одноименного события, возникающего при обмене данными в распределенной информационной базе. // Дополнительный обработчик одноименного события, возникающего
// при обмене данными в распределенной информационной базе.
// Выполняется после выполнения базовых алгоритмов библиотеки. // Выполняется после выполнения базовых алгоритмов библиотеки.
// Не выполняется, если отправка элемента данных была проигнорирована ранее. // Не выполняется, если отправка элемента данных была проигнорирована ранее.
// //
// Параметры: // Параметры:
// Источник - ПланОбменаОбъект - узел, для которого выполняется обмен. // Источник - ПланОбменаОбъект - узел, для которого выполняется обмен.
// ЭлементДанных - Произвольный - см. описание одноименного обработчика в синтакс-помощнике. // ЭлементДанных - КонстантаМенеджерЗначения
// ОтправкаЭлемента - ОтправкаЭлементаДанных - см. описание одноименного обработчика в синтакс-помощнике. // - СправочникОбъект
// СозданиеНачальногоОбраза - Булево - см. описание одноименного обработчика в синтакс-помощнике. // - ДокументОбъект
// - ПланВидовХарактеристикОбъект
// - ПланСчетовОбъект
// - ПланВидовРасчетаОбъект
// - БизнесПроцессОбъект
// - ЗадачаОбъект
// - УдалениеОбъекта
// - РегистрСведенийНаборЗаписей
// - РегистрРасчетаНаборЗаписей
// - РегистрБухгалтерииНаборЗаписей
// - РегистрРасчетаНаборЗаписей
// - ПоследовательностьНаборЗаписей
// - ПерерасчетНаборЗаписей - смотри описание одноименного обработчика в синтакс-помощнике.
// ОтправкаЭлемента - ОтправкаЭлементаДанных - смотри описание одноименного обработчика в синтакс-помощнике.
// СозданиеНачальногоОбраза - Булево - смотри описание одноименного обработчика в синтакс-помощнике.
// //
Процедура ПриОтправкеДанныхПодчиненному(Источник, ЭлементДанных, ОтправкаЭлемента, СозданиеНачальногоОбраза) Экспорт Процедура ПриОтправкеДанныхПодчиненному(Источник, ЭлементДанных, ОтправкаЭлемента, СозданиеНачальногоОбраза) Экспорт
КонецПроцедуры КонецПроцедуры
// Дополнительный обработчик одноименного события, возникающего при обмене данными в распределенной информационной базе. // Дополнительный обработчик одноименного события, возникающего
// при обмене данными в распределенной информационной базе.
// Выполняется после выполнения базовых алгоритмов библиотеки. // Выполняется после выполнения базовых алгоритмов библиотеки.
// Не выполняется, если отправка элемента данных была проигнорирована ранее. // Не выполняется, если отправка элемента данных была проигнорирована ранее.
// //
// Параметры: // Параметры:
// Источник - ПланОбменаОбъект - узел, для которого выполняется обмен. // Источник - ПланОбменаОбъект - узел, для которого выполняется обмен.
// ЭлементДанных - Произвольный - см. описание одноименного обработчика в синтакс-помощнике. // ЭлементДанных - см. ПриОтправкеДанныхПодчиненному.ЭлементДанных
// ОтправкаЭлемента - ОтправкаЭлементаДанных - см. описание одноименного обработчика в синтакс-помощнике. // ОтправкаЭлемента - ОтправкаЭлементаДанных - смотри описание одноименного обработчика в синтакс-помощнике.
// //
Процедура ПриОтправкеДанныхГлавному(Источник, ЭлементДанных, ОтправкаЭлемента) Экспорт Процедура ПриОтправкеДанныхГлавному(Источник, ЭлементДанных, ОтправкаЭлемента) Экспорт
КонецПроцедуры КонецПроцедуры
// Дополнительный обработчик одноименного события, возникающего при обмене данными в распределенной информационной базе. // Дополнительный обработчик одноименного события, возникающего
// при обмене данными в распределенной информационной базе.
// Выполняется после выполнения базовых алгоритмов библиотеки. // Выполняется после выполнения базовых алгоритмов библиотеки.
// Не выполняется, если получение элемента данных было проигнорировано ранее. // Не выполняется, если получение элемента данных было проигнорировано ранее.
// //
// Параметры: // Параметры:
// Источник - ПланОбменаОбъект - узел, для которого выполняется обмен. // Источник - ПланОбменаОбъект - узел, для которого выполняется обмен.
// ЭлементДанных - Произвольный - см. описание одноименного обработчика в синтакс-помощнике. // ЭлементДанных - см. ПриОтправкеДанныхПодчиненному.ЭлементДанных
// ПолучениеЭлемента - ПолучениеЭлементаДанных - см. описание одноименного обработчика в синтакс-помощнике. // ПолучениеЭлемента - ПолучениеЭлементаДанных - смотри описание одноименного обработчика в синтакс-помощнике.
// ОтправкаНазад - Булево - см. описание одноименного обработчика в синтакс-помощнике. // ОтправкаНазад - Булево - смотри описание одноименного обработчика в синтакс-помощнике.
// //
Процедура ПриПолученииДанныхОтПодчиненного(Источник, ЭлементДанных, ПолучениеЭлемента, ОтправкаНазад) Экспорт Процедура ПриПолученииДанныхОтПодчиненного(Источник, ЭлементДанных, ПолучениеЭлемента, ОтправкаНазад) Экспорт
КонецПроцедуры КонецПроцедуры
// Дополнительный обработчик одноименного события, возникающего при обмене данными в распределенной информационной базе. // Дополнительный обработчик одноименного события, возникающего
// при обмене данными в распределенной информационной базе.
// Выполняется после выполнения базовых алгоритмов библиотеки. // Выполняется после выполнения базовых алгоритмов библиотеки.
// Не выполняется, если получение элемента данных было проигнорировано ранее. // Не выполняется, если получение элемента данных было проигнорировано ранее.
// //
// Параметры: // Параметры:
// Источник - ПланОбменаОбъект - узел, для которого выполняется обмен. // Источник - ПланОбменаОбъект - узел, для которого выполняется обмен.
// ЭлементДанных - Произвольный - см. описание одноименного обработчика в синтакс-помощнике. // ЭлементДанных - см. ПриОтправкеДанныхПодчиненному.ЭлементДанных
// ПолучениеЭлемента - ПолучениеЭлементаДанных - см. описание одноименного обработчика в синтакс-помощнике. // ПолучениеЭлемента - ПолучениеЭлементаДанных - смотри описание одноименного обработчика в синтакс-помощнике.
// ОтправкаНазад - Булево - см. описание одноименного обработчика в синтакс-помощнике. // ОтправкаНазад - Булево - смотри описание одноименного обработчика в синтакс-помощнике.
// //
Процедура ПриПолученииДанныхОтГлавного(Источник, ЭлементДанных, ПолучениеЭлемента, ОтправкаНазад) Экспорт Процедура ПриПолученииДанныхОтГлавного(Источник, ЭлементДанных, ПолучениеЭлемента, ОтправкаНазад) Экспорт
@@ -448,9 +466,9 @@
// Позволяет изменить признак того, что версия программы является, либо не является базовой. // Позволяет изменить признак того, что версия программы является, либо не является базовой.
// //
// Параметры: // Параметры:
// ЭтоБазовая - Булево - признак того, что версия программы является базовой. По умолчанию Истина, если в имени // ЭтоБазовая - Булево - признак того, что версия программы является базовой.
// программы есть слово "Базовая". // По умолчанию Истина, если в имени программы есть слово "Базовая".
// //
Процедура ПриОпределенииПризнакаЭтоБазоваяВерсияКонфигурации(ЭтоБазовая) Экспорт Процедура ПриОпределенииПризнакаЭтоБазоваяВерсияКонфигурации(ЭтоБазовая) Экспорт
КонецПроцедуры КонецПроцедуры
@@ -10392,7 +10392,6 @@
Возврат; Возврат;
КонецЕсли; КонецЕсли;
ЭлементДанных = ЭлементДанных; // УдалениеОбъекта
ТипСсылки = ТипЗнч(ЭлементДанных.Ссылка); ТипСсылки = ТипЗнч(ЭлементДанных.Ссылка);
Если ТипСсылки = Тип("СправочникСсылка.ГруппыПользователей") Если ТипСсылки = Тип("СправочникСсылка.ГруппыПользователей")
@@ -753,10 +753,29 @@
Если (ЭтоМуниципальныйАдрес(Адрес.addressType) Если (ЭтоМуниципальныйАдрес(Адрес.addressType)
Или ЭтоАдминистративноТерриториальныйАдрес(Адрес.addressType)) Или ЭтоАдминистративноТерриториальныйАдрес(Адрес.addressType))
И ЭтоИмяУровняРегиона(ИмяУровня) И ЭтоИмяУровняРегиона(ИмяУровня)
И ЗначениеЗаполнено(Адрес["areaValue"]) Тогда И ЗначениеЗаполнено(Адрес.areaValue) Тогда
Возврат Адрес["areaValue"]; Возврат Адрес.areaValue;
КонецЕсли; КонецЕсли;
// АПК: 1297-выкл Данные адресного классификатора, не локализуются
Если СтрСравнить(ИмяУровня, "munDistrict") = 0 Тогда
Если СтрНачинаетсяС(ВРег(Адрес[ИмяУровня]), ВРег("Муниципальный район"))
Или СтрНачинаетсяС(ВРег(Адрес[ИмяУровня]), ВРег("Муниципальные районы")) Тогда
Возврат Адрес[ИмяУровня];
КонецЕсли;
КонецЕсли;
Если СтрСравнить(ИмяУровня, "settlement") = 0 Тогда
Если СтрНачинаетсяС(ВРег(Адрес[ИмяУровня]), ВРег("Межселенные территории"))
Или СтрНачинаетсяС(ВРег(Адрес[ИмяУровня]), ВРег("Межселенная территория"))
Или СтрНачинаетсяС(ВРег(Адрес[ИмяУровня]), ВРег("Эвенкийское")) Тогда
Возврат Адрес[ИмяУровня];
КонецЕсли;
КонецЕсли;
// АПК: 1297-вкл
Возврат УправлениеКонтактнойИнформациейКлиентСервер.СоединитьНаименованиеИТипАдресногоОбъекта( Возврат УправлениеКонтактнойИнформациейКлиентСервер.СоединитьНаименованиеИТипАдресногоОбъекта(
Адрес[ИмяУровня], Адрес[ИмяУровня + "Type"], СтрСравнить(ИмяУровня, "area") = 0); Адрес[ИмяУровня], Адрес[ИмяУровня + "Type"], СтрСравнить(ИмяУровня, "area") = 0);
@@ -279,19 +279,48 @@
// //
Функция УчетнаяЗаписьНастроена(УчетнаяЗапись, Знач ДляОтправки = Неопределено, Знач ДляПолучения = Неопределено) Экспорт Функция УчетнаяЗаписьНастроена(УчетнаяЗапись, Знач ДляОтправки = Неопределено, Знач ДляПолучения = Неопределено) Экспорт
Параметры = ОбщегоНазначения.ЗначенияРеквизитовОбъекта(УчетнаяЗапись, "АдресЭлектроннойПочты,СерверВходящейПочты,СерверИсходящейПочты,ИспользоватьДляПолучения,ИспользоватьДляОтправки,ПротоколВходящейПочты"); Параметры = ОбщегоНазначения.ЗначенияРеквизитовОбъекта(УчетнаяЗапись,
"АдресЭлектроннойПочты,
|СерверВходящейПочты,
|СерверИсходящейПочты,
|ИспользоватьДляПолучения,
|ИспользоватьДляОтправки,
|ПротоколВходящейПочты");
Если ПустаяСтрока(Параметры.АдресЭлектроннойПочты) Тогда
Возврат Ложь;
КонецЕсли;
Если ДляОтправки = Неопределено Тогда Если ДляОтправки = Неопределено Тогда
ДляОтправки = Параметры.ИспользоватьДляОтправки; ДляОтправки = Параметры.ИспользоватьДляОтправки;
КонецЕсли; КонецЕсли;
Если ДляОтправки И Не Параметры.ИспользоватьДляОтправки Тогда
Возврат Ложь;
КонецЕсли;
Если ДляПолучения = Неопределено Тогда Если ДляПолучения = Неопределено Тогда
ДляПолучения = Параметры.ИспользоватьДляПолучения; ДляПолучения = Параметры.ИспользоватьДляПолучения;
КонецЕсли; КонецЕсли;
Возврат Не (ПустаяСтрока(Параметры.АдресЭлектроннойПочты) Если ДляПолучения И Не Параметры.ИспользоватьДляПолучения Тогда
Или ДляПолучения И ПустаяСтрока(Параметры.СерверВходящейПочты) Возврат Ложь;
Или ДляОтправки И (ПустаяСтрока(Параметры.СерверИсходящейПочты) КонецЕсли;
Или (Параметры.ПротоколВходящейПочты = "IMAP" И ПустаяСтрока(Параметры.СерверВходящейПочты))));
Если ДляПолучения И ПустаяСтрока(Параметры.СерверВходящейПочты) Тогда
Возврат Ложь;
КонецЕсли;
Если ДляОтправки И ПустаяСтрока(Параметры.СерверИсходящейПочты) Тогда
Возврат Ложь;
КонецЕсли;
Если ДляОтправки И Параметры.ПротоколВходящейПочты = "IMAP" И ПустаяСтрока(Параметры.СерверВходящейПочты) Тогда
Возврат Ложь;
КонецЕсли;
Возврат Истина;
КонецФункции КонецФункции
// Выполняет проверку настроек электронной почты. // Выполняет проверку настроек электронной почты.
@@ -1100,7 +1100,7 @@
ЕстьТекущаяВерсия = Ложь; ЕстьТекущаяВерсия = Ложь;
Если ОбщегоНазначения.ЕстьРеквизитОбъекта("ТекущаяВерсия", МетаданныеОбъектаФайла) Тогда Если ОбщегоНазначения.ЕстьРеквизитОбъекта("ТекущаяВерсия", МетаданныеОбъектаФайла) Тогда
ТекущаяВерсия = ОбщегоНазначения.ЗначениеРеквизитаОбъекта(ПрисоединенныйФайл, "ТекущаяВерсия"); ТекущаяВерсия = ОбщегоНазначения.ЗначениеРеквизитаОбъекта(ПрисоединенныйФайл, "ТекущаяВерсия");
ЕстьТекущаяВерсия = ЗначениеЗаполнено(ТекущаяВерсия); ЕстьТекущаяВерсия = ЗначениеЗаполнено(ТекущаяВерсия) И ОбщегоНазначения.СсылкаСуществует(ТекущаяВерсия);
КонецЕсли; КонецЕсли;
Если ЕстьТекущаяВерсия Тогда // С возможностью хранить версии Если ЕстьТекущаяВерсия Тогда // С возможностью хранить версии
ИменаРеквизитов = "Ссылка,ТипХраненияФайла,Наименование,Расширение,Том,ПутьКФайлу,ПометкаУдаления"; ИменаРеквизитов = "Ссылка,ТипХраненияФайла,Наименование,Расширение,Том,ПутьКФайлу,ПометкаУдаления";
@@ -234,7 +234,7 @@
Обработчик.ЧитаемыеОбъекты = "РегистрСведений.ХранилищеФайлов"; Обработчик.ЧитаемыеОбъекты = "РегистрСведений.ХранилищеФайлов";
Обработчик.ИзменяемыеОбъекты = "РегистрСведений.СведенияОХраненииДедуплицированныхФайлов"; Обработчик.ИзменяемыеОбъекты = "РегистрСведений.СведенияОХраненииДедуплицированныхФайлов";
Обработчик.БлокируемыеОбъекты = "РегистрСведений.ХранилищеФайлов"; Обработчик.БлокируемыеОбъекты = "РегистрСведений.ХранилищеФайлов";
Обработчик.Порядок = Перечисления.ПорядокОбработчиковОбновления.Некритичный;
Обработчик.ПриоритетыВыполнения = ОбновлениеИнформационнойБазы.ПриоритетыВыполненияОбработчика(); Обработчик.ПриоритетыВыполнения = ОбновлениеИнформационнойБазы.ПриоритетыВыполненияОбработчика();
Приоритет = Обработчик.ПриоритетыВыполнения.Добавить(); Приоритет = Обработчик.ПриоритетыВыполнения.Добавить();
Приоритет.Порядок = "Любой"; Приоритет.Порядок = "Любой";
@@ -7375,112 +7375,116 @@
Результат = Результат =
"TWluaXN0cnkgb2YgRGlnaXRhbCBEZXZlbG9wbWVudCBvZiB0aGUgUnVzc2lhbiBG "TWluaXN0cnkgb2YgRGlnaXRhbCBEZXZlbG9wbWVudCBvZiB0aGUgUnVzc2lhbiBG
|ZWRlcmF0aW9uIGJlZm9yZSAyMDQwDQo9PT09PT09PT09PT09PT09PT09PT09PT09 |ZWRlcmF0aW9uIGJlZm9yZSAyMDQ0DQo9PT09PT09PT09PT09PT09PT09PT09PT09
|PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0NCg0K |PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0NCg0K
|LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tDQpNSUlGVVRDQ0JQNmdBd0lCQWdJ |LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tDQpNSUlGNnpDQ0JaaWdBd0lCQWdJ
|UkFKVWZvMGQ4WVFRNnJmcUZoaWVDTkVJd0NnWUlLb1VEQndFQkF3SXdnZ0U3DQpN |UUdNTk45VGE1L2VJcGVlVmNTQWcyVURBS0JnZ3FoUU1IQVFFREFqQ0NBVHN4DQpJ
|U0V3SHdZSktvWklodmNOQVFrQkZoSmthWFJBWkdsbmFYUmhiQzVuYjNZdWNuVXhD |VEFmQmdrcWhraUc5dzBCQ1FFV0VtUnBkRUJrYVdkcGRHRnNMbWR2ZGk1eWRURUxN
|ekFKQmdOVkJBWVRBbEpWDQpNUmd3RmdZRFZRUUlEQTgzTnlEUW5OQyswWUhRdXRD |QWtHQTFVRUJoTUNVbFV4DQpHREFXQmdOVkJBZ01EemMzSU5DYzBMN1JnZEM2MExM
|eTBMQXhHVEFYQmdOVkJBY01FTkN6TGlEUW5OQyswWUhRDQp1dEN5MExBeFV6QlJC |UXNERVpNQmNHQTFVRUJ3d1EwTE11SU5DYzBMN1JnZEM2DQowTExRc0RGVE1GRUdB
|Z05WQkFrTVN0Q2YwWURRdGRHQjBMM1F0ZEM5MFlIUXV0Q3cwWThnMEwzUXNOQ3gw |MVVFQ1F4SzBKL1JnTkMxMFlIUXZkQzEwTDNSZ2RDNjBMRFJqeURRdmRDdzBMSFF0
|TFhSDQpnTkMxMExiUXZkQ3cwWThzSU5DMDBMN1F2Q0F4TUN3ZzBZSFJndEdBMEw3 |ZEdBDQowTFhRdHRDOTBMRFJqeXdnMExUUXZ0QzhJREV3TENEUmdkR0MwWURRdnRD
|UXRkQzkwTGpRdFNBeU1TWXdKQVlEDQpWUVFLREIzUW5OQzQwTDNSaHRDNDBZVFJn |MTBMM1F1TkMxSURJeEpqQWtCZ05WDQpCQW9NSGRDYzBMalF2ZEdHMExqUmhOR0Ew
|TkdMSU5DZzBMN1JnZEdCMExqUXVERVlNQllHQlNxRkEyUUJFZzB4DQpNRFEzTnpB |WXNnMEtEUXZ0R0IwWUhRdU5DNE1SZ3dGZ1lGS29VRFpBRVNEVEV3DQpORGMzTURJ
|eU1ESTJOekF4TVJVd0V3WUZLb1VEWkFRU0NqYzNNVEEwTnpRek56VXhKakFrQmdO |d01qWTNNREV4RlRBVEJnVXFoUU5rQkJJS056Y3hNRFEzTkRNM05URW1NQ1FHQTFV
|VkJBTU1IZENjDQowTGpRdmRHRzBMalJoTkdBMFlzZzBLRFF2dEdCMFlIUXVOQzRN |RUF3d2QwSnpRDQp1TkM5MFliUXVOR0UwWURSaXlEUW9OQyswWUhSZ2RDNDBMZ3dI
|QjRYRFRJeU1ERXdPREV6TXpJek9Wb1hEVFF3DQpNREV3T0RFek16SXpPVm93Z2dF |aGNOTWpZd01qQXlNRGsxTlRVMFdoY05ORFF3DQpNakF5TURrMU5UVTBXakNDQVRz
|N01TRXdId1lKS29aSWh2Y05BUWtCRmhKa2FYUkFaR2xuYVhSaGJDNW5iM1l1DQpj |eElUQWZCZ2txaGtpRzl3MEJDUUVXRW1ScGRFQmthV2RwZEdGc0xtZHZkaTV5DQpk
|blV4Q3pBSkJnTlZCQVlUQWxKVk1SZ3dGZ1lEVlFRSURBODNOeURRbk5DKzBZSFF1 |VEVMTUFrR0ExVUVCaE1DVWxVeEdEQVdCZ05WQkFnTUR6YzNJTkNjMEw3UmdkQzYw
|dEN5MExBeEdUQVhCZ05WDQpCQWNNRU5DekxpRFFuTkMrMFlIUXV0Q3kwTEF4VXpC |TExRc0RFWk1CY0dBMVVFDQpCd3dRMExNdUlOQ2MwTDdSZ2RDNjBMTFFzREZUTUZF
|UkJnTlZCQWtNU3RDZjBZRFF0ZEdCMEwzUXRkQzkwWUhRDQp1dEN3MFk4ZzBMM1Fz |R0ExVUVDUXhLMEovUmdOQzEwWUhRdmRDMTBMM1JnZEM2DQowTERSanlEUXZkQ3cw
|TkN4MExYUmdOQzEwTGJRdmRDdzBZOHNJTkMwMEw3UXZDQXhNQ3dnMFlIUmd0R0Ew |TEhRdGRHQTBMWFF0dEM5MExEUmp5d2cwTFRRdnRDOElERXdMQ0RSZ2RHQzBZRFF2
|TDdRDQp0ZEM5MExqUXRTQXlNU1l3SkFZRFZRUUtEQjNRbk5DNDBMM1JodEM0MFlU |dEMxDQowTDNRdU5DMUlESXhKakFrQmdOVkJBb01IZENjMExqUXZkR0cwTGpSaE5H
|UmdOR0xJTkNnMEw3UmdkR0IwTGpRDQp1REVZTUJZR0JTcUZBMlFCRWcweE1EUTNO |QTBZc2cwS0RRdnRHQjBZSFF1TkM0DQpNUmd3RmdZRktvVURaQUVTRFRFd05EYzNN
|ekF5TURJMk56QXhNUlV3RXdZRktvVURaQVFTQ2pjM01UQTBOelF6DQpOelV4SmpB |REl3TWpZM01ERXhGVEFUQmdVcWhRTmtCQklLTnpjeE1EUTNORE0zDQpOVEVtTUNR
|a0JnTlZCQU1NSGRDYzBMalF2ZEdHMExqUmhOR0EwWXNnMEtEUXZ0R0IwWUhRdU5D |R0ExVUVBd3dkMEp6UXVOQzkwWWJRdU5HRTBZRFJpeURRb05DKzBZSFJnZEM0MExn
|NE1HWXdId1lJDQpLb1VEQndFQkFRRXdFd1lIS29VREFnSWpBUVlJS29VREJ3RUJB |d1pqQWZCZ2dxDQpoUU1IQVFFQkFUQVRCZ2NxaFFNQ0FpTUJCZ2dxaFFNSEFRRUNB
|Z0lEUXdBRVFGcEthNlFkYTQ4TGpGcS9kcnoyDQpNMjdmRnF1L2czK1ByeHJnOWxF |Z05EQUFSQU9saHN3ajdQbnozNGtKK084MUZODQpVQUF4VWY3Z0hiUm5BTXRvSm5N
|K0tQemRidlJId3VPdGJobEo5Mm9nbVMraTdtaERER1BzV2h0UFZkdVY5S2JxDQpR |b1N5WkhWSE1sSkRZZVJhcjdyV2x4WGJPa04waE9VekNYZ3ZEV3QwMlZiYytKDQpL
|STZqZ2dIUU1JSUJ6RENCOVFZRktvVURaSEFFZ2Vzd2dlZ01OTkNmMEpEUW10Q2NJ |YU9DQW1zd2dnSm5NSUlCTFFZRktvVURaSEFFZ2dFaU1JSUJIZ3hwMEovUWtOQ2Ew
|TUtyMEpyUmdOQzQwTC9SDQpndEMrMEovUmdOQytJRWhUVGNLN0lOQ3kwTFhSZ05H |Sndnd3F2UW10R0EwTGpRDQp2OUdDMEw3UW45R0EwTDRnU0ZOTndyc2cwTExRdGRH
|QjBMalF1Q0F5TGpBTVE5Q2YwSkRRbWlEQ3E5Q1QwTDdRDQp1OUMrMExMUXZkQysw |QTBZSFF1TkdQSURJdU1DQW8wTHJRdnRDODBML1F1OUMxDQowTHJSZ3RDdzBZYlF1
|TGtnMFlQUXROQyswWUhSZ3RDKzBMTFF0ZEdBMFkvUmp0R0owTGpRdVNEUmh0QzEw |TkdQSURFcEtOQzQwWUhRdjlDKzBMdlF2ZEMxMEwzUXVOQzFJREVwREVQUW45Q1Ew
|TDNSDQpndEdBd3JzTU5kQ1gwTERRdXRDNzBZN1JoOUMxMEwzUXVOQzFJT0tFbGlB |Sm9nDQp3cXZRazlDKzBMdlF2dEN5MEwzUXZ0QzVJTkdEMExUUXZ0R0IwWUxRdnRD
|eE5Ea3ZNeTh5THpJdk1qTWcwTDdSDQpnaUF3TWk0d015NHlNREU0RERUUWw5Q3cw |eTBMWFJnTkdQMFk3UmlkQzQwTGtnDQowWWJRdGRDOTBZTFJnTUs3RERiUWw5Q3cw
|THJRdTlHTzBZZlF0ZEM5MExqUXRTRGloSllnTVRRNUx6Y3ZOaTAwDQpORGtnMEw3 |THJRdTlHTzBZZlF0ZEM5MExqUXRTRGloSllnTVRRNUx6TXZNaTh4DQpMekl4TUNE
|UmdpQXpNQzR4TWk0eU1ESXhNRDhHQlNxRkEyUnZCRFlNTk5DZjBKRFFtdENjSU1L |UXZ0R0NJRE14TGpBeExqSXdNak1NTk5DWDBMRFF1dEM3MFk3Umg5QzEwTDNRdU5D
|cjBKclJnTkM0DQowTC9SZ3RDKzBKL1JnTkMrSUVoVFRjSzdJTkN5MExYUmdOR0Iw |MUlPS0VsaUF4DQpORGt2Tnk4Mkx6UTBOeURRdnRHQ0lETXdMakE1TGpJd01qVXdk
|TGpRdUNBeUxqQXdEQVlGS29VRFpISUVBd0lCDQpBREJEQmdOVkhTQUVQREE2TUFn |QVlGS29VRFpHOEVhd3hwMEovUWtOQ2EwSndnDQp3cXZRbXRHQTBMalF2OUdDMEw3
|R0JpcUZBMlJ4QVRBSUJnWXFoUU5rY1FJd0NBWUdLb1VEWkhFRE1BZ0dCaXFGDQpB |UW45R0EwTDRnU0ZOTndyc2cwTExRdGRHQTBZSFF1TkdQSURJdU1DQW8wTHJRDQp2
|MlJ4QkRBSUJnWXFoUU5rY1FVd0JnWUVWUjBnQURBT0JnTlZIUThCQWY4RUJBTUNB |dEM4MEwvUXU5QzEwTHJSZ3RDdzBZYlF1TkdQSURFcEtOQzQwWUhRdjlDKzBMdlF2
|UVl3RHdZRFZSMFRBUUgvDQpCQVV3QXdFQi96QWRCZ05WSFE0RUZnUVV5Uk5Zc1V5 |ZEMxMEwzUXVOQzFJREVwDQpNQXdHQlNxRkEyUnlCQU1DQVFBd1F3WURWUjBnQkR3
|bllqcCswajg4cHVjVWZKMXdvNFl3Q2dZSUtvVURCd0VCDQpBd0lEUVFDQ1NYaElD |d09qQUlCZ1lxaFFOa2NRRXdDQVlHS29VRFpIRUNNQWdHDQpCaXFGQTJSeEF6QUlC
|ZzNTWi9UVEN0UkpwQkZ1WEdTeTNQZVpURWVPd2RPSEl2MHRXaU4ycTBtUFJ6Qi9v |Z1lxaFFOa2NRUXdDQVlHS29VRFpIRUZNQVlHQkZVZElBQXdEZ1lEVlIwUEFRSC9C
|NnI5DQpNWGpHcWR6ZllHdENycTFsNUZzWFpPSTVjLzJTDQotLS0tLUVORCBDRVJU |QVFEDQpBZ0VHTUNzR0ExVWRFQVFrTUNLQUR6SXdNall3TWpBeU1EazFOVFUwV29F
|SUZJQ0FURS0tLS0tDQoNCk5QQyAxQyBiZWZvcmUgMjAzNw0KPT09PT09PT09PT09 |UE1qQXpOREF5TURJd09UVTFOVFJhDQpNQThHQTFVZEV3RUIvd1FGTUFNQkFmOHdI
|PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 |UVlEVlIwT0JCWUVGTUZGd0EzM3pLM0tDTjhuVE9FenVJb2grOHRUDQpNQW9HQ0Nx
|PT09PT09PT09DQoNCi0tLS0tQkVHSU4gQ0VSVElGSUNBVEUtLS0tLQ0KTUlJSHRU |RkF3Y0JBUU1DQTBFQTVVdC9xV1pSUHFldDdHL21NS003cnAwUDMxOUtGMFYwOWtJ
|Q0NCMktnQXdJQkFnSUxBSXlueDFrQUFBQUFCZm93Q2dZSUtvVURCd0VCQXdJd2dn |ZDVHVC9BQ2xQDQpMeTg3dWF3MnM1K25WRGNmdFhsbW9BY0s1Y0hZeEdlR0lvVTNs
|RTdNU0V3SHdZSg0KS29aSWh2Y05BUWtCRmhKa2FYUkFaR2xuYVhSaGJDNW5iM1l1 |eGRONnc9PQ0KLS0tLS1FTkQgQ0VSVElGSUNBVEUtLS0tLQ0KDQpOUEMgMUMgYmVm
|Y25VeEN6QUpCZ05WQkFZVEFsSlZNUmd3RmdZRA0KVlFRSURBODNOeURRbk5DKzBZ |b3JlIDIwMzkNCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
|SFF1dEN5MExBeEdUQVhCZ05WQkFjTUVOQ3pMaURRbk5DKzBZSFF1dEN5MExBeA0K |PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQ0KDQotLS0tLUJFR0lOIENF
|VXpCUkJnTlZCQWtNU3RDZjBZRFF0ZEdCMEwzUXRkQzkwWUhRdXRDdzBZOGcwTDNR |UlRJRklDQVRFLS0tLS0NCk1JSUh0RENDQjJHZ0F3SUJBZ0lLQmRMeVF3QUFBQUFK
|c05DeDBMWFJnTkMxMExiUQ0KdmRDdzBZOHNJTkMwMEw3UXZDQXhNQ3dnMFlIUmd0 |RGpBS0JnZ3FoUU1IQVFFREFqQ0NBVHN4SVRBZkJna3ENCmhraUc5dzBCQ1FFV0Vt
|R0EwTDdRdGRDOTBMalF0U0F5TVNZd0pBWURWUVFLREIzUQ0Kbk5DNDBMM1JodEM0 |UnBkRUJrYVdkcGRHRnNMbWR2ZGk1eWRURUxNQWtHQTFVRUJoTUNVbFV4R0RBV0Jn
|MFlUUmdOR0xJTkNnMEw3UmdkR0IwTGpRdURFWU1CWUdCU3FGQTJRQkVnMHhNRFEz |TlYNCkJBZ01EemMzSU5DYzBMN1JnZEM2MExMUXNERVpNQmNHQTFVRUJ3d1EwTE11
|TnpBeQ0KTURJMk56QXhNUlV3RXdZRktvVURaQVFTQ2pjM01UQTBOelF6TnpVeEpq |SU5DYzBMN1JnZEM2MExMUXNERlQNCk1GRUdBMVVFQ1F4SzBKL1JnTkMxMFlIUXZk
|QWtCZ05WQkFNTUhkQ2MwTGpRdmRHRw0KMExqUmhOR0EwWXNnMEtEUXZ0R0IwWUhR |QzEwTDNSZ2RDNjBMRFJqeURRdmRDdzBMSFF0ZEdBMExYUXR0QzkNCjBMRFJqeXdn
|dU5DNE1CNFhEVEl5TURFeE16RXdNall5TkZvWERUTTNNREV4TXpFdw0KTWpZeU5G |MExUUXZ0QzhJREV3TENEUmdkR0MwWURRdnRDMTBMM1F1TkMxSURJeEpqQWtCZ05W
|b3dnZ0V4TVJVd0V3WUZLb1VEWkFRU0NqYzNNamsxTVRBeU1UQXhHREFXQmdVcWhR |QkFvTUhkQ2MNCjBMalF2ZEdHMExqUmhOR0EwWXNnMEtEUXZ0R0IwWUhRdU5DNE1S
|TmtBUklOTVRBMA0KTnpjNU5qVXlOalUwTmpFTE1Ba0dBMVVFQmhNQ1VsVXhHREFX |Z3dGZ1lGS29VRFpBRVNEVEV3TkRjM01ESXcNCk1qWTNNREV4RlRBVEJnVXFoUU5r
|QmdOVkJBZ01EemMzSU5DYzBMN1JnZEM2MExMUQ0Kc0RFVk1CTUdBMVVFQnd3TTBK |QkJJS056Y3hNRFEzTkRNM05URW1NQ1FHQTFVRUF3d2QwSnpRdU5DOTBZYlENCnVO
|elF2dEdCMExyUXN0Q3dNV2t3WndZRFZRUUpER0RSZzlDNzBMalJodEN3SU5DYw0K |R0UwWURSaXlEUW9OQyswWUhSZ2RDNDBMZ3dIaGNOTWpRd01qQTFNRGd3TlRReVdo
|MEw3UmdkR0UwTGpRdTlHTTBMelF2dEN5MFlIUXV0Q3cwWThzSU5DMDBMN1F2Q0Ew |Y05Nemt3TWpBMU1EZ3cNCk5UUXlXakNDQVRFeEZUQVRCZ1VxaFFOa0JCSUtOemN5
|TWl3ZzBZSFJndEdBMEw3UQ0KdGRDOTBMalF0U0F4TENEUmpkR0NMOUMvMEw3UXZD |T1RVeE1ESXhNREVZTUJZR0JTcUZBMlFCRWcweE1EUTMNCk56azJOVEkyTlRRMk1R
|L1F1dEMrMEx3Z01TOHhMemN4RnpBVkJna3Foa2lHOXcwQg0KQ1FFV0NHTmhRREZq |c3dDUVlEVlFRR0V3SlNWVEVZTUJZR0ExVUVDQXdQTnpjZzBKelF2dEdCMExyUXN0
|TG5KMU1SMHdHd1lEVlFRS0RCVFFudENlMEo0Z0l0Q2QwSi9RcGlBaU1kQ2hJakVk |Q3cNCk1SVXdFd1lEVlFRSERBelFuTkMrMFlIUXV0Q3kwTEF4YVRCbkJnTlZCQWtN
|TUJzRw0KQTFVRUF3d1UwSjdRbnRDZUlDTFFuZENmMEtZZ0lqSFFvU0l3WmpBZkJn |WU5HRDBMdlF1TkdHMExBZzBKelENCnZ0R0IwWVRRdU5DNzBZelF2TkMrMExMUmdk
|Z3FoUU1IQVFFQkFUQVRCZ2NxaFFNQw0KQWlNQkJnZ3FoUU1IQVFFQ0FnTkRBQVJB |QzYwTERSanl3ZzBMVFF2dEM4SURReUxDRFJnZEdDMFlEUXZ0QzENCjBMM1F1TkMx
|akhZZWJsQ2h3RGRCamJvd01hd1NNeU9MNU9qc0ppZVNPTzNhUXo5bA0Kc2QrU1Fr |SURFc0lOR04wWUl2MEwvUXZ0QzhMOUM2MEw3UXZDQXhMekV2TnpFWE1CVUdDU3FH
|akZyZ2owUXJzd0owR2xrSlNpdWwzWm50SU51YWRMVUx2Rlc3WDZjYU9DQkVRd2dn |U0liM0RRRUoNCkFSWUlZMkZBTVdNdWNuVXhIVEFiQmdOVkJBb01GTkNlMEo3UW5p
|UkFNQXNHQTFVZA0KRHdRRUF3SUJoakFkQmdOVkhRNEVGZ1FVK3U0c2E0K3QwY2do |QWkwSjNRbjlDbUlDSXgwS0VpTVIwd0d3WUQNClZRUUREQlRRbnRDZTBKNGdJdENk
|RHYzU2F4cjhsenAzeWJNd0VnWURWUjBUQVFILw0KQkFnd0JnRUIvd0lCQURBbEJn |MEovUXBpQWlNZENoSWpCbU1COEdDQ3FGQXdjQkFRRUJNQk1HQnlxRkF3SUMNCkl3
|TlZIU0FFSGpBY01BZ0dCaXFGQTJSeEFUQUlCZ1lxaFFOa2NRSXdCZ1lFVlIwZw0K |RUdDQ3FGQXdjQkFRSUNBME1BQkVDTUc2RERaR3ZlSjA4S3FJSVRhZ1ArVkltdzc5
|QURCU0JnVXFoUU5rYndSSkRFY2kwSnJSZ05DNDBML1JndEMrMEovUmdOQytJRU5U |TkkrYUZNdndoQ1RleC8NClBTRzJ0ZDllOTd5VnBSTjFLY3BnRzg4Q3Y4YWR6WFZo
|VUNJZzBMTFF0ZEdBMFlIUQ0KdU5HUElEUXVNQ0FvMExqUmdkQy8wTDdRdTlDOTBM |NUJvM3J4VUtzbGlHbzRJRVJEQ0NCRUF3Q3dZRFZSMFANCkJBUURBZ0dHTUIwR0Ex
|WFF2ZEM0MExVZ01pMUNZWE5sS1RBVUJna3JCZ0VFQVlJMw0KRkFJRUJ3d0ZVM1Zp |VWREZ1FXQkJUcFFXNXhtd1llVk90MVZTb042MnhYQndkZDlEQVNCZ05WSFJNQkFm
|UTBFd0VnWUpLd1lCQkFHQ054VUJCQVVDQXdFQUFUQ0NBWDBHQTFVZEl3U0NBWFF3 |OEUNCkNEQUdBUUgvQWdFQU1DVUdBMVVkSUFRZU1Cd3dDQVlHS29VRFpIRUJNQWdH
|Z2dGdw0KZ0JUSkUxaXhUS2RpT243U1B6eW01eFI4blhDamhxR0NBVU9rZ2dFL01J |QmlxRkEyUnhBakFHQmdSVkhTQUENCk1GSUdCU3FGQTJSdkJFa01SeUxRbXRHQTBM
|SUJPekVoTUI4R0NTcUdTSWIzRFFFSg0KQVJZU1pHbDBRR1JwWjJsMFlXd3VaMjky |alF2OUdDMEw3UW45R0EwTDRnUTFOUUlpRFFzdEMxMFlEUmdkQzQNCjBZOGdOQzR3
|TG5KMU1Rc3dDUVlEVlFRR0V3SlNWVEVZTUJZR0ExVUVDQXdQTnpjZw0KMEp6UXZ0 |SUNqUXVOR0IwTC9RdnRDNzBMM1F0ZEM5MExqUXRTQXlMVUpoYzJVcE1CUUdDU3NH
|R0IwTHJRc3RDd01Sa3dGd1lEVlFRSERCRFFzeTRnMEp6UXZ0R0IwTHJRc3RDd01W |QVFRQmdqY1UNCkFnUUhEQVZUZFdKRFFUQVNCZ2tyQmdFRUFZSTNGUUVFQlFJREF3
|TXdVUVlEVlFRSg0KREVyUW45R0EwTFhSZ2RDOTBMWFF2ZEdCMExyUXNOR1BJTkM5 |QURNSUlCZlFZRFZSMGpCSUlCZERDQ0FYQ0ENCkZNa1RXTEZNcDJJNmZ0SS9QS2Ju
|MExEUXNkQzEwWURRdGRDMjBMM1FzTkdQTENEUQ0KdE5DKzBMd2dNVEFzSU5HQjBZ |Rkh5ZGNLT0dvWUlCUTZTQ0FUOHdnZ0U3TVNFd0h3WUpLb1pJaHZjTkFRa0INCkZo
|TFJnTkMrMExYUXZkQzQwTFVnTWpFbU1DUUdBMVVFQ2d3ZDBKelF1TkM5MFliUQ0K |SmthWFJBWkdsbmFYUmhiQzVuYjNZdWNuVXhDekFKQmdOVkJBWVRBbEpWTVJnd0Zn
|dU5HRTBZRFJpeURRb05DKzBZSFJnZEM0MExneEdEQVdCZ1VxaFFOa0FSSU5NVEEw |WURWUVFJREE4M055RFENCm5OQyswWUhRdXRDeTBMQXhHVEFYQmdOVkJBY01FTkN6
|Tnpjd01qQXlOamN3TVRFVg0KTUJNR0JTcUZBMlFFRWdvM056RXdORGMwTXpjMU1T |TGlEUW5OQyswWUhRdXRDeTBMQXhVekJSQmdOVkJBa00NClN0Q2YwWURRdGRHQjBM
|WXdKQVlEVlFRRERCM1FuTkM0MEwzUmh0QzQwWVRSZ05HTA0KSU5DZzBMN1JnZEdC |M1F0ZEM5MFlIUXV0Q3cwWThnMEwzUXNOQ3gwTFhSZ05DMTBMYlF2ZEN3MFk4c0lO
|MExqUXVJSVJBSlVmbzBkOFlRUTZyZnFGaGllQ05FSXdnWThHQTFVZEh3U0JoekNC |QzANCjBMN1F2Q0F4TUN3ZzBZSFJndEdBMEw3UXRkQzkwTGpRdFNBeU1TWXdKQVlE
|aERBcQ0Kb0NpZ0pvWWthSFIwY0RvdkwzSmxaWE4wY2kxd2Eya3VjblV2WTJSd0wy |VlFRS0RCM1FuTkM0MEwzUmh0QzQNCjBZVFJnTkdMSU5DZzBMN1JnZEdCMExqUXVE
|ZDFZekl3TWpJdVkzSnNNQ3FnS0tBbQ0KaGlSb2RIUndPaTh2WTI5dGNHRnVlUzV5 |RVlNQllHQlNxRkEyUUJFZzB4TURRM056QXlNREkyTnpBeE1SVXcNCkV3WUZLb1VE
|ZEM1eWRTOWpaSEF2WjNWak1qQXlNaTVqY213d0txQW9vQ2FHSkdoMA0KZEhBNkx5 |WkFRU0NqYzNNVEEwTnpRek56VXhKakFrQmdOVkJBTU1IZENjMExqUXZkR0cwTGpS
|OXliM04wWld4bFkyOXRMbkoxTDJOa2NDOW5kV015TURJeUxtTnliREJBQmdnckJn |aE5HQTBZc2cNCjBLRFF2dEdCMFlIUXVOQzRnaEVBbFIralIzeGhCRHF0K29XR0o0
|RUZCUWNCQVFRMA0KTURJd01BWUlLd1lCQlFVSE1BS0dKR2gwZEhBNkx5OXlaV1Z6 |STBRakNCandZRFZSMGZCSUdITUlHRU1DcWcNCktLQW1oaVJvZEhSd09pOHZjbVZs
|ZEhJdGNHdHBMbkoxTDJOa2NDOW5kV015TURJeQ0KTG1OeWREQ0I5UVlGS29VRFpI |YzNSeUxYQnJhUzV5ZFM5alpIQXZaM1ZqTWpBeU1pNWpjbXd3S3FBb29DYUcNCkpH
|QUVnZXN3Z2VnTU5OQ2YwSkRRbXRDY0lNS3IwSnJSZ05DNDBML1JndEMrMEovUg0K |aDBkSEE2THk5amIyMXdZVzU1TG5KMExuSjFMMk5rY0M5bmRXTXlNREl5TG1OeWJE
|Z05DK0lFaFRUY0s3SU5DeTBMWFJnTkdCMExqUXVDQXlMakFNUTlDZjBKRFFtaURD |QXFvQ2lnSm9Za2FIUjANCmNEb3ZMM0p2YzNSbGJHVmpiMjB1Y25VdlkyUndMMmQx
|cTlDVDBMN1F1OUMrMExMUQ0KdmRDKzBMa2cwWVBRdE5DKzBZSFJndEMrMExMUXRk |WXpJd01qSXVZM0pzTUVBR0NDc0dBUVVGQndFQkJEUXcNCk1qQXdCZ2dyQmdFRkJR
|R0EwWS9SanRHSjBMalF1U0RSaHRDMTBMM1JndEdBd3JzTQ0KTmRDWDBMRFF1dEM3 |Y3dBb1lrYUhSMGNEb3ZMM0psWlhOMGNpMXdhMmt1Y25VdlkyUndMMmQxWXpJd01q
|MFk3Umg5QzEwTDNRdU5DMUlPS0VsaUF4TkRrdk15OHlMekl2TWpNZzBMN1JnaUF3 |SXUNClkzSjBNSUgxQmdVcWhRTmtjQVNCNnpDQjZBdzAwSi9Ra05DYTBKd2d3cXZR
|TWk0dw0KTXk0eU1ERTRERFRRbDlDdzBMclF1OUdPMFlmUXRkQzkwTGpRdFNEaWhK |bXRHQTBMalF2OUdDMEw3UW45R0ENCjBMNGdTRk5Od3JzZzBMTFF0ZEdBMFlIUXVO
|WWdNVFE1THpjdk5pMDBORGtnMEw3Ug0KZ2lBek1DNHhNaTR5TURJeE1Bd0dCU3FG |QzRJREl1TUF4RDBKL1FrTkNhSU1LcjBKUFF2dEM3MEw3UXN0QzkNCjBMN1F1U0RS
|QTJSeUJBTUNBUUV3Q2dZSUtvVURCd0VCQXdJRFFRQkt3Zy81ajJEYQ0KeVhUem5N |ZzlDMDBMN1JnZEdDMEw3UXN0QzEwWURSajlHTzBZblF1TkM1SU5HRzBMWFF2ZEdD
|MXV0eGRaVFljVWJaLzgrdzJ1ZVdxTlJyTWNVTW0valhNLzV6K1Ayb3dWMTFzMWFy |MFlEQ3V3dzENCjBKZlFzTkM2MEx2Ump0R0gwTFhRdmRDNDBMVWc0b1NXSURFME9T
|dnlMOTA1VXdrag0KaWg1RnY5RllDN2wyDQotLS0tLUVORCBDRVJUSUZJQ0FURS0t |OHpMekl2TWk4eU15RFF2dEdDSURBeUxqQXoNCkxqSXdNVGdNTk5DWDBMRFF1dEM3
|LS0tDQo="; |MFk3Umg5QzEwTDNRdU5DMUlPS0VsaUF4TkRrdk55ODJMVFEwT1NEUXZ0R0MNCklE
|TXdMakV5TGpJd01qRXdEQVlGS29VRFpISUVBd0lCQVRBS0JnZ3FoUU1IQVFFREFn
|TkJBUGdoeXY0ZEVDUGwNCk9MQWwvTDBwQ0pteFFTUVJid3Q0S3J6LzFZMUhyYVl6
|Z1NYYi9KL3Q0ZnNrdzZPaGVuZlZhN29YZ01YUGZlZWgNCnY5dTBNMjNGRXRjPQ0K
|LS0tLS1FTkQgQ0VSVElGSUNBVEUtLS0tLQ==";
Возврат Результат; Возврат Результат;
КонецФункции КонецФункции
// Задает имя для чтения данных о служебной учетной записи из безопасного хранилища // Задает имя для чтения данных о служебной учетной записи из безопасного хранилища
@@ -1922,16 +1922,14 @@
#Область ОбработчикиОтправкиИПолученияДанныхДляОбменаВРаспределеннойИБ #Область ОбработчикиОтправкиИПолученияДанныхДляОбменаВРаспределеннойИБ
// Процедура является обработчиком одноименного события, возникающего при обмене данными в распределенной // См. ПриОтправкеДанныхПодчиненномуСобытие
// информационной базе. //
// См. описание параметров в обработчике события ПриОтправкеДанныхПодчиненному в синтакс-помощнике.
//
// Параметры: // Параметры:
// ЭлементДанных - Произвольный // ЭлементДанных - см. ОбщегоНазначенияПереопределяемый.ПриОтправкеДанныхПодчиненному.ЭлементДанных
// ОтправкаЭлемента - ОтправкаЭлементаДанных // ОтправкаЭлемента - см. ОбщегоНазначенияПереопределяемый.ПриОтправкеДанныхПодчиненному.ОтправкаЭлемента
// СозданиеНачальногоОбраза - Булево // СозданиеНачальногоОбраза - см. ОбщегоНазначенияПереопределяемый.ПриОтправкеДанныхПодчиненному.СозданиеНачальногоОбраза
// Получатель - ПланОбменаОбъект // Получатель - см. ОбщегоНазначенияПереопределяемый.ПриОтправкеДанныхПодчиненному.Источник
// //
Процедура ПриОтправкеДанныхПодчиненному(ЭлементДанных, ОтправкаЭлемента, Знач СозданиеНачальногоОбраза, Знач Получатель) Экспорт Процедура ПриОтправкеДанныхПодчиненному(ЭлементДанных, ОтправкаЭлемента, Знач СозданиеНачальногоОбраза, Знач Получатель) Экспорт
Если ОтправкаЭлемента = ОтправкаЭлементаДанных.Игнорировать Тогда Если ОтправкаЭлемента = ОтправкаЭлементаДанных.Игнорировать Тогда
@@ -1985,16 +1983,49 @@
КонецПроцедуры КонецПроцедуры
// Процедура является обработчиком одноименного события, возникающего при обмене данными в распределенной // См. ПриОтправкеДанныхГлавномуСобытие
// информационной базе. //
// См. описание параметров в обработчике события ПриПолученииДанныхОтПодчиненного в синтакс-помощнике.
//
// Параметры: // Параметры:
// ЭлементДанных - Произвольный // ЭлементДанных - см. ОбщегоНазначенияПереопределяемый.ПриОтправкеДанныхГлавному.ЭлементДанных
// ПолучениеЭлемента - ПолучениеЭлементаДанных // ОтправкаЭлемента - см. ОбщегоНазначенияПереопределяемый.ПриОтправкеДанныхГлавному.ОтправкаЭлемента
// ОтправкаНазад - Булево // Получатель - см. ОбщегоНазначенияПереопределяемый.ПриОтправкеДанныхГлавному.Источник
// Отправитель - ПланОбменаОбъект //
// Процедура ПриОтправкеДанныхГлавному(ЭлементДанных, ОтправкаЭлемента, Знач Получатель) Экспорт
Если ОтправкаЭлемента = ОтправкаЭлементаДанных.Игнорировать Тогда
Возврат;
КонецЕсли;
// Отправка идентификаторов объектов метаданных выполняется в другой секции сообщения обмена.
ИгнорироватьОтправкуИдентификаторовОбъектовМетаданных(ЭлементДанных, ОтправкаЭлемента);
Если ОтправкаЭлемента = ОтправкаЭлементаДанных.Игнорировать Тогда
Возврат;
КонецЕсли;
Если ТипЗнч(ЭлементДанных) = Тип("КонстантаМенеджерЗначения.РазрешитьДоступКИнтернетСервисам") Тогда
ОтправкаЭлемента = ОтправкаЭлементаДанных.Игнорировать;
КонецЕсли;
ИнтеграцияПодсистемБСП.ПриОтправкеДанныхГлавному(ЭлементДанных, ОтправкаЭлемента, Получатель);
// Вызов переопределяемого обработчика для выполнения прикладной логики обмена РИБ.
ОбщегоНазначенияПереопределяемый.ПриОтправкеДанныхГлавному(ЭлементДанных, ОтправкаЭлемента, Получатель);
Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ОбменДанными") Тогда
МодульОбменДаннымиСервер = ОбщегоНазначения.ОбщийМодуль("ОбменДаннымиСервер");
МодульОбменДаннымиСервер.РассчитатьПроцентВыгрузкиРИБ(Получатель, Ложь);
КонецЕсли;
КонецПроцедуры
// См. ПриПолученииДанныхОтПодчиненногоСобытие
//
// Параметры:
// ЭлементДанных - см. ОбщегоНазначенияПереопределяемый.ПриПолученииДанныхОтПодчиненного.ЭлементДанных
// ПолучениеЭлемента - см. ОбщегоНазначенияПереопределяемый.ПриПолученииДанныхОтПодчиненного.ПолучениеЭлемента
// ОтправкаНазад - см. ОбщегоНазначенияПереопределяемый.ПриПолученииДанныхОтПодчиненного.ОтправкаНазад
// Отправитель - см. ОбщегоНазначенияПереопределяемый.ПриПолученииДанныхОтПодчиненного.Источник
//
Процедура ПриПолученииДанныхОтПодчиненного(ЭлементДанных, ПолучениеЭлемента, ОтправкаНазад, Знач Отправитель) Экспорт Процедура ПриПолученииДанныхОтПодчиненного(ЭлементДанных, ПолучениеЭлемента, ОтправкаНазад, Знач Отправитель) Экспорт
// Идентификаторы объектов метаданных могут изменяться только в главном узле. // Идентификаторы объектов метаданных могут изменяться только в главном узле.
@@ -2027,16 +2058,13 @@
КонецПроцедуры КонецПроцедуры
// Процедура является обработчиком одноименного события, возникающего при обмене данными в распределенной // См. ПриПолученииДанныхОтГлавногоСобытие
// информационной базе. //
// См. описание обработчика события ПриПолученииДанныхОтГлавного в синтакс-помощнике.
// Параметр Отправитель может быть не заполнен, например, при получении сообщения начального образа в АРМе.
//
// Параметры: // Параметры:
// ЭлементДанных - Произвольный // ЭлементДанных - см. ОбщегоНазначенияПереопределяемый.ПриПолученииДанныхОтГлавного.ЭлементДанных
// ПолучениеЭлемента - ПолучениеЭлементаДанных // ПолучениеЭлемента - см. ОбщегоНазначенияПереопределяемый.ПриПолученииДанныхОтГлавного.ПолучениеЭлемента
// ОтправкаНазад - Булево // ОтправкаНазад - см. ОбщегоНазначенияПереопределяемый.ПриПолученииДанныхОтГлавного.ОтправкаНазад
// Отправитель - ПланОбменаОбъект // Отправитель - см. ОбщегоНазначенияПереопределяемый.ПриПолученииДанныхОтГлавного.Источник
// //
Процедура ПриПолученииДанныхОтГлавного(ЭлементДанных, ПолучениеЭлемента, ОтправкаНазад, Отправитель = Неопределено) Экспорт Процедура ПриПолученииДанныхОтГлавного(ЭлементДанных, ПолучениеЭлемента, ОтправкаНазад, Отправитель = Неопределено) Экспорт
@@ -3250,40 +3278,6 @@
#Область СлужебныеПроцедурыИФункции #Область СлужебныеПроцедурыИФункции
// Процедура является обработчиком одноименного события, возникающего при обмене данными в распределенной
// информационной базе.
//
// Параметры:
// см. описание обработчика события ПриОтправкеДанныхГлавному() в синтакс-помощнике.
//
Процедура ПриОтправкеДанныхГлавному(ЭлементДанных, ОтправкаЭлемента, Знач Получатель)
Если ОтправкаЭлемента = ОтправкаЭлементаДанных.Игнорировать Тогда
Возврат;
КонецЕсли;
// Отправка идентификаторов объектов метаданных выполняется в другой секции сообщения обмена.
ИгнорироватьОтправкуИдентификаторовОбъектовМетаданных(ЭлементДанных, ОтправкаЭлемента);
Если ОтправкаЭлемента = ОтправкаЭлементаДанных.Игнорировать Тогда
Возврат;
КонецЕсли;
Если ТипЗнч(ЭлементДанных) = Тип("КонстантаМенеджерЗначения.РазрешитьДоступКИнтернетСервисам") Тогда
ОтправкаЭлемента = ОтправкаЭлементаДанных.Игнорировать;
КонецЕсли;
ИнтеграцияПодсистемБСП.ПриОтправкеДанныхГлавному(ЭлементДанных, ОтправкаЭлемента, Получатель);
// Вызов переопределяемого обработчика для выполнения прикладной логики обмена РИБ.
ОбщегоНазначенияПереопределяемый.ПриОтправкеДанныхГлавному(ЭлементДанных, ОтправкаЭлемента, Получатель);
Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ОбменДанными") Тогда
МодульОбменДаннымиСервер = ОбщегоНазначения.ОбщийМодуль("ОбменДаннымиСервер");
МодульОбменДаннымиСервер.РассчитатьПроцентВыгрузкиРИБ(Получатель, Ложь);
КонецЕсли;
КонецПроцедуры
// Заполняет структуру параметров, необходимых для работы клиентского кода // Заполняет структуру параметров, необходимых для работы клиентского кода
// данной подсистемы при запуске конфигурации, т.е. в обработчиках событий. // данной подсистемы при запуске конфигурации, т.е. в обработчиках событий.
// - ПередНачаломРаботыСистемы, // - ПередНачаломРаботыСистемы,
@@ -4328,16 +4322,7 @@
#Область ОбработкаПодписокНаСобытияПлановОбменаРИБ #Область ОбработкаПодписокНаСобытияПлановОбменаРИБ
// Процедура является обработчиком одноименного события, возникающего при обмене данными в распределенной // См. ОбщегоНазначенияПереопределяемый.ПриОтправкеДанныхПодчиненному.
// информационной базе.
// См. описание параметров в обработчике события ПриОтправкеДанныхПодчиненному в синтакс-помощнике.
//
// Параметры:
// Источник - ПланОбменаОбъект
// ЭлементДанных - Произвольный
// ОтправкаЭлемента - ОтправкаЭлементаДанных
// СозданиеНачальногоОбраза - Булево
//
Процедура ПриОтправкеДанныхПодчиненномуСобытие(Источник, ЭлементДанных, ОтправкаЭлемента, СозданиеНачальногоОбраза) Экспорт Процедура ПриОтправкеДанныхПодчиненномуСобытие(Источник, ЭлементДанных, ОтправкаЭлемента, СозданиеНачальногоОбраза) Экспорт
ПриОтправкеДанныхПодчиненному(ЭлементДанных, ОтправкаЭлемента, СозданиеНачальногоОбраза, Источник); ПриОтправкеДанныхПодчиненному(ЭлементДанных, ОтправкаЭлемента, СозданиеНачальногоОбраза, Источник);
@@ -4349,15 +4334,7 @@
КонецПроцедуры КонецПроцедуры
// Процедура является обработчиком одноименного события, возникающего при обмене данными в распределенной // См. ОбщегоНазначенияПереопределяемый.ПриОтправкеДанныхГлавному.
// информационной базе.
// См. описание параметров в обработчике события ПриОтправкеДанныхГлавному в синтакс-помощнике.
//
// Параметры:
// Источник - ПланОбменаОбъект
// ЭлементДанных - Произвольный
// ОтправкаЭлемента - ОтправкаЭлементаДанных
//
Процедура ПриОтправкеДанныхГлавномуСобытие(Источник, ЭлементДанных, ОтправкаЭлемента) Экспорт Процедура ПриОтправкеДанныхГлавномуСобытие(Источник, ЭлементДанных, ОтправкаЭлемента) Экспорт
ПриОтправкеДанныхГлавному(ЭлементДанных, ОтправкаЭлемента, Источник); ПриОтправкеДанныхГлавному(ЭлементДанных, ОтправкаЭлемента, Источник);
@@ -4369,16 +4346,7 @@
КонецПроцедуры КонецПроцедуры
// Процедура является обработчиком одноименного события, возникающего при обмене данными в распределенной // См. ОбщегоНазначенияПереопределяемый.ПриПолученииДанныхОтПодчиненного.
// информационной базе.
// См. описание параметров в обработчике события ПриПолученииДанныхОтПодчиненного в синтакс-помощнике.
//
// Параметры:
// Источник - ПланОбменаОбъект
// ЭлементДанных - Произвольный
// ПолучениеЭлемента - ПолучениеЭлементаДанных
// ОтправкаНазад - Булево
//
Процедура ПриПолученииДанныхОтПодчиненногоСобытие(Источник, ЭлементДанных, ПолучениеЭлемента, ОтправкаНазад) Экспорт Процедура ПриПолученииДанныхОтПодчиненногоСобытие(Источник, ЭлементДанных, ПолучениеЭлемента, ОтправкаНазад) Экспорт
ПриПолученииДанныхОтПодчиненного(ЭлементДанных, ПолучениеЭлемента, ОтправкаНазад, Источник); ПриПолученииДанныхОтПодчиненного(ЭлементДанных, ПолучениеЭлемента, ОтправкаНазад, Источник);
@@ -4390,16 +4358,7 @@
КонецПроцедуры КонецПроцедуры
// Процедура является обработчиком одноименного события, возникающего при обмене данными в распределенной // См. ОбщегоНазначенияПереопределяемый.ПриПолученииДанныхОтГлавного.
// информационной базе.
// См. описание обработчика события ПриПолученииДанныхОтГлавного в синтакс-помощнике.
//
// Параметры:
// Источник - ПланОбменаОбъект
// ЭлементДанных - Произвольный
// ПолучениеЭлемента - ПолучениеЭлементаДанных
// ОтправкаНазад - Булево
//
Процедура ПриПолученииДанныхОтГлавногоСобытие(Источник, ЭлементДанных, ПолучениеЭлемента, ОтправкаНазад) Экспорт Процедура ПриПолученииДанныхОтГлавногоСобытие(Источник, ЭлементДанных, ПолучениеЭлемента, ОтправкаНазад) Экспорт
ПриПолученииДанныхОтГлавного(ЭлементДанных, ПолучениеЭлемента, ОтправкаНазад, Источник); ПриПолученииДанныхОтГлавного(ЭлементДанных, ПолучениеЭлемента, ОтправкаНазад, Источник);
@@ -4415,26 +4374,27 @@
// Используется для вызова обработчика события ПослеПолученияДанных при обмене в распределенной ИБ. // Используется для вызова обработчика события ПослеПолученияДанных при обмене в распределенной ИБ.
// //
// Параметры: // Параметры:
// Источник - ПланОбменаОбъект // Отправитель - ПланОбменаОбъект
// Отказ - Булево // Отказ - Булево
// ПолучениеИзГлавногоУзла - Булево
// //
Процедура ПослеПолученияДанных(Источник, Отказ) Экспорт Процедура ПослеПолученияДанных(Отправитель, Отказ, ПолучениеИзГлавногоУзла = Ложь) Экспорт
Если Источник.ОбменДанными.Загрузка Тогда Если Отправитель.ОбменДанными.Загрузка Тогда
Возврат; Возврат;
КонецЕсли; КонецЕсли;
Если Не Источник.Метаданные().РаспределеннаяИнформационнаяБаза Тогда Если Не Отправитель.Метаданные().РаспределеннаяИнформационнаяБаза Тогда
Возврат; Возврат;
КонецЕсли; КонецЕсли;
Если Источник.ЭтоНовый() Если Отправитель.ЭтоНовый()
Или Источник.НомерПринятого = ОбщегоНазначения.ЗначениеРеквизитаОбъекта(Источник.Ссылка, "НомерПринятого") Тогда Или Отправитель.НомерПринятого = ОбщегоНазначения.ЗначениеРеквизитаОбъекта(Отправитель.Ссылка, "НомерПринятого") Тогда
Возврат; Возврат;
КонецЕсли; КонецЕсли;
ПолучениеИзГлавногоУзла = (ПланыОбмена.ГлавныйУзел() = Источник.Ссылка); ПолучениеИзГлавногоУзла = (ПланыОбмена.ГлавныйУзел() = Отправитель.Ссылка);
ИнтеграцияПодсистемБСП.ПослеПолученияДанных(Источник, Отказ, ПолучениеИзГлавногоУзла); ИнтеграцияПодсистемБСП.ПослеПолученияДанных(Отправитель, Отказ, ПолучениеИзГлавногоУзла);
КонецПроцедуры КонецПроцедуры
@@ -2835,6 +2835,152 @@
МодульУправлениеДоступомСлужебныйВМоделиСервиса.ОтправитьГруппыДоступаВМенеджерСервисаПриПереходеНаНовуюВерсию(); МодульУправлениеДоступомСлужебныйВМоделиСервиса.ОтправитьГруппыДоступаВМенеджерСервисаПриПереходеНаНовуюВерсию();
КонецПроцедуры КонецПроцедуры
// Возвращает вид интерфейса пользователя для настройки доступа.
//
// Возвращаемое значение:
// Булево - Истина, если для конфигурации указан упрощенный интерфейс.
//
Функция УпрощенныйИнтерфейсНастройкиПравДоступа() Экспорт
Возврат УправлениеДоступомСлужебный.УпрощенныйИнтерфейсНастройкиПравДоступа();
КонецФункции
// Возвращает описание поставляемых профилей групп доступа, поддерживаемых текущей версией конфигурации.
// Доступен вызов в неразделенном режиме при условии, что это поддерживается в прикладном коде,
// встроенном в процедуры ПриЗаполненииВидовДоступа и ПриЗаполненииПоставляемыхПрофилейГруппДоступа
// общего модуля УправлениеДоступомПереопределяемый.
// Не учитывает динамическое изменение метаданных, например, расширений или конфигурации базы
// в результате которого описание поставляемых профилей может изменится в новом сеансе.
//
// Возвращаемое значение:
// Массив из Структура:
// * ИдентификаторПоставляемыхДанных - УникальныйИдентификатор - смотри свойство Идентификатор
// в функции НовоеОписаниеПрофиляГруппДоступа.
//
// * Наименование - Строка - смотри одноименное свойство в функции НовоеОписаниеПрофиляГруппДоступа.
//
// * ЭтоПрофильАдминистратор - Булево - это стандартный поставляемый профиль Администратор.
//
// * ДаетПраваНаВходВПриложение - Булево - в описании поставляемого профиля
// есть одна из ролей БазовыеПраваБСП/БазовыеПраваВнешнихПользователейБСП
// и есть одна из ролей ЗапускТонкогоКлиента/ЗапускВебКлиента/ЗапускМобильногоКлиента/ЗапускТолстогоКлиента.
//
Функция ПоставляемыеПрофилиГруппДоступа() Экспорт
Кэш = УправлениеДоступомСлужебныйПовтИсп.ОписаниеПоставляемыхПрофилейСеанса(Ложь);
ОписаниеПрофилей = Кэш.ПоставляемыеПрофилиСеанса.ОписанияПрофилейМассив;
Результат = Новый Массив;
Для Каждого ОписаниеПрофиля Из ОписаниеПрофилей Цикл
Если ОписаниеПрофиля.ЭтоГруппа Тогда
Продолжить;
КонецЕсли;
Свойства = Новый Структура;
Свойства.Вставить("ИдентификаторПоставляемыхДанных",
Новый УникальныйИдентификатор(ОписаниеПрофиля.Идентификатор));
Свойства.Вставить("Наименование", ОписаниеПрофиля.Наименование);
Свойства.Вставить("ЭтоПрофильАдминистратор", ОписаниеПрофиля.Имя = "Администратор");
Свойства.Вставить("ДаетПраваНаВходВПриложение",
( ОписаниеПрофиля.Роли.Найти("БазовыеПраваБСП") <> Неопределено
Или ОписаниеПрофиля.Роли.Найти("БазовыеПраваВнешнихПользователейБСП") <> Неопределено)
И ( ОписаниеПрофиля.Роли.Найти("ЗапускТонкогоКлиента") <> Неопределено
Или ОписаниеПрофиля.Роли.Найти("ЗапускВебКлиента") <> Неопределено
Или ОписаниеПрофиля.Роли.Найти("ЗапускМобильногоКлиента") <> Неопределено
Или ОписаниеПрофиля.Роли.Найти("ЗапускТолстогоКлиента") <> Неопределено));
Результат.Добавить(Свойства);
КонецЦикла;
Возврат Результат;
КонецФункции
// Возвращает уже имеющуюся группу доступа указанного профиля или создает ее в обычном интерфейсе
// настройки прав доступа, либо возвращает ссылку на поставляемый профиль в упрощенном интерфейсе.
//
// Параметры:
// ИдентификаторПоставляемыхДанных - УникальныйИдентификатор - смотри свойство Идентификатор
// в функции НовоеОписаниеПрофиляГруппДоступа, а также одноименный реквизит справочника.
//
// Возвращаемое значение:
// СправочникСсылка.ГруппыДоступа - в обычном интерфейсе настройки прав доступа возвращается
// ссылка на первую группа доступа с указанным профилем по порядку идентификатора ссылки.
// СправочникСсылка.ПрофилиГруппДоступа - в упрощенном интерфейсе настройки прав доступа возвращается
// ссылка на поставляемый профиль группа доступа.
//
Функция ГруппаДоступаПоставляемогоПрофиля(ИдентификаторПоставляемыхДанных) Экспорт
Профиль = Справочники.ПрофилиГруппДоступа.ПоставляемыйПрофильПоИдентификатору(
ИдентификаторПоставляемыхДанных, Истина, Истина);
Если УправлениеДоступомСлужебный.УпрощенныйИнтерфейсНастройкиПравДоступа() Тогда
Возврат Профиль;
КонецЕсли;
Запрос = Новый Запрос;
Если Профиль = ПрофильАдминистратор() Тогда
Запрос.УстановитьПараметр("ГруппаДоступаАдминистраторы", ГруппаДоступаАдминистраторы());
Запрос.Текст =
"ВЫБРАТЬ
| ГруппыДоступа.Ссылка КАК Ссылка
|ИЗ
| Справочник.ГруппыДоступа КАК ГруппыДоступа
|ГДЕ
| ГруппыДоступа.Ссылка = &ГруппаДоступаАдминистраторы";
Иначе
Запрос.УстановитьПараметр("Профиль", Профиль);
Запрос.Текст =
"ВЫБРАТЬ ПЕРВЫЕ 1
| ГруппыДоступа.Ссылка КАК Ссылка
|ИЗ
| Справочник.ГруппыДоступа КАК ГруппыДоступа
|ГДЕ
| ГруппыДоступа.Профиль = &Профиль
| И НЕ(ГруппыДоступа.Пользователь <> НЕОПРЕДЕЛЕНО
| И ГруппыДоступа.Пользователь <> ЗНАЧЕНИЕ(Справочник.Пользователи.ПустаяСсылка)
| И ГруппыДоступа.Пользователь <> ЗНАЧЕНИЕ(Справочник.ВнешниеПользователи.ПустаяСсылка))
|
|УПОРЯДОЧИТЬ ПО
| Ссылка";
КонецЕсли;
Выборка = Запрос.Выполнить().Выбрать();
Если Выборка.Следующий() Тогда
Возврат Выборка.Ссылка;
КонецЕсли;
Блокировка = Новый БлокировкаДанных;
Блокировка.Добавить("Справочник.ГруппыДоступа");
ЭлементБлокировки = Блокировка.Добавить("Справочник.ПрофилиГруппДоступа");
ЭлементБлокировки.УстановитьЗначение("Ссылка", Профиль);
НачатьТранзакцию();
Попытка
Блокировка.Заблокировать();
Выборка = Запрос.Выполнить().Выбрать();
Если Выборка.Следующий() Тогда
ГруппаДоступа = Выборка.Ссылка;
Иначе
СвойстваПрофиля = ОбщегоНазначения.ЗначенияРеквизитовОбъекта(Профиль,
"Наименование, ВидыДоступа");
ГруппаДоступаОбъект = Справочники.ГруппыДоступа.СоздатьЭлемент();
ГруппаДоступаОбъект.Наименование = СвойстваПрофиля.Наименование;
ГруппаДоступаОбъект.Профиль = Профиль;
ГруппаДоступаОбъект.ВидыДоступа.Загрузить(ВидыДоступаДляНовойГруппыДоступа(СвойстваПрофиля));
ГруппаДоступаОбъект.Записать();
ГруппаДоступа = ГруппаДоступаОбъект.Ссылка;
КонецЕсли;
ЗафиксироватьТранзакцию();
Исключение
ОтменитьТранзакцию();
ВызватьИсключение;
КонецПопытки;
Возврат ГруппаДоступа;
КонецФункции
// Конец ТехнологияСервиса.ПользователиСервиса // Конец ТехнологияСервиса.ПользователиСервиса
// Требуется в файловой ИБ для предотвращения взаимоблокировок связанных с работой файловой СУБД, // Требуется в файловой ИБ для предотвращения взаимоблокировок связанных с работой файловой СУБД,
@@ -3540,6 +3686,7 @@
КонецПроцедуры КонецПроцедуры
// Для процедуры ВключитьОтключитьПрофильПользователя.
Процедура ЗаполнитьВидыИЗначенияДоступаНовойГруппыДоступа(ГруппаДоступаОбъект, СвойстваПрофиля, Источник) Процедура ЗаполнитьВидыИЗначенияДоступаНовойГруппыДоступа(ГруппаДоступаОбъект, СвойстваПрофиля, Источник)
Запрос = Новый Запрос; Запрос = Новый Запрос;
@@ -3566,6 +3713,7 @@
КонецПроцедуры КонецПроцедуры
// Для процедуры ЗаполнитьВидыИЗначенияДоступаНовойГруппыДоступа и функции ГруппаДоступаПоставляемогоПрофиля.
Функция ВидыДоступаДляНовойГруппыДоступа(СвойстваПрофиля) Функция ВидыДоступаДляНовойГруппыДоступа(СвойстваПрофиля)
ВидыДоступа = СвойстваПрофиля.ВидыДоступа.Выгрузить(); ВидыДоступа = СвойстваПрофиля.ВидыДоступа.Выгрузить();
File diff suppressed because it is too large. Load diff
@@ -376,7 +376,8 @@
ГруппаДоступа.Вставить("Users", СписокПользователей); ГруппаДоступа.Вставить("Users", СписокПользователей);
ГруппаДоступа.Вставить("UserGroups", СписокГруппПользователей); ГруппаДоступа.Вставить("UserGroups", СписокГруппПользователей);
ГруппаДоступа.Вставить("ProfileId", XMLСтрока(Профиль)); ГруппаДоступа.Вставить("ProfileId", XMLСтрока(Профиль));
ГруппаДоступа.Вставить("SuppliedProfileID", XMLСтрока(
ОбщегоНазначения.ЗначениеРеквизитаОбъекта(Профиль, "ИдентификаторПоставляемыхДанных")));
КонецЕсли; КонецЕсли;
ОтправитьСообщение( ОтправитьСообщение(
@@ -505,6 +506,7 @@
МассивВерсий = Новый Массив; МассивВерсий = Новый Массив;
МассивВерсий.Добавить("1.0.0.1"); МассивВерсий.Добавить("1.0.0.1");
МассивВерсий.Добавить("1.0.0.2");
СтруктураПоддерживаемыхВерсий.Вставить( СтруктураПоддерживаемыхВерсий.Вставить(
"SettingUpUserRightsInServiceModel", "SettingUpUserRightsInServiceModel",
@@ -102,6 +102,9 @@
// Только для внутреннего использования. // Только для внутреннего использования.
// //
// Параметры:
// ПроверятьАктуальностьОписанияВидовДоступа - Булево
//
// Возвращаемое значение: // Возвращаемое значение:
// ФиксированнаяСтруктура: // ФиксированнаяСтруктура:
// * ПоставляемыеПрофилиСеанса - см. УправлениеДоступомСлужебный.ПоставляемыеПрофили // * ПоставляемыеПрофилиСеанса - см. УправлениеДоступомСлужебный.ПоставляемыеПрофили
@@ -109,10 +112,14 @@
// * Проверка - Структура: // * Проверка - Структура:
// ** Дата - Дата // ** Дата - Дата
// //
Функция ОписаниеПоставляемыхПрофилейСеанса() Экспорт Функция ОписаниеПоставляемыхПрофилейСеанса(ПроверятьАктуальностьОписанияВидовДоступа = Истина) Экспорт
ОписаниеВидовДоступа = ?(ПроверятьАктуальностьОписанияВидовДоступа, Неопределено,
УправлениеДоступомСлужебныйПовтИсп.ОписаниеСвойствВидовДоступаСеанса().СвойстваСеанса);
ХешСумма = ""; ХешСумма = "";
ПоставляемыеПрофилиСеанса = Справочники.ПрофилиГруппДоступа.ПроверенныеПоставляемыеПрофилиСеанса(, ХешСумма); ПоставляемыеПрофилиСеанса = Справочники.ПрофилиГруппДоступа.ПроверенныеПоставляемыеПрофилиСеанса(
ОписаниеВидовДоступа, ХешСумма);
Результат = Новый Структура; Результат = Новый Структура;
Результат.Вставить("ПоставляемыеПрофилиСеанса", ПоставляемыеПрофилиСеанса); Результат.Вставить("ПоставляемыеПрофилиСеанса", ПоставляемыеПрофилиСеанса);
@@ -200,6 +207,7 @@
// Возвращает описание полей блокировки регистра в рамках полей, // Возвращает описание полей блокировки регистра в рамках полей,
// которые допустимы в RLS с учетом вида регистра. // которые допустимы в RLS с учетом вида регистра.
// Если добавлено поле Регистратор, то оно первое в списке.
// //
// Параметры: // Параметры:
// ПолноеИмяРегистра - Строка - полное имя регистра. // ПолноеИмяРегистра - Строка - полное имя регистра.
@@ -210,43 +218,66 @@
// * ОписаниеПолей - ФиксированныйМассив из ФиксированнаяСтруктура: // * ОписаниеПолей - ФиксированныйМассив из ФиксированнаяСтруктура:
// ** Имя - Строка - имя поля. // ** Имя - Строка - имя поля.
// ** Тип - ОписаниеТипов // ** Тип - ОписаниеТипов
// * БлокироватьПоРегистратору - Булево
// //
Функция ОписаниеПолейБлокировкиРегистра(ПолноеИмяРегистра) Экспорт Функция ОписаниеПолейБлокировкиРегистра(ПолноеИмяРегистра) Экспорт
Поля = Новый Массив; Поля = Новый Массив;
ОписаниеПолей = Новый Массив; ОписаниеПолей = Новый Массив;
МетаданныеРегистра = ОбщегоНазначения.ОбъектМетаданныхПоПолномуИмени(ПолноеИмяРегистра); МетаданныеРегистра = ОбщегоНазначения.ОбъектМетаданныхПоПолномуИмени(ПолноеИмяРегистра);
ЭтоРегистрРасчета = ОбщегоНазначения.ЭтоРегистрРасчета(МетаданныеРегистра);
ЭтоПериодическийРегистрСведений = ОбщегоНазначения.ЭтоРегистрСведений(МетаданныеРегистра)
И МетаданныеРегистра.ПериодичностьРегистраСведений
<> Метаданные.СвойстваОбъектов.ПериодичностьРегистраСведений.Непериодический;
Если ЭтоПериодическийРегистрСведений Или ЭтоРегистрРасчета Тогда Если МетаданныеРегистра = Неопределено Тогда
Для Каждого СтандартныйРеквизит Из МетаданныеРегистра.СтандартныеРеквизиты Цикл БлокироватьПоРегистратору = Ложь;
Если ЭтоПериодическийРегистрСведений Иначе
И СтандартныйРеквизит.Имя = "Период" ЭтоРегистрРасчета = ОбщегоНазначения.ЭтоРегистрРасчета(МетаданныеРегистра);
Или ЭтоРегистрРасчета
И (СтандартныйРеквизит.Имя = "ПериодРегистрации" БлокироватьПоРегистратору = ЭтоРегистрРасчета
Или СтандартныйРеквизит.Имя = "ПериодДействия") Тогда Или ОбщегоНазначения.ЭтоРегистрСведений(МетаданныеРегистра)
И МетаданныеРегистра.РежимЗаписи
= Метаданные.СвойстваОбъектов.РежимЗаписиРегистра.ПодчинениеРегистратору;
ЭтоПериодическийРегистрСведений = ОбщегоНазначения.ЭтоРегистрСведений(МетаданныеРегистра)
И МетаданныеРегистра.ПериодичностьРегистраСведений
<> Метаданные.СвойстваОбъектов.ПериодичностьРегистраСведений.Непериодический;
Если БлокироватьПоРегистратору
Или ЭтоПериодическийРегистрСведений
Или ЭтоРегистрРасчета Тогда
Поля.Добавить(СтандартныйРеквизит.Имя); Для Каждого СтандартныйРеквизит Из МетаданныеРегистра.СтандартныеРеквизиты Цикл
ОписаниеПоля = Новый Структура("Имя, Тип", Если БлокироватьПоРегистратору
СтандартныйРеквизит.Имя, СтандартныйРеквизит.Тип); И СтандартныйРеквизит.Имя = "Регистратор" Тогда
ОписаниеПолей.Добавить(Новый ФиксированнаяСтруктура(ОписаниеПоля));
КонецЕсли; Поля.Вставить(0, СтандартныйРеквизит.Имя);
ОписаниеПоля = Новый Структура("Имя, Тип",
СтандартныйРеквизит.Имя, СтандартныйРеквизит.Тип);
ОписаниеПолей.Вставить(0, Новый ФиксированнаяСтруктура(ОписаниеПоля));
ИначеЕсли ЭтоПериодическийРегистрСведений
И СтандартныйРеквизит.Имя = "Период"
Или ЭтоРегистрРасчета
И (СтандартныйРеквизит.Имя = "ПериодРегистрации"
Или СтандартныйРеквизит.Имя = "ПериодДействия") Тогда
Поля.Добавить(СтандартныйРеквизит.Имя);
ОписаниеПоля = Новый Структура("Имя, Тип",
СтандартныйРеквизит.Имя, СтандартныйРеквизит.Тип);
ОписаниеПолей.Добавить(Новый ФиксированнаяСтруктура(ОписаниеПоля));
КонецЕсли;
КонецЦикла;
КонецЕсли;
Для Каждого Измерение Из МетаданныеРегистра.Измерения Цикл
Поля.Добавить(Измерение.Имя);
ОписаниеПоля = Новый Структура("Имя, Тип", Измерение.Имя, Измерение.Тип);
ОписаниеПолей.Добавить(Новый ФиксированнаяСтруктура(ОписаниеПоля));
КонецЦикла; КонецЦикла;
КонецЕсли; КонецЕсли;
Для Каждого Измерение Из МетаданныеРегистра.Измерения Цикл
Поля.Добавить(Измерение.Имя);
ОписаниеПоля = Новый Структура("Имя, Тип", Измерение.Имя, Измерение.Тип);
ОписаниеПолей.Добавить(Новый ФиксированнаяСтруктура(ОписаниеПоля));
КонецЦикла;
Результат = Новый Структура; Результат = Новый Структура;
Результат.Вставить("ОписаниеПолей", Новый ФиксированныйМассив(ОписаниеПолей)); Результат.Вставить("ОписаниеПолей", Новый ФиксированныйМассив(ОписаниеПолей));
Результат.Вставить("СписокПолей", СтрСоединить(Поля, ",")); Результат.Вставить("СписокПолей", СтрСоединить(Поля, ","));
Результат.Вставить("БлокироватьПоРегистратору", БлокироватьПоРегистратору);
Возврат Новый ФиксированнаяСтруктура(Результат); Возврат Новый ФиксированнаяСтруктура(Результат);
@@ -619,30 +619,30 @@
КонецЕсли; КонецЕсли;
СвойстваПодписи.ТребуетсяПроверка = Параметры.ТребуетсяПроверка; СвойстваПодписи.ТребуетсяПроверка = Параметры.ТребуетсяПроверка;
ПодписанныйОбъект = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(Параметры.ЭлементДанныхДляСервера, "Объект", Неопределено);
// СтандартныеПодсистемы.МашиночитаемыеДоверенности
Если ЗначениеЗаполнено(Параметры.РезультатПроверкиМЧДДляПодписания) И ОбщегоНазначения.ПодсистемаСуществует(
"СтандартныеПодсистемы.МашиночитаемыеДоверенности") Тогда
МодульМашиночитаемыеДоверенностиФНССлужебный = ОбщегоНазначения.ОбщийМодуль(
"МашиночитаемыеДоверенностиФНССлужебный");
РезультатПроверкиПодписиПоМЧД = МодульМашиночитаемыеДоверенностиФНССлужебный.РезультатПроверкиПодписиПоМЧД(
Параметры.ВыбраннаяДоверенность, ПодписанныйОбъект, СвойстваСертификата.ДвоичныеДанные, ТекущаяДатаСеанса(),
Параметры.РезультатПроверкиМЧДДляПодписания);
Если ЗначениеЗаполнено(РезультатПроверкиПодписиПоМЧД) Тогда
СвойстваПодписи.Вставить("РезультатПроверкиПодписиПоМЧД", РезультатПроверкиПодписиПоМЧД);
КонецЕсли;
КонецЕсли;
// Конец СтандартныеПодсистемы.МашиночитаемыеДоверенности
АдресРезультата = ПоместитьВоВременноеХранилище(СвойстваПодписи, Параметры.ИдентификаторФормы); АдресРезультата = ПоместитьВоВременноеХранилище(СвойстваПодписи, Параметры.ИдентификаторФормы);
Если Параметры.ЭлементДанныхДляСервера.Свойство("Объект") Тогда Если ПодписанныйОбъект <> Неопределено Тогда
ВерсияОбъекта = Неопределено; ВерсияОбъекта = Неопределено;
СвойстваПодписи.ИдентификаторПодписи = Новый УникальныйИдентификатор; СвойстваПодписи.ИдентификаторПодписи = Новый УникальныйИдентификатор;
Параметры.ЭлементДанныхДляСервера.Свойство("ВерсияОбъекта", ВерсияОбъекта); Параметры.ЭлементДанныхДляСервера.Свойство("ВерсияОбъекта", ВерсияОбъекта);
// СтандартныеПодсистемы.МашиночитаемыеДоверенности ПредставлениеОшибки = ДобавитьПодпись(ПодписанныйОбъект,
Если ЗначениеЗаполнено(Параметры.РезультатПроверкиМЧДДляПодписания)
И ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.МашиночитаемыеДоверенности") Тогда
МодульМашиночитаемыеДоверенностиФНССлужебный = ОбщегоНазначения.ОбщийМодуль("МашиночитаемыеДоверенностиФНССлужебный");
РезультатПроверкиПодписиПоМЧД = МодульМашиночитаемыеДоверенностиФНССлужебный.РезультатПроверкиПодписиПоМЧД(
Параметры.ВыбраннаяДоверенность, Параметры.ЭлементДанныхДляСервера.Объект, СвойстваСертификата.ДвоичныеДанные, ТекущаяДатаСеанса(),
Параметры.РезультатПроверкиМЧДДляПодписания);
Если ЗначениеЗаполнено(РезультатПроверкиПодписиПоМЧД) Тогда
СвойстваПодписи.Вставить("РезультатПроверкиПодписиПоМЧД", РезультатПроверкиПодписиПоМЧД);
КонецЕсли;
КонецЕсли;
// Конец СтандартныеПодсистемы.МашиночитаемыеДоверенности
ПредставлениеОшибки = ДобавитьПодпись(Параметры.ЭлементДанныхДляСервера.Объект,
СвойстваПодписи, Параметры.ИдентификаторФормы, ВерсияОбъекта); СвойстваПодписи, Параметры.ИдентификаторФормы, ВерсияОбъекта);
Если ЗначениеЗаполнено(ПредставлениеОшибки) Тогда Если ЗначениеЗаполнено(ПредставлениеОшибки) Тогда
ОшибкаНаСервере.Вставить("ОписаниеОшибки", ПредставлениеОшибки); ОшибкаНаСервере.Вставить("ОписаниеОшибки", ПредставлениеОшибки);
@@ -6770,16 +6770,35 @@
Процедура ВыполнитьНаСторонеЦиклПослеПодписания(СвойстваПодписи, Контекст) Процедура ВыполнитьНаСторонеЦиклПослеПодписания(СвойстваПодписи, Контекст)
ЭлементДанных = Контекст.ЭлементДанных; ЭлементДанных = Контекст.ЭлементДанных;
ПодписанныйОбъект = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(ЭлементДанных, "Объект", Неопределено);
// СтандартныеПодсистемы.МашиночитаемыеДоверенности
Если Контекст.НаСторонеКлиента И ЗначениеЗаполнено(Контекст.ОписаниеДанных.РезультатПроверкиМЧДДляПодписания)
И ОбщегоНазначенияКлиент.ПодсистемаСуществует("СтандартныеПодсистемы.МашиночитаемыеДоверенности") Тогда
МодульМашиночитаемыеДоверенностиФНССлужебныйКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль(
"МашиночитаемыеДоверенностиФНССлужебныйКлиент");
РезультатПроверкиПодписиПоМЧД = МодульМашиночитаемыеДоверенностиФНССлужебныйКлиент.РезультатПроверкиПодписиПоМЧД(
Контекст.ОписаниеДанных.ВыбраннаяДоверенность,
?(ТипЗнч(ПодписанныйОбъект) = Тип("ОписаниеОповещения"), Неопределено, ПодписанныйОбъект),
СвойстваПодписи.Сертификат, Неопределено, Контекст.ОписаниеДанных.РезультатПроверкиМЧДДляПодписания);
Если ЗначениеЗаполнено(РезультатПроверкиПодписиПоМЧД) Тогда
СвойстваПодписи.Вставить("РезультатПроверкиПодписиПоМЧД", РезультатПроверкиПодписиПоМЧД);
КонецЕсли;
КонецЕсли;
// Конец СтандартныеПодсистемы.МашиночитаемыеДоверенности
ЭлементДанных.Вставить("СвойстваПодписи", СвойстваПодписи); ЭлементДанных.Вставить("СвойстваПодписи", СвойстваПодписи);
Если Не ЭлементДанных.Свойство("Объект") Тогда Если ПодписанныйОбъект = Неопределено Тогда
ЭлектроннаяПодписьСлужебныйВызовСервера.ЗарегистрироватьПодписаниеДанныхВЖурнале( ЭлектроннаяПодписьСлужебныйВызовСервера.ЗарегистрироватьПодписаниеДанныхВЖурнале(
СвойстваТекущегоЭлементаДанных(Контекст, СвойстваПодписи)); СвойстваТекущегоЭлементаДанных(Контекст, СвойстваПодписи));
ВыполнитьНаСторонеЦиклНачало(Контекст); ВыполнитьНаСторонеЦиклНачало(Контекст);
Возврат; Возврат;
КонецЕсли; КонецЕсли;
Если ТипЗнч(ЭлементДанных.Объект) <> Тип("ОписаниеОповещения") Тогда Если ТипЗнч(ПодписанныйОбъект) <> Тип("ОписаниеОповещения") Тогда
Если Контекст.НаСторонеКлиента Тогда Если Контекст.НаСторонеКлиента Тогда
ВерсияОбъекта = Неопределено; ВерсияОбъекта = Неопределено;
ЭлементДанных.Свойство("ВерсияОбъекта", ВерсияОбъекта); ЭлементДанных.Свойство("ВерсияОбъекта", ВерсияОбъекта);
@@ -6793,7 +6812,7 @@
МодульМашиночитаемыеДоверенностиФНССлужебныйКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль( МодульМашиночитаемыеДоверенностиФНССлужебныйКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль(
"МашиночитаемыеДоверенностиФНССлужебныйКлиент"); "МашиночитаемыеДоверенностиФНССлужебныйКлиент");
РезультатПроверкиПодписиПоМЧД = МодульМашиночитаемыеДоверенностиФНССлужебныйКлиент.РезультатПроверкиПодписиПоМЧД( РезультатПроверкиПодписиПоМЧД = МодульМашиночитаемыеДоверенностиФНССлужебныйКлиент.РезультатПроверкиПодписиПоМЧД(
Контекст.ОписаниеДанных.ВыбраннаяДоверенность, ЭлементДанных.Объект, Контекст.ОписаниеДанных.ВыбраннаяДоверенность, ПодписанныйОбъект,
СвойстваПодписи.Сертификат, Неопределено, Контекст.ОписаниеДанных.РезультатПроверкиМЧДДляПодписания); СвойстваПодписи.Сертификат, Неопределено, Контекст.ОписаниеДанных.РезультатПроверкиМЧДДляПодписания);
Если ЗначениеЗаполнено(РезультатПроверкиПодписиПоМЧД) Тогда Если ЗначениеЗаполнено(РезультатПроверкиПодписиПоМЧД) Тогда
СвойстваПодписи.Вставить("РезультатПроверкиПодписиПоМЧД", РезультатПроверкиПодписиПоМЧД); СвойстваПодписи.Вставить("РезультатПроверкиПодписиПоМЧД", РезультатПроверкиПодписиПоМЧД);
@@ -6804,7 +6823,7 @@
// Конец СтандартныеПодсистемы.МашиночитаемыеДоверенности // Конец СтандартныеПодсистемы.МашиночитаемыеДоверенности
ПредставлениеОшибки = ЭлектроннаяПодписьСлужебныйВызовСервера.ДобавитьПодпись( ПредставлениеОшибки = ЭлектроннаяПодписьСлужебныйВызовСервера.ДобавитьПодпись(
ЭлементДанных.Объект, СвойстваПодписи, Контекст.ИдентификаторФормы, ВерсияОбъекта); ПодписанныйОбъект, СвойстваПодписи, Контекст.ИдентификаторФормы, ВерсияОбъекта);
Если ЗначениеЗаполнено(ПредставлениеОшибки) Тогда Если ЗначениеЗаполнено(ПредставлениеОшибки) Тогда
ЭлементДанных.Удалить("СвойстваПодписи"); ЭлементДанных.Удалить("СвойстваПодписи");
ОшибкаНаКлиенте = Новый Структура("ОписаниеОшибки", ПредставлениеОшибки); ОшибкаНаКлиенте = Новый Структура("ОписаниеОшибки", ПредставлениеОшибки);
@@ -6812,7 +6831,7 @@
Возврат; Возврат;
КонецЕсли; КонецЕсли;
КонецЕсли; КонецЕсли;
ОповеститьОбИзменении(ЭлементДанных.Объект); ОповеститьОбИзменении(ПодписанныйОбъект);
ВыполнитьНаСторонеЦиклНачало(Контекст); ВыполнитьНаСторонеЦиклНачало(Контекст);
Возврат; Возврат;
КонецЕсли; КонецЕсли;
@@ -6826,7 +6845,7 @@
"ВыполнитьНаСторонеЦиклПослеЗаписиПодписи", ЭтотОбъект, Контекст)); "ВыполнитьНаСторонеЦиклПослеЗаписиПодписи", ЭтотОбъект, Контекст));
Попытка Попытка
ВыполнитьОбработкуОповещения(ЭлементДанных.Объект, ПараметрыВыполнения); ВыполнитьОбработкуОповещения(ПодписанныйОбъект, ПараметрыВыполнения);
Исключение Исключение
ИнформацияОбОшибке = ИнформацияОбОшибке(); ИнформацияОбОшибке = ИнформацияОбОшибке();
ВыполнитьНаСторонеЦиклПослеЗаписиПодписи(Новый Структура("ОписаниеОшибки", ВыполнитьНаСторонеЦиклПослеЗаписиПодписи(Новый Структура("ОписаниеОшибки",
+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="cc0881a9-81f2-44ca-a768-c051b7c9d02b"> <mdclass:Configuration xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="d0d2997c-9781-4aed-bec2-402fa7a48334">
<name>БиблиотекаСтандартныхПодсистем</name> <name>БиблиотекаСтандартныхПодсистем</name>
<synonym> <synonym>
<key>ru</key> <key>ru</key>
<value>Библиотека стандартных подсистем, редакция 3.2</value> <value>Библиотека стандартных подсистем, редакция 3.2</value>
</synonym> </synonym>
<containedObjects classId="9cd510cd-abfc-11d4-9434-004095e12fc7" objectId="1a6e4315-f9e0-40d8-ad64-38b245eb3924"/> <containedObjects classId="9cd510cd-abfc-11d4-9434-004095e12fc7" objectId="95e7258c-417d-4fce-ac3c-ecbb91050dd7"/>
<containedObjects classId="9fcd25a0-4822-11d4-9414-008048da11f9" objectId="29ea5073-7ca2-4459-8d10-55359d002f8d"/> <containedObjects classId="9fcd25a0-4822-11d4-9414-008048da11f9" objectId="4f088425-6026-4641-aae1-80a9a052e040"/>
<containedObjects classId="e3687481-0a87-462c-a166-9f34594f9bba" objectId="8c0c134f-75da-4d27-aa51-d68aa0b9315e"/> <containedObjects classId="e3687481-0a87-462c-a166-9f34594f9bba" objectId="2d1b7515-6945-489f-a44f-93eb136f7abd"/>
<containedObjects classId="9de14907-ec23-4a07-96f0-85521cb6b53b" objectId="0c6b910a-bf48-410d-9872-c29c9b1204bd"/> <containedObjects classId="9de14907-ec23-4a07-96f0-85521cb6b53b" objectId="db659f5d-4890-4ef6-83e7-35e861d95888"/>
<containedObjects classId="51f2d5d8-ea4d-4064-8892-82951750031e" objectId="4ef7e879-a250-4f01-a0d4-a526b7842d23"/> <containedObjects classId="51f2d5d8-ea4d-4064-8892-82951750031e" objectId="1b6af088-e17c-4be6-adf9-9f82fdbe5a42"/>
<containedObjects classId="e68182ea-4237-4383-967f-90c1e3370bc7" objectId="11fdc3f6-256d-4864-be4b-d95755ae16b4"/> <containedObjects classId="e68182ea-4237-4383-967f-90c1e3370bc7" objectId="6455737d-5d4b-448e-a118-c5db96ca5e97"/>
<containedObjects classId="fb282519-d103-4dd3-bc12-cb271d631dfc" objectId="71cc9d38-f77a-4fce-8106-25449a164835"/> <containedObjects classId="fb282519-d103-4dd3-bc12-cb271d631dfc" objectId="eb01ded4-45bb-4c30-84c1-e4160261c842"/>
<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.2.1.425</version> <version>3.2.1.446</version>
<updateCatalogAddress>https://downloads.v8.1c.ru/tmplts/</updateCatalogAddress> <updateCatalogAddress>https://downloads.v8.1c.ru/tmplts/</updateCatalogAddress>
<includeHelpInContents>true</includeHelpInContents> <includeHelpInContents>true</includeHelpInContents>
<usedMobileApplicationFunctionalities> <usedMobileApplicationFunctionalities>
@@ -1 +1 @@
{6,1,1,267e6804-7c76-468f-8a17-2434e8b0d15f,1,5485f0d2-5c2f-4882-957a-d02abe0d1a73,"3.2.1.425","Фирма ""1С""","БиблиотекаСтандартныхПодсистем",7936,1,0,cc0881a9-81f2-44ca-a768-c051b7c9d02b,cc0881a9-81f2-44ca-a768-c051b7c9d02b,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,fa04bf1e-69c0-4998-a939-039fcaba83c8,fa04bf1e-69c0-4998-a939-039fcaba83c8,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,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,baad68ea-0976-4bdf-8e0e-7ee5c25e3d51,baad68ea-0976-4bdf-8e0e-7ee5c25e3d51,1,0,4cbbdbaf-1f3a-46cd-8c42-28cdcfa32c06,4cbbdbaf-1f3a-46cd-8c42-28cdcfa32c06,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,153e11ac-f898-46a5-98c6-734adb933ca2,153e11ac-f898-46a5-98c6-734adb933ca2,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,7d8acec9-f5a9-411e-921c-446ed0dd3332,7d8acec9-f5a9-411e-921c-446ed0dd3332,1,0,3eca2d7c-5946-4d13-ba84-e3ab5ef38b5b,3eca2d7c-5946-4d13-ba84-e3ab5ef38b5b,1,0,f24de2ea-fcda-4052-b90f-e9d84314c4f2,f24de2ea-fcda-4052-b90f-e9d84314c4f2,1,0,ff8ae395-c740-4a30-a048-0d57eef6267f,ff8ae395-c740-4a30-a048-0d57eef6267f,1,0,51d06532-f61a-4ed5-afaa-cc4563633e0c,51d06532-f61a-4ed5-afaa-cc4563633e0c,1,0,0e49d980-581b-459f-a4b0-024e8c97e4c0,0e49d980-581b-459f-a4b0-024e8c97e4c0,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,a3001de6-272f-444e-a8db-ec8cc3a670a2,a3001de6-272f-444e-a8db-ec8cc3a670a2,1,0,7ee7cccc-4e52-464c-9c20-5c0dfbed7e5f,7ee7cccc-4e52-464c-9c20-5c0dfbed7e5f,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,491b9625-62ce-436b-8245-60decacc4552,491b9625-62ce-436b-8245-60decacc4552,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-1ce8Line truncated {6,1,1,be0683a5-0490-4aff-9505-5ca9a2462ea4,1,5ab68444-7bd8-41df-8f29-3b9dd86ee569,"3.2.1.446","Фирма ""1С""","БиблиотекаСтандартныхПодсистем",7936,1,0,d0d2997c-9781-4aed-bec2-402fa7a48334,d0d2997c-9781-4aed-bec2-402fa7a48334,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,fa04bf1e-69c0-4998-a939-039fcaba83c8,fa04bf1e-69c0-4998-a939-039fcaba83c8,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,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,baad68ea-0976-4bdf-8e0e-7ee5c25e3d51,baad68ea-0976-4bdf-8e0e-7ee5c25e3d51,1,0,4cbbdbaf-1f3a-46cd-8c42-28cdcfa32c06,4cbbdbaf-1f3a-46cd-8c42-28cdcfa32c06,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,153e11ac-f898-46a5-98c6-734adb933ca2,153e11ac-f898-46a5-98c6-734adb933ca2,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,7d8acec9-f5a9-411e-921c-446ed0dd3332,7d8acec9-f5a9-411e-921c-446ed0dd3332,1,0,3eca2d7c-5946-4d13-ba84-e3ab5ef38b5b,3eca2d7c-5946-4d13-ba84-e3ab5ef38b5b,1,0,f24de2ea-fcda-4052-b90f-e9d84314c4f2,f24de2ea-fcda-4052-b90f-e9d84314c4f2,1,0,ff8ae395-c740-4a30-a048-0d57eef6267f,ff8ae395-c740-4a30-a048-0d57eef6267f,1,0,51d06532-f61a-4ed5-afaa-cc4563633e0c,51d06532-f61a-4ed5-afaa-cc4563633e0c,1,0,0e49d980-581b-459f-a4b0-024e8c97e4c0,0e49d980-581b-459f-a4b0-024e8c97e4c0,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,a3001de6-272f-444e-a8db-ec8cc3a670a2,a3001de6-272f-444e-a8db-ec8cc3a670a2,1,0,7ee7cccc-4e52-464c-9c20-5c0dfbed7e5f,7ee7cccc-4e52-464c-9c20-5c0dfbed7e5f,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,491b9625-62ce-436b-8245-60decacc4552,491b9625-62ce-436b-8245-60decacc4552,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-1ce8Line truncated
@@ -516,7 +516,7 @@
<textSize>Normal</textSize> <textSize>Normal</textSize>
<inputHint> <inputHint>
<key>ru</key> <key>ru</key>
<value>ws://localhost</value> <value>ws://localhost:9094</value>
</inputHint> </inputHint>
</extInfo> </extInfo>
</items> </items>
@@ -150,6 +150,10 @@
ПараметрыРегистрации = Новый ПараметрыРегистрацииИнформационнойБазыСистемыВзаимодействия; ПараметрыРегистрации = Новый ПараметрыРегистрацииИнформационнойБазыСистемыВзаимодействия;
ПараметрыРегистрации.АдресСервера = СерверВзаимодействия; ПараметрыРегистрации.АдресСервера = СерверВзаимодействия;
ПараметрыРегистрации.АдресЭлектроннойПочты = АдресЭлектроннойПочты; ПараметрыРегистрации.АдресЭлектроннойПочты = АдресЭлектроннойПочты;
ПараметрыРегистрации.ИмяИнформационнойБазы = ИмяИнформационнойБазы;
Если ВыборСервераВзаимодействия = 1 Тогда
ПараметрыРегистрации.КодАктивации = Формат(ОбщегоНазначенияКлиент.ДатаСеанса(), НСтр("ru='ДФ=''yyyMMddHHmmss'''"));
КонецЕсли;
Оповещение = Новый ОписаниеОповещения("ПослеУспешногоПолученияКодаРегистрации", ЭтотОбъект,, Оповещение = Новый ОписаниеОповещения("ПослеУспешногоПолученияКодаРегистрации", ЭтотОбъект,,
"ПриОбработкеОшибкиПолученияКодаРегистрации", ЭтотОбъект); "ПриОбработкеОшибкиПолученияКодаРегистрации", ЭтотОбъект);
@@ -163,7 +167,9 @@
&НаКлиенте &НаКлиенте
Процедура ПослеУспешногоПолученияКодаРегистрации(РегистрацияВыполнена, ТекстСообщения, Контекст) Экспорт Процедура ПослеУспешногоПолученияКодаРегистрации(РегистрацияВыполнена, ТекстСообщения, Контекст) Экспорт
ПоказатьПредупреждение(, ТекстСообщения); Если ЗначениеЗаполнено(ТекстСообщения) Тогда
ПоказатьПредупреждение(, ТекстСообщения);
КонецЕсли;
СостояниеРегистрации = "ОжиданиеВводаКодаПодтверждения"; СостояниеРегистрации = "ОжиданиеВводаКодаПодтверждения";
ПриИзмененииСостоянияФормы(ЭтотОбъект); ПриИзмененииСостоянияФормы(ЭтотОбъект);
@@ -384,6 +384,20 @@
</edit> </edit>
</columns> </columns>
</attributes> </attributes>
<attributes>
<name>ТекстОшибкиКомпоненты</name>
<id>4</id>
<valueType>
<types>String</types>
<stringQualifiers/>
</valueType>
<view>
<common>true</common>
</view>
<edit>
<common>true</common>
</edit>
</attributes>
<formCommands> <formCommands>
<name>Повторить</name> <name>Повторить</name>
<title> <title>
@@ -158,17 +158,22 @@
&НаКлиенте &НаКлиенте
Асинх Процедура ПолучениеСертификатовНаТокене() Асинх Процедура ПолучениеСертификатовНаТокене()
Если ЗначениеЗаполнено(ТекстОшибкиКомпоненты) Тогда
ЗавершитьОперацию(ТекстОшибкиКомпоненты);
Возврат;
КонецЕсли;
Если ОбъектКомпоненты = Неопределено Тогда Если ОбъектКомпоненты = Неопределено Тогда
Попытка Попытка
ОбъектКомпоненты = Ждать ОбъектВнешнейКомпоненты(); ОбъектКомпоненты = Ждать ОбъектВнешнейКомпоненты();
Исключение Исключение
ОписаниеОшибки = ОбработкаОшибок.КраткоеПредставлениеОшибки(ИнформацияОбОшибке()); ТекстОшибкиКомпоненты = ОбработкаОшибок.КраткоеПредставлениеОшибки(ИнформацияОбОшибке());
ЗаписатьВЖурналРегистрации(ИнформацияОбОшибке()); ЗаписатьВЖурналРегистрации(ИнформацияОбОшибке());
КонецПопытки; КонецПопытки;
КонецЕсли; КонецЕсли;
Если ЗначениеЗаполнено(ОписаниеОшибки) Тогда Если ЗначениеЗаполнено(ТекстОшибкиКомпоненты) Тогда
ЗавершитьОперацию(ОписаниеОшибки); ЗавершитьОперацию(ТекстОшибкиКомпоненты);
Возврат; Возврат;
КонецЕсли; КонецЕсли;
@@ -499,16 +499,7 @@
Возврат ""; Возврат "";
КонецЕсли; КонецЕсли;
Если СтрСравнить(ИмяУровня, "area") = 0 И ЗначениеЗаполнено(Адрес.areaValue) Тогда Возврат РаботаСАдресамиКлиентСервер.ПредставлениеУровняАдреса(Адрес, ИмяУровня);
Возврат Адрес.areaValue;
КонецЕсли;
Если Адрес.Свойство(ИмяУровня) И ЗначениеЗаполнено(Адрес[ИмяУровня]) Тогда
Возврат УправлениеКонтактнойИнформациейКлиентСервер.СоединитьНаименованиеИТипАдресногоОбъекта(
Адрес[ИмяУровня], Адрес[ИмяУровня +"Type"], СтрСравнить(ИмяУровня, "area") = 0);
КонецЕсли;
Возврат "";
КонецФункции КонецФункции
@@ -430,7 +430,7 @@
ОписаниеТекущейКонфигурации = СтандартныеПодсистемыКлиент.ПараметрыРаботыКлиента().СинонимКонфигурации; ОписаниеТекущейКонфигурации = СтандартныеПодсистемыКлиент.ПараметрыРаботыКлиента().СинонимКонфигурации;
ВерсияТекущейКонфигурации = СтандартныеПодсистемыКлиент.ПараметрыРаботыКлиента().ВерсияКонфигурации; ВерсияТекущейКонфигурации = СтандартныеПодсистемыКлиент.ПараметрыРаботыКлиента().ВерсияКонфигурации;
Если Не СтандартныеПодсистемыКлиент.ПараметрыРаботыКлиента().ЭтоГлавныйУзел Тогда Если ЭтоПодчиненныйУзелРИБ Тогда
ДоступностьКнопкиНазад = Ложь; ДоступностьКнопкиНазад = Ложь;
КонецЕсли; КонецЕсли;
@@ -448,7 +448,7 @@
Элементы.НадписьРезервнаяКопияФайл.Заголовок = ОбновлениеКонфигурацииКлиент.ЗаголовокСозданияРезервнойКопии(Объект); Элементы.НадписьРезервнаяКопияФайл.Заголовок = ОбновлениеКонфигурацииКлиент.ЗаголовокСозданияРезервнойКопии(Объект);
Если Не СтандартныеПодсистемыКлиент.ПараметрыРаботыКлиента().ЭтоГлавныйУзел Тогда Если ЭтоПодчиненныйУзелРИБ Тогда
ДоступностьКнопкиНазад = Ложь; ДоступностьКнопкиНазад = Ложь;
КонецЕсли; КонецЕсли;
ИначеЕсли НоваяСтраница = Страницы.ВыборРежимаОбновленияСервер Тогда ИначеЕсли НоваяСтраница = Страницы.ВыборРежимаОбновленияСервер Тогда
@@ -467,7 +467,7 @@
Элементы.ПанельУведомлятьПользователей.Видимость = (Объект.РежимОбновления = 2); Элементы.ПанельУведомлятьПользователей.Видимость = (Объект.РежимОбновления = 2);
Элементы.АдресЭлектроннойПочты.Доступность = Объект.ВыслатьОтчетНаПочту; Элементы.АдресЭлектроннойПочты.Доступность = Объект.ВыслатьОтчетНаПочту;
Если Не СтандартныеПодсистемыКлиент.ПараметрыРаботыКлиента().ЭтоГлавныйУзел Тогда Если ЭтоПодчиненныйУзелРИБ Тогда
ДоступностьКнопкиНазад = Ложь; ДоступностьКнопкиНазад = Ложь;
КонецЕсли; КонецЕсли;
@@ -715,10 +715,6 @@
<key>ru</key> <key>ru</key>
<value>Команды навигации</value> <value>Команды навигации</value>
</title> </title>
<toolTip>
<key>ru</key>
<value>Группа команды навигации</value>
</toolTip>
<extendedTooltip> <extendedTooltip>
<name>ГруппаКомандыНавигацииРасширеннаяПодсказка</name> <name>ГруппаКомандыНавигацииРасширеннаяПодсказка</name>
<id>1098</id> <id>1098</id>
@@ -228,8 +228,12 @@
КонецПроцедуры КонецПроцедуры
&НаКлиенте &НаКлиенте
Процедура Подключаемый_НачалоВыбораКомментарий(Элемент, ДанныеВыбора, СтандартнаяОбработка) Процедура Подключаемый_КомментарийОткрытие(Элемент, СтандартнаяОбработка)
Если АнкетированиеКлиент.ЕстьРодительскаяГруппаТолькоПросмотр(Элемент) Тогда
Возврат;
КонецЕсли;
СтандартнаяОбработка = Ложь; СтандартнаяОбработка = Ложь;
Если Элементы.Найти(Элемент.Имя) = Неопределено Тогда Если Элементы.Найти(Элемент.Имя) = Неопределено Тогда
Возврат; Возврат;
@@ -1499,7 +1503,7 @@
Элементы[ИмяВопроса + "_Комментарий"].УстановитьДействие("ПриИзменении", Элементы[ИмяВопроса + "_Комментарий"].УстановитьДействие("ПриИзменении",
"Подключаемый_ПриИзмененииВопроса"); "Подключаемый_ПриИзмененииВопроса");
Элементы[ИмяВопроса + "_Комментарий"].УстановитьДействие("НачалоВыбора", Элементы[ИмяВопроса + "_Комментарий"].УстановитьДействие("НачалоВыбора",
"Подключаемый_НачалоВыбораКомментарий"); "Подключаемый_КомментарийОткрытие");
КонецЕсли; КонецЕсли;
Если СтрокаТаблицы.ИспользоватьОтказОтОтвета Если СтрокаТаблицы.ИспользоватьОтказОтОтвета
И СтрокаТаблицы.ТипОтвета <> Перечисления.ТипыОтветовНаВопрос.Булево Тогда И СтрокаТаблицы.ТипОтвета <> Перечисления.ТипыОтветовНаВопрос.Булево Тогда
@@ -48,6 +48,7 @@
<defaultItem>true</defaultItem> <defaultItem>true</defaultItem>
<skipOnInput>false</skipOnInput> <skipOnInput>false</skipOnInput>
<titleLocation>None</titleLocation> <titleLocation>None</titleLocation>
<excludedCommands>Copy</excludedCommands>
<excludedCommands>Create</excludedCommands> <excludedCommands>Create</excludedCommands>
<items xsi:type="form:FormField"> <items xsi:type="form:FormField">
<name>Номер</name> <name>Номер</name>
@@ -399,6 +399,10 @@
<headerHorizontalAlign>Left</headerHorizontalAlign> <headerHorizontalAlign>Left</headerHorizontalAlign>
<showInFooter>true</showInFooter> <showInFooter>true</showInFooter>
<extInfo xsi:type="form:InputFieldExtInfo"> <extInfo xsi:type="form:InputFieldExtInfo">
<handlers>
<event>ChoiceProcessing</event>
<name>ТипРеспондентовОбработкаВыбора</name>
</handlers>
<autoMaxWidth>true</autoMaxWidth> <autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight> <autoMaxHeight>true</autoMaxHeight>
<wrap>true</wrap> <wrap>true</wrap>
@@ -147,6 +147,32 @@
КонецПроцедуры КонецПроцедуры
&НаКлиенте
Процедура ТипРеспондентовОбработкаВыбора(Элемент, ВыбранноеЗначение, ДополнительныеДанные, ВыборДобавлением, СтандартнаяОбработка)
Если ВыбранноеЗначение = ТипРеспондентов Тогда
СтандартнаяОбработка = Ложь;
Возврат;
КонецЕсли;
Если Объект.Респонденты.Количество() > 0 Тогда
СтандартнаяОбработка = Ложь;
СтрокаВопроса = НСтр("ru = 'Для продолжения необходимо очистить список респондентов.'");
Кнопки = Новый СписокЗначений;
Кнопки.Добавить(КодВозвратаДиалога.Да, НСтр("ru = 'Очистить'"));
Кнопки.Добавить(КодВозвратаДиалога.Отмена);
ДополнительныеПараметры = Новый Структура;
ДополнительныеПараметры.Вставить("ВыбранноеЗначение", ВыбранноеЗначение);
Обработчик = Новый ОписаниеОповещения("ТипРеспондентовОбработкаВыбораЗавершение", ЭтотОбъект, ДополнительныеПараметры);
ПоказатьВопрос(Обработчик, СтрокаВопроса, Кнопки, 60, КодВозвратаДиалога.Да);
КонецЕсли;
КонецПроцедуры
&НаКлиенте &НаКлиенте
Процедура СвободныйОпросПриИзменении(Элемент) Процедура СвободныйОпросПриИзменении(Элемент)
@@ -233,6 +259,16 @@
КонецПроцедуры КонецПроцедуры
&НаКлиенте
Процедура ТипРеспондентовОбработкаВыбораЗавершение(Ответ, ДополнительныеПараметры) Экспорт
Если Ответ = КодВозвратаДиалога.Да Тогда
ТипРеспондентов = ДополнительныеПараметры.ВыбранноеЗначение;
Модифицированность = Истина;
ОбработатьИзменениеТипаРеспондента();
УправлениеДоступностью();
КонецЕсли;
КонецПроцедуры
&НаСервере &НаСервере
Процедура ПриСозданииЧтенииНаСервере() Процедура ПриСозданииЧтенииНаСервере()
@@ -24,7 +24,7 @@
Если ЗначениеЗаполнено(Отбор.Объект.Значение) Тогда Если ЗначениеЗаполнено(Отбор.Объект.Значение) Тогда
ИзмененныеОбъекты.Добавить(Отбор.Объект.Значение); ИзмененныеОбъекты.Добавить(Отбор.Объект.Значение);
Иначе Иначе
ИзмененныеОбъекты = ВсеОбъекты(); ИзмененныеОбъекты = ВсеОбъекты(Отбор.Свойство.Значение);
КонецЕсли; КонецЕсли;
КонецЕсли; КонецЕсли;
@@ -55,17 +55,29 @@
#Область СлужебныеПроцедурыИФункции #Область СлужебныеПроцедурыИФункции
Функция ВсеОбъекты() Функция ВсеОбъекты(Свойство)
УсловиеОтбора = "ИСТИНА";
ТекстЗапроса = ТекстЗапроса =
"ВЫБРАТЬ "ВЫБРАТЬ
| ДополнительныеСведения.Объект КАК Объект | ДополнительныеСведения.Объект КАК Объект
|ИЗ |ИЗ
| РегистрСведений.ДополнительныеСведения КАК ДополнительныеСведения | РегистрСведений.ДополнительныеСведения КАК ДополнительныеСведения
|ГДЕ
| &УсловиеОтбора
|
|СГРУППИРОВАТЬ ПО |СГРУППИРОВАТЬ ПО
| ДополнительныеСведения.Объект"; | ДополнительныеСведения.Объект";
Запрос = Новый Запрос(ТекстЗапроса); Запрос = Новый Запрос;
Если ЗначениеЗаполнено(Свойство) Тогда
УсловиеОтбора = "ДополнительныеСведения.Свойство = &Свойство";
Запрос.УстановитьПараметр("Свойство", Свойство);
КонецЕсли;
ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&УсловиеОтбора", УсловиеОтбора);
Запрос.Текст = ТекстЗапроса;
Возврат Запрос.Выполнить().Выгрузить().ВыгрузитьКолонку("Объект"); Возврат Запрос.Выполнить().Выгрузить().ВыгрузитьКолонку("Объект");
КонецФункции КонецФункции
@@ -1767,62 +1767,6 @@
<textSize>Normal</textSize> <textSize>Normal</textSize>
</extInfo> </extInfo>
</items> </items>
<items xsi:type="form:FormField">
<name>СпискиЗадержкаОбработкиСписка</name>
<id>303</id>
<title>
<key>ru</key>
<value>Задержка
обработки
списка, сек</value>
</title>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
<common>true</common>
</userVisible>
<dataPath xsi:type="form:DataPath">
<segments>Списки.ЗадержкаОбработкиСписка</segments>
</dataPath>
<toolTip>
<key>ru</key>
<value>Количество секунд, которое прошло с момента завершения
последнего задания обновления доступа для списка</value>
</toolTip>
<extendedTooltip>
<name>СпискиЗадержкаОбработкиСпискаРасширеннаяПодсказка</name>
<id>305</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<contextMenu>
<name>СпискиЗадержкаОбработкиСпискаКонтекстноеМеню</name>
<id>304</id>
<autoFill>true</autoFill>
</contextMenu>
<type>InputField</type>
<readOnly>true</readOnly>
<editMode>Auto</editMode>
<showInHeader>true</showInHeader>
<headerHorizontalAlign>Left</headerHorizontalAlign>
<showInFooter>true</showInFooter>
<autoWidthInTable>None</autoWidthInTable>
<extInfo xsi:type="form:InputFieldExtInfo">
<width>7</width>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<horizontalStretch>false</horizontalStretch>
<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>33</id> <id>33</id>
@@ -1871,6 +1815,14 @@
<autoMaxHeight>true</autoMaxHeight> <autoMaxHeight>true</autoMaxHeight>
<horizontalStretch>false</horizontalStretch> <horizontalStretch>false</horizontalStretch>
<wrap>true</wrap> <wrap>true</wrap>
<format>
<key>ru</key>
<value>ЧН=0</value>
</format>
<editFormat>
<key>ru</key>
<value>ЧН=0</value>
</editFormat>
<chooseType>true</chooseType> <chooseType>true</chooseType>
<typeDomainEnabled>true</typeDomainEnabled> <typeDomainEnabled>true</typeDomainEnabled>
<textEdit>true</textEdit> <textEdit>true</textEdit>
@@ -1926,6 +1878,14 @@
<autoMaxHeight>true</autoMaxHeight> <autoMaxHeight>true</autoMaxHeight>
<horizontalStretch>false</horizontalStretch> <horizontalStretch>false</horizontalStretch>
<wrap>true</wrap> <wrap>true</wrap>
<format>
<key>ru</key>
<value>ЧН=0</value>
</format>
<editFormat>
<key>ru</key>
<value>ЧН=0</value>
</editFormat>
<chooseType>true</chooseType> <chooseType>true</chooseType>
<typeDomainEnabled>true</typeDomainEnabled> <typeDomainEnabled>true</typeDomainEnabled>
<textEdit>true</textEdit> <textEdit>true</textEdit>
@@ -1976,6 +1936,14 @@
<autoMaxHeight>true</autoMaxHeight> <autoMaxHeight>true</autoMaxHeight>
<horizontalStretch>false</horizontalStretch> <horizontalStretch>false</horizontalStretch>
<wrap>true</wrap> <wrap>true</wrap>
<format>
<key>ru</key>
<value>ЧН=0</value>
</format>
<editFormat>
<key>ru</key>
<value>ЧН=0</value>
</editFormat>
<chooseType>true</chooseType> <chooseType>true</chooseType>
<typeDomainEnabled>true</typeDomainEnabled> <typeDomainEnabled>true</typeDomainEnabled>
<textEdit>true</textEdit> <textEdit>true</textEdit>
@@ -2026,6 +1994,70 @@
<autoMaxHeight>true</autoMaxHeight> <autoMaxHeight>true</autoMaxHeight>
<horizontalStretch>false</horizontalStretch> <horizontalStretch>false</horizontalStretch>
<wrap>true</wrap> <wrap>true</wrap>
<format>
<key>ru</key>
<value>ЧН=0</value>
</format>
<editFormat>
<key>ru</key>
<value>ЧН=0</value>
</editFormat>
<chooseType>true</chooseType>
<typeDomainEnabled>true</typeDomainEnabled>
<textEdit>true</textEdit>
<textSize>Normal</textSize>
</extInfo>
</items>
<items xsi:type="form:FormField">
<name>СпискиЗадержкаОбработкиСписка</name>
<id>303</id>
<title>
<key>ru</key>
<value>Задержка
обработки
списка, сек</value>
</title>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
<common>true</common>
</userVisible>
<dataPath xsi:type="form:DataPath">
<segments>Списки.ЗадержкаОбработкиСписка</segments>
</dataPath>
<toolTip>
<key>ru</key>
<value>Количество секунд, которое прошло с момента завершения
последнего задания обновления доступа для списка</value>
</toolTip>
<extendedTooltip>
<name>СпискиЗадержкаОбработкиСпискаРасширеннаяПодсказка</name>
<id>305</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<contextMenu>
<name>СпискиЗадержкаОбработкиСпискаКонтекстноеМеню</name>
<id>304</id>
<autoFill>true</autoFill>
</contextMenu>
<type>InputField</type>
<readOnly>true</readOnly>
<editMode>Auto</editMode>
<showInHeader>true</showInHeader>
<headerHorizontalAlign>Left</headerHorizontalAlign>
<showInFooter>true</showInFooter>
<autoWidthInTable>None</autoWidthInTable>
<extInfo xsi:type="form:InputFieldExtInfo">
<width>7</width>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<horizontalStretch>false</horizontalStretch>
<wrap>true</wrap>
<chooseType>true</chooseType> <chooseType>true</chooseType>
<typeDomainEnabled>true</typeDomainEnabled> <typeDomainEnabled>true</typeDomainEnabled>
<textEdit>true</textEdit> <textEdit>true</textEdit>
@@ -2525,11 +2557,15 @@
</title> </title>
<id>4</id> <id>4</id>
<valueType> <valueType>
<types>String</types>
<types>Number</types> <types>Number</types>
<numberQualifiers> <numberQualifiers>
<precision>3</precision> <precision>3</precision>
<nonNegative>true</nonNegative> <nonNegative>true</nonNegative>
</numberQualifiers> </numberQualifiers>
<stringQualifiers>
<length>1</length>
</stringQualifiers>
</valueType> </valueType>
<view> <view>
<common>true</common> <common>true</common>
@@ -2546,11 +2582,15 @@
</title> </title>
<id>5</id> <id>5</id>
<valueType> <valueType>
<types>String</types>
<types>Number</types> <types>Number</types>
<numberQualifiers> <numberQualifiers>
<precision>3</precision> <precision>3</precision>
<nonNegative>true</nonNegative> <nonNegative>true</nonNegative>
</numberQualifiers> </numberQualifiers>
<stringQualifiers>
<length>1</length>
</stringQualifiers>
</valueType> </valueType>
<view> <view>
<common>true</common> <common>true</common>
@@ -2567,11 +2607,15 @@
</title> </title>
<id>6</id> <id>6</id>
<valueType> <valueType>
<types>String</types>
<types>Number</types> <types>Number</types>
<numberQualifiers> <numberQualifiers>
<precision>15</precision> <precision>15</precision>
<nonNegative>true</nonNegative> <nonNegative>true</nonNegative>
</numberQualifiers> </numberQualifiers>
<stringQualifiers>
<length>1</length>
</stringQualifiers>
</valueType> </valueType>
<view> <view>
<common>true</common> <common>true</common>
@@ -2588,11 +2632,15 @@
</title> </title>
<id>7</id> <id>7</id>
<valueType> <valueType>
<types>String</types>
<types>Number</types> <types>Number</types>
<numberQualifiers> <numberQualifiers>
<precision>15</precision> <precision>15</precision>
<nonNegative>true</nonNegative> <nonNegative>true</nonNegative>
</numberQualifiers> </numberQualifiers>
<stringQualifiers>
<length>1</length>
</stringQualifiers>
</valueType> </valueType>
<view> <view>
<common>true</common> <common>true</common>
@@ -2609,11 +2657,15 @@
</title> </title>
<id>8</id> <id>8</id>
<valueType> <valueType>
<types>String</types>
<types>Number</types> <types>Number</types>
<numberQualifiers> <numberQualifiers>
<precision>15</precision> <precision>15</precision>
<nonNegative>true</nonNegative> <nonNegative>true</nonNegative>
</numberQualifiers> </numberQualifiers>
<stringQualifiers>
<length>1</length>
</stringQualifiers>
</valueType> </valueType>
<view> <view>
<common>true</common> <common>true</common>
@@ -2630,11 +2682,15 @@
</title> </title>
<id>9</id> <id>9</id>
<valueType> <valueType>
<types>String</types>
<types>Number</types> <types>Number</types>
<numberQualifiers> <numberQualifiers>
<precision>15</precision> <precision>15</precision>
<nonNegative>true</nonNegative> <nonNegative>true</nonNegative>
</numberQualifiers> </numberQualifiers>
<stringQualifiers>
<length>1</length>
</stringQualifiers>
</valueType> </valueType>
<view> <view>
<common>true</common> <common>true</common>
@@ -896,7 +896,7 @@
<key>ru</key> <key>ru</key>
<value>Обновление доступа элементов списка</value> <value>Обновление доступа элементов списка</value>
</title> </title>
<id>2</id> <id>11</id>
<valueType> <valueType>
<types>Boolean</types> <types>Boolean</types>
</valueType> </valueType>
@@ -907,6 +907,17 @@
<common>true</common> <common>true</common>
</edit> </edit>
</attributes> </attributes>
<attributes>
<name>ВерсииОграниченийСписков</name>
<id>2</id>
<valueType/>
<view>
<common>true</common>
</view>
<edit>
<common>true</common>
</edit>
</attributes>
<formCommands> <formCommands>
<name>ОбновитьДоступКОбъекту</name> <name>ОбновитьДоступКОбъекту</name>
<title> <title>
@@ -17,19 +17,15 @@
ОбновитьПраваНаКлючиДоступа = Истина; ОбновитьПраваНаКлючиДоступа = Истина;
УдалитьУстаревшиеСлужебныеДанные = Истина; УдалитьУстаревшиеСлужебныеДанные = Истина;
Если Не СтандартныеПодсистемыСервер.ВерсияПрограммыОбновленаДинамически() Тогда СпискиСКлючамиДоступа = УправлениеДоступомСлужебный.СпискиСКлючамиДоступа(, Истина);
СпискиСОграничением = УправлениеДоступомСлужебныйПовтИсп.СпискиСОграничением(); ВерсииОграничений = Новый Соответствие;
Иначе
СпискиСОграничением = УправлениеДоступомСлужебный.ДействующиеПараметрыОграниченияДоступа(Неопределено,
Неопределено, Ложь);
КонецЕсли;
Списки = Новый Массив; Для Каждого ОписаниеСписка Из СпискиСКлючамиДоступа Цикл
Списки.Добавить("Справочник.НаборыГруппДоступа"); Список = ОписаниеСписка.Ключ;
Списки.Добавить("РегистрСведений.ПараметрыОграниченияДоступа"); СвойстваТаблицы = ОписаниеСписка.Значение;
Для Каждого ОписаниеСписка Из СпискиСОграничением Цикл ПолноеИмя = СвойстваТаблицы.ИмяТаблицы;
ПолноеИмя = ОписаниеСписка.Ключ; СпискиДляОбновления.Добавить(Список, Строка(Список), Истина);
Списки.Добавить(ПолноеИмя); ВерсииОграничений.Вставить(ПолноеИмя, СвойстваТаблицы.ВерсияОграничения);
Если Не УправлениеДоступомСлужебный.ЭтоСсылочныйТипТаблицы(ПолноеИмя) Тогда Если Не УправлениеДоступомСлужебный.ЭтоСсылочныйТипТаблицы(ПолноеИмя) Тогда
Продолжить; Продолжить;
КонецЕсли; КонецЕсли;
@@ -37,15 +33,9 @@
ТипыОбъектовОбновленияДоступа.Добавить(ПустаяСсылка, Строка(ТипЗнч(ПустаяСсылка))); ТипыОбъектовОбновленияДоступа.Добавить(ПустаяСсылка, Строка(ТипЗнч(ПустаяСсылка)));
ИменаТаблицТиповОбъектовОбновленияДоступа.Добавить(ПустаяСсылка, ПолноеИмя); ИменаТаблицТиповОбъектовОбновленияДоступа.Добавить(ПустаяСсылка, ПолноеИмя);
КонецЦикла; КонецЦикла;
ВерсииОграниченийСписков = Новый ФиксированноеСоответствие(ВерсииОграничений);
ТипыОбъектовОбновленияДоступа.СортироватьПоПредставлению(); ТипыОбъектовОбновленияДоступа.СортироватьПоПредставлению();
Идентификаторы = ОбщегоНазначения.ИдентификаторыОбъектовМетаданных(Списки);
Для Каждого ОписаниеИдентификатора Из Идентификаторы Цикл
СпискиДляОбновления.Добавить(ОписаниеИдентификатора.Значение,
Строка(ОписаниеИдентификатора.Значение), Истина);
КонецЦикла;
СпискиДляОбновления.СортироватьПоПредставлению(); СпискиДляОбновления.СортироватьПоПредставлению();
Если ОбщегоНазначенияКлиентСервер.ЭтоВариантИнтерфейса85() Тогда Если ОбщегоНазначенияКлиентСервер.ЭтоВариантИнтерфейса85() Тогда
@@ -272,6 +262,7 @@
Если ОбновитьКлючиДоступаКЭлементамДанных Или ОбновитьПраваНаКлючиДоступа Тогда Если ОбновитьКлючиДоступаКЭлементамДанных Или ОбновитьПраваНаКлючиДоступа Тогда
ПараметрыПланирования = УправлениеДоступомСлужебный.ПараметрыПланированияОбновленияДоступа(); ПараметрыПланирования = УправлениеДоступомСлужебный.ПараметрыПланированияОбновленияДоступа();
ПараметрыПланирования.ВерсииОграниченийСписков = Новый Соответствие(ВерсииОграниченийСписков);
ПараметрыПланирования.ЭтоПродолжениеОбновления = Истина; ПараметрыПланирования.ЭтоПродолжениеОбновления = Истина;
Если Не ОбновитьКлючиДоступаКЭлементамДанных Тогда Если Не ОбновитьКлючиДоступаКЭлементамДанных Тогда
ПараметрыПланирования.КлючиДоступаКДанным = Ложь; ПараметрыПланирования.КлючиДоступаКДанным = Ложь;
@@ -284,7 +275,8 @@
КонецЕсли; КонецЕсли;
Если УдалитьУстаревшиеСлужебныеДанные Тогда Если УдалитьУстаревшиеСлужебныеДанные Тогда
ПараметрыПланирования = УправлениеДоступомСлужебный.ПараметрыПланированияОбновленияДоступа(); ПараметрыПланирования = УправлениеДоступомСлужебный.ПараметрыПланированияОбновленияДоступа(Ложь);
ПараметрыПланирования.ВерсииОграниченийСписков = Новый Соответствие(ВерсииОграниченийСписков);
ПараметрыПланирования.ЭтоОбработкаУстаревшихЭлементов = Истина; ПараметрыПланирования.ЭтоОбработкаУстаревшихЭлементов = Истина;
ПараметрыПланирования.Описание = "ПланированиеОбновленияДоступаВручную"; ПараметрыПланирования.Описание = "ПланированиеОбновленияДоступаВручную";
УправлениеДоступомСлужебный.ЗапланироватьОбновлениеДоступа(Списки, ПараметрыПланирования); УправлениеДоступомСлужебный.ЗапланироватьОбновлениеДоступа(Списки, ПараметрыПланирования);
@@ -137,7 +137,7 @@
<toolTip> <toolTip>
<key>ru</key> <key>ru</key>
<value>1 - точечное задание, <value>1 - точечное задание,
2 - обновление устаревших, 2 - очистка устаревших,
3 - обновление с начала.</value> 3 - обновление с начала.</value>
</toolTip> </toolTip>
<minValue xsi:type="core:UndefinedValue"/> <minValue xsi:type="core:UndefinedValue"/>
@@ -116,7 +116,7 @@
<toolTip> <toolTip>
<key>ru</key> <key>ru</key>
<value>1 - точечное задание, <value>1 - точечное задание,
2 - обновление устаревших, 2 - очистка устаревших,
3 - обновление с начала.</value> 3 - обновление с начала.</value>
</toolTip> </toolTip>
<minValue xsi:type="core:UndefinedValue"/> <minValue xsi:type="core:UndefinedValue"/>
@@ -1063,9 +1063,9 @@
Если ТипЗнч(СвойстваОбъекта.СтандартныеТабличныеЧасти) <> Тип("ОписанияСтандартныхТабличныхЧастей") Тогда Если ТипЗнч(СвойстваОбъекта.СтандартныеТабличныеЧасти) <> Тип("ОписанияСтандартныхТабличныхЧастей") Тогда
Возврат Неопределено; Возврат Неопределено;
КонецЕсли; КонецЕсли;
СтандартныеТабличныеЧасти = СвойстваОбъекта.СтандартныеТабличныеЧасти; // ОписанияСтандартныхТабличныхЧастей
Для Каждого СтандартнаяТабличнаяЧасть Из СвойстваОбъекта.СтандартныеТабличныеЧасти Цикл Для Каждого СтандартнаяТабличнаяЧасть Из СтандартныеТабличныеЧасти Цикл
СтандартнаяТабличнаяЧасть = СтандартнаяТабличнаяЧасть; // ОписаниеСтандартнойТабличнойЧасти
Если СтандартнаяТабличнаяЧасть.Имя = ИмяСтандартнойТабличнойЧасти Тогда Если СтандартнаяТабличнаяЧасть.Имя = ИмяСтандартнойТабличнойЧасти Тогда
Возврат СтандартнаяТабличнаяЧасть; Возврат СтандартнаяТабличнаяЧасть;
КонецЕсли; КонецЕсли;
@@ -1083,9 +1083,9 @@
Если ТипЗнч(СвойстваОбъекта.СтандартныеРеквизиты) <> Тип("ОписанияСтандартныхРеквизитов") Тогда Если ТипЗнч(СвойстваОбъекта.СтандартныеРеквизиты) <> Тип("ОписанияСтандартныхРеквизитов") Тогда
Возврат Неопределено; Возврат Неопределено;
КонецЕсли; КонецЕсли;
СтандартныеТабличныеЧасти = СвойстваОбъекта.СтандартныеТабличныеЧасти; // ОписанияСтандартныхТабличныхЧастей
Для Каждого СтандартныйРеквизит Из СвойстваОбъекта.СтандартныеРеквизиты Цикл Для Каждого СтандартныйРеквизит Из СвойстваОбъекта.СтандартныеРеквизиты Цикл
СтандартныйРеквизит = СтандартныйРеквизит; // ОписаниеСтандартногоРеквизита
Если СтандартныйРеквизит.Имя = ИмяСтандартногоРеквизита Тогда Если СтандартныйРеквизит.Имя = ИмяСтандартногоРеквизита Тогда
Возврат СтандартныйРеквизит; Возврат СтандартныйРеквизит;
КонецЕсли; КонецЕсли;
@@ -4657,93 +4657,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>CommonCommand.ПоказатьРезультатРезервногоКопирования</name> <name>CommonCommand.ПоказатьРезультатРезервногоКопирования</name>
<right> <right>
@@ -4874,6 +4787,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>
@@ -2525,33 +2525,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>
</object>
<object> <object>
<name>Constant.ИспользоватьРазделениеПоОбластямДанных</name> <name>Constant.ИспользоватьРазделениеПоОбластямДанных</name>
<right> <right>
@@ -2625,6 +2598,33 @@
<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>
</object>
<object> <object>
<name>CommonForm.ВводЗначенийСпискомСФлажками</name> <name>CommonForm.ВводЗначенийСпискомСФлажками</name>
<right> <right>
@@ -2014,33 +2014,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>
</object>
<object> <object>
<name>Constant.ИспользоватьРазделениеПоОбластямДанных</name> <name>Constant.ИспользоватьРазделениеПоОбластямДанных</name>
<right> <right>
@@ -2096,6 +2069,33 @@
<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>
</object>
<object> <object>
<name>CommonForm.ВводЗначенийСпискомСФлажками</name> <name>CommonForm.ВводЗначенийСпискомСФлажками</name>
<right> <right>
@@ -888,6 +888,27 @@
<value>true</value> <value>true</value>
</right> </right>
</object> </object>
<object>
<name>WebService.Exchange_3_0_2_1.Operation.Download</name>
<right>
<name>Use</name>
<value>true</value>
</right>
</object>
<object>
<name>WebService.Exchange_3_0_1_1.Operation.PrepareGetFile</name>
<right>
<name>Use</name>
<value>true</value>
</right>
</object>
<object>
<name>WebService.Exchange.Operation.Download</name>
<right>
<name>Use</name>
<value>true</value>
</right>
</object>
<object> <object>
<name>Configuration.БиблиотекаСтандартныхПодсистем</name> <name>Configuration.БиблиотекаСтандартныхПодсистем</name>
<right> <right>
@@ -915,27 +936,6 @@
<value>true</value> <value>true</value>
</right> </right>
</object> </object>
<object>
<name>WebService.Exchange_3_0_2_1.Operation.Download</name>
<right>
<name>Use</name>
<value>true</value>
</right>
</object>
<object>
<name>WebService.Exchange_3_0_1_1.Operation.PrepareGetFile</name>
<right>
<name>Use</name>
<value>true</value>
</right>
</object>
<object>
<name>WebService.Exchange.Operation.Download</name>
<right>
<name>Use</name>
<value>true</value>
</right>
</object>
<object> <object>
<name>InformationRegister.СостоянияУспешныхОбменовДанными</name> <name>InformationRegister.СостоянияУспешныхОбменовДанными</name>
<right> <right>
@@ -29,6 +29,13 @@
<value>true</value> <value>true</value>
</right> </right>
</object> </object>
<object>
<name>InformationRegister.ДатыЗапретаИзменения.Command.ДатыЗапретаИзмененияДанных</name>
<right>
<name>View</name>
<value>true</value>
</right>
</object>
<object> <object>
<name>Configuration.БиблиотекаСтандартныхПодсистем</name> <name>Configuration.БиблиотекаСтандартныхПодсистем</name>
<right> <right>
@@ -56,13 +63,6 @@
<value>true</value> <value>true</value>
</right> </right>
</object> </object>
<object>
<name>InformationRegister.ДатыЗапретаИзменения.Command.ДатыЗапретаИзмененияДанных</name>
<right>
<name>View</name>
<value>true</value>
</right>
</object>
<object> <object>
<name>InformationRegister.ДатыЗапретаИзменения</name> <name>InformationRegister.ДатыЗапретаИзменения</name>
<right> <right>
@@ -166,6 +166,13 @@
<value>true</value> <value>true</value>
</right> </right>
</object> </object>
<object>
<name>CommonForm.РедактированиеМеток</name>
<right>
<name>View</name>
<value>true</value>
</right>
</object>
<object> <object>
<name>Configuration.БиблиотекаСтандартныхПодсистем</name> <name>Configuration.БиблиотекаСтандартныхПодсистем</name>
<right> <right>
@@ -193,13 +200,6 @@
<value>true</value> <value>true</value>
</right> </right>
</object> </object>
<object>
<name>CommonForm.РедактированиеМеток</name>
<right>
<name>View</name>
<value>true</value>
</right>
</object>
<object> <object>
<name>CommonForm.РедактированиеДополнительныхСведений</name> <name>CommonForm.РедактированиеДополнительныхСведений</name>
<right> <right>
@@ -77,6 +77,13 @@
<value>true</value> <value>true</value>
</right> </right>
</object> </object>
<object>
<name>CommonForm.ОтправкаСообщения</name>
<right>
<name>View</name>
<value>true</value>
</right>
</object>
<object> <object>
<name>Configuration.БиблиотекаСтандартныхПодсистем</name> <name>Configuration.БиблиотекаСтандартныхПодсистем</name>
<right> <right>
@@ -104,13 +111,6 @@
<value>true</value> <value>true</value>
</right> </right>
</object> </object>
<object>
<name>CommonForm.ОтправкаСообщения</name>
<right>
<name>View</name>
<value>true</value>
</right>
</object>
<restrictionTemplate> <restrictionTemplate>
<name>ДляОбъекта(ПолеОбъекта)</name> <name>ДляОбъекта(ПолеОбъекта)</name>
<condition>// ДляОбъекта(ПолеОбъекта = "") <condition>// ДляОбъекта(ПолеОбъекта = "")
@@ -17,33 +17,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>
</object>
<object> <object>
<name>Catalog.ГруппыДоступа</name> <name>Catalog.ГруппыДоступа</name>
<right> <right>
@@ -121,6 +94,33 @@
<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>
</object>
<object> <object>
<name>Catalog.ПрофилиГруппДоступа</name> <name>Catalog.ПрофилиГруппДоступа</name>
<right> <right>
@@ -237,6 +237,17 @@
<value>true</value> <value>true</value>
</right> </right>
</object> </object>
<object>
<name>InformationRegister.ЗамерыВремениТехнологические</name>
<right>
<name>Read</name>
<value>true</value>
</right>
<right>
<name>View</name>
<value>true</value>
</right>
</object>
<object> <object>
<name>Configuration.БиблиотекаСтандартныхПодсистем</name> <name>Configuration.БиблиотекаСтандартныхПодсистем</name>
<right> <right>
@@ -264,17 +275,6 @@
<value>true</value> <value>true</value>
</right> </right>
</object> </object>
<object>
<name>InformationRegister.ЗамерыВремениТехнологические</name>
<right>
<name>Read</name>
<value>true</value>
</right>
<right>
<name>View</name>
<value>true</value>
</right>
</object>
<object> <object>
<name>DataProcessor.ОценкаПроизводительности.Command.НастройкиОценкиПроизводительности</name> <name>DataProcessor.ОценкаПроизводительности.Command.НастройкиОценкиПроизводительности</name>
<right> <right>
@@ -6543,45 +6543,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>CommonCommand.ПоказатьРезультатРезервногоКопирования</name> <name>CommonCommand.ПоказатьРезультатРезервногоКопирования</name>
<right> <right>
@@ -6736,6 +6697,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>
@@ -3351,33 +3351,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>
</object>
<object> <object>
<name>SessionParameter.ИдентификаторыТаблицСОтдельнымиНастройкамиПрав</name> <name>SessionParameter.ИдентификаторыТаблицСОтдельнымиНастройкамиПрав</name>
<right> <right>
@@ -3426,6 +3399,33 @@
<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>
</object>
<object> <object>
<name>InformationRegister.ИспользуемыеВидыДоступа</name> <name>InformationRegister.ИспользуемыеВидыДоступа</name>
<right> <right>
@@ -129,6 +129,13 @@
<value>true</value> <value>true</value>
</right> </right>
</object> </object>
<object>
<name>WebService.RemoteAdministrationOfExchange_2_4_5_1.Operation.Ping</name>
<right>
<name>Use</name>
<value>true</value>
</right>
</object>
<object> <object>
<name>Configuration.БиблиотекаСтандартныхПодсистем</name> <name>Configuration.БиблиотекаСтандартныхПодсистем</name>
<right> <right>
@@ -156,13 +163,6 @@
<value>true</value> <value>true</value>
</right> </right>
</object> </object>
<object>
<name>WebService.RemoteAdministrationOfExchange_2_4_5_1.Operation.Ping</name>
<right>
<name>Use</name>
<value>true</value>
</right>
</object>
<object> <object>
<name>WebService.RemoteAdministrationOfExchange_2_1_6_1.Operation.StartExchangeExecutionInFirstDataBase</name> <name>WebService.RemoteAdministrationOfExchange_2_1_6_1.Operation.StartExchangeExecutionInFirstDataBase</name>
<right> <right>
@@ -29,6 +29,13 @@
<value>true</value> <value>true</value>
</right> </right>
</object> </object>
<object>
<name>InformationRegister.ДатыЗапретаИзменения.Command.ДатыЗапретаИзмененияДанных</name>
<right>
<name>View</name>
<value>true</value>
</right>
</object>
<object> <object>
<name>Configuration.БиблиотекаСтандартныхПодсистем</name> <name>Configuration.БиблиотекаСтандартныхПодсистем</name>
<right> <right>
@@ -56,13 +63,6 @@
<value>true</value> <value>true</value>
</right> </right>
</object> </object>
<object>
<name>InformationRegister.ДатыЗапретаИзменения.Command.ДатыЗапретаИзмененияДанных</name>
<right>
<name>View</name>
<value>true</value>
</right>
</object>
<object> <object>
<name>InformationRegister.ДатыЗапретаИзменения</name> <name>InformationRegister.ДатыЗапретаИзменения</name>
<right> <right>
@@ -31,6 +31,13 @@
<value>true</value> <value>true</value>
</right> </right>
</object> </object>
<object>
<name>CommonForm.ОтправкаСообщения</name>
<right>
<name>View</name>
<value>true</value>
</right>
</object>
<object> <object>
<name>Configuration.БиблиотекаСтандартныхПодсистем</name> <name>Configuration.БиблиотекаСтандартныхПодсистем</name>
<right> <right>
@@ -58,13 +65,6 @@
<value>true</value> <value>true</value>
</right> </right>
</object> </object>
<object>
<name>CommonForm.ОтправкаСообщения</name>
<right>
<name>View</name>
<value>true</value>
</right>
</object>
<restrictionTemplate> <restrictionTemplate>
<name>ДляОбъекта(ПолеОбъекта)</name> <name>ДляОбъекта(ПолеОбъекта)</name>
<condition>// ДляОбъекта(ПолеОбъекта = "") <condition>// ДляОбъекта(ПолеОбъекта = "")