3_0_2_156

This commit is contained in:
Компания 1С committed 2018-12-14 11:21:00 +03:00
1 parent 1230a93e58
commit 495c2dc8e7
53 files changed
+687 -591

No files matched your search

@@ -516,11 +516,6 @@
<userVisible> <userVisible>
<common>true</common> <common>true</common>
</userVisible> </userVisible>
<toolTip>
<key>ru</key>
<value>Коэффициент, который применяется к курсу основной валюты для вычисления курса текущей валюты.</value>
</toolTip>
<toolTipRepresentation>Button</toolTipRepresentation>
<extendedTooltip> <extendedTooltip>
<name>ТекстПроцентРасширеннаяПодсказка</name> <name>ТекстПроцентРасширеннаяПодсказка</name>
<id>128</id> <id>128</id>
@@ -551,6 +546,11 @@
<key>ru</key> <key>ru</key>
<value>Наценка</value> <value>Наценка</value>
</title> </title>
<toolTip>
<key>ru</key>
<value>Коэффициент, который применяется к курсу основной валюты для вычисления курса текущей валюты.</value>
</toolTip>
<toolTipRepresentation>Button</toolTipRepresentation>
<extendedTooltip> <extendedTooltip>
<name>ГруппаНаценкаРасширеннаяПодсказка</name> <name>ГруппаНаценкаРасширеннаяПодсказка</name>
<id>153</id> <id>153</id>
@@ -927,6 +927,7 @@
<items xsi:type="form:FormField"> <items xsi:type="form:FormField">
<name>Наименование</name> <name>Наименование</name>
<id>4</id> <id>4</id>
<displayImportance>VeryHigh</displayImportance>
<title> <title>
<key>ru</key> <key>ru</key>
<value>Наименование</value> <value>Наименование</value>
@@ -968,6 +969,7 @@
<items xsi:type="form:FormField"> <items xsi:type="form:FormField">
<name>Автор</name> <name>Автор</name>
<id>12</id> <id>12</id>
<displayImportance>Low</displayImportance>
<visible>true</visible> <visible>true</visible>
<enabled>true</enabled> <enabled>true</enabled>
<userVisible> <userVisible>
@@ -1117,6 +1119,7 @@
<items xsi:type="form:FormField"> <items xsi:type="form:FormField">
<name>Описание</name> <name>Описание</name>
<id>143</id> <id>143</id>
<displayImportance>Low</displayImportance>
<title> <title>
<key>ru</key> <key>ru</key>
<value>Описание</value> <value>Описание</value>
@@ -306,6 +306,7 @@
Элементы.СтрокаПоиска.Ширина = 0; Элементы.СтрокаПоиска.Ширина = 0;
Элементы.СтрокаПоиска.РастягиватьПоГоризонтали = Неопределено; Элементы.СтрокаПоиска.РастягиватьПоГоризонтали = Неопределено;
Элементы.СтрокаПоиска.ПоложениеЗаголовка = ПоложениеЗаголовкаЭлементаФормы.Нет; Элементы.СтрокаПоиска.ПоложениеЗаголовка = ПоложениеЗаголовкаЭлементаФормы.Нет;
Элементы.СтрокаПоиска.КнопкаВыпадающегоСписка = Ложь;
Элементы.ВыполнитьПоиск.Отображение = ОтображениеКнопки.Картинка; Элементы.ВыполнитьПоиск.Отображение = ОтображениеКнопки.Картинка;
КонецПроцедуры КонецПроцедуры
@@ -1,72 +1,118 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<form:Form xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:core="http://g5.1c.ru/v8/dt/mcore" xmlns:form="http://g5.1c.ru/v8/dt/form"> <form:Form xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:core="http://g5.1c.ru/v8/dt/mcore" xmlns:form="http://g5.1c.ru/v8/dt/form">
<items xsi:type="form:FormField"> <items xsi:type="form:FormGroup">
<name>Наименование</name> <name>ГруппаШапка</name>
<id>4</id> <id>241</id>
<items xsi:type="form:FormField">
<name>Наименование</name>
<id>4</id>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
<common>true</common>
</userVisible>
<dataPath xsi:type="form:DataPath">
<segments>Объект.Description</segments>
</dataPath>
<extendedTooltip>
<name>НаименованиеExtendedTooltip</name>
<id>153</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<contextMenu>
<name>НаименованиеКонтекстноеМеню</name>
<id>5</id>
<autoFill>true</autoFill>
</contextMenu>
<type>InputField</type>
<editMode>Enter</editMode>
<showInHeader>true</showInHeader>
<headerHorizontalAlign>Left</headerHorizontalAlign>
<showInFooter>true</showInFooter>
<footerHorizontalAlign>Left</footerHorizontalAlign>
<extInfo xsi:type="form:InputFieldExtInfo">
<width>40</width>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<chooseType>true</chooseType>
<typeDomainEnabled>true</typeDomainEnabled>
<textEdit>true</textEdit>
<borderColor xsi:type="core:ColorRef">
<color>Style.BorderColor</color>
</borderColor>
<textSize>Normal</textSize>
</extInfo>
</items>
<items xsi:type="form:FormField">
<name>Родитель</name>
<id>40</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>Объект.Parent</segments>
</dataPath>
<handlers>
<event>OnChange</event>
<name>РодительПриИзменении</name>
</handlers>
<extendedTooltip>
<name>РодительExtendedTooltip</name>
<id>184</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<contextMenu>
<name>РодительКонтекстноеМеню</name>
<id>41</id>
<autoFill>true</autoFill>
</contextMenu>
<type>InputField</type>
<editMode>Enter</editMode>
<showInHeader>true</showInHeader>
<headerHorizontalAlign>Left</headerHorizontalAlign>
<showInFooter>true</showInFooter>
<extInfo xsi:type="form:InputFieldExtInfo">
<handlers>
<event>StartChoice</event>
<name>РодительНачалоВыбора</name>
</handlers>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<wrap>true</wrap>
<chooseType>true</chooseType>
<typeDomainEnabled>true</typeDomainEnabled>
<textEdit>true</textEdit>
<textSize>Normal</textSize>
</extInfo>
</items>
<visible>true</visible> <visible>true</visible>
<enabled>true</enabled> <enabled>true</enabled>
<userVisible> <userVisible>
<common>true</common> <common>true</common>
</userVisible> </userVisible>
<dataPath xsi:type="form:DataPath">
<segments>Объект.Description</segments>
</dataPath>
<extendedTooltip>
<name>НаименованиеExtendedTooltip</name>
<id>153</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<contextMenu>
<name>НаименованиеКонтекстноеМеню</name>
<id>5</id>
<autoFill>true</autoFill>
</contextMenu>
<type>InputField</type>
<editMode>Enter</editMode>
<showInHeader>true</showInHeader>
<headerHorizontalAlign>Left</headerHorizontalAlign>
<showInFooter>true</showInFooter>
<footerHorizontalAlign>Left</footerHorizontalAlign>
<extInfo xsi:type="form:InputFieldExtInfo">
<width>40</width>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<chooseType>true</chooseType>
<typeDomainEnabled>true</typeDomainEnabled>
<textEdit>true</textEdit>
<borderColor xsi:type="core:ColorRef">
<color>Style.BorderColor</color>
</borderColor>
<textSize>Normal</textSize>
</extInfo>
</items>
<items xsi:type="form:FormField">
<name>Родитель</name>
<id>40</id>
<title> <title>
<key>ru</key> <key>ru</key>
<value>В группе</value> <value>Шапка</value>
</title> </title>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
<common>true</common>
</userVisible>
<dataPath xsi:type="form:DataPath">
<segments>Объект.Parent</segments>
</dataPath>
<handlers>
<event>OnChange</event>
<name>РодительПриИзменении</name>
</handlers>
<extendedTooltip> <extendedTooltip>
<name>РодительExtendedTooltip</name> <name>ГруппаШапкаРасширеннаяПодсказка</name>
<id>184</id> <id>242</id>
<type>Label</type> <type>Label</type>
<autoMaxWidth>true</autoMaxWidth> <autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight> <autoMaxHeight>true</autoMaxHeight>
@@ -74,28 +120,14 @@
<horizontalAlign>Left</horizontalAlign> <horizontalAlign>Left</horizontalAlign>
</extInfo> </extInfo>
</extendedTooltip> </extendedTooltip>
<contextMenu> <type>UsualGroup</type>
<name>РодительКонтекстноеМеню</name> <extInfo xsi:type="form:UsualGroupExtInfo">
<id>41</id> <group>Vertical</group>
<autoFill>true</autoFill> <behavior>Auto</behavior>
</contextMenu> <showLeftMargin>true</showLeftMargin>
<type>InputField</type> <united>true</united>
<editMode>Enter</editMode> <throughAlign>Auto</throughAlign>
<showInHeader>true</showInHeader> <currentRowUse>Auto</currentRowUse>
<headerHorizontalAlign>Left</headerHorizontalAlign>
<showInFooter>true</showInFooter>
<extInfo xsi:type="form:InputFieldExtInfo">
<handlers>
<event>StartChoice</event>
<name>РодительНачалоВыбора</name>
</handlers>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<wrap>true</wrap>
<chooseType>true</chooseType>
<typeDomainEnabled>true</typeDomainEnabled>
<textEdit>true</textEdit>
<textSize>Normal</textSize>
</extInfo> </extInfo>
</items> </items>
<items xsi:type="form:FormGroup"> <items xsi:type="form:FormGroup">
@@ -101,6 +101,10 @@
ТолькоПросмотр = Истина; ТолькоПросмотр = Истина;
КонецЕсли; КонецЕсли;
Если ОбщегоНазначения.ЭтоМобильныйКлиент() Тогда
Элементы.ГруппаШапка.ВыравниваниеЭлементовИЗаголовков = ВариантВыравниванияЭлементовИЗаголовков.ЭлементыПравоЗаголовкиЛево;
КонецЕсли;
КонецПроцедуры КонецПроцедуры
&НаСервере &НаСервере
@@ -1,19 +1,110 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<form:Form xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:core="http://g5.1c.ru/v8/dt/mcore" xmlns:form="http://g5.1c.ru/v8/dt/form"> <form:Form xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:core="http://g5.1c.ru/v8/dt/mcore" xmlns:form="http://g5.1c.ru/v8/dt/form">
<items xsi:type="form:FormField"> <items xsi:type="form:FormGroup">
<name>Наименование</name> <name>ГруппаШапка</name>
<id>4</id> <id>117</id>
<items xsi:type="form:FormField">
<name>Наименование</name>
<id>4</id>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
<common>true</common>
</userVisible>
<dataPath xsi:type="form:DataPath">
<segments>Объект.Description</segments>
</dataPath>
<extendedTooltip>
<name>НаименованиеExtendedTooltip</name>
<id>55</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<contextMenu>
<name>НаименованиеКонтекстноеМеню</name>
<id>5</id>
<autoFill>true</autoFill>
</contextMenu>
<type>InputField</type>
<editMode>Enter</editMode>
<showInHeader>true</showInHeader>
<headerHorizontalAlign>Left</headerHorizontalAlign>
<showInFooter>true</showInFooter>
<footerHorizontalAlign>Left</footerHorizontalAlign>
<extInfo xsi:type="form:InputFieldExtInfo">
<width>40</width>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<chooseType>true</chooseType>
<typeDomainEnabled>true</typeDomainEnabled>
<textEdit>true</textEdit>
<borderColor xsi:type="core:ColorRef">
<color>Style.BorderColor</color>
</borderColor>
<textSize>Normal</textSize>
</extInfo>
</items>
<items xsi:type="form:FormField">
<name>Родитель</name>
<id>40</id>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
<common>true</common>
</userVisible>
<dataPath xsi:type="form:DataPath">
<segments>Объект.Parent</segments>
</dataPath>
<extendedTooltip>
<name>РодительExtendedTooltip</name>
<id>72</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<contextMenu>
<name>РодительКонтекстноеМеню</name>
<id>41</id>
<autoFill>true</autoFill>
</contextMenu>
<type>InputField</type>
<editMode>Enter</editMode>
<showInHeader>true</showInHeader>
<headerHorizontalAlign>Left</headerHorizontalAlign>
<showInFooter>true</showInFooter>
<extInfo xsi:type="form:InputFieldExtInfo">
<handlers>
<event>StartChoice</event>
<name>РодительНачалоВыбора</name>
</handlers>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<wrap>true</wrap>
<chooseType>true</chooseType>
<typeDomainEnabled>true</typeDomainEnabled>
<textEdit>true</textEdit>
<textSize>Normal</textSize>
</extInfo>
</items>
<visible>true</visible> <visible>true</visible>
<enabled>true</enabled> <enabled>true</enabled>
<userVisible> <userVisible>
<common>true</common> <common>true</common>
</userVisible> </userVisible>
<dataPath xsi:type="form:DataPath"> <title>
<segments>Объект.Description</segments> <key>ru</key>
</dataPath> <value>Шапка</value>
</title>
<extendedTooltip> <extendedTooltip>
<name>НаименованиеExtendedTooltip</name> <name>ГруппаШапкаРасширеннаяПодсказка</name>
<id>55</id> <id>118</id>
<type>Label</type> <type>Label</type>
<autoMaxWidth>true</autoMaxWidth> <autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight> <autoMaxHeight>true</autoMaxHeight>
@@ -21,73 +112,14 @@
<horizontalAlign>Left</horizontalAlign> <horizontalAlign>Left</horizontalAlign>
</extInfo> </extInfo>
</extendedTooltip> </extendedTooltip>
<contextMenu> <type>UsualGroup</type>
<name>НаименованиеКонтекстноеМеню</name> <extInfo xsi:type="form:UsualGroupExtInfo">
<id>5</id> <group>Vertical</group>
<autoFill>true</autoFill> <behavior>Auto</behavior>
</contextMenu> <showLeftMargin>true</showLeftMargin>
<type>InputField</type> <united>true</united>
<editMode>Enter</editMode> <throughAlign>Auto</throughAlign>
<showInHeader>true</showInHeader> <currentRowUse>Auto</currentRowUse>
<headerHorizontalAlign>Left</headerHorizontalAlign>
<showInFooter>true</showInFooter>
<footerHorizontalAlign>Left</footerHorizontalAlign>
<extInfo xsi:type="form:InputFieldExtInfo">
<width>40</width>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<chooseType>true</chooseType>
<typeDomainEnabled>true</typeDomainEnabled>
<textEdit>true</textEdit>
<borderColor xsi:type="core:ColorRef">
<color>Style.BorderColor</color>
</borderColor>
<textSize>Normal</textSize>
</extInfo>
</items>
<items xsi:type="form:FormField">
<name>Родитель</name>
<id>40</id>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
<common>true</common>
</userVisible>
<dataPath xsi:type="form:DataPath">
<segments>Объект.Parent</segments>
</dataPath>
<extendedTooltip>
<name>РодительExtendedTooltip</name>
<id>72</id>
<type>Label</type>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
</extInfo>
</extendedTooltip>
<contextMenu>
<name>РодительКонтекстноеМеню</name>
<id>41</id>
<autoFill>true</autoFill>
</contextMenu>
<type>InputField</type>
<editMode>Enter</editMode>
<showInHeader>true</showInHeader>
<headerHorizontalAlign>Left</headerHorizontalAlign>
<showInFooter>true</showInFooter>
<extInfo xsi:type="form:InputFieldExtInfo">
<handlers>
<event>StartChoice</event>
<name>РодительНачалоВыбора</name>
</handlers>
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<wrap>true</wrap>
<chooseType>true</chooseType>
<typeDomainEnabled>true</typeDomainEnabled>
<textEdit>true</textEdit>
<textSize>Normal</textSize>
</extInfo> </extInfo>
</items> </items>
<items xsi:type="form:FormGroup"> <items xsi:type="form:FormGroup">
@@ -36,6 +36,10 @@
ТолькоПросмотр = Истина; ТолькоПросмотр = Истина;
КонецЕсли; КонецЕсли;
Если ОбщегоНазначения.ЭтоМобильныйКлиент() Тогда
Элементы.ГруппаШапка.ВыравниваниеЭлементовИЗаголовков = ВариантВыравниванияЭлементовИЗаголовков.ЭлементыПравоЗаголовкиЛево;
КонецЕсли;
КонецПроцедуры КонецПроцедуры
&НаСервере &НаСервере
@@ -16,8 +16,7 @@
Возврат; Возврат;
КонецЕсли; КонецЕсли;
Если ЭтоГруппа Тогда Если ЭтоГруппа Или Не ЗначениеЗаполнено(Родитель) Тогда
Для Каждого ДополнительныйРеквизит Из ДополнительныеРеквизиты Цикл Для Каждого ДополнительныйРеквизит Из ДополнительныеРеквизиты Цикл
Если ДополнительныйРеквизит.ИмяПредопределенногоНабора <> ИмяПредопределенногоНабора Тогда Если ДополнительныйРеквизит.ИмяПредопределенногоНабора <> ИмяПредопределенногоНабора Тогда
ДополнительныйРеквизит.ИмяПредопределенногоНабора = ИмяПредопределенногоНабора; ДополнительныйРеквизит.ИмяПредопределенногоНабора = ИмяПредопределенногоНабора;
@@ -29,8 +28,9 @@
ДополнительноеСведение.ИмяПредопределенногоНабора = ИмяПредопределенногоНабора; ДополнительноеСведение.ИмяПредопределенногоНабора = ИмяПредопределенногоНабора;
КонецЕсли; КонецЕсли;
КонецЦикла; КонецЦикла;
КонецЕсли;
Иначе
Если Не ЭтоГруппа Тогда
// Удаление дублей и пустых строк. // Удаление дублей и пустых строк.
ВыбранныеСвойства = Новый Соответствие; ВыбранныеСвойства = Новый Соответствие;
УдаляемыеСвойства = Новый Массив; УдаляемыеСвойства = Новый Массив;
@@ -76,7 +76,6 @@
КоличествоСведений = Формат(ДополнительныеСведения.НайтиСтроки( КоличествоСведений = Формат(ДополнительныеСведения.НайтиСтроки(
Новый Структура("ПометкаУдаления", Ложь)).Количество(), "ЧГ="); Новый Структура("ПометкаУдаления", Ложь)).Количество(), "ЧГ=");
КонецЕсли; КонецЕсли;
КонецПроцедуры КонецПроцедуры
@@ -255,7 +255,7 @@
ОтборЭлемента.ПравоеЗначение = Истина; ОтборЭлемента.ПравоеЗначение = Истина;
Элемент.Оформление.УстановитьЗначениеПараметра("Текст", НСтр("ru = '<Нет данных>'")); Элемент.Оформление.УстановитьЗначениеПараметра("Текст", НСтр("ru = '<Нет данных>'"));
Элемент.Оформление.УстановитьЗначениеПараметра("Формат", "Л=ru; БЛ=Нет; БИ=Да"); Элемент.Оформление.УстановитьЗначениеПараметра("Формат", НСтр("ru = 'БЛ=Нет; БИ=Да'"));
// //
@@ -267,7 +267,7 @@
ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("ПользователиИБ.ПользовательОС"); ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("ПользователиИБ.ПользовательОС");
ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.НеЗаполнено; ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.НеЗаполнено;
Элемент.Оформление.УстановитьЗначениеПараметра("Формат", "Л=ru; БЛ=; БИ=Да"); Элемент.Оформление.УстановитьЗначениеПараметра("Формат", НСтр("ru = 'БЛ=; БИ=Да'"));
КонецПроцедуры КонецПроцедуры
@@ -570,7 +570,7 @@
Иначе Иначе
Элемент = ДобавитьЭлемент("ГруппыПрав" + ОписаниеПрава.Имя, Тип("ПолеФормы"), Элементы.ГруппыПрав); Элемент = ДобавитьЭлемент("ГруппыПрав" + ОписаниеПрава.Имя, Тип("ПолеФормы"), Элементы.ГруппыПрав);
Элемент.ТолькоПросмотр = Истина; Элемент.ТолькоПросмотр = Истина;
Элемент.Формат = "ЧЦ=1; ЧН=; БЛ=Нет; БИ=Да"; Элемент.Формат = НСтр("ru = 'ЧЦ=1; ЧН=; БЛ=Нет; БИ=Да'");
Элемент.ГоризонтальноеПоложениеВШапке = ГоризонтальноеПоложениеЭлемента.Центр; Элемент.ГоризонтальноеПоложениеВШапке = ГоризонтальноеПоложениеЭлемента.Центр;
Элемент.ГоризонтальноеПоложение = ГоризонтальноеПоложениеЭлемента.Центр; Элемент.ГоризонтальноеПоложение = ГоризонтальноеПоложениеЭлемента.Центр;
Элемент.ПутьКДанным = "ГруппыПрав." + ОписаниеПрава.Имя; Элемент.ПутьКДанным = "ГруппыПрав." + ОписаниеПрава.Имя;
@@ -595,7 +595,7 @@
Если НовыеРеквизиты = Неопределено И Параметры.СсылкаНаОбъект.Метаданные().Иерархический Тогда Если НовыеРеквизиты = Неопределено И Параметры.СсылкаНаОбъект.Метаданные().Иерархический Тогда
Элемент = ДобавитьЭлемент("ГруппыПравНаследованиеРазрешено", Тип("ПолеФормы"), Элементы.ГруппыПрав); Элемент = ДобавитьЭлемент("ГруппыПравНаследованиеРазрешено", Тип("ПолеФормы"), Элементы.ГруппыПрав);
Элемент.ТолькоПросмотр = Истина; Элемент.ТолькоПросмотр = Истина;
Элемент.Формат = "ЧЦ=1; ЧН=; БЛ=Нет; БИ=Да"; Элемент.Формат = НСтр("ru = 'ЧЦ=1; ЧН=; БЛ=Нет; БИ=Да'");
Элемент.ГоризонтальноеПоложениеВШапке = ГоризонтальноеПоложениеЭлемента.Центр; Элемент.ГоризонтальноеПоложениеВШапке = ГоризонтальноеПоложениеЭлемента.Центр;
Элемент.ГоризонтальноеПоложение = ГоризонтальноеПоложениеЭлемента.Центр; Элемент.ГоризонтальноеПоложение = ГоризонтальноеПоложениеЭлемента.Центр;
Элемент.ПутьКДанным = "ГруппыПрав.НаследованиеРазрешено"; Элемент.ПутьКДанным = "ГруппыПрав.НаследованиеРазрешено";
@@ -1697,6 +1697,11 @@
<enabled>true</enabled> <enabled>true</enabled>
<showTitle>auto</showTitle> <showTitle>auto</showTitle>
<showCloseButton>true</showCloseButton> <showCloseButton>true</showCloseButton>
<mobileDeviceCommandBarContent>
<value xsi:type="core:StringValue">
<value>КоманднаяПанель</value>
</value>
</mobileDeviceCommandBarContent>
<attributes> <attributes>
<name>РежимНастройки</name> <name>РежимНастройки</name>
<title> <title>
@@ -733,6 +733,7 @@
КонецЕсли; КонецЕсли;
Элементы.СтрокаПоиска.ПоложениеЗаголовка = ПоложениеЗаголовкаЭлементаФормы.Нет; Элементы.СтрокаПоиска.ПоложениеЗаголовка = ПоложениеЗаголовкаЭлементаФормы.Нет;
Элементы.СтрокаПоиска.КнопкаВыпадающегоСписка = Ложь;
Элементы.ВыполнитьПоиск.Отображение = ОтображениеКнопки.Картинка; Элементы.ВыполнитьПоиск.Отображение = ОтображениеКнопки.Картинка;
Элементы.Переместить(Элементы.ПоказыватьПодсказки, Элементы.ВерхняяПанельМобильныйКлиент); Элементы.Переместить(Элементы.ПоказыватьПодсказки, Элементы.ВерхняяПанельМобильныйКлиент);
Элементы.ГруппаКоманднаяПанельПравая.Видимость = Ложь; Элементы.ГруппаКоманднаяПанельПравая.Видимость = Ложь;
@@ -1446,6 +1446,7 @@
Элементы.ГруппаНастройкиОтчета.Видимость = Ложь; Элементы.ГруппаНастройкиОтчета.Видимость = Ложь;
Элементы.ГруппаРаботаВТаблице.Видимость = Ложь; Элементы.ГруппаРаботаВТаблице.Видимость = Ложь;
Элементы.ГруппаВывод.Видимость = Ложь; Элементы.ГруппаВывод.Видимость = Ложь;
Элементы.Редактирование.Видимость = Ложь;
Элементы.ГруппаПоказатель.РастягиватьПоГоризонтали = Неопределено; Элементы.ГруппаПоказатель.РастягиватьПоГоризонтали = Неопределено;
Элементы.Показатель.Ширина = 0; Элементы.Показатель.Ширина = 0;
@@ -3325,8 +3325,8 @@
ИначеЕсли РезультатПроверки.КодСостояния = 400 Тогда ИначеЕсли РезультатПроверки.КодСостояния = 400 Тогда
Результат.ПодробноеПредставлениеОшибки = НСтр("ru='У адреса не указан регион'"); Результат.ПодробноеПредставлениеОшибки = НСтр("ru='Не указан регион адреса'");
Результат.КраткоеПредставлениеОшибки = НСтр("ru='Не указан регион'"); Результат.КраткоеПредставлениеОшибки = НСтр("ru='Не указан регион адреса'");
Результат.Отказ = Истина; Результат.Отказ = Истина;
Иначе Иначе
@@ -4083,7 +4083,7 @@
Если КакиеУровниПроверять["Distict"] <> Неопределено И АдресСтрока["Наименование" + КакиеУровниПроверять["Distict"]] = NULL Тогда Если КакиеУровниПроверять["Distict"] <> Неопределено И АдресСтрока["Наименование" + КакиеУровниПроверять["Distict"]] = NULL Тогда
ДобавитьОшибкуПроверкиАдресаПоКлассификатору(ОшибкиПроверки, "СвРайМО/Район", ДобавитьОшибкуПроверкиАдресаПоКлассификатору(ОшибкиПроверки, "СвРайМО/Район",
СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
НСтр("ru = 'Район ""%1"" отсутствует в адресном классификаторе'"), Адрес.District + " " + Адрес.DistrictType)); НСтр("ru = 'Район ""%1"" отсутствует в ФИАС'"), Адрес.District + " " + Адрес.DistrictType));
КонецЕсли; КонецЕсли;
Если НЕ ДанныеУровняКорректные(Адрес, "Area", НСтр("ru='Субъект РФ'"), АдресСтрока, КакиеУровниПроверять, ОшибкиПроверки) Тогда Если НЕ ДанныеУровняКорректные(Адрес, "Area", НСтр("ru='Субъект РФ'"), АдресСтрока, КакиеУровниПроверять, ОшибкиПроверки) Тогда
@@ -4299,7 +4299,7 @@
КонецЕсли; КонецЕсли;
ДобавитьОшибкуПроверкиАдресаПоКлассификатору(ОшибкиПроверки, ПолеСОшибкой, ДобавитьОшибкуПроверкиАдресаПоКлассификатору(ОшибкиПроверки, ПолеСОшибкой,
СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = '""%1"" отсутствует в адресном классификаторе%2'"), ПредставлениеДома, Подсказка)); СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = '""%1"" отсутствует в ФИАС%2'"), ПредставлениеДома, Подсказка));
Возврат Результат; Возврат Результат;
КонецЕсли; КонецЕсли;
@@ -4325,7 +4325,7 @@
Если КакиеУровниПроверять[ИмяУровня] <> Неопределено И ПустаяСтрока(АдресСтрока["НаименованиеУровень" + КакиеУровниПроверять[ИмяУровня]]) Тогда Если КакиеУровниПроверять[ИмяУровня] <> Неопределено И ПустаяСтрока(АдресСтрока["НаименованиеУровень" + КакиеУровниПроверять[ИмяУровня]]) Тогда
ДобавитьОшибкуПроверкиАдресаПоКлассификатору(ОшибкиПроверки, ПредставлениеУровня, ДобавитьОшибкуПроверкиАдресаПоКлассификатору(ОшибкиПроверки, ПредставлениеУровня,
СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = '%1 ""%2"" отсутствует в адресном классификаторе'"), ПредставлениеУровня, СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = '%1 ""%2"" отсутствует в ФИАС'"), ПредставлениеУровня,
Адрес[ИмяУровня] + " " + Адрес[ИмяУровня + "Type"])); Адрес[ИмяУровня] + " " + Адрес[ИмяУровня + "Type"]));
Возврат Ложь; Возврат Ложь;
КонецЕсли; КонецЕсли;
@@ -5205,9 +5205,20 @@
Результат = Новый Структура(); Результат = Новый Структура();
Результат.Вставить("ЗагружатьИсториюАдресов", Ложь); Результат.Вставить("ЗагружатьИсториюАдресов", Ложь);
Результат.Вставить("ЗагружатьПорциями", Ложь);
Результат.Вставить("ОповещатьОПрогрессе", Истина); Результат.Вставить("ОповещатьОПрогрессе", Истина);
СистемнаяИнформация = Новый СистемнаяИнформация;
ОперативнаяПамять = СистемнаяИнформация.ОперативнаяПамять / 1024; // Гб
ЗагружатьПорциями = Ложь;
Если ОперативнаяПамять < 4
Или СистемнаяИнформация.ТипПлатформы = ТипПлатформы.Windows_x86
Или СистемнаяИнформация.ТипПлатформы = ТипПлатформы.Linux_x86
Или СистемнаяИнформация.ТипПлатформы = ТипПлатформы.MacOS_x86 Тогда
ЗагружатьПорциями = Истина;
КонецЕсли;
Результат.Вставить("ЗагружатьПорциями", ЗагружатьПорциями);
Возврат Результат; Возврат Результат;
КонецФункции КонецФункции
@@ -1814,9 +1814,14 @@
Возврат; Возврат;
КонецЕсли; КонецЕсли;
Объект = Запись.Объект.ПолучитьОбъект();
Если Объект = Неопределено Тогда
ОтправкаЭлемента = ОтправкаЭлементаДанных.Игнорировать;
Возврат;
КонецЕсли;
Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ОбменДанными") Тогда Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ОбменДанными") Тогда
Отказ = Ложь; Отказ = Ложь;
Объект = Запись.Объект.ПолучитьОбъект();
МодульОбменДаннымиСобытия = ОбщегоНазначения.ОбщийМодуль("ОбменДаннымиСобытия"); МодульОбменДаннымиСобытия = ОбщегоНазначения.ОбщийМодуль("ОбменДаннымиСобытия");
МодульОбменДаннымиСобытия.МеханизмРегистрацииОбъектовПередЗаписью(Получатель.Метаданные().Имя, Объект, Отказ); МодульОбменДаннымиСобытия.МеханизмРегистрацииОбъектовПередЗаписью(Получатель.Метаданные().Имя, Объект, Отказ);
Если Отказ Или Не Объект.ОбменДанными.Получатели.Содержит(Получатель.Ссылка) Тогда Если Отказ Или Не Объект.ОбменДанными.Получатели.Содержит(Получатель.Ссылка) Тогда
@@ -516,8 +516,16 @@
// //
Функция НовыйВидПроверки(ПараметрыВыполненияПроверки) Функция НовыйВидПроверки(ПараметрыВыполненияПроверки)
ПроверкиВеденияУчета = КонтрольВеденияУчетаСлужебныйПовтИсп.ПроверкиВеденияУчета();
ГруппыПроверок = ПроверкиВеденияУчета.ГруппыПроверок;
ГруппаПроверок = ГруппыПроверок.Найти(ПараметрыВыполненияПроверки.Наименование, "Идентификатор");
НовыйВидПроверки = Справочники.ВидыПроверок.СоздатьЭлемент(); НовыйВидПроверки = Справочники.ВидыПроверок.СоздатьЭлемент();
НовыйВидПроверки.Наименование = ПараметрыВыполненияПроверки.Наименование; Если ГруппаПроверок = Неопределено Тогда
НовыйВидПроверки.Наименование = ПараметрыВыполненияПроверки.Наименование;
Иначе
НовыйВидПроверки.Наименование = ГруппаПроверок.Наименование;
КонецЕсли;
КоличествоСвойств = КоличествоСвойств(); КоличествоСвойств = КоличествоСвойств();
КоличествоПараметров = ПараметрыВыполненияПроверки.Количество() - 1; КоличествоПараметров = ПараметрыВыполненияПроверки.Количество() - 1;
@@ -41,7 +41,7 @@
Процедура ПриДобавленииПодсистемы(Описание) Экспорт Процедура ПриДобавленииПодсистемы(Описание) Экспорт
Описание.Имя = "СтандартныеПодсистемы"; Описание.Имя = "СтандартныеПодсистемы";
Описание.Версия = "3.0.2.150"; Описание.Версия = "3.0.2.156";
Описание.ИдентификаторИнтернетПоддержки = "SSL"; Описание.ИдентификаторИнтернетПоддержки = "SSL";
Описание.РежимВыполненияОтложенныхОбработчиков = "Параллельно"; Описание.РежимВыполненияОтложенныхОбработчиков = "Параллельно";
Описание.ПараллельноеОтложенноеОбновлениеСВерсии = "2.3.3.0"; Описание.ПараллельноеОтложенноеОбновлениеСВерсии = "2.3.3.0";
@@ -14,7 +14,9 @@
// Важно: Выполненные действия применятся после перезапуска сеанса. // Важно: Выполненные действия применятся после перезапуска сеанса.
// //
// Возвращаемое значение: // Возвращаемое значение:
// Булево - Истина, если были внесены изменения в составе исправлений. // Структура - со свойствами:
// * ЕстьИзменения - Булево - истина, если были внесены изменения в составе исправлений.
// * ОписаниеИзменений - Строка - информация о удаленных и измененных патчах.
// //
Функция ИсправленияИзменены() Экспорт Функция ИсправленияИзменены() Экспорт
@@ -29,6 +31,12 @@
КонецЕсли; КонецЕсли;
КонецЦикла; КонецЦикла;
Изменения = Новый Структура;
Изменения.Вставить("УдаленныеИсправления", Новый Массив);
Изменения.Вставить("ОтключенаЗащита", Новый Массив);
Изменения.Вставить("СнятБезопасныйРежим", Новый Массив);
Изменения.Вставить("НеактивныеИсправления", Новый Массив);
Если Исправления.Количество() > 0 Тогда Если Исправления.Количество() > 0 Тогда
ОписанияПодсистем = СтандартныеПодсистемыПовтИсп.ОписанияПодсистем(); ОписанияПодсистем = СтандартныеПодсистемыПовтИсп.ОписанияПодсистем();
@@ -58,6 +66,7 @@
Если УдалитьИсправление Тогда Если УдалитьИсправление Тогда
Попытка Попытка
Исправление.Удалить(); Исправление.Удалить();
Изменения.УдаленныеИсправления.Добавить(Исправление.Имя);
ИсправленияИзменены = Истина; ИсправленияИзменены = Истина;
Исключение Исключение
ИнформацияОбОшибке = ИнформацияОбОшибке(); ИнформацияОбОшибке = ИнформацияОбОшибке();
@@ -76,10 +85,12 @@
<> ЗащитаОтОпасныхДействий.ПредупреждатьОбОпасныхДействиях Тогда <> ЗащитаОтОпасныхДействий.ПредупреждатьОбОпасныхДействиях Тогда
Исправление.ЗащитаОтОпасныхДействий = ЗащитаОтОпасныхДействий; Исправление.ЗащитаОтОпасныхДействий = ЗащитаОтОпасныхДействий;
ТребуетсяЗапись = Истина; ТребуетсяЗапись = Истина;
Изменения.ОтключенаЗащита.Добавить(Исправление.Имя);
КонецЕсли; КонецЕсли;
Если Исправление.БезопасныйРежим <> Ложь Тогда Если Исправление.БезопасныйРежим <> Ложь Тогда
Исправление.БезопасныйРежим = Ложь ; Исправление.БезопасныйРежим = Ложь ;
ТребуетсяЗапись = Истина; ТребуетсяЗапись = Истина;
Изменения.СнятБезопасныйРежим.Добавить(Исправление.Имя);
КонецЕсли; КонецЕсли;
Если ТребуетсяЗапись Тогда Если ТребуетсяЗапись Тогда
@@ -107,6 +118,7 @@
Если ЭтоИсправление(Расширение) Тогда Если ЭтоИсправление(Расширение) Тогда
Попытка Попытка
Расширение.Удалить(); Расширение.Удалить();
Изменения.НеактивныеИсправления.Добавить(Расширение.Имя);
ИсправленияИзменены = Истина; ИсправленияИзменены = Истина;
Исключение Исключение
ИнформацияОбОшибке = ИнформацияОбОшибке(); ИнформацияОбОшибке = ИнформацияОбОшибке();
@@ -121,7 +133,39 @@
КонецЕсли; КонецЕсли;
КонецЦикла; КонецЦикла;
Возврат ИсправленияИзменены; ОписаниеИзменений = "";
Если Изменения.УдаленныеИсправления.Количество() > 0 Тогда
Заголовок = НСтр("ru = 'Удалены устаревшие патчи'");
ОписаниеИзменений = Заголовок + ":" + Символы.ПС + СтрСоединить(Изменения.УдаленныеИсправления, Символы.ПС);
КонецЕсли;
Если Изменения.НеактивныеИсправления.Количество() > 0 Тогда
Заголовок = НСтр("ru = 'Удалены неактивные патчи'");
Если ЗначениеЗаполнено(ОписаниеИзменений) Тогда
ОписаниеИзменений = ОписаниеИзменений + Символы.ПС + Символы.ПС;
КонецЕсли;
ОписаниеИзменений = ОписаниеИзменений + Заголовок + ":" + Символы.ПС + СтрСоединить(Изменения.НеактивныеИсправления, Символы.ПС);
КонецЕсли;
Если Изменения.ОтключенаЗащита.Количество() > 0 Тогда
Заголовок = НСтр("ru = 'Отключены предупреждения об опасных действиях'");
Если ЗначениеЗаполнено(ОписаниеИзменений) Тогда
ОписаниеИзменений = ОписаниеИзменений + Символы.ПС + Символы.ПС;
КонецЕсли;
ОписаниеИзменений = ОписаниеИзменений + Заголовок + ":" + Символы.ПС + СтрСоединить(Изменения.ОтключенаЗащита, Символы.ПС);
КонецЕсли;
Если Изменения.СнятБезопасныйРежим.Количество() > 0 Тогда
Заголовок = НСтр("ru = 'Отключен безопасный режим'");
Если ЗначениеЗаполнено(ОписаниеИзменений) Тогда
ОписаниеИзменений = ОписаниеИзменений + Символы.ПС + Символы.ПС;
КонецЕсли;
ОписаниеИзменений = ОписаниеИзменений + Заголовок + ":" + Символы.ПС + СтрСоединить(Изменения.СнятБезопасныйРежим, Символы.ПС);
КонецЕсли;
Результат = Новый Структура;
Результат.Вставить("ЕстьИзменения", ИсправленияИзменены);
Результат.Вставить("ОписаниеИзменений", ОписаниеИзменений);
Возврат Результат;
КонецФункции КонецФункции
@@ -63,14 +63,14 @@
Если Не ПравоДоступа("АдминистрированиеДанных", Метаданные) Тогда Если Не ПравоДоступа("АдминистрированиеДанных", Метаданные) Тогда
Форма.ПредлагатьОбсуждения = Ложь; Форма.ПредлагатьОбсуждения = Ложь;
Возврат; Возврат;
КонецЕсли; КонецЕсли;
ПредлагатьОбсуждения = ОбщегоНазначения.ХранилищеОбщихНастроекЗагрузить("НастройкиПрограммы", "ПредлагатьОбсуждения", Истина); ПредлагатьОбсуждения = ОбщегоНазначения.ХранилищеОбщихНастроекЗагрузить("НастройкиПрограммы", "ПредлагатьОбсуждения", Истина);
Форма.ПредлагатьОбсуждения = Не Отказ И Не ЗначениеЗаполнено(Объект.Ссылка) И ПредлагатьОбсуждения Форма.ПредлагатьОбсуждения = Не Отказ И Не ЗначениеЗаполнено(Объект.Ссылка) И ПредлагатьОбсуждения
И Не ОбсужденияСлужебныйВызовСервера.Подключены() И БольшеДвухПользователей(); И Не ОбсужденияСлужебныйВызовСервера.Подключены();
Если Не Форма.ПредлагатьОбсуждения Тогда Если Не Форма.ПредлагатьОбсуждения Тогда
Возврат; Возврат;
КонецЕсли; КонецЕсли;
ПодсистемаАдминистрирование = Метаданные.Подсистемы.Найти("Администрирование"); ПодсистемаАдминистрирование = Метаданные.Подсистемы.Найти("Администрирование");
Если ПодсистемаАдминистрирование <> Неопределено Тогда Если ПодсистемаАдминистрирование <> Неопределено Тогда
@@ -79,45 +79,14 @@
ПодсистемаАдминистрирование.Синоним); ПодсистемаАдминистрирование.Синоним);
Иначе Иначе
ВключитьПозднее = НСтр("ru = 'Включить обсуждения также можно позднее из настроек программы.'"); ВключитьПозднее = НСтр("ru = 'Включить обсуждения также можно позднее из настроек программы.'");
КонецЕсли; КонецЕсли;
Форма.ПредлагатьОбсужденияТекст = Форма.ПредлагатьОбсужденияТекст =
НСтр("ru = 'Включить обсуждения? НСтр("ru = 'Включить обсуждения?
| |
|С их помощью пользователи смогут отправлять друг другу текстовые сообщения и совершать видеозвонки, создавать тематические обсуждения и вести переписку по документам.'") |С их помощью пользователи смогут отправлять друг другу текстовые сообщения и совершать видеозвонки, создавать тематические обсуждения и вести переписку по документам.'")
+ Символы.ПС + Символы.ПС + ВключитьПозднее; + Символы.ПС + Символы.ПС + ВключитьПозднее;
КонецПроцедуры КонецПроцедуры
#КонецОбласти
#Область СлужебныеПроцедурыИФункции
Функция БольшеДвухПользователей()
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ РАЗРЕШЕННЫЕ
| КОЛИЧЕСТВО(Пользователи.Ссылка) КАК Количество
|ИЗ
| Справочник.Пользователи КАК Пользователи
|ГДЕ
| НЕ Пользователи.Недействителен
| И НЕ Пользователи.Служебный";
КоличествоВсехПользователей = Запрос.Выполнить().Выгрузить()[0].Количество;
Если КоличествоВсехПользователей < 10 Тогда // для того, чтобы избежать перебора большого количества пользователей ИБ
КоличествоПользователей = 0;
Для каждого ПользовательИБ Из ПользователиИнформационнойБазы.ПолучитьПользователей() Цикл
Если Пользователи.ВходВПрограммуРазрешен(ПользовательИБ) Тогда
КоличествоПользователей = КоличествоПользователей + 1;
КонецЕсли;
КонецЦикла;
Если КоличествоПользователей < 2 Тогда
Возврат Ложь;
КонецЕсли;
КонецЕсли;
Возврат Истина;
КонецФункции
#КонецОбласти #КонецОбласти
@@ -7741,31 +7741,31 @@
ИначеЕсли МетаПериод = Периодичность.Год Тогда ИначеЕсли МетаПериод = Периодичность.Год Тогда
ДанныеИзмерения.Тип = Новый ОписаниеТипов("Дата"); ДанныеИзмерения.Тип = Новый ОписаниеТипов("Дата");
ДанныеИзмерения.Представление = НСтр("ru='Период'"); ДанныеИзмерения.Представление = НСтр("ru='Период'");
ДанныеИзмерения.Формат = "ДФ='yyyy ""г.""'; ДП='Дата не задана'"; ДанныеИзмерения.Формат = НСтр("ru = 'ДФ=''yyyy ""г.""''; ДП=''Дата не задана'''");
ОписаниеИзмерений.Вставить("Период", ДанныеИзмерения); ОписаниеИзмерений.Вставить("Период", ДанныеИзмерения);
ИначеЕсли МетаПериод = Периодичность.День Тогда ИначеЕсли МетаПериод = Периодичность.День Тогда
ДанныеИзмерения.Тип = Новый ОписаниеТипов("Дата"); ДанныеИзмерения.Тип = Новый ОписаниеТипов("Дата");
ДанныеИзмерения.Представление = НСтр("ru='Период'"); ДанныеИзмерения.Представление = НСтр("ru='Период'");
ДанныеИзмерения.Формат = "ДЛФ=D; ДП='Дата не задана'"; ДанныеИзмерения.Формат = НСтр("ru = 'ДЛФ=D; ДП=''Дата не задана'''");
ОписаниеИзмерений.Вставить("Период", ДанныеИзмерения); ОписаниеИзмерений.Вставить("Период", ДанныеИзмерения);
ИначеЕсли МетаПериод = Периодичность.Квартал Тогда ИначеЕсли МетаПериод = Периодичность.Квартал Тогда
ДанныеИзмерения.Тип = Новый ОписаниеТипов("Дата"); ДанныеИзмерения.Тип = Новый ОписаниеТипов("Дата");
ДанныеИзмерения.Представление = НСтр("ru='Период'"); ДанныеИзмерения.Представление = НСтр("ru='Период'");
ДанныеИзмерения.Формат = "ДФ='к ""квартал ""yyyy ""г.""'; ДП='Дата не задана'"; ДанныеИзмерения.Формат = НСтр("ru = 'ДФ=''к """"квартал """"yyyy """"г.""""''; ДП=''Дата не задана'''");
ОписаниеИзмерений.Вставить("Период", ДанныеИзмерения); ОписаниеИзмерений.Вставить("Период", ДанныеИзмерения);
ИначеЕсли МетаПериод = Периодичность.Месяц Тогда ИначеЕсли МетаПериод = Периодичность.Месяц Тогда
ДанныеИзмерения.Тип = Новый ОписаниеТипов("Дата"); ДанныеИзмерения.Тип = Новый ОписаниеТипов("Дата");
ДанныеИзмерения.Представление = НСтр("ru='Период'"); ДанныеИзмерения.Представление = НСтр("ru='Период'");
ДанныеИзмерения.Формат = "ДФ='ММММ yyyy ""г.""'; ДП='Дата не задана'"; ДанныеИзмерения.Формат = НСтр("ru = 'ДФ=''ММММ yyyy """"г.""""''; ДП=''Дата не задана'''");
ОписаниеИзмерений.Вставить("Период", ДанныеИзмерения); ОписаниеИзмерений.Вставить("Период", ДанныеИзмерения);
ИначеЕсли МетаПериод = Периодичность.Секунда Тогда ИначеЕсли МетаПериод = Периодичность.Секунда Тогда
ДанныеИзмерения.Тип = Новый ОписаниеТипов("Дата"); ДанныеИзмерения.Тип = Новый ОписаниеТипов("Дата");
ДанныеИзмерения.Представление = НСтр("ru='Период'"); ДанныеИзмерения.Представление = НСтр("ru='Период'");
ДанныеИзмерения.Формат = "ДЛФ=DT; ДП='Дата не задана'"; ДанныеИзмерения.Формат = НСтр("ru = 'ДЛФ=DT; ДП=''Дата не задана'''");
ОписаниеИзмерений.Вставить("Период", ДанныеИзмерения); ОписаниеИзмерений.Вставить("Период", ДанныеИзмерения);
КонецЕсли; КонецЕсли;
@@ -514,12 +514,18 @@
ТекстовыйДокумент = Новый ТекстовыйДокумент; ТекстовыйДокумент = Новый ТекстовыйДокумент;
ТекстовыйДокумент.ДобавитьСтроку("@echo off"); ТекстовыйДокумент.ДобавитьСтроку("@echo off");
Если ВРег(КодировкаИсполнения) = "OEM" Тогда Если ЗначениеЗаполнено(КодировкаИсполнения) Тогда
ТекстовыйДокумент.ДобавитьСтроку("chcp 437");
КонецЕсли; Если КодировкаИсполнения = "OEM" Тогда
КодировкаИсполнения = 437;
Если ВРег(КодировкаИсполнения) = "UTF8" Тогда ИначеЕсли КодировкаИсполнения = "CP866" Тогда
ТекстовыйДокумент.ДобавитьСтроку("chcp 65001"); КодировкаИсполнения = 866;
ИначеЕсли КодировкаИсполнения = "UTF8" Тогда
КодировкаИсполнения = 65001;
КонецЕсли;
ТекстовыйДокумент.ДобавитьСтроку("chcp " + Формат(КодировкаИсполнения, "ЧГ="));
КонецЕсли; КонецЕсли;
Если Не ПустаяСтрока(ТекущийКаталог) Тогда Если Не ПустаяСтрока(ТекущийКаталог) Тогда
@@ -527,10 +533,6 @@
КонецЕсли; КонецЕсли;
ТекстовыйДокумент.ДобавитьСтроку("cmd /S /C "" " + СтрокаКоманды + " """); ТекстовыйДокумент.ДобавитьСтроку("cmd /S /C "" " + СтрокаКоманды + " """);
Если Не ДождатьсяЗавершения Тогда
КонецЕсли;
Возврат ТекстовыйДокумент; Возврат ТекстовыйДокумент;
КонецФункции КонецФункции
@@ -941,23 +941,30 @@
КонецЕсли; КонецЕсли;
КонецЦикла; КонецЦикла;
ЭлементыНастроек = Настройки.Отбор.Элементы; НайтиЗначенияПоляЭлементовОтбора(Поле, Настройки.Отбор.Элементы, ПользовательскиеНастройки, Значения);
Для Каждого Элемент Из ЭлементыНастроек Цикл
ЭлементПользовательский = ПользовательскиеНастройки.Найти(Элемент.ИдентификаторПользовательскойНастройки);
ЭлементАнализируемый = ?(ЭлементПользовательский = Неопределено, Элемент, ЭлементПользовательский);
Если ЭлементАнализируемый.Использование И Элемент.ЛевоеЗначение = Поле Тогда
Если ТипЗнч(ЭлементАнализируемый.ПравоеЗначение) = Тип("СписокЗначений") Тогда
ДополнитьСписок(Значения, ЭлементАнализируемый.ПравоеЗначение, Ложь, Истина);
Иначе
Значения.Добавить(ЭлементАнализируемый.ПравоеЗначение);
КонецЕсли;
КонецЕсли;
КонецЦикла;
Возврат Значения; Возврат Значения;
КонецФункции КонецФункции
Процедура НайтиЗначенияПоляЭлементовОтбора(Поле, ЭлементыОтбора, ПользовательскиеНастройки, Значения)
Для Каждого Элемент Из ЭлементыОтбора Цикл
ЭлементПользовательский = ПользовательскиеНастройки.Найти(Элемент.ИдентификаторПользовательскойНастройки);
ЭлементАнализируемый = ?(ЭлементПользовательский = Неопределено, Элемент, ЭлементПользовательский);
Если ТипЗнч(ЭлементАнализируемый) = Тип("ГруппаЭлементовОтбораКомпоновкиДанных") Тогда
НайтиЗначенияПоляЭлементовОтбора(Поле, Элемент.Элементы, ПользовательскиеНастройки, Значения);
Иначе
Если ЭлементАнализируемый.Использование И Элемент.ЛевоеЗначение = Поле Тогда
Если ТипЗнч(ЭлементАнализируемый.ПравоеЗначение) = Тип("СписокЗначений") Тогда
ДополнитьСписок(Значения, ЭлементАнализируемый.ПравоеЗначение, Ложь, Истина);
Иначе
Значения.Добавить(ЭлементАнализируемый.ПравоеЗначение);
КонецЕсли;
КонецЕсли;
КонецЕсли;
КонецЦикла;
КонецПроцедуры
//////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////
// Унификация формы отчета и формы настроек отчета. // Унификация формы отчета и формы настроек отчета.
@@ -2509,9 +2509,9 @@
Описание = Неопределено; Описание = Неопределено;
Если ТипЗнч(Элемент) = Тип("ЭлементОтбораКомпоновкиДанных") Тогда Если ТипЗнч(Элемент) = Тип("ЭлементОтбораКомпоновкиДанных") Тогда
Описание = Свойство.ДоступныеПоляОтбора.НайтиПоле(Элемент.ЛевоеЗначение); Описание = Настройки[ИдентификаторСвойства].ДоступныеПоляОтбора.НайтиПоле(Элемент.ЛевоеЗначение);
ИначеЕсли ТипЗнч(Элемент) = Тип("ЗначениеПараметраНастроекКомпоновкиДанных") Тогда ИначеЕсли ТипЗнч(Элемент) = Тип("ЗначениеПараметраНастроекКомпоновкиДанных") Тогда
Описание = Свойство.ДоступныеПараметры.НайтиПараметр(Элемент.Параметр); Описание = Настройки[ИдентификаторСвойства].ДоступныеПараметры.НайтиПараметр(Элемент.Параметр);
КонецЕсли; КонецЕсли;
ВидыСведений = ВидыСведений(); ВидыСведений = ВидыСведений();
@@ -2520,6 +2520,10 @@
ВидыСведений.ОписаниеНастройки = Описание; ВидыСведений.ОписаниеНастройки = Описание;
Сведения.Вставить(Элемент.ИдентификаторПользовательскойНастройки, ВидыСведений); Сведения.Вставить(Элемент.ИдентификаторПользовательскойНастройки, ВидыСведений);
Если ТипЗнч(Элемент) = Тип("ГруппаЭлементовОтбораКомпоновкиДанных") Тогда
ПолучитьСведенияОЭлементахСвойстваНастроек(Настройки, Элемент, ИдентификаторСвойства, Сведения)
КонецЕсли;
КонецЦикла; КонецЦикла;
КонецПроцедуры КонецПроцедуры
@@ -155,7 +155,7 @@
ТаблицаПоиска = ОбщегоНазначения.МестаИспользования(НаборСсылок); ТаблицаПоиска = ОбщегоНазначения.МестаИспользования(НаборСсылок);
Фильтр = Новый Структура("ВспомогательныеДанные", Ложь); Фильтр = Новый Структура("ЭтоСлужебныеДанные", Ложь);
АктуальныеСтроки = ТаблицаПоиска.НайтиСтроки(Фильтр); АктуальныеСтроки = ТаблицаПоиска.НайтиСтроки(Фильтр);
Результат = ТаблицаПоиска.Скопировать(АктуальныеСтроки, "Ссылка"); Результат = ТаблицаПоиска.Скопировать(АктуальныеСтроки, "Ссылка");
@@ -326,7 +326,7 @@
|ЗащищенноеСоединение: %2 |ЗащищенноеСоединение: %2
|Таймаут: %3'"), |Таймаут: %3'"),
ТекстОшибки, ТекстОшибки,
Формат(Соединение.Защищенное, "БЛ=Нет; БИ=Да"), Формат(Соединение.Защищенное, НСтр("ru = 'БЛ=Нет; БИ=Да'")),
Формат(Соединение.Таймаут, "ЧГ=0")); Формат(Соединение.Таймаут, "ЧГ=0"));
ЗаписатьОшибкуВЖурналРегистрации(СообщениеОбОшибке); ЗаписатьОшибкуВЖурналРегистрации(СообщениеОбОшибке);
@@ -528,9 +528,9 @@
|Таймаут: %3 |Таймаут: %3
|ИспользоватьАутентификациюОС: %4'"), |ИспользоватьАутентификациюОС: %4'"),
ТекстОшибки, ТекстОшибки,
Формат(Соединение.Защищенное, "БЛ=Нет; БИ=Да"), Формат(Соединение.Защищенное, НСтр("ru = 'БЛ=Нет; БИ=Да'")),
Формат(Соединение.Таймаут, "ЧГ=0"), Формат(Соединение.Таймаут, "ЧГ=0"),
Формат(Соединение.ИспользоватьАутентификациюОС, "БЛ=Нет; БИ=Да")); Формат(Соединение.ИспользоватьАутентификациюОС, НСтр("ru = 'БЛ=Нет; БИ=Да'")));
ДописатьЗаголовкиHTTP(ЗапросHTTP, СообщениеОбОшибке); ДописатьЗаголовкиHTTP(ЗапросHTTP, СообщениеОбОшибке);
ДописатьЗаголовкиHTTP(ОтветHTTP, СообщениеОбОшибке); ДописатьЗаголовкиHTTP(ОтветHTTP, СообщениеОбОшибке);
@@ -760,35 +760,4 @@
КонецФункции КонецФункции
// Сравнивает, удовлетворяет ли набор характеристик, полученный из дескриптора, условиям фильтра.
//
// Параметры:
// Фильтр - Коллекция объектов с полями Код и Значение.
// Характеристики - Коллекция объектов с полями Код и Значение.
//
// Возвращаемое значение
// Булево
//
Функция ХарактеристикиСовпадают(Знач Фильтр, Знач Характеристики) Экспорт
Для Каждого СтрокаФильтр Из Фильтр Цикл
СтрокаНайдена = Ложь;
Для Каждого Характеристика Из Характеристики Цикл
Если Характеристика.Код = СтрокаФильтр.Код Тогда
Если Характеристика.Значение = СтрокаФильтр.Значение Тогда
СтрокаНайдена = Истина;
Иначе
Возврат Ложь;
КонецЕсли;
КонецЕсли;
КонецЦикла;
Если Не СтрокаНайдена Тогда
Возврат Ложь;
КонецЕсли;
КонецЦикла;
Возврат Истина;
КонецФункции
#КонецОбласти #КонецОбласти
@@ -172,8 +172,6 @@
// //
Функция ПредставлениеРазрешенийНаИспользованиеВнешнихРесурсов(Знач ТипПрограммногоМодуля, Знач ИдентификаторПрограммногоМодуля, Знач ТипВладельца, Знач ИдентификаторВладельца, Знач Разрешения) Экспорт Функция ПредставлениеРазрешенийНаИспользованиеВнешнихРесурсов(Знач ТипПрограммногоМодуля, Знач ИдентификаторПрограммногоМодуля, Знач ТипВладельца, Знач ИдентификаторВладельца, Знач Разрешения) Экспорт
Представление = "";
// АПК:326-выкл Транзакция открывается, чтобы затем ее отменить, чтобы не устанавливать режим разделения. // АПК:326-выкл Транзакция открывается, чтобы затем ее отменить, чтобы не устанавливать режим разделения.
НачатьТранзакцию(); НачатьТранзакцию();
@@ -191,8 +189,6 @@
Менеджер.РассчитатьПрименениеЗапросов(); Менеджер.РассчитатьПрименениеЗапросов();
Представление = Менеджер.Представление(Истина);
ОтменитьТранзакцию(); ОтменитьТранзакцию();
Исключение Исключение
ОтменитьТранзакцию(); ОтменитьТранзакцию();
@@ -201,7 +197,7 @@
// АПК:326-вкл // АПК:326-вкл
Возврат Представление; Возврат Менеджер.Представление(Истина);
КонецФункции КонецФункции
@@ -4007,8 +4007,6 @@
ВызватьИсключение(НСтр("ru = 'Недостаточно прав для выполнения операции'")); ВызватьИсключение(НСтр("ru = 'Недостаточно прав для выполнения операции'"));
КонецЕсли; КонецЕсли;
ФайлДанныхНайден = Ложь;
Фильтр = Новый Массив(); Фильтр = Новый Массив();
Фильтр.Добавить(Новый Структура("Код, Значение", "ИмяКонфигурации", Метаданные.Имя)); Фильтр.Добавить(Новый Структура("Код, Значение", "ИмяКонфигурации", Метаданные.Имя));
Фильтр.Добавить(Новый Структура("Код, Значение", "ВерсияКонфигурации", Метаданные.Версия)); Фильтр.Добавить(Новый Структура("Код, Значение", "ВерсияКонфигурации", Метаданные.Версия));
@@ -4018,50 +4016,24 @@
= Перечисления.РежимыИспользованияИнформационнойБазы.Демонстрационный, = Перечисления.РежимыИспользованияИнформационнойБазы.Демонстрационный,
"Демонстрационный", "Рабочий"))); "Демонстрационный", "Рабочий")));
Дескриптор = ПоставляемыеДанные.ДескрипторПоставляемыхДанныхИзКэша(ИДФайлаВыгрузки); Дескрипторы = ПоставляемыеДанные.ДескрипторыПоставляемыхДанныхИзМенеджера("ЭталонОбластиДанных", Фильтр);
Если Дескриптор <> Неопределено Тогда
Если ПоставляемыеДанные.ХарактеристикиСовпадают(Фильтр, Дескриптор.Характеристики) Тогда Если Дескрипторы.Descriptor.Количество() = 0 Тогда
ДанныеЭталона = ПоставляемыеДанные.ПоставляемыеДанныеИзКэша(ИДФайлаВыгрузки); СообщениеОФатальнойОшибке =
ИмяФайлаВыгрузки = ПолучитьИмяВременногоФайла(); НСтр("ru = 'В менеджере сервиса нет файла начальных данных для текущей версии конфигурации.'");
ДанныеЭталона.Записать(ИмяФайлаВыгрузки); Возврат "ФатальнаяОшибка";
ФайлДанныхНайден = Истина;
Иначе
СообщениеОФатальнойОшибке = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
НСтр("ru = 'Указанный файл начальных данных не подходит для данной конфигурации.
|Дескриптор файла: %1'"),
ПоставляемыеДанные.ПолучитьОписаниеДанных(Дескриптор));
Возврат "ФатальнаяОшибка";
КонецЕсли;
КонецЕсли; КонецЕсли;
Если Не ФайлДанныхНайден Тогда ИмяФайлаВыгрузки = ПолучитьФайлИзХранилищаМенеджераСервиса(Дескрипторы.Descriptor[0].FileGUID);
Дескрипторы = ПоставляемыеДанные.ДескрипторыПоставляемыхДанныхИзМенеджера("ЭталонОбластиДанных", Фильтр); Если ИмяФайлаВыгрузки = Неопределено Тогда
СообщениеОФатальнойОшибке =
Если Дескрипторы.Descriptor.Количество() = 0 Тогда НСтр("ru = 'В менеджере сервиса больше нет требуемого файла начальных данных, вероятно он был заменен. Область не может быть подготовлена.'");
СообщениеОФатальнойОшибке = Возврат Ложь;
НСтр("ru = 'В менеджере сервиса нет файла начальных данных для текущей версии конфигурации.'");
Возврат "ФатальнаяОшибка";
КонецЕсли;
Если Дескрипторы.Descriptor[0].FileGUID <> ИДФайлаВыгрузки Тогда
СообщениеОФатальнойОшибке =
НСтр("ru = 'Файл начальных данных, имеющийся в менеджере сервиса, отличается от указанного в сообщении на подготовку области. Область не может быть подготовлена.'");
Возврат "ФатальнаяОшибка";
КонецЕсли;
ИмяФайлаВыгрузки = ПолучитьФайлИзХранилищаМенеджераСервиса(ИДФайлаВыгрузки);
Если ИмяФайлаВыгрузки = Неопределено Тогда
СообщениеОФатальнойОшибке =
НСтр("ru = 'В менеджере сервиса больше нет требуемого файла начальных данных, вероятно он был заменен. Область не может быть подготовлена.'");
Возврат Ложь;
КонецЕсли;
ПоставляемыеДанные.СохранитьПоставляемыеДанныеВКэш(Дескрипторы.Descriptor[0], ИмяФайлаВыгрузки);
КонецЕсли; КонецЕсли;
ПоставляемыеДанные.СохранитьПоставляемыеДанныеВКэш(Дескрипторы.Descriptor[0], ИмяФайлаВыгрузки);
УстановитьПривилегированныйРежим(Истина); УстановитьПривилегированныйРежим(Истина);
Если Не ОбщегоНазначения.ПодсистемаСуществует("ТехнологияСервиса.РаботаВМоделиСервиса.ВыгрузкаЗагрузкаОбластейДанных") Тогда Если Не ОбщегоНазначения.ПодсистемаСуществует("ТехнологияСервиса.РаботаВМоделиСервиса.ВыгрузкаЗагрузкаОбластейДанных") Тогда
@@ -29,7 +29,7 @@
Адрес = УправлениеКонтактнойИнформацией.КонтактнаяИнформацияВJSON(Адрес, Перечисления.ТипыКонтактнойИнформации.Адрес); Адрес = УправлениеКонтактнойИнформацией.КонтактнаяИнформацияВJSON(Адрес, Перечисления.ТипыКонтактнойИнформации.Адрес);
КонецЕсли; КонецЕсли;
Адрес = УправлениеКонтактнойИнформациейСлужебный.СтрокаJSONВСтруктуру(Адрес); Адрес = УправлениеКонтактнойИнформациейСлужебный.JSONВКонтактнуюИнформациюПоПолям(Адрес, Перечисления.ТипыКонтактнойИнформации.Адрес);
ИначеЕсли ТипЗнч(Адрес) <> Тип("Структура") Тогда ИначеЕсли ТипЗнч(Адрес) <> Тип("Структура") Тогда
@@ -64,7 +64,7 @@
Адрес = УправлениеКонтактнойИнформацией.КонтактнаяИнформацияВJSON(Адрес, Перечисления.ТипыКонтактнойИнформации.Адрес); Адрес = УправлениеКонтактнойИнформацией.КонтактнаяИнформацияВJSON(Адрес, Перечисления.ТипыКонтактнойИнформации.Адрес);
КонецЕсли; КонецЕсли;
Адрес = УправлениеКонтактнойИнформациейСлужебный.СтрокаJSONВСтруктуру(Адрес); Адрес = УправлениеКонтактнойИнформациейСлужебный.JSONВКонтактнуюИнформациюПоПолям(Адрес, Перечисления.ТипыКонтактнойИнформации.Адрес);
ИначеЕсли ТипЗнч(Адрес) <> Тип("Структура") Тогда ИначеЕсли ТипЗнч(Адрес) <> Тип("Структура") Тогда
@@ -72,12 +72,19 @@
КонецЕсли; КонецЕсли;
Регион = СокрЛП(Адрес.Area + " " + Адрес.AreaType);
Если ЭтоГородФедеральногоЗначения(Регион) Тогда
Возврат Регион;
КонецЕсли;
Город = СокрЛП(Адрес.City + " " + Адрес.CityType); Город = СокрЛП(Адрес.City + " " + Адрес.CityType);
Возврат Город; Возврат Город;
КонецФункции КонецФункции
// Возвращает сведения об адресе в виде отдельных частей адреса и различных кодов (код региона, ОКТМО и др.). // Возвращает сведения об адресе в виде отдельных частей адреса и различных кодов (код региона, ОКТМО и др.).
// //
// Параметры: // Параметры:
@@ -1751,7 +1758,7 @@
КонецЕсли; КонецЕсли;
ПолученныйАдрес = УправлениеКонтактнойИнформациейСлужебный.СтрокаJSONВСтруктуру(АдресСтрокой); ПолученныйАдрес = УправлениеКонтактнойИнформациейСлужебный.JSONВКонтактнуюИнформациюПоПолям(АдресСтрокой, Перечисления.ТипыКонтактнойИнформации.Адрес);
Адрес = РаботаСАдресамиКлиентСервер.ОписаниеНовойКонтактнойИнформации(Перечисления.ТипыКонтактнойИнформации.Адрес); Адрес = РаботаСАдресамиКлиентСервер.ОписаниеНовойКонтактнойИнформации(Перечисления.ТипыКонтактнойИнформации.Адрес);
ЗаполнитьЗначенияСвойств(Адрес, ПолученныйАдрес); ЗаполнитьЗначенияСвойств(Адрес, ПолученныйАдрес);
Адрес.type = УправлениеКонтактнойИнформациейКлиентСервер.ТипКонтактнойИнформацииВСтроку(Перечисления.ТипыКонтактнойИнформации.Адрес); Адрес.type = УправлениеКонтактнойИнформациейКлиентСервер.ТипКонтактнойИнформацииВСтроку(Перечисления.ТипыКонтактнойИнформации.Адрес);
@@ -2284,4 +2291,23 @@
КонецПроцедуры КонецПроцедуры
Функция ЭтоГородФедеральногоЗначения(Город) Экспорт
НазванияГородовФедеральногоЗначения = НазванияГородовФедеральногоЗначения();
Возврат НазванияГородовФедеральногоЗначения.Получить(ВРег(Город)) = Истина;
КонецФункции
// Возвращает массив наименований регионов - городов федерального значения.
Функция НазванияГородовФедеральногоЗначения()
Результат = Новый Соответствие;
Результат.Вставить("МОСКВА Г", Истина);
Результат.Вставить("САНКТ-ПЕТЕРБУРГ Г", Истина);
Результат.Вставить("СЕВАСТОПОЛЬ Г", Истина);
Результат.Вставить("БАЙКОНУР Г", Истина);
Возврат Результат;
КонецФункции
#КонецОбласти #КонецОбласти
@@ -534,10 +534,10 @@
КонецЕсли; КонецЕсли;
СоздаватьСоединение = ТипЗнч(Соединение) <> Тип("ИнтернетПочта"); СоздаватьСоединение = ТипЗнч(Соединение) <> Тип("ИнтернетПочта");
Профиль = ИнтернетПочтовыйПрофиль(УчетнаяЗапись);
Если СоздаватьСоединение Тогда Если СоздаватьСоединение Тогда
УстановитьОтключениеБезопасногоРежима(Истина); УстановитьОтключениеБезопасногоРежима(Истина);
Профиль = ИнтернетПочтовыйПрофиль(УчетнаяЗапись);
ПротоколПодключения = ПротоколПодключенияПоПрофилю(Профиль); ПротоколПодключения = ПротоколПодключенияПоПрофилю(Профиль);
Если ПротоколПодключения = ПротоколИнтернетПочты.POP3 Тогда Если ПротоколПодключения = ПротоколИнтернетПочты.POP3 Тогда
ПротоколПочты = ""; ПротоколПочты = "";
@@ -17,6 +17,9 @@
// Локализация начало // Локализация начало
// АПК:547-выкл
// АПК:488-выкл
// Следующий фрагмент кода выполняет условный вызов процедуры ПриЗаполненииПравилТранслитерации // Следующий фрагмент кода выполняет условный вызов процедуры ПриЗаполненииПравилТранслитерации
// при наличии модуля СтроковыеФункцииКлиентСерверРФ. // при наличии модуля СтроковыеФункцииКлиентСерверРФ.
@@ -32,6 +35,8 @@
МодульСтроковыеФункцииКлиентСерверРФ.ПриЗаполненииПравилТранслитерации(Правила); МодульСтроковыеФункцииКлиентСерверРФ.ПриЗаполненииПравилТранслитерации(Правила);
КонецЕсли; КонецЕсли;
#КонецЕсли #КонецЕсли
// АПК:488-вкл
// АПК:547-вкл
// Локализация конец // Локализация конец
@@ -7240,6 +7240,11 @@
ДанныеДляПредставления = СсылкаНаОбъект; ДанныеДляПредставления = СсылкаНаОбъект;
Иначе Иначе
НаборЗаписей = ОбщегоНазначения.МенеджерОбъектаПоПолномуИмени(ПолноеИмя).СоздатьНаборЗаписей(); НаборЗаписей = ОбщегоНазначения.МенеджерОбъектаПоПолномуИмени(ПолноеИмя).СоздатьНаборЗаписей();
Если ТипЗнч(ОписаниеДанных) = ТипЗнч(НаборЗаписей) Тогда
Возврат Истина;
КонецЕсли;
Для Каждого ЭлементОтбора Из НаборЗаписей.Отбор Цикл Для Каждого ЭлементОтбора Из НаборЗаписей.Отбор Цикл
ЭлементОтбора.Значение = ОписаниеДанных[ЭлементОтбора.Имя]; ЭлементОтбора.Значение = ОписаниеДанных[ЭлементОтбора.Имя];
ЭлементОтбора.Использование = Истина; ЭлементОтбора.Использование = Истина;
@@ -328,14 +328,14 @@
ЗначенияПолей = ЗначениеИлиПредставление; ЗначенияПолей = ЗначениеИлиПредставление;
Значение = КонтактнаяИнформацияВJSON(ЗначениеИлиПредставление, СвойстваВидаКонтактнойИнформации.Тип); Значение = КонтактнаяИнформацияВJSON(ЗначениеИлиПредставление, СвойстваВидаКонтактнойИнформации.Тип);
ОбъектКонтактнойИнформации = УправлениеКонтактнойИнформациейСлужебный.СтрокаJSONВСтруктуру(Значение); ОбъектКонтактнойИнформации = УправлениеКонтактнойИнформациейСлужебный.JSONВКонтактнуюИнформациюПоПолям(Значение, СвойстваВидаКонтактнойИнформации.Тип);
Представление = ОбъектКонтактнойИнформации.Value; Представление = ОбъектКонтактнойИнформации.Value;
ИначеЕсли ЭтоКонтактнаяИнформацияВJSON Тогда ИначеЕсли ЭтоКонтактнаяИнформацияВJSON Тогда
Значение = ЗначениеИлиПредставление; Значение = ЗначениеИлиПредставление;
ЗначенияПолей = КонтактнаяИнформацияВXML(Значение); ЗначенияПолей = КонтактнаяИнформацияВXML(Значение,, СвойстваВидаКонтактнойИнформации.Тип);
ОбъектКонтактнойИнформации = УправлениеКонтактнойИнформациейСлужебный.СтрокаJSONВСтруктуру(Значение); ОбъектКонтактнойИнформации = УправлениеКонтактнойИнформациейСлужебный.JSONВКонтактнуюИнформациюПоПолям(Значение, СвойстваВидаКонтактнойИнформации.Тип);
Представление = ПредставлениеКонтактнойИнформации(ЗначениеИлиПредставление, ВидКонтактнойИнформации); Представление = ПредставлениеКонтактнойИнформации(ЗначениеИлиПредставление, ВидКонтактнойИнформации);
Иначе Иначе
@@ -672,7 +672,7 @@
Если УправлениеКонтактнойИнформациейКлиентСервер.ЭтоКонтактнаяИнформацияВJSON(КонтактнаяИнформация) Тогда Если УправлениеКонтактнойИнформациейКлиентСервер.ЭтоКонтактнаяИнформацияВJSON(КонтактнаяИнформация) Тогда
КонтактнаяИнформацияСтруктурой = УправлениеКонтактнойИнформациейСлужебный.СтрокаJSONВСтруктуру(КонтактнаяИнформация); КонтактнаяИнформацияСтруктурой = УправлениеКонтактнойИнформациейСлужебный.СтрокуJSONВСтруктуру(КонтактнаяИнформация);
Если ТипЗнч(КонтактнаяИнформацияСтруктурой) = Тип("Структура") И КонтактнаяИнформацияСтруктурой.Свойство("type") Тогда Если ТипЗнч(КонтактнаяИнформацияСтруктурой) = Тип("Структура") И КонтактнаяИнформацияСтруктурой.Свойство("type") Тогда
Возврат Перечисления.ТипыКонтактнойИнформации[КонтактнаяИнформацияСтруктурой.type]; Возврат Перечисления.ТипыКонтактнойИнформации[КонтактнаяИнформацияСтруктурой.type];
КонецЕсли; КонецЕсли;
@@ -737,17 +737,12 @@
Если УправлениеКонтактнойИнформациейКлиентСервер.ЭтоКонтактнаяИнформацияВXML(КонтактнаяИнформация) Тогда Если УправлениеКонтактнойИнформациейКлиентСервер.ЭтоКонтактнаяИнформацияВXML(КонтактнаяИнформация) Тогда
КонтактнаяИнформацияJSON = КонтактнаяИнформацияВJSON(КонтактнаяИнформация); КонтактнаяИнформацияJSON = КонтактнаяИнформацияВJSON(КонтактнаяИнформация);
КонтактнаяИнформация = УправлениеКонтактнойИнформациейСлужебный.СтрокаJSONВСтруктуру(КонтактнаяИнформацияJSON); КонтактнаяИнформация = УправлениеКонтактнойИнформациейСлужебный.JSONВКонтактнуюИнформациюПоПолям(КонтактнаяИнформацияJSON, Перечисления.ТипыКонтактнойИнформации.Адрес);
ИначеЕсли УправлениеКонтактнойИнформациейКлиентСервер.ЭтоКонтактнаяИнформацияВJSON(КонтактнаяИнформация) Тогда ИначеЕсли УправлениеКонтактнойИнформациейКлиентСервер.ЭтоКонтактнаяИнформацияВJSON(КонтактнаяИнформация) Тогда
КонтактнаяИнформация = УправлениеКонтактнойИнформациейСлужебный.СтрокаJSONВСтруктуру(КонтактнаяИнформация); КонтактнаяИнформация = УправлениеКонтактнойИнформациейСлужебный.JSONВКонтактнуюИнформациюПоПолям(КонтактнаяИнформация, Перечисления.ТипыКонтактнойИнформации.Адрес);
КонецЕсли; КонецЕсли;
Если ТипЗнч(КонтактнаяИнформация) = Тип("Структура") Возврат УправлениеКонтактнойИнформациейКлиентСервер.ЭтоАдресВСвободнойФорме(КонтактнаяИнформация.AddressType);
И КонтактнаяИнформация.Свойство("AddressType") Тогда
Возврат УправлениеКонтактнойИнформациейКлиентСервер.ЭтоАдресВСвободнойФорме(КонтактнаяИнформация.AddressType);
КонецЕсли;
Возврат Ложь;
КонецФункции КонецФункции
@@ -770,7 +765,7 @@
Если УправлениеКонтактнойИнформациейКлиентСервер.ЭтоКонтактнаяИнформацияВXML(КонтактнаяИнформация) Тогда Если УправлениеКонтактнойИнформациейКлиентСервер.ЭтоКонтактнаяИнформацияВXML(КонтактнаяИнформация) Тогда
КонтактнаяИнформацияСтруктурой = УправлениеКонтактнойИнформациейСлужебный.КонтактнаяИнформацияВСтруктуруJSON(КонтактнаяИнформация); КонтактнаяИнформацияСтруктурой = УправлениеКонтактнойИнформациейСлужебный.КонтактнаяИнформацияВСтруктуруJSON(КонтактнаяИнформация);
ИначеЕсли УправлениеКонтактнойИнформациейКлиентСервер.ЭтоКонтактнаяИнформацияВJSON(КонтактнаяИнформация) Тогда ИначеЕсли УправлениеКонтактнойИнформациейКлиентСервер.ЭтоКонтактнаяИнформацияВJSON(КонтактнаяИнформация) Тогда
КонтактнаяИнформацияСтруктурой = УправлениеКонтактнойИнформациейСлужебный.СтрокаJSONВСтруктуру(КонтактнаяИнформация); КонтактнаяИнформацияСтруктурой = УправлениеКонтактнойИнформациейСлужебный.СтрокуJSONВСтруктуру(КонтактнаяИнформация);
Иначе Иначе
КонтактнаяИнформацияВXML = КонтактнаяИнформацияВXML(КонтактнаяИнформация); КонтактнаяИнформацияВXML = КонтактнаяИнформацияВXML(КонтактнаяИнформация);
КонтактнаяИнформацияСтруктурой = УправлениеКонтактнойИнформациейСлужебный.КонтактнаяИнформацияВСтруктуруJSON(КонтактнаяИнформацияВXML); КонтактнаяИнформацияСтруктурой = УправлениеКонтактнойИнформациейСлужебный.КонтактнаяИнформацияВСтруктуруJSON(КонтактнаяИнформацияВXML);
@@ -797,7 +792,7 @@
Если УправлениеКонтактнойИнформациейКлиентСервер.ЭтоКонтактнаяИнформацияВJSON(КонтактнаяИнформация) Тогда Если УправлениеКонтактнойИнформациейКлиентСервер.ЭтоКонтактнаяИнформацияВJSON(КонтактнаяИнформация) Тогда
КонтактнаяИнформацияСтруктурой = УправлениеКонтактнойИнформациейСлужебный.СтрокаJSONВСтруктуру(КонтактнаяИнформация); КонтактнаяИнформацияСтруктурой = УправлениеКонтактнойИнформациейСлужебный.СтрокуJSONВСтруктуру(КонтактнаяИнформация);
Если ТипЗнч(КонтактнаяИнформацияСтруктурой) = Тип("Структура") И КонтактнаяИнформацияСтруктурой.Свойство("comment") Тогда Если ТипЗнч(КонтактнаяИнформацияСтруктурой) = Тип("Структура") И КонтактнаяИнформацияСтруктурой.Свойство("comment") Тогда
КонтактнаяИнформацияСтруктурой.comment = Комментарий; КонтактнаяИнформацияСтруктурой.comment = Комментарий;
@@ -852,7 +847,7 @@
Адрес = КонтактнаяИнформацияВJSON(Адрес, Перечисления.ТипыКонтактнойИнформации.Адрес); Адрес = КонтактнаяИнформацияВJSON(Адрес, Перечисления.ТипыКонтактнойИнформации.Адрес);
КонецЕсли; КонецЕсли;
Адрес = УправлениеКонтактнойИнформациейСлужебный.СтрокаJSONВСтруктуру(Адрес); Адрес = УправлениеКонтактнойИнформациейСлужебный.JSONВКонтактнуюИнформациюПоПолям(Адрес, Перечисления.ТипыКонтактнойИнформации.Адрес);
ИначеЕсли ТипЗнч(Адрес) <> Тип("Структура") Тогда ИначеЕсли ТипЗнч(Адрес) <> Тип("Структура") Тогда
@@ -883,7 +878,7 @@
Если УправлениеКонтактнойИнформациейКлиентСервер.ЭтоКонтактнаяИнформацияВXML(КонтактнаяИнформация) Тогда Если УправлениеКонтактнойИнформациейКлиентСервер.ЭтоКонтактнаяИнформацияВXML(КонтактнаяИнформация) Тогда
КонтактнаяИнформацияСтруктурой = УправлениеКонтактнойИнформациейСлужебный.КонтактнаяИнформацияВСтруктуруJSON(КонтактнаяИнформация); КонтактнаяИнформацияСтруктурой = УправлениеКонтактнойИнформациейСлужебный.КонтактнаяИнформацияВСтруктуруJSON(КонтактнаяИнформация);
ИначеЕсли УправлениеКонтактнойИнформациейКлиентСервер.ЭтоКонтактнаяИнформацияВJSON(КонтактнаяИнформация) Тогда ИначеЕсли УправлениеКонтактнойИнформациейКлиентСервер.ЭтоКонтактнаяИнформацияВJSON(КонтактнаяИнформация) Тогда
КонтактнаяИнформацияСтруктурой = УправлениеКонтактнойИнформациейСлужебный.СтрокаJSONВСтруктуру(КонтактнаяИнформация); КонтактнаяИнформацияСтруктурой = УправлениеКонтактнойИнформациейСлужебный.СтрокуJSONВСтруктуру(КонтактнаяИнформация);
КонецЕсли; КонецЕсли;
Если КонтактнаяИнформацияСтруктурой.Свойство("Type") И КонтактнаяИнформацияСтруктурой.Свойство("Value") Тогда Если КонтактнаяИнформацияСтруктурой.Свойство("Type") И КонтактнаяИнформацияСтруктурой.Свойство("Value") Тогда
@@ -963,7 +958,7 @@
Если УправлениеКонтактнойИнформациейКлиентСервер.ЭтоКонтактнаяИнформацияВXML(КонтактнаяИнформация) Тогда Если УправлениеКонтактнойИнформациейКлиентСервер.ЭтоКонтактнаяИнформацияВXML(КонтактнаяИнформация) Тогда
КонтактнаяИнформацияСтруктурой = УправлениеКонтактнойИнформациейСлужебный.КонтактнаяИнформацияВСтруктуруJSON(КонтактнаяИнформация); КонтактнаяИнформацияСтруктурой = УправлениеКонтактнойИнформациейСлужебный.КонтактнаяИнформацияВСтруктуруJSON(КонтактнаяИнформация);
ИначеЕсли УправлениеКонтактнойИнформациейКлиентСервер.ЭтоКонтактнаяИнформацияВJSON(КонтактнаяИнформация) Тогда ИначеЕсли УправлениеКонтактнойИнформациейКлиентСервер.ЭтоКонтактнаяИнформацияВJSON(КонтактнаяИнформация) Тогда
КонтактнаяИнформацияСтруктурой = УправлениеКонтактнойИнформациейСлужебный.СтрокаJSONВСтруктуру(КонтактнаяИнформация); КонтактнаяИнформацияСтруктурой = УправлениеКонтактнойИнформациейСлужебный.JSONВКонтактнуюИнформациюПоПолям(КонтактнаяИнформация, Перечисления.ТипыКонтактнойИнформации.Телефон);
КонецЕсли; КонецЕсли;
Если КонтактнаяИнформацияСтруктурой.Свойство("Number") Тогда Если КонтактнаяИнформацияСтруктурой.Свойство("Number") Тогда
@@ -2083,7 +2078,7 @@
Отбор = Новый Структура("ИмяРеквизита", Результат.ИмяРеквизита); Отбор = Новый Структура("ИмяРеквизита", Результат.ИмяРеквизита);
НайденнаяСтрока = ОписаниеКонтактнойИнформации.НайтиСтроки(Отбор)[0]; НайденнаяСтрока = ОписаниеКонтактнойИнформации.НайтиСтроки(Отбор)[0];
Если УправлениеКонтактнойИнформациейКлиентСервер.ЭтоКонтактнаяИнформацияВJSON(НайденнаяСтрока.Значение) Тогда Если УправлениеКонтактнойИнформациейКлиентСервер.ЭтоКонтактнаяИнформацияВJSON(НайденнаяСтрока.Значение) Тогда
КонтактнаяИнформацияПоПолям = УправлениеКонтактнойИнформациейСлужебный.СтрокаJSONВСтруктуру(НайденнаяСтрока.Значение); КонтактнаяИнформацияПоПолям = УправлениеКонтактнойИнформациейСлужебный.СтрокуJSONВСтруктуру(НайденнаяСтрока.Значение);
КонтактнаяИнформацияПоПолям.Comment = ?(Результат.Свойство("Комментарий"), Результат.Комментарий, ""); КонтактнаяИнформацияПоПолям.Comment = ?(Результат.Свойство("Комментарий"), Результат.Комментарий, "");
НайденнаяСтрока.Значение = УправлениеКонтактнойИнформациейСлужебный.СтруктураВСтрокуJSON(КонтактнаяИнформацияПоПолям); НайденнаяСтрока.Значение = УправлениеКонтактнойИнформациейСлужебный.СтруктураВСтрокуJSON(КонтактнаяИнформацияПоПолям);
КонецЕсли; КонецЕсли;
@@ -2637,7 +2632,7 @@
Если УправлениеКонтактнойИнформациейКлиентСервер.ЭтоКонтактнаяИнформацияВXML(Значение) Тогда Если УправлениеКонтактнойИнформациейКлиентСервер.ЭтоКонтактнаяИнформацияВXML(Значение) Тогда
ОбъектКИ = УправлениеКонтактнойИнформациейСлужебный.КонтактнаяИнформацияВСтруктуруJSON(Значение, ТипИнформации); ОбъектКИ = УправлениеКонтактнойИнформациейСлужебный.КонтактнаяИнформацияВСтруктуруJSON(Значение, ТипИнформации);
Иначе Иначе
ОбъектКИ = УправлениеКонтактнойИнформациейСлужебный.СтрокаJSONВСтруктуру(Значение); ОбъектКИ = УправлениеКонтактнойИнформациейСлужебный.JSONВКонтактнуюИнформациюПоПолям(Значение, ТипИнформации);
КонецЕсли; КонецЕсли;
Если Не УправлениеКонтактнойИнформациейСлужебный.КонтактнаяИнформацияЗаполнена(ОбъектКИ) Тогда Если Не УправлениеКонтактнойИнформациейСлужебный.КонтактнаяИнформацияЗаполнена(ОбъектКИ) Тогда
@@ -3782,7 +3777,7 @@
НайденнаяСтрока = ОписаниеКонтактнойИнформации.НайтиСтроки(Отбор)[0]; НайденнаяСтрока = ОписаниеКонтактнойИнформации.НайтиСтроки(Отбор)[0];
Если УправлениеКонтактнойИнформациейКлиентСервер.ЭтоКонтактнаяИнформацияВJSON(НайденнаяСтрока.Значение) Тогда Если УправлениеКонтактнойИнформациейКлиентСервер.ЭтоКонтактнаяИнформацияВJSON(НайденнаяСтрока.Значение) Тогда
КонтактнаяИнформацияПоПолям = УправлениеКонтактнойИнформациейСлужебный.СтрокаJSONВСтруктуру(НайденнаяСтрока.Значение); КонтактнаяИнформацияПоПолям = УправлениеКонтактнойИнформациейСлужебный.СтрокуJSONВСтруктуру(НайденнаяСтрока.Значение);
КонтактнаяИнформацияПоПолям.Comment = НайденнаяСтрока.Комментарий; КонтактнаяИнформацияПоПолям.Comment = НайденнаяСтрока.Комментарий;
НайденнаяСтрока.Значение = УправлениеКонтактнойИнформациейСлужебный.СтруктураВСтрокуJSON(КонтактнаяИнформацияПоПолям); НайденнаяСтрока.Значение = УправлениеКонтактнойИнформациейСлужебный.СтруктураВСтрокуJSON(КонтактнаяИнформацияПоПолям);
КонецЕсли; КонецЕсли;
@@ -3986,7 +3981,7 @@
Элемент.УстановитьДействие("ОбработкаНавигационнойСсылки", "Подключаемый_КонтактнаяИнформацияОбработкаНавигационнойСсылки"); Элемент.УстановитьДействие("ОбработкаНавигационнойСсылки", "Подключаемый_КонтактнаяИнформацияОбработкаНавигационнойСсылки");
Если ТипЗнч(ИнформацияОВидеКИ) <> Тип("Структура") И УправлениеКонтактнойИнформациейКлиентСервер.ЭтоКонтактнаяИнформацияВJSON(ИнформацияОВидеКИ.Значение) Тогда Если ТипЗнч(ИнформацияОВидеКИ) <> Тип("Структура") И УправлениеКонтактнойИнформациейКлиентСервер.ЭтоКонтактнаяИнформацияВJSON(ИнформацияОВидеКИ.Значение) Тогда
КонтактнаяИнформация = УправлениеКонтактнойИнформациейСлужебный.СтрокаJSONВСтруктуру(ИнформацияОВидеКИ.Значение); КонтактнаяИнформация = УправлениеКонтактнойИнформациейСлужебный.JSONВКонтактнуюИнформациюПоПолям(ИнформацияОВидеКИ.Значение, Перечисления.ТипыКонтактнойИнформации.ВебСтраница);
АдресСайта = КонтактнаяИнформация.value; АдресСайта = КонтактнаяИнформация.value;
Представление = ?(КонтактнаяИнформация.Свойство("name") И ЗначениеЗаполнено(КонтактнаяИнформация.name), КонтактнаяИнформация.name, ИнформацияОВидеКИ.Представление); Представление = ?(КонтактнаяИнформация.Свойство("name") И ЗначениеЗаполнено(КонтактнаяИнформация.name), КонтактнаяИнформация.name, ИнформацияОВидеКИ.Представление);
Иначе Иначе
@@ -4859,7 +4854,7 @@
КонецЕсли; КонецЕсли;
СтрокаОшибки = ""; СтрокаОшибки = "";
ЭлектроннаяПочта = УправлениеКонтактнойИнформациейСлужебный.СтрокаJSONВСтруктуру(АдресЭП); ЭлектроннаяПочта = УправлениеКонтактнойИнформациейСлужебный.JSONВКонтактнуюИнформациюПоПолям(АдресЭП, Перечисления.ТипыКонтактнойИнформации.АдресЭлектроннойПочты);
Попытка Попытка
Результат = ОбщегоНазначенияКлиентСервер.РазобратьСтрокуСПочтовымиАдресами(ЭлектроннаяПочта.Value); Результат = ОбщегоНазначенияКлиентСервер.РазобратьСтрокуСПочтовымиАдресами(ЭлектроннаяПочта.Value);
@@ -5466,7 +5461,7 @@
КонецЕсли; КонецЕсли;
Если ЗначениеЗаполнено(СтрокаКонтактнойИнформации.Значение) Тогда Если ЗначениеЗаполнено(СтрокаКонтактнойИнформации.Значение) Тогда
ОбъектКонтактнойИнформации = УправлениеКонтактнойИнформациейСлужебный.СтрокаJSONВСтруктуру(СтрокаКонтактнойИнформации.Значение); ОбъектКонтактнойИнформации = УправлениеКонтактнойИнформациейСлужебный.JSONВКонтактнуюИнформациюПоПолям(СтрокаКонтактнойИнформации.Значение, СтрокаКонтактнойИнформацииОбъекта.Тип);
ЗаполнитьТехническиеПоляКонтактнойИнформации(СтрокаКонтактнойИнформации, ОбъектКонтактнойИнформации, СтрокаКонтактнойИнформацииОбъекта.Тип); ЗаполнитьТехническиеПоляКонтактнойИнформации(СтрокаКонтактнойИнформации, ОбъектКонтактнойИнформации, СтрокаКонтактнойИнформацииОбъекта.Тип);
КонецЕсли; КонецЕсли;
@@ -5760,7 +5755,7 @@
Если УправлениеКонтактнойИнформациейКлиентСервер.ЭтоКонтактнаяИнформацияВXML(Значение) Тогда Если УправлениеКонтактнойИнформациейКлиентСервер.ЭтоКонтактнаяИнформацияВXML(Значение) Тогда
ОбъектКИ = УправлениеКонтактнойИнформациейСлужебный.КонтактнаяИнформацияВСтруктуруJSON(Значение, СтрокаТаблицы.Тип); ОбъектКИ = УправлениеКонтактнойИнформациейСлужебный.КонтактнаяИнформацияВСтруктуруJSON(Значение, СтрокаТаблицы.Тип);
Иначе Иначе
ОбъектКИ = УправлениеКонтактнойИнформациейСлужебный.СтрокаJSONВСтруктуру(Значение); ОбъектКИ = УправлениеКонтактнойИнформациейСлужебный.JSONВКонтактнуюИнформациюПоПолям(Значение, СтрокаТаблицы.Тип);
КонецЕсли; КонецЕсли;
Если Не УправлениеКонтактнойИнформациейСлужебный.КонтактнаяИнформацияЗаполнена(ОбъектКИ) Тогда Если Не УправлениеКонтактнойИнформациейСлужебный.КонтактнаяИнформацияЗаполнена(ОбъектКИ) Тогда
@@ -285,7 +285,7 @@
И СтрокаДанных.Значение.Свойство("Адрес") Тогда И СтрокаДанных.Значение.Свойство("Адрес") Тогда
Если ЗначениеЗаполнено(СтрокаДанных.Значение.Адрес) Тогда Если ЗначениеЗаполнено(СтрокаДанных.Значение.Адрес) Тогда
Адрес = СтрокаJSONВСтруктуру(СтрокаДанных.Значение.Адрес); Адрес = JSONВКонтактнуюИнформациюПоПолям(СтрокаДанных.Значение.Адрес, Перечисления.ТипыКонтактнойИнформации.Адрес);
СтрокаДанных.Значение.Представление = МодульРаботаСАдресамиКлиентСервер.ПредставлениеАдреса(Адрес, Ложь); СтрокаДанных.Значение.Представление = МодульРаботаСАдресамиКлиентСервер.ПредставлениеАдреса(Адрес, Ложь);
КонецЕсли; КонецЕсли;
@@ -822,13 +822,13 @@
// Возвращаемое значение: // Возвращаемое значение:
// Строк - контактная информация. // Строк - контактная информация.
// //
Функция КонтактнаяИнформацияПоПредставлению(Представление, ОжидаемыйВид, ВСтруктуру = Ложь) Экспорт Функция КонтактнаяИнформацияПоПредставлению(Представление, ОжидаемыйВид, РазбиватьНаПоля = Ложь) Экспорт
ОжидаемыйТип = УправлениеКонтактнойИнформациейСлужебныйПовтИсп.ТипВидаКонтактнойИнформации(ОжидаемыйВид); ОжидаемыйТип = УправлениеКонтактнойИнформациейСлужебныйПовтИсп.ТипВидаКонтактнойИнформации(ОжидаемыйВид);
Если ОжидаемыйТип = Перечисления.ТипыКонтактнойИнформации.Адрес Тогда Если ОжидаемыйТип = Перечисления.ТипыКонтактнойИнформации.Адрес Тогда
Возврат СформироватьАдресПоПредставлению(Представление, Истина, ВСтруктуру); Возврат СформироватьАдресПоПредставлению(Представление, РазбиватьНаПоля);
ИначеЕсли ОжидаемыйТип = Перечисления.ТипыКонтактнойИнформации.Телефон ИначеЕсли ОжидаемыйТип = Перечисления.ТипыКонтактнойИнформации.Телефон
ИЛИ ОжидаемыйТип = Перечисления.ТипыКонтактнойИнформации.Факс Тогда ИЛИ ОжидаемыйТип = Перечисления.ТипыКонтактнойИнформации.Факс Тогда
@@ -844,7 +844,7 @@
КонецФункции КонецФункции
Функция СформироватьАдресПоПредставлению(Представление, РазбиватьНаПоля = Ложь, ВСтруктуру = Ложь) Функция СформироватьАдресПоПредставлению(Представление, РазбиватьНаПоля = Ложь)
ЕстьРаботаСАдресамиКлиентСервер = Метаданные.ОбщиеМодули.Найти("РаботаСАдресамиКлиентСервер") <> Неопределено; ЕстьРаботаСАдресамиКлиентСервер = Метаданные.ОбщиеМодули.Найти("РаботаСАдресамиКлиентСервер") <> Неопределено;
@@ -888,7 +888,7 @@
Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.АдресныйКлассификатор") Тогда Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.АдресныйКлассификатор") Тогда
МодульАдресныйКлассификаторСлужебный = ОбщегоНазначения.ОбщийМодуль("АдресныйКлассификаторСлужебный"); МодульАдресныйКлассификаторСлужебный = ОбщегоНазначения.ОбщийМодуль("АдресныйКлассификаторСлужебный");
ВариантыАдреса = МодульАдресныйКлассификаторСлужебный.РаспознатьАдрес(ДанныеАнализа, Представление, ВСтруктуру); ВариантыАдреса = МодульАдресныйКлассификаторСлужебный.РаспознатьАдрес(ДанныеАнализа, Представление, РазбиватьНаПоля);
Если ВариантыАдреса = Неопределено Тогда Если ВариантыАдреса = Неопределено Тогда
@@ -1266,7 +1266,7 @@
Вид = Неопределено; Вид = Неопределено;
Если УправлениеКонтактнойИнформациейКлиентСервер.ЭтоКонтактнаяИнформацияВJSON(КонтактнаяИнформация) Тогда Если УправлениеКонтактнойИнформациейКлиентСервер.ЭтоКонтактнаяИнформацияВJSON(КонтактнаяИнформация) Тогда
КонтактнаяИнформация = СтрокаJSONВСтруктуру(КонтактнаяИнформация); КонтактнаяИнформация = СтрокуJSONВСтруктуру(КонтактнаяИнформация);
ИначеЕсли ТипЗнч(КонтактнаяИнформация) = Тип("Структура") Тогда ИначеЕсли ТипЗнч(КонтактнаяИнформация) = Тип("Структура") Тогда
@@ -1304,9 +1304,9 @@
Если УправлениеКонтактнойИнформациейКлиентСервер.ЭтоКонтактнаяИнформацияВXML(КонтактнаяИнформация) Тогда Если УправлениеКонтактнойИнформациейКлиентСервер.ЭтоКонтактнаяИнформацияВXML(КонтактнаяИнформация) Тогда
КонтактнаяИнформацияJSON = УправлениеКонтактнойИнформацией.КонтактнаяИнформацияВJSON(КонтактнаяИнформация); КонтактнаяИнформацияJSON = УправлениеКонтактнойИнформацией.КонтактнаяИнформацияВJSON(КонтактнаяИнформация);
КонтактнаяИнформация = СтрокаJSONВСтруктуру(КонтактнаяИнформацияJSON); КонтактнаяИнформация = JSONВКонтактнуюИнформациюПоПолям(КонтактнаяИнформацияJSON, Перечисления.ТипыКонтактнойИнформации.Адрес);
ИначеЕсли УправлениеКонтактнойИнформациейКлиентСервер.ЭтоКонтактнаяИнформацияВJSON(КонтактнаяИнформация) Тогда ИначеЕсли УправлениеКонтактнойИнформациейКлиентСервер.ЭтоКонтактнаяИнформацияВJSON(КонтактнаяИнформация) Тогда
КонтактнаяИнформация = СтрокаJSONВСтруктуру(КонтактнаяИнформация); КонтактнаяИнформация = JSONВКонтактнуюИнформациюПоПолям(КонтактнаяИнформация, Перечисления.ТипыКонтактнойИнформации.Адрес);
КонецЕсли; КонецЕсли;
Если ТипЗнч(КонтактнаяИнформация) = Тип("Структура") Если ТипЗнч(КонтактнаяИнформация) = Тип("Структура")
@@ -1330,7 +1330,8 @@
Функция СформироватьПредставлениеКонтактнойИнформации(Знач Информация, Знач ВидИнформации) Функция СформироватьПредставлениеКонтактнойИнформации(Знач Информация, Знач ВидИнформации)
Если ТипЗнч(Информация) = Тип("Строка") И УправлениеКонтактнойИнформациейКлиентСервер.ЭтоКонтактнаяИнформацияВJSON(Информация) Тогда Если ТипЗнч(Информация) = Тип("Строка") И УправлениеКонтактнойИнформациейКлиентСервер.ЭтоКонтактнаяИнформацияВJSON(Информация) Тогда
Информация = СтрокаJSONВСтруктуру(Информация); ТипКонтактнойИнформации = ОбщегоНазначения.ЗначениеРеквизитаОбъекта(ВидИнформации, "Тип");
Информация = JSONВКонтактнуюИнформациюПоПолям(Информация, ТипКонтактнойИнформации);
КонецЕсли; КонецЕсли;
Если ТипЗнч(Информация) = Тип("Структура") Тогда Если ТипЗнч(Информация) = Тип("Структура") Тогда
@@ -1369,7 +1370,7 @@
Если Метаданные.ОбщиеМодули.Найти("РаботаСАдресамиКлиентСервер") <> Неопределено Тогда Если Метаданные.ОбщиеМодули.Найти("РаботаСАдресамиКлиентСервер") <> Неопределено Тогда
Если ТипЗнч(Адрес) = Тип("Строка") Тогда Если ТипЗнч(Адрес) = Тип("Строка") Тогда
Адрес = СтрокаJSONВСтруктуру(Адрес); Адрес = JSONВКонтактнуюИнформациюПоПолям(Адрес, Перечисления.ТипыКонтактнойИнформации.Адрес);
КонецЕсли; КонецЕсли;
Если ТипЗнч(Адрес) = Тип("Структура") И Адрес.Свойство("Country")Тогда Если ТипЗнч(Адрес) = Тип("Структура") И Адрес.Свойство("Country")Тогда
@@ -1820,7 +1821,7 @@
Функция ЗаполнитьДанныеВыбораАвтоподбораПоСтранам(Знач Параметры) Функция ЗаполнитьДанныеВыбораАвтоподбораПоСтранам(Знач Параметры)
ДанныеВыбора = Новый СписокЗначений; ДанныеВыбора = Новый СписокЗначений;
// Будем имитировать поведение платформы - поиск по всем доступным полям поиска с формированием подобного списка. // Будем имитировать поведение платформы - поиск по всем доступным полям поиска с формированием подобного списка.
// Подразумеваем, что поля справочника и классификатора совпадают, за исключением отсутствующего в классификаторе поля // Подразумеваем, что поля справочника и классификатора совпадают, за исключением отсутствующего в классификаторе поля
@@ -1914,9 +1915,9 @@
ИменаПолей = ПоляПоиска(); ИменаПолей = ПоляПоиска();
// Код + Наименование - ключевые поля соответствия справочника классификатору. Их обрабатываем всегда. // Код + Наименование - ключевые поля соответствия справочника классификатору. Их обрабатываем всегда.
ИменаПолейСтрокой = "," + СтрЗаменить(ИменаПолей.ИменаПолейСтрокой, " ", ""); Если ЗначениеЗаполнено(ИменаПолей.ИменаПолейСтрокой) Тогда
ИменаПолейСтрокой = СтрЗаменить(ИменаПолейСтрокой, ",Код", ""); ИменаПолейСтрокой = "," + ИменаПолей.ИменаПолейСтрокой;
ИменаПолейСтрокой = СтрЗаменить(ИменаПолейСтрокой, ",Наименование", ""); КонецЕсли;
Запрос.Текст = " Запрос.Текст = "
|ВЫБРАТЬ |ВЫБРАТЬ
@@ -1952,7 +1953,7 @@
Выборка.Код, Выборка.Наименование); Выборка.Код, Выборка.Наименование);
ЭлементВыбора = Новый Структура("Значение, ПометкаУдаления, Предупреждение", ЭлементВыбора = Новый Структура("Значение, ПометкаУдаления, Предупреждение",
РезультатВыбора, Выборка.ПометкаУдаления, Неопределено); РезультатВыбора, Выборка.ПометкаУдаления, Неопределено);
КонецЕсли; КонецЕсли;
ДанныеВыбора.Добавить(ЭлементВыбора, Выборка.Представление); ДанныеВыбора.Добавить(ЭлементВыбора, Выборка.Представление);
@@ -1965,7 +1966,6 @@
Возврат ДанныеВыбора; Возврат ДанныеВыбора;
КонецФункции КонецФункции
// Возвращает поля поиска в порядке предпочтения для справочника стран мира. // Возвращает поля поиска в порядке предпочтения для справочника стран мира.
// //
// Возвращаемое значение: // Возвращаемое значение:
@@ -1980,20 +1980,22 @@
Результат = Новый Массив; Результат = Новый Массив;
СписокПолей = Справочники.СтраныМира.ПустаяСсылка().Метаданные().ВводПоСтроке; СписокПолей = Справочники.СтраныМира.ПустаяСсылка().Метаданные().ВводПоСтроке;
ГраницаПолей = СписокПолей.Количество() - 1; ГраницаПолей = СписокПолей.Количество() - 1;
ВсеИменаСтрокой = ""; ИменаПолейПоиска = Новый Массив;
ПредставлениеРазделителя = ", "; ПредставлениеРазделителя = ", ";
РазделительПредставлений = " + """ + ПредставлениеРазделителя + """ + "; РазделительПредставлений = " + """ + ПредставлениеРазделителя + """ + ";
Для Индекс=0 По ГраницаПолей Цикл Для Индекс=0 По ГраницаПолей Цикл
ИмяПоля = СписокПолей[Индекс].Имя; ИмяПоля = СписокПолей[Индекс].Имя;
ВсеИменаСтрокой = ВсеИменаСтрокой + "," + ИмяПоля; Если СтрСравнить(ИмяПоля, "Наименование") <> 0 И СтрСравнить(ИмяПоля, "Код") <> 0 Тогда
ИменаПолейПоиска.Добавить(ИмяПоля);
КонецЕсли;
ШаблонПредставления = "%1." + ИмяПоля; ШаблонПредставления = "%1." + ИмяПоля;
ОстальныеПоля = ""; ОстальныеПоля = "";
Для Позиция=0 По ГраницаПолей Цикл Для Позиция=0 По ГраницаПолей Цикл
Если Позиция<>Индекс Тогда Если Позиция <> Индекс Тогда
ОстальныеПоля = ОстальныеПоля + РазделительПредставлений + СписокПолей[Позиция].Имя; ОстальныеПоля = ОстальныеПоля + РазделительПредставлений + СписокПолей[Позиция].Имя;
КонецЕсли; КонецЕсли;
КонецЦикла; КонецЦикла;
@@ -2008,7 +2010,7 @@
Новый Структура("Имя, ШаблонПредставления", ИмяПоля, ШаблонПредставления)); Новый Структура("Имя, ШаблонПредставления", ИмяПоля, ШаблонПредставления));
КонецЦикла; КонецЦикла;
Возврат Новый Структура("СписокПолей, ИменаПолейСтрокой", Результат, Сред(ВсеИменаСтрокой, 2)); Возврат Новый Структура("СписокПолей, ИменаПолейСтрокой", Результат, СтрСоединить(ИменаПолейПоиска,","));
КонецФункции КонецФункции
// Экранирует символы для использования в функции запроса ПОДОБНО. // Экранирует символы для использования в функции запроса ПОДОБНО.
@@ -2950,7 +2952,7 @@
Если ТипЗнч(КонтактнаяИнформация) = Тип("Строка") Тогда Если ТипЗнч(КонтактнаяИнформация) = Тип("Строка") Тогда
Если УправлениеКонтактнойИнформациейКлиентСервер.ЭтоКонтактнаяИнформацияВJSON(КонтактнаяИнформация) Тогда Если УправлениеКонтактнойИнформациейКлиентСервер.ЭтоКонтактнаяИнформацияВJSON(КонтактнаяИнформация) Тогда
Возврат СтрокаJSONВСтруктуру(КонтактнаяИнформация); Возврат JSONВКонтактнуюИнформациюПоПолям(КонтактнаяИнформация, Тип);
ИначеЕсли УправлениеКонтактнойИнформациейКлиентСервер.ЭтоКонтактнаяИнформацияВXML(КонтактнаяИнформация) Тогда ИначеЕсли УправлениеКонтактнойИнформациейКлиентСервер.ЭтоКонтактнаяИнформацияВXML(КонтактнаяИнформация) Тогда
РезультатПреобразования = Новый Структура; РезультатПреобразования = Новый Структура;
XDTOКонтактнаяИнформация = КонтактнаяИнформацияИзXML(КонтактнаяИнформация, Тип, РезультатПреобразования, Представление); XDTOКонтактнаяИнформация = КонтактнаяИнформацияИзXML(КонтактнаяИнформация, Тип, РезультатПреобразования, Представление);
@@ -4426,7 +4428,25 @@
КонецФункции КонецФункции
Функция СтрокаJSONВСтруктуру(Значение) Экспорт Функция JSONВКонтактнуюИнформациюПоПолям(Значение, ТипКонтактнойИнформации) Экспорт
Результат = Новый Структура();
Если Метаданные.ОбщиеМодули.Найти("РаботаСАдресамиКлиентСервер") <> Неопределено Тогда
МодульРаботаСАдресамиКлиентСервер = ОбщегоНазначения.ОбщийМодуль("РаботаСАдресамиКлиентСервер");
Результат = РаботаСАдресамиКлиентСервер.ОписаниеНовойКонтактнойИнформации(ТипКонтактнойИнформации);
Иначе
Результат = УправлениеКонтактнойИнформациейКлиентСервер.ОписаниеНовойКонтактнойИнформации(ТипКонтактнойИнформации);
КонецЕсли;
КонтактнаяИнформация = СтрокуJSONВСтруктуру(Значение);
ЗаполнитьЗначенияСвойств(Результат, КонтактнаяИнформация);
Возврат Результат;
КонецФункции
Функция СтрокуJSONВСтруктуру(Значение) Экспорт
ЧтениеJSON = Новый ЧтениеJSON; ЧтениеJSON = Новый ЧтениеJSON;
ЧтениеJSON.УстановитьСтроку(Значение); ЧтениеJSON.УстановитьСтроку(Значение);
@@ -4450,7 +4470,7 @@
Функция КонтактнаяИнформацияИзJSONВXML(Знач КонтактнаяИнформация, ОжидаемыйТип = Неопределено) Экспорт Функция КонтактнаяИнформацияИзJSONВXML(Знач КонтактнаяИнформация, ОжидаемыйТип = Неопределено) Экспорт
Если УправлениеКонтактнойИнформациейКлиентСервер.ЭтоКонтактнаяИнформацияВJSON(КонтактнаяИнформация) Тогда Если УправлениеКонтактнойИнформациейКлиентСервер.ЭтоКонтактнаяИнформацияВJSON(КонтактнаяИнформация) Тогда
КонтактнаяИнформация = СтрокаJSONВСтруктуру(КонтактнаяИнформация); КонтактнаяИнформация = JSONВКонтактнуюИнформациюПоПолям(КонтактнаяИнформация, ОжидаемыйТип);
КонецЕсли; КонецЕсли;
Если ОжидаемыйТип = Неопределено Тогда Если ОжидаемыйТип = Неопределено Тогда
@@ -96,8 +96,8 @@
// если не указан ДождатьсяЗавершения - игнорируется. // если не указан ДождатьсяЗавершения - игнорируется.
// * КодировкаПотоков - КодировкаТекста, Строка - Кодировка, используемая для чтения stdout и stderr. // * КодировкаПотоков - КодировкаТекста, Строка - Кодировка, используемая для чтения stdout и stderr.
// По умолчанию используется для Windows OEM (cp437), остальные КодировкаТекста.Системная. // По умолчанию используется для Windows OEM (cp437), остальные КодировкаТекста.Системная.
// * КодировкаИсполнения - Строка - кодировка, устанавливаемая в Windows с помощью команды chcp. // * КодировкаИсполнения - Строка, Число - кодировка, устанавливаемая в Windows с помощью команды chcp.
// В Linux и MacOS игнорируется. Возможные значения: "OEM" и "UTF8". // В Linux и MacOS игнорируется. Возможные значения: "OEM", "CP866", "UTF8" или номер кодовой страницы.
// //
Функция ПараметрыЗапускаПрограммы() Экспорт Функция ПараметрыЗапускаПрограммы() Экспорт
@@ -501,8 +501,8 @@
// если не указан ДождатьсяЗавершения - игнорируется. // если не указан ДождатьсяЗавершения - игнорируется.
// * ПолучитьПотокОшибок - Булево - Ложь - ошибки, направленные в поток stderr, // * ПолучитьПотокОшибок - Булево - Ложь - ошибки, направленные в поток stderr,
// если не указан ДождатьсяЗавершения - игнорируется. // если не указан ДождатьсяЗавершения - игнорируется.
// * КодировкаИсполнения - Строка - Кодировка, устанавливаемая в Windows с помощью команды chcp. // * КодировкаИсполнения - Строка, Число - Кодировка, устанавливаемая в Windows с помощью команды chcp.
// в Linux и MacOS игнорируется. Возможные значения "OEM" и "UTF8". // в Linux и MacOS игнорируется. Возможные значения "OEM", "CP866", "UTF8" или номер кодовой страницы.
// * ВыполнитьСНаивысшимиПравами - Булево - Истина, если требуется запустить программу на исполнение // * ВыполнитьСНаивысшимиПравами - Булево - Истина, если требуется запустить программу на исполнение
// с повышением привилегий системы: // с повышением привилегий системы:
// - Windows: запрос UAC; // - Windows: запрос UAC;
@@ -813,16 +813,21 @@
КонецЦикла; КонецЦикла;
Для каждого ВложениеПечатнаяФорма Из СведенияОШаблоне.Вложения Цикл Для каждого ВложениеПечатнаяФорма Из СведенияОШаблоне.Вложения Цикл
ИмяПараметраВыбраннойПечатнойФормы = ПараметрыШаблона.ВыбранныеВложения[ВложениеПечатнаяФорма.Идентификатор]; ИмяПараметраСПечатнойФормойВШаблоне = ПараметрыШаблона.ВыбранныеВложения[ВложениеПечатнаяФорма.Идентификатор];
Если ВложениеПечатнаяФорма.Статус = "ПечатнаяФорма" И ИмяПараметраВыбраннойПечатнойФормы <> Неопределено Тогда Если ВложениеПечатнаяФорма.Статус = "ПечатнаяФорма" И ИмяПараметраСПечатнойФормойВШаблоне <> Неопределено Тогда
ИмяМенеджераПечати = ВложениеПечатнаяФорма.МенеджерПечати; ИмяМенеджераПечати = ВложениеПечатнаяФорма.МенеджерПечати;
ПараметрыПечати = ВложениеПечатнаяФорма.ПараметрыПечати; ПараметрыПечати = ВложениеПечатнаяФорма.ПараметрыПечати;
МассивОбъектов = Новый Массив; МассивОбъектов = Новый Массив;
Если ПустаяСтрока(ИмяПараметраВыбраннойПечатнойФормы) Тогда
// Если в шаблоне сообщений определен дополнительный(произвольный) параметр, который имеет свои печатные формы,
// то определяем предмет (объект) по имени параметра, на основании которого будут формироваться эти печатные формы.
Предмет = ПараметрыОтправки.ДополнительныеПараметры.ПроизвольныеПараметры[ИмяПараметраСПечатнойФормойВШаблоне];
Если Предмет = Неопределено Тогда
МассивОбъектов.Добавить(ПараметрыОтправки.Предмет); МассивОбъектов.Добавить(ПараметрыОтправки.Предмет);
Иначе Иначе
МассивОбъектов.Добавить(ПараметрыОтправки.ДополнительныеПараметры.ПроизвольныеПараметры[ИмяПараметраВыбраннойПечатнойФормы]); МассивОбъектов.Добавить(Предмет);
КонецЕсли; КонецЕсли;
ИменаМакетов = ?(ПустаяСтрока(ВложениеПечатнаяФорма.Имя), ВложениеПечатнаяФорма.Идентификатор, ВложениеПечатнаяФорма.Имя); ИменаМакетов = ?(ПустаяСтрока(ВложениеПечатнаяФорма.Имя), ВложениеПечатнаяФорма.Идентификатор, ВложениеПечатнаяФорма.Имя);
Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.Печать") Тогда Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.Печать") Тогда
@@ -2296,7 +2296,7 @@
"СохранитьДанныеСертификатаВместеСПодписьюЦиклВнутреннийЦиклПослеИнициализацииФайла", ЭтотОбъект, Контекст), "СохранитьДанныеСертификатаВместеСПодписьюЦиклВнутреннийЦиклПослеИнициализацииФайла", ЭтотОбъект, Контекст),
Контекст.ПолноеИмяФайлаСертификата); Контекст.ПолноеИмяФайлаСертификата);
Иначе Иначе
СохранитьДанныеСертификатаВместеСПодписьюЦиклВнутреннийЦиклПослеИнициализацииФайла(Ложь, Контекст); СохранитьДанныеСертификатаВместеСПодписьюЦиклВнутреннийЦиклПослеПроверкиСуществованияФайла(Ложь, Контекст);
КонецЕсли; КонецЕсли;
КонецПроцедуры КонецПроцедуры
+9 -9
View File
@@ -1,17 +1,17 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<mdclass:Configuration xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="9ab95268-bfad-4e03-8858-01e4a184e982"> <mdclass:Configuration xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="e725cbdd-348a-41e6-85e7-53e5c4152789">
<name>БиблиотекаСтандартныхПодсистем</name> <name>БиблиотекаСтандартныхПодсистем</name>
<synonym> <synonym>
<key>ru</key> <key>ru</key>
<value>Библиотека стандартных подсистем, редакция 3.0</value> <value>Библиотека стандартных подсистем, редакция 3.0</value>
</synonym> </synonym>
<containedObjects classId="9cd510cd-abfc-11d4-9434-004095e12fc7" objectId="639cbb4f-7bf5-4a33-ad9d-9227bce484bd"/> <containedObjects classId="9cd510cd-abfc-11d4-9434-004095e12fc7" objectId="20d948ac-7f92-434a-8243-8bba89dc4ed4"/>
<containedObjects classId="9fcd25a0-4822-11d4-9414-008048da11f9" objectId="0dfe41c2-0316-4243-9aa6-ebf2412a18a6"/> <containedObjects classId="9fcd25a0-4822-11d4-9414-008048da11f9" objectId="f47b7e73-499e-4349-86c4-7e7f7cde5de1"/>
<containedObjects classId="e3687481-0a87-462c-a166-9f34594f9bba" objectId="6ee5b126-24c2-4f6a-9530-8f88e8f85f4a"/> <containedObjects classId="e3687481-0a87-462c-a166-9f34594f9bba" objectId="a1454716-8788-4b18-ab48-382ea664ee67"/>
<containedObjects classId="9de14907-ec23-4a07-96f0-85521cb6b53b" objectId="7605c897-ed22-4d3d-b9e9-b3726aa5f1a0"/> <containedObjects classId="9de14907-ec23-4a07-96f0-85521cb6b53b" objectId="c452421a-b95a-4afe-80ab-30b61eafafa7"/>
<containedObjects classId="51f2d5d8-ea4d-4064-8892-82951750031e" objectId="2dbca017-a30a-47dd-9385-ce44f288d987"/> <containedObjects classId="51f2d5d8-ea4d-4064-8892-82951750031e" objectId="a2a6be08-a6db-479c-ac87-66c985ed5e31"/>
<containedObjects classId="e68182ea-4237-4383-967f-90c1e3370bc7" objectId="13270169-db7d-4610-8fd3-17a601d142ef"/> <containedObjects classId="e68182ea-4237-4383-967f-90c1e3370bc7" objectId="7bc448a8-256e-484d-951f-f3eced7a9ede"/>
<containedObjects classId="fb282519-d103-4dd3-bc12-cb271d631dfc" objectId="c157b16a-5ca4-4fb1-87fc-b3b114fcbce1"/> <containedObjects classId="fb282519-d103-4dd3-bc12-cb271d631dfc" objectId="ad2f991b-a14c-4b9a-945b-70be484b75c4"/>
<defaultRunMode>ManagedApplication</defaultRunMode> <defaultRunMode>ManagedApplication</defaultRunMode>
<usePurposes>PersonalComputer</usePurposes> <usePurposes>PersonalComputer</usePurposes>
<scriptVariant>Russian</scriptVariant> <scriptVariant>Russian</scriptVariant>
@@ -19,7 +19,7 @@
<defaultRoles>Role.АдминистраторСистемы</defaultRoles> <defaultRoles>Role.АдминистраторСистемы</defaultRoles>
<defaultRoles>Role.ИнтерактивноеОткрытиеВнешнихОтчетовИОбработок</defaultRoles> <defaultRoles>Role.ИнтерактивноеОткрытиеВнешнихОтчетовИОбработок</defaultRoles>
<vendor>Фирма &quot;1С&quot;</vendor> <vendor>Фирма &quot;1С&quot;</vendor>
<version>3.0.2.150</version> <version>3.0.2.156</version>
<updateCatalogAddress>http://downloads.v8.1c.ru/tmplts/</updateCatalogAddress> <updateCatalogAddress>http://downloads.v8.1c.ru/tmplts/</updateCatalogAddress>
<includeHelpInContents>true</includeHelpInContents> <includeHelpInContents>true</includeHelpInContents>
<usedMobileApplicationFunctionalities> <usedMobileApplicationFunctionalities>
@@ -1 +1 @@
{6,1,1,351f27c0-eac4-4592-a52e-0e7f80c344f7,1,88712820-52be-44e4-93cf-f8ef39d63834,"3.0.2.150","Фирма ""1С""","БиблиотекаСтандартныхПодсистем",5986,1,0,9ab95268-bfad-4e03-8858-01e4a184e982,9ab95268-bfad-4e03-8858-01e4a184e982,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,10ceb5bd-2988-454b-94e2-12db4bc2bd00,1,9c66d9ed-33d5-43cd-b817-25b6fe99581a,"3.0.2.156","Фирма ""1С""","БиблиотекаСтандартныхПодсистем",5986,1,0,e725cbdd-348a-41e6-85e7-53e5c4152789,e725cbdd-348a-41e6-85e7-53e5c4152789,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
@@ -59,7 +59,7 @@
НаселенныйПунктДетально = УправлениеКонтактнойИнформацией.ОписаниеНовойКонтактнойИнформации(Перечисления.ТипыКонтактнойИнформации.Адрес); // Новый адрес НаселенныйПунктДетально = УправлениеКонтактнойИнформацией.ОписаниеНовойКонтактнойИнформации(Перечисления.ТипыКонтактнойИнформации.Адрес); // Новый адрес
НаселенныйПунктДетально.AddressType = УправлениеКонтактнойИнформациейКлиентСервер.АдресВСвободнойФорме(); НаселенныйПунктДетально.AddressType = УправлениеКонтактнойИнформациейКлиентСервер.АдресВСвободнойФорме();
ИначеЕсли УправлениеКонтактнойИнформациейКлиентСервер.ЭтоКонтактнаяИнформацияВJSON(ЗначенияПолей) Тогда ИначеЕсли УправлениеКонтактнойИнформациейКлиентСервер.ЭтоКонтактнаяИнформацияВJSON(ЗначенияПолей) Тогда
ДанныеАдреса = УправлениеКонтактнойИнформациейСлужебный.СтрокаJSONВСтруктуру(ЗначенияПолей); ДанныеАдреса = УправлениеКонтактнойИнформациейСлужебный.JSONВКонтактнуюИнформациюПоПолям(ЗначенияПолей, Перечисления.ТипыКонтактнойИнформации.Адрес);
НаселенныйПунктДетально = ПодготовитьАдресДляВвода(ДанныеАдреса); НаселенныйПунктДетально = ПодготовитьАдресДляВвода(ДанныеАдреса);
Иначе Иначе
XDTOКонтактная = ИзвлечьСтарыйФорматАдреса(ЗначенияПолей, ТипКонтактнойИнформации); XDTOКонтактная = ИзвлечьСтарыйФорматАдреса(ЗначенияПолей, ТипКонтактнойИнформации);
@@ -220,7 +220,7 @@
&НаСервереБезКонтекста &НаСервереБезКонтекста
Функция АдресСИсторией(ЗначенияПолей) Функция АдресСИсторией(ЗначенияПолей)
Возврат УправлениеКонтактнойИнформациейСлужебный.СтрокаJSONВСтруктуру(ЗначенияПолей); Возврат УправлениеКонтактнойИнформациейСлужебный.JSONВКонтактнуюИнформациюПоПолям(ЗначенияПолей, Перечисления.ТипыКонтактнойИнформации.Адрес);
КонецФункции КонецФункции
@@ -464,7 +464,7 @@
&НаСервереБезКонтекста &НаСервереБезКонтекста
Функция СтрокаJSONВСтруктуру(Значение) Функция СтрокаJSONВСтруктуру(Значение)
Возврат УправлениеКонтактнойИнформациейСлужебный.СтрокаJSONВСтруктуру(Значение); Возврат УправлениеКонтактнойИнформациейСлужебный.JSONВКонтактнуюИнформациюПоПолям(Значение, Перечисления.ТипыКонтактнойИнформации.Адрес);
КонецФункции КонецФункции
&НаКлиенте &НаКлиенте
@@ -57,7 +57,7 @@
Данные = УправлениеКонтактнойИнформацией.ОписаниеНовойКонтактнойИнформации(ТипКонтактнойИнформации); Данные = УправлениеКонтактнойИнформацией.ОписаниеНовойКонтактнойИнформации(ТипКонтактнойИнформации);
ЭтоНовый = Истина; ЭтоНовый = Истина;
ИначеЕсли УправлениеКонтактнойИнформациейКлиентСервер.ЭтоКонтактнаяИнформацияВJSON(ЗначенияПолей) Тогда ИначеЕсли УправлениеКонтактнойИнформациейКлиентСервер.ЭтоКонтактнаяИнформацияВJSON(ЗначенияПолей) Тогда
Данные = УправлениеКонтактнойИнформациейСлужебный.СтрокаJSONВСтруктуру(ЗначенияПолей); Данные = УправлениеКонтактнойИнформациейСлужебный.JSONВКонтактнуюИнформациюПоПолям(ЗначенияПолей, Перечисления.ТипыКонтактнойИнформации.Телефон);
Иначе Иначе
Если УправлениеКонтактнойИнформациейКлиентСервер.ЭтоКонтактнаяИнформацияВXML(ЗначенияПолей) Тогда Если УправлениеКонтактнойИнформациейКлиентСервер.ЭтоКонтактнаяИнформацияВXML(ЗначенияПолей) Тогда
@@ -28,7 +28,7 @@
Если ПустаяСтрока(ЗначенияПолей) Тогда Если ПустаяСтрока(ЗначенияПолей) Тогда
Данные = УправлениеКонтактнойИнформацией.ОписаниеНовойКонтактнойИнформации(ТипКонтактнойИнформации); Данные = УправлениеКонтактнойИнформацией.ОписаниеНовойКонтактнойИнформации(ТипКонтактнойИнформации);
ИначеЕсли УправлениеКонтактнойИнформациейКлиентСервер.ЭтоКонтактнаяИнформацияВJSON(ЗначенияПолей) Тогда ИначеЕсли УправлениеКонтактнойИнформациейКлиентСервер.ЭтоКонтактнаяИнформацияВJSON(ЗначенияПолей) Тогда
Данные = УправлениеКонтактнойИнформациейСлужебный.СтрокаJSONВСтруктуру(ЗначенияПолей); Данные = УправлениеКонтактнойИнформациейСлужебный.JSONВКонтактнуюИнформациюПоПолям(ЗначенияПолей, Перечисления.ТипыКонтактнойИнформации.ВебСтраница);
Иначе Иначе
Если УправлениеКонтактнойИнформациейКлиентСервер.ЭтоКонтактнаяИнформацияВXML(ЗначенияПолей) Тогда Если УправлениеКонтактнойИнформациейКлиентСервер.ЭтоКонтактнаяИнформацияВXML(ЗначенияПолей) Тогда
@@ -13,13 +13,11 @@
// Может быть коллекцией элементов, обладающих полем "Ссылка". // Может быть коллекцией элементов, обладающих полем "Ссылка".
// //
////////////////////////////////////////////////////////////////////////////////
// ФОРМА
#Область ОбработчикиСобытийФормы #Область ОбработчикиСобытийФормы
&НаСервере &НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
Если Параметры.Свойство("АвтоТест") Тогда Если Параметры.Свойство("АвтоТест") Тогда
Возврат; Возврат;
КонецЕсли; КонецЕсли;
@@ -48,16 +46,6 @@
ПараметрыДинамическогоСписка.ДинамическоеСчитываниеДанных = Истина; ПараметрыДинамическогоСписка.ДинамическоеСчитываниеДанных = Истина;
ОбщегоНазначения.УстановитьСвойстваДинамическогоСписка(Элементы.Список, ПараметрыДинамическогоСписка); ОбщегоНазначения.УстановитьСвойстваДинамическогоСписка(Элементы.Список, ПараметрыДинамическогоСписка);
Элементы.Добавить("СписокСсылкаНовый", Тип("ПолеФормы"), Элементы.СписокЭлемент).ПутьКДанным = "Список.Ссылка";
// Код можно добавлять только если он есть.
Если ВозможныйКодСсылки(ЦелевойЭлемент, Новый Соответствие) <> Неопределено Тогда
НоваяКолонка = Элементы.Добавить("СписокКодНовый", Тип("ПолеФормы"), Элементы.Список);
НоваяКолонка.ПутьКДанным = "Список.Код";
КонецЕсли;
Элементы["СписокСсылкаНовый"].Заголовок = НСтр("ru = 'Наименование'");
Элементы.Список.ИзменятьПорядокСтрок = Ложь; Элементы.Список.ИзменятьПорядокСтрок = Ложь;
Элементы.Список.ИзменятьСоставСтрок = Ложь; Элементы.Список.ИзменятьСоставСтрок = Ложь;
@@ -426,10 +426,9 @@
Функция ЗаголовокКолонки(НачалоПериода) Функция ЗаголовокКолонки(НачалоПериода)
Если Шаг = "Час" Тогда Если Шаг = "Час" Тогда
// Страна указана для вывода лидирующего нуля чтобы было не 1:30:25, а 01:30:25. ЗаголовокКолонки = Строка(Формат(НачалоПериода, "ДЛФ=T"));
ЗаголовокКолонки = Строка(Формат(НачалоПериода, "Л=ru_UA; ДЛФ=T"));
Иначе Иначе
ЗаголовокКолонки = Строка(Формат(НачалоПериода, "ДФ=dd.MM.yy")); ЗаголовокКолонки = Строка(Формат(НачалоПериода, "ДЛФ=D"));
КонецЕсли; КонецЕсли;
Возврат ЗаголовокКолонки; Возврат ЗаголовокКолонки;
@@ -1274,7 +1274,6 @@
<autoMaxHeight>true</autoMaxHeight> <autoMaxHeight>true</autoMaxHeight>
<wrap>true</wrap> <wrap>true</wrap>
<choiceListButton>false</choiceListButton> <choiceListButton>false</choiceListButton>
<choiceButtonRepresentation>ShowInDropList</choiceButtonRepresentation>
<listChoiceMode>true</listChoiceMode> <listChoiceMode>true</listChoiceMode>
<typeDomainEnabled>true</typeDomainEnabled> <typeDomainEnabled>true</typeDomainEnabled>
<textSize>Normal</textSize> <textSize>Normal</textSize>
@@ -1425,8 +1424,6 @@
<autoMaxWidth>true</autoMaxWidth> <autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight> <autoMaxHeight>true</autoMaxHeight>
<wrap>true</wrap> <wrap>true</wrap>
<choiceButton>true</choiceButton>
<choiceButtonRepresentation>ShowInDropList</choiceButtonRepresentation>
<quickChoice>true</quickChoice> <quickChoice>true</quickChoice>
<listChoiceMode>true</listChoiceMode> <listChoiceMode>true</listChoiceMode>
<typeDomainEnabled>true</typeDomainEnabled> <typeDomainEnabled>true</typeDomainEnabled>
@@ -1610,8 +1607,6 @@
<autoMaxWidth>true</autoMaxWidth> <autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight> <autoMaxHeight>true</autoMaxHeight>
<wrap>true</wrap> <wrap>true</wrap>
<choiceButton>true</choiceButton>
<choiceButtonRepresentation>ShowInDropList</choiceButtonRepresentation>
<quickChoice>true</quickChoice> <quickChoice>true</quickChoice>
<typeDomainEnabled>true</typeDomainEnabled> <typeDomainEnabled>true</typeDomainEnabled>
<textEdit>true</textEdit> <textEdit>true</textEdit>
@@ -72,7 +72,7 @@
НаселенныйПунктДетально = УправлениеКонтактнойИнформацией.ОписаниеНовойКонтактнойИнформации(Перечисления.ТипыКонтактнойИнформации.Адрес); // Новый адрес НаселенныйПунктДетально = УправлениеКонтактнойИнформацией.ОписаниеНовойКонтактнойИнформации(Перечисления.ТипыКонтактнойИнформации.Адрес); // Новый адрес
НаселенныйПунктДетально.AddressType = РаботаСАдресамиКлиентСервер.МуниципальныйАдрес(); НаселенныйПунктДетально.AddressType = РаботаСАдресамиКлиентСервер.МуниципальныйАдрес();
ИначеЕсли УправлениеКонтактнойИнформациейКлиентСервер.ЭтоКонтактнаяИнформацияВJSON(ЗначенияПолей) Тогда ИначеЕсли УправлениеКонтактнойИнформациейКлиентСервер.ЭтоКонтактнаяИнформацияВJSON(ЗначенияПолей) Тогда
ДанныеАдреса = УправлениеКонтактнойИнформациейСлужебный.СтрокаJSONВСтруктуру(ЗначенияПолей); ДанныеАдреса = УправлениеКонтактнойИнформациейСлужебный.JSONВКонтактнуюИнформациюПоПолям(ЗначенияПолей, Перечисления.ТипыКонтактнойИнформации.Адрес);
НаселенныйПунктДетально = РаботаСАдресами.ПодготовитьАдресДляВвода(ДанныеАдреса); НаселенныйПунктДетально = РаботаСАдресами.ПодготовитьАдресДляВвода(ДанныеАдреса);
Иначе Иначе
XDTOКонтактная = ИзвлечьСтарыйФорматАдреса(ЗначенияПолей, ТипКонтактнойИнформации); XDTOКонтактная = ИзвлечьСтарыйФорматАдреса(ЗначенияПолей, ТипКонтактнойИнформации);
@@ -872,7 +872,7 @@
&НаСервереБезКонтекста &НаСервереБезКонтекста
Функция АдресСИсторией(ЗначенияПолей) Функция АдресСИсторией(ЗначенияПолей)
Возврат УправлениеКонтактнойИнформациейСлужебный.СтрокаJSONВСтруктуру(ЗначенияПолей); Возврат УправлениеКонтактнойИнформациейСлужебный.JSONВКонтактнуюИнформациюПоПолям(ЗначенияПолей, Перечисления.ТипыКонтактнойИнформации.Адрес);
КонецФункции КонецФункции
@@ -960,9 +960,9 @@
КонецПроцедуры КонецПроцедуры
&НаСервереБезКонтекста &НаСервереБезКонтекста
Функция КонтактнаяИнформацияПоПредставлению(ПредставлениеАдреса, Комментарий = "", ВСтруктуру = Ложь) Функция КонтактнаяИнформацияПоПредставлению(ПредставлениеАдреса, Комментарий = "", РазбиватьНаПоля = Ложь)
Адрес = УправлениеКонтактнойИнформациейСлужебный.КонтактнаяИнформацияПоПредставлению(ПредставлениеАдреса, Перечисления.ТипыКонтактнойИнформации.Адрес, ВСтруктуру); Адрес = УправлениеКонтактнойИнформациейСлужебный.КонтактнаяИнформацияПоПредставлению(ПредставлениеАдреса, Перечисления.ТипыКонтактнойИнформации.Адрес, РазбиватьНаПоля);
Адрес.comment = Комментарий; Адрес.comment = Комментарий;
Возврат Адрес; Возврат Адрес;
@@ -1361,7 +1361,7 @@
Если РаботаСАдресамиКлиентСервер.ЭтоОсновнаяСтрана(Страна) Тогда Если РаботаСАдресамиКлиентСервер.ЭтоОсновнаяСтрана(Страна) Тогда
// Попытка восстановить адрес по полям из представления. // Попытка восстановить адрес по полям из представления.
НаселенныйПунктДетально = КонтактнаяИнформацияПоПредставлению(ПредставлениеАдреса, Комментарий); НаселенныйПунктДетально = КонтактнаяИнформацияПоПредставлению(ПредставлениеАдреса, Комментарий, Истина);
Иначе Иначе
УдалитьСтрануИзПредставления(); УдалитьСтрануИзПредставления();
@@ -1589,8 +1589,8 @@
Если ЗначениеЗаполнено(ЗначениеПолейДо)И ЗначениеЗаполнено(ЗначениеПолейПосле) Тогда Если ЗначениеЗаполнено(ЗначениеПолейДо)И ЗначениеЗаполнено(ЗначениеПолейПосле) Тогда
ЗначенияДо = УправлениеКонтактнойИнформациейСлужебный.СтрокаJSONВСтруктуру(ЗначениеПолейДо); ЗначенияДо = УправлениеКонтактнойИнформациейСлужебный.JSONВКонтактнуюИнформациюПоПолям(ЗначениеПолейДо, Перечисления.ТипыКонтактнойИнформации.Адрес);
ЗначенияПосле = УправлениеКонтактнойИнформациейСлужебный.СтрокаJSONВСтруктуру(ЗначениеПолейПосле); ЗначенияПосле = УправлениеКонтактнойИнформациейСлужебный.JSONВКонтактнуюИнформациюПоПолям(ЗначениеПолейПосле, Перечисления.ТипыКонтактнойИнформации.Адрес);
Если СтрСравнить(ЗначенияДо.value, ЗначенияПосле.value) <> 0 Если СтрСравнить(ЗначенияДо.value, ЗначенияПосле.value) <> 0
Или СтрСравнить(ЗначенияДо.country, ЗначенияПосле.country) <> 0 Или СтрСравнить(ЗначенияДо.country, ЗначенияПосле.country) <> 0
@@ -1660,7 +1660,7 @@
&НаСервереБезКонтекста &НаСервереБезКонтекста
Функция СтрокаJSONВСтруктуру(Значение) Функция СтрокаJSONВСтруктуру(Значение)
Возврат УправлениеКонтактнойИнформациейСлужебный.СтрокаJSONВСтруктуру(Значение); Возврат УправлениеКонтактнойИнформациейСлужебный.JSONВКонтактнуюИнформациюПоПолям(Значение, Перечисления.ТипыКонтактнойИнформации.Адрес);
КонецФункции КонецФункции
&НаКлиенте &НаКлиенте
@@ -2692,7 +2692,7 @@
Процедура НаселенныйПунктУстановитьПоляАдреса(НаселенныйПунктДетально, Знач ВыбранноеЗначение, Знач ВключатьУлица) Процедура НаселенныйПунктУстановитьПоляАдреса(НаселенныйПунктДетально, Знач ВыбранноеЗначение, Знач ВключатьУлица)
Если ВыбранноеЗначение.Свойство("Адрес") И ЗначениеЗаполнено(ВыбранноеЗначение.Адрес) Тогда Если ВыбранноеЗначение.Свойство("Адрес") И ЗначениеЗаполнено(ВыбранноеЗначение.Адрес) Тогда
ПолученныйАдрес = УправлениеКонтактнойИнформациейСлужебный.СтрокаJSONВСтруктуру(ВыбранноеЗначение.Адрес); ПолученныйАдрес = УправлениеКонтактнойИнформациейСлужебный.JSONВКонтактнуюИнформациюПоПолям(ВыбранноеЗначение.Адрес, Перечисления.ТипыКонтактнойИнформации.Адрес);
Иначе Иначе
ПолученныйАдрес = ОпределитьАдресПоИдентификатору(ВыбранноеЗначение); ПолученныйАдрес = ОпределитьАдресПоИдентификатору(ВыбранноеЗначение);
КонецЕсли; КонецЕсли;
@@ -1141,7 +1141,7 @@
Функция ОшибкиЗаполненияАдресаXDTO(Знач Адрес, ВидИнформации, РезультатГруппами = Ложь) Экспорт Функция ОшибкиЗаполненияАдресаXDTO(Знач Адрес, ВидИнформации, РезультатГруппами = Ложь) Экспорт
Если ТипЗнч(Адрес) = Тип("Строка") Тогда Если ТипЗнч(Адрес) = Тип("Строка") Тогда
Адрес = УправлениеКонтактнойИнформациейСлужебный.СтрокаJSONВСтруктуру(Адрес); Адрес = УправлениеКонтактнойИнформациейСлужебный.JSONВКонтактнуюИнформациюПоПолям(Адрес, Перечисления.ТипыКонтактнойИнформации.Адрес);
КонецЕсли; КонецЕсли;
Если ТипЗнч(Адрес) = Тип("ОбъектXDTO") Тогда Если ТипЗнч(Адрес) = Тип("ОбъектXDTO") Тогда
@@ -1226,7 +1226,7 @@
КонецЕсли; КонецЕсли;
ВсеОшибки = ОбщиеГруппыОшибокЗаполненияАдреса(Адрес, ФлагиПроверки); ВсеОшибки = ОбщиеГруппыОшибокЗаполненияАдреса(Адрес, ФлагиПроверки);
ПроверятьКлассификатор = Истина; ПроверятьКлассификатор = ВсеОшибки.Количество() = 0;
ОшибкиКлассификатора = Новый СписокЗначений; ОшибкиКлассификатора = Новый СписокЗначений;
Если ПроверятьКлассификатор И ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.АдресныйКлассификатор") Тогда Если ПроверятьКлассификатор И ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.АдресныйКлассификатор") Тогда
@@ -1335,7 +1335,7 @@
Регион = СокрЛП(ДанныеАдреса.Area + " " + ДанныеАдреса.AreaType); Регион = СокрЛП(ДанныеАдреса.Area + " " + ДанныеАдреса.AreaType);
Если ПустаяСтрока(Регион) Тогда Если ПустаяСтрока(Регион) Тогда
ДобавитьОшибкуЗаполненияАдреса(НеЗаполненыОбязательныеПоля, "СубъектРФ", ДобавитьОшибкуЗаполненияАдреса(НеЗаполненыОбязательныеПоля, "СубъектРФ",
НСтр("ru = 'Не указан регион.'"), "Регион"); НСтр("ru = 'Не указан регион адреса.'"), "Регион");
КонецЕсли; КонецЕсли;
// 3) Регион, Район, Город, НаселенныйПункт, Улица должны: // 3) Регион, Район, Город, НаселенныйПункт, Улица должны:
@@ -1350,7 +1350,7 @@
Поле = "СубъектРФ"; Поле = "СубъектРФ";
Если ПустаяСтрока(ДанныеАдреса.AreaType) Тогда Если ПустаяСтрока(ДанныеАдреса.AreaType) Тогда
ДобавитьОшибкуЗаполненияАдреса(НеУказаныСокращенияПолей, "СубъектРФ", ДобавитьОшибкуЗаполненияАдреса(НеУказаныСокращенияПолей, "СубъектРФ",
СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Не указано сокращение в названии региона ""%1"".'"), Регион), НСтр("ru = 'Регион'")); СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Для региона ""%1"" не указан тип (республика, область, город и пр.).'"), Регион), НСтр("ru = 'Регион'"));
КонецЕсли; КонецЕсли;
Если Не СтроковыеФункцииКлиентСерверРФ.ТолькоКириллицаВСтроке(Регион, Ложь, ДопустимоКромеКириллицы) Тогда Если Не СтроковыеФункцииКлиентСерверРФ.ТолькоКириллицаВСтроке(Регион, Ложь, ДопустимоКромеКириллицы) Тогда
ДобавитьОшибкуЗаполненияАдреса(НедопустимыеСимволыПолей, Поле, ДобавитьОшибкуЗаполненияАдреса(НедопустимыеСимволыПолей, Поле,
@@ -1364,7 +1364,7 @@
Поле = "Район"; Поле = "Район";
Если ПустаяСтрока(ДанныеАдреса.DistrictType) Тогда Если ПустаяСтрока(ДанныеАдреса.DistrictType) Тогда
ДобавитьОшибкуЗаполненияАдреса(НеУказаныСокращенияПолей, Поле, ДобавитьОшибкуЗаполненияАдреса(НеУказаныСокращенияПолей, Поле,
СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Не указано сокращение в названии района ""%1"".'"), Район), НСтр("ru = 'Район'")); СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Для района ""%1"" не указан тип (район, поселение и пр.).'"), Район), НСтр("ru = 'Район'"));
КонецЕсли; КонецЕсли;
Если Не СтроковыеФункцииКлиентСерверРФ.ТолькоКириллицаВСтроке(Район, Ложь, ДопустимоКромеКириллицы) Тогда Если Не СтроковыеФункцииКлиентСерверРФ.ТолькоКириллицаВСтроке(Район, Ложь, ДопустимоКромеКириллицы) Тогда
ДобавитьОшибкуЗаполненияАдреса(НедопустимыеСимволыПолей, Поле, ДобавитьОшибкуЗаполненияАдреса(НедопустимыеСимволыПолей, Поле,
@@ -1378,7 +1378,7 @@
Поле = "Город"; Поле = "Город";
Если ПустаяСтрока(ДанныеАдреса.CityType) Тогда Если ПустаяСтрока(ДанныеАдреса.CityType) Тогда
ДобавитьОшибкуЗаполненияАдреса(НеУказаныСокращенияПолей, Поле, ДобавитьОшибкуЗаполненияАдреса(НеУказаныСокращенияПолей, Поле,
СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Не указано сокращение в названии города ""%1"".'"), Город), НСтр("ru = 'Город'")); СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Для города ""%1"" не указан тип (город, поселок, сельское поселение и пр.).'"), Город), НСтр("ru = 'Город'"));
КонецЕсли; КонецЕсли;
Если Не СтроковыеФункцииКлиентСерверРФ.ТолькоКириллицаВСтроке(Город, Ложь, ДопустимоКромеКириллицы) Тогда Если Не СтроковыеФункцииКлиентСерверРФ.ТолькоКириллицаВСтроке(Город, Ложь, ДопустимоКромеКириллицы) Тогда
ДобавитьОшибкуЗаполненияАдреса(НедопустимыеСимволыПолей, Поле, ДобавитьОшибкуЗаполненияАдреса(НедопустимыеСимволыПолей, Поле,
@@ -1392,7 +1392,7 @@
Поле = "НаселПункт"; Поле = "НаселПункт";
Если ПустаяСтрока(ДанныеАдреса.LocalityType) Тогда Если ПустаяСтрока(ДанныеАдреса.LocalityType) Тогда
ДобавитьОшибкуЗаполненияАдреса(НеУказаныСокращенияПолей, Поле, ДобавитьОшибкуЗаполненияАдреса(НеУказаныСокращенияПолей, Поле,
СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Не указано сокращение в названии населенного пункта ""%1"".'"), НаселенныйПункт), СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Для населенного пункта ""%1"" не указан тип (город, деревня, село и пр.).'"), НаселенныйПункт),
НСтр("ru = 'Населенный пункт'")); НСтр("ru = 'Населенный пункт'"));
КонецЕсли; КонецЕсли;
Если Не СтроковыеФункцииКлиентСерверРФ.ТолькоКириллицаВСтроке(НаселенныйПункт, Ложь, ДопустимоКромеКириллицы) Тогда Если Не СтроковыеФункцииКлиентСерверРФ.ТолькоКириллицаВСтроке(НаселенныйПункт, Ложь, ДопустимоКромеКириллицы) Тогда
@@ -1408,7 +1408,7 @@
Поле = "Улица"; Поле = "Улица";
Если ПустаяСтрока(ДанныеАдреса.StreetType) Тогда Если ПустаяСтрока(ДанныеАдреса.StreetType) Тогда
ДобавитьОшибкуЗаполненияАдреса(НеУказаныСокращенияПолей, Поле, ДобавитьОшибкуЗаполненияАдреса(НеУказаныСокращенияПолей, Поле,
СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Не указано сокращение в названии улицы ""%1"".'"), Улица), НСтр("ru = 'Улица'")); СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Для улицы ""%1"" не указан тип (улица, переулок, шоссе и пр.).'"), Улица), НСтр("ru = 'Улица'"));
КонецЕсли; КонецЕсли;
Если Не СтроковыеФункцииКлиентСерверРФ.ТолькоКириллицаВСтроке(Улица, Ложь, ДопустимоКромеКириллицы) Тогда Если Не СтроковыеФункцииКлиентСерверРФ.ТолькоКириллицаВСтроке(Улица, Ложь, ДопустимоКромеКириллицы) Тогда
ДобавитьОшибкуЗаполненияАдреса(НедопустимыеСимволыПолей, Поле, ДобавитьОшибкуЗаполненияАдреса(НедопустимыеСимволыПолей, Поле,
@@ -1428,7 +1428,7 @@
// 6) Поля Город и НаселенныйПункт могут быть одновременно пустые только в регионе - городе ФЗ. // 6) Поля Город и НаселенныйПункт могут быть одновременно пустые только в регионе - городе ФЗ.
Если ПустаяСтрока(Город) И ПустаяСтрока(НаселенныйПункт) И ПустаяСтрока(Район) Тогда Если ПустаяСтрока(Город) И ПустаяСтрока(НаселенныйПункт) И ПустаяСтрока(Район) Тогда
Если НазванияГородовФедеральногоЗначения()[ВРег(Регион)] = Неопределено Тогда Если РаботаСАдресами.ЭтоГородФедеральногоЗначения(Регион) = Ложь Тогда
ДобавитьОшибкуЗаполненияАдреса(НеЗаполненыОбязательныеПоля, "Город", ДобавитьОшибкуЗаполненияАдреса(НеЗаполненыОбязательныеПоля, "Город",
НСтр("ru = 'Город может быть не указан только в регионе - городе федерального значения.'"), НСтр("ru = 'Город может быть не указан только в регионе - городе федерального значения.'"),
НСтр("ru = 'Город'")); НСтр("ru = 'Город'"));
@@ -1505,18 +1505,6 @@
КонецПроцедуры КонецПроцедуры
// Возвращает массив наименований регионов - городов федерального значения.
Функция НазванияГородовФедеральногоЗначения()
Результат = Новый Соответствие;
Результат.Вставить("МОСКВА Г", Истина);
Результат.Вставить("САНКТ-ПЕТЕРБУРГ Г", Истина);
Результат.Вставить("СЕВАСТОПОЛЬ Г", Истина);
Результат.Вставить("БАЙКОНУР Г", Истина);
Возврат Результат;
КонецФункции
Функция СтруктураОшибкиПоставщикаАдресногоКлассификатора(ИсходнаяСтруктура = Неопределено) Функция СтруктураОшибкиПоставщикаАдресногоКлассификатора(ИсходнаяСтруктура = Неопределено)
Если ИсходнаяСтруктура = Неопределено Тогда Если ИсходнаяСтруктура = Неопределено Тогда
@@ -136,7 +136,8 @@
Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ОбновлениеКонфигурации") Тогда Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ОбновлениеКонфигурации") Тогда
МодульОбновлениеКонфигурации = ОбщегоНазначения.ОбщийМодуль("ОбновлениеКонфигурации"); МодульОбновлениеКонфигурации = ОбщегоНазначения.ОбщийМодуль("ОбновлениеКонфигурации");
Если МодульОбновлениеКонфигурации.ИсправленияИзменены() Тогда Результат = МодульОбновлениеКонфигурации.ИсправленияИзменены();
Если Результат.ЕстьИзменения Тогда
Возврат "ТребуетсяПерезапускСеанса"; Возврат "ТребуетсяПерезапускСеанса";
КонецЕсли; КонецЕсли;
КонецЕсли; КонецЕсли;
@@ -56,7 +56,7 @@
<value>Источник текста</value> <value>Источник текста</value>
</synonym> </synonym>
<type> <type>
<types>CatalogRef</types> <types>DefinedType.ПрисоединенныйФайл</types>
</type> </type>
<toolTip> <toolTip>
<key>ru</key> <key>ru</key>
@@ -3645,93 +3645,6 @@
<value>true</value> <value>true</value>
</right> </right>
</object> </object>
<object>
<name>Configuration.БиблиотекаСтандартныхПодсистем</name>
<right>
<name>Administration</name>
<value>true</value>
</right>
<right>
<name>DataAdministration</name>
<value>true</value>
</right>
<right>
<name>UpdateDataBaseConfiguration</name>
<value>true</value>
</right>
<right>
<name>ExclusiveMode</name>
<value>true</value>
</right>
<right>
<name>ActiveUsers</name>
<value>true</value>
</right>
<right>
<name>EventLog</name>
<value>true</value>
</right>
<right>
<name>ThinClient</name>
<value>true</value>
</right>
<right>
<name>WebClient</name>
<value>true</value>
</right>
<right>
<name>ThickClient</name>
<value>true</value>
</right>
<right>
<name>ExternalConnection</name>
<value>true</value>
</right>
<right>
<name>Automation</name>
<value>true</value>
</right>
<right>
<name>TechnicalSpecialistMode</name>
<value>true</value>
</right>
<right>
<name>MainWindowModeNormal</name>
<value>true</value>
</right>
<right>
<name>MainWindowModeWorkplace</name>
<value>true</value>
</right>
<right>
<name>MainWindowModeEmbeddedWorkplace</name>
<value>true</value>
</right>
<right>
<name>MainWindowModeFullscreenWorkplace</name>
<value>true</value>
</right>
<right>
<name>MainWindowModeKiosk</name>
<value>true</value>
</right>
<right>
<name>AnalyticsSystemClient</name>
<value>true</value>
</right>
<right>
<name>SaveUserData</name>
<value>true</value>
</right>
<right>
<name>ConfigurationExtensionsAdministration</name>
<value>true</value>
</right>
<right>
<name>Output</name>
<value>true</value>
</right>
</object>
<object> <object>
<name>Constant.НеИспользоватьРазделениеПоОбластямДанных</name> <name>Constant.НеИспользоватьРазделениеПоОбластямДанных</name>
<right> <right>
@@ -5443,6 +5356,93 @@
<value>true</value> <value>true</value>
</right> </right>
</object> </object>
<object>
<name>Configuration.БиблиотекаСтандартныхПодсистем</name>
<right>
<name>Administration</name>
<value>true</value>
</right>
<right>
<name>DataAdministration</name>
<value>true</value>
</right>
<right>
<name>UpdateDataBaseConfiguration</name>
<value>true</value>
</right>
<right>
<name>ExclusiveMode</name>
<value>true</value>
</right>
<right>
<name>ActiveUsers</name>
<value>true</value>
</right>
<right>
<name>EventLog</name>
<value>true</value>
</right>
<right>
<name>ThinClient</name>
<value>true</value>
</right>
<right>
<name>WebClient</name>
<value>true</value>
</right>
<right>
<name>ThickClient</name>
<value>true</value>
</right>
<right>
<name>ExternalConnection</name>
<value>true</value>
</right>
<right>
<name>Automation</name>
<value>true</value>
</right>
<right>
<name>TechnicalSpecialistMode</name>
<value>true</value>
</right>
<right>
<name>MainWindowModeNormal</name>
<value>true</value>
</right>
<right>
<name>MainWindowModeWorkplace</name>
<value>true</value>
</right>
<right>
<name>MainWindowModeEmbeddedWorkplace</name>
<value>true</value>
</right>
<right>
<name>MainWindowModeFullscreenWorkplace</name>
<value>true</value>
</right>
<right>
<name>MainWindowModeKiosk</name>
<value>true</value>
</right>
<right>
<name>AnalyticsSystemClient</name>
<value>true</value>
</right>
<right>
<name>SaveUserData</name>
<value>true</value>
</right>
<right>
<name>ConfigurationExtensionsAdministration</name>
<value>true</value>
</right>
<right>
<name>Output</name>
<value>true</value>
</right>
</object>
<object> <object>
<name>InformationRegister.ЗамерыОперацииСтатистики</name> <name>InformationRegister.ЗамерыОперацииСтатистики</name>
<right> <right>
@@ -4905,45 +4905,6 @@
<value>false</value> <value>false</value>
</right> </right>
</object> </object>
<object>
<name>Configuration.БиблиотекаСтандартныхПодсистем</name>
<right>
<name>Administration</name>
<value>false</value>
</right>
<right>
<name>UpdateDataBaseConfiguration</name>
<value>false</value>
</right>
<right>
<name>ThickClient</name>
<value>false</value>
</right>
<right>
<name>ExternalConnection</name>
<value>false</value>
</right>
<right>
<name>Automation</name>
<value>false</value>
</right>
<right>
<name>TechnicalSpecialistMode</name>
<value>false</value>
</right>
<right>
<name>ConfigurationExtensionsAdministration</name>
<value>false</value>
</right>
<right>
<name>InteractiveOpenExtDataProcessors</name>
<value>false</value>
</right>
<right>
<name>InteractiveOpenExtReports</name>
<value>false</value>
</right>
</object>
<object> <object>
<name>Constant.НеИспользоватьРазделениеПоОбластямДанных</name> <name>Constant.НеИспользоватьРазделениеПоОбластямДанных</name>
<right> <right>
@@ -7072,6 +7033,45 @@
<value>false</value> <value>false</value>
</right> </right>
</object> </object>
<object>
<name>Configuration.БиблиотекаСтандартныхПодсистем</name>
<right>
<name>Administration</name>
<value>false</value>
</right>
<right>
<name>UpdateDataBaseConfiguration</name>
<value>false</value>
</right>
<right>
<name>ThickClient</name>
<value>false</value>
</right>
<right>
<name>ExternalConnection</name>
<value>false</value>
</right>
<right>
<name>Automation</name>
<value>false</value>
</right>
<right>
<name>TechnicalSpecialistMode</name>
<value>false</value>
</right>
<right>
<name>ConfigurationExtensionsAdministration</name>
<value>false</value>
</right>
<right>
<name>InteractiveOpenExtDataProcessors</name>
<value>false</value>
</right>
<right>
<name>InteractiveOpenExtReports</name>
<value>false</value>
</right>
</object>
<object> <object>
<name>InformationRegister.ЗамерыОперацииСтатистики</name> <name>InformationRegister.ЗамерыОперацииСтатистики</name>
<right> <right>
@@ -3,6 +3,13 @@
<setForNewObjects>false</setForNewObjects> <setForNewObjects>false</setForNewObjects>
<setForAttributesByDefault>true</setForAttributesByDefault> <setForAttributesByDefault>true</setForAttributesByDefault>
<independentRightsOfChildObjects>false</independentRightsOfChildObjects> <independentRightsOfChildObjects>false</independentRightsOfChildObjects>
<object>
<name>DataProcessor.ЖурналРегистрации.Command.ЖурналРегистрации</name>
<right>
<name>View</name>
<value>true</value>
</right>
</object>
<object> <object>
<name>Configuration.БиблиотекаСтандартныхПодсистем</name> <name>Configuration.БиблиотекаСтандартныхПодсистем</name>
<right> <right>
@@ -34,13 +41,6 @@
<value>true</value> <value>true</value>
</right> </right>
</object> </object>
<object>
<name>DataProcessor.ЖурналРегистрации.Command.ЖурналРегистрации</name>
<right>
<name>View</name>
<value>true</value>
</right>
</object>
<object> <object>
<name>DataProcessor.ЖурналРегистрации</name> <name>DataProcessor.ЖурналРегистрации</name>
<right> <right>