3_0_2_264
This commit is contained in:
1 parent
85dba1fa7a
commit
e15865dca6
44 files changed
+1171
-554
No files matched your search
@@ -266,10 +266,6 @@
|
|||||||
<getInvisibleFieldPresentations>true</getInvisibleFieldPresentations>
|
<getInvisibleFieldPresentations>true</getInvisibleFieldPresentations>
|
||||||
</extInfo>
|
</extInfo>
|
||||||
</attributes>
|
</attributes>
|
||||||
<parameters>
|
|
||||||
<name>Отбор</name>
|
|
||||||
<valueType/>
|
|
||||||
</parameters>
|
|
||||||
<commandInterface>
|
<commandInterface>
|
||||||
<navigationPanel/>
|
<navigationPanel/>
|
||||||
<commandBar/>
|
<commandBar/>
|
||||||
|
|||||||
@@ -14,12 +14,6 @@
|
|||||||
Возврат;
|
Возврат;
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
ОценкаПроизводительностиКлиентСервер.УстановитьЭлементОтбора(
|
|
||||||
Список.Отбор,
|
|
||||||
"Ссылка",
|
|
||||||
Параметры.Отбор,
|
|
||||||
ВидСравненияКомпоновкиДанных.НеВСписке);
|
|
||||||
|
|
||||||
ОценкаПроизводительностиКлиентСервер.УстановитьЭлементОтбора(
|
ОценкаПроизводительностиКлиентСервер.УстановитьЭлементОтбора(
|
||||||
Список.Отбор,
|
Список.Отбор,
|
||||||
"ПометкаУдаления",
|
"ПометкаУдаления",
|
||||||
|
|||||||
@@ -1253,6 +1253,10 @@
|
|||||||
<items xsi:type="form:FormField">
|
<items xsi:type="form:FormField">
|
||||||
<name>ПоследнийЗапуск</name>
|
<name>ПоследнийЗапуск</name>
|
||||||
<id>24</id>
|
<id>24</id>
|
||||||
|
<title>
|
||||||
|
<key>ru</key>
|
||||||
|
<value>Последний запуск</value>
|
||||||
|
</title>
|
||||||
<visible>true</visible>
|
<visible>true</visible>
|
||||||
<enabled>true</enabled>
|
<enabled>true</enabled>
|
||||||
<userVisible>
|
<userVisible>
|
||||||
|
|||||||
@@ -41,9 +41,12 @@
|
|||||||
// Кнопки классификатора скрываем.
|
// Кнопки классификатора скрываем.
|
||||||
Элементы.СписокВыбратьИзКлассификатора.Видимость = Ложь;
|
Элементы.СписокВыбратьИзКлассификатора.Видимость = Ложь;
|
||||||
Элементы.СписокКлассификатор.Видимость = Ложь;
|
Элементы.СписокКлассификатор.Видимость = Ложь;
|
||||||
|
Если МожноДобавлятьВСправочник Тогда
|
||||||
Элементы.СписокСоздать.ТолькоВоВсехДействиях = Ложь;
|
Элементы.СписокСоздать.ТолькоВоВсехДействиях = Ложь;
|
||||||
Элементы.СписокСоздать.КнопкаПоУмолчанию = Не РежимВыбора;
|
Элементы.СписокСоздать.КнопкаПоУмолчанию = Не РежимВыбора;
|
||||||
Элементы.СписокСоздать.Заголовок = "";
|
Элементы.СписокСоздать.Заголовок = "";
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
Возврат;
|
Возврат;
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
|
|||||||
@@ -1221,6 +1221,10 @@
|
|||||||
<name>СписокОтредактировал</name>
|
<name>СписокОтредактировал</name>
|
||||||
<id>411</id>
|
<id>411</id>
|
||||||
<displayImportance>VeryLow</displayImportance>
|
<displayImportance>VeryLow</displayImportance>
|
||||||
|
<title>
|
||||||
|
<key>ru</key>
|
||||||
|
<value>Отредактировал</value>
|
||||||
|
</title>
|
||||||
<visible>true</visible>
|
<visible>true</visible>
|
||||||
<enabled>true</enabled>
|
<enabled>true</enabled>
|
||||||
<userVisible>
|
<userVisible>
|
||||||
|
|||||||
@@ -10,7 +10,9 @@
|
|||||||
|
|
||||||
&НаКлиенте
|
&НаКлиенте
|
||||||
Процедура ОбработкаКоманды(ПараметрКоманды, ПараметрыВыполненияКоманды)
|
Процедура ОбработкаКоманды(ПараметрКоманды, ПараметрыВыполненияКоманды)
|
||||||
|
|
||||||
НовоеОбсуждение = НовоеОбсуждение(ПараметрКоманды);
|
НовоеОбсуждение = НовоеОбсуждение(ПараметрКоманды);
|
||||||
|
|
||||||
Если НовоеОбсуждение = "Недоступно" Тогда
|
Если НовоеОбсуждение = "Недоступно" Тогда
|
||||||
Возврат;
|
Возврат;
|
||||||
ИначеЕсли НовоеОбсуждение = "НеПодключено" Тогда
|
ИначеЕсли НовоеОбсуждение = "НеПодключено" Тогда
|
||||||
@@ -22,7 +24,9 @@
|
|||||||
ПоказатьВопрос(ОповещениеОЗавершении, ПредлагатьОбсужденияТекст, РежимДиалогаВопрос.ДаНет);
|
ПоказатьВопрос(ОповещениеОЗавершении, ПредлагатьОбсужденияТекст, РежимДиалогаВопрос.ДаНет);
|
||||||
Возврат;
|
Возврат;
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
ФайловаяСистемаКлиент.ОткрытьНавигационнуюСсылку(НовоеОбсуждение);
|
ФайловаяСистемаКлиент.ОткрытьНавигационнуюСсылку(НовоеОбсуждение);
|
||||||
|
|
||||||
КонецПроцедуры
|
КонецПроцедуры
|
||||||
|
|
||||||
#КонецОбласти
|
#КонецОбласти
|
||||||
@@ -48,19 +52,31 @@
|
|||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
УстановитьПривилегированныйРежим(Истина);
|
УстановитьПривилегированныйРежим(Истина);
|
||||||
|
|
||||||
ИдентификаторПользователяИнформационнойБазы = ОбщегоНазначения.ЗначениеРеквизитаОбъекта(ПользовательСсылка, "ИдентификаторПользователяИБ");
|
ИдентификаторПользователяИнформационнойБазы = ОбщегоНазначения.ЗначениеРеквизитаОбъекта(ПользовательСсылка, "ИдентификаторПользователяИБ");
|
||||||
|
УстановитьПривилегированныйРежим(Ложь);
|
||||||
|
|
||||||
Если Не ЗначениеЗаполнено(ИдентификаторПользователяИнформационнойБазы) Тогда
|
Если Не ЗначениеЗаполнено(ИдентификаторПользователяИнформационнойБазы) Тогда
|
||||||
Возврат "Недоступно";
|
Возврат "Недоступно";
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
|
Попытка
|
||||||
|
ИдентификаторПользователяСистемыВзаимодействия = СистемаВзаимодействия.ПолучитьИдентификаторПользователя(
|
||||||
|
ИдентификаторПользователяИнформационнойБазы);
|
||||||
|
Исключение
|
||||||
|
ВызватьИсключение СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
|
||||||
|
НСтр("ru = 'Для начала обсуждения необходимо, чтобы пользователь %1
|
||||||
|
|хотя бы один раз запустил программу.'"),
|
||||||
|
ПользовательСсылка);
|
||||||
|
КонецПопытки;
|
||||||
|
|
||||||
|
Если ИдентификаторПользователяСистемыВзаимодействия = СистемаВзаимодействия.ИдентификаторТекущегоПользователя() Тогда
|
||||||
|
ВызватьИсключение НСтр("ru = 'Для начала обсуждения выберите другого пользователя.'");
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
Обсуждение = СистемаВзаимодействия.СоздатьОбсуждение();
|
Обсуждение = СистемаВзаимодействия.СоздатьОбсуждение();
|
||||||
Обсуждение.Групповое = Ложь;
|
Обсуждение.Групповое = Ложь;
|
||||||
Обсуждение.Участники.Добавить(СистемаВзаимодействия.ИдентификаторТекущегоПользователя());
|
Обсуждение.Участники.Добавить(СистемаВзаимодействия.ИдентификаторТекущегоПользователя());
|
||||||
|
|
||||||
ИдентификаторПользователяСистемыВзаимодействия = СистемаВзаимодействия.ПолучитьИдентификаторПользователя(ИдентификаторПользователяИнформационнойБазы);
|
|
||||||
Обсуждение.Участники.Добавить(ИдентификаторПользователяСистемыВзаимодействия);
|
Обсуждение.Участники.Добавить(ИдентификаторПользователяСистемыВзаимодействия);
|
||||||
|
|
||||||
Обсуждение.Записать();
|
Обсуждение.Записать();
|
||||||
|
|
||||||
Возврат ПолучитьНавигационнуюСсылку(Обсуждение.Идентификатор);
|
Возврат ПолучитьНавигационнуюСсылку(Обсуждение.Идентификатор);
|
||||||
|
|||||||
@@ -63,43 +63,46 @@
|
|||||||
Строка = СистемнаяИнформация.ИнформацияПрограммыПросмотра;
|
Строка = СистемнаяИнформация.ИнформацияПрограммыПросмотра;
|
||||||
|
|
||||||
Если СтрНайти(Строка, "Chrome/") > 0 Тогда
|
Если СтрНайти(Строка, "Chrome/") > 0 Тогда
|
||||||
Браузер = "Chrome";
|
Браузер = НСтр("ru = 'Chrome'");
|
||||||
ИначеЕсли СтрНайти(Строка, "MSIE") > 0 Тогда
|
ИначеЕсли СтрНайти(Строка, "MSIE") > 0 Тогда
|
||||||
Браузер = "Internet Explorer";
|
Браузер = НСтр("ru = 'Internet Explorer'");
|
||||||
ИначеЕсли СтрНайти(Строка, "Safari/") > 0 Тогда
|
ИначеЕсли СтрНайти(Строка, "Safari/") > 0 Тогда
|
||||||
Браузер = "Safari";
|
Браузер = НСтр("ru = 'Safari'");
|
||||||
ИначеЕсли СтрНайти(Строка, "Firefox/") > 0 Тогда
|
ИначеЕсли СтрНайти(Строка, "Firefox/") > 0 Тогда
|
||||||
Браузер = "Firefox";
|
Браузер = НСтр("ru = 'Firefox'");
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
Представление = НСтр("ru = 'веб-клиент'") + " " + Браузер + " " + НСтр("ru = 'в'");
|
Приложение = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'веб-клиент %1'"), Браузер);
|
||||||
#ИначеЕсли МобильноеПриложениеКлиент Тогда
|
#ИначеЕсли МобильноеПриложениеКлиент Тогда
|
||||||
Представление = НСтр("ru = 'мобильное приложение'");
|
Приложение = НСтр("ru = 'мобильное приложение'");
|
||||||
#ИначеЕсли МобильныйКлиент Тогда
|
#ИначеЕсли МобильныйКлиент Тогда
|
||||||
Представление = НСтр("ru = 'мобильный клиент'");
|
Приложение = НСтр("ru = 'мобильный клиент'");
|
||||||
#ИначеЕсли ТонкийКлиент Тогда
|
#ИначеЕсли ТонкийКлиент Тогда
|
||||||
Представление = НСтр("ru = 'тонкий клиент'");
|
Приложение = НСтр("ru = 'тонкий клиент'");
|
||||||
#ИначеЕсли ТолстыйКлиентОбычноеПриложение Тогда
|
#ИначеЕсли ТолстыйКлиентОбычноеПриложение Тогда
|
||||||
Представление = НСтр("ru = 'толстый клиент (обычное приложение)'");
|
Приложение = НСтр("ru = 'толстый клиент (обычное приложение)'");
|
||||||
#ИначеЕсли ТолстыйКлиентУправляемоеПриложение Тогда
|
#ИначеЕсли ТолстыйКлиентУправляемоеПриложение Тогда
|
||||||
Представление = НСтр("ru = 'толстый клиент'");
|
Приложение = НСтр("ru = 'толстый клиент'");
|
||||||
#КонецЕсли
|
#КонецЕсли
|
||||||
|
|
||||||
Если СистемнаяИнформация.ТипПлатформы = ТипПлатформы.Windows_x86 Тогда
|
Если СистемнаяИнформация.ТипПлатформы = ТипПлатформы.Windows_x86 Тогда
|
||||||
Представление = Представление + " " + "Windows x86";
|
Платформа = НСтр("ru = 'Windows x86'");
|
||||||
ИначеЕсли СистемнаяИнформация.ТипПлатформы = ТипПлатформы.Windows_x86_64 Тогда
|
ИначеЕсли СистемнаяИнформация.ТипПлатформы = ТипПлатформы.Windows_x86_64 Тогда
|
||||||
Представление = Представление + " " + "Windows x86-64";
|
Платформа = НСтр("ru = 'Windows x86-64'");
|
||||||
ИначеЕсли СистемнаяИнформация.ТипПлатформы = ТипПлатформы.Linux_x86 Тогда
|
ИначеЕсли СистемнаяИнформация.ТипПлатформы = ТипПлатформы.Linux_x86 Тогда
|
||||||
Представление = Представление + " " + "Linux x86";
|
Платформа = НСтр("ru = 'Linux x86'");
|
||||||
ИначеЕсли СистемнаяИнформация.ТипПлатформы = ТипПлатформы.Linux_x86_64 Тогда
|
ИначеЕсли СистемнаяИнформация.ТипПлатформы = ТипПлатформы.Linux_x86_64 Тогда
|
||||||
Представление = Представление + " " + "Linux x86-64";
|
Платформа = НСтр("ru = 'Linux x86-64'");
|
||||||
ИначеЕсли СистемнаяИнформация.ТипПлатформы = ТипПлатформы.MacOS_x86 Тогда
|
ИначеЕсли СистемнаяИнформация.ТипПлатформы = ТипПлатформы.MacOS_x86 Тогда
|
||||||
Представление = Представление + " " + "MacOS x86";
|
Платформа = НСтр("ru = 'macOS x86'");
|
||||||
ИначеЕсли СистемнаяИнформация.ТипПлатформы = ТипПлатформы.MacOS_x86_64 Тогда
|
ИначеЕсли СистемнаяИнформация.ТипПлатформы = ТипПлатформы.MacOS_x86_64 Тогда
|
||||||
Представление = Представление + " " + "MacOS x86-64";
|
Платформа = НСтр("ru = 'macOS x86-64'");
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
Возврат Представление;
|
// Например:
|
||||||
|
// веб-клиент Firefox Windows x86
|
||||||
|
// тонкий клиент Windows x86-64
|
||||||
|
Возврат СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = '%1 %2'"), Приложение, Платформа);
|
||||||
|
|
||||||
КонецФункции
|
КонецФункции
|
||||||
|
|
||||||
|
|||||||
@@ -293,7 +293,6 @@
|
|||||||
|
|
||||||
ОбновитьФорму(ПараметрыОбновления);
|
ОбновитьФорму(ПараметрыОбновления);
|
||||||
Иначе
|
Иначе
|
||||||
ОтчетыКлиент.ОбновитьСвойстваНастройки(ЭтотОбъект, КомпоновщикНастроек, ЭлементНастройки);
|
|
||||||
ОформитьСписок(Элемент, ЭлементНастройки);
|
ОформитьСписок(Элемент, ЭлементНастройки);
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
КонецПроцедуры
|
КонецПроцедуры
|
||||||
@@ -330,7 +329,6 @@
|
|||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
ЭлементНастройки.Использование = Истина;
|
ЭлементНастройки.Использование = Истина;
|
||||||
|
|
||||||
ОтчетыКлиент.ОбновитьСвойстваНастройки(ЭтотОбъект, КомпоновщикНастроек, ЭлементНастройки);
|
|
||||||
ОформитьСписок(Элемент, ЭлементНастройки);
|
ОформитьСписок(Элемент, ЭлементНастройки);
|
||||||
КонецПроцедуры
|
КонецПроцедуры
|
||||||
|
|
||||||
@@ -370,7 +368,6 @@
|
|||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
ЭлементНастройки.Использование = Истина;
|
ЭлементНастройки.Использование = Истина;
|
||||||
|
|
||||||
ОтчетыКлиент.ОбновитьСвойстваНастройки(ЭтотОбъект, КомпоновщикНастроек, ЭлементНастройки);
|
|
||||||
ОформитьСписок(Элемент, ЭлементНастройки);
|
ОформитьСписок(Элемент, ЭлементНастройки);
|
||||||
|
|
||||||
Если Дополнение.Всего > 0 Тогда
|
Если Дополнение.Всего > 0 Тогда
|
||||||
@@ -4463,7 +4460,6 @@
|
|||||||
|
|
||||||
ЭлементНастройки.Использование = Истина;
|
ЭлементНастройки.Использование = Истина;
|
||||||
|
|
||||||
ОтчетыКлиент.ОбновитьСвойстваНастройки(ЭтотОбъект, КомпоновщикНастроек, ЭлементНастройки);
|
|
||||||
ОформитьСписок(Элементы[ПутьКСписку], ЭлементНастройки);
|
ОформитьСписок(Элементы[ПутьКСписку], ЭлементНастройки);
|
||||||
КонецПроцедуры
|
КонецПроцедуры
|
||||||
|
|
||||||
|
|||||||
@@ -560,8 +560,6 @@
|
|||||||
ПараметрыОбновления.Вставить("ПользовательскиеНастройкиМодифицированы", Истина);
|
ПараметрыОбновления.Вставить("ПользовательскиеНастройкиМодифицированы", Истина);
|
||||||
|
|
||||||
ОбновитьЭлементыФормыНастроек(ПараметрыОбновления);
|
ОбновитьЭлементыФормыНастроек(ПараметрыОбновления);
|
||||||
Иначе
|
|
||||||
ОтчетыКлиент.ОбновитьСвойстваНастройки(ЭтотОбъект, КомпоновщикНастроек, ЭлементНастройки);
|
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
КонецПроцедуры
|
КонецПроцедуры
|
||||||
|
|
||||||
|
|||||||
@@ -29,6 +29,10 @@
|
|||||||
// Неопределено - Если не удалось получить тип субконто (нет такого субконто или нет прав).
|
// Неопределено - Если не удалось получить тип субконто (нет такого субконто или нет прав).
|
||||||
//
|
//
|
||||||
Функция ТипСубконто(Счет, НомерСубконто) Экспорт
|
Функция ТипСубконто(Счет, НомерСубконто) Экспорт
|
||||||
|
Если Счет = Неопределено Тогда
|
||||||
|
Возврат Неопределено;
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
ОбъектМетаданных = Счет.Метаданные();
|
ОбъектМетаданных = Счет.Метаданные();
|
||||||
Если Не Метаданные.ПланыСчетов.Содержит(ОбъектМетаданных) Тогда
|
Если Не Метаданные.ПланыСчетов.Содержит(ОбъектМетаданных) Тогда
|
||||||
Возврат Неопределено;
|
Возврат Неопределено;
|
||||||
|
|||||||
@@ -1783,9 +1783,21 @@
|
|||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ОбменДанными") Тогда
|
Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ОбменДанными") Тогда
|
||||||
|
ИмяПланаОбмена = Получатель.Метаданные().Имя;
|
||||||
|
|
||||||
|
МодульОбменДаннымиПовтИсп = ОбщегоНазначения.ОбщийМодуль("ОбменДаннымиПовтИсп");
|
||||||
|
ОписаниеОбъектаМетаданных = МодульОбменДаннымиПовтИсп.СоставПланаОбмена(ИмяПланаОбмена).Найти(ТипЗнч(Запись.Объект), "Тип");
|
||||||
|
|
||||||
|
Если ОписаниеОбъектаМетаданных = Неопределено Тогда
|
||||||
|
ОтправкаЭлемента = ОтправкаЭлементаДанных.Игнорировать;
|
||||||
|
Возврат;
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
Отказ = Ложь;
|
Отказ = Ложь;
|
||||||
|
|
||||||
МодульОбменДаннымиСобытия = ОбщегоНазначения.ОбщийМодуль("ОбменДаннымиСобытия");
|
МодульОбменДаннымиСобытия = ОбщегоНазначения.ОбщийМодуль("ОбменДаннымиСобытия");
|
||||||
МодульОбменДаннымиСобытия.МеханизмРегистрацииОбъектовПередЗаписью(Получатель.Метаданные().Имя, Объект, Отказ);
|
МодульОбменДаннымиСобытия.МеханизмРегистрацииОбъектовПередЗаписью(ИмяПланаОбмена, Объект, Отказ);
|
||||||
|
|
||||||
Если Отказ Или Не Объект.ОбменДанными.Получатели.Содержит(Получатель.Ссылка) Тогда
|
Если Отказ Или Не Объект.ОбменДанными.Получатели.Содержит(Получатель.Ссылка) Тогда
|
||||||
ОтправкаЭлемента = ОтправкаЭлементаДанных.Игнорировать;
|
ОтправкаЭлемента = ОтправкаЭлементаДанных.Игнорировать;
|
||||||
Возврат;
|
Возврат;
|
||||||
|
|||||||
@@ -414,6 +414,58 @@
|
|||||||
|
|
||||||
КонецФункции
|
КонецФункции
|
||||||
|
|
||||||
|
// Возвращает таблицу состава узла (только ссылочные типы).
|
||||||
|
//
|
||||||
|
// Параметры:
|
||||||
|
// ИмяПланаОбмена - Строка - анализируемый план обмена.
|
||||||
|
// Периодические - флаг того, что надо включать в результат объекты с датой (документы и т.п.).
|
||||||
|
// Справочные - флаг того, что надо включать в результат нормативно-справочные объекты.
|
||||||
|
//
|
||||||
|
// Возвращаемое значение:
|
||||||
|
// ТаблицаЗначений - таблица с колонками:
|
||||||
|
// * ПолноеИмяМетаданных - Строка - полное имя метаданных (имя таблицы для запроса).
|
||||||
|
// * ПредставлениеСписка - Строка - представление списка для таблицы.
|
||||||
|
// * Представление - Строка - представление объекта для таблицы.
|
||||||
|
// * ИндексКартинки - Число - индекс картинки согласно "БиблиотекаКартинок.КоллекцияОбъектыМетаданных".
|
||||||
|
// * Тип - Тип - соответствующий тип.
|
||||||
|
// * ВыборПериода - Булево - флаг того, что к объекту можно применить выбор по периода.
|
||||||
|
//
|
||||||
|
Функция СоставПланаОбмена(ИмяПланаОбмена, Периодические = Истина, Справочные = Истина) Экспорт
|
||||||
|
|
||||||
|
ТаблицаРезультата = Новый ТаблицаЗначений;
|
||||||
|
Для Каждого КлючЗначение Из (Новый Структура("ПолноеИмяМетаданных, Представление, ПредставлениеСписка, ИндексКартинки, Тип, ВыборПериода")) Цикл
|
||||||
|
ТаблицаРезультата.Колонки.Добавить(КлючЗначение.Ключ);
|
||||||
|
КонецЦикла;
|
||||||
|
Для Каждого КлючЗначение Из (Новый Структура("ПолноеИмяМетаданных, Представление, ПредставлениеСписка, Тип")) Цикл
|
||||||
|
ТаблицаРезультата.Индексы.Добавить(КлючЗначение.Ключ);
|
||||||
|
КонецЦикла;
|
||||||
|
|
||||||
|
СоставПланаОбмена = Метаданные.ПланыОбмена.Найти(ИмяПланаОбмена).Состав;
|
||||||
|
Для Каждого ЭлементСостава Из СоставПланаОбмена Цикл
|
||||||
|
|
||||||
|
МетаданныеОбъекта = ЭлементСостава.Метаданные;
|
||||||
|
Описание = ОписаниеОбъектаМетаданных(МетаданныеОбъекта);
|
||||||
|
Если Описание.ИндексКартинки >= 0 Тогда
|
||||||
|
Если Не Периодические И Описание.Периодический Тогда
|
||||||
|
Продолжить;
|
||||||
|
ИначеЕсли Не Справочные И Описание.Справочный Тогда
|
||||||
|
Продолжить;
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
|
Строка = ТаблицаРезультата.Добавить();
|
||||||
|
ЗаполнитьЗначенияСвойств(Строка, Описание);
|
||||||
|
Строка.ВыборПериода = Описание.Периодический;
|
||||||
|
Строка.ПолноеИмяМетаданных = МетаданныеОбъекта.ПолноеИмя();
|
||||||
|
Строка.ПредставлениеСписка = ОбменДаннымиСервер.ПредставлениеСпискаОбъектов(МетаданныеОбъекта);
|
||||||
|
Строка.Представление = ОбменДаннымиСервер.ПредставлениеОбъекта(МетаданныеОбъекта);
|
||||||
|
КонецЕсли;
|
||||||
|
КонецЦикла;
|
||||||
|
|
||||||
|
ТаблицаРезультата.Сортировать("ПредставлениеСписка");
|
||||||
|
Возврат ТаблицаРезультата;
|
||||||
|
|
||||||
|
КонецФункции
|
||||||
|
|
||||||
#КонецОбласти
|
#КонецОбласти
|
||||||
|
|
||||||
#Область СлужебныеПроцедурыИФункции
|
#Область СлужебныеПроцедурыИФункции
|
||||||
@@ -1359,58 +1411,6 @@
|
|||||||
Возврат СписокПравил;
|
Возврат СписокПравил;
|
||||||
КонецФункции
|
КонецФункции
|
||||||
|
|
||||||
// Возвращает таблицу состава узла (только ссылочные типы).
|
|
||||||
//
|
|
||||||
// Параметры:
|
|
||||||
// ИмяПланаОбмена - Строка - анализируемый план обмена.
|
|
||||||
// Периодические - флаг того, что надо включать в результат объекты с датой (документы и т.п.).
|
|
||||||
// Справочные - флаг того, что надо включать в результат нормативно-справочные объекты.
|
|
||||||
//
|
|
||||||
// Возвращаемое значение:
|
|
||||||
// ТаблицаЗначений - таблица с колонками:
|
|
||||||
// * ПолноеИмяМетаданных - Строка - полное имя метаданных (имя таблицы для запроса).
|
|
||||||
// * ПредставлениеСписка - Строка - представление списка для таблицы.
|
|
||||||
// * Представление - Строка - представление объекта для таблицы.
|
|
||||||
// * ИндексКартинки - Число - индекс картинки согласно "БиблиотекаКартинок.КоллекцияОбъектыМетаданных".
|
|
||||||
// * Тип - Тип - соответствующий тип.
|
|
||||||
// * ВыборПериода - Булево - флаг того, что к объекту можно применить выбор по периода.
|
|
||||||
//
|
|
||||||
Функция СоставПланаОбмена(ИмяПланаОбмена, Периодические = Истина, Справочные = Истина) Экспорт
|
|
||||||
|
|
||||||
ТаблицаРезультата = Новый ТаблицаЗначений;
|
|
||||||
Для Каждого КлючЗначение Из (Новый Структура("ПолноеИмяМетаданных, Представление, ПредставлениеСписка, ИндексКартинки, Тип, ВыборПериода")) Цикл
|
|
||||||
ТаблицаРезультата.Колонки.Добавить(КлючЗначение.Ключ);
|
|
||||||
КонецЦикла;
|
|
||||||
Для Каждого КлючЗначение Из (Новый Структура("ПолноеИмяМетаданных, Представление, ПредставлениеСписка, Тип")) Цикл
|
|
||||||
ТаблицаРезультата.Индексы.Добавить(КлючЗначение.Ключ);
|
|
||||||
КонецЦикла;
|
|
||||||
|
|
||||||
СоставПланаОбмена = Метаданные.ПланыОбмена.Найти(ИмяПланаОбмена).Состав;
|
|
||||||
Для Каждого ЭлементСостава Из СоставПланаОбмена Цикл
|
|
||||||
|
|
||||||
МетаданныеОбъекта = ЭлементСостава.Метаданные;
|
|
||||||
Описание = ОписаниеОбъектаМетаданных(МетаданныеОбъекта);
|
|
||||||
Если Описание.ИндексКартинки >= 0 Тогда
|
|
||||||
Если Не Периодические И Описание.Периодический Тогда
|
|
||||||
Продолжить;
|
|
||||||
ИначеЕсли Не Справочные И Описание.Справочный Тогда
|
|
||||||
Продолжить;
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
Строка = ТаблицаРезультата.Добавить();
|
|
||||||
ЗаполнитьЗначенияСвойств(Строка, Описание);
|
|
||||||
Строка.ВыборПериода = Описание.Периодический;
|
|
||||||
Строка.ПолноеИмяМетаданных = МетаданныеОбъекта.ПолноеИмя();
|
|
||||||
Строка.ПредставлениеСписка = ОбменДаннымиСервер.ПредставлениеСпискаОбъектов(МетаданныеОбъекта);
|
|
||||||
Строка.Представление = ОбменДаннымиСервер.ПредставлениеОбъекта(МетаданныеОбъекта);
|
|
||||||
КонецЕсли;
|
|
||||||
КонецЦикла;
|
|
||||||
|
|
||||||
ТаблицаРезультата.Сортировать("ПредставлениеСписка");
|
|
||||||
Возврат ТаблицаРезультата;
|
|
||||||
|
|
||||||
КонецФункции
|
|
||||||
|
|
||||||
Функция ОписаниеОбъектаМетаданных(Мета)
|
Функция ОписаниеОбъектаМетаданных(Мета)
|
||||||
|
|
||||||
Результат = Новый Структура("ИндексКартинки, Периодический, Справочный, Тип", -1, Ложь, Ложь);
|
Результат = Новый Структура("ИндексКартинки, Периодический, Справочный, Тип", -1, Ложь, Ложь);
|
||||||
|
|||||||
@@ -1949,13 +1949,13 @@
|
|||||||
|
|
||||||
ИмяОтбора = ЧтениеXML.Имя;
|
ИмяОтбора = ЧтениеXML.Имя;
|
||||||
ТипЗначенияОтбора = ЧтениеXML.ЗначениеАтрибута("Type");
|
ТипЗначенияОтбора = ЧтениеXML.ЗначениеАтрибута("Type");
|
||||||
ПолноеИмяЭлементаОтбора = Метаданные.НайтиПоПолномуИмени(ТипЗначенияОтбора);
|
МетаданныеЗначенияОтбора = Метаданные.НайтиПоПолномуИмени(ТипЗначенияОтбора);
|
||||||
|
|
||||||
Если ПолноеИмяЭлементаОтбора <> Неопределено Тогда
|
Если МетаданныеЗначенияОтбора <> Неопределено Тогда
|
||||||
|
|
||||||
МенеджерОбъектаОтбора = ОбщегоНазначения.МенеджерОбъектаПоПолномуИмени(ТипЗначенияОтбора);
|
МенеджерОбъектаОтбора = ОбщегоНазначения.МенеджерОбъектаПоПолномуИмени(ТипЗначенияОтбора);
|
||||||
|
|
||||||
Если СтрНайти(ВРег(ТипЗначенияОтбора), "ПЕРЕЧИСЛЕНИЕ") > 0 Тогда
|
Если ОбщегоНазначения.ЭтоПеречисление(МетаданныеЗначенияОтбора) Тогда
|
||||||
СсылкаНаЗначение = МенеджерОбъектаОтбора[ЗначениеОтбора];
|
СсылкаНаЗначение = МенеджерОбъектаОтбора[ЗначениеОтбора];
|
||||||
Иначе
|
Иначе
|
||||||
СсылкаНаЗначение = МенеджерОбъектаОтбора.ПолучитьСсылку(Новый УникальныйИдентификатор(ЗначениеОтбора));
|
СсылкаНаЗначение = МенеджерОбъектаОтбора.ПолучитьСсылку(Новый УникальныйИдентификатор(ЗначениеОтбора));
|
||||||
@@ -6243,6 +6243,7 @@
|
|||||||
Отказ = Ложь;
|
Отказ = Ложь;
|
||||||
КоличествоОбъектовОбработано = 0;
|
КоличествоОбъектовОбработано = 0;
|
||||||
|
|
||||||
|
Попытка
|
||||||
ВыполнитьСтандартнуюВыгрузкуИзмененийДляУзла(Отказ,
|
ВыполнитьСтандартнуюВыгрузкуИзмененийДляУзла(Отказ,
|
||||||
СтруктураНастроекОбмена.УзелИнформационнойБазы,
|
СтруктураНастроекОбмена.УзелИнформационнойБазы,
|
||||||
ИмяФайлаСообщенияОбмена,
|
ИмяФайлаСообщенияОбмена,
|
||||||
@@ -6250,6 +6251,15 @@
|
|||||||
СтруктураНастроекОбмена.КоличествоЭлементовВТранзакции,
|
СтруктураНастроекОбмена.КоличествоЭлементовВТранзакции,
|
||||||
СтруктураНастроекОбмена.КлючСообщенияЖурналаРегистрации,
|
СтруктураНастроекОбмена.КлючСообщенияЖурналаРегистрации,
|
||||||
КоличествоОбъектовОбработано);
|
КоличествоОбъектовОбработано);
|
||||||
|
Исключение
|
||||||
|
СтрокаСообщенияОбОшибке = ПодробноеПредставлениеОшибки(ИнформацияОбОшибке());
|
||||||
|
|
||||||
|
ЗаписьЖурналаРегистрации(СтруктураНастроекОбмена.КлючСообщенияЖурналаРегистрации, УровеньЖурналаРегистрации.Ошибка,
|
||||||
|
СтруктураНастроекОбмена.УзелИнформационнойБазы.Метаданные(),
|
||||||
|
СтруктураНастроекОбмена.УзелИнформационнойБазы, СтрокаСообщенияОбОшибке);
|
||||||
|
СтруктураНастроекОбмена.СтрокаСообщенияОбОшибке = СтрокаСообщенияОбОшибке;
|
||||||
|
Отказ = Истина;
|
||||||
|
КонецПопытки;
|
||||||
|
|
||||||
СтруктураНастроекОбмена.КоличествоОбъектовОбработано = КоличествоОбъектовОбработано;
|
СтруктураНастроекОбмена.КоличествоОбъектовОбработано = КоличествоОбъектовОбработано;
|
||||||
|
|
||||||
@@ -6514,63 +6524,104 @@
|
|||||||
КлючСообщенияЖурналаРегистрации = "",
|
КлючСообщенияЖурналаРегистрации = "",
|
||||||
КоличествоОбъектовОбработано = 0)
|
КоличествоОбъектовОбработано = 0)
|
||||||
|
|
||||||
Если ПустаяСтрока(КлючСообщенияЖурналаРегистрации) Тогда
|
|
||||||
КлючСообщенияЖурналаРегистрации = СобытиеЖурналаРегистрацииОбменДанными();
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
НачальнаяВыгрузкаДанных = УстановленПризнакНачальнойВыгрузкиДанных(УзелИнформационнойБазы);
|
|
||||||
|
|
||||||
ЗаписьВФайл = Не ПустаяСтрока(ИмяФайла);
|
|
||||||
|
|
||||||
ЗаписьXML = Новый ЗаписьXML;
|
ЗаписьXML = Новый ЗаписьXML;
|
||||||
|
Если Не ПустаяСтрока(ИмяФайла) Тогда
|
||||||
Если ЗаписьВФайл Тогда
|
|
||||||
|
|
||||||
ЗаписьXML.ОткрытьФайл(ИмяФайла);
|
ЗаписьXML.ОткрытьФайл(ИмяФайла);
|
||||||
Иначе
|
Иначе
|
||||||
|
|
||||||
ЗаписьXML.УстановитьСтроку();
|
ЗаписьXML.УстановитьСтроку();
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
ЗаписьXML.ЗаписатьОбъявлениеXML();
|
ЗаписьXML.ЗаписатьОбъявлениеXML();
|
||||||
|
|
||||||
// Создаем новое сообщение
|
// Создаем новое сообщение.
|
||||||
ЗаписьСообщения = ПланыОбмена.СоздатьЗаписьСообщения();
|
ЗаписьСообщения = ПланыОбмена.СоздатьЗаписьСообщения();
|
||||||
|
|
||||||
ЗаписьСообщения.НачатьЗапись(ЗаписьXML, УзелИнформационнойБазы);
|
ЗаписьСообщения.НачатьЗапись(ЗаписьXML, УзелИнформационнойБазы);
|
||||||
|
|
||||||
// Считаем количество записанных объектов.
|
|
||||||
КоличествоЗаписанныхОбъектов = 0;
|
|
||||||
КоличествоОбъектовОбработано = 0;
|
|
||||||
|
|
||||||
ИспользоватьТранзакции = КоличествоЭлементовВТранзакции <> 1;
|
|
||||||
|
|
||||||
ОбменДаннымиСлужебный.ПроверитьКэшМеханизмаРегистрацииОбъектов();
|
ОбменДаннымиСлужебный.ПроверитьКэшМеханизмаРегистрацииОбъектов();
|
||||||
|
|
||||||
|
ТаблицаПредопределенных = ОбменДаннымиСлужебный.ТаблицаПредопределенныхДанных();
|
||||||
|
ТаблицаПредопределенных.Колонки.Добавить("Выгружать", Новый ОписаниеТипов("Булево"));
|
||||||
|
ТаблицаПредопределенных.Индексы.Добавить("Ссылка");
|
||||||
|
|
||||||
// Получаем выборку измененных данных.
|
// Получаем выборку измененных данных.
|
||||||
ВыборкаИзменений = ВыбратьИзменения(ЗаписьСообщения.Получатель, ЗаписьСообщения.НомерСообщения);
|
ВыборкаИзменений = ВыбратьИзменения(ЗаписьСообщения.Получатель, ЗаписьСообщения.НомерСообщения);
|
||||||
|
|
||||||
Если ИспользоватьТранзакции Тогда
|
Если ПустаяСтрока(КлючСообщенияЖурналаРегистрации) Тогда
|
||||||
НачатьТранзакцию();
|
КлючСообщенияЖурналаРегистрации = СобытиеЖурналаРегистрацииОбменДанными();
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
|
ПолучательОбъект = УзелИнформационнойБазы.ПолучитьОбъект();
|
||||||
|
|
||||||
|
ПараметрыВыгрузки = Новый Структура;
|
||||||
|
ПараметрыВыгрузки.Вставить("ЗаписьXML", ЗаписьXML);
|
||||||
|
ПараметрыВыгрузки.Вставить("Получатель", ПолучательОбъект);
|
||||||
|
ПараметрыВыгрузки.Вставить("НачальнаяВыгрузкаДанных", УстановленПризнакНачальнойВыгрузкиДанных(УзелИнформационнойБазы));
|
||||||
|
ПараметрыВыгрузки.Вставить("КоличествоЭлементовВТранзакции", КоличествоЭлементовВТранзакции);
|
||||||
|
ПараметрыВыгрузки.Вставить("КоличествоОбъектовОбработано", КоличествоОбъектовОбработано);
|
||||||
|
ПараметрыВыгрузки.Вставить("ТаблицаПредопределенных", ТаблицаПредопределенных);
|
||||||
|
|
||||||
|
ИспользоватьТранзакции = КоличествоЭлементовВТранзакции <> 1;
|
||||||
|
|
||||||
|
ПродолжитьВыгрузку = Истина;
|
||||||
|
Если ИспользоватьТранзакции Тогда
|
||||||
|
Пока ПродолжитьВыгрузку Цикл
|
||||||
|
НачатьТранзакцию();
|
||||||
Попытка
|
Попытка
|
||||||
|
ВыполнитьСтандартнуюВыгрузкуПорцииДанных(ВыборкаИзменений, ПараметрыВыгрузки, ПродолжитьВыгрузку);
|
||||||
|
ЗафиксироватьТранзакцию();
|
||||||
|
Исключение
|
||||||
|
ОтменитьТранзакцию();
|
||||||
|
|
||||||
ПолучательОбъект = ЗаписьСообщения.Получатель.ПолучитьОбъект();
|
ЗаписьЖурналаРегистрации(КлючСообщенияЖурналаРегистрации, УровеньЖурналаРегистрации.Ошибка,
|
||||||
|
УзелИнформационнойБазы.Метаданные(), УзелИнформационнойБазы, ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()));
|
||||||
|
Отказ = Истина;
|
||||||
|
Прервать;
|
||||||
|
КонецПопытки;
|
||||||
|
КонецЦикла;
|
||||||
|
Иначе
|
||||||
|
Попытка
|
||||||
|
Пока ПродолжитьВыгрузку Цикл
|
||||||
|
ВыполнитьСтандартнуюВыгрузкуПорцииДанных(ВыборкаИзменений, ПараметрыВыгрузки, ПродолжитьВыгрузку);
|
||||||
|
КонецЦикла;
|
||||||
|
Исключение
|
||||||
|
ЗаписьЖурналаРегистрации(КлючСообщенияЖурналаРегистрации, УровеньЖурналаРегистрации.Ошибка,
|
||||||
|
УзелИнформационнойБазы.Метаданные(), УзелИнформационнойБазы, ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()));
|
||||||
|
Отказ = Истина;
|
||||||
|
КонецПопытки;
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
Пока ВыборкаИзменений.Следующий() Цикл
|
Если Отказ Тогда
|
||||||
|
ЗаписьСообщения.ПрерватьЗапись();
|
||||||
|
ЗаписьXML.Закрыть();
|
||||||
|
Возврат;
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
|
ВыгрузитьТаблицуПредопределенных(ПараметрыВыгрузки);
|
||||||
|
|
||||||
|
ЗаписьСообщения.ЗакончитьЗапись();
|
||||||
|
СообщениеОбмена = ЗаписьXML.Закрыть();
|
||||||
|
|
||||||
|
КоличествоОбъектовОбработано = ПараметрыВыгрузки.КоличествоОбъектовОбработано;
|
||||||
|
|
||||||
|
КонецПроцедуры
|
||||||
|
|
||||||
|
Процедура ВыполнитьСтандартнуюВыгрузкуПорцииДанных(ВыборкаИзменений, ПараметрыВыгрузки, ПродолжитьВыгрузку)
|
||||||
|
|
||||||
|
КоличествоЗаписанных = 0;
|
||||||
|
|
||||||
|
Пока (ПараметрыВыгрузки.КоличествоЭлементовВТранзакции = 0
|
||||||
|
Или КоличествоЗаписанных <= ПараметрыВыгрузки.КоличествоЭлементовВТранзакции)
|
||||||
|
И ВыборкаИзменений.Следующий() Цикл
|
||||||
|
|
||||||
Данные = ВыборкаИзменений.Получить();
|
Данные = ВыборкаИзменений.Получить();
|
||||||
|
|
||||||
КоличествоОбъектовОбработано = КоличествоОбъектовОбработано + 1;
|
|
||||||
|
|
||||||
// Выполняем проверку на то, что объект проходит фильтр ПРО
|
// Выполняем проверку на то, что объект проходит фильтр ПРО
|
||||||
// если объект фильтр ПРО не проходит, то в базу-приемник отсылаем удаление объекта
|
// если объект фильтр ПРО не проходит, то в базу-приемник отсылаем удаление объекта
|
||||||
// для наборов записей выполняем фильтрацию каждой записи
|
// для наборов записей выполняем фильтрацию каждой записи
|
||||||
// наборы выгружаем всегда, даже пустые (аналог удаления объекта).
|
// наборы выгружаем всегда, даже пустые (аналог удаления объекта).
|
||||||
ОтправкаЭлемента = ОтправкаЭлементаДанных.Авто;
|
ОтправкаЭлемента = ОтправкаЭлементаДанных.Авто;
|
||||||
|
|
||||||
СтандартныеПодсистемыСервер.ПриОтправкеДанныхПодчиненному(Данные, ОтправкаЭлемента, НачальнаяВыгрузкаДанных, ПолучательОбъект);
|
СтандартныеПодсистемыСервер.ПриОтправкеДанныхПодчиненному(Данные, ОтправкаЭлемента, ПараметрыВыгрузки.НачальнаяВыгрузкаДанных, ПараметрыВыгрузки.Получатель);
|
||||||
|
|
||||||
Если ОтправкаЭлемента = ОтправкаЭлементаДанных.Удалить Тогда
|
Если ОтправкаЭлемента = ОтправкаЭлементаДанных.Удалить Тогда
|
||||||
|
|
||||||
@@ -6591,54 +6642,51 @@
|
|||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
// Записываем данные в сообщение.
|
// Записываем данные в сообщение.
|
||||||
ЗаписатьXML(ЗаписьXML, Данные);
|
ЗаписатьXML(ПараметрыВыгрузки.ЗаписьXML, Данные);
|
||||||
|
КоличествоЗаписанных = КоличествоЗаписанных + 1;
|
||||||
|
|
||||||
КоличествоЗаписанныхОбъектов = КоличествоЗаписанныхОбъектов + 1;
|
ОбменДаннымиСлужебный.ОтметитьСсылкиНаПредопределенныеДанные(Данные, ПараметрыВыгрузки.ТаблицаПредопределенных);
|
||||||
|
|
||||||
Если ИспользоватьТранзакции
|
|
||||||
И КоличествоЭлементовВТранзакции > 0
|
|
||||||
И КоличествоЗаписанныхОбъектов = КоличествоЭлементовВТранзакции Тогда
|
|
||||||
|
|
||||||
// Промежуточную транзакцию закрываем и открываем новую.
|
|
||||||
ЗафиксироватьТранзакцию();
|
|
||||||
НачатьТранзакцию();
|
|
||||||
|
|
||||||
КоличествоЗаписанныхОбъектов = 0;
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
КонецЦикла;
|
КонецЦикла;
|
||||||
|
|
||||||
// Завершаем запись сообщения
|
ПродолжитьВыгрузку = (КоличествоЗаписанных > 0);
|
||||||
ЗаписьСообщения.ЗакончитьЗапись();
|
|
||||||
|
|
||||||
СообщениеОбмена = ЗаписьXML.Закрыть();
|
ПараметрыВыгрузки.КоличествоОбъектовОбработано = ПараметрыВыгрузки.КоличествоОбъектовОбработано + КоличествоЗаписанных;
|
||||||
|
|
||||||
Если ИспользоватьТранзакции Тогда
|
КонецПроцедуры
|
||||||
|
|
||||||
ЗафиксироватьТранзакцию();
|
Процедура ВыгрузитьТаблицуПредопределенных(ПараметрыВыгрузки)
|
||||||
|
|
||||||
|
ПараметрыВыгрузки.ТаблицаПредопределенных.Сортировать("ИмяТаблицы");
|
||||||
|
|
||||||
|
ЗаписьXML = Новый ЗаписьXML;
|
||||||
|
ЗаписьXML.УстановитьСтроку("UTF-8");
|
||||||
|
|
||||||
|
ЗаписьXML.ЗаписатьНачалоЭлемента("PredefinedData");
|
||||||
|
|
||||||
|
КоличествоВыгружено = 0;
|
||||||
|
|
||||||
|
Для Каждого СтрокаПредопределенных Из ПараметрыВыгрузки.ТаблицаПредопределенных Цикл
|
||||||
|
Если Не СтрокаПредопределенных.Выгружать Тогда
|
||||||
|
Продолжить;
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
Исключение
|
ЗаписьXML.ЗаписатьНачалоЭлемента(СтрокаПредопределенных.ИмяТипаXML);
|
||||||
|
ЗаписьXML.ЗаписатьАтрибут("PredefinedDataName", СтрокаПредопределенных.ИмяПредопределенныхДанных);
|
||||||
|
ЗаписьXML.ЗаписатьТекст(XMLСтрока(СтрокаПредопределенных.Ссылка));
|
||||||
|
ЗаписьXML.ЗаписатьКонецЭлемента();
|
||||||
|
|
||||||
Если ИспользоватьТранзакции Тогда
|
КоличествоВыгружено = КоличествоВыгружено + 1;
|
||||||
|
КонецЦикла;
|
||||||
|
|
||||||
ОтменитьТранзакцию();
|
ЗаписьXML.ЗаписатьКонецЭлемента(); // PredefinedData
|
||||||
|
|
||||||
|
КомментарийПредопределенные = ЗаписьXML.Закрыть();
|
||||||
|
|
||||||
|
Если КоличествоВыгружено > 0 Тогда
|
||||||
|
ПараметрыВыгрузки.ЗаписьXML.ЗаписатьКомментарий(КомментарийПредопределенные);
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
ЗаписьСообщения.ПрерватьЗапись();
|
|
||||||
|
|
||||||
ЗаписьXML.Закрыть();
|
|
||||||
|
|
||||||
Отказ = Истина;
|
|
||||||
|
|
||||||
ЗаписьЖурналаРегистрации(КлючСообщенияЖурналаРегистрации, УровеньЖурналаРегистрации.Ошибка,
|
|
||||||
УзелИнформационнойБазы.Метаданные(), УзелИнформационнойБазы, ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()));
|
|
||||||
//
|
|
||||||
Возврат;
|
|
||||||
КонецПопытки;
|
|
||||||
|
|
||||||
КонецПроцедуры
|
КонецПроцедуры
|
||||||
|
|
||||||
// Процедура чтения изменений из сообщения обмена.
|
// Процедура чтения изменений из сообщения обмена.
|
||||||
@@ -6657,201 +6705,300 @@
|
|||||||
КлючСообщенияЖурналаРегистрации = СобытиеЖурналаРегистрацииОбменДанными();
|
КлючСообщенияЖурналаРегистрации = СобытиеЖурналаРегистрацииОбменДанными();
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
Попытка
|
ПараметрыЗагрузки = Новый Структура;
|
||||||
ЧтениеXML = Новый ЧтениеXML;
|
ПараметрыЗагрузки.Вставить("УзелИнформационнойБазы", УзелИнформационнойБазы);
|
||||||
|
ПараметрыЗагрузки.Вставить("СообщениеОбмена", СообщениеОбмена);
|
||||||
|
ПараметрыЗагрузки.Вставить("ИмяФайла", ИмяФайла);
|
||||||
|
ПараметрыЗагрузки.Вставить("ЧтениеXML", Неопределено);
|
||||||
|
ПараметрыЗагрузки.Вставить("ЧтениеСообщения", Неопределено);
|
||||||
|
|
||||||
Если Не ПустаяСтрока(СообщениеОбмена) Тогда
|
ПараметрыЗагрузки.Вставить("КоличествоЭлементовВТранзакции", КоличествоЭлементовВТранзакции);
|
||||||
ЧтениеXML.УстановитьСтроку(СообщениеОбмена);
|
ПараметрыЗагрузки.Вставить("КоличествоОбъектовОбработано", 0);
|
||||||
|
|
||||||
|
ТаблицаПредопределенных = ОбменДаннымиСлужебный.ТаблицаПредопределенныхДанных();
|
||||||
|
ТаблицаПредопределенных.Колонки.Добавить("ИсходнаяСсылка");
|
||||||
|
ТаблицаПредопределенных.Колонки.Добавить("ИсходнаяСсылкаЗаполнена", Новый ОписаниеТипов("Булево"));
|
||||||
|
|
||||||
|
ПараметрыЗагрузки.Вставить("ТаблицаПредопределенных", ТаблицаПредопределенных);
|
||||||
|
|
||||||
|
СообщениеОбОшибке = "";
|
||||||
|
ЗаполнитьИсходныеСсылкиВТаблицеПредопределенныхДанных(ПараметрыЗагрузки, СообщениеОбОшибке);
|
||||||
|
|
||||||
|
ПараметрыЗагрузки.ТаблицаПредопределенных = ТаблицаПредопределенных.Скопировать(Новый Структура("ИсходнаяСсылкаЗаполнена", Истина));
|
||||||
|
ПараметрыЗагрузки.ТаблицаПредопределенных.Индексы.Добавить("ИсходнаяСсылка");
|
||||||
|
ТаблицаПредопределенных = Неопределено;
|
||||||
|
|
||||||
|
Если Не ПустаяСтрока(СообщениеОбОшибке) Тогда
|
||||||
|
ЗаписьЖурналаРегистрации(КлючСообщенияЖурналаРегистрации, УровеньЖурналаРегистрации.Предупреждение,
|
||||||
|
УзелИнформационнойБазы.Метаданные(), УзелИнформационнойБазы, СообщениеОбОшибке);
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
|
ИнициализироватьЧтениеСообщенияДляСтандартнойЗагрузки(ПараметрыЗагрузки, РезультатВыполненияОбмена, СообщениеОбОшибке);
|
||||||
|
|
||||||
|
Если РезультатВыполненияОбмена = Перечисления.РезультатыВыполненияОбмена.Ошибка Тогда
|
||||||
|
ЗаписьЖурналаРегистрации(КлючСообщенияЖурналаРегистрации, УровеньЖурналаРегистрации.Ошибка,
|
||||||
|
УзелИнформационнойБазы.Метаданные(), УзелИнформационнойБазы, СообщениеОбОшибке);
|
||||||
|
Возврат;
|
||||||
|
ИначеЕсли РезультатВыполненияОбмена = Перечисления.РезультатыВыполненияОбмена.Предупреждение_СообщениеОбменаБылоРанееПринято Тогда
|
||||||
|
ЗаписьЖурналаРегистрации(КлючСообщенияЖурналаРегистрации, УровеньЖурналаРегистрации.Предупреждение,
|
||||||
|
УзелИнформационнойБазы.Метаданные(), УзелИнформационнойБазы, СообщениеОбОшибке);
|
||||||
|
Возврат;
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
|
ЧтениеXML = ПараметрыЗагрузки.ЧтениеXML;
|
||||||
|
ЧтениеСообщения = ПараметрыЗагрузки.ЧтениеСообщения;
|
||||||
|
|
||||||
|
ПараметрыРезервнойКопии = ПараметрыРезервнойКопии(ЧтениеСообщения.Отправитель, ЧтениеСообщения.НомерПринятого);
|
||||||
|
|
||||||
|
// Удаление регистрации изменений для узла отправителя сообщения.
|
||||||
|
Если Не ПараметрыРезервнойКопии.ВосстановленаРезервнаяКопия Тогда
|
||||||
|
ПланыОбмена.УдалитьРегистрациюИзменений(ЧтениеСообщения.Отправитель, ЧтениеСообщения.НомерПринятого);
|
||||||
|
РегистрыСведений.ОбщиеНастройкиУзловИнформационныхБаз.СнятьПризнакНачальнойВыгрузкиДанных(
|
||||||
|
ЧтениеСообщения.Отправитель, ЧтениеСообщения.НомерПринятого);
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
|
ИспользоватьТранзакции = КоличествоЭлементовВТранзакции <> 1;
|
||||||
|
|
||||||
|
ПродолжитьЗагрузку = Истина;
|
||||||
|
Если ИспользоватьТранзакции Тогда
|
||||||
|
Пока ПродолжитьЗагрузку Цикл
|
||||||
|
ОбменДаннымиСлужебный.ОтключитьОбновлениеКлючейДоступа(Истина);
|
||||||
|
НачатьТранзакцию();
|
||||||
|
Попытка
|
||||||
|
ВыполнитьСтандартнуюЗагрузкуПорцииДанных(ПараметрыЗагрузки, ПродолжитьЗагрузку);
|
||||||
|
ОбменДаннымиСлужебный.ОтключитьОбновлениеКлючейДоступа(Ложь);
|
||||||
|
ЗафиксироватьТранзакцию();
|
||||||
|
Исключение
|
||||||
|
ОтменитьТранзакцию();
|
||||||
|
ОбменДаннымиСлужебный.ОтключитьОбновлениеКлючейДоступа(Ложь, Ложь);
|
||||||
|
|
||||||
|
РезультатВыполненияОбмена = Перечисления.РезультатыВыполненияОбмена.Ошибка;
|
||||||
|
ЗаписьЖурналаРегистрации(КлючСообщенияЖурналаРегистрации, УровеньЖурналаРегистрации.Ошибка,
|
||||||
|
УзелИнформационнойБазы.Метаданные(), УзелИнформационнойБазы, ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()));
|
||||||
|
Прервать;
|
||||||
|
КонецПопытки;
|
||||||
|
КонецЦикла;
|
||||||
Иначе
|
Иначе
|
||||||
ЧтениеXML.ОткрытьФайл(ИмяФайла);
|
ОбменДаннымиСлужебный.ОтключитьОбновлениеКлючейДоступа(Истина);
|
||||||
|
Попытка
|
||||||
|
Пока ПродолжитьЗагрузку Цикл
|
||||||
|
ВыполнитьСтандартнуюЗагрузкуПорцииДанных(ПараметрыЗагрузки, ПродолжитьЗагрузку);
|
||||||
|
КонецЦикла;
|
||||||
|
ОбменДаннымиСлужебный.ОтключитьОбновлениеКлючейДоступа(Ложь);
|
||||||
|
Исключение
|
||||||
|
ОбменДаннымиСлужебный.ОтключитьОбновлениеКлючейДоступа(Ложь);
|
||||||
|
РезультатВыполненияОбмена = Перечисления.РезультатыВыполненияОбмена.Ошибка;
|
||||||
|
ЗаписьЖурналаРегистрации(КлючСообщенияЖурналаРегистрации, УровеньЖурналаРегистрации.Ошибка,
|
||||||
|
УзелИнформационнойБазы.Метаданные(), УзелИнформационнойБазы, ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()));
|
||||||
|
КонецПопытки;
|
||||||
|
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
|
Если РезультатВыполненияОбмена = Перечисления.РезультатыВыполненияОбмена.Ошибка Тогда
|
||||||
|
ЧтениеСообщения.ПрерватьЧтение();
|
||||||
|
Иначе
|
||||||
|
// Пропуск всех не стандартных элементов в теле сообщения.
|
||||||
|
ТекущееИмяУзла = "";
|
||||||
|
Пока ЧтениеСообщения.ЧтениеXML.ТипУзла = ТипУзлаXML.НачалоЭлемента
|
||||||
|
Или (ЧтениеСообщения.ЧтениеXML.ТипУзла = ТипУзлаXML.КонецЭлемента
|
||||||
|
И ЧтениеСообщения.ЧтениеXML.Имя = ТекущееИмяУзла) Цикл
|
||||||
|
ТекущееИмяУзла = ЧтениеСообщения.ЧтениеXML.Имя;
|
||||||
|
ЧтениеСообщения.ЧтениеXML.Пропустить();
|
||||||
|
КонецЦикла;
|
||||||
|
|
||||||
|
Попытка
|
||||||
|
ЧтениеСообщения.ЗакончитьЧтение();
|
||||||
|
ПриВосстановленииРезервнойКопии(ПараметрыРезервнойКопии);
|
||||||
|
Исключение
|
||||||
|
РезультатВыполненияОбмена = Перечисления.РезультатыВыполненияОбмена.Ошибка;
|
||||||
|
ЗаписьЖурналаРегистрации(КлючСообщенияЖурналаРегистрации, УровеньЖурналаРегистрации.Ошибка,
|
||||||
|
УзелИнформационнойБазы.Метаданные(), УзелИнформационнойБазы, ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()));
|
||||||
|
КонецПопытки;
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
|
ЧтениеXML.Закрыть();
|
||||||
|
|
||||||
|
КоличествоОбъектовОбработано = ПараметрыЗагрузки.КоличествоОбъектовОбработано;
|
||||||
|
|
||||||
|
КонецПроцедуры
|
||||||
|
|
||||||
|
Процедура ЗаполнитьИсходныеСсылкиВТаблицеПредопределенныхДанных(ПараметрыЗагрузки, СообщениеОбОшибке)
|
||||||
|
|
||||||
|
ЧтениеXML = Новый ЧтениеXML;
|
||||||
|
ПараметрыЧтения = Новый ПараметрыЧтенияXML(, , , , , , , Ложь); // чтение с учетом комментариев
|
||||||
|
Попытка
|
||||||
|
Если Не ПустаяСтрока(ПараметрыЗагрузки.СообщениеОбмена) Тогда
|
||||||
|
ЧтениеXML.УстановитьСтроку(ПараметрыЗагрузки.СообщениеОбмена, ПараметрыЧтения);
|
||||||
|
Иначе
|
||||||
|
ЧтениеXML.ОткрытьФайл(ПараметрыЗагрузки.ИмяФайла, ПараметрыЧтения);
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
|
ЭтоBody = Ложь;
|
||||||
|
Пока ЧтениеXML.Прочитать() Цикл
|
||||||
|
Если ЧтениеXML.ТипУзла = ТипУзлаXML.НачалоЭлемента Тогда
|
||||||
|
Если ЧтениеXML.ЛокальноеИмя = "Message" Тогда
|
||||||
|
Продолжить;
|
||||||
|
ИначеЕсли ЧтениеXML.ЛокальноеИмя = "Header" Тогда
|
||||||
|
ЧтениеXML.Пропустить();
|
||||||
|
ИначеЕсли ЧтениеXML.ЛокальноеИмя = "Body" Тогда
|
||||||
|
ЭтоBody = Истина;
|
||||||
|
Продолжить;
|
||||||
|
ИначеЕсли ЭтоBody И ВозможностьЧтенияXML(ЧтениеXML) Тогда
|
||||||
|
ЧтениеXML.Пропустить();
|
||||||
|
ИначеЕсли ЭтоBody И ЧтениеXML.ЛокальноеИмя = "PredefinedData" Тогда
|
||||||
|
ОбработатьСекциюПредопределенныхДанныхВСообщенииОбмена(
|
||||||
|
ЧтениеXML, ПараметрыЗагрузки.ТаблицаПредопределенных);
|
||||||
|
КонецЕсли;
|
||||||
|
ИначеЕсли ЧтениеXML.ТипУзла = ТипУзлаXML.КонецЭлемента Тогда
|
||||||
|
Если ЧтениеXML.ЛокальноеИмя = "Message" Тогда
|
||||||
|
Прервать;
|
||||||
|
ИначеЕсли ЧтениеXML.ЛокальноеИмя = "Header" Тогда
|
||||||
|
Продолжить;
|
||||||
|
ИначеЕсли ЧтениеXML.ЛокальноеИмя = "Body" Тогда
|
||||||
|
Прервать;
|
||||||
|
КонецЕсли;
|
||||||
|
ИначеЕсли ЭтоBody И ЧтениеXML.ТипУзла = ТипУзлаXML.Комментарий Тогда
|
||||||
|
ЧтениеXMLКомментарий = Новый ЧтениеXML;
|
||||||
|
ЧтениеXMLКомментарий.УстановитьСтроку(ЧтениеXML.Значение);
|
||||||
|
ЧтениеXMLКомментарий.Прочитать(); // PredefinedData - НачалоЭлемента
|
||||||
|
|
||||||
|
ОбработатьСекциюПредопределенныхДанныхВСообщенииОбмена(
|
||||||
|
ЧтениеXMLКомментарий, ПараметрыЗагрузки.ТаблицаПредопределенных);
|
||||||
|
|
||||||
|
ЧтениеXMLКомментарий.Закрыть();
|
||||||
|
КонецЕсли;
|
||||||
|
КонецЦикла;
|
||||||
|
Исключение
|
||||||
|
СообщениеОбОшибке = ПодробноеПредставлениеОшибки(ИнформацияОбОшибке());
|
||||||
|
КонецПопытки;
|
||||||
|
|
||||||
|
ЧтениеXML.Закрыть();
|
||||||
|
|
||||||
|
КонецПроцедуры
|
||||||
|
|
||||||
|
Процедура ИнициализироватьЧтениеСообщенияДляСтандартнойЗагрузки(ПараметрыЗагрузки, РезультатВыполненияОбмена, СообщениеОбОшибке)
|
||||||
|
|
||||||
|
ЧтениеXML = Новый ЧтениеXML;
|
||||||
|
Попытка
|
||||||
|
Если Не ПустаяСтрока(ПараметрыЗагрузки.СообщениеОбмена) Тогда
|
||||||
|
ЧтениеXML.УстановитьСтроку(ПараметрыЗагрузки.СообщениеОбмена);
|
||||||
|
Иначе
|
||||||
|
ЧтениеXML.ОткрытьФайл(ПараметрыЗагрузки.ИмяФайла);
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
ЧтениеСообщения = ПланыОбмена.СоздатьЧтениеСообщения();
|
ЧтениеСообщения = ПланыОбмена.СоздатьЧтениеСообщения();
|
||||||
ЧтениеСообщения.НачатьЧтение(ЧтениеXML, ДопустимыйНомерСообщения.Больший);
|
ЧтениеСообщения.НачатьЧтение(ЧтениеXML, ДопустимыйНомерСообщения.Больший);
|
||||||
Исключение
|
Исключение
|
||||||
|
|
||||||
ИнформацияОбОшибке = ИнформацияОбОшибке();
|
ИнформацияОбОшибке = ИнформацияОбОшибке();
|
||||||
|
|
||||||
Если ЭтоОшибкаНомерСообщенияМеньшеИлиРавенНомеруРанееПринятогоСообщения(КраткоеПредставлениеОшибки(ИнформацияОбОшибке)) Тогда
|
КраткаяИнформация = КраткоеПредставлениеОшибки(ИнформацияОбОшибке);
|
||||||
|
ПодробнаяИнформация = ПодробноеПредставлениеОшибки(ИнформацияОбОшибке);
|
||||||
|
|
||||||
|
Если ЭтоОшибкаНомерСообщенияМеньшеИлиРавенНомеруРанееПринятогоСообщения(КраткаяИнформация) Тогда
|
||||||
РезультатВыполненияОбмена = Перечисления.РезультатыВыполненияОбмена.Предупреждение_СообщениеОбменаБылоРанееПринято;
|
РезультатВыполненияОбмена = Перечисления.РезультатыВыполненияОбмена.Предупреждение_СообщениеОбменаБылоРанееПринято;
|
||||||
|
СообщениеОбОшибке = КраткаяИнформация;
|
||||||
ЗаписьЖурналаРегистрации(КлючСообщенияЖурналаРегистрации, УровеньЖурналаРегистрации.Предупреждение,
|
|
||||||
УзелИнформационнойБазы.Метаданные(), УзелИнформационнойБазы, КраткоеПредставлениеОшибки(ИнформацияОбОшибке));
|
|
||||||
//
|
|
||||||
Иначе
|
Иначе
|
||||||
|
|
||||||
РезультатВыполненияОбмена = Перечисления.РезультатыВыполненияОбмена.Ошибка;
|
РезультатВыполненияОбмена = Перечисления.РезультатыВыполненияОбмена.Ошибка;
|
||||||
|
СообщениеОбОшибке = ПодробнаяИнформация;
|
||||||
ЗаписьЖурналаРегистрации(КлючСообщенияЖурналаРегистрации, УровеньЖурналаРегистрации.Ошибка,
|
|
||||||
УзелИнформационнойБазы.Метаданные(), УзелИнформационнойБазы, ПодробноеПредставлениеОшибки(ИнформацияОбОшибке));
|
|
||||||
//
|
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
Возврат;
|
Возврат;
|
||||||
КонецПопытки;
|
КонецПопытки;
|
||||||
|
|
||||||
Если ЧтениеСообщения.Отправитель <> УзелИнформационнойБазы Тогда // Сообщение предназначено не для этого узла.
|
Если ЧтениеСообщения.Отправитель <> ПараметрыЗагрузки.УзелИнформационнойБазы Тогда
|
||||||
|
// Сообщение предназначено не для этого узла.
|
||||||
РезультатВыполненияОбмена = Перечисления.РезультатыВыполненияОбмена.Ошибка;
|
РезультатВыполненияОбмена = Перечисления.РезультатыВыполненияОбмена.Ошибка;
|
||||||
|
|
||||||
ЗаписьЖурналаРегистрации(КлючСообщенияЖурналаРегистрации, УровеньЖурналаРегистрации.Ошибка,
|
СообщениеОбОшибке = НСтр("ru = 'Сообщение обмена содержит данные для другого узла информационной базы.'",
|
||||||
УзелИнформационнойБазы.Метаданные(), УзелИнформационнойБазы, НСтр("ru = 'Сообщение обмена содержит данные для другого узла информационной базы.'",
|
ОбщегоНазначения.КодОсновногоЯзыка());
|
||||||
ОбщегоНазначения.КодОсновногоЯзыка()));
|
|
||||||
//
|
|
||||||
Возврат;
|
Возврат;
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
ПараметрыРезервнойКопии = ПараметрыРезервнойКопии(ЧтениеСообщения.Отправитель, ЧтениеСообщения.НомерПринятого);
|
ПараметрыЗагрузки.ЧтениеXML = ЧтениеXML;
|
||||||
|
ПараметрыЗагрузки.ЧтениеСообщения = ЧтениеСообщения;
|
||||||
|
|
||||||
УдалитьРегистрациюИзменений = Не ПараметрыРезервнойКопии.ВосстановленаРезервнаяКопия;
|
КонецПроцедуры
|
||||||
|
|
||||||
Если УдалитьРегистрациюИзменений Тогда
|
Процедура ВыполнитьСтандартнуюЗагрузкуПорцииДанных(ПараметрыЗагрузки, ПродолжитьЗагрузку)
|
||||||
|
|
||||||
// Удаляем регистрацию изменений для узла отправителя сообщения.
|
ЧтениеXML = ПараметрыЗагрузки.ЧтениеXML;
|
||||||
ПланыОбмена.УдалитьРегистрациюИзменений(ЧтениеСообщения.Отправитель, ЧтениеСообщения.НомерПринятого);
|
ЧтениеСообщения = ПараметрыЗагрузки.ЧтениеСообщения;
|
||||||
|
|
||||||
РегистрыСведений.ОбщиеНастройкиУзловИнформационныхБаз.СнятьПризнакНачальнойВыгрузкиДанных(ЧтениеСообщения.Отправитель, ЧтениеСообщения.НомерПринятого);
|
КоличествоЗаписанных = 0;
|
||||||
|
|
||||||
КонецЕсли;
|
Пока (ПараметрыЗагрузки.КоличествоЭлементовВТранзакции = 0
|
||||||
|
Или КоличествоЗаписанных <= ПараметрыЗагрузки.КоличествоЭлементовВТранзакции)
|
||||||
|
И ВозможностьЧтенияXML(ЧтениеXML) Цикл
|
||||||
|
|
||||||
// Считаем сколько объектов прочитали.
|
|
||||||
КоличествоЗаписанныхОбъектов = 0;
|
|
||||||
КоличествоОбъектовОбработано = 0;
|
|
||||||
|
|
||||||
ИспользоватьТранзакции = КоличествоЭлементовВТранзакции <> 1;
|
|
||||||
|
|
||||||
// Если используются транзакции, открываем новую
|
|
||||||
|
|
||||||
ОбменДаннымиСлужебный.ОтключитьОбновлениеКлючейДоступа(Истина, Не ПараметрыРезервнойКопии.ВосстановленаРезервнаяКопия);
|
|
||||||
Если ИспользоватьТранзакции Тогда
|
|
||||||
НачатьТранзакцию();
|
|
||||||
КонецЕсли;
|
|
||||||
Попытка
|
|
||||||
|
|
||||||
// Читаем данные из сообщения
|
|
||||||
Пока ВозможностьЧтенияXML(ЧтениеXML) Цикл
|
|
||||||
|
|
||||||
// Читаем очередное значение
|
|
||||||
Данные = ПрочитатьXML(ЧтениеXML);
|
Данные = ПрочитатьXML(ЧтениеXML);
|
||||||
|
|
||||||
ПолучениеЭлемента = ПолучениеЭлементаДанных.Авто;
|
ПолучениеЭлемента = ПолучениеЭлементаДанных.Авто;
|
||||||
ОтправкаНазад = Ложь;
|
ОтправкаНазад = Ложь;
|
||||||
|
|
||||||
СтандартныеПодсистемыСервер.ПриПолученииДанныхОтГлавного(Данные,
|
СтандартныеПодсистемыСервер.ПриПолученииДанныхОтГлавного(
|
||||||
ПолучениеЭлемента, ОтправкаНазад, ЧтениеСообщения.Отправитель.ПолучитьОбъект());
|
Данные, ПолучениеЭлемента, ОтправкаНазад, ЧтениеСообщения.Отправитель.ПолучитьОбъект());
|
||||||
|
|
||||||
|
ПараметрыЗагрузки.КоличествоОбъектовОбработано = ПараметрыЗагрузки.КоличествоОбъектовОбработано + 1;
|
||||||
|
|
||||||
Если ПолучениеЭлемента = ПолучениеЭлементаДанных.Игнорировать Тогда
|
Если ПолучениеЭлемента = ПолучениеЭлементаДанных.Игнорировать Тогда
|
||||||
Продолжить;
|
Продолжить;
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
ЭтоУдалениеОбъекта = (ТипЗнч(Данные) = Тип("УдалениеОбъекта"));
|
|
||||||
|
|
||||||
КоличествоОбъектовОбработано = КоличествоОбъектовОбработано + 1;
|
|
||||||
|
|
||||||
Если Не ОтправкаНазад Тогда
|
|
||||||
Данные.ОбменДанными.Отправитель = ЧтениеСообщения.Отправитель;
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
Данные.ОбменДанными.Загрузка = Истина;
|
|
||||||
|
|
||||||
// Переопределяем стандартное поведение системы при получении удаления объекта.
|
// Переопределяем стандартное поведение системы при получении удаления объекта.
|
||||||
// Вместо физического удаления объекта без контроля ссылочной целостности
|
// Вместо физического удаления объекта без контроля ссылочной целостности
|
||||||
// выполняем установку пометки на удаление.
|
// выполняем установку пометки на удаление.
|
||||||
Если ЭтоУдалениеОбъекта Тогда
|
Если ТипЗнч(Данные) = Тип("УдалениеОбъекта") Тогда
|
||||||
|
|
||||||
УдалениеОбъекта = Данные;
|
|
||||||
|
|
||||||
Данные = Данные.Ссылка.ПолучитьОбъект();
|
Данные = Данные.Ссылка.ПолучитьОбъект();
|
||||||
|
|
||||||
Если Данные = Неопределено Тогда
|
Если Данные = Неопределено Тогда
|
||||||
|
|
||||||
Продолжить;
|
Продолжить;
|
||||||
|
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
Если Не ОтправкаНазад Тогда
|
|
||||||
Данные.ОбменДанными.Отправитель = ЧтениеСообщения.Отправитель;
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
Данные.ОбменДанными.Загрузка = Истина;
|
|
||||||
|
|
||||||
Данные.ПометкаУдаления = Истина;
|
Данные.ПометкаУдаления = Истина;
|
||||||
|
|
||||||
Если ОбщегоНазначения.ЭтоДокумент(Данные.Метаданные()) Тогда
|
Если ОбщегоНазначения.ЭтоДокумент(Данные.Метаданные()) Тогда
|
||||||
|
|
||||||
Данные.Проведен = Ложь;
|
Данные.Проведен = Ложь;
|
||||||
|
КонецЕсли;
|
||||||
|
Иначе
|
||||||
|
ОбменДаннымиСлужебный.ЗаменитьСсылкиНаПредопределенныеЭлементы(Данные, ПараметрыЗагрузки.ТаблицаПредопределенных);
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
|
Если Не ОтправкаНазад Тогда
|
||||||
|
Данные.ОбменДанными.Отправитель = ЧтениеСообщения.Отправитель;
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
Данные.ОбменДанными.Загрузка = Истина;
|
||||||
|
|
||||||
Если ЭтоУдалениеОбъекта Тогда
|
|
||||||
|
|
||||||
Данные = УдалениеОбъекта;
|
|
||||||
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
// Выполняем попытку записи объекта.
|
|
||||||
Попытка
|
|
||||||
Данные.Записать();
|
Данные.Записать();
|
||||||
Исключение
|
|
||||||
|
|
||||||
РезультатВыполненияОбмена = Перечисления.РезультатыВыполненияОбмена.Ошибка;
|
КоличествоЗаписанных = КоличествоЗаписанных + 1;
|
||||||
|
|
||||||
ОписаниеОшибки = ПодробноеПредставлениеОшибки(ИнформацияОбОшибке());
|
|
||||||
|
|
||||||
ЗаписьЖурналаРегистрации(КлючСообщенияЖурналаРегистрации, УровеньЖурналаРегистрации.Ошибка,
|
|
||||||
Данные.Метаданные(), Строка(Данные), ОписаниеОшибки);
|
|
||||||
//
|
|
||||||
Прервать;
|
|
||||||
КонецПопытки;
|
|
||||||
|
|
||||||
КоличествоЗаписанныхОбъектов = КоличествоЗаписанныхОбъектов + 1;
|
|
||||||
|
|
||||||
Если ИспользоватьТранзакции
|
|
||||||
И КоличествоЭлементовВТранзакции > 0
|
|
||||||
И КоличествоЗаписанныхОбъектов = КоличествоЭлементовВТранзакции Тогда
|
|
||||||
|
|
||||||
// Промежуточную транзакцию закрываем и открываем новую.
|
|
||||||
ЗафиксироватьТранзакцию();
|
|
||||||
НачатьТранзакцию();
|
|
||||||
|
|
||||||
КоличествоЗаписанныхОбъектов = 0;
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
КонецЦикла;
|
КонецЦикла;
|
||||||
|
|
||||||
Если РезультатВыполненияОбмена = Перечисления.РезультатыВыполненияОбмена.Ошибка Тогда
|
ПродолжитьЗагрузку = (КоличествоЗаписанных > 0);
|
||||||
ВызватьИсключение(НСтр("ru = 'В процессе получения данных возникли ошибки.'"));
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
ОбменДаннымиСлужебный.ОтключитьОбновлениеКлючейДоступа(Ложь, Не ПараметрыРезервнойКопии.ВосстановленаРезервнаяКопия);
|
КонецПроцедуры
|
||||||
Если ИспользоватьТранзакции Тогда
|
|
||||||
ЗафиксироватьТранзакцию();
|
|
||||||
КонецЕсли;
|
|
||||||
Исключение
|
|
||||||
Если ИспользоватьТранзакции Тогда
|
|
||||||
ОтменитьТранзакцию();
|
|
||||||
ОбменДаннымиСлужебный.ОтключитьОбновлениеКлючейДоступа(Ложь, Ложь);
|
|
||||||
Иначе
|
|
||||||
ОбменДаннымиСлужебный.ОтключитьОбновлениеКлючейДоступа(Ложь, Не ПараметрыРезервнойКопии.ВосстановленаРезервнаяКопия);
|
|
||||||
КонецЕсли;
|
|
||||||
РезультатВыполненияОбмена = Перечисления.РезультатыВыполненияОбмена.Ошибка;
|
|
||||||
ЗаписьЖурналаРегистрации(КлючСообщенияЖурналаРегистрации, УровеньЖурналаРегистрации.Ошибка,
|
|
||||||
УзелИнформационнойБазы.Метаданные(), УзелИнформационнойБазы, ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()));
|
|
||||||
|
|
||||||
КонецПопытки;
|
Процедура ОбработатьСекциюПредопределенныхДанныхВСообщенииОбмена(ЧтениеXML, ТаблицаПредопределенных)
|
||||||
|
|
||||||
|
Если ЧтениеXML.ТипУзла = ТипУзлаXML.НачалоЭлемента
|
||||||
|
И ЧтениеXML.ЛокальноеИмя = "PredefinedData" Тогда
|
||||||
|
|
||||||
|
ЧтениеXML.Прочитать();
|
||||||
|
Пока ВозможностьЧтенияXML(ЧтениеXML) Цикл
|
||||||
|
ИмяТипаXML = ЧтениеXML.ЛокальноеИмя;
|
||||||
|
ИмяПредопределенных = ЧтениеXML.ПолучитьАтрибут("PredefinedDataName");
|
||||||
|
ИсходнаяСсылка = ПрочитатьXML(ЧтениеXML);
|
||||||
|
|
||||||
|
СтрокиПредопределенные = ТаблицаПредопределенных.НайтиСтроки(
|
||||||
|
Новый Структура("ИмяТипаXML, ИмяПредопределенныхДанных", ИмяТипаXML, ИмяПредопределенных));
|
||||||
|
Для Каждого СтрокаПредопределенные Из СтрокиПредопределенные Цикл
|
||||||
|
СтрокаПредопределенные.ИсходнаяСсылка = ИсходнаяСсылка;
|
||||||
|
СтрокаПредопределенные.ИсходнаяСсылкаЗаполнена = Истина;
|
||||||
|
КонецЦикла;
|
||||||
|
КонецЦикла;
|
||||||
|
|
||||||
Если РезультатВыполненияОбмена = Перечисления.РезультатыВыполненияОбмена.Ошибка Тогда
|
|
||||||
ЧтениеСообщения.ПрерватьЧтение();
|
|
||||||
Иначе
|
|
||||||
ЧтениеСообщения.ЗакончитьЧтение();
|
|
||||||
ПриВосстановленииРезервнойКопии(ПараметрыРезервнойКопии);
|
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
ЧтениеXML.Закрыть();
|
|
||||||
|
|
||||||
КонецПроцедуры
|
КонецПроцедуры
|
||||||
|
|
||||||
#КонецОбласти
|
#КонецОбласти
|
||||||
@@ -9439,13 +9586,14 @@
|
|||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
|
ИмяФайлаСообщения = ИмяФайлаСообщенияОбмена(КодОтправителя, КодПолучателя, ЭтоИсходящееСообщение);
|
||||||
|
|
||||||
// Учитываем настройку транслитерации для узла плана обмена.
|
// Учитываем настройку транслитерации для узла плана обмена.
|
||||||
Если Транслитерация Тогда
|
Если Транслитерация Тогда
|
||||||
КодОтправителя = СтроковыеФункцииКлиентСервер.СтрокаЛатиницей(КодОтправителя);
|
ИмяФайлаСообщения = СтроковыеФункцииКлиентСервер.СтрокаЛатиницей(ИмяФайлаСообщения);
|
||||||
КодПолучателя = СтроковыеФункцииКлиентСервер.СтрокаЛатиницей(КодПолучателя);
|
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
Возврат ИмяФайлаСообщенияОбмена(КодОтправителя, КодПолучателя, ЭтоИсходящееСообщение);
|
Возврат ИмяФайлаСообщения;
|
||||||
|
|
||||||
КонецФункции
|
КонецФункции
|
||||||
|
|
||||||
@@ -12075,7 +12223,6 @@
|
|||||||
ДополнительныеПараметры);
|
ДополнительныеПараметры);
|
||||||
|
|
||||||
Если Прокси = Неопределено Тогда
|
Если Прокси = Неопределено Тогда
|
||||||
ЗаписьЖурналаРегистрацииОбменаДанными(СтрокаСообщенияОбОшибке, СтруктураНастроек, Истина);
|
|
||||||
Отказ = Истина;
|
Отказ = Истина;
|
||||||
Возврат;
|
Возврат;
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
@@ -12098,7 +12245,7 @@
|
|||||||
Если СостояниеНастройки.НастройкаСуществует Тогда
|
Если СостояниеНастройки.НастройкаСуществует Тогда
|
||||||
СтруктураНастроек.ТекущийУзелПланаОбменаКод = ПсевдонимУзла;
|
СтруктураНастроек.ТекущийУзелПланаОбменаКод = ПсевдонимУзла;
|
||||||
Возврат;
|
Возврат;
|
||||||
ИначеЕсли СтруктураНастроек.ДействиеПриОбмене = Перечисления.ДействияПриОбмене.ВыгрузкаДанных Тогда
|
Иначе
|
||||||
// Проверка возможности выполнения перехода.
|
// Проверка возможности выполнения перехода.
|
||||||
Для Каждого ВариантНастройки Из УстаревшиеВариантыНастроекОбмена(СтруктураНастроек.УзелИнформационнойБазы) Цикл
|
Для Каждого ВариантНастройки Из УстаревшиеВариантыНастроекОбмена(СтруктураНастроек.УзелИнформационнойБазы) Цикл
|
||||||
СостояниеНастройки = СостояниеНастройкиСинхронизацииВКорреспонденте(
|
СостояниеНастройки = СостояниеНастройкиСинхронизацииВКорреспонденте(
|
||||||
@@ -12107,8 +12254,18 @@
|
|||||||
ВариантНастройки.ИмяПланаОбмена,
|
ВариантНастройки.ИмяПланаОбмена,
|
||||||
ПсевдонимУзла);
|
ПсевдонимУзла);
|
||||||
Если СостояниеНастройки.НастройкаСуществует Тогда
|
Если СостояниеНастройки.НастройкаСуществует Тогда
|
||||||
|
Если СтруктураНастроек.ДействиеПриОбмене = Перечисления.ДействияПриОбмене.ВыгрузкаДанных Тогда
|
||||||
СтруктураНастроек.ИмяПланаОбмена = ВариантНастройки.ИмяПланаОбмена;
|
СтруктураНастроек.ИмяПланаОбмена = ВариантНастройки.ИмяПланаОбмена;
|
||||||
СтруктураНастроек.ТекущийУзелПланаОбменаКод = ПсевдонимУзла;
|
СтруктураНастроек.ТекущийУзелПланаОбменаКод = ПсевдонимУзла;
|
||||||
|
Иначе
|
||||||
|
// В этой ИБ выполнен переход на новый план обмена, в корреспонденте еще не выполнен.
|
||||||
|
// Получение данных необходимо отменить.
|
||||||
|
СтрокаСообщенияОбОшибке = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
|
||||||
|
НСтр("ru = 'В программе ""%1"" выполняется обновление настроек синхронизации.
|
||||||
|
|Загрузка данных отменена. Необходимо запустить синхронизацию данных повторно.'"),
|
||||||
|
ОбщегоНазначения.ЗначениеРеквизитаОбъекта(СтруктураНастроек.УзелИнформационнойБазы, "Наименование"));
|
||||||
|
Отказ = Истина;
|
||||||
|
КонецЕсли;
|
||||||
Возврат;
|
Возврат;
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
КонецЦикла;
|
КонецЦикла;
|
||||||
@@ -12149,7 +12306,6 @@
|
|||||||
НСтр("ru = 'Не найдена настройка синхронизации данных ""%1"" с идентификатором ""%2"".'"),
|
НСтр("ru = 'Не найдена настройка синхронизации данных ""%1"" с идентификатором ""%2"".'"),
|
||||||
СтруктураНастроек.ИмяПланаОбмена,
|
СтруктураНастроек.ИмяПланаОбмена,
|
||||||
СтруктураНастроек.ТекущийУзелПланаОбменаКод);
|
СтруктураНастроек.ТекущийУзелПланаОбменаКод);
|
||||||
ЗаписьЖурналаРегистрацииОбменаДанными(СтрокаСообщенияОбОшибке, СтруктураНастроек, Истина);
|
|
||||||
Отказ = Истина;
|
Отказ = Истина;
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
|
|||||||
@@ -742,6 +742,172 @@
|
|||||||
|
|
||||||
КонецПроцедуры
|
КонецПроцедуры
|
||||||
|
|
||||||
|
#Область ВыполнениеОбменаМетодамиСериализации
|
||||||
|
|
||||||
|
Функция ТаблицаПредопределенныхДанных() Экспорт
|
||||||
|
|
||||||
|
ТаблицаПредопределенных = Новый ТаблицаЗначений;
|
||||||
|
ТаблицаПредопределенных.Колонки.Добавить("ИмяТаблицы");
|
||||||
|
ТаблицаПредопределенных.Колонки.Добавить("ИмяТипаXML");
|
||||||
|
ТаблицаПредопределенных.Колонки.Добавить("Ссылка");
|
||||||
|
ТаблицаПредопределенных.Колонки.Добавить("ИмяПредопределенныхДанных");
|
||||||
|
|
||||||
|
ВидыМетаданных = Новый Массив;
|
||||||
|
ВидыМетаданных.Добавить(Метаданные.Справочники);
|
||||||
|
ВидыМетаданных.Добавить(Метаданные.ПланыВидовРасчета);
|
||||||
|
ВидыМетаданных.Добавить(Метаданные.ПланыВидовХарактеристик);
|
||||||
|
ВидыМетаданных.Добавить(Метаданные.ПланыСчетов);
|
||||||
|
|
||||||
|
ПакетЗапросов = Новый Массив;
|
||||||
|
СчетчикТаблиц = 0;
|
||||||
|
ТекстЗапроса = "";
|
||||||
|
|
||||||
|
Для Каждого ВидМетаданных Из ВидыМетаданных Цикл
|
||||||
|
|
||||||
|
Для Каждого ТекущиеМетаданные Из ВидМетаданных Цикл
|
||||||
|
|
||||||
|
Если СчетчикТаблиц = 256 Тогда
|
||||||
|
ПакетЗапросов.Добавить(Новый Запрос(ТекстЗапроса));
|
||||||
|
|
||||||
|
СчетчикТаблиц = 0;
|
||||||
|
ТекстЗапроса = "";
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
|
СчетчикТаблиц = СчетчикТаблиц + 1;
|
||||||
|
|
||||||
|
Если СчетчикТаблиц > 1 Тогда
|
||||||
|
ТекстЗапроса = ТекстЗапроса + "
|
||||||
|
|ОБЪЕДИНИТЬ ВСЕ";
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
|
ТекстЗапроса = ТекстЗапроса + СтрЗаменить("
|
||||||
|
|ВЫБРАТЬ
|
||||||
|
| ""#ИмяТаблицы"" КАК ИмяТаблицы,
|
||||||
|
| Т.Ссылка КАК Ссылка,
|
||||||
|
| Т.ИмяПредопределенныхДанных КАК ИмяПредопределенныхДанных
|
||||||
|
|ИЗ
|
||||||
|
| #ИмяТаблицы КАК Т
|
||||||
|
|ГДЕ
|
||||||
|
| Т.ИмяПредопределенныхДанных <> """"",
|
||||||
|
"#ИмяТаблицы",
|
||||||
|
ТекущиеМетаданные.ПолноеИмя());
|
||||||
|
|
||||||
|
КонецЦикла;
|
||||||
|
|
||||||
|
КонецЦикла;
|
||||||
|
|
||||||
|
Если СчетчикТаблиц > 1 Тогда
|
||||||
|
ПакетЗапросов.Добавить(Новый Запрос(ТекстЗапроса));
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
|
Для Каждого ТекущийЗапрос Из ПакетЗапросов Цикл
|
||||||
|
|
||||||
|
Выборка = ТекущийЗапрос.Выполнить().Выбрать();
|
||||||
|
Пока Выборка.Следующий() Цикл
|
||||||
|
СтрокаПредопределенных = ТаблицаПредопределенных.Добавить();
|
||||||
|
ЗаполнитьЗначенияСвойств(СтрокаПредопределенных, Выборка);
|
||||||
|
СтрокаПредопределенных.ИмяТипаXML = XMLТипЗнч(СтрокаПредопределенных.Ссылка).ИмяТипа;
|
||||||
|
КонецЦикла;
|
||||||
|
Выборка = Неопределено;
|
||||||
|
|
||||||
|
КонецЦикла;
|
||||||
|
|
||||||
|
Возврат ТаблицаПредопределенных;
|
||||||
|
|
||||||
|
КонецФункции
|
||||||
|
|
||||||
|
Процедура ОтметитьСсылкиНаПредопределенныеДанные(Данные, ТаблицаПредопределенных) Экспорт
|
||||||
|
|
||||||
|
Если Данные = Неопределено
|
||||||
|
Или ТипЗнч(Данные) = Тип("УдалениеОбъекта") Тогда
|
||||||
|
Возврат;
|
||||||
|
Иначе
|
||||||
|
МетаданныеОбъекта = Данные.Метаданные();
|
||||||
|
|
||||||
|
Если ОбщегоНазначения.ЭтоКонстанта(МетаданныеОбъекта) Тогда
|
||||||
|
|
||||||
|
ПроверитьОтметитьСсылкуПредопределенных(Данные.Значение, ТаблицаПредопределенных);
|
||||||
|
|
||||||
|
ИначеЕсли ОбщегоНазначения.ЭтоОбъектСсылочногоТипа(МетаданныеОбъекта) Тогда
|
||||||
|
|
||||||
|
МассивКоллекций = Новый Массив;
|
||||||
|
МассивКоллекций.Добавить(МетаданныеОбъекта.Реквизиты);
|
||||||
|
МассивКоллекций.Добавить(МетаданныеОбъекта.СтандартныеРеквизиты);
|
||||||
|
|
||||||
|
Если ОбщегоНазначения.ЭтоЗадача(МетаданныеОбъекта) Тогда
|
||||||
|
МассивКоллекций.Добавить(МетаданныеОбъекта.РеквизитыАдресации);
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
|
ПроверитьОтметитьСсылкуПредопределенныхВКоллекцииРеквизитовОбъекта(Данные, МассивКоллекций, ТаблицаПредопределенных);
|
||||||
|
|
||||||
|
Для Каждого ТабличнаяЧасть Из МетаданныеОбъекта.ТабличныеЧасти Цикл
|
||||||
|
ПроверитьОтметитьСсылкуПредопределенныхВТаблицеДанных(Данные[ТабличнаяЧасть.Имя].Выгрузить(), ТаблицаПредопределенных);
|
||||||
|
КонецЦикла;
|
||||||
|
|
||||||
|
Если ОбщегоНазначения.ЭтоПланСчетов(МетаданныеОбъекта)
|
||||||
|
Или ОбщегоНазначения.ЭтоПланВидовРасчета(МетаданныеОбъекта) Тогда
|
||||||
|
Для Каждого ТабличнаяЧасть Из МетаданныеОбъекта.СтандартныеТабличныеЧасти Цикл
|
||||||
|
ПроверитьОтметитьСсылкуПредопределенныхВТаблицеДанных(Данные[ТабличнаяЧасть.Имя].Выгрузить(), ТаблицаПредопределенных);
|
||||||
|
КонецЦикла;
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
|
ИначеЕсли ОбщегоНазначения.ЭтоРегистр(МетаданныеОбъекта) Тогда
|
||||||
|
|
||||||
|
ПроверитьОтметитьСсылкуПредопределенныхВТаблицеДанных(Данные.Выгрузить(), ТаблицаПредопределенных);
|
||||||
|
|
||||||
|
КонецЕсли;
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
|
КонецПроцедуры
|
||||||
|
|
||||||
|
Процедура ЗаменитьСсылкиНаПредопределенныеЭлементы(Данные, ТаблицаПредопределенных) Экспорт
|
||||||
|
|
||||||
|
Если Данные = Неопределено
|
||||||
|
Или ТипЗнч(Данные) = Тип("УдалениеОбъекта") Тогда
|
||||||
|
Возврат;
|
||||||
|
Иначе
|
||||||
|
МетаданныеОбъекта = Данные.Метаданные();
|
||||||
|
|
||||||
|
Если ОбщегоНазначения.ЭтоКонстанта(МетаданныеОбъекта) Тогда
|
||||||
|
|
||||||
|
ПроверитьЗаменитьСсылкуПредопределенногоВРеквизитеОбъекта(Данные, "Значение", ТаблицаПредопределенных);
|
||||||
|
|
||||||
|
ИначеЕсли ОбщегоНазначения.ЭтоОбъектСсылочногоТипа(МетаданныеОбъекта) Тогда
|
||||||
|
|
||||||
|
ОбработатьЗагрузкуПредопределенногоЭлемента(Данные, ТаблицаПредопределенных);
|
||||||
|
|
||||||
|
МассивКоллекций = Новый Массив;
|
||||||
|
МассивКоллекций.Добавить(МетаданныеОбъекта.Реквизиты);
|
||||||
|
МассивКоллекций.Добавить(МетаданныеОбъекта.СтандартныеРеквизиты);
|
||||||
|
|
||||||
|
Если ОбщегоНазначения.ЭтоЗадача(МетаданныеОбъекта) Тогда
|
||||||
|
МассивКоллекций.Добавить(МетаданныеОбъекта.РеквизитыАдресации);
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
|
ПроверитьЗаменитьСсылкуПредопределенныхВКоллекцииРеквизитовОбъекта(Данные, МассивКоллекций, ТаблицаПредопределенных);
|
||||||
|
|
||||||
|
Для Каждого ТабличнаяЧасть Из МетаданныеОбъекта.ТабличныеЧасти Цикл
|
||||||
|
ПроверитьЗаменитьСсылкуПредопределенныхВТаблицеДанных(Данные[ТабличнаяЧасть.Имя], ТаблицаПредопределенных);
|
||||||
|
КонецЦикла;
|
||||||
|
|
||||||
|
Если ОбщегоНазначения.ЭтоПланСчетов(МетаданныеОбъекта)
|
||||||
|
Или ОбщегоНазначения.ЭтоПланВидовРасчета(МетаданныеОбъекта) Тогда
|
||||||
|
Для Каждого ТабличнаяЧасть Из МетаданныеОбъекта.СтандартныеТабличныеЧасти Цикл
|
||||||
|
ПроверитьЗаменитьСсылкуПредопределенныхВТаблицеДанных(Данные[ТабличнаяЧасть.Имя], ТаблицаПредопределенных);
|
||||||
|
КонецЦикла;
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
|
ИначеЕсли ОбщегоНазначения.ЭтоРегистр(МетаданныеОбъекта) Тогда
|
||||||
|
|
||||||
|
ПроверитьЗаменитьСсылкуПредопределенныхВТаблицеДанных(Данные, ТаблицаПредопределенных);
|
||||||
|
|
||||||
|
КонецЕсли;
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
|
КонецПроцедуры
|
||||||
|
|
||||||
|
#КонецОбласти
|
||||||
|
|
||||||
#КонецОбласти
|
#КонецОбласти
|
||||||
|
|
||||||
#Область СлужебныеПроцедурыИФункции
|
#Область СлужебныеПроцедурыИФункции
|
||||||
@@ -887,4 +1053,152 @@
|
|||||||
|
|
||||||
КонецПроцедуры
|
КонецПроцедуры
|
||||||
|
|
||||||
|
#Область ВыполнениеОбменаМетодамиСериализации
|
||||||
|
|
||||||
|
Процедура ПроверитьОтметитьСсылкуПредопределенных(Значение, ТаблицаПредопределенных)
|
||||||
|
|
||||||
|
Если Не ОбщегоНазначения.ЭтоСсылка(ТипЗнч(Значение)) Тогда
|
||||||
|
Возврат;
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
|
СтрокаПредопределенных = ТаблицаПредопределенных.Найти(Значение, "Ссылка");
|
||||||
|
Если СтрокаПредопределенных = Неопределено Тогда
|
||||||
|
// Значение не является предопределенным элементом.
|
||||||
|
Возврат;
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
|
Если Не СтрокаПредопределенных.Выгружать Тогда
|
||||||
|
СтрокаПредопределенных.Выгружать = Истина;
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
|
КонецПроцедуры
|
||||||
|
|
||||||
|
Процедура ПроверитьОтметитьСсылкуПредопределенныхВКоллекцииРеквизитовОбъекта(Данные, МассивКоллекций, ТаблицаПредопределенных)
|
||||||
|
|
||||||
|
Для Каждого КоллекцияРеквизитов Из МассивКоллекций Цикл
|
||||||
|
Для Каждого Реквизит Из КоллекцияРеквизитов Цикл
|
||||||
|
ПроверитьОтметитьСсылкуПредопределенных(Данные[Реквизит.Имя], ТаблицаПредопределенных);
|
||||||
|
КонецЦикла;
|
||||||
|
КонецЦикла;
|
||||||
|
|
||||||
|
КонецПроцедуры
|
||||||
|
|
||||||
|
Процедура ПроверитьОтметитьСсылкуПредопределенныхВТаблицеДанных(ДанныеТаблицы, ТаблицаПредопределенных)
|
||||||
|
|
||||||
|
Для Каждого СтрокаТаблицы Из ДанныеТаблицы Цикл
|
||||||
|
Для Каждого Колонка Из ДанныеТаблицы.Колонки Цикл
|
||||||
|
ПроверитьОтметитьСсылкуПредопределенных(СтрокаТаблицы[Колонка.Имя], ТаблицаПредопределенных);
|
||||||
|
КонецЦикла;
|
||||||
|
КонецЦикла;
|
||||||
|
|
||||||
|
КонецПроцедуры
|
||||||
|
|
||||||
|
Процедура ОбработатьЗагрузкуПредопределенногоЭлемента(Данные, ТаблицаПредопределенных)
|
||||||
|
|
||||||
|
ИсходнаяСсылкаДанных = Данные.Ссылка;
|
||||||
|
Если Данные.ЭтоНовый() Тогда
|
||||||
|
ИсходнаяСсылкаДанных = Данные.ПолучитьСсылкуНового();
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
|
СтрокаПредопределенные = ТаблицаПредопределенных.Найти(ИсходнаяСсылкаДанных, "ИсходнаяСсылка");
|
||||||
|
Если СтрокаПредопределенные = Неопределено Тогда
|
||||||
|
Возврат;
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
|
ДанныеДляЗагрузки = СтрокаПредопределенные.Ссылка.ПолучитьОбъект();
|
||||||
|
МетаданныеОбъекта = ДанныеДляЗагрузки.Метаданные();
|
||||||
|
|
||||||
|
МассивКоллекций = Новый Массив;
|
||||||
|
МассивКоллекций.Добавить(МетаданныеОбъекта.Реквизиты);
|
||||||
|
МассивКоллекций.Добавить(МетаданныеОбъекта.СтандартныеРеквизиты);
|
||||||
|
|
||||||
|
Если ОбщегоНазначения.ЭтоЗадача(МетаданныеОбъекта) Тогда
|
||||||
|
МассивКоллекций.Добавить(МетаданныеОбъекта.РеквизитыАдресации);
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
|
ПеренестиЗначенияКоллекцииРеквизитовМеждуОбъектами(Данные, ДанныеДляЗагрузки, МассивКоллекций);
|
||||||
|
|
||||||
|
Для Каждого ТабличнаяЧасть Из МетаданныеОбъекта.ТабличныеЧасти Цикл
|
||||||
|
Если Данные[ТабличнаяЧасть.Имя].Количество() > 0
|
||||||
|
Или ДанныеДляЗагрузки[ТабличнаяЧасть.Имя].Количество() > 0 Тогда
|
||||||
|
ДанныеДляЗагрузки[ТабличнаяЧасть.Имя].Загрузить(Данные[ТабличнаяЧасть.Имя].Выгрузить());
|
||||||
|
КонецЕсли;
|
||||||
|
КонецЦикла;
|
||||||
|
|
||||||
|
Если ОбщегоНазначения.ЭтоПланСчетов(МетаданныеОбъекта)
|
||||||
|
Или ОбщегоНазначения.ЭтоПланВидовРасчета(МетаданныеОбъекта) Тогда
|
||||||
|
Для Каждого ТабличнаяЧасть Из МетаданныеОбъекта.СтандартныеТабличныеЧасти Цикл
|
||||||
|
Если Данные[ТабличнаяЧасть.Имя].Количество() > 0
|
||||||
|
Или ДанныеДляЗагрузки[ТабличнаяЧасть.Имя].Количество() > 0 Тогда
|
||||||
|
ДанныеДляЗагрузки[ТабличнаяЧасть.Имя].Загрузить(Данные[ТабличнаяЧасть.Имя].Выгрузить());
|
||||||
|
КонецЕсли;
|
||||||
|
КонецЦикла;
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
|
Данные = ДанныеДляЗагрузки;
|
||||||
|
|
||||||
|
КонецПроцедуры
|
||||||
|
|
||||||
|
Процедура ПеренестиЗначенияКоллекцииРеквизитовМеждуОбъектами(Источник, Приемник, МассивКоллекций)
|
||||||
|
|
||||||
|
Для Каждого КоллекцияРеквизитов Из МассивКоллекций Цикл
|
||||||
|
Для Каждого Реквизит Из КоллекцияРеквизитов Цикл
|
||||||
|
Если Приемник[Реквизит.Имя] = Приемник.Ссылка Тогда
|
||||||
|
Продолжить;
|
||||||
|
КонецЕсли;
|
||||||
|
Если Приемник[Реквизит.Имя] = Источник[Реквизит.Имя] Тогда
|
||||||
|
Продолжить;
|
||||||
|
КонецЕсли;
|
||||||
|
Приемник[Реквизит.Имя] = Источник[Реквизит.Имя];
|
||||||
|
КонецЦикла;
|
||||||
|
КонецЦикла;
|
||||||
|
|
||||||
|
КонецПроцедуры
|
||||||
|
|
||||||
|
Процедура ПроверитьЗаменитьСсылкуПредопределенногоВРеквизитеОбъекта(Данные, ИмяРеквизита, ТаблицаПредопределенных)
|
||||||
|
|
||||||
|
Значение = Данные[ИмяРеквизита];
|
||||||
|
|
||||||
|
Если Не ОбщегоНазначения.ЭтоСсылка(ТипЗнч(Значение)) Тогда
|
||||||
|
Возврат;
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
|
СтрокаПредопределенные = ТаблицаПредопределенных.Найти(Значение, "ИсходнаяСсылка");
|
||||||
|
Если Не СтрокаПредопределенные = Неопределено Тогда
|
||||||
|
Данные[ИмяРеквизита] = СтрокаПредопределенные.Ссылка;
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
|
КонецПроцедуры
|
||||||
|
|
||||||
|
Процедура ПроверитьЗаменитьСсылкуПредопределенныхВКоллекцииРеквизитовОбъекта(Данные, МассивКоллекций, ТаблицаПредопределенных)
|
||||||
|
|
||||||
|
Для Каждого КоллекцияРеквизитов Из МассивКоллекций Цикл
|
||||||
|
Для Каждого Реквизит Из КоллекцияРеквизитов Цикл
|
||||||
|
ПроверитьЗаменитьСсылкуПредопределенногоВРеквизитеОбъекта(Данные, Реквизит.Имя, ТаблицаПредопределенных);
|
||||||
|
КонецЦикла;
|
||||||
|
КонецЦикла;
|
||||||
|
|
||||||
|
КонецПроцедуры
|
||||||
|
|
||||||
|
Процедура ПроверитьЗаменитьСсылкуПредопределенныхВТаблицеДанных(ДанныеТаблицы, ТаблицаПредопределенных)
|
||||||
|
|
||||||
|
Если ДанныеТаблицы.Количество() = 0 Тогда
|
||||||
|
Возврат;
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
|
ТаблицаТЧ = ДанныеТаблицы.Выгрузить();
|
||||||
|
|
||||||
|
Для Каждого СтрокаТЧДанных Из ДанныеТаблицы Цикл
|
||||||
|
Для Каждого Колонка Из ТаблицаТЧ.Колонки Цикл
|
||||||
|
Если Не ОбщегоНазначенияКлиентСервер.ЕстьРеквизитИлиСвойствоОбъекта(СтрокаТЧДанных, Колонка.Имя) Тогда
|
||||||
|
Продолжить;
|
||||||
|
КонецЕсли;
|
||||||
|
ПроверитьЗаменитьСсылкуПредопределенногоВРеквизитеОбъекта(СтрокаТЧДанных, Колонка.Имя, ТаблицаПредопределенных);
|
||||||
|
КонецЦикла;
|
||||||
|
КонецЦикла;
|
||||||
|
|
||||||
|
КонецПроцедуры
|
||||||
|
|
||||||
|
#КонецОбласти
|
||||||
|
|
||||||
#КонецОбласти
|
#КонецОбласти
|
||||||
@@ -41,7 +41,7 @@
|
|||||||
Процедура ПриДобавленииПодсистемы(Описание) Экспорт
|
Процедура ПриДобавленииПодсистемы(Описание) Экспорт
|
||||||
|
|
||||||
Описание.Имя = "СтандартныеПодсистемы";
|
Описание.Имя = "СтандартныеПодсистемы";
|
||||||
Описание.Версия = "3.0.2.257";
|
Описание.Версия = "3.0.2.264";
|
||||||
Описание.ИдентификаторИнтернетПоддержки = "SSL";
|
Описание.ИдентификаторИнтернетПоддержки = "SSL";
|
||||||
Описание.РежимВыполненияОтложенныхОбработчиков = "Параллельно";
|
Описание.РежимВыполненияОтложенныхОбработчиков = "Параллельно";
|
||||||
Описание.ПараллельноеОтложенноеОбновлениеСВерсии = "2.3.3.0";
|
Описание.ПараллельноеОтложенноеОбновлениеСВерсии = "2.3.3.0";
|
||||||
|
|||||||
@@ -5979,6 +5979,12 @@
|
|||||||
ЗаписьДанных.ТабличныйОбъект = ТабличныйОбъект;
|
ЗаписьДанных.ТабличныйОбъект = ТабличныйОбъект;
|
||||||
ОбновляемыеДанные = НоваяПорцияДляОбновления();
|
ОбновляемыеДанные = НоваяПорцияДляОбновления();
|
||||||
ОбновляемыеДанные.НаборДанных = НаборДанных;
|
ОбновляемыеДанные.НаборДанных = НаборДанных;
|
||||||
|
|
||||||
|
Если ЗаписьДанных.Данные.Количество() > 0 Тогда
|
||||||
|
ОбновляемыеДанные.ПерваяЗапись = КлючЗаписиПервойСтрокиНабораДанных(НаборДанных);
|
||||||
|
ОбновляемыеДанные.ПоследняяЗапись = КлючЗаписиПоследнейСтрокиНабораДанных(НаборДанных);
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
КонтекстОбработчика.Параметры.ОбновляемыеДанные = ОбновляемыеДанные;
|
КонтекстОбработчика.Параметры.ОбновляемыеДанные = ОбновляемыеДанные;
|
||||||
Количество = ЗаписьДанных.Данные.Количество();
|
Количество = ЗаписьДанных.Данные.Количество();
|
||||||
ВыполнитьОтложенныйОбработчик(КонтекстОбработчика, АдресРезультата);
|
ВыполнитьОтложенныйОбработчик(КонтекстОбработчика, АдресРезультата);
|
||||||
|
|||||||
@@ -59,17 +59,19 @@
|
|||||||
Функция ЗаголовокСозданияРезервнойКопии(Параметры) Экспорт
|
Функция ЗаголовокСозданияРезервнойКопии(Параметры) Экспорт
|
||||||
|
|
||||||
Если Параметры.СоздаватьРезервнуюКопию = 0 Тогда
|
Если Параметры.СоздаватьРезервнуюКопию = 0 Тогда
|
||||||
Результат = НСтр("ru = 'Не создавать резервную копию ИБ'");
|
Действие = НСтр("ru = 'Не создавать резервную копию ИБ'");
|
||||||
ИначеЕсли Параметры.СоздаватьРезервнуюКопию = 1 Тогда
|
ИначеЕсли Параметры.СоздаватьРезервнуюКопию = 1 Тогда
|
||||||
Результат = НСтр("ru = 'Создавать временную резервную копию ИБ'");
|
Действие = НСтр("ru = 'Создавать временную резервную копию ИБ'");
|
||||||
ИначеЕсли Параметры.СоздаватьРезервнуюКопию = 2 Тогда
|
ИначеЕсли Параметры.СоздаватьРезервнуюКопию = 2 Тогда
|
||||||
Результат = НСтр("ru = 'Создавать резервную копию ИБ'");
|
Действие = НСтр("ru = 'Создавать резервную копию ИБ'");
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
Если Параметры.ВосстанавливатьИнформационнуюБазу Тогда
|
Если Параметры.ВосстанавливатьИнформационнуюБазу Тогда
|
||||||
Результат = Результат + " " + НСтр("ru = 'и выполнять откат при нештатной ситуации'");
|
Результат = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
|
||||||
|
НСтр("ru = '%1 и выполнять откат при нештатной ситуации'"), Действие);
|
||||||
Иначе
|
Иначе
|
||||||
Результат = Результат + " " + НСтр("ru = 'и не выполнять откат при нештатной ситуации'");
|
Результат = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
|
||||||
|
НСтр("ru = '%1 и не выполнять откат при нештатной ситуации'"), Действие);
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
Возврат Результат;
|
Возврат Результат;
|
||||||
|
|||||||
@@ -19,7 +19,8 @@
|
|||||||
Функция ЭтоНавигационнаяСсылка(Строка) Экспорт
|
Функция ЭтоНавигационнаяСсылка(Строка) Экспорт
|
||||||
|
|
||||||
Возврат СтрНачинаетсяС(Строка, "e1c:")
|
Возврат СтрНачинаетсяС(Строка, "e1c:")
|
||||||
Или СтрНачинаетсяС(Строка, "e1cib/");
|
Или СтрНачинаетсяС(Строка, "e1cib/")
|
||||||
|
Или СтрНачинаетсяС(Строка, "e1ccs/");
|
||||||
|
|
||||||
КонецФункции
|
КонецФункции
|
||||||
|
|
||||||
|
|||||||
@@ -31,31 +31,6 @@
|
|||||||
////////////////////////////////////////////////////////////////////////////////
|
////////////////////////////////////////////////////////////////////////////////
|
||||||
// Методы работы с СКД из формы отчета.
|
// Методы работы с СКД из формы отчета.
|
||||||
|
|
||||||
Процедура ОбновитьСвойстваНастройки(Форма, КомпоновщикНастроек, ЭлементПользовательскойНастройки) Экспорт
|
|
||||||
Свойства = "Использование";
|
|
||||||
Если ТипЗнч(ЭлементПользовательскойНастройки) = Тип("ЗначениеПараметраНастроекКомпоновкиДанных") Тогда
|
|
||||||
Свойства = Свойства + ", Значение";
|
|
||||||
ИначеЕсли ТипЗнч(ЭлементПользовательскойНастройки) = Тип("ЭлементОтбораКомпоновкиДанных") Тогда
|
|
||||||
Свойства = Свойства + ", ВидСравнения, ПравоеЗначение";
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
ЭлементНастройки = ОтчетыКлиентСервер.ПолучитьОбъектПоПользовательскомуИдентификатору(
|
|
||||||
КомпоновщикНастроек.Настройки,
|
|
||||||
ЭлементПользовательскойНастройки.ИдентификаторПользовательскойНастройки,,
|
|
||||||
КомпоновщикНастроек.ПользовательскиеНастройки);
|
|
||||||
|
|
||||||
Если ЭлементНастройки <> Неопределено Тогда
|
|
||||||
ЗаполнитьЗначенияСвойств(ЭлементНастройки, ЭлементПользовательскойНастройки, Свойства);
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
// Завершение синхронизации:
|
|
||||||
// * В пользовательских настройках, в зависимости от типа, не заполнены свойства:
|
|
||||||
// ** ЛевоеЗначение, Представление, Отбор, Оформление, Поля, РежимОтображения.
|
|
||||||
ЗаполнитьЗначенияСвойств(ЭлементПользовательскойНастройки, ЭлементНастройки);
|
|
||||||
|
|
||||||
Форма.ВариантМодифицирован = Ложь;
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Функция ТипЗначенияОграниченныйСвязьюПоТипу(Настройки, ПользовательскиеНастройки, ЭлементНастройки, ОписаниеЭлементаНастройки, ТипЗначения = Неопределено) Экспорт
|
Функция ТипЗначенияОграниченныйСвязьюПоТипу(Настройки, ПользовательскиеНастройки, ЭлементНастройки, ОписаниеЭлементаНастройки, ТипЗначения = Неопределено) Экспорт
|
||||||
Если ОписаниеЭлементаНастройки = Неопределено Тогда
|
Если ОписаниеЭлементаНастройки = Неопределено Тогда
|
||||||
Возврат ?(ТипЗначения = Неопределено, Новый ОписаниеТипов("Неопределено"), ТипЗначения);
|
Возврат ?(ТипЗначения = Неопределено, Новый ОписаниеТипов("Неопределено"), ТипЗначения);
|
||||||
|
|||||||
@@ -13582,6 +13582,11 @@
|
|||||||
ЭлементБлокировки.УстановитьЗначение("КлючДоступа", Строка.КлючДоступа);
|
ЭлементБлокировки.УстановитьЗначение("КлючДоступа", Строка.КлючДоступа);
|
||||||
КонецЦикла;
|
КонецЦикла;
|
||||||
|
|
||||||
|
Если ОбщегоНазначения.ИнформационнаяБазаФайловая() Тогда
|
||||||
|
ЭлементБлокировки = Блокировка.Добавить("Справочник.НаборыГруппДоступа");
|
||||||
|
ЭлементБлокировки.Режим = РежимБлокировкиДанных.Разделяемый;
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
Выгрузка.Свернуть("КлючДоступа");
|
Выгрузка.Свернуть("КлючДоступа");
|
||||||
КлючиДоступа = Выгрузка.ВыгрузитьКолонку("КлючДоступа");
|
КлючиДоступа = Выгрузка.ВыгрузитьКолонку("КлючДоступа");
|
||||||
|
|
||||||
@@ -13980,6 +13985,15 @@
|
|||||||
ПраваДляВнешнихПользователей = СлужебныйНаборЗаписей(РегистрыСведений.КлючиДоступаВнешнихПользователей);
|
ПраваДляВнешнихПользователей = СлужебныйНаборЗаписей(РегистрыСведений.КлючиДоступаВнешнихПользователей);
|
||||||
ПраваДляВнешнихПользователей.Отбор.КлючДоступа.Установить(РазрешенныйКлючДоступа);
|
ПраваДляВнешнихПользователей.Отбор.КлючДоступа.Установить(РазрешенныйКлючДоступа);
|
||||||
|
|
||||||
|
Если ОбщегоНазначения.ИнформационнаяБазаФайловая() Тогда
|
||||||
|
ЭлементБлокировки = Блокировка.Добавить("Справочник.ПрофилиГруппДоступа");
|
||||||
|
ЭлементБлокировки.Режим = РежимБлокировкиДанных.Разделяемый;
|
||||||
|
ЭлементБлокировки = Блокировка.Добавить("Справочник.ГруппыДоступа");
|
||||||
|
ЭлементБлокировки.Режим = РежимБлокировкиДанных.Разделяемый;
|
||||||
|
ЭлементБлокировки = Блокировка.Добавить("Справочник.НаборыГруппДоступа");
|
||||||
|
ЭлементБлокировки.Режим = РежимБлокировкиДанных.Разделяемый;
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
НачатьТранзакцию();
|
НачатьТранзакцию();
|
||||||
Попытка
|
Попытка
|
||||||
Блокировка.Заблокировать();
|
Блокировка.Заблокировать();
|
||||||
@@ -14527,6 +14541,10 @@
|
|||||||
ЭлементБлокировки.УстановитьЗначение("Объект", ОписаниеКлючаДоступаОбъекта.ТекущаяСсылка);
|
ЭлементБлокировки.УстановитьЗначение("Объект", ОписаниеКлючаДоступаОбъекта.ТекущаяСсылка);
|
||||||
КонецЦикла;
|
КонецЦикла;
|
||||||
|
|
||||||
|
Если ОбщегоНазначения.ИнформационнаяБазаФайловая() Тогда
|
||||||
|
Блокировка.Добавить("РегистрСведений.ОбновлениеКлючейДоступаКДанным");
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
НачатьТранзакцию();
|
НачатьТранзакцию();
|
||||||
Попытка
|
Попытка
|
||||||
Блокировка.Заблокировать();
|
Блокировка.Заблокировать();
|
||||||
@@ -16528,6 +16546,15 @@
|
|||||||
ОбновлениеВручную = ПараметрыОбновления.Свойство("ОбновитьПраваНаКлючи")
|
ОбновлениеВручную = ПараметрыОбновления.Свойство("ОбновитьПраваНаКлючи")
|
||||||
И ПараметрыОбновления.ОбновитьПраваНаКлючи;
|
И ПараметрыОбновления.ОбновитьПраваНаКлючи;
|
||||||
|
|
||||||
|
Если ОбщегоНазначения.ИнформационнаяБазаФайловая() Тогда
|
||||||
|
Если ОписаниеНовыхКлючей <> Неопределено Тогда
|
||||||
|
ЭлементБлокировки = Блокировка.Добавить("Справочник.КлючиДоступа");
|
||||||
|
КонецЕсли;
|
||||||
|
ЭлементБлокировки = Блокировка.Добавить("Справочник.НаборыГруппДоступа");
|
||||||
|
ЭлементБлокировки.Режим = РежимБлокировкиДанных.Разделяемый;
|
||||||
|
Блокировка.Добавить("РегистрСведений.ОбновлениеКлючейДоступаПользователей");
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
НачатьТранзакцию();
|
НачатьТранзакцию();
|
||||||
Попытка
|
Попытка
|
||||||
Блокировка.Заблокировать();
|
Блокировка.Заблокировать();
|
||||||
|
|||||||
@@ -1488,7 +1488,7 @@
|
|||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
Если НЕ СтруктураРазбораXML.ПотокиЗаписи.Свойство(ИмяПотока) Тогда
|
Если НЕ СтруктураРазбораXML.ПотокиЗаписи.Свойство(ИмяПотока) Тогда
|
||||||
СтруктураРазбораXML.ПотокиЗаписи.Вставить(ИмяПотока, Новый Структура("Поток, ЗаписьРазрешена, Уровень, ПотокЗакрыт, ТекстПотока"));
|
СтруктураРазбораXML.ПотокиЗаписи.Вставить(ИмяПотока, Новый Структура("Поток, ЗаписьРазрешена, Уровень, ПотокЗакрыт, ТекстПотока, УровеньАбзаца"));
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
Если НЕ СтруктураРазбораXML.ПотокиЗаписи[ИмяПотока].ЗаписьРазрешена = Неопределено Тогда
|
Если НЕ СтруктураРазбораXML.ПотокиЗаписи[ИмяПотока].ЗаписьРазрешена = Неопределено Тогда
|
||||||
@@ -1501,6 +1501,7 @@
|
|||||||
СтруктураРазбораXML.ПотокиЗаписи[ИмяПотока].Уровень = ?(ПустаяСтрока(КорневойТэг), 0, 1);
|
СтруктураРазбораXML.ПотокиЗаписи[ИмяПотока].Уровень = ?(ПустаяСтрока(КорневойТэг), 0, 1);
|
||||||
СтруктураРазбораXML.ПотокиЗаписи[ИмяПотока].ПотокЗакрыт = Ложь;
|
СтруктураРазбораXML.ПотокиЗаписи[ИмяПотока].ПотокЗакрыт = Ложь;
|
||||||
СтруктураРазбораXML.ПотокиЗаписи[ИмяПотока].ТекстПотока = "";
|
СтруктураРазбораXML.ПотокиЗаписи[ИмяПотока].ТекстПотока = "";
|
||||||
|
СтруктураРазбораXML.ПотокиЗаписи[ИмяПотока].УровеньАбзаца = СтруктураРазбораXML.ТекущийУровеньАбзаца;
|
||||||
|
|
||||||
КонецПроцедуры
|
КонецПроцедуры
|
||||||
|
|
||||||
@@ -1743,6 +1744,10 @@
|
|||||||
|
|
||||||
Для Каждого ЭлементПотока Из СтруктураРазбораXML.ПотокиЗаписи Цикл
|
Для Каждого ЭлементПотока Из СтруктураРазбораXML.ПотокиЗаписи Цикл
|
||||||
|
|
||||||
|
Если СтруктураРазбораXML.ТекущийУровеньАбзаца <> ЭлементПотока.Значение.УровеньАбзаца Тогда
|
||||||
|
Продолжить;
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
Если Не ПустаяСтрока(СтруктураРазбораXML.БлокирующийПоток) И НЕ ЭлементПотока.Ключ = СтруктураРазбораXML.БлокирующийПоток Тогда
|
Если Не ПустаяСтрока(СтруктураРазбораXML.БлокирующийПоток) И НЕ ЭлементПотока.Ключ = СтруктураРазбораXML.БлокирующийПоток Тогда
|
||||||
Продолжить;
|
Продолжить;
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
@@ -1765,6 +1770,10 @@
|
|||||||
|
|
||||||
Для Каждого ЭлементПотока Из СтруктураРазбораXML.ПотокиЗаписи Цикл
|
Для Каждого ЭлементПотока Из СтруктураРазбораXML.ПотокиЗаписи Цикл
|
||||||
|
|
||||||
|
Если СтруктураРазбораXML.ТекущийУровеньАбзаца <> ЭлементПотока.Значение.УровеньАбзаца Тогда
|
||||||
|
Продолжить;
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
Если Не ПустаяСтрока(СтруктураРазбораXML.БлокирующийПоток) И НЕ ЭлементПотока.Ключ = СтруктураРазбораXML.БлокирующийПоток Тогда
|
Если Не ПустаяСтрока(СтруктураРазбораXML.БлокирующийПоток) И НЕ ЭлементПотока.Ключ = СтруктураРазбораXML.БлокирующийПоток Тогда
|
||||||
Продолжить;
|
Продолжить;
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
@@ -1788,6 +1797,10 @@
|
|||||||
|
|
||||||
Для Каждого ЭлементПотока Из СтруктураРазбораXML.ПотокиЗаписи Цикл
|
Для Каждого ЭлементПотока Из СтруктураРазбораXML.ПотокиЗаписи Цикл
|
||||||
|
|
||||||
|
Если СтруктураРазбораXML.ТекущийУровеньАбзаца <> ЭлементПотока.Значение.УровеньАбзаца Тогда
|
||||||
|
Продолжить;
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
Если Не ПустаяСтрока(СтруктураРазбораXML.БлокирующийПоток) И НЕ ЭлементПотока.Ключ = СтруктураРазбораXML.БлокирующийПоток Тогда
|
Если Не ПустаяСтрока(СтруктураРазбораXML.БлокирующийПоток) И НЕ ЭлементПотока.Ключ = СтруктураРазбораXML.БлокирующийПоток Тогда
|
||||||
Продолжить;
|
Продолжить;
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
@@ -1816,6 +1829,10 @@
|
|||||||
|
|
||||||
Для Каждого ЭлементПотока Из СтруктураРазбораXML.ПотокиЗаписи Цикл
|
Для Каждого ЭлементПотока Из СтруктураРазбораXML.ПотокиЗаписи Цикл
|
||||||
|
|
||||||
|
Если СтруктураРазбораXML.ТекущийУровеньАбзаца <> ЭлементПотока.Значение.УровеньАбзаца Тогда
|
||||||
|
Продолжить;
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
Если Не ПустаяСтрока(СтруктураРазбораXML.БлокирующийПоток) И НЕ ЭлементПотока.Ключ = СтруктураРазбораXML.БлокирующийПоток Тогда
|
Если Не ПустаяСтрока(СтруктураРазбораXML.БлокирующийПоток) И НЕ ЭлементПотока.Ключ = СтруктураРазбораXML.БлокирующийПоток Тогда
|
||||||
Продолжить;
|
Продолжить;
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
@@ -1839,6 +1856,10 @@
|
|||||||
|
|
||||||
Для Каждого ЭлементПотока Из СтруктураРазбораXML.ПотокиЗаписи Цикл
|
Для Каждого ЭлементПотока Из СтруктураРазбораXML.ПотокиЗаписи Цикл
|
||||||
|
|
||||||
|
Если СтруктураРазбораXML.ТекущийУровеньАбзаца <> ЭлементПотока.Значение.УровеньАбзаца Тогда
|
||||||
|
Продолжить;
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
Если Не ПустаяСтрока(СтруктураРазбораXML.БлокирующийПоток) И НЕ ЭлементПотока.Ключ = СтруктураРазбораXML.БлокирующийПоток Тогда
|
Если Не ПустаяСтрока(СтруктураРазбораXML.БлокирующийПоток) И НЕ ЭлементПотока.Ключ = СтруктураРазбораXML.БлокирующийПоток Тогда
|
||||||
Продолжить;
|
Продолжить;
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
@@ -2120,6 +2141,7 @@
|
|||||||
Результат.Вставить("БлокирующийПоток", "");
|
Результат.Вставить("БлокирующийПоток", "");
|
||||||
Результат.Вставить("РазобранныеСтроки", Новый Массив);
|
Результат.Вставить("РазобранныеСтроки", Новый Массив);
|
||||||
Результат.Вставить("ИмяПотокаФормата", "");
|
Результат.Вставить("ИмяПотокаФормата", "");
|
||||||
|
Результат.Вставить("ТекущийУровеньАбзаца", "0");
|
||||||
|
|
||||||
Возврат Результат;
|
Возврат Результат;
|
||||||
|
|
||||||
@@ -2316,21 +2338,13 @@
|
|||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
Если ЧтениеНачалаПараграфа(СтруктураРазбораXML, ЧтениеXML) Тогда
|
Если ЧтениеНачалаПараграфа(СтруктураРазбораXML, ЧтениеXML) Тогда
|
||||||
|
|
||||||
Если Число(УровеньАбзаца) > 0 Тогда
|
|
||||||
ОстановитьЗаписьВПоток(СтруктураРазбораXML, "Строки" + УровеньАбзаца);
|
|
||||||
ОстановитьЗаписьВПоток(СтруктураРазбораXML, "Абзац" + УровеньАбзаца);
|
|
||||||
ОстановитьЗаписьВПоток(СтруктураРазбораXML, "СтрокаПарам" + УровеньАбзаца);
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
УровеньАбзаца = Формат(Число(УровеньАбзаца) + 1, "ЧН=0; ЧГ=0");
|
УровеньАбзаца = Формат(Число(УровеньАбзаца) + 1, "ЧН=0; ЧГ=0");
|
||||||
|
СтруктураРазбораXML.ТекущийУровеньАбзаца = УровеньАбзаца;
|
||||||
|
|
||||||
СброситьСтатусыТэгов1С(СтруктураРазбораXML, Истина);
|
СброситьСтатусыТэгов1С(СтруктураРазбораXML, Истина);
|
||||||
ИнициализироватьЗаписьВПоток(СтруктураРазбораXML, "Абзац" + УровеньАбзаца);
|
ИнициализироватьЗаписьВПоток(СтруктураРазбораXML, "Абзац" + УровеньАбзаца);
|
||||||
ИнициализироватьЗаписьВПоток(СтруктураРазбораXML, "Строки" + УровеньАбзаца);
|
ИнициализироватьЗаписьВПоток(СтруктураРазбораXML, "Строки" + УровеньАбзаца);
|
||||||
ОстановитьЗаписьВПоток(СтруктураРазбораXML, "Строки" + УровеньАбзаца);
|
ОстановитьЗаписьВПоток(СтруктураРазбораXML, "Строки" + УровеньАбзаца);
|
||||||
ОстановитьЗаписьВПоток(СтруктураРазбораXML, "Блок");
|
|
||||||
|
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
Если ЧтениеКонцаПараграфа(СтруктураРазбораXML, ЧтениеXML) Тогда
|
Если ЧтениеКонцаПараграфа(СтруктураРазбораXML, ЧтениеXML) Тогда
|
||||||
@@ -2355,20 +2369,16 @@
|
|||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
Если ЗавершитьЗаписьВЗаголовок Тогда
|
Если ЗавершитьЗаписьВЗаголовок Тогда
|
||||||
|
|
||||||
УровеньТэгаБлок = СтруктураРазбораXML.ПотокиЗаписи.Заголовок.Уровень + 1;
|
УровеньТэгаБлок = СтруктураРазбораXML.ПотокиЗаписи.Заголовок.Уровень + 1;
|
||||||
УровеньТэгаОбласть = СтруктураРазбораXML.ПотокиЗаписи.Заголовок.Уровень + 2;
|
УровеньТэгаОбласть = СтруктураРазбораXML.ПотокиЗаписи.Заголовок.Уровень + 2;
|
||||||
|
|
||||||
ЗавершитьЗаписьВПоток(СтруктураРазбораXML, "Заголовок");
|
ЗавершитьЗаписьВПоток(СтруктураРазбораXML, "Заголовок");
|
||||||
|
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
Если ЧтениеКонцаСтроки(СтруктураРазбораXML, ЧтениеXML) Тогда
|
Если ЧтениеКонцаСтроки(СтруктураРазбораXML, ЧтениеXML) Тогда
|
||||||
|
|
||||||
Если СтруктураРазбораXML.СтатусТэга1С = 0 И СтруктураРазбораXML.РазобранныеСтроки.Количество() = 0 Тогда
|
Если СтруктураРазбораXML.СтатусТэга1С = 0 И СтруктураРазбораXML.РазобранныеСтроки.Количество() = 0 Тогда
|
||||||
ПеренестиЗаписьВПоток(СтруктураРазбораXML, "Строки" + УровеньАбзаца, "Абзац" + УровеньАбзаца);
|
ПеренестиЗаписьВПоток(СтруктураРазбораXML, "Строки" + УровеньАбзаца, "Абзац" + УровеньАбзаца);
|
||||||
ИначеЕсли СтруктураРазбораXML.РазобранныеСтроки.Количество() > 0 Тогда
|
ИначеЕсли СтруктураРазбораXML.РазобранныеСтроки.Количество() > 0 Тогда
|
||||||
|
|
||||||
ИнициализироватьЗаписьВПоток(СтруктураРазбораXML, "СтрокиПарам");
|
ИнициализироватьЗаписьВПоток(СтруктураРазбораXML, "СтрокиПарам");
|
||||||
|
|
||||||
КоличествоСтрок = 0;
|
КоличествоСтрок = 0;
|
||||||
@@ -2430,7 +2440,6 @@
|
|||||||
СброситьЗаписьВПоток(СтруктураРазбораXML, "СтрокиПарам");
|
СброситьЗаписьВПоток(СтруктураРазбораXML, "СтрокиПарам");
|
||||||
СброситьПотокиШаблоннойСтроки(СтруктураРазбораXML);
|
СброситьПотокиШаблоннойСтроки(СтруктураРазбораXML);
|
||||||
ОчиститьРазобранныеСтроки(СтруктураРазбораXML);
|
ОчиститьРазобранныеСтроки(СтруктураРазбораXML);
|
||||||
|
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
СброситьЗаписьВПоток(СтруктураРазбораXML, "СтрокаПарам" + УровеньАбзаца);
|
СброситьЗаписьВПоток(СтруктураРазбораXML, "СтрокаПарам" + УровеньАбзаца);
|
||||||
@@ -2440,51 +2449,38 @@
|
|||||||
ИнициализироватьЗаписьВПоток(СтруктураРазбораXML, "Строки" + УровеньАбзаца);
|
ИнициализироватьЗаписьВПоток(СтруктураРазбораXML, "Строки" + УровеньАбзаца);
|
||||||
ОстановитьЗаписьВПоток(СтруктураРазбораXML, "Строки" + УровеньАбзаца);
|
ОстановитьЗаписьВПоток(СтруктураРазбораXML, "Строки" + УровеньАбзаца);
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
Если ЧтениеКонцаПараграфа(СтруктураРазбораXML, ЧтениеXML) Тогда
|
Если ЧтениеКонцаПараграфа(СтруктураРазбораXML, ЧтениеXML) Тогда
|
||||||
|
|
||||||
Если НЕ СтруктураРазбораXML.СтатусТэга1С = 0 Тогда
|
Если НЕ СтруктураРазбораXML.СтатусТэга1С = 0 Тогда
|
||||||
СброситьСтатусыТэгов1С(СтруктураРазбораXML, Истина);
|
СброситьСтатусыТэгов1С(СтруктураРазбораXML, Истина);
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
Если Число(УровеньАбзаца) > 1 Тогда
|
Если Число(УровеньАбзаца) > 1 Тогда
|
||||||
ПотокПереноса = "Абзац" + Формат(Число(УровеньАбзаца) - 1, "ЧН=0; ЧГ=0");
|
ПотокПереноса = "Строки" + Формат(Число(УровеньАбзаца) - 1, "ЧН=0; ЧГ=0");
|
||||||
ПеренестиЗаписьВПоток(СтруктураРазбораXML, "Абзац" + УровеньАбзаца, ПотокПереноса);
|
ИначеЕсли ТекущийУровень = УровеньТэгаБлок И ПараметрыАнализа.ТипАнализа = 1 Тогда
|
||||||
|
ПотокПереноса = "Область";
|
||||||
Иначе
|
Иначе
|
||||||
ПотокПереноса = ?(ТекущийУровень = УровеньТэгаБлок, "Область", "Блок");
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
Если ПараметрыАнализа.ТипАнализа <> 1 Тогда
|
|
||||||
ПеренестиЗаписьВПоток(СтруктураРазбораXML, "Абзац" + УровеньАбзаца, "Блок");
|
|
||||||
ПотокПереноса = "Блок";
|
ПотокПереноса = "Блок";
|
||||||
ИначеЕсли Не ПустаяСтрока(СтруктураРазбораXML.ИмяОбласти) И СтруктураРазбораXML.СтатусОбласти = 1 Тогда
|
|
||||||
ПеренестиЗаписьВПоток(СтруктураРазбораXML, "Абзац" + УровеньАбзаца, ПотокПереноса);
|
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
Если ПотокПереноса = "Блок" Тогда
|
Если ПараметрыАнализа.ТипАнализа <> 1
|
||||||
ВозобновитьЗаписьВПоток(СтруктураРазбораXML, "Блок");
|
ИЛИ НЕ ПустаяСтрока(СтруктураРазбораXML.ИмяОбласти) И СтруктураРазбораXML.СтатусОбласти = 1 Тогда
|
||||||
|
ПеренестиЗаписьВПоток(СтруктураРазбораXML, "Абзац" + УровеньАбзаца, ПотокПереноса);
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
СброситьЗаписьВПоток(СтруктураРазбораXML, "Абзац" + УровеньАбзаца);
|
СброситьЗаписьВПоток(СтруктураРазбораXML, "Абзац" + УровеньАбзаца);
|
||||||
СброситьЗаписьВПоток(СтруктураРазбораXML, "Строки" + УровеньАбзаца);
|
СброситьЗаписьВПоток(СтруктураРазбораXML, "Строки" + УровеньАбзаца);
|
||||||
|
|
||||||
Если Не ПустаяСтрока(СтруктураРазбораXML.ИмяОбласти) И СтруктураРазбораXML.СтатусОбласти = 0 Тогда
|
Если НЕ ПустаяСтрока(СтруктураРазбораXML.ИмяОбласти) И СтруктураРазбораXML.СтатусОбласти = 0 Тогда
|
||||||
СтруктураРазбораXML.СтатусОбласти = 1;
|
СтруктураРазбораXML.СтатусОбласти = 1;
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
УровеньАбзаца = Формат(Число(УровеньАбзаца) - 1, "ЧН=0; ЧГ=0");
|
УровеньАбзаца = Формат(Число(УровеньАбзаца) - 1, "ЧН=0; ЧГ=0");
|
||||||
|
СтруктураРазбораXML.ТекущийУровеньАбзаца = УровеньАбзаца;
|
||||||
Если Число(УровеньАбзаца) > 1 Тогда
|
|
||||||
ВозобновитьЗаписьВПоток(СтруктураРазбораXML, "Строки" + УровеньАбзаца);
|
|
||||||
ВозобновитьЗаписьВПоток(СтруктураРазбораXML, "Абзац" + УровеньАбзаца);
|
|
||||||
ВозобновитьЗаписьВПоток(СтруктураРазбораXML, "СтрокаПарам" + УровеньАбзаца);
|
|
||||||
СтруктураРазбораXML.ИмяПотокаФормата = "СтрокаПарам" + УровеньАбзаца;
|
СтруктураРазбораXML.ИмяПотокаФормата = "СтрокаПарам" + УровеньАбзаца;
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
Если ЧтениеКонцаЛюбогоБлокаКромеПараграфа(СтруктураРазбораXML, ЧтениеXML) И ТекущийУровень = УровеньТэгаБлок Тогда
|
Если ЧтениеКонцаЛюбогоБлокаКромеПараграфа(СтруктураРазбораXML, ЧтениеXML) И ТекущийУровень = УровеньТэгаБлок Тогда
|
||||||
Если Не ПустаяСтрока(СтруктураРазбораXML.ИмяОбласти) И СтруктураРазбораXML.СтатусОбласти = 1 Тогда
|
Если Не ПустаяСтрока(СтруктураРазбораXML.ИмяОбласти) И СтруктураРазбораXML.СтатусОбласти = 1 Тогда
|
||||||
ПеренестиЗаписьВПоток(СтруктураРазбораXML, "Блок", "Область");
|
ПеренестиЗаписьВПоток(СтруктураРазбораXML, "Блок", "Область");
|
||||||
@@ -2520,7 +2516,6 @@
|
|||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
Если ПараметрыАнализа.ТипАнализа = 1 Тогда
|
Если ПараметрыАнализа.ТипАнализа = 1 Тогда
|
||||||
|
|
||||||
ИнициализироватьЗаписьВПоток(СтруктураРазбораXML, "Абзац", "");
|
ИнициализироватьЗаписьВПоток(СтруктураРазбораXML, "Абзац", "");
|
||||||
ПеренестиОткрывающиеТэгиЗаписиВПоток(СтруктураРазбораXML, "Заголовок", "Абзац", "w:body");
|
ПеренестиОткрывающиеТэгиЗаписиВПоток(СтруктураРазбораXML, "Заголовок", "Абзац", "w:body");
|
||||||
|
|
||||||
@@ -2534,7 +2529,6 @@
|
|||||||
СтруктураОбласти.Текст = ТекстОбласти;
|
СтруктураОбласти.Текст = ТекстОбласти;
|
||||||
СтруктураОбласти.НомерРаздела = 0;
|
СтруктураОбласти.НомерРаздела = 0;
|
||||||
ДобавитьВСтруктуруДокументаОбластьДокумента(СтруктураДокумента, СтруктураОбласти);
|
ДобавитьВСтруктуруДокументаОбластьДокумента(СтруктураДокумента, СтруктураОбласти);
|
||||||
|
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
КонецПроцедуры
|
КонецПроцедуры
|
||||||
|
|||||||
@@ -626,11 +626,12 @@
|
|||||||
//
|
//
|
||||||
Функция ЭтоДопустимаяСсылка(Строка) Экспорт
|
Функция ЭтоДопустимаяСсылка(Строка) Экспорт
|
||||||
|
|
||||||
Возврат СтрНачинаетсяС(Строка, "e1cib/")
|
Возврат СтрНачинаетсяС(Строка, "e1c:")
|
||||||
|
Или СтрНачинаетсяС(Строка, "e1cib/")
|
||||||
|
Или СтрНачинаетсяС(Строка, "e1ccs/")
|
||||||
|
Или СтрНачинаетсяС(Строка, "v8help:")
|
||||||
Или СтрНачинаетсяС(Строка, "http:")
|
Или СтрНачинаетсяС(Строка, "http:")
|
||||||
Или СтрНачинаетсяС(Строка, "https:")
|
Или СтрНачинаетсяС(Строка, "https:")
|
||||||
Или СтрНачинаетсяС(Строка, "e1c:")
|
|
||||||
Или СтрНачинаетсяС(Строка, "v8help:")
|
|
||||||
Или СтрНачинаетсяС(Строка, "mailto:")
|
Или СтрНачинаетсяС(Строка, "mailto:")
|
||||||
Или СтрНачинаетсяС(Строка, "tel:")
|
Или СтрНачинаетсяС(Строка, "tel:")
|
||||||
Или СтрНачинаетсяС(Строка, "skype:");
|
Или СтрНачинаетсяС(Строка, "skype:");
|
||||||
|
|||||||
@@ -1138,6 +1138,10 @@
|
|||||||
// * OIDАлгоритмаПодписи - Строка - например, "1.2.643.2.2.3" + Символы.ПС + "1.2.643.7.1.1.3.2" + ...
|
// * OIDАлгоритмаПодписи - Строка - например, "1.2.643.2.2.3" + Символы.ПС + "1.2.643.7.1.1.3.2" + ...
|
||||||
// * ИмяАлгоритмаХеширования - Строка - например, "GOST R 34.11-94" + Символы.ПС + "GOST R 34.11-12" + ...
|
// * ИмяАлгоритмаХеширования - Строка - например, "GOST R 34.11-94" + Символы.ПС + "GOST R 34.11-12" + ...
|
||||||
// * OIDАлгоритмаХеширования - Строка - например, "1.2.643.2.2.9" + Символы.ПС + "1.2.643.7.1.1.2.2" + ...
|
// * OIDАлгоритмаХеширования - Строка - например, "1.2.643.2.2.9" + Символы.ПС + "1.2.643.7.1.1.2.2" + ...
|
||||||
|
// * АлгоритмПодписи - Строка - например, "http://www.w3.org/2001/04/xmldsig-more#gostr34102001-gostr3411"
|
||||||
|
// + Символы.ПС + "urn:ietf:params:xml:ns:cpxmlsec:algorithms:gostr34102012-gostr34112012-256" + ...
|
||||||
|
// * АлгоритмХеширования - Строка - например, "http://www.w3.org/2001/04/xmldsig-more#gostr3411"
|
||||||
|
// + Символы.ПС + "urn:ietf:params:xml:ns:cpxmlsec:algorithms:gostr34112012-256" + ...
|
||||||
//
|
//
|
||||||
Функция ПараметрыXMLDSig() Экспорт
|
Функция ПараметрыXMLDSig() Экспорт
|
||||||
|
|
||||||
|
|||||||
@@ -1179,6 +1179,8 @@
|
|||||||
// XPathSignedInfo - Строка - запрос для получения тега подписываемой информации.
|
// XPathSignedInfo - Строка - запрос для получения тега подписываемой информации.
|
||||||
// OIDАлгоритмаХеширования - Строка - идентификатор алгоритма хеширования.
|
// OIDАлгоритмаХеширования - Строка - идентификатор алгоритма хеширования.
|
||||||
// ИмяАлгоритмаПодписи - Строка - имя алгоритма подписи.
|
// ИмяАлгоритмаПодписи - Строка - имя алгоритма подписи.
|
||||||
|
// АлгоритмХеширования - Строка - алгоритм хеширования в конверте SOAP.
|
||||||
|
// АлгоритмПодписи - Строка - алгоритм подписи в конверте SOAP.
|
||||||
// СертификатКриптографии - СертификатКриптографии - используемый сертификат криптографии.
|
// СертификатКриптографии - СертификатКриптографии - используемый сертификат криптографии.
|
||||||
// МенеджерКриптографии - МенеджерКриптографии - используемый менеджер криптографии.
|
// МенеджерКриптографии - МенеджерКриптографии - используемый менеджер криптографии.
|
||||||
//
|
//
|
||||||
@@ -1213,6 +1215,8 @@
|
|||||||
СвойстваКриптопровайдера.Тип);
|
СвойстваКриптопровайдера.Тип);
|
||||||
|
|
||||||
КонвертSOAP = СтрЗаменить(КонвертSOAP, "%DigestValue%", DigestValue);
|
КонвертSOAP = СтрЗаменить(КонвертSOAP, "%DigestValue%", DigestValue);
|
||||||
|
КонвертSOAP = СтрЗаменить(КонвертSOAP, "%SignatureMethod%", ДанныеАлгоритмаПодписания.ВыбранныйАлгоритмПодписи);
|
||||||
|
КонвертSOAP = СтрЗаменить(КонвертSOAP, "%DigestMethod%", ДанныеАлгоритмаПодписания.ВыбранныйАлгоритмХеширования);
|
||||||
|
|
||||||
SignatureValue = Sign(
|
SignatureValue = Sign(
|
||||||
ОбъектКомпоненты,
|
ОбъектКомпоненты,
|
||||||
@@ -1423,14 +1427,26 @@
|
|||||||
|
|
||||||
OIDАлгоритмовПодписи = СтрРазделить(ДанныеАлгоритмаПодписания.OIDАлгоритмаПодписи, Символы.ПС);
|
OIDАлгоритмовПодписи = СтрРазделить(ДанныеАлгоритмаПодписания.OIDАлгоритмаПодписи, Символы.ПС);
|
||||||
OIDАлгоритмовХеширования = СтрРазделить(ДанныеАлгоритмаПодписания.OIDАлгоритмаХеширования, Символы.ПС);
|
OIDАлгоритмовХеширования = СтрРазделить(ДанныеАлгоритмаПодписания.OIDАлгоритмаХеширования, Символы.ПС);
|
||||||
|
АлгоритмыПодписи = СтрРазделить(ДанныеАлгоритмаПодписания.АлгоритмПодписи, Символы.ПС);
|
||||||
|
АлгоритмыХеширования = СтрРазделить(ДанныеАлгоритмаПодписания.АлгоритмХеширования, Символы.ПС);
|
||||||
|
|
||||||
ДанныеАлгоритмаПодписания.Вставить("OIDВыбранногоАлгоритмаПодписи", Неопределено);
|
ДанныеАлгоритмаПодписания.Вставить("OIDВыбранногоАлгоритмаПодписи", Неопределено);
|
||||||
ДанныеАлгоритмаПодписания.Вставить("OIDВыбранногоАлгоритмаХеширования", Неопределено);
|
ДанныеАлгоритмаПодписания.Вставить("OIDВыбранногоАлгоритмаХеширования", Неопределено);
|
||||||
|
ДанныеАлгоритмаПодписания.Вставить("ВыбранныйАлгоритмПодписи", Неопределено);
|
||||||
|
ДанныеАлгоритмаПодписания.Вставить("ВыбранныйАлгоритмХеширования", Неопределено);
|
||||||
Для Индекс = 0 По OIDАлгоритмовПодписи.Количество() - 1 Цикл
|
Для Индекс = 0 По OIDАлгоритмовПодписи.Количество() - 1 Цикл
|
||||||
|
|
||||||
Если OIDАлгоритмаПодписи = OIDАлгоритмовПодписи[Индекс] Тогда
|
Если OIDАлгоритмаПодписи = OIDАлгоритмовПодписи[Индекс] Тогда
|
||||||
|
|
||||||
ДанныеАлгоритмаПодписания.OIDВыбранногоАлгоритмаПодписи = OIDАлгоритмовПодписи[Индекс];
|
ДанныеАлгоритмаПодписания.OIDВыбранногоАлгоритмаПодписи = OIDАлгоритмовПодписи[Индекс];
|
||||||
ДанныеАлгоритмаПодписания.OIDВыбранногоАлгоритмаХеширования = OIDАлгоритмовХеширования[Индекс];
|
ДанныеАлгоритмаПодписания.OIDВыбранногоАлгоритмаХеширования = OIDАлгоритмовХеширования[Индекс];
|
||||||
|
ДанныеАлгоритмаПодписания.ВыбранныйАлгоритмПодписи = АлгоритмыПодписи[Индекс];
|
||||||
|
ДанныеАлгоритмаПодписания.ВыбранныйАлгоритмХеширования = АлгоритмыХеширования[Индекс];
|
||||||
|
|
||||||
|
Прервать;
|
||||||
|
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
КонецЦикла;
|
КонецЦикла;
|
||||||
|
|
||||||
Если Не ЗначениеЗаполнено(ДанныеАлгоритмаПодписания.OIDВыбранногоАлгоритмаПодписи) Тогда
|
Если Не ЗначениеЗаполнено(ДанныеАлгоритмаПодписания.OIDВыбранногоАлгоритмаПодписи) Тогда
|
||||||
|
|||||||
@@ -3827,14 +3827,26 @@
|
|||||||
|
|
||||||
OIDАлгоритмовПодписи = СтрРазделить(Контекст.ДанныеАлгоритмаПодписания.OIDАлгоритмаПодписи, Символы.ПС);
|
OIDАлгоритмовПодписи = СтрРазделить(Контекст.ДанныеАлгоритмаПодписания.OIDАлгоритмаПодписи, Символы.ПС);
|
||||||
OIDАлгоритмовХеширования = СтрРазделить(Контекст.ДанныеАлгоритмаПодписания.OIDАлгоритмаХеширования, Символы.ПС);
|
OIDАлгоритмовХеширования = СтрРазделить(Контекст.ДанныеАлгоритмаПодписания.OIDАлгоритмаХеширования, Символы.ПС);
|
||||||
|
АлгоритмыПодписи = СтрРазделить(Контекст.ДанныеАлгоритмаПодписания.АлгоритмПодписи, Символы.ПС);
|
||||||
|
АлгоритмыХеширования = СтрРазделить(Контекст.ДанныеАлгоритмаПодписания.АлгоритмХеширования, Символы.ПС);
|
||||||
|
|
||||||
Контекст.ДанныеАлгоритмаПодписания.Вставить("OIDВыбранногоАлгоритмаПодписи", Неопределено);
|
Контекст.ДанныеАлгоритмаПодписания.Вставить("OIDВыбранногоАлгоритмаПодписи", Неопределено);
|
||||||
Контекст.ДанныеАлгоритмаПодписания.Вставить("OIDВыбранногоАлгоритмаХеширования", Неопределено);
|
Контекст.ДанныеАлгоритмаПодписания.Вставить("OIDВыбранногоАлгоритмаХеширования", Неопределено);
|
||||||
|
Контекст.ДанныеАлгоритмаПодписания.Вставить("ВыбранныйАлгоритмПодписи", Неопределено);
|
||||||
|
Контекст.ДанныеАлгоритмаПодписания.Вставить("ВыбранныйАлгоритмХеширования", Неопределено);
|
||||||
Для Индекс = 0 По OIDАлгоритмовПодписи.Количество() - 1 Цикл
|
Для Индекс = 0 По OIDАлгоритмовПодписи.Количество() - 1 Цикл
|
||||||
|
|
||||||
Если OIDАлгоритмаПодписи = OIDАлгоритмовПодписи[Индекс] Тогда
|
Если OIDАлгоритмаПодписи = OIDАлгоритмовПодписи[Индекс] Тогда
|
||||||
|
|
||||||
Контекст.ДанныеАлгоритмаПодписания.OIDВыбранногоАлгоритмаПодписи = OIDАлгоритмовПодписи[Индекс];
|
Контекст.ДанныеАлгоритмаПодписания.OIDВыбранногоАлгоритмаПодписи = OIDАлгоритмовПодписи[Индекс];
|
||||||
Контекст.ДанныеАлгоритмаПодписания.OIDВыбранногоАлгоритмаХеширования = OIDАлгоритмовХеширования[Индекс];
|
Контекст.ДанныеАлгоритмаПодписания.OIDВыбранногоАлгоритмаХеширования = OIDАлгоритмовХеширования[Индекс];
|
||||||
|
Контекст.ДанныеАлгоритмаПодписания.ВыбранныйАлгоритмПодписи = АлгоритмыПодписи[Индекс];
|
||||||
|
Контекст.ДанныеАлгоритмаПодписания.ВыбранныйАлгоритмХеширования = АлгоритмыХеширования[Индекс];
|
||||||
|
|
||||||
|
Прервать;
|
||||||
|
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
КонецЦикла;
|
КонецЦикла;
|
||||||
|
|
||||||
Если Не ЗначениеЗаполнено(Контекст.ДанныеАлгоритмаПодписания.OIDВыбранногоАлгоритмаПодписи) Тогда
|
Если Не ЗначениеЗаполнено(Контекст.ДанныеАлгоритмаПодписания.OIDВыбранногоАлгоритмаПодписи) Тогда
|
||||||
@@ -3847,6 +3859,9 @@
|
|||||||
|
|
||||||
Иначе
|
Иначе
|
||||||
|
|
||||||
|
Контекст.КонвертSOAP = СтрЗаменить(Контекст.КонвертSOAP, "%SignatureMethod%", Контекст.ДанныеАлгоритмаПодписания.ВыбранныйАлгоритмПодписи);
|
||||||
|
Контекст.КонвертSOAP = СтрЗаменить(Контекст.КонвертSOAP, "%DigestMethod%", Контекст.ДанныеАлгоритмаПодписания.ВыбранныйАлгоритмХеширования);
|
||||||
|
|
||||||
Попытка
|
Попытка
|
||||||
|
|
||||||
ОписаниеОповещения = Новый ОписаниеОповещения(
|
ОписаниеОповещения = Новый ОписаниеОповещения(
|
||||||
|
|||||||
@@ -728,6 +728,9 @@
|
|||||||
ДанныеАлгоритмаПодписания.Вставить("ИмяАлгоритмаХеширования", "");
|
ДанныеАлгоритмаПодписания.Вставить("ИмяАлгоритмаХеширования", "");
|
||||||
ДанныеАлгоритмаПодписания.Вставить("OIDАлгоритмаХеширования", "");
|
ДанныеАлгоритмаПодписания.Вставить("OIDАлгоритмаХеширования", "");
|
||||||
|
|
||||||
|
ДанныеАлгоритмаПодписания.Вставить("АлгоритмПодписи", "");
|
||||||
|
ДанныеАлгоритмаПодписания.Вставить("АлгоритмХеширования", "");
|
||||||
|
|
||||||
Возврат ДанныеАлгоритмаПодписания;
|
Возврат ДанныеАлгоритмаПодписания;
|
||||||
|
|
||||||
КонецФункции
|
КонецФункции
|
||||||
|
|||||||
@@ -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="1ee0438e-33d1-4041-9c99-311208bd86f8">
|
<mdclass:Configuration xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="fbf5a25a-1828-4fe3-912a-924fd0620b24">
|
||||||
<name>БиблиотекаСтандартныхПодсистем</name>
|
<name>БиблиотекаСтандартныхПодсистем</name>
|
||||||
<synonym>
|
<synonym>
|
||||||
<key>ru</key>
|
<key>ru</key>
|
||||||
<value>Библиотека стандартных подсистем, редакция 3.0</value>
|
<value>Библиотека стандартных подсистем, редакция 3.0</value>
|
||||||
</synonym>
|
</synonym>
|
||||||
<containedObjects classId="9cd510cd-abfc-11d4-9434-004095e12fc7" objectId="41bd8225-9e8b-40f9-86ea-c4323c7b60c5"/>
|
<containedObjects classId="9cd510cd-abfc-11d4-9434-004095e12fc7" objectId="59e70b74-c130-4665-ac42-765cddef1e66"/>
|
||||||
<containedObjects classId="9fcd25a0-4822-11d4-9414-008048da11f9" objectId="b37fd7c9-ab2c-4feb-8f67-e7da29d401cc"/>
|
<containedObjects classId="9fcd25a0-4822-11d4-9414-008048da11f9" objectId="28648567-0472-4ff8-a6d3-ec8a55886055"/>
|
||||||
<containedObjects classId="e3687481-0a87-462c-a166-9f34594f9bba" objectId="ef00857b-417e-4809-822a-a984460722d7"/>
|
<containedObjects classId="e3687481-0a87-462c-a166-9f34594f9bba" objectId="b5c0294f-2927-4411-bf19-7045e1246a4a"/>
|
||||||
<containedObjects classId="9de14907-ec23-4a07-96f0-85521cb6b53b" objectId="6c197325-d188-404b-9db4-8dedf89f0b74"/>
|
<containedObjects classId="9de14907-ec23-4a07-96f0-85521cb6b53b" objectId="6b77ec45-46ac-4c97-9782-fb7f1eff999e"/>
|
||||||
<containedObjects classId="51f2d5d8-ea4d-4064-8892-82951750031e" objectId="fc5b9722-798e-4ea1-90f4-c3ed8b7c57d1"/>
|
<containedObjects classId="51f2d5d8-ea4d-4064-8892-82951750031e" objectId="8bc394b9-89af-40a1-ad8b-7f21c5885eca"/>
|
||||||
<containedObjects classId="e68182ea-4237-4383-967f-90c1e3370bc7" objectId="d5948d73-dc6a-4347-aff9-8a6cbecc02ee"/>
|
<containedObjects classId="e68182ea-4237-4383-967f-90c1e3370bc7" objectId="22ed3ded-0ea3-4628-adae-aaf8708b68d0"/>
|
||||||
<containedObjects classId="fb282519-d103-4dd3-bc12-cb271d631dfc" objectId="82737521-d6a2-4f21-941d-c754a0d0adea"/>
|
<containedObjects classId="fb282519-d103-4dd3-bc12-cb271d631dfc" objectId="8d16713b-b2cf-4f2a-a61e-aeaadbe959fc"/>
|
||||||
<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>Фирма "1С"</vendor>
|
<vendor>Фирма "1С"</vendor>
|
||||||
<version>3.0.2.257</version>
|
<version>3.0.2.264</version>
|
||||||
<updateCatalogAddress>http://downloads.v8.1c.ru/tmplts/</updateCatalogAddress>
|
<updateCatalogAddress>http://downloads.v8.1c.ru/tmplts/</updateCatalogAddress>
|
||||||
<includeHelpInContents>true</includeHelpInContents>
|
<includeHelpInContents>true</includeHelpInContents>
|
||||||
<usedMobileApplicationFunctionalities>
|
<usedMobileApplicationFunctionalities>
|
||||||
|
|||||||
@@ -1 +1 @@
|
|||||||
{6,1,1,c8b60082-cd06-4fc5-80dc-378c1df80da5,1,9affdca9-be24-4f60-8a6b-eca9a2357587,"3.0.2.257","Фирма ""1С""","БиблиотекаСтандартныхПодсистем",6024,1,0,1ee0438e-33d1-4041-9c99-311208bd86f8,1ee0438e-33d1-4041-9c99-311208bd86f8,1,0,db4a9ccb-9ef5-4b3c-8577-b6fe5db1b62e,db4a9ccb-9ef5-4b3c-8577-b6fe5db1b62e,1,0,9233322b-dfdb-4c66-91fe-1299292d40a5,9233322b-dfdb-4c66-91fe-1299292d40a5,1,0,7795348b-2f52-47f7-bf00-e11e5e795a43,7795348b-2f52-47f7-bf00-e11e5e795a43,1,0,0421b67e-ed26-491d-ab98-ec59002ed4ce,0421b67e-ed26-491d-ab98-ec59002ed4ce,1,0,bb47ced2-31f9-4870-8633-20b986e53ccc,bb47ced2-31f9-4870-8633-20b986e53ccc,1,0,7d8acec9-f5a9-411e-921c-446ed0dd3332,7d8acec9-f5a9-411e-921c-446ed0dd3332,1,0,739c01a9-1125-45ef-ab4e-8c73af4eeff0,739c01a9-1125-45ef-ab4e-8c73af4eeff0,1,0,cdbd26b1-9583-46e8-adf7-8cc705639892,cdbd26b1-9583-46e8-adf7-8cc705639892,1,0,c0e38c3e-7088-4e35-9d84-2d0ab9655402,c0e38c3e-7088-4e35-9d84-2d0ab9655402,1,0,1098786f-dd24-4cce-b212-be0cb5f01735,1098786f-dd24-4cce-b212-be0cb5f01735,1,0,3c0037f3-4422-4836-b116-8c72e32bdd55,3c0037f3-4422-4836-b116-8c72e32bdd55,1,0,6f7c6c31-206b-4010-bdad-1ad2e304f154,6f7c6c31-206b-4010-bdad-1ad2e304f154,1,0,a8659e53-8c6b-4b0c-9736-fe93a91e4d69,a8659e53-8c6b-4b0c-9736-fe93a91e4d69,1,0,fe9a1d1a-19c0-499f-8e1b-09cadabe882f,fe9a1d1a-19c0-499f-8e1b-09cadabe882f,1,0,5b68d479-7880-44de-84e3-7f578b43f0dc,5b68d479-7880-44de-84e3-7f578b43f0dc,1,0,bf9ca98c-5c95-4cfb-9181-8c1d847f9fbb,bf9ca98c-5c95-4cfb-9181-8c1d847f9fbb,1,0,b4629308-42de-4ce8-8591-cf0c2399a9a2,b4629308-42de-4ce8-8591-cf0c2399a9a2,1,0,c7e984ae-1dbb-4041-b18a-bfd0d63a002f,c7e984ae-1dbb-4041-b18a-bfd0d63a002f,1,0,bb0424b8-dfd1-4a27-bd66-9dea3ffc77c4,bb0424b8-dfd1-4a27-bd66-9dea3ffc77c4,1,0,a4ac0a50-ee39-4dc1-b84f-eec8fe485f03,a4ac0a50-ee39-4dc1-b84f-eec8fe485f03,1,0,1861ee4f-fd8c-4afa-8441-c074bf51f67e,1861ee4f-fd8c-4afa-8441-c074bf51f67e,1,0,de7ed8f7-3c02-47e0-aea8-4747ac68a5d5,de7ed8f7-3c02-47e0-aea8-4747ac68a5d5,1,0,b93b8760-6200-40ee-8bdc-875ba80a6155,b93b8760-6200-40ee-8bdc-875ba80a6155,1,0,c27472ee-879a-4746-9d21-122738ec80b7,c27472ee-879a-4746-9d21-122738ec80b7,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,ec797c75-02c5-4cf5-9dd4-26cd46c99519,ec797c75-02c5-4cf5-9dd4-26cd46c99519,1,0,6fccdf59-fc99-4a2b-a144-fffe438a147c,6fccdf59-fc99-4a2b-a144-fffe438a147c,1,0,af8bd73a-d8e8-487d-8f36-d835ab10ea3a,af8bd73a-d8e8-487d-8f36-d835ab10ea3a,1,0,08a413ff-bebd-42e5-8ff3-2115746a0844,08a413ff-bebd-42e5-8ff3-2115746a0844,1,0,da9b32e6-5b93-45a6-84b2-238d57541e18,da9b32e6-5b93-45a6-84b2-238d57541e18,1,0,e43d69c8-b284-47da-b236-611bc94a15b6,e43d69c8-b284-47da-b236-611bc94a15b6,1,0,31eeaa05-6c49-41fe-b840-1edbad4ccac7,31eeaa05-6c49-41fe-b840-1edbad4ccac7,1,0,842c8662-8f39-405e-9665-cbdabc116159,842c8662-8f39-405e-9665-cbdabc116159,1,0,fca4b033-02c4-4d61-9e51-87783c3cef1a,fca4b033-02c4-4d61-9e51-87783c3cef1a,1,0,396ef757-d7f6-411f-8c4c-1acb1106a009,396ef757-d7f6-411f-8c4c-1acb1106a009,1,0,839e29b1-a0d2-40fa-9f3e-46e66b943358,839e29b1-a0d2-40fa-9f3e-46e66b943358,1,0,c56d2cc7-630a-441b-b23f-ba78c34849bd,c56d2cc7-630a-441b-b23f-ba78c34849bd,1,0,9aecf4f5-46ed-4d1c-a584-cd028e467895,9aecf4f5-46ed-4d1c-a584-cd028e467895,1,0,21d92c2f-6c78-43ce-b1f4-59d7845b5a91,21d92c2f-6c78-43ce-b1f4-59d7845b5a91,1,0,a1c379be-43d3-4e02-83bb-d2e7de2d4ae3,a1c379be-43d3-4e02-83bb-d2e7de2d4ae3,1,0,a1f10624-22e9-4a04-b370-fd085bdd0f67,a1f10624-22e9-4a04-b370-fd085bdd0f67,1,0,2a4b10be-3cd7-4755-905f-7b4d02ff6a22,2a4b10be-3cd7-4755-905f-7b4d02ff6a22,1,0,3cffb795-2a28-4beb-92f4-5813f5994022,3cffb795-2a28-4beb-92f4-5813f5994022,1,0,3323ca68-1382-4710-a933-23fc56588935,3323ca68-1382-4710-a933-23fc56588935,1,0,d6b12775-3255-42b8-88b2-62684f873e7d,d6b12775-3255-42b8-88b2-62684f873e7d,1,0,cc23d903-ccc5-42f4-862f-5e7278c4e346,cc23d903-ccc5-42f4-862f-5e7278c4e346,1,0,98f033e0-fa40-46e0-b51a-87a066749a35,98f033e0-fa40-46e0-b51a-87a066749a35,1,0,e8b4cb2d-1180-4101-954a-4cb5464f198c,e8b4cb2d-1180-4101-954a-4cb5464f198c,1,0,a379287d-1ce8-460d-a503-910e728e28f1,a379287d-1ce8-460d-a503-910e728e28f1,1,0,f765c4ba-c677-42ac-8d0c-43bb485405b9,f765c4ba-c677-42ac-8d0c-43bb485405b9,1,0,83192b3e-e7a9-4595-8887-24cda84457a9,83192b3e-e7a9-4595-8887-24cda84457a9,1,0,2fd1287d-d96d-4480-baf7-8815ae5ffbfb,2fd1287d-d96d-4480-baf7-8815ae5ffbfb,1,0,c8a4c5da-bc88-4f6e-9787-1c22c2f41be7,c8a4c5da-bc88-4f6e-9787-1c22c2f41be7,1,0,08eeb8f1-944f-4450-83f6-ef20aaab7d86,08eeb8f1-944f-4450-83f6-ef20aaab7d86,1,0,d8c58e53-b7b9-4426-bdfa-d0816adf8cc1,d8c58e53-b7b9-4426-bdfa-d0816adf8cc1,1,0,8d77dd4a-e646-4105-8dcf-8ce8fc3da0b4,8d77dd4a-e646-4105-8dcf-8ce8fc3da0b4,1,0,2fd12dba-5311-4f31-949c-f6b15decc0cc,2fd12dba-5311-4f31-949c-f6b15decc0cc,1,0,d7cf3981-cf63-4a21-868b-8175a7704a8f,d7cf3981-cf63-4a21-868b-8175a7704a8f,1,0,35895e12-52b6-49a1-acdf-6d828a948af0,35895e12-52b6-49a1-acdf-6d828a948af0,1,0,0ae93712-74e8-41c7-8f2d-4dfc8983697d,0ae93712-74e8Line truncated
|
{6,1,1,3c9df8d0-67aa-458d-8233-9f5afeeb2912,1,dada1dfd-068d-46eb-8298-6b1be4527c2c,"3.0.2.264","Фирма ""1С""","БиблиотекаСтандартныхПодсистем",6024,1,0,fbf5a25a-1828-4fe3-912a-924fd0620b24,fbf5a25a-1828-4fe3-912a-924fd0620b24,1,0,db4a9ccb-9ef5-4b3c-8577-b6fe5db1b62e,db4a9ccb-9ef5-4b3c-8577-b6fe5db1b62e,1,0,9233322b-dfdb-4c66-91fe-1299292d40a5,9233322b-dfdb-4c66-91fe-1299292d40a5,1,0,7795348b-2f52-47f7-bf00-e11e5e795a43,7795348b-2f52-47f7-bf00-e11e5e795a43,1,0,0421b67e-ed26-491d-ab98-ec59002ed4ce,0421b67e-ed26-491d-ab98-ec59002ed4ce,1,0,bb47ced2-31f9-4870-8633-20b986e53ccc,bb47ced2-31f9-4870-8633-20b986e53ccc,1,0,7d8acec9-f5a9-411e-921c-446ed0dd3332,7d8acec9-f5a9-411e-921c-446ed0dd3332,1,0,739c01a9-1125-45ef-ab4e-8c73af4eeff0,739c01a9-1125-45ef-ab4e-8c73af4eeff0,1,0,cdbd26b1-9583-46e8-adf7-8cc705639892,cdbd26b1-9583-46e8-adf7-8cc705639892,1,0,c0e38c3e-7088-4e35-9d84-2d0ab9655402,c0e38c3e-7088-4e35-9d84-2d0ab9655402,1,0,1098786f-dd24-4cce-b212-be0cb5f01735,1098786f-dd24-4cce-b212-be0cb5f01735,1,0,3c0037f3-4422-4836-b116-8c72e32bdd55,3c0037f3-4422-4836-b116-8c72e32bdd55,1,0,6f7c6c31-206b-4010-bdad-1ad2e304f154,6f7c6c31-206b-4010-bdad-1ad2e304f154,1,0,a8659e53-8c6b-4b0c-9736-fe93a91e4d69,a8659e53-8c6b-4b0c-9736-fe93a91e4d69,1,0,fe9a1d1a-19c0-499f-8e1b-09cadabe882f,fe9a1d1a-19c0-499f-8e1b-09cadabe882f,1,0,5b68d479-7880-44de-84e3-7f578b43f0dc,5b68d479-7880-44de-84e3-7f578b43f0dc,1,0,bf9ca98c-5c95-4cfb-9181-8c1d847f9fbb,bf9ca98c-5c95-4cfb-9181-8c1d847f9fbb,1,0,b4629308-42de-4ce8-8591-cf0c2399a9a2,b4629308-42de-4ce8-8591-cf0c2399a9a2,1,0,c7e984ae-1dbb-4041-b18a-bfd0d63a002f,c7e984ae-1dbb-4041-b18a-bfd0d63a002f,1,0,bb0424b8-dfd1-4a27-bd66-9dea3ffc77c4,bb0424b8-dfd1-4a27-bd66-9dea3ffc77c4,1,0,a4ac0a50-ee39-4dc1-b84f-eec8fe485f03,a4ac0a50-ee39-4dc1-b84f-eec8fe485f03,1,0,1861ee4f-fd8c-4afa-8441-c074bf51f67e,1861ee4f-fd8c-4afa-8441-c074bf51f67e,1,0,de7ed8f7-3c02-47e0-aea8-4747ac68a5d5,de7ed8f7-3c02-47e0-aea8-4747ac68a5d5,1,0,b93b8760-6200-40ee-8bdc-875ba80a6155,b93b8760-6200-40ee-8bdc-875ba80a6155,1,0,c27472ee-879a-4746-9d21-122738ec80b7,c27472ee-879a-4746-9d21-122738ec80b7,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,ec797c75-02c5-4cf5-9dd4-26cd46c99519,ec797c75-02c5-4cf5-9dd4-26cd46c99519,1,0,6fccdf59-fc99-4a2b-a144-fffe438a147c,6fccdf59-fc99-4a2b-a144-fffe438a147c,1,0,af8bd73a-d8e8-487d-8f36-d835ab10ea3a,af8bd73a-d8e8-487d-8f36-d835ab10ea3a,1,0,08a413ff-bebd-42e5-8ff3-2115746a0844,08a413ff-bebd-42e5-8ff3-2115746a0844,1,0,da9b32e6-5b93-45a6-84b2-238d57541e18,da9b32e6-5b93-45a6-84b2-238d57541e18,1,0,e43d69c8-b284-47da-b236-611bc94a15b6,e43d69c8-b284-47da-b236-611bc94a15b6,1,0,31eeaa05-6c49-41fe-b840-1edbad4ccac7,31eeaa05-6c49-41fe-b840-1edbad4ccac7,1,0,842c8662-8f39-405e-9665-cbdabc116159,842c8662-8f39-405e-9665-cbdabc116159,1,0,fca4b033-02c4-4d61-9e51-87783c3cef1a,fca4b033-02c4-4d61-9e51-87783c3cef1a,1,0,396ef757-d7f6-411f-8c4c-1acb1106a009,396ef757-d7f6-411f-8c4c-1acb1106a009,1,0,839e29b1-a0d2-40fa-9f3e-46e66b943358,839e29b1-a0d2-40fa-9f3e-46e66b943358,1,0,c56d2cc7-630a-441b-b23f-ba78c34849bd,c56d2cc7-630a-441b-b23f-ba78c34849bd,1,0,9aecf4f5-46ed-4d1c-a584-cd028e467895,9aecf4f5-46ed-4d1c-a584-cd028e467895,1,0,21d92c2f-6c78-43ce-b1f4-59d7845b5a91,21d92c2f-6c78-43ce-b1f4-59d7845b5a91,1,0,a1c379be-43d3-4e02-83bb-d2e7de2d4ae3,a1c379be-43d3-4e02-83bb-d2e7de2d4ae3,1,0,a1f10624-22e9-4a04-b370-fd085bdd0f67,a1f10624-22e9-4a04-b370-fd085bdd0f67,1,0,2a4b10be-3cd7-4755-905f-7b4d02ff6a22,2a4b10be-3cd7-4755-905f-7b4d02ff6a22,1,0,3cffb795-2a28-4beb-92f4-5813f5994022,3cffb795-2a28-4beb-92f4-5813f5994022,1,0,3323ca68-1382-4710-a933-23fc56588935,3323ca68-1382-4710-a933-23fc56588935,1,0,d6b12775-3255-42b8-88b2-62684f873e7d,d6b12775-3255-42b8-88b2-62684f873e7d,1,0,cc23d903-ccc5-42f4-862f-5e7278c4e346,cc23d903-ccc5-42f4-862f-5e7278c4e346,1,0,98f033e0-fa40-46e0-b51a-87a066749a35,98f033e0-fa40-46e0-b51a-87a066749a35,1,0,e8b4cb2d-1180-4101-954a-4cb5464f198c,e8b4cb2d-1180-4101-954a-4cb5464f198c,1,0,a379287d-1ce8-460d-a503-910e728e28f1,a379287d-1ce8-460d-a503-910e728e28f1,1,0,f765c4ba-c677-42ac-8d0c-43bb485405b9,f765c4ba-c677-42ac-8d0c-43bb485405b9,1,0,83192b3e-e7a9-4595-8887-24cda84457a9,83192b3e-e7a9-4595-8887-24cda84457a9,1,0,2fd1287d-d96d-4480-baf7-8815ae5ffbfb,2fd1287d-d96d-4480-baf7-8815ae5ffbfb,1,0,c8a4c5da-bc88-4f6e-9787-1c22c2f41be7,c8a4c5da-bc88-4f6e-9787-1c22c2f41be7,1,0,08eeb8f1-944f-4450-83f6-ef20aaab7d86,08eeb8f1-944f-4450-83f6-ef20aaab7d86,1,0,d8c58e53-b7b9-4426-bdfa-d0816adf8cc1,d8c58e53-b7b9-4426-bdfa-d0816adf8cc1,1,0,8d77dd4a-e646-4105-8dcf-8ce8fc3da0b4,8d77dd4a-e646-4105-8dcf-8ce8fc3da0b4,1,0,2fd12dba-5311-4f31-949c-f6b15decc0cc,2fd12dba-5311-4f31-949c-f6b15decc0cc,1,0,d7cf3981-cf63-4a21-868b-8175a7704a8f,d7cf3981-cf63-4a21-868b-8175a7704a8f,1,0,35895e12-52b6-49a1-acdf-6d828a948af0,35895e12-52b6-49a1-acdf-6d828a948af0,1,0,0ae93712-74e8-41c7-8f2d-4dfc8983697d,0ae93712-74e8Line truncated
|
||||||
@@ -186,6 +186,10 @@
|
|||||||
<items xsi:type="form:FormField">
|
<items xsi:type="form:FormField">
|
||||||
<name>ОтвеченныеАнкетыАнкета</name>
|
<name>ОтвеченныеАнкетыАнкета</name>
|
||||||
<id>18</id>
|
<id>18</id>
|
||||||
|
<title>
|
||||||
|
<key>ru</key>
|
||||||
|
<value>Анкета</value>
|
||||||
|
</title>
|
||||||
<visible>true</visible>
|
<visible>true</visible>
|
||||||
<enabled>true</enabled>
|
<enabled>true</enabled>
|
||||||
<userVisible/>
|
<userVisible/>
|
||||||
|
|||||||
+1
-1
@@ -707,7 +707,7 @@
|
|||||||
НастройкаXDTO = ОбменДаннымиСервер.ЭтоПланОбменаXDTO(ИмяПланаОбмена);
|
НастройкаXDTO = ОбменДаннымиСервер.ЭтоПланОбменаXDTO(ИмяПланаОбмена);
|
||||||
НастройкаУниверсальногоОбмена = ОбменДаннымиПовтИсп.ЭтоУзелСтандартногоОбменаДанными(ИмяПланаОбмена); // без правил конвертации
|
НастройкаУниверсальногоОбмена = ОбменДаннымиПовтИсп.ЭтоУзелСтандартногоОбменаДанными(ИмяПланаОбмена); // без правил конвертации
|
||||||
|
|
||||||
ДоступнаИнтерактивнаяОтправка = Не НастройкаРИБ;
|
ДоступнаИнтерактивнаяОтправка = Не НастройкаРИБ И Не НастройкаУниверсальногоОбмена;
|
||||||
|
|
||||||
Если Не ОбменДаннымиСВнешнейСистемой Тогда
|
Если Не ОбменДаннымиСВнешнейСистемой Тогда
|
||||||
|
|
||||||
|
|||||||
@@ -542,6 +542,10 @@
|
|||||||
<items xsi:type="form:FormField">
|
<items xsi:type="form:FormField">
|
||||||
<name>СписокСсылка</name>
|
<name>СписокСсылка</name>
|
||||||
<id>84</id>
|
<id>84</id>
|
||||||
|
<title>
|
||||||
|
<key>ru</key>
|
||||||
|
<value>Ссылка</value>
|
||||||
|
</title>
|
||||||
<visible>true</visible>
|
<visible>true</visible>
|
||||||
<enabled>true</enabled>
|
<enabled>true</enabled>
|
||||||
<userVisible/>
|
<userVisible/>
|
||||||
|
|||||||
@@ -5328,7 +5328,8 @@
|
|||||||
//
|
//
|
||||||
Функция ПолучитьИнтерфейсОбработчикаПКС(ПКО, ПКГС, Правило, ИмяОбработчика)
|
Функция ПолучитьИнтерфейсОбработчикаПКС(ПКО, ПКГС, Правило, ИмяОбработчика)
|
||||||
|
|
||||||
ИмяОбласти = "ПК" + ?(Правило.ЭтоГруппа, "Г", "") + "С_" + ИмяОбработчика;
|
ПрефиксИмени = ?(Правило.ЭтоГруппа, "ПКГС", "ПКС");
|
||||||
|
ИмяОбласти = ПрефиксИмени + "_" + ИмяОбработчика;
|
||||||
|
|
||||||
ИмяВладельца = "_" + СокрЛП(ПКО.Имя);
|
ИмяВладельца = "_" + СокрЛП(ПКО.Имя);
|
||||||
|
|
||||||
|
|||||||
@@ -174,6 +174,10 @@
|
|||||||
<items xsi:type="form:FormField">
|
<items xsi:type="form:FormField">
|
||||||
<name>СписокВедущаяТаблица</name>
|
<name>СписокВедущаяТаблица</name>
|
||||||
<id>24</id>
|
<id>24</id>
|
||||||
|
<title>
|
||||||
|
<key>ru</key>
|
||||||
|
<value>Ведущая таблица</value>
|
||||||
|
</title>
|
||||||
<visible>true</visible>
|
<visible>true</visible>
|
||||||
<enabled>true</enabled>
|
<enabled>true</enabled>
|
||||||
<userVisible>
|
<userVisible>
|
||||||
|
|||||||
@@ -158,6 +158,10 @@
|
|||||||
<items xsi:type="form:FormField">
|
<items xsi:type="form:FormField">
|
||||||
<name>ОперацияСтатистикиНаименование</name>
|
<name>ОперацияСтатистикиНаименование</name>
|
||||||
<id>44</id>
|
<id>44</id>
|
||||||
|
<title>
|
||||||
|
<key>ru</key>
|
||||||
|
<value>Операция статистики (наименование)</value>
|
||||||
|
</title>
|
||||||
<visible>true</visible>
|
<visible>true</visible>
|
||||||
<enabled>true</enabled>
|
<enabled>true</enabled>
|
||||||
<userVisible>
|
<userVisible>
|
||||||
|
|||||||
@@ -205,6 +205,10 @@
|
|||||||
<items xsi:type="form:FormField">
|
<items xsi:type="form:FormField">
|
||||||
<name>ОперацияСтатистикиНаименование</name>
|
<name>ОперацияСтатистикиНаименование</name>
|
||||||
<id>31</id>
|
<id>31</id>
|
||||||
|
<title>
|
||||||
|
<key>ru</key>
|
||||||
|
<value>Операция статистики (наименование)</value>
|
||||||
|
</title>
|
||||||
<visible>true</visible>
|
<visible>true</visible>
|
||||||
<enabled>true</enabled>
|
<enabled>true</enabled>
|
||||||
<userVisible>
|
<userVisible>
|
||||||
|
|||||||
+2
-1
@@ -73,7 +73,8 @@
|
|||||||
Отказ = Истина;
|
Отказ = Истина;
|
||||||
|
|
||||||
ОповещениеОЗакрытии = Новый ОписаниеОповещения("РазрешитьВнешнийРесурсЗавершение", ЭтотОбъект, ПараметрыЗаписи);
|
ОповещениеОЗакрытии = Новый ОписаниеОповещения("РазрешитьВнешнийРесурсЗавершение", ЭтотОбъект, ПараметрыЗаписи);
|
||||||
Если ОбщегоНазначенияКлиент.ПодсистемаСуществует("СтандартныеПодсистемы.ПрофилиБезопасности") Тогда
|
Если СтандартныеПодсистемыКлиент.ЗапускПрограммыЗавершен()
|
||||||
|
И ОбщегоНазначенияКлиент.ПодсистемаСуществует("СтандартныеПодсистемы.ПрофилиБезопасности") Тогда
|
||||||
Запросы = СоздатьЗапросНаИспользованиеВнешнихРесурсов(Запись, Истина, Истина, Истина, Истина);
|
Запросы = СоздатьЗапросНаИспользованиеВнешнихРесурсов(Запись, Истина, Истина, Истина, Истина);
|
||||||
МодульРаботаВБезопасномРежимеКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("РаботаВБезопасномРежимеКлиент");
|
МодульРаботаВБезопасномРежимеКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("РаботаВБезопасномРежимеКлиент");
|
||||||
МодульРаботаВБезопасномРежимеКлиент.ПрименитьЗапросыНаИспользованиеВнешнихРесурсов(Запросы, ЭтотОбъект, ОповещениеОЗакрытии);
|
МодульРаботаВБезопасномРежимеКлиент.ПрименитьЗапросыНаИспользованиеВнешнихРесурсов(Запросы, ЭтотОбъект, ОповещениеОЗакрытии);
|
||||||
|
|||||||
@@ -407,6 +407,10 @@
|
|||||||
<items xsi:type="form:FormField">
|
<items xsi:type="form:FormField">
|
||||||
<name>ОшибкиОбъектаXDTOСсылка</name>
|
<name>ОшибкиОбъектаXDTOСсылка</name>
|
||||||
<id>749</id>
|
<id>749</id>
|
||||||
|
<title>
|
||||||
|
<key>ru</key>
|
||||||
|
<value>Данные</value>
|
||||||
|
</title>
|
||||||
<visible>true</visible>
|
<visible>true</visible>
|
||||||
<enabled>true</enabled>
|
<enabled>true</enabled>
|
||||||
<userVisible>
|
<userVisible>
|
||||||
@@ -1296,6 +1300,10 @@
|
|||||||
<items xsi:type="form:FormField">
|
<items xsi:type="form:FormField">
|
||||||
<name>НепроведенныеДокументыСсылка</name>
|
<name>НепроведенныеДокументыСсылка</name>
|
||||||
<id>255</id>
|
<id>255</id>
|
||||||
|
<title>
|
||||||
|
<key>ru</key>
|
||||||
|
<value>Данные</value>
|
||||||
|
</title>
|
||||||
<visible>true</visible>
|
<visible>true</visible>
|
||||||
<enabled>true</enabled>
|
<enabled>true</enabled>
|
||||||
<userVisible/>
|
<userVisible/>
|
||||||
@@ -5888,6 +5896,10 @@
|
|||||||
<items xsi:type="form:FormField">
|
<items xsi:type="form:FormField">
|
||||||
<name>ОшибкиПриВыполненииКодаОбработчиковОтправкиСсылка</name>
|
<name>ОшибкиПриВыполненииКодаОбработчиковОтправкиСсылка</name>
|
||||||
<id>788</id>
|
<id>788</id>
|
||||||
|
<title>
|
||||||
|
<key>ru</key>
|
||||||
|
<value>Данные</value>
|
||||||
|
</title>
|
||||||
<visible>true</visible>
|
<visible>true</visible>
|
||||||
<enabled>true</enabled>
|
<enabled>true</enabled>
|
||||||
<userVisible>
|
<userVisible>
|
||||||
@@ -6397,6 +6409,10 @@
|
|||||||
<items xsi:type="form:FormField">
|
<items xsi:type="form:FormField">
|
||||||
<name>ОшибкиПриВыполненииКодаОбработчиковПолученияСсылка</name>
|
<name>ОшибкиПриВыполненииКодаОбработчиковПолученияСсылка</name>
|
||||||
<id>812</id>
|
<id>812</id>
|
||||||
|
<title>
|
||||||
|
<key>ru</key>
|
||||||
|
<value>Данные</value>
|
||||||
|
</title>
|
||||||
<visible>true</visible>
|
<visible>true</visible>
|
||||||
<enabled>true</enabled>
|
<enabled>true</enabled>
|
||||||
<userVisible>
|
<userVisible>
|
||||||
|
|||||||
@@ -122,6 +122,7 @@
|
|||||||
ДобавитьРесурсРасчетаКоличестваЗаписей(СхемаКомпоновкиДанных);
|
ДобавитьРесурсРасчетаКоличестваЗаписей(СхемаКомпоновкиДанных);
|
||||||
|
|
||||||
СписокРегистров = СписокРегистров();
|
СписокРегистров = СписокРегистров();
|
||||||
|
СписокВыбранныхРегистров = СписокВыбранныхРегистров(СписокРегистров, Настройки, ПользовательскиеНастройки);
|
||||||
|
|
||||||
НайденныйПараметр = СхемаКомпоновкиДанных.Параметры.Найти("СписокРегистров");
|
НайденныйПараметр = СхемаКомпоновкиДанных.Параметры.Найти("СписокРегистров");
|
||||||
НайденныйПараметр.УстановитьДоступныеЗначения(СписокРегистров);
|
НайденныйПараметр.УстановитьДоступныеЗначения(СписокРегистров);
|
||||||
@@ -130,7 +131,7 @@
|
|||||||
|
|
||||||
ЗначенияПараметров = Новый Структура;
|
ЗначенияПараметров = Новый Структура;
|
||||||
ЗначенияПараметров.Вставить("ДокументВладелец", ПараметрыОтчета.ДокументВладелец);
|
ЗначенияПараметров.Вставить("ДокументВладелец", ПараметрыОтчета.ДокументВладелец);
|
||||||
ЗначенияПараметров.Вставить("СписокРегистров", СписокРегистров);
|
ЗначенияПараметров.Вставить("СписокРегистров", СписокВыбранныхРегистров);
|
||||||
|
|
||||||
УстановитьПараметрыДанных(Настройки, ЗначенияПараметров, ПользовательскиеНастройки);
|
УстановитьПараметрыДанных(Настройки, ЗначенияПараметров, ПользовательскиеНастройки);
|
||||||
|
|
||||||
@@ -1965,6 +1966,38 @@
|
|||||||
|
|
||||||
КонецФункции
|
КонецФункции
|
||||||
|
|
||||||
|
Функция СписокВыбранныхРегистров(СписокРегистров, Настройки, ПользовательскиеНастройки)
|
||||||
|
|
||||||
|
ЭлементНастройки = Настройки.ПараметрыДанных.Элементы.Найти("СписокРегистров");
|
||||||
|
|
||||||
|
Если ЭлементНастройки = Неопределено Тогда
|
||||||
|
Возврат СписокРегистров;
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
|
ЭлементПользовательскойНастройки = ПользовательскиеНастройки.Элементы.Найти(
|
||||||
|
ЭлементНастройки.ИдентификаторПользовательскойНастройки);
|
||||||
|
|
||||||
|
Если ЭлементПользовательскойНастройки = Неопределено Тогда
|
||||||
|
Возврат СписокРегистров;
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
|
Если ТипЗнч(ЭлементПользовательскойНастройки.Значение) = Тип("СписокЗначений")
|
||||||
|
И ЭлементПользовательскойНастройки.Значение.Количество() > 0 Тогда
|
||||||
|
Возврат ЭлементПользовательскойНастройки.Значение;
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
|
Если ТипЗнч(ЭлементПользовательскойНастройки.Значение) <> Тип("Строка")
|
||||||
|
Или Не ЗначениеЗаполнено(ЭлементПользовательскойНастройки.Значение) Тогда
|
||||||
|
Возврат СписокРегистров;
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
|
СписокВыбранныхРегистров = Новый СписокЗначений;
|
||||||
|
СписокВыбранныхРегистров.Добавить(ЭлементПользовательскойНастройки.Значение);
|
||||||
|
|
||||||
|
Возврат СписокВыбранныхРегистров;
|
||||||
|
|
||||||
|
КонецФункции
|
||||||
|
|
||||||
Процедура УстановитьПараметрыДанных(Настройки, ЗначенияПараметров, ПользовательскиеНастройки = Неопределено)
|
Процедура УстановитьПараметрыДанных(Настройки, ЗначенияПараметров, ПользовательскиеНастройки = Неопределено)
|
||||||
|
|
||||||
ПараметрыДанных = Настройки.ПараметрыДанных.Элементы;
|
ПараметрыДанных = Настройки.ПараметрыДанных.Элементы;
|
||||||
|
|||||||
@@ -881,93 +881,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>InformationRegister.СлужебныеАдресныеСведения</name>
|
<name>InformationRegister.СлужебныеАдресныеСведения</name>
|
||||||
<right>
|
<right>
|
||||||
@@ -6363,6 +6276,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>CommonForm.ПодключениеКонечнойТочки</name>
|
<name>CommonForm.ПодключениеКонечнойТочки</name>
|
||||||
<right>
|
<right>
|
||||||
|
|||||||
@@ -14,37 +14,6 @@
|
|||||||
<value>true</value>
|
<value>true</value>
|
||||||
</right>
|
</right>
|
||||||
</object>
|
</object>
|
||||||
<object>
|
|
||||||
<name>Configuration.БиблиотекаСтандартныхПодсистем</name>
|
|
||||||
<right>
|
|
||||||
<name>MainWindowModeNormal</name>
|
|
||||||
<value>true</value>
|
|
||||||
</right>
|
|
||||||
<right>
|
|
||||||
<name>MainWindowModeWorkplace</name>
|
|
||||||
<value>true</value>
|
|
||||||
</right>
|
|
||||||
<right>
|
|
||||||
<name>MainWindowModeEmbeddedWorkplace</name>
|
|
||||||
<value>true</value>
|
|
||||||
</right>
|
|
||||||
<right>
|
|
||||||
<name>MainWindowModeFullscreenWorkplace</name>
|
|
||||||
<value>true</value>
|
|
||||||
</right>
|
|
||||||
<right>
|
|
||||||
<name>MainWindowModeKiosk</name>
|
|
||||||
<value>true</value>
|
|
||||||
</right>
|
|
||||||
<right>
|
|
||||||
<name>AnalyticsSystemClient</name>
|
|
||||||
<value>true</value>
|
|
||||||
</right>
|
|
||||||
<right>
|
|
||||||
<name>Output</name>
|
|
||||||
<value>true</value>
|
|
||||||
</right>
|
|
||||||
</object>
|
|
||||||
<object>
|
<object>
|
||||||
<name>Catalog.РассылкиОтчетов.Command.СобытияРассылки</name>
|
<name>Catalog.РассылкиОтчетов.Command.СобытияРассылки</name>
|
||||||
<right>
|
<right>
|
||||||
@@ -107,6 +76,37 @@
|
|||||||
<value>true</value>
|
<value>true</value>
|
||||||
</right>
|
</right>
|
||||||
</object>
|
</object>
|
||||||
|
<object>
|
||||||
|
<name>Configuration.БиблиотекаСтандартныхПодсистем</name>
|
||||||
|
<right>
|
||||||
|
<name>MainWindowModeNormal</name>
|
||||||
|
<value>true</value>
|
||||||
|
</right>
|
||||||
|
<right>
|
||||||
|
<name>MainWindowModeWorkplace</name>
|
||||||
|
<value>true</value>
|
||||||
|
</right>
|
||||||
|
<right>
|
||||||
|
<name>MainWindowModeEmbeddedWorkplace</name>
|
||||||
|
<value>true</value>
|
||||||
|
</right>
|
||||||
|
<right>
|
||||||
|
<name>MainWindowModeFullscreenWorkplace</name>
|
||||||
|
<value>true</value>
|
||||||
|
</right>
|
||||||
|
<right>
|
||||||
|
<name>MainWindowModeKiosk</name>
|
||||||
|
<value>true</value>
|
||||||
|
</right>
|
||||||
|
<right>
|
||||||
|
<name>AnalyticsSystemClient</name>
|
||||||
|
<value>true</value>
|
||||||
|
</right>
|
||||||
|
<right>
|
||||||
|
<name>Output</name>
|
||||||
|
<value>true</value>
|
||||||
|
</right>
|
||||||
|
</object>
|
||||||
<restrictionTemplate>
|
<restrictionTemplate>
|
||||||
<name>ДляОбъекта(ПолеОбъекта)</name>
|
<name>ДляОбъекта(ПолеОбъекта)</name>
|
||||||
<condition>// ДляОбъекта(ПолеОбъекта = "")
|
<condition>// ДляОбъекта(ПолеОбъекта = "")
|
||||||
|
|||||||
@@ -1270,45 +1270,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>InformationRegister.СлужебныеАдресныеСведения</name>
|
<name>InformationRegister.СлужебныеАдресныеСведения</name>
|
||||||
<right>
|
<right>
|
||||||
@@ -8146,6 +8107,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>CommonForm.ПодключениеКонечнойТочки</name>
|
<name>CommonForm.ПодключениеКонечнойТочки</name>
|
||||||
<right>
|
<right>
|
||||||
|
|||||||
@@ -3,6 +3,24 @@
|
|||||||
<setForNewObjects>false</setForNewObjects>
|
<setForNewObjects>false</setForNewObjects>
|
||||||
<setForAttributesByDefault>true</setForAttributesByDefault>
|
<setForAttributesByDefault>true</setForAttributesByDefault>
|
||||||
<independentRightsOfChildObjects>false</independentRightsOfChildObjects>
|
<independentRightsOfChildObjects>false</independentRightsOfChildObjects>
|
||||||
|
<object>
|
||||||
|
<name>DataProcessor.ЖурналРегистрации.Command.ЖурналРегистрации</name>
|
||||||
|
<right>
|
||||||
|
<name>View</name>
|
||||||
|
<value>true</value>
|
||||||
|
</right>
|
||||||
|
</object>
|
||||||
|
<object>
|
||||||
|
<name>DataProcessor.ЖурналРегистрации</name>
|
||||||
|
<right>
|
||||||
|
<name>Use</name>
|
||||||
|
<value>true</value>
|
||||||
|
</right>
|
||||||
|
<right>
|
||||||
|
<name>View</name>
|
||||||
|
<value>true</value>
|
||||||
|
</right>
|
||||||
|
</object>
|
||||||
<object>
|
<object>
|
||||||
<name>Configuration.БиблиотекаСтандартныхПодсистем</name>
|
<name>Configuration.БиблиотекаСтандартныхПодсистем</name>
|
||||||
<right>
|
<right>
|
||||||
@@ -34,22 +52,4 @@
|
|||||||
<value>true</value>
|
<value>true</value>
|
||||||
</right>
|
</right>
|
||||||
</object>
|
</object>
|
||||||
<object>
|
|
||||||
<name>DataProcessor.ЖурналРегистрации.Command.ЖурналРегистрации</name>
|
|
||||||
<right>
|
|
||||||
<name>View</name>
|
|
||||||
<value>true</value>
|
|
||||||
</right>
|
|
||||||
</object>
|
|
||||||
<object>
|
|
||||||
<name>DataProcessor.ЖурналРегистрации</name>
|
|
||||||
<right>
|
|
||||||
<name>Use</name>
|
|
||||||
<value>true</value>
|
|
||||||
</right>
|
|
||||||
<right>
|
|
||||||
<name>View</name>
|
|
||||||
<value>true</value>
|
|
||||||
</right>
|
|
||||||
</object>
|
|
||||||
</Rights>
|
</Rights>
|
||||||
@@ -442,8 +442,9 @@
|
|||||||
УстановитьПривилегированныйРежим(Истина);
|
УстановитьПривилегированныйРежим(Истина);
|
||||||
|
|
||||||
// Проверяем наличие узла плана обмена (возможно узел уже удален).
|
// Проверяем наличие узла плана обмена (возможно узел уже удален).
|
||||||
Если ОбменДаннымиСервер.УзелПланаОбменаПоКоду(ИмяПланаОбмена, КодУзла) = Неопределено Тогда
|
УзелСсылка = ОбменДаннымиСервер.УзелПланаОбменаПоКоду(ИмяПланаОбмена, КодУзла);
|
||||||
|
Если УзелСсылка = Неопределено
|
||||||
|
Или ОбщегоНазначения.ЗначениеРеквизитаОбъекта(УзелСсылка, "ПометкаУдаления") Тогда
|
||||||
ПредставлениеПрограммы = ?(ОбщегоНазначения.РазделениеВключено(),
|
ПредставлениеПрограммы = ?(ОбщегоНазначения.РазделениеВключено(),
|
||||||
Метаданные.Синоним, ОбменДаннымиПовтИсп.ИмяЭтойИнформационнойБазы());
|
Метаданные.Синоним, ОбменДаннымиПовтИсп.ИмяЭтойИнформационнойБазы());
|
||||||
|
|
||||||
|
|||||||
@@ -368,8 +368,9 @@
|
|||||||
УстановитьПривилегированныйРежим(Истина);
|
УстановитьПривилегированныйРежим(Истина);
|
||||||
|
|
||||||
// Проверяем наличие узла плана обмена (возможно узел уже удален).
|
// Проверяем наличие узла плана обмена (возможно узел уже удален).
|
||||||
Если ОбменДаннымиСервер.УзелПланаОбменаПоКоду(ИмяПланаОбмена, КодУзла) = Неопределено Тогда
|
УзелСсылка = ОбменДаннымиСервер.УзелПланаОбменаПоКоду(ИмяПланаОбмена, КодУзла);
|
||||||
|
Если УзелСсылка = Неопределено
|
||||||
|
Или ОбщегоНазначения.ЗначениеРеквизитаОбъекта(УзелСсылка, "ПометкаУдаления") Тогда
|
||||||
ПредставлениеПрограммы = ?(ОбщегоНазначения.РазделениеВключено(),
|
ПредставлениеПрограммы = ?(ОбщегоНазначения.РазделениеВключено(),
|
||||||
Метаданные.Синоним, ОбменДаннымиПовтИсп.ИмяЭтойИнформационнойБазы());
|
Метаданные.Синоним, ОбменДаннымиПовтИсп.ИмяЭтойИнформационнойБазы());
|
||||||
|
|
||||||
|
|||||||
Reference in new issue
Block a user