3_0_1_225

This commit is contained in:
Компания 1С committed 2018-08-02 11:19:00 +03:00
1 parent 2630908c42
commit 8c1f18d668
83 files changed
+1806 -820

No files matched your search

@@ -357,6 +357,7 @@
<borderColor xsi:type="core:ColorRef">
<color>Style.BorderColor</color>
</borderColor>
<currentRowUse>SelectionPresentationAndChoice</currentRowUse>
<autoMaxCardHeight>true</autoMaxCardHeight>
<extInfo xsi:type="form:DynamicListTableExtInfo">
<autoRefreshPeriod>60</autoRefreshPeriod>
@@ -14,6 +14,20 @@
ПодключаемыеКоманды.ПриСозданииНаСервере(ЭтотОбъект);
// Конец СтандартныеПодсистемы.ПодключаемыеКоманды
Если ОбщегоНазначенияКлиентСервер.ЭтоМобильныйКлиент() Тогда
ПоложениеКоманднойПанели = ПоложениеКоманднойПанелиФормы.Авто;
Для каждого ЭлементФормы Из Элементы.КоманднаяПанель.ПодчиненныеЭлементы Цикл
Элементы.Переместить(ЭлементФормы, Элементы.ФормаКоманднаяПанель);
КонецЦикла;
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(Элементы, "КоманднаяПанель", "Видимость", Ложь);
КонецЕсли;
КонецПроцедуры
#КонецОбласти
@@ -10,6 +10,12 @@
ЗаполнитьТаблицы();
Если ОбщегоНазначенияКлиентСервер.ЭтоМобильныйКлиент() Тогда
ПоложениеКоманднойПанели = ПоложениеКоманднойПанелиФормы.Авто;
КонецЕсли;
КонецПроцедуры
#КонецОбласти
@@ -39,6 +39,12 @@
КонецЕсли;
КонецЦикла;
Если ОбщегоНазначенияКлиентСервер.ЭтоМобильныйКлиент() Тогда
ПоложениеКоманднойПанели = ПоложениеКоманднойПанелиФормы.Авто;
КонецЕсли;
КонецПроцедуры
#КонецОбласти
@@ -1516,6 +1516,7 @@
<rowPictureDataPath xsi:type="form:DataPath">
<segments>Список.DefaultPicture</segments>
</rowPictureDataPath>
<currentRowUse>SelectionPresentationAndChoice</currentRowUse>
<autoMaxCardHeight>true</autoMaxCardHeight>
<extInfo xsi:type="form:DynamicListTableExtInfo">
<autoRefreshPeriod>60</autoRefreshPeriod>
@@ -107,6 +107,20 @@
Элементы.ГруппаПояснениеСервис.Видимость = ОбщегоНазначения.РазделениеВключено();
Если ОбщегоНазначенияКлиентСервер.ЭтоМобильныйКлиент() Тогда
ПоложениеКоманднойПанели = ПоложениеКоманднойПанелиФормы.Авто;
Для каждого ЭлементФормы Из Элементы.КоманднаяПанель.ПодчиненныеЭлементы Цикл
Элементы.Переместить(ЭлементФормы, Элементы.ФормаКоманднаяПанель);
КонецЦикла;
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(Элементы, "КоманднаяПанель", "Видимость", Ложь);
КонецЕсли;
КонецПроцедуры
&НаСервере
@@ -40,12 +40,20 @@
Если ВыборГрупп Тогда
Если Элементы.Найти("ФормаСоздать") <> Неопределено Тогда
Элементы.ФормаСоздать.Видимость = Ложь;
Элементы.СписокКонтекстноеМенюСоздать.Видимость = Ложь;
Элементы.ФормаСоздать.Видимость = Ложь;
КонецЕсли;
КонецЕсли;
ПриИзмененииСвойства();
Если ОбщегоНазначенияКлиентСервер.ЭтоМобильныйКлиент() Тогда
Элементы.Переместить(Элементы.ОсновныеКоманды, Элементы.ФормаКоманднаяПанель);
Элементы.Переместить(Элементы.ДополнительныеКоманды, Элементы.ФормаКоманднаяПанель);
Элементы.Переместить(Элементы.ФормаСправка, Элементы.ФормаКоманднаяПанель);
КонецЕсли;
КонецПроцедуры
&НаКлиенте
@@ -28,6 +28,15 @@
УстановитьЗаголовок();
ПриИзмененииСвойства();
Если ОбщегоНазначенияКлиентСервер.ЭтоМобильныйКлиент() Тогда
Элементы.Переместить(Элементы.ОсновныеКоманды, Элементы.ФормаКоманднаяПанель);
Элементы.Переместить(Элементы.ДополнительныеКоманды, Элементы.ФормаКоманднаяПанель);
Элементы.Переместить(Элементы.ФормаСправка, Элементы.ФормаКоманднаяПанель);
КонецЕсли;
КонецПроцедуры
&НаКлиенте
@@ -18,6 +18,20 @@
ЕстьГрупповоеИзменениеРеквизитов = ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ГрупповоеИзменениеОбъектов");
Элементы.СписокИзменитьВыделенные.Видимость = ЕстьГрупповоеИзменениеРеквизитов И МожноРедактировать;
Если ОбщегоНазначенияКлиентСервер.ЭтоМобильныйКлиент() Тогда
ПоложениеКоманднойПанели = ПоложениеКоманднойПанелиФормы.Авто;
Для каждого ЭлементФормы Из Элементы.КоманднаяПанель.ПодчиненныеЭлементы Цикл
Элементы.Переместить(ЭлементФормы, Элементы.ФормаКоманднаяПанель);
КонецЦикла;
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(Элементы, "КоманднаяПанель", "Видимость", Ложь);
КонецЕсли;
КонецПроцедуры
#КонецОбласти
@@ -26,6 +26,14 @@
ПереключитьВидимостьНедействующихБанков(Ложь);
Если ОбщегоНазначенияКлиентСервер.ЭтоМобильныйКлиент() Тогда
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(Элементы, "ФормаСоздать", "ТолькоВоВсехДействиях", Истина);
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(Элементы, "ФормаСоздатьГруппу", "ТолькоВоВсехДействиях", Истина);
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(Элементы, "ФормаЗагрузитьКлассификатор", "Заголовок", НСтр("ru ='Загрузить'"));
КонецЕсли;
КонецПроцедуры
#КонецОбласти
@@ -491,6 +491,32 @@
<autoCommandBar>
<name>ФормаКоманднаяПанель</name>
<id>-1</id>
<items xsi:type="form:Button">
<name>ФормаСоздатьМобильныйКлиент</name>
<id>40</id>
<enabled>true</enabled>
<userVisible>
<common>true</common>
</userVisible>
<extendedTooltip>
<name>ФормаСоздатьМобильныйКлиентРасширеннаяПодсказка</name>
<id>41</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<commandName>Form.Item.Список.StandardCommand.Create</commandName>
<buttonImportance>Normal</buttonImportance>
<representation>Auto</representation>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<placementArea>UserCmds</placementArea>
<representationInContextMenu>Auto</representationInContextMenu>
<locationInCommandBar>InAdditionalSubmenu</locationInCommandBar>
</items>
<horizontalAlign>Left</horizontalAlign>
</autoCommandBar>
<handlers>
@@ -24,6 +24,25 @@
ТолькоПросмотр = Истина;
КонецЕсли;
Если ОбщегоНазначенияКлиентСервер.ЭтоМобильныйКлиент() Тогда
Для каждого ЭлементФормы Из Элементы.КоманднаяПанель.ПодчиненныеЭлементы Цикл
Элементы.Переместить(ЭлементФормы, Элементы.ФормаКоманднаяПанель);
КонецЦикла;
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(Элементы, "ФормаЗагрузитьКлассификатор", "Заголовок", НСтр("ru ='Загрузить'"));
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(Элементы, "ФормаЗагрузитьКлассификатор", "КнопкаПоУмолчанию", Истина);
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(Элементы, "ФормаЗагрузитьКлассификатор", "АктивизироватьПоУмолчанию", Истина);
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(Элементы, "ФормаСоздать", "Видимость", Ложь);
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(Элементы, "ФормаСоздатьМобильныйКлиент", "Видимость", Истина);
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(Элементы, "КоманднаяПанель", "Видимость", Ложь);
КонецЕсли;
КонецПроцедуры
#КонецОбласти
@@ -895,10 +895,6 @@
<key>ru</key>
<value>Командная панель формы мобильный клиент</value>
</title>
<toolTip>
<key>ru</key>
<value>Командная панель формы мобильный клиент</value>
</toolTip>
<extendedTooltip>
<name>КоманднаяПанельФормыМобильныйКлиентРасширеннаяПодсказка</name>
<id>186</id>
@@ -12,6 +12,18 @@
Элементы.Список.ТекущаяСтрока = Параметры.ТекущаяПапка;
КонецЕсли;
Если ОбщегоНазначенияКлиентСервер.ЭтоМобильныйКлиент() Тогда
Для каждого ЭлементФормы Из Элементы.КоманднаяПанель.ПодчиненныеЭлементы Цикл
Элементы.Переместить(ЭлементФормы, Элементы.ФормаКоманднаяПанель);
КонецЦикла;
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(Элементы, "КоманднаяПанель", "Видимость", Ложь);
КонецЕсли;
КонецПроцедуры
#КонецОбласти
@@ -3,8 +3,13 @@
&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
Элементы.Срок.Подсказка
= Метаданные.РегистрыСведений.СведенияОПользователях.Ресурсы.СрокДействия.Подсказка;
Элементы.Срок.Подсказка = Метаданные.РегистрыСведений.СведенияОПользователях.Ресурсы.СрокДействия.Подсказка;
Если ОбщегоНазначенияКлиентСервер.ЭтоМобильныйКлиент() Тогда
ПоложениеКоманднойПанели = ПоложениеКоманднойПанелиФормы.Авто;
КонецЕсли;
КонецПроцедуры
@@ -26,6 +26,16 @@
ЗаполнитьПользователейИБ();
Если ОбщегоНазначенияКлиентСервер.ЭтоМобильныйКлиент() Тогда
ПоложениеКоманднойПанели = ПоложениеКоманднойПанелиФормы.Авто;
Элементы.Переместить(Элементы.КоманднаяПанель, Элементы.ФормаКоманднаяПанель);
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(Элементы, "КоманднаяПанель", "Вид", ВидГруппыФормы.ГруппаКнопок);
КонецЕсли;
КонецПроцедуры
&НаКлиенте
@@ -500,6 +500,7 @@
<items xsi:type="form:FormGroup">
<name>ГруппаГруппы</name>
<id>75</id>
<displayImportance>VeryHigh</displayImportance>
<items xsi:type="form:Table">
<name>ГруппыПользователей</name>
<id>25</id>
@@ -758,6 +759,7 @@
<rowsPicture xsi:type="core:PictureRef">
<picture>CommonPicture.СостоянияПользователей</picture>
</rowsPicture>
<currentRowUse>SelectionPresentationAndChoice</currentRowUse>
<autoMaxCardHeight>true</autoMaxCardHeight>
<extInfo xsi:type="form:DynamicListTableExtInfo">
<autoRefreshPeriod>60</autoRefreshPeriod>
@@ -918,6 +920,7 @@
<items xsi:type="form:FormGroup">
<name>ГруппаПользователи</name>
<id>76</id>
<displayImportance>VeryHigh</displayImportance>
<items xsi:type="form:Table">
<name>ПользователиСписок</name>
<id>48</id>
@@ -172,6 +172,22 @@
Элементы.ГруппыПользователей.ТолькоПросмотр = Истина;
КонецЕсли;
Если ОбщегоНазначенияКлиентСервер.ЭтоМобильныйКлиент() Тогда
Элементы.Переместить(Элементы.КоманднаяПанель, Элементы.ФормаКоманднаяПанель);
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(Элементы, "КоманднаяПанель", "Вид", ВидГруппыФормы.ГруппаКнопок);
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(Элементы, "ГруппыПользователей", "ПоложениеЗаголовка", ПоложениеЗаголовкаЭлементаФормы.Авто);
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(Элементы, "ГруппыПользователей", "ВариантУправленияВысотой", ВариантУправленияВысотойТаблицы.ВСтрокахТаблицы);
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(Элементы, "ГруппыПользователей", "РастягиватьПоВертикали", Ложь);
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(Элементы, "ГруппыПользователей", "Высота", 4);
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(Элементы, "ГруппыПользователей", "АвтоМаксимальнаяВысота", Ложь);
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(Элементы, "ГруппыПользователей", "МаксимальнаяВысота", 4);
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(Элементы, "ПользователиСписок", "ПоложениеЗаголовка", ПоложениеЗаголовкаЭлементаФормы.Авто);
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(Элементы, "ЗавершитьИЗакрыть", "Заголовок", НСтр("ru ='Завершить'"));
КонецЕсли;
КонецПроцедуры
&НаКлиенте
@@ -163,6 +163,15 @@
Элементы.ПотребоватьСменуПароляПриВходе.РасширеннаяПодсказка.Заголовок =
ПользователиСлужебный.ПодсказкаПотребоватьСменуПароляПриВходе(Ложь);
Если ОбщегоНазначенияКлиентСервер.ЭтоМобильныйКлиент() Тогда
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(Элементы, "ФормаЗаписатьИЗакрыть", "Картинка", БиблиотекаКартинок.ЗаписатьИЗакрыть);
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(Элементы, "ФормаЗаписатьИЗакрыть", "Отображение", ОтображениеКнопки.Картинка);
Элементы.Комментарий.ПодсказкаВвода = НСтр("ru ='Произвольный текст'");
КонецЕсли;
КонецПроцедуры
@@ -23,6 +23,17 @@
Элементы.Создать.Вид = ВидГруппыФормы.ГруппаКнопок;
КонецЕсли;
Если ОбщегоНазначенияКлиентСервер.ЭтоМобильныйКлиент() Тогда
Элементы.Переместить(Элементы.КоманднаяПанель, Элементы.ФормаКоманднаяПанель);
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(Элементы, "КоманднаяПанель", "Вид", ВидГруппыФормы.ГруппаКнопок);
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(Элементы, "Создать", "Картинка", БиблиотекаКартинок.СоздатьЭлементСписка);
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(Элементы, "Создать", "Отображение", ОтображениеКнопки.Картинка);
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(Элементы, "СоздатьКалендарь", "Картинка", БиблиотекаКартинок.Пустая);
КонецЕсли;
КонецПроцедуры
&НаКлиенте
@@ -18,6 +18,13 @@
ЭтотОбъект.Каталог = "/каталог/";
КонецЕсли;
ВидимостьДоступность(ЭтотОбъект);
Если ОбщегоНазначенияКлиентСервер.ЭтоМобильныйКлиент() Тогда
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(Элементы, "ФормаОК", "Картинка", БиблиотекаКартинок.ЗаписатьИЗакрыть);
КонецЕсли;
КонецПроцедуры
#КонецОбласти
@@ -26,6 +26,18 @@
Если Не ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ЗагрузкаДанныхИзФайла") Тогда
Элементы.ВставитьИзБуфераОбмена.Видимость = Ложь;
КонецЕсли;
Если ОбщегоНазначенияКлиентСервер.ЭтоМобильныйКлиент() Тогда
Элементы.Переместить(Элементы.ГруппаКоманднаяПанель, Элементы.ФормаКоманднаяПанель);
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(Элементы, "ГруппаКоманднаяПанель", "Вид", ВидГруппыФормы.ГруппаКнопок);
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(Элементы, "ВставитьИзБуфераОбмена", "ТолькоВоВсехДействиях", Истина);
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(Элементы, "ПолучателиУстановитьПометки", "ТолькоВоВсехДействиях", Истина);
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(Элементы, "ПолучателиСнятьПометки", "ТолькоВоВсехДействиях", Истина);
КонецЕсли;
КонецПроцедуры
#КонецОбласти
@@ -75,6 +75,15 @@
Если Не ПравоДоступа("ЖурналРегистрации", Метаданные) Тогда
Элементы.СобытияРассылки.Видимость = Ложь;
КонецЕсли;
Если ОбщегоНазначенияКлиентСервер.ЭтоМобильныйКлиент() Тогда
Элементы.Переместить(Элементы.КоманднаяПанель, Элементы.ФормаКоманднаяПанель);
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(Элементы, "КоманднаяПанель", "Вид", ВидГруппыФормы.ГруппаКнопок);
КонецЕсли;
КонецПроцедуры
&НаСервере
@@ -231,6 +231,14 @@
Для Каждого Строка Из Объект.Отчеты Цикл
Строка.НеОтправлятьПустой = Не Строка.ОтправлятьЕслиПустой;
КонецЦикла;
Если ОбщегоНазначенияКлиентСервер.ЭтоМобильныйКлиент() Тогда
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(Элементы, "КомандаЗаписатьИЗакрыть", "Отображение", ОтображениеКнопки.Картинка);
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(Элементы, "КомандаЗаписатьИЗакрыть", "Картинка", БиблиотекаКартинок.ЗаписатьИЗакрыть);
КонецЕсли;
КонецПроцедуры
&НаКлиенте
@@ -46,7 +46,24 @@
Элементы.КлассификаторКонтекстноеМенюИзменить.Видимость = ЕстьПравоРедактироватьСтраны;
Элементы.КлассификаторИзменить.Видимость = ЕстьПравоРедактироватьСтраны;
Элементы.Классификатор.ТолькоПросмотр = НЕ ЕстьПравоРедактироватьСтраны;
Если ОбщегоНазначенияКлиентСервер.ЭтоМобильныйКлиент() Тогда
ПоложениеКоманднойПанели = ПоложениеКоманднойПанелиФормы.Авто;
Элементы.Переместить(Элементы.КлассификаторИзменить, Элементы.ФормаКоманднаяПанель);
Элементы.Переместить(Элементы.КлассификаторГруппаВывестиСписок, Элементы.ФормаКоманднаяПанель);
Элементы.Переместить(Элементы.КлассификаторГруппаПоиск, Элементы.ФормаКоманднаяПанель);
Элементы.Переместить(Элементы.КлассификаторСортироватьСписокПоВозрастанию, Элементы.ФормаКоманднаяПанель);
Элементы.Переместить(Элементы.КлассификаторСортироватьСписокПоУбыванию, Элементы.ФормаКоманднаяПанель);
Элементы.Переместить(Элементы.КлассификаторСправка, Элементы.ФормаКоманднаяПанель);
Элементы.КлассификаторГруппаВывестиСписок.Вид = ВидГруппыФормы.ГруппаКнопок;
Элементы.КлассификаторГруппаПоиск.Вид = ВидГруппыФормы.ГруппаКнопок;
Элементы.Классификатор.ПоложениеКоманднойПанели = ПоложениеКоманднойПанелиЭлементаФормы.Нет;
КонецЕсли;
КонецПроцедуры
#КонецОбласти
@@ -658,6 +658,37 @@
<autoCommandBar>
<name>ФормаКоманднаяПанель</name>
<id>-1</id>
<items xsi:type="form:FormGroup">
<name>ГруппаДобавитьМобильныйКлиент</name>
<id>60</id>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
<common>true</common>
</userVisible>
<title>
<key>ru</key>
<value>Добавить</value>
</title>
<extendedTooltip>
<name>ГруппаДобавитьМобильныйКлиентРасширеннаяПодсказка</name>
<id>61</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<type>Popup</type>
<extInfo xsi:type="form:PopupGroupExtInfo">
<picture xsi:type="core:PictureRef">
<picture>StdPicture.CreateListItem</picture>
</picture>
<representation>Picture</representation>
<importance>Normal</importance>
</extInfo>
</items>
<horizontalAlign>Left</horizontalAlign>
<autoFill>true</autoFill>
</autoCommandBar>
@@ -61,6 +61,28 @@
КонецЕсли;
КонецЕсли;
Если ОбщегоНазначенияКлиентСервер.ЭтоМобильныйКлиент() Тогда
ПоложениеКоманднойПанели = ПоложениеКоманднойПанелиФормы.Авто;
Для каждого ЭлементФормы Из Элементы.СписокКоманднаяПанель.ПодчиненныеЭлементы Цикл
Элементы.Переместить(ЭлементФормы, Элементы.ФормаКоманднаяПанель);
КонецЦикла;
Элементы.Переместить(Элементы.СписокКлассификатор, Элементы.ФормаКоманднаяПанель);
Элементы.Переместить(Элементы.СписокВыбратьИзКлассификатора, Элементы.ГруппаДобавитьМобильныйКлиент);
Элементы.Переместить(Элементы.СписокСоздать, Элементы.ГруппаДобавитьМобильныйКлиент);
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(Элементы, "СписокСоздать", "Заголовок", НСтр("ru ='Новый...'"));
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(Элементы, "СписокСоздать", "ТолькоВоВсехДействиях", Ложь);
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(Элементы, "СписокСоздать", "Картинка", БиблиотекаКартинок.Пустая);
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(Элементы, "СписокВыбратьИзКлассификатора", "Заголовок", НСтр("ru ='Из классификатора'"));
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(Элементы, "СписокВыбратьИзКлассификатора", "Картинка", БиблиотекаКартинок.Пустая);
КонецЕсли;
КонецПроцедуры
&НаКлиенте
@@ -9,6 +9,14 @@
КонецЕсли;
Элементы.ПеренестиВсеФайлыВТома.Видимость = ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаСФайлами");
Если ОбщегоНазначенияКлиентСервер.ЭтоМобильныйКлиент() Тогда
Элементы.Переместить(Элементы.КоманднаяПанель, Элементы.ФормаКоманднаяПанель);
Элементы.КоманднаяПанель.Вид = ВидГруппыФормы.ГруппаКнопок;
КонецЕсли;
КонецПроцедуры
#КонецОбласти
@@ -42,6 +42,13 @@
Элементы.ПолныйПутьLinux.АвтоОтметкаНезаполненного = Истина;
КонецЕсли;
Если ОбщегоНазначенияКлиентСервер.ЭтоМобильныйКлиент() Тогда
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(Элементы, "ФормаЗаписатьИЗакрыть", "Картинка", БиблиотекаКартинок.ЗаписатьИЗакрыть);
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(Элементы, "ФормаЗаписатьИЗакрыть", "Отображение", ОтображениеКнопки.Картинка);
КонецЕсли;
КонецПроцедуры
&НаКлиенте
@@ -2103,7 +2103,7 @@
<searchStringLocation>None</searchStringLocation>
<viewStatusLocation>None</viewStatusLocation>
<searchControlLocation>None</searchControlLocation>
<currentRowUse>SelectionPresentation</currentRowUse>
<currentRowUse>SelectionPresentationAndChoice</currentRowUse>
<autoMaxCardHeight>true</autoMaxCardHeight>
<extInfo xsi:type="form:DynamicListTableExtInfo">
<autoRefreshPeriod>60</autoRefreshPeriod>
@@ -236,6 +236,7 @@
<items xsi:type="form:Table">
<name>Папки</name>
<id>11</id>
<displayImportance>VeryHigh</displayImportance>
<title>
<key>ru</key>
<value>Папки</value>
@@ -552,6 +553,7 @@
<items xsi:type="form:Table">
<name>Список</name>
<id>2</id>
<displayImportance>VeryHigh</displayImportance>
<title>
<key>ru</key>
<value>Список</value>
@@ -25,6 +25,21 @@
Элементы.ФормаПоказыватьКонтекстныеШаблоны.Видимость = Пользователи.ЭтоПолноправныйПользователь();
Если ОбщегоНазначенияКлиентСервер.ЭтоМобильныйКлиент() Тогда
Элементы.Переместить(Элементы.ГруппаКоманднаяПанельСписка, Элементы.ФормаКоманднаяПанель);
Элементы.ГруппаКоманднаяПанельСписка.Вид = ВидГруппыФормы.ГруппаКнопок;
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(Элементы, "ФормаГруппаСоздать", "Картинка", БиблиотекаКартинок.СоздатьЭлементСписка);
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(Элементы, "ФормаГруппаСоздать", "Отображение", ОтображениеКнопки.Картинка);
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(Элементы, "ФормаГруппаСоздать", "Заголовок", НСтр("ru ='Создать'"));
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(Элементы, "ФормаСоздатьШаблонЭлектронногоПисьма", "ТолькоВоВсехДействиях", Ложь);
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(Элементы, "ФормаСоздатьШаблонСообщенияSMS", "ТолькоВоВсехДействиях", Ложь);
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(Элементы, "Справка", "ТолькоВоВсехДействиях", Истина);
КонецЕсли;
КонецПроцедуры
&НаКлиенте
@@ -71,12 +71,8 @@
</userVisible>
<title>
<key>ru</key>
<value>Группа мобильный клиент</value>
<value>Мобильный клиент</value>
</title>
<toolTip>
<key>ru</key>
<value>Группа мобильный клиент</value>
</toolTip>
<extendedTooltip>
<name>ГруппаМобильныйКлиентРасширеннаяПодсказка</name>
<id>37</id>
@@ -31,7 +31,7 @@
ПоложениеКоманднойПанели = ПоложениеКоманднойПанелиФормы.Авто;
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(Элементы, "Закрыть", "Видимость", Ложь);
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(Элементы, "Справка", "ТольковоВсехДействиях", Истина);
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(Элементы, "Справка", "ТолькоВоВсехДействиях", Истина);
КонецЕсли;
@@ -95,7 +95,7 @@
ТекущиеДанные.ДоступнаИнтерактивнаяОтправка И Не ТекущиеДанные.ЗапускОбменаИзКорреспондента;
Элементы.СписокПриложенийВыполнитьСинхронизациюСДополнительнымиОтборами.Доступность =
ТекущиеДанные.ДоступнаИнтерактивнаяОтправка;
ТекущиеДанные.ДоступнаИнтерактивнаяОтправка И Не ТекущиеДанные.ЗапускОбменаИзКорреспондента;
КонецПроцедуры
@@ -736,7 +736,8 @@
СтрокаПриложение.РежимРаботыПриложения = ?(ВидТранспорта = Перечисления.ВидыТранспортаСообщенийОбмена.WS,
1, 0);
Если Не ЗначениеЗаполнено(ВидТранспорта) Тогда
Если Не ЗначениеЗаполнено(ВидТранспорта)
Или (ВидТранспорта = Перечисления.ВидыТранспортаСообщенийОбмена.WSПассивныйРежим) Тогда
// Обмен с этой базой настроен через WS.
СтрокаПриложение.ЗапускОбменаИзКорреспондента = Истина;
КонецЕсли;
@@ -99,16 +99,8 @@
Возврат Уровни;
КонецФункции
Функция АдминистративноТерриториальныйАдрес() Экспорт
Возврат "Административно-территориальный";
КонецФункции
Функция МуниципальныйАдрес() Экспорт
Возврат "Муниципальный";
КонецФункции
Функция ЗначениеСтроенияИлиПомещения(Тип, Значение) Экспорт
Возврат Новый Структура("Type, Number", Тип, Значение);
Возврат Новый Структура("type, number", Тип, Значение);
КонецФункции
Функция ОсновнаяСтрана() Экспорт
@@ -469,8 +469,8 @@
Адрес = СформироватьАдресПоДаннымИзКлассификатора(АдресДанные.Данные);
Адрес.AddressType = ?(Муниципальный,
АдресныйКлассификаторКлиентСервер.МуниципальныйАдрес(),
АдресныйКлассификаторКлиентСервер.АдминистративноТерриториальныйАдрес());
МуниципальныйАдрес(),
АдминистративноТерриториальныйАдрес());
ИдентификаторДомаИДополнительныеСведения = КодыПоИдентификаторуАдресногоОбъекта(Адрес.ID, СведенияОДоме);
@@ -654,6 +654,8 @@
Функция АдресныеОбъектыУровня(Родитель, Уровень, ТипАдреса, Знач СтрокаПоиска = "") Экспорт
ДанныеВыбора = Новый Структура("Данные, Отказ", Новый СписокЗначений, Ложь);
ДанныеВыбора.Вставить("ПодробноеПредставлениеОшибки", "");
ДанныеВыбора.Вставить("КраткоеПредставлениеОшибки", "");
Результат = Новый Структура("Данные", ТаблицаДанныхДляИнтерактивногоВыбора());
СтруктураОписанияОшибкиПоставщика(Результат);
@@ -703,7 +705,9 @@
Исключение
СтруктураОписанияОшибкиПоставщика(Результат, ИнформацияОбОшибке());
ЗаписьЖурналаРегистрации( СобытиеЖурналаРегистрации(), УровеньЖурналаРегистрации.Ошибка, , , Результат.ПодробноеПредставлениеОшибки);
ЗаписьЖурналаРегистрации(СобытиеЖурналаРегистрации(), УровеньЖурналаРегистрации.Ошибка,,, Результат.ПодробноеПредставлениеОшибки);
ДанныеВыбора.ПодробноеПредставлениеОшибки = Результат.ПодробноеПредставлениеОшибки;
ДанныеВыбора.КраткоеПредставлениеОшибки = Результат.КраткоеПредставлениеОшибки;
КонецПопытки;
КонецЕсли;
@@ -738,8 +742,10 @@
Результат = Новый СписокЗначений;
КешПредставлений = Новый Соответствие;
ТолькоВебСервис = ДополнительныеПараметры.Свойство("ТолькоВебСервис") И ДополнительныеПараметры.ТолькоВебСервис;
ЗагруженныеАдресныеСведения = АдресныйКлассификаторПовтИсп.СведенияОЗагрузкеСубъектовРФ();
Если ЗагруженныеАдресныеСведения["ИспользоватьЗагруженные"] Тогда
Если Не ТолькоВебСервис И ЗагруженныеАдресныеСведения["ИспользоватьЗагруженные"] Тогда
ЗаполнитьСписокАвтоподбораЧастиАдресаВнутр(Результат, КешПредставлений, Текст, ДополнительныеПараметры);
Если Результат.Количество() >= 20 Тогда
Возврат Результат;
@@ -756,7 +762,17 @@
КонецЕсли;
КонецЕсли;
ЗаполнитьСписокАвтоподбораЧастиАдресаСервис1С(Результат, КешПредставлений, Текст, Родитель, 20, ДополнительныеПараметры);
// Адаптация текста под поиск
ЧастиАдреса = СтрРазделить(Текст, ",");
Если ЧастиАдреса.Количество() > 0 Тогда
Если СтроковыеФункцииКлиентСервер.ТолькоЦифрыВСтроке(СокрЛП(ЧастиАдреса[0])) Тогда
ЧастиАдреса.Удалить(0);
КонецЕсли;
ТекстПоиска = СокрЛП(СтрСоединить(ЧастиАдреса, ","));
ЗаполнитьСписокАвтоподбораЧастиАдресаСервис1С(Результат, КешПредставлений, ТекстПоиска, Родитель, 20, ДополнительныеПараметры);
КонецЕсли;
КонецЕсли;
Возврат Результат;
@@ -1707,11 +1723,11 @@
// Заполнение начальных данных.
Обработчик = Обработчики.Добавить();
Обработчик.Версия = "2.2.4.23";
Обработчик.Версия = "3.0.1.223";
Обработчик.Процедура = "АдресныйКлассификаторСлужебный.ВыполнитьНачальноеЗаполнение";
Обработчик.НачальноеЗаполнение = Истина;
Обработчик.ОбщиеДанные = Истина;
Обработчик.РежимВыполнения = "Монопольно";
Обработчик.ОбщиеДанные = Истина;
Обработчик.РежимВыполнения = "Оперативно";
КонецПроцедуры
@@ -1974,7 +1990,7 @@
Если Результат.Отказ = Ложь Тогда
Если Результат.Данные.Количество() > 0 И Результат.Данные[0].АдресПроверен Тогда
Если Результат.Данные.Количество() > 0 Тогда
Если Результат.Данные[0].Варианты.Количество() > 0 Тогда
@@ -2209,8 +2225,8 @@
Результат = ОписаниеАдреса();
Запрос = Новый Запрос(ТекстЗапроса);
Запрос.УстановитьПараметр("ПредставлениеМуниципальный", АдресныйКлассификаторКлиентСервер.МуниципальныйАдрес());
Запрос.УстановитьПараметр("ПредставлениеАдминистративный", АдресныйКлассификаторКлиентСервер.АдминистративноТерриториальныйАдрес());
Запрос.УстановитьПараметр("ПредставлениеМуниципальный", МуниципальныйАдрес());
Запрос.УстановитьПараметр("ПредставлениеАдминистративный", АдминистративноТерриториальныйАдрес());
Запрос.УстановитьПараметр("Идентификатор", Новый УникальныйИдентификатор(Значение.Идентификатор));
РезультатЗапроса = Запрос.Выполнить();
@@ -2222,12 +2238,12 @@
Выборка = РезультатЗапроса.Выгрузить();
Если Значение.Свойство("Муниципальный") Тогда
Результат["addressType"] = ?(Значение.Муниципальный, АдресныйКлассификаторКлиентСервер.МуниципальныйАдрес(), АдресныйКлассификаторКлиентСервер.АдминистративноТерриториальныйАдрес());
Результат["addressType"] = ?(Значение.Муниципальный, МуниципальныйАдрес(), АдминистративноТерриториальныйАдрес());
Иначе
Результат["addressType"] = АдресныйКлассификаторКлиентСервер.МуниципальныйАдрес();
Результат["addressType"] = МуниципальныйАдрес();
КонецЕсли;
Если Результат["addressType"] = АдресныйКлассификаторКлиентСервер.АдминистративноТерриториальныйАдрес() И Выборка.Количество() = 2 Тогда
Если Результат["addressType"] =АдминистративноТерриториальныйАдрес() И Выборка.Количество() = 2 Тогда
СтрокаКодов = Выборка[1];
Иначе
СтрокаКодов = Выборка[0];
@@ -3273,11 +3289,21 @@
КонецЦикла;
Если Муниципальный Тогда
Результат.addressType = АдресныйКлассификаторКлиентСервер.МуниципальныйАдрес();
Результат.addressType = МуниципальныйАдрес();
Иначе
Результат.addressType = АдресныйКлассификаторКлиентСервер.АдминистративноТерриториальныйАдрес();
Результат.addressType = АдминистративноТерриториальныйАдрес();
КонецЕсли;
Результат.houseType = ТРег(Результат.houseType);
Для каждого Строение Из Результат.buildings Цикл
Строение.type = ТРег(Строение.type);
КонецЦикла;
Для каждого Помещение Из Результат.apartments Цикл
Помещение.type = ТРег(Помещение.type);
КонецЦикла;
Возврат Результат;
КонецФункции
@@ -5669,6 +5695,14 @@
КонецФункции
Функция АдминистративноТерриториальныйАдрес() Экспорт
Возврат "Административно-территориальный";
КонецФункции
Функция МуниципальныйАдрес() Экспорт
Возврат "Муниципальный";
КонецФункции
// Конвертация
Функция СтруктураВСтрокуJSON(Значение)
@@ -6006,7 +6040,7 @@
Если СтрЧислоВхождений(АдресРФ, ",") = 9 Тогда
Результат.AddressType = АдресныйКлассификаторКлиентСервер.АдминистративноТерриториальныйАдрес();
Результат.AddressType = АдминистративноТерриториальныйАдрес();
ЧастиАдреса = СтрРазделить(АдресРФ, ",");
Результат.ZIPCode = ЧастиАдреса[1];
@@ -6052,7 +6086,7 @@
Если ЗначениеЗаполнено(АдресРФ.Адрес_по_документу) Тогда
Результат.AddressType = АдресВСвободнойФорме();
Иначе
Результат.AddressType = АдресныйКлассификаторКлиентСервер.АдминистративноТерриториальныйАдрес();
Результат.AddressType = АдминистративноТерриториальныйАдрес();
КонецЕсли;
Результат.Country = НаименованиеСтраны;
@@ -6512,7 +6546,7 @@
КонецФункции
Функция ЗначениеСтроенияИлиПомещения(Тип, Значение)
Возврат Новый Структура("Type, Number", Тип, Значение);
Возврат Новый Структура("type, number", Тип, Значение);
КонецФункции
// Возвращает дополнительный адреса.
@@ -82,9 +82,9 @@
Иначе
ТаблицаФормы = Форма.Элементы.Найти(ДополнительныеСвойства.ИмяСписка);
АлиасИндикатор = ДополнительныеСвойства.КолонкаИндикатора;
КолонкаИндикатора = ДополнительныеСвойства.КолонкаИндикатора;
Если Поле.Имя <> АлиасИндикатор Тогда
Если Поле.Имя <> КолонкаИндикатора Тогда
СтандартнаяОбработка = Истина;
Иначе
СтандартнаяОбработка = Ложь;
@@ -45,7 +45,7 @@
КомпонентыОбмена.Вставить("ТолькоНастройкиXDTO", Ложь);
// Перечень поддерживаемых объектов формата для текущего сеанса обмена.
// Содержит набот совместно поддерживаемых объектов этой базы и базы корреспондента
// Содержит набор совместно поддерживаемых объектов этой базы и базы корреспондента
// в контексте конкретного действия обмена (отправки/получения).
// Подробнее см. ОбменДаннымиXDTOСервер.ЗаполнитьПоддерживаемыеОбъектыXDTO
КомпонентыОбмена.Вставить("ПоддерживаемыеОбъектыXDTO", Новый Массив);
@@ -1369,61 +1369,35 @@
КонецЕсли;
// Записываем элемент <Message>
ФайлОбмена.ЗаписатьНачалоЭлемента("Message");
ФайлОбмена.ЗаписатьСоответствиеПространстваИмен("msg", "http://www.1c.ru/SSL/Exchange/Message");
ФайлОбмена.ЗаписатьСоответствиеПространстваИмен("xs", "http://www.w3.org/2001/XMLSchema");
ФайлОбмена.ЗаписатьСоответствиеПространстваИмен("xsi", "http://www.w3.org/2001/XMLSchema-instance");
ПараметрыЗаголовка = ПараметрыЗаголовкаСообщенияОбмена();
// Записываем элемент <Header>
Header = ФабрикаXDTO.Создать(ФабрикаXDTO.Тип(XMLБазоваяСхема(), "Header"));
Header.Format = КомпонентыОбмена.XMLСхема;
Header.CreationDate = ТекущаяУниверсальнаяДата();
ПараметрыЗаголовка.ФорматОбмена = КомпонентыОбмена.XMLСхема;
ПараметрыЗаголовка.ЭтоОбменЧерезПланОбмена = КомпонентыОбмена.ЭтоОбменЧерезПланОбмена;
ПараметрыЗаголовка.ВерсияФорматаОбмена = КомпонентыОбмена.ВерсияФорматаОбмена;
Если КомпонентыОбмена.ЭтоОбменЧерезПланОбмена Тогда
ИмяПланаОбмена = ОбменДаннымиПовтИсп.ПолучитьИмяПланаОбмена(ЗаписьСообщения.Получатель);
ПсевдонимПредопределенногоУзла = ОбменДаннымиСервер.ПсевдонимПредопределенногоУзла(ЗаписьСообщения.Получатель);
Confirmation = ФабрикаXDTO.Создать(ФабрикаXDTO.Тип(XMLБазоваяСхема(), "Confirmation"));
Confirmation.ExchangePlan = ИмяПланаОбмена;
ПараметрыЗаголовка.ИмяПланаОбмена = ОбменДаннымиПовтИсп.ПолучитьИмяПланаОбмена(КомпонентыОбмена.УзелКорреспондента);
ПараметрыЗаголовка.ПсевдонимПредопределенногоУзла = ОбменДаннымиСервер.ПсевдонимПредопределенногоУзла(КомпонентыОбмена.УзелКорреспондента);
Confirmation.To = ОбменДаннымиСервер.ИдентификаторУзлаКорреспондентаДляОбмена(ЗаписьСообщения.Получатель);
Если ЗначениеЗаполнено(ПсевдонимПредопределенногоУзла) Тогда
// Требуется корректировка кода узла отправителя.
Confirmation.From = СокрЛП(ПсевдонимПредопределенногоУзла);
Иначе
Confirmation.From = ОбменДаннымиСервер.ИдентификаторЭтогоУзлаДляОбмена(ЗаписьСообщения.Получатель);
ПараметрыЗаголовка.ИдентификаторПолучателя = ОбменДаннымиСервер.ИдентификаторУзлаКорреспондентаДляОбмена(КомпонентыОбмена.УзелКорреспондента);
ПараметрыЗаголовка.ИдентификаторОтправителя = ОбменДаннымиСервер.ИдентификаторЭтогоУзлаДляОбмена(КомпонентыОбмена.УзелКорреспондента);
Если Не КомпонентыОбмена.ТолькоНастройкиXDTO Тогда
ПараметрыЗаголовка.НомерСообщения = ЗаписьСообщения.НомерСообщения;
ПараметрыЗаголовка.НомерПринятого = ЗаписьСообщения.НомерПринятого;
КонецЕсли;
Если КомпонентыОбмена.ТолькоНастройкиXDTO Тогда
Confirmation.MessageNo = 0;
Confirmation.ReceivedNo = 0;
Иначе
Confirmation.MessageNo = ЗаписьСообщения.НомерСообщения;
Confirmation.ReceivedNo = ЗаписьСообщения.НомерПринятого;
КонецЕсли;
ПараметрыЗаголовка.ПоддерживаемыеВерсии = КомпонентыОбмена.НастройкиXDTO.ПоддерживаемыеВерсии;
ПараметрыЗаголовка.ПоддерживаемыеОбъекты = КомпонентыОбмена.НастройкиXDTO.ПоддерживаемыеОбъекты;
Header.Confirmation = Confirmation;
ПараметрыЗаголовка.Префикс = ОбменДаннымиСервер.ПрефиксИнформационнойБазы();
Для Каждого ВерсияФормата Из КомпонентыОбмена.НастройкиXDTO.ПоддерживаемыеВерсии Цикл
Header.AvailableVersion.Добавить(ВерсияФормата);
КонецЦикла;
ПараметрыЗаголовка.УзелКорреспондента = КомпонентыОбмена.УзелКорреспондента;
Если ЗначениеЗаполнено(ПсевдонимПредопределенногоУзла) Тогда
// Тип Header является Упорядоченным, поэтому важен порядок присвоения значений свойств.
// В противном случае может быть не пройдена валидация по схеме.
Header.NewFrom = ОбменДаннымиСервер.ИдентификаторЭтогоУзлаДляОбмена(ЗаписьСообщения.Получатель);
КонецЕсли;
ВыгрузитьПоддерживаемыеОбъектыФормата(Header, КомпонентыОбмена);
Header.Prefix = ОбменДаннымиСервер.ПрефиксИнформационнойБазы();
Иначе
Header.AvailableVersion.Добавить(КомпонентыОбмена.ВерсияФорматаОбмена);
КонецЕсли;
ФабрикаXDTO.ЗаписатьXML(ФайлОбмена, Header);
ЗаписатьЗаголовокСообщенияОбмена(ФайлОбмена, ПараметрыЗаголовка);
Если Не КомпонентыОбмена.ТолькоНастройкиXDTO Тогда
// Записываем элемент <Body>
@@ -3911,18 +3885,21 @@
КонецФункции
Процедура ВыгрузитьПоддерживаемыеОбъектыФормата(Header, КомпонентыОбмена)
Процедура ВыгрузитьПоддерживаемыеОбъектыФормата(Header, ПоддерживаемыеОбъекты, УзелКорреспондента)
ТаблицаВсеВерсии = Новый ТаблицаЗначений;
ТаблицаВсеВерсии.Колонки.Добавить("Версия", Новый ОписаниеТипов("Строка"));
СтрокаВсеВерсии = "";
Для Каждого AvailableVersion Из Header.AvailableVersion Цикл
Если ПустаяСтрока(СтрокаВсеВерсии) Тогда
СтрокаВсеВерсии = AvailableVersion;
Иначе
СтрокаВсеВерсии = AvailableVersion + "," + СтрокаВсеВерсии;
КонецЕсли;
СтрокаТаблицаВсеВерсии = ТаблицаВсеВерсии.Добавить();
СтрокаТаблицаВсеВерсии.Версия = AvailableVersion;
КонецЦикла;
ТаблицаПоддерживаемыеОбъекты = КомпонентыОбмена.НастройкиXDTO.ПоддерживаемыеОбъекты.Скопировать();
ТаблицаВсеВерсии.Сортировать("Версия");
СтрокаВсеВерсии = СтрСоединить(ТаблицаВсеВерсии.ВыгрузитьКолонку("Версия"), ",");
ТаблицаПоддерживаемыеОбъекты = ПоддерживаемыеОбъекты.Скопировать();
ТаблицаПоддерживаемыеОбъекты.Сортировать("Объект, Версия");
@@ -3992,7 +3969,90 @@
КонецЕсли;
РегистрыСведений.НастройкиОбменаДаннымиXDTO.ОбновитьНастройки(
КомпонентыОбмена.УзелКорреспондента, "ПоддерживаемыеОбъекты", ТаблицаПоддерживаемыеОбъекты);
УзелКорреспондента, "ПоддерживаемыеОбъекты", ТаблицаПоддерживаемыеОбъекты);
КонецПроцедуры
Функция ПараметрыЗаголовкаСообщенияОбмена() Экспорт
ПараметрыЗаголовка = Новый Структура;
ПараметрыЗаголовка.Вставить("ФорматОбмена", "");
ПараметрыЗаголовка.Вставить("ЭтоОбменЧерезПланОбмена", Ложь);
ПараметрыЗаголовка.Вставить("ВерсияФорматаОбмена", "");
ПараметрыЗаголовка.Вставить("ИмяПланаОбмена", "");
ПараметрыЗаголовка.Вставить("ПсевдонимПредопределенногоУзла", "");
ПараметрыЗаголовка.Вставить("ИдентификаторПолучателя", "");
ПараметрыЗаголовка.Вставить("ИдентификаторОтправителя", "");
ПараметрыЗаголовка.Вставить("НомерСообщения", 0);
ПараметрыЗаголовка.Вставить("НомерПринятого", 0);
ПараметрыЗаголовка.Вставить("ПоддерживаемыеВерсии", Новый Массив);
ПараметрыЗаголовка.Вставить("ПоддерживаемыеОбъекты", Новый ТаблицаЗначений);
ПараметрыЗаголовка.Вставить("Префикс", "");
ПараметрыЗаголовка.Вставить("УзелКорреспондента", Неопределено);
Возврат ПараметрыЗаголовка;
КонецФункции
Процедура ЗаписатьЗаголовокСообщенияОбмена(ФайлОбмена, ПараметрыЗаголовка) Экспорт
// Записываем элемент <Message>
ФайлОбмена.ЗаписатьНачалоЭлемента("Message");
ФайлОбмена.ЗаписатьСоответствиеПространстваИмен("msg", "http://www.1c.ru/SSL/Exchange/Message");
ФайлОбмена.ЗаписатьСоответствиеПространстваИмен("xs", "http://www.w3.org/2001/XMLSchema");
ФайлОбмена.ЗаписатьСоответствиеПространстваИмен("xsi", "http://www.w3.org/2001/XMLSchema-instance");
// Элемент <Header>
Header = ФабрикаXDTO.Создать(ФабрикаXDTO.Тип(XMLБазоваяСхема(), "Header"));
Header.Format = ПараметрыЗаголовка.ФорматОбмена;
Header.CreationDate = ТекущаяУниверсальнаяДата();
Если ПараметрыЗаголовка.ЭтоОбменЧерезПланОбмена Тогда
Confirmation = ФабрикаXDTO.Создать(ФабрикаXDTO.Тип(XMLБазоваяСхема(), "Confirmation"));
Confirmation.ExchangePlan = ПараметрыЗаголовка.ИмяПланаОбмена;
Confirmation.To = ПараметрыЗаголовка.ИдентификаторПолучателя;
Если ЗначениеЗаполнено(ПараметрыЗаголовка.ПсевдонимПредопределенногоУзла) Тогда
// Требуется корректировка кода узла отправителя.
Confirmation.From = ПараметрыЗаголовка.ПсевдонимПредопределенногоУзла;
Иначе
Confirmation.From = ПараметрыЗаголовка.ИдентификаторОтправителя;
КонецЕсли;
Confirmation.MessageNo = ПараметрыЗаголовка.НомерСообщения;
Confirmation.ReceivedNo = ПараметрыЗаголовка.НомерПринятого;
Header.Confirmation = Confirmation;
Для Каждого ВерсияФормата Из ПараметрыЗаголовка.ПоддерживаемыеВерсии Цикл
Header.AvailableVersion.Добавить(ВерсияФормата);
КонецЦикла;
Если ЗначениеЗаполнено(ПараметрыЗаголовка.ПсевдонимПредопределенногоУзла) Тогда
// Тип Header является Упорядоченным, поэтому важен порядок присвоения значений свойств.
// В противном случае может быть не пройдена валидация по схеме.
Header.NewFrom = ПараметрыЗаголовка.ИдентификаторОтправителя;
КонецЕсли;
ВыгрузитьПоддерживаемыеОбъектыФормата(Header,
ПараметрыЗаголовка.ПоддерживаемыеОбъекты, ПараметрыЗаголовка.УзелКорреспондента);
Header.Prefix = ПараметрыЗаголовка.Префикс;
Иначе
Header.AvailableVersion.Добавить(ПараметрыЗаголовка.ВерсияФорматаОбмена);
КонецЕсли;
ФабрикаXDTO.ЗаписатьXML(ФайлОбмена, Header);
КонецПроцедуры
@@ -5279,6 +5339,11 @@
Процедура ЗаполнитьСтруктуруНастроекXDTO(КомпонентыОбмена) Экспорт
Если Не КомпонентыОбмена.ЭтоОбменЧерезПланОбмена
Или Не ЗначениеЗаполнено(КомпонентыОбмена.УзелКорреспондента) Тогда
Возврат;
КонецЕсли;
ИмяПланаОбмена = ОбменДаннымиПовтИсп.ПолучитьИмяПланаОбмена(КомпонентыОбмена.УзелКорреспондента);
КомпонентыОбмена.НастройкиXDTO.Формат = ФорматОбмена(ИмяПланаОбмена, "");
@@ -1108,9 +1108,11 @@
КонецЕсли;
// Обмен через WS-соединение в пассивном режиме не поддерживается:
// - для обменов, не являющихся обменом через XDTO.
// - для обменов, не являющихся обменом через XDTO;
// - для файловых информационных баз.
//
Если Не ОбменДаннымиПовтИсп.ЭтоПланОбменаXDTO(ИмяПланаОбмена) Тогда
Если Не ОбменДаннымиПовтИсп.ЭтоПланОбменаXDTO(ИмяПланаОбмена)
Или ОбщегоНазначения.ИнформационнаяБазаФайловая() Тогда
ОбщегоНазначенияКлиентСервер.УдалитьЗначениеИзМассива(Результат,
Перечисления.ВидыТранспортаСообщенийОбмена.WSПассивныйРежим);
@@ -11357,10 +11357,18 @@
ВерсияКорреспондента_2_0_1_6 = (ВерсииКорреспондента.Найти("2.0.1.6") <> Неопределено);
ВерсияКорреспондента_2_1_1_7 = (ВерсииКорреспондента.Найти("2.1.1.7") <> Неопределено);
ВерсияКорреспондента_3_0_1_1 = (ВерсииКорреспондента.Найти("3.0.1.1") <> Неопределено);
Если ВерсияКорреспондента_2_1_1_7 Тогда
Если ВерсияКорреспондента_2_1_1_7
Или ВерсияКорреспондента_3_0_1_1 Тогда
WSПрокси = ПолучитьWSПрокси_2_1_1_7(СтруктураНастроек,, СообщениеПользователю, 5);
WSПрокси = Неопределено;
Если ВерсияКорреспондента_2_1_1_7 Тогда
WSПрокси = ПолучитьWSПрокси_2_1_1_7(СтруктураНастроек, , СообщениеПользователю, 5);
ИначеЕсли ВерсияКорреспондента_3_0_1_1 Тогда
WSПрокси = ПолучитьWSПрокси_3_0_1_1(СтруктураНастроек, , СообщениеПользователю, 5);
КонецЕсли;
Если WSПрокси = Неопределено Тогда
СброситьПарольСинхронизацииДанных(Корреспондент);
@@ -11369,26 +11377,46 @@
Попытка
КодКорреспондента = ОбщегоНазначения.ЗначениеРеквизитаОбъекта(ОбменДаннымиПовтИсп.ПолучитьЭтотУзелПланаОбменаПоСсылке(Корреспондент), "Код");
КодКорреспондента = ОбщегоНазначения.ЗначениеРеквизитаОбъекта(
ОбменДаннымиПовтИсп.ПолучитьЭтотУзелПланаОбменаПоСсылке(Корреспондент), "Код");
ИмяПланаОбмена = ОбменДаннымиПовтИсп.ПолучитьИмяПланаОбмена(Корреспондент);
ЕстьПодключение = WSПрокси.TestConnection(
ИмяПланаОбмена,
КодКорреспондента,
СообщениеПользователю);
Если НЕ ЕстьПодключение Тогда
Если ЭтоПланОбменаXDTO(Корреспондент) Тогда
ИмяПланаОбменаСтаройНастройки = "";
Если Не ЕстьПодключение
И ЭтоПланОбменаXDTO(Корреспондент) Тогда
ВариантНастройки = "";
Если ОбщегоНазначения.ЕстьРеквизитОбъекта("ВариантНастройки", Корреспондент.Метаданные()) Тогда
ВариантНастройки = ОбщегоНазначения.ЗначениеРеквизитаОбъекта(Корреспондент, "ВариантНастройки");
ИмяПланаОбменаСтаройНастройки =
ПланыОбмена[ИмяПланаОбмена].ИмяПланаОбменаСтаройНастройки(КодКорреспондента);
Если ИмяПланаОбменаСтаройНастройки <> "" Тогда
КонецЕсли;
Для Каждого ИмяСтарогоПланаОбмена Из ОбменДаннымиПовтИсп.ПланыОбменаБСП() Цикл
Если ИмяСтарогоПланаОбмена = ИмяПланаОбмена Тогда
Продолжить;
КонецЕсли;
Если ОбменДаннымиПовтИсп.ЭтоПланОбменаРаспределеннойИнформационнойБазы(ИмяСтарогоПланаОбмена) Тогда
Продолжить;
КонецЕсли;
ИмяНовогоПланаОбмена = ЗначениеНастройкиПланаОбмена(ИмяСтарогоПланаОбмена,
"ИмяПланаОбменаДляПереходаНаНовыйОбмен", ВариантНастройки);
Если ИмяНовогоПланаОбмена = ИмяПланаОбмена Тогда
ЕстьПодключение = WSПрокси.TestConnection(
ИмяПланаОбменаСтаройНастройки,
ИмяСтарогоПланаОбмена,
КодКорреспондента,
СообщениеПользователю);
КонецЕсли;
КонецЕсли;
Если ЕстьПодключение Тогда
Прервать;
КонецЕсли;
КонецЦикла;
КонецЕсли;
Если ЕстьПодключение Тогда
@@ -167,35 +167,47 @@
КаталогВременныхФайлов = ОбменДаннымиПовтИсп.КаталогВременногоХранилищаФайлов();
ПолноеИмяФайла = ОбщегоНазначенияКлиентСервер.ПолучитьПолноеИмяФайла(
КаталогВременныхФайлов, ИмяФайла);
// Открываем файл обмена.
ОбменДаннымиXDTOСервер.ОткрытьФайлВыгрузки(КомпонентыОбмена, ПолноеИмяФайла);
Если КомпонентыОбмена.ФлагОшибки Тогда
КомпонентыОбмена.ФайлОбмена = Неопределено;
ОбменДаннымиXDTOСервер.ЗавершитьВедениеПротоколаОбмена(КомпонентыОбмена);
ВызватьИсключение(ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()));
ВызватьИсключение КомпонентыОбмена.СтрокаСообщенияОбОшибке;
КонецЕсли;
СтруктураНастроекОбмена = СтруктураНастроекОбмена(КомпонентыОбмена, Перечисления.ДействияПриОбмене.ВыгрузкаДанных);
// Выгрузка данных.
Попытка
ОбменДаннымиXDTOСервер.ПроизвестиВыгрузкуДанных(КомпонентыОбмена);
Исключение
Если КомпонентыОбмена.ЭтоОбменЧерезПланОбмена Тогда
РазблокироватьДанныеДляРедактирования(КомпонентыОбмена.УзелКорреспондента);
КонецЕсли;
ОбменДаннымиXDTOСервер.ЗаписатьВПротоколВыполнения(КомпонентыОбмена, ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()));
СообщениеОбОшибке = ПодробноеПредставлениеОшибки(ИнформацияОбОшибке());
ОбменДаннымиXDTOСервер.ЗаписатьВПротоколВыполнения(КомпонентыОбмена, СообщениеОбОшибке);
ОбменДаннымиXDTOСервер.ЗавершитьВедениеПротоколаОбмена(КомпонентыОбмена);
КомпонентыОбмена.ФайлОбмена = Неопределено;
ВызватьИсключение(ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()));
ВызватьИсключение СообщениеОбОшибке;
КонецПопытки;
КомпонентыОбмена.ФайлОбмена.Закрыть();
ЗафиксироватьЗавершениеОбмена(СтруктураНастроекОбмена, КомпонентыОбмена);
Если КомпонентыОбмена.ФлагОшибки Тогда
СообщениеОбОшибке = КомпонентыОбмена.СтрокаСообщенияОбОшибке;
ВызватьИсключение(СообщениеОбОшибке);
ВызватьИсключение СообщениеОбОшибке;
Иначе
@@ -248,9 +260,11 @@
Если КомпонентыОбмена.ФлагОшибки Тогда
СообщениеОбОшибке = КомпонентыОбмена.СтрокаСообщенияОбОшибке;
ВызватьИсключение(СообщениеОбОшибке);
ВызватьИсключение СообщениеОбОшибке;
КонецЕсли;
СтруктураНастроекОбмена = СтруктураНастроекОбмена(КомпонентыОбмена, Перечисления.ДействияПриОбмене.ЗагрузкаДанных);
Попытка
ОбменДаннымиXDTOСервер.ПроизвестиЧтениеДанных(КомпонентыОбмена);
Исключение
@@ -268,6 +282,8 @@
КомпонентыОбмена.ФайлОбмена.Закрыть();
ЗафиксироватьЗавершениеОбмена(СтруктураНастроекОбмена, КомпонентыОбмена);
Если Не КомпонентыОбмена.ФлагОшибки
И КомпонентыОбмена.ЭтоОбменЧерезПланОбмена
И КомпонентыОбмена.ИспользоватьКвитирование Тогда
@@ -451,6 +467,11 @@
ОбменДаннымиXDTOСервер.ИнициализироватьТаблицыПравилОбмена(КомпонентыОбмена);
Если КомпонентыОбмена.ЭтоОбменЧерезПланОбмена Тогда
ОбменДаннымиXDTOСервер.ЗаполнитьСтруктуруНастроекXDTO(КомпонентыОбмена);
ОбменДаннымиXDTOСервер.ЗаполнитьПоддерживаемыеОбъектыXDTO(КомпонентыОбмена);
КонецЕсли;
Возврат КомпонентыОбмена;
КонецФункции
@@ -491,4 +512,57 @@
КонецФункции
Функция СтруктураНастроекОбмена(КомпонентыОбмена, ДействиеОбменаДанными)
Если Не КомпонентыОбмена.ЭтоОбменЧерезПланОбмена Тогда
Возврат Неопределено;
КонецЕсли;
СтруктураНастроекОбмена = ОбменДаннымиПовтИсп.НастройкиОбменаУзлаИнформационнойБазы(
КомпонентыОбмена.УзелКорреспондента, ДействиеОбменаДанными, Неопределено, Ложь);
Если СтруктураНастроекОбмена.Отказ Тогда
СтрокаСообщенияОбОшибке = НСтр("ru = 'Ошибка при инициализации процесса обмена данными.'");
ОбменДаннымиСервер.ЗафиксироватьЗавершениеОбмена(СтруктураНастроекОбмена);
ВызватьИсключение СтрокаСообщенияОбОшибке;
КонецЕсли;
СтруктураНастроекОбмена.РезультатВыполненияОбмена = Неопределено;
СтруктураНастроекОбмена.ДатаНачала = ТекущаяДатаСеанса();
СтрокаСообщения = НСтр("ru = 'Начало процесса обмена данными для узла %1'", ОбщегоНазначенияКлиентСервер.КодОсновногоЯзыка());
СтрокаСообщения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(СтрокаСообщения, СтруктураНастроекОбмена.УзелИнформационнойБазыНаименование);
ЗаписьЖурналаРегистрации(СтруктураНастроекОбмена.КлючСообщенияЖурналаРегистрации,
УровеньЖурналаРегистрации.Информация,
СтруктураНастроекОбмена.УзелИнформационнойБазы.Метаданные(),
СтруктураНастроекОбмена.УзелИнформационнойБазы,
СтрокаСообщения);
Возврат СтруктураНастроекОбмена;
КонецФункции
Процедура ЗафиксироватьЗавершениеОбмена(СтруктураНастроекОбмена, КомпонентыОбмена)
Если Не КомпонентыОбмена.ЭтоОбменЧерезПланОбмена Тогда
Возврат;
КонецЕсли;
СтруктураНастроекОбмена.РезультатВыполненияОбмена = КомпонентыОбмена.СостояниеОбменаДанными.РезультатВыполненияОбмена;
Если СтруктураНастроекОбмена.ДействиеПриОбмене = Перечисления.ДействияПриОбмене.ВыгрузкаДанных Тогда
СтруктураНастроекОбмена.КоличествоОбъектовОбработано = КомпонентыОбмена.СчетчикВыгруженныхОбъектов;
СтруктураНастроекОбмена.СообщениеПриОбмене = СтруктураНастроекОбмена.ОбработкаОбменаДанными.КомментарийПриВыгрузкеДанных;
ИначеЕсли СтруктураНастроекОбмена.ДействиеПриОбмене = Перечисления.ДействияПриОбмене.ЗагрузкаДанных Тогда
СтруктураНастроекОбмена.КоличествоОбъектовОбработано = КомпонентыОбмена.СчетчикЗагруженныхОбъектов;
СтруктураНастроекОбмена.СообщениеПриОбмене = СтруктураНастроекОбмена.ОбработкаОбменаДанными.КомментарийПриЗагрузкеДанных;
КонецЕсли;
СтруктураНастроекОбмена.СтрокаСообщенияОбОшибке = КомпонентыОбмена.СтрокаСообщенияОбОшибке;
ОбменДаннымиСервер.ЗафиксироватьЗавершениеОбмена(СтруктураНастроекОбмена);
КонецПроцедуры
#КонецОбласти
@@ -32,7 +32,7 @@
Процедура ПриДобавленииПодсистемы(Описание) Экспорт
Описание.Имя = "СтандартныеПодсистемы";
Описание.Версия = "3.0.1.220";
Описание.Версия = "3.0.1.225";
Описание.РежимВыполненияОтложенныхОбработчиков = "Параллельно";
Описание.ПараллельноеОтложенноеОбновлениеСВерсии = "2.3.3.0";
@@ -3129,7 +3129,7 @@
КонецФункции
// (RunApplication) Запускает внешнюю программу в соответствии с параметрами запуска.
// Запускает внешнюю программу в соответствии с параметрами запуска.
// Не доступно в веб-клиенте.
//
// Параметры:
@@ -3218,12 +3218,6 @@
Если (СистемнаяИнформация.ТипПлатформы = ТипПлатформы.Windows_x86)
Или (СистемнаяИнформация.ТипПлатформы = ТипПлатформы.Windows_x86_64) Тогда
#Если Сервер Тогда
Если ОбщегоНазначения.ИнформационнаяБазаФайловая() Тогда
ЗапуститьПриложение(СтрокаКоманды, ТекущийКаталог, ДождатьсяЗавершения, КодВозврата);
Иначе
// Из-за запуска через shell перенаправление каталога требуется сделать командой.
Если Не ПустаяСтрока(ТекущийКаталог) Тогда
@@ -3233,17 +3227,11 @@
// Выполняется запуск через cmd.exe (для перенаправления stdout и stderr).
СтрокаКоманды = "cmd /S /C "" " + СтрокаКоманды + " """;
#Если Сервер Тогда
ЗапуститьПриложение(СтрокаКоманды,, ДождатьсяЗавершения, КодВозврата);
КонецЕсли;
#Иначе
// Из-за запуска через shell перенаправление каталога требуется сделать командой.
Если Не ПустаяСтрока(ТекущийКаталог) Тогда
СтрокаКоманды = "cd /D """ + ТекущийКаталог + """ && " + СтрокаКоманды;
КонецЕсли;
// Выполняется запуск через cmd.exe (для перенаправления stdout и stderr).
СтрокаКоманды = "cmd /S /C "" " + СтрокаКоманды + " """;
#Иначе
Если ВыполнитьСНаивысшимиПравами Тогда
@@ -3273,10 +3261,7 @@
Оболочка = Неопределено;
Иначе
Оболочка = Новый COMОбъект("Wscript.Shell");
// Run запускает новый процесс, не являющийся дочерним текущего процесса (в отличии от Exec).
КодВозврата = Оболочка.Run(СтрокаКоманды, 0, ДождатьсяЗавершения);
Оболочка = Неопределено;
ЗапуститьПриложение(СтрокаКоманды,, ДождатьсяЗавершения, КодВозврата);
КонецЕсли;
#КонецЕсли
@@ -320,13 +320,11 @@
КонецЕсли;
Для Каждого ТекущийКорпус Из ПоляАдреса.Корпуса Цикл
Результат.Buildings.Добавить(
Новый Структура("Type, Number", ТекущийКорпус.ТипКорпуса, ТекущийКорпус.Номер));
Результат.Buildings.Добавить(УправлениеКонтактнойИнформациейКлиентСервер.ЗначениеСтроенияИлиПомещения(ТекущийКорпус.ТипКорпуса, ТекущийКорпус.Номер));
КонецЦикла;
Для Каждого ТекущееПомещение Из ПоляАдреса.Помещения Цикл
Результат.Apartments.Добавить(
Новый Структура("Type, Number", ТекущееПомещение.ТипПомещения, ТекущееПомещение.Номер));
Результат.Apartments.Добавить(УправлениеКонтактнойИнформациейКлиентСервер.ЗначениеСтроенияИлиПомещения(ТекущееПомещение.ТипПомещения, ТекущееПомещение.Номер));
КонецЦикла;
// Заполнение кода КЛАДР последнего в иерархии адресного объекта.
@@ -998,7 +996,7 @@
// Преобразует формат из XML в JSON
//
Функция КонтактнаяИнформацияВСтруктуруJSON(КонтактнаяИнформация, Знач Тип = Неопределено, Представление = "") Экспорт
Функция КонтактнаяИнформацияВСтруктуруJSON(КонтактнаяИнформация, Знач Тип = Неопределено, Представление = "", ОбновлятьИдентификаторы = Истина) Экспорт
Если Тип <> Неопределено И ТипЗнч(Тип) <> Тип("ПеречислениеСсылка.ТипыКонтактнойИнформации") Тогда
Тип = УправлениеКонтактнойИнформациейСлужебныйПовтИсп.ТипВидаКонтактнойИнформации(Тип);
@@ -1056,6 +1054,10 @@
Результат.Value = XDTOКонтактнаяИнформация.Представление;
Результат.Comment = XDTOКонтактнаяИнформация.Комментарий;
ИначеЕсли ТипЗнч(КонтактнаяИнформация) = Тип("Структура") Тогда
Возврат СтруктураАдресаВСтруктуруJSON(КонтактнаяИнформация);
КонецЕсли;
Если Тип <> Перечисления.ТипыКонтактнойИнформации.Адрес И Тип <> Перечисления.ТипыКонтактнойИнформации.Телефон Тогда
@@ -1218,7 +1220,7 @@
КонецЕсли;
КонецЕсли;
Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.АдресныйКлассификатор") Тогда
Если ОбновлятьИдентификаторы И ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.АдресныйКлассификатор") Тогда
МодульАдресныйКлассификаторСлужебный = ОбщегоНазначения.ОбщийМодуль("АдресныйКлассификаторСлужебный");
МодульАдресныйКлассификаторСлужебный.УстановитьИдентификаторыАдреса(Результат);
КонецЕсли;
@@ -1227,6 +1229,108 @@
КонецФункции
Функция АккомодацияСтруктурыАдреса(Данные) Экспорт
Если Данные.Свойство("id") И ПустаяСтрока(Данные.id) И ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.АдресныйКлассификатор") Тогда
МодульАдресныйКлассификаторСлужебный = ОбщегоНазначения.ОбщийМодуль("АдресныйКлассификаторСлужебный");
МодульАдресныйКлассификаторСлужебный.УстановитьИдентификаторыАдреса(Данные);
КонецЕсли;
НаселенныйПунктДетально = РаботаСАдресамиКлиентСервер.ОписаниеНовойКонтактнойИнформации(ПредопределенноеЗначение("Перечисление.ТипыКонтактнойИнформации.Адрес"));
ЗаполнитьЗначенияСвойств(НаселенныйПунктДетально, Данные);
Если ТипЗнч(НаселенныйПунктДетально.Buildings) <> Тип("Массив") Тогда
НаселенныйПунктДетально.Buildings = Новый Массив;
КонецЕсли;
Если ТипЗнч(НаселенныйПунктДетально.Apartments) <> Тип("Массив") Тогда
НаселенныйПунктДетально.Buildings = Новый Массив;
КонецЕсли;
Для каждого ЭлементАдреса Из НаселенныйПунктДетально Цикл
Если СтрЗаканчиваетсяНа(ЭлементАдреса.Ключ, "Id")
И ТипЗнч(ЭлементАдреса.Значение) = Тип("Строка")
И СтрДлина(ЭлементАдреса.Значение) = 36 Тогда
НаселенныйПунктДетально[ЭлементАдреса.Ключ] = Новый УникальныйИдентификатор(ЭлементАдреса.Значение);
КонецЕсли;
КонецЦикла;
Если Данные.Свойство("house") Тогда
НаселенныйПунктДетально.HouseNumber = Данные.house;
КонецЕсли;
Возврат НаселенныйПунктДетально;
КонецФункции
Функция СтруктураАдресаВСтруктуруJSON(Знач КонтактнаяИнформация)
ОписаниеКонтактнойИнформации = РаботаСАдресамиКлиентСервер.ОписаниеНовойКонтактнойИнформации(Перечисления.ТипыКонтактнойИнформации.Адрес);
СоответствиеПолей = Новый Соответствие();
СоответствиеПолей.Вставить("ТипАдреса", "AddressType");
СоответствиеПолей.Вставить("Представление", "value");
СоответствиеПолей.Вставить("Комментарий", "comment");
СоответствиеПолей.Вставить("НаименованиеСтраны", "country");
СоответствиеПолей.Вставить("Представление", "value");
СоответствиеПолей.Вставить("Страна", "country");
СоответствиеПолей.Вставить("Индекс", "ZIPCode");
СоответствиеПолей.Вставить("ОКТМО", "oktmo");
СоответствиеПолей.Вставить("ОКАТО", "okato");
СоответствиеПолей.Вставить("Регион", "area");
СоответствиеПолей.Вставить("РегионСокращение", "areaType");
СоответствиеПолей.Вставить("Район", "district");
СоответствиеПолей.Вставить("РайонСокращение", "districtType");
СоответствиеПолей.Вставить("Город", "city");
СоответствиеПолей.Вставить("ГородСокращение", "cityType");
СоответствиеПолей.Вставить("НаселенныйПункт", "locality");
СоответствиеПолей.Вставить("НаселенныйПунктСокращение", "localityType");
СоответствиеПолей.Вставить("Улица", "street");
СоответствиеПолей.Вставить("УлицаСокращение", "streetType");
СоответствиеПолей.Вставить("МуниципальноеПредставление", "value");
СоответствиеПолей.Вставить("КодРегиона", "areaCode");
СоответствиеПолей.Вставить("МуниципальныйРайон", "munDistrict");
СоответствиеПолей.Вставить("МуниципальныйРайонСокращение", "munDistrictType");
СоответствиеПолей.Вставить("Поселение", "settlement");
СоответствиеПолей.Вставить("ПоселениеСокращение", "settlementType");
СоответствиеПолей.Вставить("ВнутригородскойРайон", "cityDistrict");
СоответствиеПолей.Вставить("ВнутригородскойРайонСокращение", "cityDistrictType");
СоответствиеПолей.Вставить("Территория", "territory");
СоответствиеПолей.Вставить("ТерриторияСокращение", "territoryType");
СоответствиеПолей.Вставить("ИдентификаторАдресногоОбъекта", "id");
СоответствиеПолей.Вставить("ИдентификаторДома", "id");
СоответствиеПолей.Вставить("Дом", "HouseNumber");
СоответствиеПолей.Вставить("ТипДома", "HouseType");
ОписаниеКонтактнойИнформации.AddressType = РаботаСАдресамиКлиентСервер.АдминистративноТерриториальныйАдрес();
Для каждого ПолеКонтактнойИнформации Из КонтактнаяИнформация Цикл
ИмяПоля = СоответствиеПолей.Получить(ПолеКонтактнойИнформации.Ключ);
Если ИмяПоля <> Неопределено Тогда
ОписаниеКонтактнойИнформации[ИмяПоля] = ПолеКонтактнойИнформации.Значение;
КонецЕсли;
КонецЦикла;
Если КонтактнаяИнформация.Свойство("Корпус")И ЗначениеЗаполнено(КонтактнаяИнформация.Корпус) Тогда
ТипКорпуса = ?(КонтактнаяИнформация.Свойство("ТипКорпуса"), КонтактнаяИнформация.ТипКорпуса, НСтр("ru='Корпус'"));
ОписаниеКонтактнойИнформации.buildings.Добавить(УправлениеКонтактнойИнформациейКлиентСервер.ЗначениеСтроенияИлиПомещения(КонтактнаяИнформация.Корпус, ТипКорпуса));
КонецЕсли;
Если КонтактнаяИнформация.Свойство("Квартира") И ЗначениеЗаполнено(КонтактнаяИнформация.Квартира) Тогда
ТипКвартиры = ?(КонтактнаяИнформация.Свойство("ТипКвартиры"), КонтактнаяИнформация.ТипКвартиры, НСтр("ru='Квартира'"));
ОписаниеКонтактнойИнформации.apartments.Добавить(УправлениеКонтактнойИнформациейКлиентСервер.ЗначениеСтроенияИлиПомещения(КонтактнаяИнформация.Квартира, ТипКвартиры));
КонецЕсли;
Возврат ОписаниеКонтактнойИнформации;
КонецФункции
// Читает и устанавливает район адреса.
//
// Параметры:
@@ -180,37 +180,6 @@
Возврат ПредопределенноеЗначение("Справочник.СтраныМира.Россия");
КонецФункции
Функция АккомодацияСтруктурыАдреса(Данные) Экспорт
НаселенныйПунктДетально = ОписаниеНовойКонтактнойИнформации(ПредопределенноеЗначение("Перечисление.ТипыКонтактнойИнформации.Адрес"));
ЗаполнитьЗначенияСвойств(НаселенныйПунктДетально, Данные);
Если ТипЗнч(НаселенныйПунктДетально.Buildings) <> Тип("Массив") Тогда
НаселенныйПунктДетально.Buildings = Новый Массив;
КонецЕсли;
Если ТипЗнч(НаселенныйПунктДетально.Apartments) <> Тип("Массив") Тогда
НаселенныйПунктДетально.Buildings = Новый Массив;
КонецЕсли;
Для каждого ЭлементАдреса Из НаселенныйПунктДетально Цикл
Если СтрЗаканчиваетсяНа(ЭлементАдреса.Ключ, "Id")
И ТипЗнч(ЭлементАдреса.Значение) = Тип("Строка")
И СтрДлина(ЭлементАдреса.Значение) = 36 Тогда
НаселенныйПунктДетально[ЭлементАдреса.Ключ] = Новый УникальныйИдентификатор(ЭлементАдреса.Значение);
КонецЕсли;
КонецЦикла;
Если Данные.Свойство("house") Тогда
НаселенныйПунктДетально.HouseNumber = Данные.house;
КонецЕсли;
Возврат НаселенныйПунктДетально;
КонецФункции
// Возвращает XPath для района.
//
// Возвращаемое значение:
@@ -271,7 +271,12 @@
// ПредставлениеКоманды - Строка - Необязательный. Имя команды, для выполнения которой необходимо расширение.
//
Процедура ПоказатьПредупреждениеОНеобходимостиРасширенияРаботыСФайлами(ОбработчикРезультата, ПредставлениеКоманды = "") Экспорт
Если Не КлиентПоддерживаетСинхронныеВызовы() Тогда
Если ОбщегоНазначенияКлиентСервер.ЭтоМобильныйКлиент() Тогда
ТекстПредупреждения = НСтр("ru = 'Выполнение команды ""%1"" в мобильном клиенте не поддерживается.'");
ИначеЕсли Не КлиентПоддерживаетСинхронныеВызовы() Тогда
ТекстПредупреждения = НСтр("ru = 'Выполнение команды ""%1"" в браузерах
|Google Chrome и Mozilla Firefox не поддерживается.'");
Иначе
@@ -1767,7 +1772,7 @@
Процедура ЗакончитьРедактированиеСРасширениемПослеПроверкиНовойВерсии(ПараметрыВыполнения)
Если Не ПараметрыВыполнения.ДанныеФайла.Зашифрован Тогда
ЗакончитьРедактированиеСРасширениемПослеПроверкиЗашифрован(, ПараметрыВыполнения);
ЗакончитьРедактированиеСРасширениемПослеПроверкиЗашифрован(Неопределено, ПараметрыВыполнения);
Возврат;
КонецЕсли;
@@ -1889,7 +1894,7 @@
//
Процедура ЗакончитьРедактированиеСРасширениемПослеПроверкиЗашифрованПовтор(Результат, Параметр) Экспорт
Если Результат = КодВозвратаДиалога.Повторить Тогда
ЗакончитьРедактированиеСРасширениемПослеПроверкиЗашифрован(, Параметр);
ЗакончитьРедактированиеСРасширениемПослеПроверкиЗашифрован(Неопределено, Параметр);
КонецЕсли;
КонецПроцедуры
@@ -1961,7 +1966,7 @@
Возврат;
КонецЕсли;
ЗакончитьРедактированиеСРасширениемПослеПроверкиЗашифрован(, ПараметрыВыполнения);
ЗакончитьРедактированиеСРасширениемПослеПроверкиЗашифрован(Неопределено, ПараметрыВыполнения);
КонецПроцедуры
@@ -3390,7 +3395,7 @@
Процедура СохранитьИзмененияФайлаСРасширениемПослеПроверкиНовойВерсии(ПараметрыВыполнения)
Если Не ПараметрыВыполнения.ДанныеФайла.Зашифрован Тогда
СохранитьИзмененияФайлаСРасширениемПослеПроверкиЗашифрован(, ПараметрыВыполнения);
СохранитьИзмененияФайлаСРасширениемПослеПроверкиЗашифрован(Неопределено, ПараметрыВыполнения);
Возврат;
КонецЕсли;
@@ -4374,7 +4379,7 @@
Действие.Вставить("ЗаголовокОшибки", Контекст.ЗаголовокОшибки
+ НСтр("ru = 'Копирование файла не выполнено по причине:'"));
ДействияСФайлом.Добавить(Действие);
ДобавитьВызов(Вызовы, "НачатьКопированиеФайла", Контекст.ПолноеИмяПомещаемогоФайла, Контекст.ПолноеИмяФайла,,);
ДобавитьВызов(Вызовы, "НачатьКопированиеФайла", Контекст.ПолноеИмяПомещаемогоФайла, Контекст.ПолноеИмяФайла, Неопределено, Неопределено);
КонецЕсли;
Действие = Новый Структура;
@@ -4403,7 +4408,7 @@
Контекст.ДействиеПомещения.Вставить("Файл", Контекст.ПолноеИмяФайла);
Контекст.ДействиеПомещения.Вставить("ЗаголовокОшибки", Контекст.ЗаголовокОшибки);
ДействияСФайлом.Добавить(Контекст.ДействиеПомещения);
ДобавитьВызов(Вызовы, "НачатьПомещениеФайлов", ПомещаемыеФайлы, , Ложь, Контекст.ИдентификаторФормы);
ДобавитьВызов(Вызовы, "НачатьПомещениеФайлов", ПомещаемыеФайлы, Неопределено, Ложь, Контекст.ИдентификаторФормы);
Контекст.Вставить("ДействияСФайлом", ДействияСФайлом);
@@ -5092,7 +5097,7 @@
#Если Не ВебКлиент Тогда
Если ПараметрыВыполнения.ВРабочемКаталогеВладельца = Ложь Тогда
ОсвободитьМестоВРабочемКаталоге(, ПараметрыВыполнения.ДанныеФайла);
ОсвободитьМестоВРабочемКаталоге(Неопределено, ПараметрыВыполнения.ДанныеФайла);
КонецЕсли;
#КонецЕсли
@@ -9682,7 +9687,7 @@
Процедура ОбработатьФайлПослеПолученияФайлов(ПолученныеФайлы, Контекст) Экспорт
Если ТипЗнч(ПолученныеФайлы) <> Тип("Массив") Или ПолученныеФайлы.Количество() = 0 Тогда
ОбработатьФайлПослеОшибки(НСтр("ru = 'Получение файла было отменено.'"), , Контекст);
ОбработатьФайлПослеОшибки(НСтр("ru = 'Получение файла было отменено.'"), Неопределено, Контекст);
Возврат;
КонецЕсли;
@@ -9694,7 +9699,7 @@
Процедура ОбработатьФайлПослеПомещенияФайлов(ПомещенныеФайлы, Контекст) Экспорт
Если ТипЗнч(ПомещенныеФайлы) <> Тип("Массив") Или ПомещенныеФайлы.Количество() = 0 Тогда
ОбработатьФайлПослеОшибки(НСтр("ru = 'Помещение файла было отменено.'"), , Контекст);
ОбработатьФайлПослеОшибки(НСтр("ru = 'Помещение файла было отменено.'"), Неопределено, Контекст);
Возврат;
КонецЕсли;
@@ -355,7 +355,7 @@
// Проверка контрольного ключа в номере лицевого счета (9-й разряд номера счета),
// алгоритм установлен документом:
// "ПОРЯДОК РАСЧЕТА КОНТРОЛЬНОГО КЛЮЧА В НОМЕРЕ ЛИЦЕВОГО СЧЕТА"
// (утв. ЦБ РФ 08.09.1997 N 515).
// (утвержден ЦБ РФ 08.09.1997 N 515).
//
// Параметры:
// НомерСчета - Строка - номер банковского счета.
@@ -8389,7 +8389,7 @@
#Область ОбновлениеДоступа
// Обработчик регламентного задания ОбновлениеДоступаНаУровнеЗаписей.
Процедура ОбновлениеДоступаНаУровнеЗаписей() Экспорт
Процедура ОбновлениеДоступаНаУровнеЗаписей(ОбновитьВсе = Ложь) Экспорт
ОбщегоНазначения.ПриНачалеВыполненияРегламентногоЗадания(
Метаданные.РегламентныеЗадания.ОбновлениеДоступаНаУровнеЗаписей);
@@ -8397,12 +8397,16 @@
ТекущийСеанс = ПолучитьТекущийСеансИнформационнойБазы();
Если ТекущийСеанс.ИмяПриложения <> "BackgroundJob" Тогда
ТекстОшибки = НСтр("ru = 'Обновление доступа может выполняться только в фоновом задании.'");
ВызватьИсключение ТекстОшибки;
Если ОбновитьВсе Тогда
ИдентификаторФоновогоЗадания = ИдентификаторПроизвольногоСеанса();
Иначе
ТекстОшибки = НСтр("ru = 'Обновление доступа может выполняться только в фоновом задании.'");
ВызватьИсключение ТекстОшибки;
КонецЕсли;
Иначе
ИдентификаторФоновогоЗадания = ТекущийСеанс.ПолучитьФоновоеЗадание().УникальныйИдентификатор;
КонецЕсли;
ТекущееФоновоеЗадание = ТекущийСеанс.ПолучитьФоновоеЗадание();
БлокировкаДанных = Новый БлокировкаДанных;
БлокировкаДанных.Добавить("Константа.ПоследнееОбновлениеДоступа");
@@ -8412,22 +8416,32 @@
ЗначениеКонстанты = Константы.ПоследнееОбновлениеДоступа.Получить();
ПоследнееОбновлениеДоступа = ПоследнееОбновлениеДоступа(ЗначениеКонстанты);
УжеВыполняется = Ложь;
Если ЗначениеЗаполнено(ПоследнееОбновлениеДоступа.ИдентификаторФоновогоЗадания) Тогда
ПоследнееФоновоеЗадание = ФоновыеЗадания.НайтиПоУникальномуИдентификатору(
ПоследнееОбновлениеДоступа.ИдентификаторФоновогоЗадания);
Иначе
ПоследнееФоновоеЗадание = Неопределено;
Если ПоследнееОбновлениеДоступа.ИдентификаторФоновогоЗадания = ИдентификаторПроизвольногоСеанса() Тогда
Сеансы = ПолучитьСеансыИнформационнойБазы();
Для Каждого Сеанс Из Сеансы Цикл
Если Сеанс.НомерСеанса = ПоследнееОбновлениеДоступа.НомерСеанса
И Сеанс.НачалоСеанса = ПоследнееОбновлениеДоступа.НачалоСеанса Тогда
УжеВыполняется = Истина;
Прервать;
КонецЕсли;
КонецЦикла;
Иначе
ПоследнееФоновоеЗадание = ФоновыеЗадания.НайтиПоУникальномуИдентификатору(
ПоследнееОбновлениеДоступа.ИдентификаторФоновогоЗадания);
УжеВыполняется = ПоследнееФоновоеЗадание <> Неопределено
И ПоследнееФоновоеЗадание.Состояние = СостояниеФоновогоЗадания.Активно;
КонецЕсли;
КонецЕсли;
Если ПоследнееФоновоеЗадание = Неопределено
Или ПоследнееФоновоеЗадание.Состояние <> СостояниеФоновогоЗадания.Активно Тогда
Если Не УжеВыполняется Тогда
ПоследнееОбновлениеДоступа.ДатаЗапускаНаСервере = ТекущаяДатаНаСервере();
ПоследнееОбновлениеДоступа.НомерСеанса = ТекущийСеанс.НомерСеанса;
ПоследнееОбновлениеДоступа.НачалоСеанса = ТекущийСеанс.НачалоСеанса;
ПоследнееОбновлениеДоступа.ИмяКомпьютера = ТекущийСеанс.ИмяКомпьютера;
ПоследнееОбновлениеДоступа.ИдентификаторФоновогоЗадания =
ТекущееФоновоеЗадание.УникальныйИдентификатор;
ПоследнееОбновлениеДоступа.ИдентификаторФоновогоЗадания = ИдентификаторФоновогоЗадания;
Константы.ПоследнееОбновлениеДоступа.Установить(
Новый ХранилищеЗначения(ПоследнееОбновлениеДоступа));
@@ -8438,8 +8452,17 @@
ВызватьИсключение;
КонецПопытки;
Если ПоследнееОбновлениеДоступа.ИдентификаторФоновогоЗадания
<> ТекущееФоновоеЗадание.УникальныйИдентификатор Тогда
Если УжеВыполняется Тогда
Если ОбновитьВсе Тогда
ТекстОшибки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
НСтр("ru = 'Не удалось начать обновление доступа, так как оно уже выполняется
|(компьютер: %1, сеанс: %2, начат: %3 в %4)'"),
ПоследнееОбновлениеДоступа.ИмяКомпьютера,
ПоследнееОбновлениеДоступа.НомерСеанса,
Формат(ПоследнееОбновлениеДоступа.НачалоСеанса, "ДЛФ=D"),
Формат(ПоследнееОбновлениеДоступа.НачалоСеанса, "ДЛФ=T"));
ВызватьИсключение ТекстОшибки;
КонецЕсли;
Возврат;
КонецЕсли;
@@ -8453,13 +8476,19 @@
КонецЕсли;
Если ОграничиватьДоступНаУровнеЗаписейУниверсально() Тогда
ПроверитьОбновитьДействующиеПараметрыОграниченияДоступа(ПоследнееОбновлениеДоступа);
ВыполнитьОбновлениеДоступа(ПоследнееОбновлениеДоступа.ТекстОшибкиЗавершения);
ВыполнитьОбновлениеДоступа(ПоследнееОбновлениеДоступа.ТекстОшибкиЗавершения, ОбновитьВсе);
Иначе
УстановитьОбновлениеДоступа(Ложь);
КонецЕсли;
Исключение
ИнформацияОбОшибке = ИнформацияОбОшибке();
ЗарегистрироватьОшибкуОбновленияДоступа(ИнформацияОбОшибке, ПоследнееОбновлениеДоступа.ТекстОшибкиЗавершения);
Если ОбновитьВсе Тогда
ДобавитьТекстОшибкиЗавершения(ПоследнееОбновлениеДоступа.ТекстОшибкиЗавершения,
ПодробноеПредставлениеОшибки(ИнформацияОбОшибке));
Иначе
ЗарегистрироватьОшибкуОбновленияДоступа(ИнформацияОбОшибке,
ПоследнееОбновлениеДоступа.ТекстОшибкиЗавершения);
КонецЕсли;
КонецПопытки;
ПоследнееОбновлениеДоступа.ДатаЗавершенияНаСервере = ТекущаяДатаНаСервере();
@@ -8469,8 +8498,23 @@
Константы.ПоследнееОбновлениеДоступа.Установить(Новый ХранилищеЗначения(ПоследнееОбновлениеДоступа));
Если ОбновитьВсе И ЗначениеЗаполнено(ПоследнееОбновлениеДоступа.ТекстОшибкиЗавершения) Тогда
ТекстОшибки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
НСтр("ru = 'Не удалось выполнить обновление доступа по причине:
|%1'"),
ПоследнееОбновлениеДоступа.ТекстОшибкиЗавершения);
ВызватьИсключение ТекстОшибки;
КонецЕсли;
КонецПроцедуры
// Для процедуры ОбновлениеДоступаНаУровнеЗаписей.
Функция ИдентификаторПроизвольногоСеанса() Экспорт
Возврат Новый УникальныйИдентификатор("ba4730f7-0493-402d-b5d3-8052c80fb125");
КонецФункции
// Для процедуры ОбновлениеДоступаНаУровнеЗаписей.
Процедура ПроверитьОбновитьДействующиеПараметрыОграниченияДоступа(ПоследнееОбновлениеДоступа)
@@ -8525,7 +8569,7 @@
// Параллельность обеспечивает сама процедура путем запуска до двух фоновых заданий
// на каждый список, но не более значения константы КоличествоПотоковОбновленияДоступа.
//
Процедура ВыполнитьОбновлениеДоступа(ТекстОшибкиЗавершения)
Процедура ВыполнитьОбновлениеДоступа(ТекстОшибкиЗавершения, ОбновитьВсе)
ИсполняющиеФоновыеЗадания = Неопределено;
Если Не ОбщегоНазначения.ИнформационнаяБазаФайловая() Тогда
@@ -8589,7 +8633,7 @@
+ МаксимальноеКоличествоМинутВыполненияФоновогоЗаданияОбновленияДоступа() * 60;
Пока Истина Цикл
Если ТекущаяУниверсальнаяДата() > ОкончаниеВыполнения Тогда
Если Не ОбновитьВсе И ТекущаяУниверсальнаяДата() > ОкончаниеВыполнения Тогда
Прервать;
КонецЕсли;
ОбработкаЗавершена = Истина;
@@ -10616,6 +10660,16 @@
НаборИзОднойЗаписи = СлужебныйНаборЗаписей(РегистрыСведений.КлючиДоступаКОбъектам);
Запись = НаборИзОднойЗаписи.Добавить();
Блокировка = Новый БлокировкаДанных;
ОбъектТип = Метаданные.РегистрыСведений.КлючиДоступаКОбъектам.Измерения.Объект.Тип;
Если Не ОбъектТип.СодержитТип(ТипЗнч(Контекст.ОписаниеКлючейДоступаОбъектов[0].ТекущаяСсылка)) Тогда
ТекстОшибки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
НСтр("ru = 'Невозможно обновить ключ доступа объекта ""%1"" типа ""%2"",
|так как этот тип не указан в определяемом типе ВладелецЗначенийКлючейДоступа.'"),
Строка(Контекст.ОписаниеКлючейДоступаОбъектов[0].ТекущаяСсылка),
Строка(ТипЗнч(Контекст.ОписаниеКлючейДоступаОбъектов[0].ТекущаяСсылка)),
ПараметрыОбновления.Список);
ВызватьИсключение ТекстОшибки;
КонецЕсли;
Для Каждого ОписаниеКлючаДоступаОбъекта Из Контекст.ОписаниеКлючейДоступаОбъектов Цикл
ЭлементБлокировки = Блокировка.Добавить("РегистрСведений.КлючиДоступаКОбъектам");
ЭлементБлокировки.УстановитьЗначение("Объект", ОписаниеКлючаДоступаОбъекта.ТекущаяСсылка);
@@ -309,7 +309,15 @@
ОбъектКонтактнойИнформации = УправлениеКонтактнойИнформациейСлужебный.СтрокаJSONВСтруктуру(Значение);
Представление = ОбъектКонтактнойИнформации.Value;
ИначеЕсли ЭтоКонтактнаяИнформацияВJSON Тогда
Значение = ЗначениеИлиПредставление;
ЗначенияПолей = КонтактнаяИнформацияВXML(Значение);
ОбъектКонтактнойИнформации = УправлениеКонтактнойИнформациейСлужебный.СтрокаJSONВСтруктуру(Значение);
Представление = ПредставлениеКонтактнойИнформации(ЗначениеИлиПредставление, ВидКонтактнойИнформации);
Иначе
ОбъектКонтактнойИнформации = УправлениеКонтактнойИнформациейСлужебный.КонтактнаяИнформацияПоПредставлению(ЗначениеИлиПредставление, СвойстваВидаКонтактнойИнформации.Тип);
Значение = УправлениеКонтактнойИнформациейСлужебный.СтруктураВСтрокуJSON(ОбъектКонтактнойИнформации);
ЗначенияПолей = КонтактнаяИнформацияВXML(Значение);
@@ -573,7 +581,9 @@
// Преобразует все входящие форматы контактной информации в JSON.
//
// Параметры:
// КонтактнаяИнформация - Строка, Структура, Соответствие, СписокЗначений - Описание полей контактной информации.
// КонтактнаяИнформация - Строка, Структура - Описание полей контактной информации.
// Если передается структура, то состав полей должен соответствовать
// УправлениеКонтактнойИнформациейКлиентСервер.ОписаниеНовойКонтактнойИнформации.
// ОжидаемыйВид - СправочникСсылка.ВидыКонтактнойИнформации, ПеречислениеСсылка.ТипыКонтактнойИнформации -
// Используется для определения типа, если его невозможно вычислить по полю ЗначенияПолей.
//
@@ -617,7 +627,7 @@
// Возвращает тип контактной информации.
//
// Параметры:
// КонтактнаяИнформация - Строка - Контактная информация в виде XML, соответсвующего структуре
// КонтактнаяИнформация - Строка - Контактная информация в виде XML, соответствующего структуре
// XDTO пакетов КонтактнаяИнформация и Адрес.
//
// Возвращаемое значение:
@@ -803,7 +813,7 @@
КонецЕсли;
Если УправлениеКонтактнойИнформациейКлиентСервер.ЭтоКонтактнаяИнформацияВXML(КонтактнаяИнформация) Тогда
КонтактнаяИнформацияСтруктурой = УправлениеКонтактнойИнформациейСлужебный.КонтактнаяИнформацияВСтруктуруJSON(КонтактнаяИнформация);
КонтактнаяИнформацияСтруктурой = УправлениеКонтактнойИнформациейСлужебный.КонтактнаяИнформацияВСтруктуруJSON(КонтактнаяИнформация,,, Ложь);
ИначеЕсли УправлениеКонтактнойИнформациейКлиентСервер.ЭтоКонтактнаяИнформацияВJSON(КонтактнаяИнформация) Тогда
КонтактнаяИнформацияСтруктурой = УправлениеКонтактнойИнформациейСлужебный.СтрокаJSONВСтруктуру(КонтактнаяИнформация);
КонецЕсли;
@@ -847,7 +857,7 @@
КонецЕсли;
Если УправлениеКонтактнойИнформациейКлиентСервер.ЭтоКонтактнаяИнформацияВXML(КонтактнаяИнформация) Тогда
КонтактнаяИнформацияСтруктурой = УправлениеКонтактнойИнформациейСлужебный.КонтактнаяИнформацияВСтруктуруJSON(КонтактнаяИнформация);
КонтактнаяИнформацияСтруктурой = УправлениеКонтактнойИнформациейСлужебный.КонтактнаяИнформацияВСтруктуруJSON(КонтактнаяИнформация,,, Ложь);
ИначеЕсли УправлениеКонтактнойИнформациейКлиентСервер.ЭтоКонтактнаяИнформацияВJSON(КонтактнаяИнформация) Тогда
КонтактнаяИнформацияСтруктурой = УправлениеКонтактнойИнформациейСлужебный.СтрокаJSONВСтруктуру(КонтактнаяИнформация);
КонецЕсли;
@@ -1562,7 +1572,7 @@
Если ЗначениеЗаполнено(СтрокаКИ.ЗначенияПолей) Тогда
КонтактнаяИнформацияПоПолям = УправлениеКонтактнойИнформациейСлужебный.КонтактнаяИнформацияВСтруктуруJSON(СтрокаКИ.ЗначенияПолей,
СтрокаКИ.Тип, СтрокаКИ.Представление);
СтрокаКИ.Тип, СтрокаКИ.Представление, Ложь);
СтрокаКИ.Значение = УправлениеКонтактнойИнформациейСлужебный.СтруктураВСтрокуJSON(КонтактнаяИнформацияПоПолям);
ИначеЕсли ЗначениеЗаполнено(СтрокаКИ.Представление) Тогда
@@ -3728,23 +3738,23 @@
Элемент.ВысотаЗаголовка = 2;
Если ИнформацияОВидеКИ.Тип = Перечисления.ТипыКонтактнойИнформации.Адрес Тогда
Элемент.Ширина = 50;
Элемент.Ширина = 70;
ИначеЕсли ИнформацияОВидеКИ.Тип = Перечисления.ТипыКонтактнойИнформации.Другое Тогда
Если ИнформацияОВидеКИ.ВидПоляДругое = "МногострочноеШирокое" Тогда
Элемент.Высота = 3;
Элемент.Ширина = 50;
Элемент.Ширина = 70;
Элемент.МногострочныйРежим = Истина;
ИначеЕсли ИнформацияОВидеКИ.ВидПоляДругое = "ОднострочноеШирокое" Тогда
Элемент.Высота = 1;
Элемент.Ширина = 50;
Элемент.Ширина = 70;
Элемент.МногострочныйРежим = Ложь;
Иначе // ОднострочноеУзкое
Элемент.Высота = 1;
Элемент.Ширина = 25;
Элемент.Ширина = 35;
Элемент.МногострочныйРежим = Ложь;
КонецЕсли;
Иначе
Элемент.Ширина = 25;
Элемент.Ширина = 35;
КонецЕсли;
Если Не ЭтоНовыйВидКИ Тогда
@@ -300,7 +300,7 @@
КонецФункции
Функция ЗначениеСтроенияИлиПомещения(Тип, Значение) Экспорт
Возврат Новый Структура("Type, Number", Тип, Значение);
Возврат Новый Структура("type, number", Тип, Значение);
КонецФункции
Функция ЭтоТипАдрес(ЗначениеТипа) Экспорт
@@ -220,35 +220,57 @@
Если Метаданные.Обработки.Найти("РасширенныйВводКонтактнойИнформации") = Неопределено Тогда
Возврат;
КонецЕсли;
Результат = Обработки["РасширенныйВводКонтактнойИнформации"].СписокАвтоподбораНаселенногоПункта(Текст);
ДополнительныеПараметры = Новый Структура("ТолькоВебСервис", Истина);
Результат = Обработки["РасширенныйВводКонтактнойИнформации"].СписокАвтоподбораНаселенногоПункта(Текст, ДополнительныеПараметры);
Если Результат.Отказ Тогда
Возврат;
КонецЕсли;
ДанныеВыбора = Результат.Данные;
ФорматированиеРезультатовАвтоподбора(ДанныеВыбора, Текст);
КонецПроцедуры
Процедура ФорматированиеРезультатовАвтоподбора(ДанныеВыбора, Знач Текст) Экспорт
МодульРаботаСАдресамиКлиентСервер = ОбщегоНазначения.ОбщийМодуль("РаботаСАдресамиКлиентСервер");
// Оформление списка поиска
ФрагментыТекстаПоиска = СтрРазделить(Текст, " ");
Для каждого СтрокаДанных Из ДанныеВыбора Цикл
Если ТипЗнч(СтрокаДанных.Значение) = Тип("Структура")
И СтрокаДанных.Значение.Свойство("Адрес")
И ЗначениеЗаполнено(СтрокаДанных.Значение.Адрес) Тогда
Адрес = СтрокаJSONВСтруктуру(СтрокаДанных.Значение.Адрес);
СтрокаДанных.Значение.Представление = МодульРаботаСАдресамиКлиентСервер.ПредставлениеАдреса(Адрес, Ложь);
УстаревшийАдрес = Не СтрокаДанных.Значение.Муниципальный;
Иначе
УстаревшийАдрес = Ложь;
КонецЕсли;
Представление = СтрокаДанных.Представление;
Для каждого ФрагментТекстаПоиска Из ФрагментыТекстаПоиска Цикл
Позиция = СтрНайти(ВРег(Представление), ВРег(ФрагментТекстаПоиска));
Если Позиция > 0 Тогда
Представление = Лев(Представление, Позиция - 1) + Символы.ПС + Символы.ВТаб + Сред(Представление, Позиция, СтрДлина(ФрагментТекстаПоиска))
+ Символы.ПС + Сред(Представление, Позиция + СтрДлина(ФрагментТекстаПоиска));
+ Символы.ПС + Сред(Представление, Позиция + СтрДлина(ФрагментТекстаПоиска));
КонецЕсли;
КонецЦикла;
Набор = СтрРазделить(Представление, Символы.ПС);
Для Счетчик = 0 По Набор.Количество() - 1 Цикл
Если СтрНачинаетсяС(Набор[Счетчик], Символы.ВТаб) Тогда
Набор[Счетчик] = Новый ФорматированнаяСтрока(СокрЛП(Набор[Счетчик]), Новый Шрифт(,, Истина), ЦветаСтиля.РезультатУспехЦвет);
ИначеЕсли УстаревшийАдрес Тогда
Набор[Счетчик] = Новый ФорматированнаяСтрока(Набор[Счетчик],, ЦветаСтиля.ТекстЗапрещеннойЯчейкиЦвет);
КонецЕсли;
КонецЦикла;
СтрокаДанных.Представление = Новый ФорматированнаяСтрока(Набор);
КонецЦикла;
КонецПроцедуры
// Неразделенный монопольный обработчик для копирования стран мира из нулевой области.
@@ -2694,7 +2716,7 @@
// Преобразует формат из XML в JSON
//
Функция КонтактнаяИнформацияВСтруктуруJSON(КонтактнаяИнформация, Знач Тип = Неопределено, Представление = "") Экспорт
Функция КонтактнаяИнформацияВСтруктуруJSON(КонтактнаяИнформация, Знач Тип = Неопределено, Представление = "", ОбновлятьИдентификаторы = Истина) Экспорт
Если Тип <> Неопределено И ТипЗнч(Тип) <> Тип("ПеречислениеСсылка.ТипыКонтактнойИнформации") Тогда
Тип = УправлениеКонтактнойИнформациейСлужебныйПовтИсп.ТипВидаКонтактнойИнформации(Тип);
@@ -2718,7 +2740,7 @@
Если Метаданные.ОбщиеМодули.Найти("РаботаСАдресами") <> Неопределено И Тип = Перечисления.ТипыКонтактнойИнформации.Адрес Тогда
МодульРаботаСАдресами = ОбщегоНазначения.ОбщийМодуль("РаботаСАдресами");
Возврат МодульРаботаСАдресами.КонтактнаяИнформацияВСтруктуруJSON(КонтактнаяИнформация, Тип, Представление);
Возврат МодульРаботаСАдресами.КонтактнаяИнформацияВСтруктуруJSON(КонтактнаяИнформация, Тип, Представление, ОбновлятьИдентификаторы);
КонецЕсли;
@@ -2740,6 +2762,30 @@
XDTOКонтактнаяИнформация = КонтактнаяИнформацияИзXML(КонтактнаяИнформация, Тип,, Представление);
КонецЕсли;
КонецЕсли;
ИначеЕсли ТипЗнч(КонтактнаяИнформация) = Тип("Структура") Тогда
СоответствиеПолей = Новый Соответствие();
СоответствиеПолей.Вставить("Представление", "value");
СоответствиеПолей.Вставить("Комментарий", "comment");
Если Тип = Перечисления.ТипыКонтактнойИнформации.Телефон Тогда
СоответствиеПолей.Вставить("КодСтраны", "countryCode");
СоответствиеПолей.Вставить("КодГорода", "areaCode");
СоответствиеПолей.Вставить("НомерТелефона", "number");
СоответствиеПолей.Вставить("Добавочный", "extNumber");
КонецЕсли;
Для каждого ПолеКонтактнойИнформации Из КонтактнаяИнформация Цикл
ИмяПоля = СоответствиеПолей.Получить(ПолеКонтактнойИнформации.Ключ);
Если ИмяПоля <> Неопределено Тогда
Результат[ИмяПоля] = ПолеКонтактнойИнформации.Значение;
КонецЕсли;
КонецЦикла;
Возврат Результат;
Иначе
XDTOКонтактнаяИнформация = КонтактнаяИнформация;
Тип = Перечисления.ТипыКонтактнойИнформации.Адрес;
@@ -1298,7 +1298,7 @@
НаборСвойствОбъект.ДополнительныеРеквизиты.Индекс(ДопСведение));
КонецЦикла;
ОбновлениеИнформационнойБазы.ЗаписатьДанные(НаборСвойствОбъект.Записать());
ОбновлениеИнформационнойБазы.ЗаписатьДанные(НаборСвойствОбъект);
КонецЕсли;
КонецЦикла;
@@ -3173,7 +3173,7 @@
// Проверим, разрешен ли сбор дампов.
Если ПараметрыСбораИОтправкиДампов.ОтправлятьФайлыДампов = 0 Тогда
УстановитьПривилегированныйРежим(Истина);
УстановитьПараметрЦентраМониторинга("РезультатОтправки", Нстр("ru = 'Пользователь отказал в предоставлении дампов.'"));
УстановитьПараметрЦентраМониторинга("РезультатОтправки", НСтр("ru = 'Пользователь отказал в предоставлении дампов.'"));
УстановитьПривилегированныйРежим(Ложь);
ПрекратитьСборПолныхДампов();
Возврат;
@@ -3406,7 +3406,7 @@
Если Параметры.Свойство("ВариантыДампов") И Параметры.ВариантыДампов.Количество() Тогда
ШаблонЗапросДляОтправки = Нстр("ru = 'Для отправки подготовлены отчеты об ошибках (%1 шт.)
ШаблонЗапросДляОтправки = НСтр("ru = 'Для отправки подготовлены отчеты об ошибках (%1 шт.)
|Общий объем данных: %2 МБ.
|Отправить указанные файлы для анализа в фирму ""1С""?'");
+9 -9
View File
@@ -1,17 +1,17 @@
<?xml version="1.0" encoding="UTF-8"?>
<mdclass:Configuration xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="d8eef2ae-4291-4c6e-a412-36292e8242fd">
<mdclass:Configuration xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="4392f910-9a86-4326-8b43-9ffe578cc2d3">
<name>БиблиотекаСтандартныхПодсистем</name>
<synonym>
<key>ru</key>
<value>Библиотека стандартных подсистем, редакция 3.0</value>
</synonym>
<containedObjects classId="9cd510cd-abfc-11d4-9434-004095e12fc7" objectId="67570cc3-ce4d-4404-b150-3bbbc918eba3"/>
<containedObjects classId="9fcd25a0-4822-11d4-9414-008048da11f9" objectId="7d06980d-c79b-4448-a471-f0ed5fa97cc6"/>
<containedObjects classId="e3687481-0a87-462c-a166-9f34594f9bba" objectId="9f6f564b-52ce-43ea-bda2-2cef19e15c10"/>
<containedObjects classId="9de14907-ec23-4a07-96f0-85521cb6b53b" objectId="01fefc4e-2b7d-4333-a33b-1404ddedf4eb"/>
<containedObjects classId="51f2d5d8-ea4d-4064-8892-82951750031e" objectId="dc1b2d96-4292-48c2-827e-901e70e41a9b"/>
<containedObjects classId="e68182ea-4237-4383-967f-90c1e3370bc7" objectId="5f9ebbec-c7d3-4271-a8cd-e049d961be28"/>
<containedObjects classId="fb282519-d103-4dd3-bc12-cb271d631dfc" objectId="aa0a6d2f-6d1c-46ba-a503-597fda10f3ef"/>
<containedObjects classId="9cd510cd-abfc-11d4-9434-004095e12fc7" objectId="963eb1b4-5043-4955-b746-f90f8021d5cb"/>
<containedObjects classId="9fcd25a0-4822-11d4-9414-008048da11f9" objectId="a8712819-1046-47de-ba29-c8e9060cab2c"/>
<containedObjects classId="e3687481-0a87-462c-a166-9f34594f9bba" objectId="d65b45ac-80c5-4191-8ebd-4149982197a0"/>
<containedObjects classId="9de14907-ec23-4a07-96f0-85521cb6b53b" objectId="f25148b5-3a8f-484e-8faa-65111b6e6358"/>
<containedObjects classId="51f2d5d8-ea4d-4064-8892-82951750031e" objectId="ca729cad-6e8f-4a00-a1a6-39f830a6c95b"/>
<containedObjects classId="e68182ea-4237-4383-967f-90c1e3370bc7" objectId="5d211a66-b84f-450a-b593-20d3a4d6ed96"/>
<containedObjects classId="fb282519-d103-4dd3-bc12-cb271d631dfc" objectId="fc1ccb1f-466d-4450-9f79-4353bd4def28"/>
<defaultRunMode>ManagedApplication</defaultRunMode>
<usePurposes>PersonalComputer</usePurposes>
<scriptVariant>Russian</scriptVariant>
@@ -19,7 +19,7 @@
<defaultRoles>Role.АдминистраторСистемы</defaultRoles>
<defaultRoles>Role.ИнтерактивноеОткрытиеВнешнихОтчетовИОбработок</defaultRoles>
<vendor>Фирма &quot;1С&quot;</vendor>
<version>3.0.1.220</version>
<version>3.0.1.225</version>
<updateCatalogAddress>http://downloads.v8.1c.ru/tmplts/</updateCatalogAddress>
<includeHelpInContents>true</includeHelpInContents>
<usedMobileApplicationFunctionalities>
@@ -1 +1 @@
{6,1,1,3e5f5fd2-9e29-4cf6-9f26-0d489168fbab,1,f4ac2970-b97d-45ed-84ab-8da84c194faa,"3.0.1.220","Фирма ""1С""","БиблиотекаСтандартныхПодсистем",5842,1,0,d8eef2ae-4291-4c6e-a412-36292e8242fd,d8eef2ae-4291-4c6e-a412-36292e8242fd,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,adb28dbc-3ea8-4915-95e3-36e222f83d35,1,62fdb880-8c1c-422b-9f31-81a7dd11c7dd,"3.0.1.225","Фирма ""1С""","БиблиотекаСтандартныхПодсистем",5842,1,0,4392f910-9a86-4326-8b43-9ffe578cc2d3,4392f910-9a86-4326-8b43-9ffe578cc2d3,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
@@ -20,6 +20,14 @@
ВариантЗагрузки = "Интернет";
УстановитьИзмененияВИнтерфейсе();
Если ОбщегоНазначенияКлиентСервер.ЭтоМобильныйКлиент() Тогда
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(Элементы, "ВариантЗагрузки", "ВидПереключателя", ВидПереключателя.Переключатель);
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(Элементы, "ФормаКнопкаОтмена", "Видимость", Ложь);
КонецЕсли;
КонецПроцедуры
&НаСервере
@@ -450,7 +450,7 @@
КонецФункции
// Предназначена для преобразования формата чисел, используемого в файле курсов валюты.
// Работает в любой локазизации, не поддерживает отрицательные числа.
// Работает в любой локализации, не поддерживает отрицательные числа.
Функция КурсИзСтроки(Знач Строка)
Строка = СокрЛП(Строка);
@@ -396,14 +396,14 @@
&НаСервереБезКонтекста
Процедура ПриОжиданииВыгрузкиДанныхДляСопоставленияНаСервере(ПараметрыОбработчика, ПродолжитьОжидание)
Если Не ОбщегоНазначения.ПодсистемаСуществует("ТехнологияСервиса.РаботаВМоделиСервиса.ОбменДаннымиВМоделиСервиса") Тогда
Возврат;
Если ОбщегоНазначения.ПодсистемаСуществует("ТехнологияСервиса.РаботаВМоделиСервиса.ОбменДаннымиВМоделиСервиса") Тогда
МодульПомощникНастройки = ОбщегоНазначения.ОбщийМодуль(
"Обработки.ПомощникИнтерактивногоОбменаДаннымиВМоделиСервиса");
МодульПомощникНастройки.ПриОжиданииВыгрузкиДанныхДляСопоставления(ПараметрыОбработчика, ПродолжитьОжидание);
Иначе
ПродолжитьОжидание = Ложь;
КонецЕсли;
МодульПомощникНастройки = ОбщегоНазначения.ОбщийМодуль(
"Обработки.ПомощникИнтерактивногоОбменаДаннымиВМоделиСервиса");
МодульПомощникНастройки.ПриОжиданииВыгрузкиДанныхДляСопоставления(ПараметрыОбработчика, ПродолжитьОжидание);
КонецПроцедуры
&НаСервере
@@ -856,6 +856,242 @@
<orientation>Vertical</orientation>
</extInfo>
</items>
<items xsi:type="form:FormField">
<name>ВидПодключенияПассивныйРежим</name>
<id>112</id>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
<common>true</common>
</userVisible>
<dataPath xsi:type="form:DataPath">
<segments>ВидПодключения</segments>
</dataPath>
<titleLocation>None</titleLocation>
<toolTipRepresentation>ShowBottom</toolTipRepresentation>
<handlers>
<event>OnChange</event>
<name>ВидПодключенияПассивныйРежимПриИзменении</name>
</handlers>
<extendedTooltip>
<name>ВидПодключенияПассивныйРежимРасширеннаяПодсказка</name>
<id>114</id>
<title>
<key>ru</key>
<value>При таком варианте подключения эта программа отправляет и принимает данные через Интернет
только по запросу от программы-корреспондента.</value>
</title>
<type>Label</type>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<contextMenu>
<name>ВидПодключенияПассивныйРежимКонтекстноеМеню</name>
<id>113</id>
<autoFill>true</autoFill>
</contextMenu>
<type>RadioButtonField</type>
<editMode>Enter</editMode>
<showInHeader>true</showInHeader>
<headerHorizontalAlign>Left</headerHorizontalAlign>
<showInFooter>true</showInFooter>
<extInfo xsi:type="form:RadioButtonsFieldExtInfo">
<choiceList>
<presentation>
<key>ru</key>
<value>Подключение выполняется из другой программы через Интернет (пассивный режим)</value>
</presentation>
<value xsi:type="core:StringValue">
<value>ПассивныйРежим</value>
</value>
</choiceList>
<orientation>Vertical</orientation>
</extInfo>
</items>
<items xsi:type="form:FormGroup">
<name>ГруппаФайлНастройкиПассивныйРежим</name>
<id>723</id>
<items xsi:type="form:Decoration">
<name>Декорация2</name>
<id>752</id>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
<common>true</common>
</userVisible>
<extendedTooltip>
<name>Декорация2РасширеннаяПодсказка</name>
<id>754</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<contextMenu>
<name>Декорация2КонтекстноеМеню</name>
<id>753</id>
<autoFill>true</autoFill>
</contextMenu>
<width>1</width>
<autoMaxWidth>true</autoMaxWidth>
<height>1</height>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:PictureDecorationExtInfo"/>
</items>
<items xsi:type="form:FormGroup">
<name>Группа1</name>
<id>750</id>
<items xsi:type="form:FormField">
<name>ИмяФайлаНастроекXDTOКорреспондента</name>
<id>709</id>
<title>
<key>ru</key>
<value>Файл с настройками EnterpriseData</value>
</title>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
<common>true</common>
</userVisible>
<dataPath xsi:type="form:DataPath">
<segments>ИмяФайлаНастроекXDTOКорреспондента</segments>
</dataPath>
<extendedTooltip>
<name>ИмяФайлаНастроекXDTOКорреспондентаРасширеннаяПодсказка</name>
<id>711</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<contextMenu>
<name>ИмяФайлаНастроекXDTOКорреспондентаКонтекстноеМеню</name>
<id>710</id>
<autoFill>true</autoFill>
</contextMenu>
<type>InputField</type>
<markRequiredComplete>true</markRequiredComplete>
<editMode>Enter</editMode>
<showInHeader>true</showInHeader>
<headerHorizontalAlign>Left</headerHorizontalAlign>
<showInFooter>true</showInFooter>
<extInfo xsi:type="form:InputFieldExtInfo">
<handlers>
<event>StartChoice</event>
<name>ИмяФайлаНастроекXDTOКорреспондентаНачалоВыбора</name>
</handlers>
<autoMaxHeight>true</autoMaxHeight>
<wrap>true</wrap>
<choiceButton>true</choiceButton>
<autoMarkIncomplete>true</autoMarkIncomplete>
<chooseType>true</chooseType>
<typeDomainEnabled>true</typeDomainEnabled>
<textEdit>true</textEdit>
<textSize>Normal</textSize>
</extInfo>
</items>
<items xsi:type="form:Decoration">
<name>ОписаниеМастерИзФайла1</name>
<id>683</id>
<title>
<key>ru</key>
<value>Для продолжения настройки требуется конфигурационный файл с настройками синхронизации данных
через EnterpriseData из программы-корреспондента.</value>
</title>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
<common>true</common>
</userVisible>
<extendedTooltip>
<name>ОписаниеМастерИзФайла1РасширеннаяПодсказка</name>
<id>685</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<contextMenu>
<name>ОписаниеМастерИзФайла1КонтекстноеМеню</name>
<id>684</id>
<autoFill>true</autoFill>
</contextMenu>
<type>Label</type>
<autoMaxHeight>true</autoMaxHeight>
<textColor xsi:type="core:ColorRef">
<color>Style.ПоясняющийТекст</color>
</textColor>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
<verticalAlign>Top</verticalAlign>
</extInfo>
</items>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
<common>true</common>
</userVisible>
<title>
<key>ru</key>
<value>Группа1</value>
</title>
<extendedTooltip>
<name>Группа1РасширеннаяПодсказка</name>
<id>751</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<type>UsualGroup</type>
<extInfo xsi:type="form:UsualGroupExtInfo">
<group>Vertical</group>
<behavior>Auto</behavior>
<showLeftMargin>true</showLeftMargin>
<united>true</united>
<throughAlign>Auto</throughAlign>
<currentRowUse>Auto</currentRowUse>
</extInfo>
</items>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
<common>true</common>
</userVisible>
<title>
<key>ru</key>
<value>Группа файл настройки пассивный режим</value>
</title>
<extendedTooltip>
<name>ГруппаФайлНастройкиПассивныйРежимРасширеннаяПодсказка</name>
<id>724</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<type>UsualGroup</type>
<extInfo xsi:type="form:UsualGroupExtInfo">
<group>AlwaysHorizontal</group>
<behavior>Auto</behavior>
<showLeftMargin>true</showLeftMargin>
<united>true</united>
<throughAlign>Auto</throughAlign>
<currentRowUse>Auto</currentRowUse>
</extInfo>
</items>
<items xsi:type="form:FormField">
<name>ВидПодключенияОбычныеКаналыСвязи</name>
<id>109</id>
@@ -913,96 +1149,43 @@
<orientation>Vertical</orientation>
</extInfo>
</items>
<items xsi:type="form:FormField">
<name>ВидПодключенияПассивныйРежим</name>
<id>112</id>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
<common>true</common>
</userVisible>
<dataPath xsi:type="form:DataPath">
<segments>ВидПодключения</segments>
</dataPath>
<titleLocation>None</titleLocation>
<toolTipRepresentation>ShowBottom</toolTipRepresentation>
<handlers>
<event>OnChange</event>
<name>ВидПодключенияПассивныйРежимПриИзменении</name>
</handlers>
<extendedTooltip>
<name>ВидПодключенияПассивныйРежимРасширеннаяПодсказка</name>
<id>114</id>
<title>
<key>ru</key>
<value>При таком варианте подключения эта программа отправляет и принимает данные через Интернет
только по запросу от программы-корреспондента.</value>
</title>
<type>Label</type>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<contextMenu>
<name>ВидПодключенияПассивныйРежимКонтекстноеМеню</name>
<id>113</id>
<autoFill>true</autoFill>
</contextMenu>
<type>RadioButtonField</type>
<editMode>Enter</editMode>
<showInHeader>true</showInHeader>
<headerHorizontalAlign>Left</headerHorizontalAlign>
<showInFooter>true</showInFooter>
<extInfo xsi:type="form:RadioButtonsFieldExtInfo">
<choiceList>
<presentation>
<key>ru</key>
<value>Подключение для синхронизации данных выполняется из другой программы</value>
</presentation>
<value xsi:type="core:StringValue">
<value>ПассивныйРежим</value>
</value>
</choiceList>
<orientation>Vertical</orientation>
</extInfo>
</items>
<items xsi:type="form:Decoration">
<name>Декорация1</name>
<id>712</id>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
<common>true</common>
</userVisible>
<extendedTooltip>
<name>Декорация1РасширеннаяПодсказка</name>
<id>714</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<contextMenu>
<name>Декорация1КонтекстноеМеню</name>
<id>713</id>
<autoFill>true</autoFill>
</contextMenu>
<autoMaxWidth>true</autoMaxWidth>
<height>1</height>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:PictureDecorationExtInfo"/>
</items>
<items xsi:type="form:FormGroup">
<name>ПанельФайлНастройки</name>
<id>715</id>
<name>ГруппаФайлНастройкиОбычныеКаналыСвязи</name>
<id>743</id>
<items xsi:type="form:Decoration">
<name>Декорация1</name>
<id>747</id>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
<common>true</common>
</userVisible>
<extendedTooltip>
<name>Декорация1РасширеннаяПодсказка</name>
<id>749</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<contextMenu>
<name>Декорация1КонтекстноеМеню</name>
<id>748</id>
<autoFill>true</autoFill>
</contextMenu>
<width>1</width>
<autoMaxWidth>true</autoMaxWidth>
<height>1</height>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:PictureDecorationExtInfo"/>
</items>
<items xsi:type="form:FormGroup">
<name>СтраницаФайлНастройкиОбычныеКаналыСвязи</name>
<id>721</id>
<name>Группа2</name>
<id>745</id>
<items xsi:type="form:FormGroup">
<name>ГруппаФайлНастройкиОбычныеКаналыСвязи</name>
<name>Группа3</name>
<id>669</id>
<items xsi:type="form:FormField">
<name>ЗагрузитьПараметрыПодключенияИзФайла</name>
@@ -1089,7 +1272,6 @@
<event>StartChoice</event>
<name>ИмяФайлаНастроекПодключенияДляЗагрузкиНачалоВыбора</name>
</handlers>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<wrap>true</wrap>
<choiceButton>true</choiceButton>
@@ -1110,7 +1292,7 @@
<value>Файл настройки обычные каналы связи</value>
</title>
<extendedTooltip>
<name>ГруппаФайлНастройкиОбычныеКаналыСвязиРасширеннаяПодсказка</name>
<name>Группа3РасширеннаяПодсказка</name>
<id>670</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
@@ -1174,11 +1356,11 @@
</userVisible>
<title>
<key>ru</key>
<value>Страница файл настройки обычные каналы связи</value>
<value>Группа2</value>
</title>
<extendedTooltip>
<name>СтраницаФайлНастройкиОбычныеКаналыСвязиРасширеннаяПодсказка</name>
<id>722</id>
<name>Группа2РасширеннаяПодсказка</name>
<id>746</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
@@ -1186,130 +1368,14 @@
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<type>Page</type>
<extInfo xsi:type="form:PageGroupExtInfo">
<type>UsualGroup</type>
<extInfo xsi:type="form:UsualGroupExtInfo">
<group>Vertical</group>
<showTitle>auto</showTitle>
<scrollOnCompress>false</scrollOnCompress>
</extInfo>
</items>
<items xsi:type="form:FormGroup">
<name>СтраницаФайлНастройкиПассивныйРежим</name>
<id>723</id>
<items xsi:type="form:FormField">
<name>ИмяФайлаНастроекXDTOКорреспондента</name>
<id>709</id>
<title>
<key>ru</key>
<value>Файл с настройками программы-корреспондента</value>
</title>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
<common>true</common>
</userVisible>
<dataPath xsi:type="form:DataPath">
<segments>ИмяФайлаНастроекXDTOКорреспондента</segments>
</dataPath>
<extendedTooltip>
<name>ИмяФайлаНастроекXDTOКорреспондентаРасширеннаяПодсказка</name>
<id>711</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<contextMenu>
<name>ИмяФайлаНастроекXDTOКорреспондентаКонтекстноеМеню</name>
<id>710</id>
<autoFill>true</autoFill>
</contextMenu>
<type>InputField</type>
<markRequiredComplete>true</markRequiredComplete>
<editMode>Enter</editMode>
<showInHeader>true</showInHeader>
<headerHorizontalAlign>Left</headerHorizontalAlign>
<showInFooter>true</showInFooter>
<extInfo xsi:type="form:InputFieldExtInfo">
<handlers>
<event>StartChoice</event>
<name>ИмяФайлаНастроекXDTOКорреспондентаНачалоВыбора</name>
</handlers>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<wrap>true</wrap>
<choiceButton>true</choiceButton>
<autoMarkIncomplete>true</autoMarkIncomplete>
<chooseType>true</chooseType>
<typeDomainEnabled>true</typeDomainEnabled>
<textEdit>true</textEdit>
<textSize>Normal</textSize>
</extInfo>
</items>
<items xsi:type="form:Decoration">
<name>ОписаниеМастерИзФайла1</name>
<id>683</id>
<title>
<key>ru</key>
<value>Для продолжения настройки требуется конфигурационный файл с настройками синхронизации данных
через EnterpriseData в программе-корреспонденте.</value>
</title>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
<common>true</common>
</userVisible>
<extendedTooltip>
<name>ОписаниеМастерИзФайла1РасширеннаяПодсказка</name>
<id>685</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<contextMenu>
<name>ОписаниеМастерИзФайла1КонтекстноеМеню</name>
<id>684</id>
<autoFill>true</autoFill>
</contextMenu>
<type>Label</type>
<autoMaxHeight>true</autoMaxHeight>
<textColor xsi:type="core:ColorRef">
<color>Style.ПоясняющийТекст</color>
</textColor>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
<verticalAlign>Top</verticalAlign>
</extInfo>
</items>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
<common>true</common>
</userVisible>
<title>
<key>ru</key>
<value>Страница файл настройки пассивный режим</value>
</title>
<extendedTooltip>
<name>СтраницаФайлНастройкиПассивныйРежимРасширеннаяПодсказка</name>
<id>724</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<type>Page</type>
<extInfo xsi:type="form:PageGroupExtInfo">
<group>Vertical</group>
<showTitle>auto</showTitle>
<scrollOnCompress>false</scrollOnCompress>
<behavior>Auto</behavior>
<showLeftMargin>true</showLeftMargin>
<united>true</united>
<throughAlign>Auto</throughAlign>
<currentRowUse>Auto</currentRowUse>
</extInfo>
</items>
<visible>true</visible>
@@ -1319,11 +1385,11 @@
</userVisible>
<title>
<key>ru</key>
<value>Панель файл настройки</value>
<value>Группа файл настройки обычные каналы связи</value>
</title>
<extendedTooltip>
<name>ПанельФайлНастройкиРасширеннаяПодсказка</name>
<id>716</id>
<name>ГруппаФайлНастройкиОбычныеКаналыСвязиРасширеннаяПодсказка</name>
<id>744</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
@@ -1331,8 +1397,13 @@
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<type>Pages</type>
<extInfo xsi:type="form:PagesGroupExtInfo">
<type>UsualGroup</type>
<extInfo xsi:type="form:UsualGroupExtInfo">
<group>AlwaysHorizontal</group>
<behavior>Auto</behavior>
<showLeftMargin>true</showLeftMargin>
<united>true</united>
<throughAlign>Auto</throughAlign>
<currentRowUse>Auto</currentRowUse>
</extInfo>
</items>
@@ -1367,34 +1438,6 @@
<currentRowUse>Auto</currentRowUse>
</extInfo>
</items>
<items xsi:type="form:Decoration">
<name>ДекорацияОтступОтКоманднойПанелиКартинка</name>
<id>654</id>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
<common>true</common>
</userVisible>
<extendedTooltip>
<name>ДекорацияОтступОтКоманднойПанелиКартинкаРасширеннаяПодсказка</name>
<id>656</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<contextMenu>
<name>ДекорацияОтступОтКоманднойПанелиКартинкаКонтекстноеМеню</name>
<id>655</id>
<autoFill>true</autoFill>
</contextMenu>
<autoMaxWidth>true</autoMaxWidth>
<height>1</height>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:PictureDecorationExtInfo"/>
</items>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
@@ -7043,21 +7086,6 @@
<common>true</common>
</edit>
</attributes>
<attributes>
<name>АдресВХранилищеНастройкиПодключения</name>
<title>
<key>ru</key>
<value>Адрес в хранилище настройки подключения</value>
</title>
<id>99</id>
<valueType/>
<view>
<common>true</common>
</view>
<edit>
<common>true</common>
</edit>
</attributes>
<attributes>
<name>ИмяФайлаНастроекДляПриемника</name>
<title>
@@ -7279,10 +7307,10 @@
</edit>
</attributes>
<attributes>
<name>ПоддерживаемыеОбъектыФормата</name>
<name>ПоддерживаемыеОбъектыФорматаКорреспондента</name>
<title>
<key>ru</key>
<value>Поддерживаемые объекты формата</value>
<value>Поддерживаемые объекты формата корреспондента</value>
</title>
<id>113</id>
<valueType/>
@@ -79,9 +79,9 @@
Процедура ИмяФайлаНастроекПодключенияДляВыгрузкиНачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка)
НастройкиДиалога = Новый Структура;
НастройкиДиалога.Вставить("Режим", РежимДиалогаВыбораФайла.Сохранение);
НастройкиДиалога.Вставить("Заголовок", НСтр("ru = 'Укажите файл для сохранения настроек подключения'"));
НастройкиДиалога.Вставить("Фильтр", НСтр("ru = 'Файл настроек подключения (*.xml)'") + "|*.xml");
НастройкиДиалога.Вставить("Режим", РежимДиалогаВыбораФайла.Сохранение);
НастройкиДиалога.Вставить("Заголовок", НСтр("ru = 'Укажите файл для сохранения настроек подключения'"));
НастройкиДиалога.Вставить("Фильтр", НСтр("ru = 'Файл настроек подключения (*.xml)'") + "|*.xml");
ОбменДаннымиКлиент.ОбработчикВыбораФайла(ЭтотОбъект, "ИмяФайлаНастроекПодключенияДляВыгрузки", СтандартнаяОбработка, НастройкиДиалога);
@@ -238,6 +238,8 @@
Результат.Вставить("ЭтоОбменСПриложениемВСервисе", ЭтоОбменСПриложениемВСервисе);
КонецЕсли;
Результат.Вставить("ПассивныйРежим", ВидПодключения = "ПассивныйРежим");
Закрыть(Результат);
КонецПроцедуры
@@ -785,30 +787,83 @@
Процедура ПриЗавершенииСохраненияНастроекПодключения()
НастройкиПодключенияСохранены = Ложь;
АдресВХранилищеНастройкиПодключения = "";
СообщениеОбОшибке = "";
АдресВХранилищеНастройкиПодключения = Неопределено;
ПриЗавершенииСохраненияНастроекПодключенияНаСервере(НастройкиПодключенияСохранены, СообщениеОбОшибке);
ПриЗавершенииСохраненияНастроекПодключенияНаСервере(НастройкиПодключенияСохранены,
АдресВХранилищеНастройкиПодключения, СообщениеОбОшибке);
Результат = Новый Структура;
Результат.Вставить("Отказ", Не НастройкиПодключенияСохранены);
Результат.Вставить("СообщениеОбОшибке", СообщениеОбОшибке);
ОповещениеЗавершения = Новый ОписаниеОповещения("СохранениеНастроекПодключенияЗавершение", ЭтотОбъект);
Если НастройкиПодключенияСохранены Тогда
Если СохранитьПараметрыПодключенияВФайл
И Не АдресВХранилищеНастройкиПодключения = Неопределено Тогда
ДанныеФайла = ПолучитьИзВременногоХранилища(АдресВХранилищеНастройкиПодключения);
ДанныеФайла.Записать(ИмяФайлаНастроекПодключенияДляВыгрузки);
И ЗначениеЗаполнено(АдресВХранилищеНастройкиПодключения) Тогда
ДополнительныеПараметры = Новый Структура;
ДополнительныеПараметры.Вставить("ОповещениеЗавершения", ОповещениеЗавершения);
ОповещениеПолученияФайла = Новый ОписаниеОповещения("ПолучениеФайлаНастроекПодключенияЗавершение",
ЭтотОбъект, ДополнительныеПараметры);
ПолучаемыеФайлы = Новый Массив;
ПолучаемыеФайлы.Добавить(
Новый ОписаниеПередаваемогоФайла(ИмяФайлаНастроекПодключенияДляВыгрузки, АдресВХранилищеНастройкиПодключения));
НачатьПолучениеФайлов(ОповещениеПолученияФайла, ПолучаемыеФайлы, , Ложь);
Иначе
ВыполнитьОбработкуОповещения(ОповещениеЗавершения, Результат);
КонецЕсли;
Иначе
ВыполнитьОбработкуОповещения(ОповещениеЗавершения, Результат);
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура ПолучениеФайлаНастроекПодключенияЗавершение(ПолученныеФайлы, ДополнительныеПараметры) Экспорт
Результат = Новый Структура;
Результат.Вставить("Отказ", Ложь);
Результат.Вставить("СообщениеОбОшибке", "");
Если ПолученныеФайлы = Неопределено Тогда
Результат.Отказ = Истина;
Результат.СообщениеОбОшибке = НСтр("ru = 'Не удалось сохранить настройки подключения в файл.'");
КонецЕсли;
ВыполнитьОбработкуОповещения(ДополнительныеПараметры.ОповещениеЗавершения, Результат);
КонецПроцедуры
&НаКлиенте
Процедура СохранениеНастроекПодключенияЗавершение(Результат, ДополнительныеПараметры) Экспорт
Если Не Результат.Отказ Тогда
ИзменитьПорядковыйНомерПерехода(+1);
Оповестить("Запись_УзелПланаОбмена");
Иначе
ИзменитьПорядковыйНомерПерехода(-1);
Если Не ПустаяСтрока(СообщениеОбОшибке) Тогда
ОбщегоНазначенияКлиентСервер.СообщитьПользователю(СообщениеОбОшибке);
Иначе
ОбщегоНазначенияКлиентСервер.СообщитьПользователю(
НСтр("ru = 'Не удалось сохранить настройки подключения.'"));
ТекстСообщения = Результат.СообщениеОбОшибке;
Если ПустаяСтрока(ТекстСообщения) Тогда
ТекстСообщения = НСтр("ru = 'Не удалось сохранить настройки подключения.'");
КонецЕсли;
ОбщегоНазначенияКлиентСервер.СообщитьПользователю(ТекстСообщения);
КонецЕсли;
КонецПроцедуры
@@ -845,7 +900,7 @@
Если НастройкаXDTO Тогда
НастройкиПодключения.Вставить("НастройкиXDTOКорреспондента", Новый Структура);
НастройкиПодключения.НастройкиXDTOКорреспондента.Вставить("ПоддерживаемыеВерсии", Новый Массив);
НастройкиПодключения.НастройкиXDTOКорреспондента.Вставить("ПоддерживаемыеОбъекты", ПоддерживаемыеОбъектыФормата);
НастройкиПодключения.НастройкиXDTOКорреспондента.Вставить("ПоддерживаемыеОбъекты", ПоддерживаемыеОбъектыФорматаКорреспондента);
НастройкиПодключения.НастройкиXDTOКорреспондента.ПоддерживаемыеВерсии.Добавить(ВерсияФорматаОбмена);
КонецЕсли;
@@ -884,7 +939,8 @@
КонецПроцедуры
&НаСервере
Процедура ПриЗавершенииСохраненияНастроекПодключенияНаСервере(НастройкиПодключенияСохранены, СообщениеОбОшибке)
Процедура ПриЗавершенииСохраненияНастроекПодключенияНаСервере(НастройкиПодключенияСохранены,
АдресВХранилищеНастройкиПодключения, СообщениеОбОшибке)
СтатусЗавершения = Неопределено;
@@ -983,7 +1039,7 @@
Обработки.ПомощникСозданияОбменаДанными.ВерсияФорматаНастроекОбменаДанными());
СтруктураНастроекПомощника.Вставить("ВерсияФорматаОбмена", ВерсияФорматаОбмена);
СтруктураНастроекПомощника.Вставить("ПоддерживаемыеОбъектыФормата", ПоддерживаемыеОбъектыФормата);
СтруктураНастроекПомощника.Вставить("ПоддерживаемыеОбъектыФормата", ПоддерживаемыеОбъектыФорматаКорреспондента);
// Настройки транспорта.
СтруктураНастроекПомощника.Вставить("COMАутентификацияОперационнойСистемы",
@@ -1220,7 +1276,7 @@
ВерсияФорматаОбмена = ОбменДаннымиXDTOСервер.МаксимальнаяОбщаяВерсияФормата(
ИмяПланаОбмена, ПараметрыКорреспондента.ВерсииФорматаОбмена);
ПоддерживаемыеОбъектыФормата = Новый ХранилищеЗначения(
ПоддерживаемыеОбъектыФорматаКорреспондента = Новый ХранилищеЗначения(
ПараметрыКорреспондента.ПоддерживаемыеОбъектыФормата, Новый СжатиеДанных(9));
КонецЕсли;
@@ -1285,11 +1341,12 @@
ВерсияФорматаОбмена = ОбменДаннымиXDTOСервер.МаксимальнаяОбщаяВерсияФормата(ИмяПланаОбмена,
НастройкиXDTOКорреспондента.ПоддерживаемыеВерсии);
ТаблицаПоддерживаемыеОбъекты = НастройкиXDTOКорреспондента.ПоддерживаемыеОбъекты.Скопировать(
Новый Структура("Версия", ВерсияФорматаОбмена));
ПоддерживаемыеОбъектыФормата = Новый ХранилищеЗначения(ТаблицаПоддерживаемыеОбъекты,
ПоддерживаемыеОбъектыФорматаКорреспондента = Новый ХранилищеЗначения(НастройкиXDTOКорреспондента.ПоддерживаемыеОбъекты,
Новый СжатиеДанных(9));
ИдентификаторИнформационнойБазыПриемника = НастройкиXDTOКорреспондента.ИдентификаторОтправителя;
ИспользоватьПрефиксыДляНастройкиОбменаКорреспондента = (СтрДлина(ИдентификаторИнформационнойБазыПриемника) <> 36);
КонецЕсли;
КонецПроцедуры
@@ -1354,7 +1411,7 @@
Процедура ПриЗавершенииПомещенияФайлаНастроекXDTOКорреспондента(РезультатВыбора, Адрес, ВыбранноеИмяФайла, ДополнительныеПараметры) Экспорт
Результат = Новый Структура;
Результат.Вставить("Отказ", Ложь);
Результат.Вставить("Отказ", Ложь);
Результат.Вставить("СообщениеОбОшибке", "");
Если Не РезультатВыбора Тогда
@@ -1432,20 +1489,28 @@
КонецЕсли;
КонецЕсли;
Элементы.ОбычныеКаналыСвязиВидТранспортаПоУмолчанию.Видимость =
(Элементы.ОбычныеКаналыСвязиВидТранспортаПоУмолчанию.СписокВыбора.Количество() > 1);
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(Элементы,
"ОбычныеКаналыСвязиВидТранспортаПоУмолчанию",
"Видимость",
Элементы.ОбычныеКаналыСвязиВидТранспортаПоУмолчанию.СписокВыбора.Количество() > 1);
СохранитьПараметрыПодключенияВФайл = Не НастройкаРИБ
И (ВидПодключения = "ОбычныеКаналыСвязи") И Не ЗагрузитьПараметрыПодключенияИзФайла;
Элементы.ИмяФайлаНастроекПодключенияДляВыгрузки.Видимость = СохранитьПараметрыПодключенияВФайл;
СохранитьПараметрыПодключенияВФайл = (ВидПодключения = "ПассивныйРежим")
Или ((ВидПодключения = "ОбычныеКаналыСвязи")
И Не НастройкаРИБ И Не ЗагрузитьПараметрыПодключенияИзФайла);
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(Элементы,
"ИмяФайлаНастроекПодключенияДляВыгрузки", "Видимость", СохранитьПараметрыПодключенияВФайл);
Если СохранитьПараметрыПодключенияВФайл
И (ВидПодключения = "ОбычныеКаналыСвязи")
И ОбычныеКаналыСвязиFILEИспользование Тогда
ИмяФайлаНастроекПодключенияДляВыгрузки = ОбщегоНазначенияКлиентСервер.ПолучитьПолноеИмяФайла(
ОбычныеКаналыСвязиFILEКаталог, ИмяФайлаНастроекДляПриемника + ".xml");
КонецЕсли;
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(Элементы,
"ГруппаНастройкиПрограммыПредставление", "Видимость", Не (ВидПодключения = "ПассивныйРежим"));
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(Элементы,
"Наименование", "ТолькоПросмотр", Не ДоступноИзменениеНаименования);
@@ -1706,26 +1771,22 @@
&НаКлиенте
Процедура ПриИзмененииЗагрузитьНастройкиПодключенияИзФайла()
Элементы.ИмяФайлаНастроекПодключенияДляЗагрузки.Доступность = ЗагрузитьПараметрыПодключенияИзФайла;
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(Элементы,
"ИмяФайлаНастроекПодключенияДляЗагрузки", "Доступность", ЗагрузитьПараметрыПодключенияИзФайла);
КонецПроцедуры
&НаКлиенте
Процедура ПриИзмененииВидПодключения()
Если ВидПодключения = "ВнешнееСоединение" Тогда
Элементы.ПанельФайлНастройки.Видимость = Ложь;
ИначеЕсли ВидПодключения = "Интернет" Тогда
Элементы.ПанельФайлНастройки.Видимость = Ложь;
ИначеЕсли ВидПодключения = "ОбычныеКаналыСвязи" Тогда
Элементы.ПанельФайлНастройки.Видимость = Истина;
Элементы.ПанельФайлНастройки.ТекущаяСтраница = Элементы.СтраницаФайлНастройкиОбычныеКаналыСвязи;
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(Элементы,
"ГруппаФайлНастройкиОбычныеКаналыСвязи", "Доступность", ВидПодключения = "ОбычныеКаналыСвязи");
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(Элементы,
"ГруппаФайлНастройкиПассивныйРежим", "Доступность", ВидПодключения = "ПассивныйРежим");
Если ВидПодключения = "ОбычныеКаналыСвязи" Тогда
ПриИзмененииЗагрузитьНастройкиПодключенияИзФайла();
ИначеЕсли ВидПодключения = "ПассивныйРежим" Тогда
Элементы.ПанельФайлНастройки.Видимость = Истина;
Элементы.ПанельФайлНастройки.ТекущаяСтраница = Элементы.СтраницаФайлНастройкиПассивныйРежим;
КонецЕсли;
КонецПроцедуры
@@ -1733,14 +1794,17 @@
&НаКлиенте
Процедура ПриИзмененииОбычныеКаналыСвязиFILEИспользование()
Элементы.ГруппаОбычныеКаналыСвязиFILEИспользование.Доступность = ОбычныеКаналыСвязиFILEИспользование;
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(Элементы,
"ГруппаОбычныеКаналыСвязиFILEИспользование", "Доступность", ОбычныеКаналыСвязиFILEИспользование);
КонецПроцедуры
&НаКлиенте
Процедура ПриИзмененииОбычныеКаналыСвязиFTPИспользование()
Элементы.ГруппаОбычныеКаналыСвязиFTPИспользование.Доступность = ОбычныеКаналыСвязиFTPИспользование;
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(Элементы,
"ГруппаОбычныеКаналыСвязиFTPИспользование", "Доступность", ОбычныеКаналыСвязиFTPИспользование);
ПриИзмененииОбычныеКаналыСвязиFTPИспользоватьОграничениеРазмераФайла();
КонецПроцедуры
@@ -1748,7 +1812,9 @@
&НаКлиенте
Процедура ПриИзмененииОбычныеКаналыСвязиEMAILИспользование()
Элементы.ГруппаОбычныеКаналыСвязиEMAILИспользование.Доступность = ОбычныеКаналыСвязиEMAILИспользование;
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(Элементы,
"ГруппаОбычныеКаналыСвязиEMAILИспользование", "Доступность", ОбычныеКаналыСвязиEMAILИспользование);
ПриИзмененииОбычныеКаналыСвязиEMAILИспользоватьОграничениеРазмераВложения();
КонецПроцедуры
@@ -1786,7 +1852,9 @@
&НаКлиенте
Процедура ПриИзмененииОбычныеКаналыСвязиАрхивироватьФайлы()
Элементы.ГруппаОбычныеКаналыСвязиПарольАрхива.Доступность = ОбычныеКаналыСвязиАрхивироватьФайлы;
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(Элементы,
"ГруппаОбычныеКаналыСвязиПарольАрхива", "Доступность", ОбычныеКаналыСвязиАрхивироватьФайлы);
ПриИзмененииОбычныеКаналыСвязиИспользоватьПарольАрхива();
КонецПроцедуры
@@ -1794,23 +1862,28 @@
&НаКлиенте
Процедура ПриИзмененииОбычныеКаналыСвязиИспользоватьПарольАрхива()
Элементы.ОбычныеКаналыСвязиПарольАрхива.Доступность = ОбычныеКаналыСвязиИспользоватьПарольДляАрхива;
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(Элементы,
"ОбычныеКаналыСвязиПарольАрхива", "Доступность", ОбычныеКаналыСвязиИспользоватьПарольДляАрхива);
КонецПроцедуры
&НаКлиенте
Процедура ПриИзмененииОбычныеКаналыСвязиFTPИспользоватьОграничениеРазмераФайла()
Элементы.ОбычныеКаналыСвязиFTPМаксимальныйДопустимыйРазмерФайла.Доступность =
ОбычныеКаналыСвязиFTPИспользоватьОграничениеРазмераФайла;
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(Элементы,
"ОбычныеКаналыСвязиFTPМаксимальныйДопустимыйРазмерФайла",
"Доступность",
ОбычныеКаналыСвязиFTPИспользоватьОграничениеРазмераФайла);
КонецПроцедуры
&НаКлиенте
Процедура ПриИзмененииОбычныеКаналыСвязиEMAILИспользоватьОграничениеРазмераВложения()
Элементы.ОбычныеКаналыСвязиEMAILМаксимальныйДопустимыйРазмерВложения.Доступность =
ОбычныеКаналыСвязиEMAILИспользоватьОграничениеРазмераВложения;
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(Элементы,
"ОбычныеКаналыСвязиEMAILМаксимальныйДопустимыйРазмерВложения",
"Доступность",
ОбычныеКаналыСвязиEMAILИспользоватьОграничениеРазмераВложения);
КонецПроцедуры
@@ -2149,18 +2222,22 @@
&НаКлиенте
Функция Подключаемый_СтраницаОбщиеНастройкиСинхронизации_ПриПереходеДалее(Отказ)
Если ДоступноИзменениеНаименования
И ПустаяСтрока(Наименование) Тогда
ОбщегоНазначенияКлиентСервер.СообщитьПользователю(
НСтр("ru = 'Укажите наименование этой программы.'"),
, "Наименование", , Отказ);
КонецЕсли;
Если Не ВидПодключения = "ПассивныйРежим" Тогда
Если ДоступноИзменениеПрефикса
И ПустаяСтрока(Префикс) Тогда
ОбщегоНазначенияКлиентСервер.СообщитьПользователю(
НСтр("ru = 'Укажите префикс этой программы.'"),
, "Префикс", , Отказ);
Если ДоступноИзменениеНаименования
И ПустаяСтрока(Наименование) Тогда
ОбщегоНазначенияКлиентСервер.СообщитьПользователю(
НСтр("ru = 'Укажите наименование этой программы.'"),
, "Наименование", , Отказ);
КонецЕсли;
Если ДоступноИзменениеПрефикса
И ПустаяСтрока(Префикс) Тогда
ОбщегоНазначенияКлиентСервер.СообщитьПользователю(
НСтр("ru = 'Укажите префикс этой программы.'"),
, "Префикс", , Отказ);
КонецЕсли;
КонецЕсли;
Если ДоступноИзменениеНаименованияКорреспондента
@@ -2169,12 +2246,16 @@
НСтр("ru = 'Укажите наименование программы-корреспондента.'"),
, "НаименованиеКорреспондента", , Отказ);
КонецЕсли;
Если Не ВидПодключения = "ПассивныйРежим" Тогда
Если ДоступноИзменениеПрефиксаКорреспондента
И ПустаяСтрока(ПрефиксКорреспондента) Тогда
ОбщегоНазначенияКлиентСервер.СообщитьПользователю(
НСтр("ru = 'Укажите префикс программы-корреспондента.'"),
, "ПрефиксКорреспондента", , Отказ);
Если ДоступноИзменениеПрефиксаКорреспондента
И ПустаяСтрока(ПрефиксКорреспондента) Тогда
ОбщегоНазначенияКлиентСервер.СообщитьПользователю(
НСтр("ru = 'Укажите префикс программы-корреспондента.'"),
, "ПрефиксКорреспондента", , Отказ);
КонецЕсли;
КонецЕсли;
Если СохранитьПараметрыПодключенияВФайл
@@ -267,11 +267,16 @@
Если РезультатЗакрытия.Свойство("ЕстьДанныеДляСопоставления")
И РезультатЗакрытия.ЕстьДанныеДляСопоставления Тогда
ПолученыДанныеДляСопоставления = Истина;
ЗаполнитьТаблицуЭтаповНастройки();
ОбновитьОтображениеТекущегоСостоянияНастройки();
КонецЕсли;
Если РезультатЗакрытия.Свойство("ПассивныйРежим")
И РезультатЗакрытия.ПассивныйРежим Тогда
ДоступнаИнтерактивнаяОтправка = Ложь;
КонецЕсли;
ЗаполнитьТаблицуЭтаповНастройки();
ОбновитьОтображениеТекущегоСостоянияНастройки();
Если ТекущийЭтапНастройки = "НастройкаПодключения" Тогда
ПерейтиКСледующемуЭтапуНастройки();
КонецЕсли;
@@ -1670,25 +1670,56 @@
ЗаписьXML.ЗаписатьОбъявлениеXML();
ЗаписьXML.ЗаписатьНачалоЭлемента("ПараметрыНастройки");
ЗаписьXML.ЗаписатьАтрибут("ВерсияФормата", ВерсияФорматаНастроекОбменаДанными());
Если НастройкиПодключения.ВидТранспортаСообщенийОбмена = Перечисления.ВидыТранспортаСообщенийОбмена.WSПассивныйРежим Тогда
УзелКорреспондента = НастройкиПодключения.УзелИнформационнойБазы;
ПараметрыЗаголовка = ОбменДаннымиXDTOСервер.ПараметрыЗаголовкаСообщенияОбмена();
ЗаписьXML.ЗаписатьСоответствиеПространстваИмен("xsd", "http://www.w3.org/2001/XMLSchema");
ЗаписьXML.ЗаписатьСоответствиеПространстваИмен("xsi", "http://www.w3.org/2001/XMLSchema-instance");
ЗаписьXML.ЗаписатьСоответствиеПространстваИмен("v8", "http://v8.1c.ru/data");
ПараметрыЗаголовка.ФорматОбмена = НастройкиПодключения.ФорматОбмена;
ПараметрыЗаголовка.ЭтоОбменЧерезПланОбмена = Истина;
ПараметрыЗаголовка.ИмяПланаОбмена = НастройкиПодключения.ИмяПланаОбмена;
ПараметрыЗаголовка.ПсевдонимПредопределенногоУзла = ОбменДаннымиСервер.ПсевдонимПредопределенногоУзла(УзелКорреспондента);
ПараметрыЗаголовка.ИдентификаторПолучателя = ОбменДаннымиСервер.ИдентификаторУзлаКорреспондентаДляОбмена(УзелКорреспондента);
ПараметрыЗаголовка.ИдентификаторОтправителя = ОбменДаннымиСервер.ИдентификаторЭтогоУзлаДляОбмена(УзелКорреспондента);
ВерсииФормата = ОбменДаннымиСервер.ЗначениеНастройкиПланаОбмена(НастройкиПодключения.ИмяПланаОбмена, "ВерсииФорматаОбмена");
Для Каждого ВерсияФормата Из ВерсииФормата Цикл
ПараметрыЗаголовка.ПоддерживаемыеВерсии.Добавить(ВерсияФормата.Ключ);
КонецЦикла;
ПараметрыЗаголовка.ПоддерживаемыеОбъекты = ОбменДаннымиXDTOСервер.ПоддерживаемыеОбъектыФормата(
НастройкиПодключения.ИмяПланаОбмена, "ОтправкаПолучение", УзелКорреспондента);
ПараметрыЗаголовка.Префикс = ОбменДаннымиСервер.ПрефиксИнформационнойБазы();
ПараметрыЗаголовка.УзелКорреспондента = УзелКорреспондента;
ЗаписатьПараметрыПодключения(ЗаписьXML, НастройкиПодключения);
Если НастройкиПодключения.ИспользоватьПараметрыТранспортаEMAIL Тогда
ЗаписатьУчетнуюЗаписьЭлектроннойПочты(ЗаписьXML, НастройкиПодключения);
ОбменДаннымиXDTOСервер.ЗаписатьЗаголовокСообщенияОбмена(ЗаписьXML, ПараметрыЗаголовка);
Иначе
ЗаписьXML.ЗаписатьНачалоЭлемента("ПараметрыНастройки");
ЗаписьXML.ЗаписатьАтрибут("ВерсияФормата", ВерсияФорматаНастроекОбменаДанными());
ЗаписьXML.ЗаписатьСоответствиеПространстваИмен("xsd", "http://www.w3.org/2001/XMLSchema");
ЗаписьXML.ЗаписатьСоответствиеПространстваИмен("xsi", "http://www.w3.org/2001/XMLSchema-instance");
ЗаписьXML.ЗаписатьСоответствиеПространстваИмен("v8", "http://v8.1c.ru/data");
ЗаписатьПараметрыПодключения(ЗаписьXML, НастройкиПодключения);
Если НастройкиПодключения.ИспользоватьПараметрыТранспортаEMAIL Тогда
ЗаписатьУчетнуюЗаписьЭлектроннойПочты(ЗаписьXML, НастройкиПодключения);
КонецЕсли;
Если ОбменДаннымиПовтИсп.ЭтоПланОбменаXDTO(НастройкиПодключения.ИмяПланаОбмена) Тогда
ЗаписатьПараметрыОбменаXDTO(ЗаписьXML, НастройкиПодключения.ИмяПланаОбмена);
КонецЕсли;
ЗаписьXML.ЗаписатьКонецЭлемента(); // ПараметрыНастройки
КонецЕсли;
Если ОбменДаннымиПовтИсп.ЭтоПланОбменаXDTO(НастройкиПодключения.ИмяПланаОбмена) Тогда
ЗаписатьПараметрыОбменаXDTO(ЗаписьXML, НастройкиПодключения.ИмяПланаОбмена);
КонецЕсли;
ЗаписьXML.ЗаписатьКонецЭлемента(); // ПараметрыНастройки
Возврат ЗаписьXML.Закрыть();
КонецФункции
@@ -1900,6 +1931,15 @@
СтруктураНастроек = Новый Структура;
ОбменДаннымиXDTOСервер.ЗаполнитьСтруктуруНастроекXDTOКорреспондента(СтруктураНастроек, Header, , УзелОбмена);
// Проверка UID отправителя на соответствие формату.
Попытка
УИД = Новый УникальныйИдентификатор(Header.Confirmation.From);
Исключение
ВызватьИсключение НСтр("ru = 'Идентификатор отправителя в файле с настройками EnterpriseData не соответствует формату.'");
КонецПопытки;
СтруктураНастроек.Вставить("ИдентификаторОтправителя", Header.Confirmation.From);
ЧтениеXML.Закрыть();
@@ -65,11 +65,11 @@
НаселенныйПунктДетально.AddressType = РаботаСАдресамиКлиентСервер.МуниципальныйАдрес();
ИначеЕсли УправлениеКонтактнойИнформациейКлиентСервер.ЭтоКонтактнаяИнформацияВJSON(ЗначенияПолей) Тогда
ДанныеАдреса = УправлениеКонтактнойИнформациейСлужебный.СтрокаJSONВСтруктуру(ЗначенияПолей);
НаселенныйПунктДетально = РаботаСАдресамиКлиентСервер.АккомодацияСтруктурыАдреса(ДанныеАдреса);
НаселенныйПунктДетально = РаботаСАдресами.АккомодацияСтруктурыАдреса(ДанныеАдреса);
Иначе
XDTOКонтактная = ИзвлечьСтарыйФорматАдреса(ЗначенияПолей, ТипКонтактнойИнформации);
ДанныеАдреса = УправлениеКонтактнойИнформациейСлужебный.КонтактнаяИнформацияВСтруктуруJSON(XDTOКонтактная, ТипКонтактнойИнформации);
НаселенныйПунктДетально = РаботаСАдресамиКлиентСервер.АккомодацияСтруктурыАдреса(ДанныеАдреса);
НаселенныйПунктДетально = РаботаСАдресами.АккомодацияСтруктурыАдреса(ДанныеАдреса);
КонецЕсли;
Если МеждународныйФорматАдреса И Не УправлениеКонтактнойИнформациейКлиентСервер.ЭтоАдресВСвободнойФорме(НаселенныйПунктДетально.AddressType) Тогда
@@ -734,10 +734,14 @@
ДополнительныеПараметры = Новый Структура;
ДополнительныеПараметры.Вставить("Идентификатор", ИдентификаторНаселенногоПункта);
ДополнительныеПараметры.Вставить("ТипАдреса", НаселенныйПунктДетально.AddressType);
ДополнительныеПараметры.Вставить("Уровень", 7);
ДополнительныеПараметры.Вставить("ТипАдреса", НаселенныйПунктДетально.AddressType);
ДополнительныеПараметры.Вставить("Уровень", 7);
ДанныеВыбора = СписокАвтоподбораУлицы(Текст, ДополнительныеПараметры);
Результат = СписокАвтоподбораУлицы(Текст, ДополнительныеПараметры);
Если Результат.Отказ Тогда
Возврат;
КонецЕсли;
ДанныеВыбора = Результат.Данные;
// Стандартную обработку отключаем, только если есть наши варианты.
Если ДанныеВыбора.Количество() > 0 Тогда
@@ -2491,10 +2495,11 @@
Иначе
ПолученныйАдрес = ОпределитьАдресПоИдентификатору(ВыбранноеЗначение);
КонецЕсли;
ИменаУровнейНаселенногоПункта = РаботаСАдресамиКлиентСервер.ИменаУровнейАдреса("Все", Ложь);
ИменаУровнейНаселенногоПункта = РаботаСАдресамиКлиентСервер.ИменаУровнейАдреса("Все", ЗначениеЗаполнено(ПолученныйАдрес.street));
Для каждого ИмяУровня Из ИменаУровнейНаселенногоПункта Цикл
Если ПолученныйАдрес.Свойство(ИмяУровня) Тогда
НаселенныйПунктДетально[ИмяУровня] = ПолученныйАдрес[ИмяУровня];
НаселенныйПунктДетально[ИмяУровня] = ПолученныйАдрес[ИмяУровня];
НаселенныйПунктДетально[ИмяУровня + "Type"] = ПолученныйАдрес[ИмяУровня + "Type"];
НаселенныйПунктДетально[ИмяУровня + "Id"] = ПолученныйАдрес[ИмяУровня + "Id"];
КонецЕсли;
@@ -2768,7 +2773,10 @@
&НаСервереБезКонтекста
Функция СписокАвтоподбораНаселенногоПункта(Текст)
Возврат Обработки.РасширенныйВводКонтактнойИнформации.СписокАвтоподбораНаселенногоПункта(Текст);
ДополнительныеПараметры = Новый Структура("ТолькоВебСервис", Ложь);
Результат = Обработки.РасширенныйВводКонтактнойИнформации.СписокАвтоподбораНаселенногоПункта(Текст, ДополнительныеПараметры);
УправлениеКонтактнойИнформациейСлужебный.ФорматированиеРезультатовАвтоподбора(Результат.Данные, Текст);
Возврат Результат;
КонецФункции
@@ -2788,7 +2796,9 @@
&НаСервереБезКонтекста
Функция СписокАвтоподбораУлицы(Текст, ПараметрыАвтоподбора)
Возврат Обработки.РасширенныйВводКонтактнойИнформации.СписокАвтоподбораУлицы(Текст, ПараметрыАвтоподбора);
Результат = Обработки.РасширенныйВводКонтактнойИнформации.СписокАвтоподбораУлицы(Текст, ПараметрыАвтоподбора);
УправлениеКонтактнойИнформациейСлужебный.ФорматированиеРезультатовАвтоподбора(Результат.Данные, Текст);
Возврат Результат;
КонецФункции
@@ -2979,7 +2989,7 @@
&НаКлиенте
Функция ЗначениеСтроенияИлиПомещения(Тип, Значение)
Возврат Новый Структура("Type, Number", Тип, Значение);
Возврат Новый Структура("type, number", Тип, Значение);
КонецФункции
&НаКлиенте
@@ -352,8 +352,7 @@
// * ОбщаяЧастьПредставления - Строка - Общая часть представлений адреса.
// * Данные - СписокЗначений - результат для автоподбора.
//
Функция СписокАвтоподбораНаселенногоПункта(Текст) Экспорт
Функция СписокАвтоподбораНаселенногоПункта(Текст, ДополнительныеПараметры) Экспорт
Результат = Новый Структура("Данные", Новый СписокЗначений);
СтруктураОшибкиПоставщикаАдресногоКлассификатора(Результат);
Если Не ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.АдресныйКлассификатор") Тогда
@@ -362,8 +361,6 @@
Возврат Результат;
КонецЕсли;
ДополнительныеПараметры = Новый Структура();
МодульАдресныйКлассификаторСлужебный = ОбщегоНазначения.ОбщийМодуль("АдресныйКлассификаторСлужебный");
Результат.Данные = МодульАдресныйКлассификаторСлужебный.ВариантыАвтоподбора(Текст, ДополнительныеПараметры);
@@ -375,13 +372,9 @@
//
// Параметры:
// Текст - Строка - Текст автоподбора.
// НаселенныйПункт - УникальныйИдентификатор - Населенный пункт.
// ДополнительныеПараметры - Структура - Описывает настройки поиска. Состоит из необязательных полей:
// * СкрыватьНеактуальные - Булево - Флаг исключения из выборки неактуальных адресов. По умолчанию
// Ложь.
// * ФорматАдреса - Строка - Тип используемого классификатора.
// * РазмерПорции - Число - Количество возвращаемых данных.
// ПараметрыАвтоподбора - Структура - Описывает настройки поиска. Состоит из необязательных полей:
// * Идентификатор - УникальныйИдентификатор - Родительский адресный объект.
// * ТипАдреса - Строка - Тип используемого адреса.
//
// Возвращаемое значение:
// * Отказ - Булево - Поставщик не доступен.
@@ -389,11 +382,13 @@
// = Ложь.
// * КраткоеПредставлениеОшибки - Строка - Описание ошибки, если поставщик недоступен. Неопределено, если Отказ
// = Ложь.
// * ОбщаяЧастьПредставления - Строка - Общая часть представлений адреса.
// * Данные - СписокЗначений - результат для автоподбора.
//
Функция СписокАвтоподбораУлицы(Текст, ПараметрыАвтоподбора) Экспорт
Результат = Новый Структура("Данные", Новый СписокЗначений);
СтруктураОшибкиПоставщикаАдресногоКлассификатора(Результат);
ДанныеВыбора = Новый СписокЗначений;
Уровень = 7;
РодительскийИдентификатор = ПараметрыАвтоподбора.Идентификатор;
@@ -401,11 +396,8 @@
МодульАдресныйКлассификаторСлужебный = ОбщегоНазначения.ОбщийМодуль("АдресныйКлассификаторСлужебный");
Результат = МодульАдресныйКлассификаторСлужебный.АдресныеОбъектыУровня(РодительскийИдентификатор, Уровень, ТипАдреса, Текст);
Если Не Результат.Отказ Тогда
ДанныеВыбора = Результат.Данные;
КонецЕсли;
Возврат ДанныеВыбора;
Возврат Результат;
КонецФункции
@@ -455,6 +455,7 @@
<initialTreeView>ExpandAllLevels</initialTreeView>
<horizontalStretch>true</horizontalStretch>
<verticalStretch>true</verticalStretch>
<currentRowUse>SelectionPresentationAndChoice</currentRowUse>
<autoMaxCardHeight>true</autoMaxCardHeight>
</items>
<items xsi:type="form:FormGroup">
@@ -28,6 +28,12 @@
Элементы.Расписание.Видимость = Ложь;
КонецЕсли;
Если ОбщегоНазначенияКлиентСервер.ЭтоМобильныйКлиент() Тогда
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(Элементы, "ФормаДобавитьСинхронизациюФайлов", "Отображение", ОтображениеКнопки.Картинка);
КонецЕсли;
КонецПроцедуры
&НаКлиенте
@@ -389,33 +389,39 @@
Функция ЗапуститьРегламентноеЗаданиеСейчасНаСервере(ИдентификаторЗаданияОбновленияДоступаЗапущенногоВручную, СостояниеЗаданияОбновленияДоступа)
ПоследнееОбновлениеДоступа = ПоследнееОбновлениеДоступа();
ИдентификаторПроизвольногоСеанса = УправлениеДоступомСлужебный.ИдентификаторПроизвольногоСеанса();
УжеВыполняется = Ложь;
Если ЗначениеЗаполнено(ПоследнееОбновлениеДоступа.ИдентификаторФоновогоЗадания) Тогда
ПоследнееФоновоеЗадание = ФоновыеЗадания.НайтиПоУникальномуИдентификатору(
ПоследнееОбновлениеДоступа.ИдентификаторФоновогоЗадания);
Иначе
ПоследнееФоновоеЗадание = Неопределено;
КонецЕсли;
Если ПоследнееФоновоеЗадание = Неопределено
Или ПоследнееФоновоеЗадание.Состояние <> СостояниеФоновогоЗадания.Активно Тогда
Если ТипЗнч(ИдентификаторЗаданияОбновленияДоступаЗапущенногоВручную) = Тип("УникальныйИдентификатор") Тогда
Если ПоследнееОбновлениеДоступа.ИдентификаторФоновогоЗадания = ИдентификаторПроизвольногоСеанса Тогда
Сеансы = ПолучитьСеансыИнформационнойБазы();
Для Каждого Сеанс Из Сеансы Цикл
Если Сеанс.НомерСеанса = ПоследнееОбновлениеДоступа.НомерСеанса
И Сеанс.НачалоСеанса = ПоследнееОбновлениеДоступа.НачалоСеанса Тогда
УжеВыполняется = Истина;
Прервать;
КонецЕсли;
КонецЦикла;
Иначе
ПоследнееФоновоеЗадание = ФоновыеЗадания.НайтиПоУникальномуИдентификатору(
ИдентификаторЗаданияОбновленияДоступаЗапущенногоВручную);
ПоследнееОбновлениеДоступа.ИдентификаторФоновогоЗадания);
УжеВыполняется = ПоследнееФоновоеЗадание <> Неопределено
И ПоследнееФоновоеЗадание.Состояние = СостояниеФоновогоЗадания.Активно;
КонецЕсли;
КонецЕсли;
Если ПоследнееФоновоеЗадание = Неопределено
Или ПоследнееФоновоеЗадание.Состояние <> СостояниеФоновогоЗадания.Активно Тогда
Если Не УжеВыполняется
И ТипЗнч(ИдентификаторЗаданияОбновленияДоступаЗапущенногоВручную) = Тип("УникальныйИдентификатор") Тогда
ТекстПредупреждения = "";
ФоновоеЗадание = РасширенияКонфигурации.ВыполнитьФоновоеЗаданиеСРасширениямиБазыДанных(
Метаданные.РегламентныеЗадания.ОбновлениеДоступаНаУровнеЗаписей.ИмяМетода,,,
НСтр("ru = 'Запуск вручную'") + ": " + Метаданные.РегламентныеЗадания.ОбновлениеДоступаНаУровнеЗаписей.Наименование);
ИдентификаторЗаданияОбновленияДоступаЗапущенногоВручную = ФоновоеЗадание.УникальныйИдентификатор;
Иначе
ПоследнееФоновоеЗадание = ФоновыеЗадания.НайтиПоУникальномуИдентификатору(
ИдентификаторЗаданияОбновленияДоступаЗапущенногоВручную);
УжеВыполняется = ПоследнееФоновоеЗадание <> Неопределено
И ПоследнееФоновоеЗадание.Состояние = СостояниеФоновогоЗадания.Активно;
КонецЕсли;
Если УжеВыполняется Тогда
ТекстПредупреждения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
НСтр("ru = 'Обновление доступа уже запущено
|(компьютер: %1, сеанс: %2, начат: %3 в %4)'"),
@@ -423,6 +429,13 @@
ПоследнееОбновлениеДоступа.НомерСеанса,
Формат(ПоследнееОбновлениеДоступа.НачалоСеанса, "ДЛФ=D"),
Формат(ПоследнееОбновлениеДоступа.НачалоСеанса, "ДЛФ=T"));
Иначе
ТекстПредупреждения = "";
ФоновоеЗадание = РасширенияКонфигурации.ВыполнитьФоновоеЗаданиеСРасширениямиБазыДанных(
Метаданные.РегламентныеЗадания.ОбновлениеДоступаНаУровнеЗаписей.ИмяМетода,,,
НСтр("ru = 'Запуск вручную'") + ": " + Метаданные.РегламентныеЗадания.ОбновлениеДоступаНаУровнеЗаписей.Наименование);
ИдентификаторЗаданияОбновленияДоступаЗапущенногоВручную = ФоновоеЗадание.УникальныйИдентификатор;
КонецЕсли;
СостояниеЗаданияОбновленияДоступа = СостояниеЗаданияОбновленияДоступа(
@@ -92,6 +92,77 @@
<currentRowUse>Auto</currentRowUse>
</extInfo>
</items>
<items xsi:type="form:FormGroup">
<name>ГруппаМобильныйКлиент</name>
<id>23</id>
<items xsi:type="form:Decoration">
<name>ДекорацияИнформация</name>
<id>25</id>
<title>
<key>ru</key>
<value>Декорация информация</value>
</title>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
<common>true</common>
</userVisible>
<toolTipRepresentation>ShowRight</toolTipRepresentation>
<extendedTooltip>
<name>ДекорацияИнформацияРасширеннаяПодсказка</name>
<id>27</id>
<title>
<key>ru</key>
<value>В мобильном клиенте табличные документы доступны только для просмотра. Редактирование макетов производится в толстом, тонком или ВЕБ-клиенте.</value>
</title>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<contextMenu>
<name>ДекорацияИнформацияКонтекстноеМеню</name>
<id>26</id>
<autoFill>true</autoFill>
</contextMenu>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:PictureDecorationExtInfo">
<picture xsi:type="core:PictureRef">
<picture>CommonPicture.Информация32</picture>
</picture>
</extInfo>
</items>
<enabled>true</enabled>
<userVisible>
<common>true</common>
</userVisible>
<title>
<key>ru</key>
<value>Группа мобильный клиент</value>
</title>
<extendedTooltip>
<name>ГруппаМобильныйКлиентРасширеннаяПодсказка</name>
<id>24</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<type>UsualGroup</type>
<extInfo xsi:type="form:UsualGroupExtInfo">
<group>HorizontalIfPossible</group>
<behavior>Auto</behavior>
<showLeftMargin>true</showLeftMargin>
<united>true</united>
<throughAlign>Auto</throughAlign>
<currentRowUse>Auto</currentRowUse>
</extInfo>
</items>
<items xsi:type="form:FormField">
<name>БольшеНеСпрашивать</name>
<id>6</id>
@@ -32,6 +32,17 @@
КонецЕсли;
КонецЕсли;
Если ОбщегоНазначенияКлиентСервер.ЭтоМобильныйКлиент() Тогда
ПоложениеКоманднойПанели = ПоложениеКоманднойПанелиФормы.Авто;
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(Элементы, "ГруппаМобильныйКлиент", "Видимость", Истина);
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(Элементы, "Группа", "Видимость", Ложь);
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(Элементы, "Отмена", "Видимость", Ложь);
КонецЕсли;
КонецПроцедуры
#КонецОбласти
@@ -762,6 +762,7 @@
<rowsPicture xsi:type="core:PictureRef">
<picture>CommonPicture.ТипыМакетов</picture>
</rowsPicture>
<currentRowUse>SelectionPresentation</currentRowUse>
<autoMaxCardHeight>true</autoMaxCardHeight>
<rowFilter xsi:type="core:UndefinedValue"/>
</items>
@@ -46,6 +46,20 @@
КонецЕсли;
Если ОбщегоНазначенияКлиентСервер.ЭтоМобильныйКлиент() Тогда
ПоложениеКоманднойПанели = ПоложениеКоманднойПанелиФормы.Авто;
Элементы.Переместить(Элементы.МакетыПечатныхФормГруппаОткрытиеМакета, Элементы.ФормаКоманднаяПанель);
Элементы.Переместить(Элементы.МакетыПечатныхФормГруппаПереключениеИспользуемогоМакета, Элементы.ФормаКоманднаяПанель);
Элементы.Переместить(Элементы.МакетыПечатныхФормУдалитьИзмененныйМакет, Элементы.ФормаКоманднаяПанель);
Элементы.Переместить(Элементы.МакетыПечатныхФормГруппаВсеДействия, Элементы.ФормаКоманднаяПанель);
Элементы.Переместить(Элементы.МакетыПечатныхФормСправка, Элементы.ФормаКоманднаяПанель);
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(Элементы, "МакетыПечатныхФормИзменитьМакет", "Видимость", Ложь);
КонецЕсли;
КонецПроцедуры
&НаКлиенте
@@ -47,6 +47,15 @@
Элементы.КоманднаяПанель.ТекущаяСтраница = Элементы.ПанельЗагрузка;
Элементы.КнопкаИзменить.КнопкаПоУмолчанию = Истина;
Если ОбщегоНазначенияКлиентСервер.ЭтоМобильныйКлиент() Тогда
ПоложениеКоманднойПанели = ПоложениеКоманднойПанелиФормы.Авто;
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(Элементы, "КнопкаОтменаЗагрузки", "Видимость", Ложь);
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(Элементы, "КнопкаОтменаИзменений", "Видимость", Ложь);
КонецЕсли;
КонецПроцедуры
&НаКлиенте
@@ -1302,6 +1302,7 @@
<initialListView>Auto</initialListView>
<horizontalStretch>true</horizontalStretch>
<verticalStretch>true</verticalStretch>
<currentRowUse>SelectionPresentation</currentRowUse>
<autoMaxCardHeight>true</autoMaxCardHeight>
<extInfo xsi:type="form:DynamicListTableExtInfo">
<autoRefreshPeriod>60</autoRefreshPeriod>
@@ -2355,6 +2356,7 @@
<horizontalStretch>true</horizontalStretch>
<verticalStretch>true</verticalStretch>
<enableStartDrag>true</enableStartDrag>
<currentRowUse>SelectionPresentation</currentRowUse>
<autoMaxCardHeight>true</autoMaxCardHeight>
<extInfo xsi:type="form:DynamicListTableExtInfo">
<autoRefreshPeriod>60</autoRefreshPeriod>
@@ -3479,6 +3481,7 @@
<horizontalStretch>true</horizontalStretch>
<verticalStretch>true</verticalStretch>
<enableStartDrag>true</enableStartDrag>
<currentRowUse>SelectionPresentation</currentRowUse>
<autoMaxCardHeight>true</autoMaxCardHeight>
<extInfo xsi:type="form:DynamicListTableExtInfo">
<autoRefreshPeriod>60</autoRefreshPeriod>
@@ -4558,6 +4561,7 @@
<rowPictureDataPath xsi:type="form:DataPath">
<segments>НепринятыеПоДате.DefaultPicture</segments>
</rowPictureDataPath>
<currentRowUse>SelectionPresentation</currentRowUse>
<autoMaxCardHeight>true</autoMaxCardHeight>
<extInfo xsi:type="form:DynamicListTableExtInfo">
<autoRefreshPeriod>60</autoRefreshPeriod>
@@ -202,7 +202,7 @@
#Область ПодготовкаДанных
Функция ПодготовкаДанных(ДокументОтбор, ДвиженияДокумента, ТаблицаРегистров, ДополнительнаяНумерация = Ложь)
Функция ПодготовкаДанных(ДокументОтбор, МассивИспользуемыхРегистров, ТаблицаРегистров, ДополнительнаяНумерация = Ложь)
ОсновнаяИнформация = Новый Массив;
@@ -222,8 +222,8 @@
ДополнительнаяИнформация.Вставить("ПолеРегистратора", ПолеРегистратора);
ДополнительнаяИнформация.Вставить("ДополнительнаяНумерация", ДополнительнаяНумерация);
Для Каждого ДвижениеДокумента Из ДвиженияДокумента Цикл
Для Каждого ДвижениеДокумента Из МассивИспользуемыхРегистров Цикл
ДвижениеДокумента = ДвижениеДокумента.Ключ;
Если ВРег(СокрЛП(ДвижениеДокумента.Имя)) = ВРег(ИмяРегистра) Тогда
Если ВидРегистра = "Накопления" Или ВидРегистра = "Сведений" Тогда
ПодготовкаДанныхПоРегистрамНакопленияСведений(ДвижениеДокумента, ОсновнаяИнформация, ДополнительнаяИнформация);
@@ -733,7 +733,7 @@
Возврат СхемаКомпоновкиДанных;
Иначе
ТаблицаРегистров = ТаблицаИспользуемыхРегистров(МассивИспользуемыхРегистров);
ПодготовленныеДанные = ПодготовкаДанных(ДокументОтбор, ДвиженияДокумента, ТаблицаРегистров);
ПодготовленныеДанные = ПодготовкаДанных(ДокументОтбор, МассивИспользуемыхРегистров, ТаблицаРегистров);
СтруктураПараметровДанных = Новый Структура("СписокРегистров", СформироватьСписокРегистров(ТаблицаРегистров));
УстановитьПараметрыДанных(НастройкиКД, СтруктураПараметровДанных);
@@ -1554,8 +1554,8 @@
ТекстЗапроса = "";
Для Каждого ИспользуемыйРегистр Из МассивИспользуемыхРегистров Цикл
ИспользуемыйРегистр = ИспользуемыйРегистр.Ключ;
ПолноеИмя = ИспользуемыйРегистр.ПолноеИмя();
ИспользуемыйРегистрМетаданные = ИспользуемыйРегистр.Ключ;
ПолноеИмя = ИспользуемыйРегистрМетаданные.ПолноеИмя();
ТекстЗапросаШаблон =
"ВЫБРАТЬ
@@ -1566,8 +1566,9 @@
|ГДЕ
| &Условие";
ТекстУсловия = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку("%1 = &ДокументВладелец", ИспользуемыйРегистр.Значение);
ТекстЗапросаШаблон = СтрЗаменить(ТекстЗапросаШаблон, "&ПолноеИмяРегистра", СтрЗаменить(ПолноеИмя, ".", "_"));
ТекстЗапросаШаблон = СтрЗаменить(ТекстЗапросаШаблон, "&Условие", "Регистратор = &ДокументВладелец");
ТекстЗапросаШаблон = СтрЗаменить(ТекстЗапросаШаблон, "&Условие", ТекстУсловия);
ТекстЗапросаШаблон = СтрЗаменить(ТекстЗапросаШаблон, "&ТекущаяТаблица", ПолноеИмя);
ТекстЗапроса = ТекстЗапроса + ?(ЗначениеЗаполнено(ТекстЗапроса), " ОБЪЕДИНИТЬ ВСЕ ", "") + ТекстЗапросаШаблон;
@@ -1630,6 +1630,93 @@
<value>true</value>
</right>
</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>
<name>CommonForm.ПараметрыПроксиСервера</name>
<right>
@@ -5036,93 +5123,6 @@
<value>true</value>
</right>
</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>
<name>Catalog.ТомаХраненияФайлов</name>
<right>
@@ -21,6 +21,37 @@
<value>true</value>
</right>
</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>
<name>Catalog.РассылкиОтчетов.Command.ВыполнитьСейчас</name>
<right>
@@ -76,37 +107,6 @@
<value>true</value>
</right>
</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>
<name>ДляОбъекта(ПолеОбъекта)</name>
<condition>// ДляОбъекта(ПолеОбъекта = "")
@@ -2208,6 +2208,45 @@
<value>false</value>
</right>
</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>
<name>CommonForm.ПараметрыПроксиСервера</name>
<right>
@@ -6663,45 +6702,6 @@
<value>false</value>
</right>
</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>
<name>Catalog.ТомаХраненияФайлов</name>
<right>
@@ -3,13 +3,6 @@
<setForNewObjects>false</setForNewObjects>
<setForAttributesByDefault>true</setForAttributesByDefault>
<independentRightsOfChildObjects>false</independentRightsOfChildObjects>
<object>
<name>DataProcessor.ЖурналРегистрации.Command.ЖурналРегистрации</name>
<right>
<name>View</name>
<value>true</value>
</right>
</object>
<object>
<name>Configuration.БиблиотекаСтандартныхПодсистем</name>
<right>
@@ -41,6 +34,13 @@
<value>true</value>
</right>
</object>
<object>
<name>DataProcessor.ЖурналРегистрации.Command.ЖурналРегистрации</name>
<right>
<name>View</name>
<value>true</value>
</right>
</object>
<object>
<name>DataProcessor.ЖурналРегистрации</name>
<right>
@@ -229,5 +229,6 @@
<content>CommonPicture.ДлительнаяОперация16</content>
<content>CommonPicture.РасширениеКонфигурацииИзГлавногоУзла</content>
<content>SessionParameter.КлючДанныхПовторногоИспользования</content>
<content>CommonPicture.Пустая</content>
<parentSubsystem>Subsystem.СтандартныеПодсистемы</parentSubsystem>
</mdclass:Subsystem>
@@ -35,7 +35,6 @@
<content>CommonTemplate.КомпонентаПечатиQRКода</content>
<content>InformationRegister.НастройкиКомандПечати</content>
<content>CommonForm.НастройкаКомандПечати</content>
<content>CommonPicture.Пустая</content>
<content>CommonModule.УправлениеПечатьюКлиентСервер</content>
<content>Role.РедактированиеПечатныхФорм</content>
<content>CommonModule.УправлениеПечатьюСлужебный</content>
@@ -45,7 +45,7 @@
ОбменДаннымиСлужебный.ЗагрузитьЧастьФайла(ИдентификаторФайла, НомерЗагружаемойЧастиФайла, ЗагружаемаяЧастьФайла, СообщениеОбОшибке);
КонецФункции
Функция ЗагрузитьДанныеВИнформационнуюБазу(ИдентификаторФайла, ИдентификаторДлительнойОперации, СообщениеОбОшибке)
Функция ЗагрузитьДанныеВИнформационнуюБазу(ИдентификаторФайла, ИдентификаторФоновогоЗадания, СообщениеОбОшибке)
СообщениеОбОшибке = "";
@@ -710,10 +710,10 @@
</xdtoValueType>
</parameters>
<parameters uuid="1250f5b1-c766-434c-8d28-69b74a536294">
<name>NodeID</name>
<name>NodeId</name>
<synonym>
<key>ru</key>
<value>Node ID</value>
<value>Node id</value>
</synonym>
<xdtoValueType>
<name>string</name>
@@ -757,10 +757,10 @@
</xdtoValueType>
</parameters>
<parameters uuid="5a4c543a-27d5-423b-a4d0-3952ea2817af">
<name>FileID</name>
<name>FileId</name>
<synonym>
<key>ru</key>
<value>File ID</value>
<value>File id</value>
</synonym>
<xdtoValueType>
<name>string</name>