Compare commits
1 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| bc4fa20480 |
@@ -730,6 +730,88 @@
|
||||
<FullTextSearch>Use</FullTextSearch>
|
||||
</Properties>
|
||||
</Attribute>
|
||||
<Attribute uuid="e59b3a77-4101-4e10-addd-6cd0dc322c7e">
|
||||
<Properties>
|
||||
<Name>Партия</Name>
|
||||
<Synonym>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
<v8:content>Партия</v8:content>
|
||||
</v8:item>
|
||||
</Synonym>
|
||||
<Comment/>
|
||||
<Type>
|
||||
<v8:TypeSet>cfg:DefinedType.ДокументПартии</v8:TypeSet>
|
||||
</Type>
|
||||
<PasswordMode>false</PasswordMode>
|
||||
<Format/>
|
||||
<EditFormat/>
|
||||
<ToolTip>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
<v8:content>Партия номенклатуры</v8:content>
|
||||
</v8:item>
|
||||
</ToolTip>
|
||||
<MarkNegatives>false</MarkNegatives>
|
||||
<Mask/>
|
||||
<MultiLine>false</MultiLine>
|
||||
<ExtendedEdit>false</ExtendedEdit>
|
||||
<MinValue xsi:nil="true"/>
|
||||
<MaxValue xsi:nil="true"/>
|
||||
<FillChecking>DontCheck</FillChecking>
|
||||
<ChoiceFoldersAndItems>Items</ChoiceFoldersAndItems>
|
||||
<ChoiceParameterLinks/>
|
||||
<ChoiceParameters/>
|
||||
<QuickChoice>Auto</QuickChoice>
|
||||
<CreateOnInput>Auto</CreateOnInput>
|
||||
<ChoiceForm/>
|
||||
<LinkByType/>
|
||||
<ChoiceHistoryOnInput>Auto</ChoiceHistoryOnInput>
|
||||
<Indexing>Index</Indexing>
|
||||
<FullTextSearch>Use</FullTextSearch>
|
||||
</Properties>
|
||||
</Attribute>
|
||||
<Attribute uuid="989932dc-5e32-4986-a0dc-b3bfb666a0bd">
|
||||
<Properties>
|
||||
<Name>АналитикаУчетаПартий</Name>
|
||||
<Synonym>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
<v8:content>Аналитика учета партий</v8:content>
|
||||
</v8:item>
|
||||
</Synonym>
|
||||
<Comment/>
|
||||
<Type>
|
||||
<v8:Type>cfg:CatalogRef.КлючиАналитикиУчетаПартий</v8:Type>
|
||||
</Type>
|
||||
<PasswordMode>false</PasswordMode>
|
||||
<Format/>
|
||||
<EditFormat/>
|
||||
<ToolTip>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
<v8:content>Аналитика учета партии номенклатуры</v8:content>
|
||||
</v8:item>
|
||||
</ToolTip>
|
||||
<MarkNegatives>false</MarkNegatives>
|
||||
<Mask/>
|
||||
<MultiLine>false</MultiLine>
|
||||
<ExtendedEdit>false</ExtendedEdit>
|
||||
<MinValue xsi:nil="true"/>
|
||||
<MaxValue xsi:nil="true"/>
|
||||
<FillChecking>DontCheck</FillChecking>
|
||||
<ChoiceFoldersAndItems>Items</ChoiceFoldersAndItems>
|
||||
<ChoiceParameterLinks/>
|
||||
<ChoiceParameters/>
|
||||
<QuickChoice>Auto</QuickChoice>
|
||||
<CreateOnInput>Auto</CreateOnInput>
|
||||
<ChoiceForm/>
|
||||
<LinkByType/>
|
||||
<ChoiceHistoryOnInput>Auto</ChoiceHistoryOnInput>
|
||||
<Indexing>DontIndex</Indexing>
|
||||
<FullTextSearch>Use</FullTextSearch>
|
||||
</Properties>
|
||||
</Attribute>
|
||||
<Dimension uuid="fe5fe4ed-345b-46fb-87d4-3f028aebc54b">
|
||||
<Properties>
|
||||
<Name>Организация</Name>
|
||||
|
||||
@@ -860,7 +860,7 @@
|
||||
Обработчик.Многопоточный = Истина;
|
||||
Обработчик.ПроцедураЗаполненияДанныхОбновления = "РегистрыНакопления.РаспоряженияНаОтгрузкуИВозврат.ЗарегистрироватьДанныеАктуальныхДокументов";
|
||||
Обработчик.ПроцедураПроверки = "РегистрыНакопления.РаспоряженияНаОтгрузкуИВозврат.ДанныеОбновленыНаНовуюВерсиюПрограммы";
|
||||
Обработчик.Порядок = Перечисления.ПорядокОбработчиковОбновления.Обычный;
|
||||
Обработчик.Порядок = Перечисления.ПорядокОбработчиковОбновления.Критичный;
|
||||
Обработчик.Комментарий = НСтр("ru = 'Заполнение регистра накопления ""Распоряжения на отгрузку и возврат"" для актуальных (незакрытых) распоряжений:
|
||||
|- перенос движений из регистра накопления ""Распоряжения на отгрузку""
|
||||
|- формирование движений по показателям
|
||||
@@ -936,7 +936,7 @@
|
||||
Обработчик.Многопоточный = Истина;
|
||||
Обработчик.ПроцедураЗаполненияДанныхОбновления = "РегистрыНакопления.РаспоряженияНаОтгрузкуИВозврат.ЗарегистрироватьДанныеДокументовЗаявкаНаВозврат";
|
||||
Обработчик.ПроцедураПроверки = "РегистрыНакопления.РаспоряженияНаОтгрузкуИВозврат.ДанныеОбновленыНаНовуюВерсиюПрограммы";
|
||||
Обработчик.Порядок = Перечисления.ПорядокОбработчиковОбновления.Обычный;
|
||||
Обработчик.Порядок = Перечисления.ПорядокОбработчиковОбновления.Критичный;
|
||||
Обработчик.Комментарий = НСтр("ru = 'Заполнение регистра накопления ""Распоряжения на отгрузку и возврат"" для документов возврата:
|
||||
|- перенос движений из регистра накопления ""Заявки на возврат товаров от клиентов""
|
||||
|- формирование движений по показателям
|
||||
@@ -982,7 +982,6 @@
|
||||
НоваяСтрока.Процедура = "РегистрыНакопления.РаспоряженияНаОтгрузкуИВозврат.УАС_ОбработатьДанныеДокументовРозничнойПродажи";
|
||||
НоваяСтрока.Порядок = "До";
|
||||
// УАС - конец
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
#Область ОбработкаАктуальныхДокументовСторно
|
||||
@@ -995,7 +994,7 @@
|
||||
Обработчик.Многопоточный = Истина;
|
||||
Обработчик.ПроцедураЗаполненияДанныхОбновления = "РегистрыНакопления.РаспоряженияНаОтгрузкуИВозврат.ЗарегистрироватьДанныеАктуальныхДокументовСторно";
|
||||
Обработчик.ПроцедураПроверки = "РегистрыНакопления.РаспоряженияНаОтгрузкуИВозврат.ДанныеОбновленыНаНовуюВерсиюПрограммы";
|
||||
Обработчик.Порядок = Перечисления.ПорядокОбработчиковОбновления.Обычный;
|
||||
Обработчик.Порядок = Перечисления.ПорядокОбработчиковОбновления.Критичный;
|
||||
Обработчик.Комментарий = НСтр("ru = 'Заполнение регистра накопления ""Распоряжения на отгрузку и возврат"" для актуальных документов Сторно'");
|
||||
|
||||
Читаемые = Новый Массив;
|
||||
@@ -1036,7 +1035,6 @@
|
||||
НоваяСтрока.Процедура = "РегистрыНакопления.РаспоряженияНаОтгрузкуИВозврат.УАС_ОбработатьДанныеДокументовРозничнойПродажи";
|
||||
НоваяСтрока.Порядок = "До";
|
||||
// УАС - конец
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
#Область ОбработкаНеактуальныхДокументов
|
||||
@@ -1110,7 +1108,6 @@
|
||||
НоваяСтрока.Процедура = "РегистрыНакопления.РаспоряженияНаОтгрузкуИВозврат.УАС_ОбработатьДанныеДокументовРозничнойПродажи";
|
||||
НоваяСтрока.Порядок = "До";
|
||||
// УАС - конец
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
#Область ОбработкаНеактуальныхДокументовСторно
|
||||
@@ -1164,7 +1161,6 @@
|
||||
НоваяСтрока.Процедура = "РегистрыНакопления.РаспоряженияНаОтгрузкуИВозврат.УАС_ОбработатьДанныеДокументовРозничнойПродажи";
|
||||
НоваяСтрока.Порядок = "До";
|
||||
// УАС - конец
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
// УАС - начало
|
||||
@@ -1215,7 +1211,6 @@
|
||||
НоваяСтрока.Процедура = "РегистрыНакопления.РаспоряженияНаОтгрузкуИВозврат.ОбработатьДанныеНеактуальныхДокументовСторно";
|
||||
НоваяСтрока.Порядок = "После";
|
||||
// УАС - конец
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
// Отмечает порцию данных для обработки.
|
||||
@@ -1326,19 +1321,11 @@
|
||||
| ТаблицаОтраженныеРегистраторы.Регистратор
|
||||
| ИЗ
|
||||
| ТаблицаОтраженныеРегистраторы КАК ТаблицаОтраженныеРегистраторы)
|
||||
| И (Таблица.Распоряжение В
|
||||
| И Таблица.Распоряжение В
|
||||
| (ВЫБРАТЬ
|
||||
| ТаблицаАктуальныеРаспоряжения.Распоряжение
|
||||
| ИЗ
|
||||
| ТаблицаАктуальныеРаспоряжения КАК ТаблицаАктуальныеРаспоряжения)
|
||||
| ИЛИ ТИПЗНАЧЕНИЯ(Таблица.Распоряжение) = ТИП(Документ.ЗаказКлиента)
|
||||
| И ВЫРАЗИТЬ(Таблица.Распоряжение КАК
|
||||
| Документ.ЗаказКлиента).Статус <> ЗНАЧЕНИЕ(Перечисление.СтатусыЗаказовКлиентов.Закрыт)
|
||||
| ИЛИ ТИПЗНАЧЕНИЯ(Таблица.Распоряжение) = ТИП(Документ.ЗаявкаНаВозвратТоваровОтКлиента)
|
||||
| И НЕ ВЫРАЗИТЬ(Таблица.Распоряжение КАК
|
||||
| Документ.ЗаявкаНаВозвратТоваровОтКлиента).Статус В (
|
||||
| ЗНАЧЕНИЕ(Перечисление.СтатусыЗаявокНаВозвратТоваровОтКлиентов.Выполнена),
|
||||
| ЗНАЧЕНИЕ(Перечисление.СтатусыЗаявокНаВозвратТоваровОтКлиентов.Отклонена)))";
|
||||
| ТаблицаАктуальныеРаспоряжения КАК ТаблицаАктуальныеРаспоряжения)";
|
||||
|
||||
Выборка = Запрос.Выполнить().Выбрать();
|
||||
|
||||
@@ -1449,14 +1436,11 @@
|
||||
| ТаблицаОтраженныеРегистраторы.Регистратор
|
||||
| ИЗ
|
||||
| ТаблицаОтраженныеРегистраторы КАК ТаблицаОтраженныеРегистраторы)
|
||||
| И (Таблица.Распоряжение В
|
||||
| И Таблица.Распоряжение В
|
||||
| (ВЫБРАТЬ
|
||||
| ТаблицаАктуальныеРаспоряжения.Распоряжение
|
||||
| ИЗ
|
||||
| ТаблицаАктуальныеРаспоряжения КАК ТаблицаАктуальныеРаспоряжения)
|
||||
| ИЛИ ТИПЗНАЧЕНИЯ(Таблица.Распоряжение) = ТИП(Документ.ЗаказКлиента)
|
||||
| И ВЫРАЗИТЬ(Таблица.Распоряжение КАК
|
||||
| Документ.ЗаказКлиента).Статус <> ЗНАЧЕНИЕ(Перечисление.СтатусыЗаказовКлиентов.Закрыт))
|
||||
|
|
||||
|ОБЪЕДИНИТЬ
|
||||
|
|
||||
@@ -1541,15 +1525,7 @@
|
||||
| (ВЫБРАТЬ
|
||||
| ТаблицаАктуальныеРаспоряжения.Распоряжение
|
||||
| ИЗ
|
||||
| ТаблицаАктуальныеРаспоряжения КАК ТаблицаАктуальныеРаспоряжения)
|
||||
| И НЕ (ТИПЗНАЧЕНИЯ(Таблица.Распоряжение) = ТИП(Документ.ЗаказКлиента)
|
||||
| И ВЫРАЗИТЬ(Таблица.Распоряжение КАК
|
||||
| Документ.ЗаказКлиента).Статус <> ЗНАЧЕНИЕ(Перечисление.СтатусыЗаказовКлиентов.Закрыт))
|
||||
| И НЕ (ТИПЗНАЧЕНИЯ(Таблица.Распоряжение) = ТИП(Документ.ЗаявкаНаВозвратТоваровОтКлиента)
|
||||
| И НЕ ВЫРАЗИТЬ(Таблица.Распоряжение КАК
|
||||
| Документ.ЗаявкаНаВозвратТоваровОтКлиента).Статус В (
|
||||
| ЗНАЧЕНИЕ(Перечисление.СтатусыЗаявокНаВозвратТоваровОтКлиентов.Выполнена),
|
||||
| ЗНАЧЕНИЕ(Перечисление.СтатусыЗаявокНаВозвратТоваровОтКлиентов.Отклонена)))";
|
||||
| ТаблицаАктуальныеРаспоряжения КАК ТаблицаАктуальныеРаспоряжения)";
|
||||
|
||||
Выборка = Запрос.Выполнить().Выбрать();
|
||||
|
||||
@@ -1616,10 +1592,7 @@
|
||||
| (ВЫБРАТЬ
|
||||
| ТаблицаАктуальныеРаспоряжения.Распоряжение
|
||||
| ИЗ
|
||||
| ТаблицаАктуальныеРаспоряжения КАК ТаблицаАктуальныеРаспоряжения)
|
||||
| И НЕ (ТИПЗНАЧЕНИЯ(Таблица.Распоряжение) = ТИП(Документ.ЗаказКлиента)
|
||||
| И ВЫРАЗИТЬ(Таблица.Распоряжение КАК
|
||||
| Документ.ЗаказКлиента).Статус <> ЗНАЧЕНИЕ(Перечисление.СтатусыЗаказовКлиентов.Закрыт))";
|
||||
| ТаблицаАктуальныеРаспоряжения КАК ТаблицаАктуальныеРаспоряжения)";
|
||||
|
||||
Выборка = Запрос.Выполнить().Выбрать();
|
||||
|
||||
|
||||
@@ -10,6 +10,12 @@
|
||||
ЭлементОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.ВСписке;
|
||||
ЭлементОтбора.ПравоеЗначение = ЭлектронныеДокументыЭДО.ВидыДокументовДляПроизвольногоФормата();
|
||||
ЭлементОтбора.Использование = Истина;
|
||||
ИначеЕсли ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(Параметры, "ВыборОграниченийМЧД", Ложь) Тогда
|
||||
ЭлементОтбора = Список.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
|
||||
ЭлементОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Ссылка");
|
||||
ЭлементОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.ВСписке;
|
||||
ЭлементОтбора.ПравоеЗначение = ЭлектронныеДокументыЭДО.ВидыДокументовСПодписью();
|
||||
ЭлементОтбора.Использование = Истина;
|
||||
КонецЕсли;
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
@@ -28,6 +28,10 @@
|
||||
Элемент.ИмяПредопределенныхДанных = "НДС";
|
||||
МультиязычностьСервер.ЗаполнитьМультиязычныйРеквизит(Элемент, "Наименование", "ru = 'НДС'", КодыЯзыков);// @НСтр-2
|
||||
|
||||
Элемент = Элементы.Добавить();
|
||||
Элемент.ИмяПредопределенныхДанных = "Акцизы";
|
||||
МультиязычностьСервер.ЗаполнитьМультиязычныйРеквизит(Элемент, "Наименование", "ru = 'Акцизы'", КодыЯзыков);// @НСтр-2
|
||||
|
||||
ВидыНалоговВзносовЛокализация.ПриНачальномЗаполненииЭлементов(КодыЯзыков, Элементы, ТабличныеЧасти);
|
||||
|
||||
КонецПроцедуры
|
||||
@@ -122,6 +126,8 @@
|
||||
Наименование = "ru = 'НДС при импорте товаров из ЕАЭС'"; // @НСтр-1
|
||||
ИначеЕсли ИмяПредопределенного = "НДС_НалоговыйАгент" Тогда
|
||||
Наименование = "ru = 'НДС при исполнении обязанностей налогового агента'"; // @НСтр-1
|
||||
ИначеЕсли ИмяПредопределенного = "Акцизы" Тогда
|
||||
Наименование = "ru = 'Акцизы'"; // @НСтр-1
|
||||
КонецЕсли;
|
||||
Если ПустаяСтрока(Наименование) Тогда
|
||||
Наименование = Перечисления.УдалитьТипыНалогов.НаименованиеПредопределенногоЭлемента(ИмяПредопределенного);
|
||||
|
||||
@@ -2987,6 +2987,7 @@
|
||||
|
||||
&НаСервере
|
||||
Процедура НастроитьФорму()
|
||||
|
||||
ТолькоПросмотр = Не ЕстьПравоРедактирования;
|
||||
|
||||
ЗаполняемыйОбъект = Объект;
|
||||
@@ -3586,15 +3587,22 @@
|
||||
#Область ДопРеквизитыИДопСведения
|
||||
Элементы.СтраницаДопРеквизиты.Видимость = ИспользоватьДополнительныеРеквизитыИСведения;
|
||||
Элементы.СтраницаДопСведения.Видимость = ИспользоватьДополнительныеРеквизитыИСведения;
|
||||
Элементы.НоменклатураГруппаСоздатьРеквизиты.Видимость = ЕстьПравоРедактирования;
|
||||
Элементы.ХарактеристикиГруппаСоздатьРеквизиты.Видимость = ЕстьПравоРедактирования;
|
||||
Элементы.СерииГруппаСоздатьРеквизиты.Видимость = ЕстьПравоРедактирования;
|
||||
Элементы.НоменклатураГруппаСоздатьСведения.Видимость = ЕстьПравоРедактирования;
|
||||
Элементы.ХарактеристикиГруппаСоздатьСведения.Видимость = ЕстьПравоРедактирования;
|
||||
Элементы.СерииГруппаСоздатьСведения.Видимость = ЕстьПравоРедактирования;
|
||||
|
||||
ЕстьПравоДобавленияРеквизитов = ПравоДоступа("Добавление", Метаданные.ПланыВидовХарактеристик.ДополнительныеРеквизитыИСведения);
|
||||
Элементы.РеквизитыДляКонтроляНоменклатурыПредставлениеРеквизитаГиперссылка.ГиперссылкаЯчейки = ЕстьПравоРедактирования;
|
||||
Элементы.РеквизитыДляКонтроляХарактеристикПредставлениеРеквизитаГиперссылка.ГиперссылкаЯчейки = ЕстьПравоРедактирования;
|
||||
Элементы.РеквизитыДляКонтроляСерийПредставлениеРеквизитаГиперссылка.ГиперссылкаЯчейки = ЕстьПравоРедактирования;
|
||||
|
||||
Элементы.НоменклатураГруппаСоздатьРеквизиты.Видимость = ЕстьПравоДобавленияРеквизитов;
|
||||
Элементы.ХарактеристикиГруппаСоздатьРеквизиты.Видимость = ЕстьПравоДобавленияРеквизитов;
|
||||
Элементы.СерииГруппаСоздатьРеквизиты.Видимость = ЕстьПравоДобавленияРеквизитов;
|
||||
Элементы.НоменклатураГруппаСоздатьСведения.Видимость = ЕстьПравоДобавленияРеквизитов;
|
||||
Элементы.ХарактеристикиГруппаСоздатьСведения.Видимость = ЕстьПравоДобавленияРеквизитов;
|
||||
Элементы.СерииГруппаСоздатьСведения.Видимость = ЕстьПравоДобавленияРеквизитов;
|
||||
Элементы.РеквизитыДляКонтроляНоменклатурыВиденСУсловием.ГиперссылкаЯчейки = ЕстьПравоРедактирования;
|
||||
Элементы.РеквизитыДляКонтроляХарактеристикВиденСУсловием.ГиперссылкаЯчейки = ЕстьПравоРедактирования;
|
||||
|
||||
Элементы.РеквизитыДляКонтроляНоменклатурыДоступенСУсловием.ГиперссылкаЯчейки = ЕстьПравоРедактирования;
|
||||
Элементы.РеквизитыДляКонтроляХарактеристикДоступенСУсловием.ГиперссылкаЯчейки = ЕстьПравоРедактирования;
|
||||
#КонецОбласти
|
||||
|
||||
#Область КонтролироватьУникальность
|
||||
@@ -6564,11 +6572,13 @@
|
||||
Запись.КоличествоВПотребительскойУпаковке = 1;
|
||||
КонецЕсли;
|
||||
Запись.КлючВидовПродукции = КлючВидовПродукции;
|
||||
УстановитьПривилегированныйРежим(Истина);
|
||||
Если ЗначениеЗаполнено(Запись.КлючВидовПродукции) Тогда
|
||||
Запись.Записать();
|
||||
Иначе
|
||||
Запись.Удалить();
|
||||
КонецЕсли;
|
||||
УстановитьПривилегированныйРежим(Ложь);
|
||||
|
||||
ЗафиксироватьТранзакцию();
|
||||
|
||||
|
||||
@@ -1030,11 +1030,7 @@
|
||||
//
|
||||
Процедура ОбновитьСвойстваИдентификатора(Объект) Экспорт
|
||||
|
||||
Если ТипЗнч(Объект) <> Тип("ДанныеФормыСтруктура") Тогда
|
||||
ОбъектыРасширений = ЭтоОбъектРасширений(Объект);
|
||||
Иначе
|
||||
ОбъектыРасширений = ЭтоОбъектРасширений(Объект.Ссылка);
|
||||
КонецЕсли;
|
||||
|
||||
Если ОбъектыРасширений
|
||||
И Справочники.ИдентификаторыОбъектовРасширений.ОбъектРасширенияОтключен(Объект.Ссылка) Тогда
|
||||
@@ -1528,7 +1524,7 @@
|
||||
//
|
||||
Процедура ФормаЭлементаПриСозданииНаСервере(Форма) Экспорт
|
||||
|
||||
ОбъектыРасширений = ЭтоОбъектРасширений(Форма.Объект.Ссылка);
|
||||
ОбъектыРасширений = ЭтоОбъектРасширений(Форма.Объект);
|
||||
|
||||
Элементы = Форма.Элементы;
|
||||
|
||||
@@ -2197,7 +2193,7 @@
|
||||
|
||||
Процедура ОбновитьСвойстваПомеченногоНаУдаление(Свойства, СвойстваОбновлены = Ложь, ЕстьУдаленные = Ложь, ЭтоДубль = Ложь)
|
||||
|
||||
ОбъектыРасширений = ЭтоОбъектРасширений(Свойства.Ссылка);
|
||||
ОбъектыРасширений = ЭтоОбъектРасширений(Свойства);
|
||||
|
||||
Если ЭтоДубль Тогда
|
||||
КлючОбъектаМетаданных = ?(ТипЗнч(Свойства.КлючОбъектаМетаданных) = Тип("ХранилищеЗначения"),
|
||||
@@ -2226,7 +2222,7 @@
|
||||
|
||||
// Установка новых свойств идентификатора объекта метаданных.
|
||||
Свойства.ПометкаУдаления = Истина;
|
||||
Свойства.Родитель = ПустаяСсылкаСправочника(ЭтоОбъектРасширений(Свойства.Ссылка));
|
||||
Свойства.Родитель = ПустаяСсылкаСправочника(ЭтоОбъектРасширений(Свойства));
|
||||
Свойства.Наименование = ВставитьЗнакВопроса(Свойства.Наименование);
|
||||
Свойства.Имя = ВставитьЗнакВопроса(Свойства.Имя);
|
||||
Свойства.Синоним = ВставитьЗнакВопроса(Свойства.Синоним);
|
||||
@@ -2373,7 +2369,7 @@
|
||||
РезультатПроверки.Вставить("ПредставлениеУдаленного", "");
|
||||
|
||||
КлючОбъектаМетаданных = СвойстваИдентификатора.КлючОбъектаМетаданных.Получить();
|
||||
ОбъектыРасширений = ЭтоОбъектРасширений(СвойстваИдентификатора.Ссылка);
|
||||
ОбъектыРасширений = ЭтоОбъектРасширений(СвойстваИдентификатора);
|
||||
|
||||
Если КлючОбъектаМетаданных <> Неопределено
|
||||
И КлючОбъектаМетаданных <> Тип("Неопределено") Тогда
|
||||
@@ -2891,10 +2887,9 @@
|
||||
|
||||
КонецФункции
|
||||
|
||||
Функция ЭтоОбъектРасширений(ОбъектИлиСсылка)
|
||||
Функция ЭтоОбъектРасширений(ОписаниеОбъекта)
|
||||
|
||||
Возврат ТипЗнч(ОбъектИлиСсылка) = Тип("СправочникОбъект.ИдентификаторыОбъектовРасширений")
|
||||
Или ТипЗнч(ОбъектИлиСсылка) = Тип("СправочникСсылка.ИдентификаторыОбъектовРасширений");
|
||||
Возврат ТипЗнч(ОписаниеОбъекта.Ссылка) = Тип("СправочникСсылка.ИдентификаторыОбъектовРасширений");
|
||||
|
||||
КонецФункции
|
||||
|
||||
@@ -3400,7 +3395,7 @@
|
||||
СтрокаТаблицы = НайденныеСтроки[0];
|
||||
РезультатПроверки = КлючОбъектаМетаданныхСоответствуетПолномуИмени(СтрокаТаблицы);
|
||||
Если РезультатПроверки.НеСоответствует Тогда
|
||||
НазваниеСправочника = НазваниеСправочника(ЭтоОбъектРасширений(СтрокаТаблицы.Ссылка));
|
||||
НазваниеСправочника = НазваниеСправочника(ЭтоОбъектРасширений(СтрокаТаблицы));
|
||||
|
||||
Если РезультатПроверки.ОбъектМетаданных = Неопределено Тогда
|
||||
ОписаниеОшибки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
|
||||
|
||||
@@ -5412,10 +5412,22 @@
|
||||
<Description/>
|
||||
<IsFolder>false</IsFolder>
|
||||
</Item>
|
||||
<Item id="3c975331-9d9d-417e-98f6-182d96c3c345">
|
||||
<Name>РегистрСведенийДокументыОПредстоящейПоставке</Name>
|
||||
<Code/>
|
||||
<Description>Регистр сведений документы о предстоящей поставке</Description>
|
||||
<IsFolder>false</IsFolder>
|
||||
</Item>
|
||||
<Item id="43939c06-8cd9-46c6-9d73-0f9d9bc3ca3b">
|
||||
<Name>РегистрСведенийМестаОсуществленияДеятельностиИСМП</Name>
|
||||
<Code/>
|
||||
<Description/>
|
||||
<IsFolder>false</IsFolder>
|
||||
</Item>
|
||||
<Item id="197364e9-1734-48e4-8fda-26a23711502f">
|
||||
<Name>РегистрСведенийСоответствиеНоменклатурыСырьяГИСМТ</Name>
|
||||
<Code/>
|
||||
<Description/>
|
||||
<IsFolder>false</IsFolder>
|
||||
</Item>
|
||||
</PredefinedData>
|
||||
@@ -4,6 +4,17 @@
|
||||
|
||||
#Область ДляВызоваИзДругихПодсистем
|
||||
|
||||
#Область СтандартныеПодсистемы
|
||||
|
||||
// См. СтандартныеПодсистемыСервер.ПриОпределенииМетодовРазрешенныхДляВызоваКакПроизвольныйКод
|
||||
Процедура ПриОпределенииМетодовРазрешенныхДляВызоваКакПроизвольныйКод(Методы) Экспорт
|
||||
|
||||
Методы.Вставить("ОбработатьДанныеДляПереходаНаНовуюВерсиюНачальноеЗаполнение");
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
// СтандартныеПодсистемы.ОбновлениеВерсииИБ
|
||||
|
||||
Процедура ОбработатьДанныеДляПереходаНаНовуюВерсию(Параметры) Экспорт
|
||||
|
||||
+1
@@ -206,6 +206,7 @@
|
||||
|
||||
ПараметрыФормы = Новый Структура;
|
||||
ПараметрыФормы.Вставить("МножественныйВыбор", Истина);
|
||||
ПараметрыФормы.Вставить("ВыборОграниченийМЧД", Истина);
|
||||
Если Элемент.ТекущиеДанные <> Неопределено Тогда
|
||||
ПараметрыФормы.Вставить("ТекущаяСтрока", Элемент.ТекущиеДанные.Значение);
|
||||
КонецЕсли;
|
||||
|
||||
+1215
-1015
File diff suppressed because it is too large
Load Diff
@@ -4,6 +4,17 @@
|
||||
|
||||
#Область ДляВызоваИзДругихПодсистем
|
||||
|
||||
#Область СтандартныеПодсистемы
|
||||
|
||||
// См. СтандартныеПодсистемыСервер.ПриОпределенииМетодовРазрешенныхДляВызоваКакПроизвольныйКод
|
||||
Процедура ПриОпределенииМетодовРазрешенныхДляВызоваКакПроизвольныйКод(Методы) Экспорт
|
||||
|
||||
Методы.Вставить("ОбработатьДанныеДляПереходаНаНовуюВерсиюНачальноеЗаполнение");
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
// СтандартныеПодсистемы.ОбновлениеВерсииИБ
|
||||
|
||||
Процедура ОбработатьДанныеДляПереходаНаНовуюВерсию(Параметры) Экспорт
|
||||
|
||||
@@ -2,7 +2,6 @@
|
||||
<Form xmlns="http://v8.1c.ru/8.3/xcf/logform" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:dcscor="http://v8.1c.ru/8.1/data-composition-system/core" xmlns:dcssch="http://v8.1c.ru/8.1/data-composition-system/schema" xmlns:dcsset="http://v8.1c.ru/8.1/data-composition-system/settings" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.20">
|
||||
<CommandSet>
|
||||
<ExcludedCommand>CancelSearch</ExcludedCommand>
|
||||
<ExcludedCommand>CustomizeForm</ExcludedCommand>
|
||||
<ExcludedCommand>DynamicListStandardSettings</ExcludedCommand>
|
||||
<ExcludedCommand>Find</ExcludedCommand>
|
||||
<ExcludedCommand>FindByCurrentValue</ExcludedCommand>
|
||||
|
||||
@@ -1512,6 +1512,46 @@
|
||||
<DataHistory>Use</DataHistory>
|
||||
</Properties>
|
||||
</Attribute>
|
||||
<Attribute uuid="62a971cc-7ba8-40ac-ab04-8fa3b2c9bb72">
|
||||
<Properties>
|
||||
<Name>ОбработанаВУпрощенномРежимеРаботыСДоверенностями</Name>
|
||||
<Synonym>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
<v8:content>Обработана в упрощенном режиме работы с доверенностями</v8:content>
|
||||
</v8:item>
|
||||
</Synonym>
|
||||
<Comment>Выполнена проверка подписи доверенности при обновлении ИБ</Comment>
|
||||
<Type>
|
||||
<v8:Type>xs:boolean</v8:Type>
|
||||
</Type>
|
||||
<PasswordMode>false</PasswordMode>
|
||||
<Format/>
|
||||
<EditFormat/>
|
||||
<ToolTip/>
|
||||
<MarkNegatives>false</MarkNegatives>
|
||||
<Mask/>
|
||||
<MultiLine>false</MultiLine>
|
||||
<ExtendedEdit>false</ExtendedEdit>
|
||||
<MinValue xsi:nil="true"/>
|
||||
<MaxValue xsi:nil="true"/>
|
||||
<FillFromFillingValue>false</FillFromFillingValue>
|
||||
<FillValue xsi:nil="true"/>
|
||||
<FillChecking>DontCheck</FillChecking>
|
||||
<ChoiceFoldersAndItems>Items</ChoiceFoldersAndItems>
|
||||
<ChoiceParameterLinks/>
|
||||
<ChoiceParameters/>
|
||||
<QuickChoice>Auto</QuickChoice>
|
||||
<CreateOnInput>Auto</CreateOnInput>
|
||||
<ChoiceForm/>
|
||||
<LinkByType/>
|
||||
<ChoiceHistoryOnInput>Auto</ChoiceHistoryOnInput>
|
||||
<Use>ForItem</Use>
|
||||
<Indexing>DontIndex</Indexing>
|
||||
<FullTextSearch>Use</FullTextSearch>
|
||||
<DataHistory>Use</DataHistory>
|
||||
</Properties>
|
||||
</Attribute>
|
||||
<TabularSection uuid="61dbbcd6-d984-4c00-87f7-fc4c80406b18">
|
||||
<InternalInfo>
|
||||
<xr:GeneratedType name="CatalogTabularSection.МЧД003.Подписи" category="TabularSection">
|
||||
|
||||
@@ -1242,9 +1242,10 @@
|
||||
// если отсутствует возможность проверить подпись МЧД на сервере
|
||||
// (в настройках установлена проверка подписи на клиенте)
|
||||
// и необходимо выполнить проверку на клиенте.
|
||||
// * ВариантПроверкиСертификатовМЧДЭДО - ПеречислениеСсылка.ВариантыПроверкиСертификатовМЧДЭДО
|
||||
// * ДанныеДляПроверки - См. МашиночитаемыеДоверенностиКлиентСервер.НовыеДанныеДляПроверкиМЧД
|
||||
// * ДанныеДляПроверки - Неопределено
|
||||
// * ТекстОшибки - Строка -
|
||||
// - Неопределено
|
||||
// * ТекстОшибки - Строка
|
||||
Функция ЗагрузитьМЧДИзФайла(ДанныеФайла, МЧД = Неопределено, ДополнительныеСведения = Неопределено) Экспорт
|
||||
|
||||
ТребуетсяПроверкаМЧДНаКлиенте = Ложь;
|
||||
@@ -1254,6 +1255,7 @@
|
||||
Результат.Вставить("ТребуетсяПроверкаМЧДНаКлиенте", ТребуетсяПроверкаМЧДНаКлиенте);
|
||||
Результат.Вставить("ДанныеДляПроверки", Неопределено);
|
||||
Результат.Вставить("ТекстОшибки", "");
|
||||
Результат.Вставить("ВариантПроверкиСертификатовМЧДЭДО", МашиночитаемыеДоверенности.ВариантПроверкиСертификатаДоверителя());
|
||||
|
||||
Если ТипЗнч(ДанныеФайла) = Тип("Структура") Тогда
|
||||
ДанныеАрхива = ДанныеФайла;
|
||||
@@ -1285,7 +1287,7 @@
|
||||
ДополнительныеСведения = МашиночитаемыеДоверенностиКлиентСервер.ДополнительныеСведенияПоЗагрузкеМЧД();
|
||||
КонецЕсли;
|
||||
|
||||
РезультатПроверкиНаСервере = Новый Структура("Результат, ТекстОшибки", Истина, "");
|
||||
РезультатПроверкиНаСервере = МашиночитаемыеДоверенности.НовыйОбщийРезультатПроверкиПодписиДоверенности(Истина);
|
||||
|
||||
ЭтоРучноеСоздание = Ложь;
|
||||
ОбновлятьСуществующуюМЧД = Истина;
|
||||
@@ -4615,6 +4617,20 @@
|
||||
//
|
||||
Процедура ПроверитьУсловныеПоляОбъектаМЧД(Доверенность, ОшибкиЗаполнения)
|
||||
|
||||
ПроверитьУсловныеПоляДоверителейМЧД(Доверенность, ОшибкиЗаполнения);
|
||||
ПроверитьУсловныеПоляПредставителейМЧД(Доверенность, ОшибкиЗаполнения);
|
||||
ПроверитьУсловныеПоляПолномочийМЧД(Доверенность, ОшибкиЗаполнения);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
// Проверяет условные поля доверителей в МЧД.
|
||||
//
|
||||
// Параметры:
|
||||
// Доверенность см. XDTOПакет.ON_EMCHD_1_928_00_01_01_01.Доверенность
|
||||
// ОшибкиЗаполнения см. НовыйНаборОшибокЗаполненияОбъектаМЧД
|
||||
//
|
||||
Процедура ПроверитьУсловныеПоляДоверителейМЧД(Знач Доверенность, ОшибкиЗаполнения)
|
||||
|
||||
Доверители = Доверенность.Документ.Довер.СвДоверит;
|
||||
|
||||
ИндексДоверителя = 0;
|
||||
@@ -4624,6 +4640,16 @@
|
||||
ИндексДоверителя = ИндексДоверителя + 1;
|
||||
КонецЦикла;
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
// Проверяет условные поля представителей в МЧД.
|
||||
//
|
||||
// Параметры:
|
||||
// Доверенность см. XDTOПакет.ON_EMCHD_1_928_00_01_01_01.Доверенность
|
||||
// ОшибкиЗаполнения см. НовыйНаборОшибокЗаполненияОбъектаМЧД
|
||||
//
|
||||
Процедура ПроверитьУсловныеПоляПредставителейМЧД(Знач Доверенность, ОшибкиЗаполнения)
|
||||
|
||||
Представители = Доверенность.Документ.Довер.СвУпПред;
|
||||
|
||||
ИндексПредставителя = 0;
|
||||
@@ -4633,11 +4659,113 @@
|
||||
ИндексПредставителя = ИндексПредставителя + 1;
|
||||
КонецЦикла;
|
||||
|
||||
ПроверитьУсловныеПоляПолномочийМЧД(Доверенность, ОшибкиЗаполнения);
|
||||
ПроверитьСовпадениеПредставителяИДоверителяМЧД(Доверенность, ОшибкиЗаполнения);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
// Проверить условные поля объекта МЧД.
|
||||
// Проверяет совпадение полей ИНН и СНИЛС представителя и доверителя в МЧД.
|
||||
//
|
||||
// Параметры:
|
||||
// Доверенность - см. XDTOПакет.ON_EMCHD_1_928_00_01_01_01.Доверенность
|
||||
// ОшибкиЗаполнения - см. НовыйНаборОшибокЗаполненияОбъектаМЧД
|
||||
//
|
||||
Процедура ПроверитьСовпадениеПредставителяИДоверителяМЧД(Знач Доверенность, ОшибкиЗаполнения)
|
||||
|
||||
Доверители = Доверенность.Документ.Довер.СвДоверит; // см. XDTOПакет.ON_EMCHD_1_928_00_01_01_01.СвДоверитТип
|
||||
Представители = Доверенность.Документ.Довер.СвУпПред; // см. XDTOПакет.ON_EMCHD_1_928_00_01_01_01.СвУпПредТип
|
||||
|
||||
ИННФизЛицаДоверителяДействующегоБезДоверенности = "";
|
||||
ИННФизЛицаПредставителя = "";
|
||||
|
||||
Для Каждого Доверитель Из Доверители Цикл
|
||||
|
||||
ТипДоверителя = Доверитель.ТипДоверит; // Строка
|
||||
|
||||
Если ТипДоверителя = ТипыДоверителей().ЮридическоеЛицо Тогда
|
||||
|
||||
РосОргДовер = Доверитель.Доверит.РосОргДовер; // см. XDTOПакет.ON_EMCHD_1_928_00_01_01_01.РосОргДоверТип
|
||||
Если РосОргДовер.ЕИОФЛ = КлассификаторДаНет().Да Тогда
|
||||
ИННФизЛицаДоверителяДействующегоБезДоверенности = РосОргДовер.ЛицоБезДов[0].СвФЛ.ИННФЛ; // Строка
|
||||
ИначеЕсли РосОргДовер.ЕИОИП = КлассификаторДаНет().Да Тогда
|
||||
ИННФизЛицаДоверителяДействующегоБезДоверенности = РосОргДовер.ЛицоБезДов[0].СВИП.ИННФЛ; // Строка
|
||||
ИначеЕсли РосОргДовер.ЕИОУК = КлассификаторДаНет().Да Тогда
|
||||
ИННФизЛицаДоверителяДействующегоБезДоверенности = РосОргДовер.ЛицоБезДов[0].СВЮЛ.СвФЛ[0].ИННФЛ; // Строка
|
||||
КонецЕсли;
|
||||
|
||||
ИначеЕсли ТипДоверителя = ТипыДоверителей().ИндивидуальныйПредприниматель Тогда
|
||||
ИННФизЛицаДоверителяДействующегоБезДоверенности = Доверитель.Доверит.ИПДовер.ИННФЛ; // Строка
|
||||
КонецЕсли;
|
||||
|
||||
Если ПустаяСтрока(ИННФизЛицаДоверителяДействующегоБезДоверенности) Тогда
|
||||
Продолжить;
|
||||
КонецЕсли;
|
||||
|
||||
ИндексПредставителя = 0;
|
||||
НомерСтроки = 0;
|
||||
КоличествоПредставителей = Представители.Количество();
|
||||
|
||||
Для Каждого Представитель Из Представители Цикл
|
||||
|
||||
НомерСтроки = НомерСтроки + 1;
|
||||
ТипПредставителя = Представитель.ТипПред; // Строка
|
||||
|
||||
Если ТипПредставителя = ТипыПредставителей().ФизическоеЛицо Тогда
|
||||
ИННФизЛицаПредставителя = Представитель.Пред.СведФизЛ.ИННФЛ; // Строка
|
||||
Путь = СтрШаблон("Доверенность[0].Документ[0].Довер[0].СвУпПред[%1].Пред[0].СведФизЛ[0].ИННФЛ",
|
||||
ИндексПредставителя);
|
||||
ИначеЕсли ТипПредставителя = ТипыПредставителей().ИндивидуальныйПредприниматель Тогда
|
||||
ИННФизЛицаПредставителя = Представитель.Пред.СведИП.ИННФЛ; // Строка
|
||||
Путь = СтрШаблон("Доверенность[0].Документ[0].Довер[0].СвУпПред[%1].Пред[0].СведИП[0].ИННФЛ",
|
||||
ИндексПредставителя);
|
||||
Иначе
|
||||
ИндексПредставителя = ИндексПредставителя + 1;
|
||||
Продолжить;
|
||||
КонецЕсли;
|
||||
|
||||
ДобавитьОшибкуСовпаденияИННПредставителяИДоверителяМЧД(ОшибкиЗаполнения, Путь, ИННФизЛицаПредставителя,
|
||||
ИННФизЛицаДоверителяДействующегоБезДоверенности, КоличествоПредставителей, НомерСтроки);
|
||||
|
||||
ИндексПредставителя = ИндексПредставителя + 1;
|
||||
|
||||
КонецЦикла;
|
||||
|
||||
КонецЦикла;
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
// Добавить ошибку совпадения ИННПредставителя и доверителя МЧД.
|
||||
//
|
||||
// Параметры:
|
||||
// ОшибкиЗаполнения - см. НовыйНаборОшибокЗаполненияОбъектаМЧД
|
||||
// Путь - Строка
|
||||
// ИННПредставителя - Строка
|
||||
// ИННДоверителя - Строка
|
||||
// КоличествоПредставителей - Число
|
||||
// НомерСтроки - Число
|
||||
Процедура ДобавитьОшибкуСовпаденияИННПредставителяИДоверителяМЧД(ОшибкиЗаполнения, Знач Путь, Знач ИННПредставителя,
|
||||
Знач ИННДоверителя, Знач КоличествоПредставителей, Знач НомерСтроки)
|
||||
|
||||
Если Не ЗначениеЗаполнено(ИННПредставителя)
|
||||
Или ИННПредставителя <> ИННДоверителя Тогда
|
||||
Возврат;
|
||||
КонецЕсли;
|
||||
|
||||
ТекстПояснения = НСтр("ru = 'пункт 3 статьи 182 ГК РФ ""Представитель не может совершать сделки от имени
|
||||
|представляемого (доверителя) в отношении себя лично, а также в отношении другого лица, представителем которого он одновременно является"".'");
|
||||
|
||||
Если КоличествоПредставителей = 1 Тогда
|
||||
ТекстОшибки = СтрШаблон(НСтр("ru = 'Недопустимый ИНН представителя - физического лица. Основание: %1'"),
|
||||
ТекстПояснения);
|
||||
Иначе
|
||||
ТекстОшибки = СтрШаблон(НСтр("ru = 'Недопустимый ИНН представителя - физического лица в строке %1. Основание: %2'"),
|
||||
НомерСтроки, ТекстПояснения);
|
||||
КонецЕсли;
|
||||
|
||||
ДобавитьОшибкуЗаполненияОбъектаМЧД(ОшибкиЗаполнения, Путь, ТекстОшибки);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
// Проверяет условные поля объекта МЧД.
|
||||
//
|
||||
// Параметры:
|
||||
// Доверенность - см. XDTOПакет.ON_EMCHD_1_928_00_01_01_01.Доверенность
|
||||
@@ -4645,6 +4773,20 @@
|
||||
//
|
||||
Процедура ПроверитьУсловныеПоляОбъектаМЧДПередоверия(Доверенность, ОшибкиЗаполнения)
|
||||
|
||||
ПроверитьУсловныеПоляДоверителейМЧДПередоверия(Доверенность, ОшибкиЗаполнения);
|
||||
ПроверитьУсловныеПоляПредставителейМЧДПередоверия(Доверенность, ОшибкиЗаполнения);
|
||||
ПроверитьУсловныеПоляПолномочийМЧДПередоверия(Доверенность, ОшибкиЗаполнения);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
// Проверяет условные поля доверителей МЧД передоверия.
|
||||
//
|
||||
// Параметры:
|
||||
// Доверенность - см. XDTOПакет.ON_EMCHD_1_928_00_01_01_01.Доверенность
|
||||
// ОшибкиЗаполнения - см. НовыйНаборОшибокЗаполненияОбъектаМЧД
|
||||
//
|
||||
Процедура ПроверитьУсловныеПоляДоверителейМЧДПередоверия(Знач Доверенность, ОшибкиЗаполнения)
|
||||
|
||||
Доверители = Доверенность.Документ.Передов.СвПередПолн;
|
||||
|
||||
ИндексДоверителя = 0;
|
||||
@@ -4654,6 +4796,16 @@
|
||||
ИндексДоверителя = ИндексДоверителя + 1;
|
||||
КонецЦикла;
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
// Проверяет условные поля представителей МЧД передоверия.
|
||||
//
|
||||
// Параметры:
|
||||
// Доверенность - см. XDTOПакет.ON_EMCHD_1_928_00_01_01_01.Доверенность
|
||||
// ОшибкиЗаполнения - см. НовыйНаборОшибокЗаполненияОбъектаМЧД
|
||||
//
|
||||
Процедура ПроверитьУсловныеПоляПредставителейМЧДПередоверия(Знач Доверенность, ОшибкиЗаполнения)
|
||||
|
||||
Представители = Доверенность.Документ.Передов.СвПолучПолн;
|
||||
|
||||
ИндексПредставителя = 0;
|
||||
@@ -4663,7 +4815,77 @@
|
||||
ИндексПредставителя = ИндексПредставителя + 1;
|
||||
КонецЦикла;
|
||||
|
||||
ПроверитьУсловныеПоляПолномочийМЧДПередоверия(Доверенность, ОшибкиЗаполнения);
|
||||
ПроверитьСовпадениеПредставителяИДоверителяМЧДПередоверия(Доверенность, ОшибкиЗаполнения)
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
// Проверяет совпадение полей ИНН и СНИЛС представителя и доверителя в МЧД передоверия.
|
||||
//
|
||||
// Параметры:
|
||||
// Доверенность - см. XDTOПакет.ON_EMCHD_1_928_00_01_01_01.Доверенность
|
||||
// ОшибкиЗаполнения - см. НовыйНаборОшибокЗаполненияОбъектаМЧД
|
||||
//
|
||||
Процедура ПроверитьСовпадениеПредставителяИДоверителяМЧДПередоверия(Знач Доверенность, ОшибкиЗаполнения)
|
||||
|
||||
Доверители = Доверенность.Документ.Передов.СвПередПолн; // см. XDTOПакет.ON_EMCHD_1_928_00_01_01_01.СвПередПолн
|
||||
Представители = Доверенность.Документ.Передов.СвПолучПолн; // см. XDTOПакет.ON_EMCHD_1_928_00_01_01_01.СвУпПредТип
|
||||
|
||||
ИННФизЛицаДоверителяДействующегоБезДоверенности = "";
|
||||
ИННФизЛицаПредставителя = "";
|
||||
|
||||
Для Каждого Доверитель Из Доверители Цикл
|
||||
|
||||
ТипДоверителя = Доверитель.ТипПерПолн; // Строка
|
||||
|
||||
Если ТипДоверителя = ТипыДоверителей().ЮридическоеЛицо Тогда
|
||||
|
||||
РосОргДовер = Доверитель.ПередПолн.РосОргПерПолн; // см. XDTOПакет.ON_EMCHD_1_928_00_01_01_01.РосОргДоверТип
|
||||
Если РосОргДовер.ЕИОФЛ = КлассификаторДаНет().Да Тогда
|
||||
ИННФизЛицаДоверителяДействующегоБезДоверенности = РосОргДовер.ЛицоБезДов[0].СвФЛ.ИННФЛ; // Строка
|
||||
ИначеЕсли РосОргДовер.ЕИОИП = КлассификаторДаНет().Да Тогда
|
||||
ИННФизЛицаДоверителяДействующегоБезДоверенности = РосОргДовер.ЛицоБезДов[0].СВИП.ИННФЛ; // Строка
|
||||
ИначеЕсли РосОргДовер.ЕИОУК = КлассификаторДаНет().Да Тогда
|
||||
ИННФизЛицаДоверителяДействующегоБезДоверенности = РосОргДовер.ЛицоБезДов[0].СВЮЛ.СвФЛ[0].ИННФЛ; // Строка
|
||||
КонецЕсли;
|
||||
|
||||
ИначеЕсли ТипДоверителя = ТипыДоверителей().ИндивидуальныйПредприниматель Тогда
|
||||
ИННФизЛицаДоверителяДействующегоБезДоверенности = Доверитель.ПередПолн.ИППерПолн.ИННФЛ; // Строка
|
||||
КонецЕсли;
|
||||
|
||||
Если ПустаяСтрока(ИННФизЛицаДоверителяДействующегоБезДоверенности) Тогда
|
||||
Продолжить;
|
||||
КонецЕсли;
|
||||
|
||||
ИндексПредставителя = 0;
|
||||
НомерСтроки = 0;
|
||||
КоличествоПредставителей = Представители.Количество();
|
||||
|
||||
Для Каждого Представитель Из Представители Цикл
|
||||
|
||||
НомерСтроки = НомерСтроки + 1;
|
||||
ТипПредставителя = Представитель.ТипПред; // Строка
|
||||
|
||||
Если ТипПредставителя = ТипыПредставителей().ФизическоеЛицо Тогда
|
||||
ИННФизЛицаПредставителя = Представитель.Пред.СведФизЛ.ИННФЛ; // Строка
|
||||
Путь = СтрШаблон("Доверенность[0].Документ[0].Передов[0].СвПолучПолн[%1].Пред[0].СведФизЛ[0].ИННФЛ",
|
||||
ИндексПредставителя);
|
||||
ИначеЕсли ТипПредставителя = ТипыПредставителей().ИндивидуальныйПредприниматель Тогда
|
||||
ИННФизЛицаПредставителя = Представитель.Пред.СведИП.ИННФЛ; // Строка
|
||||
Путь = СтрШаблон("Доверенность[0].Документ[0].Передов[0].СвПолучПолн[%1].Пред[0].СведИП[0].ИННФЛ",
|
||||
ИндексПредставителя);
|
||||
Иначе
|
||||
ИндексПредставителя = ИндексПредставителя + 1;
|
||||
Продолжить;
|
||||
КонецЕсли;
|
||||
|
||||
ДобавитьОшибкуСовпаденияИННПредставителяИДоверителяМЧД(ОшибкиЗаполнения, Путь, ИННФизЛицаПредставителя,
|
||||
ИННФизЛицаДоверителяДействующегоБезДоверенности, КоличествоПредставителей, НомерСтроки);
|
||||
|
||||
ИндексПредставителя = ИндексПредставителя + 1;
|
||||
|
||||
КонецЦикла;
|
||||
|
||||
КонецЦикла;
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
|
||||
@@ -197,5 +197,8 @@
|
||||
</v8:NumberQualifiers>
|
||||
</Type>
|
||||
</Parameter>
|
||||
<Parameter name="ДоверенностиОрганизации">
|
||||
<Type/>
|
||||
</Parameter>
|
||||
</Parameters>
|
||||
</Form>
|
||||
@@ -71,11 +71,11 @@
|
||||
<LocationInCommandBar>InAdditionalSubmenu</LocationInCommandBar>
|
||||
<ExtendedTooltip name="ФормаЗарегистрироватьВРРФНСРасширеннаяПодсказка" id="397"/>
|
||||
</Button>
|
||||
<Button name="ФормаПерепроверитьПодпись" id="619">
|
||||
<Button name="ФормаПерепроверитьПодпись" id="624">
|
||||
<Type>CommandBarButton</Type>
|
||||
<CommandName>Form.Command.ПерепроверитьПодпись</CommandName>
|
||||
<LocationInCommandBar>InAdditionalSubmenu</LocationInCommandBar>
|
||||
<ExtendedTooltip name="ФормаПерепроверитьПодписьРасширеннаяПодсказка" id="620"/>
|
||||
<ExtendedTooltip name="ФормаПерепроверитьПодписьРасширеннаяПодсказка" id="625"/>
|
||||
</Button>
|
||||
</ChildItems>
|
||||
</ButtonGroup>
|
||||
@@ -362,6 +362,28 @@
|
||||
</LabelDecoration>
|
||||
</ChildItems>
|
||||
</UsualGroup>
|
||||
<UsualGroup name="ГруппаНастройки" id="619">
|
||||
<Visible>false</Visible>
|
||||
<Representation>None</Representation>
|
||||
<ShowTitle>false</ShowTitle>
|
||||
<ExtendedTooltip name="ГруппаНастройкиРасширеннаяПодсказка" id="620"/>
|
||||
<ChildItems>
|
||||
<LabelDecoration name="НастройкаПроверки" id="621">
|
||||
<Title formatted="false">
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
<v8:content>Настроить проверку</v8:content>
|
||||
</v8:item>
|
||||
</Title>
|
||||
<Hyperlink>true</Hyperlink>
|
||||
<ContextMenu name="НастройкаПроверкиКонтекстноеМеню" id="622"/>
|
||||
<ExtendedTooltip name="НастройкаПроверкиРасширеннаяПодсказка" id="623"/>
|
||||
<Events>
|
||||
<Event name="Click">НастройкаПроверкиНажатие</Event>
|
||||
</Events>
|
||||
</LabelDecoration>
|
||||
</ChildItems>
|
||||
</UsualGroup>
|
||||
</ChildItems>
|
||||
</UsualGroup>
|
||||
<UsualGroup name="ГруппаСтатусВРеестреФНС" id="165">
|
||||
|
||||
@@ -92,7 +92,7 @@
|
||||
|
||||
Если ПротоколПроверкиИзМЧД <> Неопределено Тогда
|
||||
ПротоколПроверкиМЧД = ПротоколПроверкиИзМЧД;
|
||||
Если Не ЗначениеЗаполнено(Объект.ТекстОшибкиПроверкиМЧД)
|
||||
Если Не Объект.Верна И Не ЗначениеЗаполнено(Объект.ТекстОшибкиПроверкиМЧД)
|
||||
И ЗначениеЗаполнено(ПротоколПроверкиИзМЧД.ОписаниеОшибки) Тогда
|
||||
Объект.ТекстОшибкиПроверкиМЧД = ПротоколПроверкиИзМЧД.ОписаниеОшибки;
|
||||
КонецЕсли;
|
||||
@@ -241,6 +241,14 @@
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
&НаКлиенте
|
||||
Процедура НастройкаПроверкиНажатие(Элемент)
|
||||
|
||||
ОткрытьФорму("Обработка.РезультатыПроверкиПодписи.Форма.ИнформацияОНастройкахПроверкиСертификатов", , ЭтотОбъект,
|
||||
, , , , РежимОткрытияОкнаФормы.БлокироватьОкноВладельца);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
#Область ОбработчикиСобытийЭлементовТаблицыФормыДеревоПолномочийСОграничениями
|
||||
@@ -349,7 +357,8 @@
|
||||
|
||||
ДанныеСтроки = Элемент.ДанныеСтроки(ВыбраннаяСтрока);
|
||||
|
||||
Если ДанныеСтроки = Неопределено Тогда
|
||||
Если ДанныеСтроки = Неопределено
|
||||
Или ДанныеСтроки.Ссылка = Неопределено Тогда
|
||||
Возврат;
|
||||
КонецЕсли;
|
||||
|
||||
|
||||
@@ -379,6 +379,8 @@
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
#Область ОбработчикиСобытийЭлементовТаблицыФормыДеревоПолномочийСОграничениями
|
||||
|
||||
&НаКлиенте
|
||||
@@ -446,8 +448,6 @@
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
#Область ОбработчикиСобытийЭлементовТаблицыФормыДоверенностьДокументДоверСвУпПред
|
||||
|
||||
&НаКлиенте
|
||||
@@ -1766,6 +1766,7 @@
|
||||
ПоказатьГруппу(Элементы.ГруппаПредставленияПредставителей, Элементы.ГруппаОдинПредставитель);
|
||||
ПоказатьГруппу(Элементы.ГруппаПредставитель, ОтображаемаяГруппа);
|
||||
Элементы.ДекорацияЗаголовокГруппыПредставителей.Заголовок = НСтр("ru='Сведения о представителях';");
|
||||
СброситьОформлениеЭлементовФормы(Элементы.ГруппаПредставитель, Истина);
|
||||
КонецЕсли;
|
||||
ОбновитьВидимостьКомандТаблицыПредставителей(ЭтотОбъект);
|
||||
ОбновитьНумерациюТаблицы(Доверенность[0].Документ[0].Довер[0].СвУпПред);
|
||||
|
||||
@@ -2166,6 +2166,7 @@
|
||||
ПоказатьГруппу(Элементы.ГруппаПредставленияПредставителейПередоверия, Элементы.ГруппаОдинПредставительПередоверия);
|
||||
ПоказатьГруппу(Элементы.ГруппаПредставительПередоверия, ОтображаемаяГруппа);
|
||||
Элементы.ДекорацияЗаголовокГруппыПредставителейПередоверия.Заголовок = НСтр("ru='Сведения о представителях';");
|
||||
СброситьОформлениеЭлементовФормы(Элементы.ГруппаПредставительПередоверия, Истина);
|
||||
КонецЕсли;
|
||||
|
||||
ОбновитьВидимостьКомандТаблицыПредставителей(ЭтотОбъект);
|
||||
|
||||
@@ -1731,6 +1731,46 @@
|
||||
<DataHistory>Use</DataHistory>
|
||||
</Properties>
|
||||
</Attribute>
|
||||
<Attribute uuid="6045e751-0a3c-4767-a4bd-2bcf7a0a2480">
|
||||
<Properties>
|
||||
<Name>ОбработанаВУпрощенномРежимеРаботыСДоверенностями</Name>
|
||||
<Synonym>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
<v8:content>Обработана в упрощенном режиме работы с доверенностями</v8:content>
|
||||
</v8:item>
|
||||
</Synonym>
|
||||
<Comment>Выполнена проверка подписи доверенности при обновлении ИБ</Comment>
|
||||
<Type>
|
||||
<v8:Type>xs:boolean</v8:Type>
|
||||
</Type>
|
||||
<PasswordMode>false</PasswordMode>
|
||||
<Format/>
|
||||
<EditFormat/>
|
||||
<ToolTip/>
|
||||
<MarkNegatives>false</MarkNegatives>
|
||||
<Mask/>
|
||||
<MultiLine>false</MultiLine>
|
||||
<ExtendedEdit>false</ExtendedEdit>
|
||||
<MinValue xsi:nil="true"/>
|
||||
<MaxValue xsi:nil="true"/>
|
||||
<FillFromFillingValue>false</FillFromFillingValue>
|
||||
<FillValue xsi:nil="true"/>
|
||||
<FillChecking>DontCheck</FillChecking>
|
||||
<ChoiceFoldersAndItems>Items</ChoiceFoldersAndItems>
|
||||
<ChoiceParameterLinks/>
|
||||
<ChoiceParameters/>
|
||||
<QuickChoice>Auto</QuickChoice>
|
||||
<CreateOnInput>Auto</CreateOnInput>
|
||||
<ChoiceForm/>
|
||||
<LinkByType/>
|
||||
<ChoiceHistoryOnInput>Auto</ChoiceHistoryOnInput>
|
||||
<Use>ForItem</Use>
|
||||
<Indexing>DontIndex</Indexing>
|
||||
<FullTextSearch>Use</FullTextSearch>
|
||||
<DataHistory>Use</DataHistory>
|
||||
</Properties>
|
||||
</Attribute>
|
||||
<TabularSection uuid="352f36e2-51dc-445b-a085-f14a8ed2586d">
|
||||
<InternalInfo>
|
||||
<xr:GeneratedType name="CatalogTabularSection.МашиночитаемыеДоверенностиКонтрагентов.Представители" category="TabularSection">
|
||||
|
||||
@@ -326,6 +326,7 @@
|
||||
// если отсутствует возможность проверить подпись МЧД на сервере
|
||||
// (в настройках установлена проверка подписи на клиенте)
|
||||
// и необходимо выполнить проверку на клиенте.
|
||||
// * ВариантПроверкиСертификатовМЧДЭДО - ПеречислениеСсылка.ВариантыПроверкиСертификатовМЧДЭДО
|
||||
// * ДанныеДляПроверки - Неопределено
|
||||
// - см. МашиночитаемыеДоверенностиКлиентСервер.НовыеДанныеДляПроверкиМЧД
|
||||
//
|
||||
@@ -338,6 +339,7 @@
|
||||
Результат.Вставить("ТребуетсяПроверкаМЧДНаКлиенте", ТребуетсяПроверкаМЧДНаКлиенте);
|
||||
Результат.Вставить("ДанныеДляПроверки", Неопределено);
|
||||
Результат.Вставить("ТекстОшибки", "");
|
||||
Результат.Вставить("ВариантПроверкиСертификатовМЧДЭДО", МашиночитаемыеДоверенности.ВариантПроверкиСертификатаДоверителя());
|
||||
|
||||
Данные = Неопределено;
|
||||
|
||||
@@ -396,7 +398,10 @@
|
||||
ДанныеДоверенности.СтатусВРеестреФНС = ДополнительныеСведения.СтатусВРеестреФНС;
|
||||
КонецЕсли;
|
||||
|
||||
РезультатЗаписи = ЗаписатьЭлементСправочника(МЧД, ДанныеИзФайлаОбмена, ДанныеДляЗагрузки);
|
||||
РезультатПроверкиНаСервере = МашиночитаемыеДоверенности.НовыйОбщийРезультатПроверкиПодписиДоверенности(Истина);
|
||||
|
||||
РезультатЗаписи = ЗаписатьЭлементСправочника(МЧД, ДанныеИзФайлаОбмена, ДанныеДляЗагрузки, РезультатПроверкиНаСервере);
|
||||
Результат.Вставить("РезультатПроверкиНаСервере", РезультатПроверкиНаСервере);
|
||||
|
||||
Если РезультатЗаписи.Ошибка Тогда
|
||||
Результат.ТекстОшибки = РезультатЗаписи.ОписаниеОшибки;
|
||||
@@ -884,7 +889,7 @@
|
||||
ДанныеДляПроверки.ДанныеДоверенности = ДанныеДляЗагрузки.ДанныеДоверенности;
|
||||
ДанныеДляПроверки.ДанныеПодписи = ДанныеДляЗагрузки.ДанныеПодписи;
|
||||
Если Не МашиночитаемыеДоверенности.ПроверенаВручную(ДанныеДляПроверки.ДанныеДоверенности) Тогда
|
||||
МашиночитаемыеДоверенности.ЗаполнитьПодписанаВерна(ОбъектСправочника, ДанныеДляПроверки, ТребуетсяПроверкаМЧДНаКлиенте, РезультатПроверкиНаСервере);
|
||||
МашиночитаемыеДоверенности.ЗаполнитьПодписанаВерна(ОбъектСправочника, ДанныеДляПроверки, ТребуетсяПроверкаМЧДНаКлиенте,, РезультатПроверкиНаСервере);
|
||||
КонецЕсли;
|
||||
|
||||
Если Не ЗначениеЗаполнено(ОбъектСправочника.ВариантЗаполненияПолномочий) Тогда
|
||||
|
||||
+24
-2
@@ -281,6 +281,28 @@
|
||||
</LabelDecoration>
|
||||
</ChildItems>
|
||||
</UsualGroup>
|
||||
<UsualGroup name="ГруппаНастройки" id="493">
|
||||
<Visible>false</Visible>
|
||||
<Representation>None</Representation>
|
||||
<ShowTitle>false</ShowTitle>
|
||||
<ExtendedTooltip name="ГруппаНастройкиРасширеннаяПодсказка" id="494"/>
|
||||
<ChildItems>
|
||||
<LabelDecoration name="НастройкаПроверки" id="495">
|
||||
<Title formatted="false">
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
<v8:content>Настроить проверку</v8:content>
|
||||
</v8:item>
|
||||
</Title>
|
||||
<Hyperlink>true</Hyperlink>
|
||||
<ContextMenu name="НастройкаПроверкиКонтекстноеМеню" id="496"/>
|
||||
<ExtendedTooltip name="НастройкаПроверкиРасширеннаяПодсказка" id="497"/>
|
||||
<Events>
|
||||
<Event name="Click">НастройкаПроверкиНажатие</Event>
|
||||
</Events>
|
||||
</LabelDecoration>
|
||||
</ChildItems>
|
||||
</UsualGroup>
|
||||
</ChildItems>
|
||||
</UsualGroup>
|
||||
<UsualGroup name="ГруппаСтатусВРеестреФНС" id="163">
|
||||
@@ -518,9 +540,9 @@
|
||||
<ExcludedCommand>MoveUp</ExcludedCommand>
|
||||
</CommandSet>
|
||||
<SearchStringLocation>CommandBar</SearchStringLocation>
|
||||
<ContextMenu name="ДеревоПолномочийСОграничениямиКонтекстноеМеню" id="493"/>
|
||||
<ContextMenu name="ДеревоПолномочийСОграничениямиКонтекстноеМеню" id="498"/>
|
||||
<AutoCommandBar name="ДеревоПолномочийСОграничениямиКоманднаяПанель" id="454"/>
|
||||
<ExtendedTooltip name="ДеревоПолномочийСОграничениямиРасширеннаяПодсказка" id="494"/>
|
||||
<ExtendedTooltip name="ДеревоПолномочийСОграничениямиРасширеннаяПодсказка" id="499"/>
|
||||
<SearchStringAddition name="ДеревоПолномочийСОграничениямиСтрокаПоиска" id="457">
|
||||
<AdditionSource>
|
||||
<Item>ДеревоПолномочийСОграничениями</Item>
|
||||
|
||||
+16
-2
@@ -10,6 +10,11 @@
|
||||
&НаСервере
|
||||
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
|
||||
|
||||
Если Параметры.Ключ.Пустая() Тогда
|
||||
ВызватьИсключение НСтр("ru = 'Эта форма не предназначена для непосредственного открытия.'",
|
||||
ОбщегоНазначения.КодОсновногоЯзыка());
|
||||
КонецЕсли;
|
||||
|
||||
ОбновлениеИнформационнойБазы.ПроверитьОбъектОбработан(Объект.Ссылка, ЭтотОбъект);
|
||||
|
||||
ЗаполнитьТабличныйДокументМЧД();
|
||||
@@ -59,7 +64,7 @@
|
||||
|
||||
Если ПротоколПроверкиИзМЧД <> Неопределено Тогда
|
||||
ПротоколПроверкиМЧД = ПротоколПроверкиИзМЧД;
|
||||
Если Не ЗначениеЗаполнено(Объект.ТекстОшибкиПроверкиМЧД)
|
||||
Если Не Объект.Верна И Не ЗначениеЗаполнено(Объект.ТекстОшибкиПроверкиМЧД)
|
||||
И ЗначениеЗаполнено(ПротоколПроверкиИзМЧД.ОписаниеОшибки) Тогда
|
||||
Объект.ТекстОшибкиПроверкиМЧД = ПротоколПроверкиИзМЧД.ОписаниеОшибки;
|
||||
КонецЕсли;
|
||||
@@ -155,6 +160,14 @@
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
&НаКлиенте
|
||||
Процедура НастройкаПроверкиНажатие(Элемент)
|
||||
|
||||
ОткрытьФорму("Обработка.РезультатыПроверкиПодписи.Форма.ИнформацияОНастройкахПроверкиСертификатов", , ЭтотОбъект,
|
||||
, , , , РежимОткрытияОкнаФормы.БлокироватьОкноВладельца);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
#Область ОбработчикиСобытийЭлементовТаблицыФормыДеревоПолномочийСОграничениями
|
||||
@@ -248,7 +261,8 @@
|
||||
|
||||
ДанныеСтроки = Элемент.ДанныеСтроки(ВыбраннаяСтрока);
|
||||
|
||||
Если ДанныеСтроки = Неопределено Тогда
|
||||
Если ДанныеСтроки = Неопределено
|
||||
Или ДанныеСтроки.Ссылка = Неопределено Тогда
|
||||
Возврат;
|
||||
КонецЕсли;
|
||||
|
||||
|
||||
@@ -3887,6 +3887,46 @@
|
||||
<DataHistory>Use</DataHistory>
|
||||
</Properties>
|
||||
</Attribute>
|
||||
<Attribute uuid="dbcaa3b7-a383-4731-ab1a-fd230ef12470">
|
||||
<Properties>
|
||||
<Name>ОбработанаВУпрощенномРежимеРаботыСДоверенностями</Name>
|
||||
<Synonym>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
<v8:content>Обработана в упрощенном режиме работы с доверенностями</v8:content>
|
||||
</v8:item>
|
||||
</Synonym>
|
||||
<Comment>Выполнена проверка подписи доверенности при обновлении ИБ</Comment>
|
||||
<Type>
|
||||
<v8:Type>xs:boolean</v8:Type>
|
||||
</Type>
|
||||
<PasswordMode>false</PasswordMode>
|
||||
<Format/>
|
||||
<EditFormat/>
|
||||
<ToolTip/>
|
||||
<MarkNegatives>false</MarkNegatives>
|
||||
<Mask/>
|
||||
<MultiLine>false</MultiLine>
|
||||
<ExtendedEdit>false</ExtendedEdit>
|
||||
<MinValue xsi:nil="true"/>
|
||||
<MaxValue xsi:nil="true"/>
|
||||
<FillFromFillingValue>false</FillFromFillingValue>
|
||||
<FillValue xsi:nil="true"/>
|
||||
<FillChecking>DontCheck</FillChecking>
|
||||
<ChoiceFoldersAndItems>Items</ChoiceFoldersAndItems>
|
||||
<ChoiceParameterLinks/>
|
||||
<ChoiceParameters/>
|
||||
<QuickChoice>Auto</QuickChoice>
|
||||
<CreateOnInput>Auto</CreateOnInput>
|
||||
<ChoiceForm/>
|
||||
<LinkByType/>
|
||||
<ChoiceHistoryOnInput>Auto</ChoiceHistoryOnInput>
|
||||
<Use>ForItem</Use>
|
||||
<Indexing>DontIndex</Indexing>
|
||||
<FullTextSearch>Use</FullTextSearch>
|
||||
<DataHistory>Use</DataHistory>
|
||||
</Properties>
|
||||
</Attribute>
|
||||
<TabularSection uuid="37d27fda-e96a-4b8f-9bce-6be95f1595a0">
|
||||
<InternalInfo>
|
||||
<xr:GeneratedType name="CatalogTabularSection.МашиночитаемыеДоверенностиОрганизаций.ФИО" category="TabularSection">
|
||||
|
||||
@@ -448,6 +448,7 @@
|
||||
// если отсутствует возможность проверить подпись МЧД на сервере
|
||||
// (в настройках установлена проверка подписи на клиенте)
|
||||
// и необходимо выполнить проверку на клиенте.
|
||||
// * ВариантПроверкиСертификатовМЧДЭДО - ПеречислениеСсылка.ВариантыПроверкиСертификатовМЧДЭДО
|
||||
// * ДанныеДляПроверки - Неопределено, См. МашиночитаемыеДоверенностиКлиентСервер.НовыеДанныеДляПроверкиМЧД
|
||||
// * ТекстОшибки - Строка
|
||||
//
|
||||
@@ -460,6 +461,7 @@
|
||||
Результат.Вставить("ТребуетсяПроверкаМЧДНаКлиенте", ТребуетсяПроверкаМЧДНаКлиенте);
|
||||
Результат.Вставить("ДанныеДляПроверки", Неопределено);
|
||||
Результат.Вставить("ТекстОшибки", "");
|
||||
Результат.Вставить("ВариантПроверкиСертификатовМЧДЭДО", МашиночитаемыеДоверенности.ВариантПроверкиСертификатаДоверителя());
|
||||
|
||||
Если ТипЗНч(ДанныеФайла) = Тип("Структура") Тогда
|
||||
ДанныеАрхива = ДанныеФайла;
|
||||
@@ -498,7 +500,7 @@
|
||||
|
||||
ОбновлятьСуществующуюМЧД = Истина;
|
||||
|
||||
РезультатПроверкиНаСервере = Новый Структура("Результат, ТекстОшибки", Истина, "");
|
||||
РезультатПроверкиНаСервере = МашиночитаемыеДоверенности.НовыйОбщийРезультатПроверкиПодписиДоверенности(Истина);
|
||||
РезультатЗагрузки = ЗагрузитьЭлементИзФайлаОбмена(ДанныеДляЗагрузки, ТребуетсяПроверкаМЧДНаКлиенте,
|
||||
ДополнительныеСведения, ОбновлятьСуществующуюМЧД, МЧД, РезультатПроверкиНаСервере);
|
||||
Результат.ТребуетсяПроверкаМЧДНаКлиенте = ТребуетсяПроверкаМЧДНаКлиенте;
|
||||
|
||||
+24
-2
@@ -364,6 +364,28 @@
|
||||
</LabelDecoration>
|
||||
</ChildItems>
|
||||
</UsualGroup>
|
||||
<UsualGroup name="ГруппаНастройки" id="429">
|
||||
<Visible>false</Visible>
|
||||
<Representation>None</Representation>
|
||||
<ShowTitle>false</ShowTitle>
|
||||
<ExtendedTooltip name="ГруппаНастройкиРасширеннаяПодсказка" id="430"/>
|
||||
<ChildItems>
|
||||
<LabelDecoration name="НастройкаПроверки" id="431">
|
||||
<Title formatted="false">
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
<v8:content>Настроить проверку</v8:content>
|
||||
</v8:item>
|
||||
</Title>
|
||||
<Hyperlink>true</Hyperlink>
|
||||
<ContextMenu name="НастройкаПроверкиКонтекстноеМеню" id="432"/>
|
||||
<ExtendedTooltip name="НастройкаПроверкиРасширеннаяПодсказка" id="433"/>
|
||||
<Events>
|
||||
<Event name="Click">НастройкаПроверкиНажатие</Event>
|
||||
</Events>
|
||||
</LabelDecoration>
|
||||
</ChildItems>
|
||||
</UsualGroup>
|
||||
</ChildItems>
|
||||
</UsualGroup>
|
||||
<UsualGroup name="ГруппаСтатусВРеестреФНС" id="165">
|
||||
@@ -823,7 +845,7 @@
|
||||
<xr:Ref>CommonPicture.ПорядокБЭД</xr:Ref>
|
||||
<xr:LoadTransparent>false</xr:LoadTransparent>
|
||||
</HeaderPicture>
|
||||
<ContextMenu name="ПодписанныеДокументыНаправлениеОбменаКартинкаКонтекстноеМеню" id="430"/>
|
||||
<ContextMenu name="ПодписанныеДокументыНаправлениеОбменаКартинкаКонтекстноеМеню" id="435"/>
|
||||
<ExtendedTooltip name="ПодписанныеДокументыНаправлениеОбменаКартинкаРасширеннаяПодсказка" id="382"/>
|
||||
</PictureField>
|
||||
<InputField name="ПодписанныеДокументыСсылка" id="56">
|
||||
@@ -906,7 +928,7 @@
|
||||
<ContextMenu name="ПодписанныеДокументыПодписьВернаКартинкаКонтекстноеМеню" id="383"/>
|
||||
<ExtendedTooltip name="ПодписанныеДокументыПодписьВернаКартинкаРасширеннаяПодсказка" id="384"/>
|
||||
</PictureField>
|
||||
<CheckBoxField name="ПодписанныеДокументыПроверкаВыполненаВРучную" id="429">
|
||||
<CheckBoxField name="ПодписанныеДокументыПроверкаВыполненаВРучную" id="434">
|
||||
<DataPath>ПодписанныеДокументы.ПроверкаВыполненаВРучную</DataPath>
|
||||
<Title>
|
||||
<v8:item>
|
||||
|
||||
+11
-2
@@ -86,7 +86,7 @@
|
||||
|
||||
Если ПротоколПроверкиИзМЧД <> Неопределено Тогда
|
||||
ПротоколПроверкиМЧД = ПротоколПроверкиИзМЧД;
|
||||
Если Не ЗначениеЗаполнено(Объект.ТекстОшибкиПроверкиМЧД)
|
||||
Если Не Объект.Верна И Не ЗначениеЗаполнено(Объект.ТекстОшибкиПроверкиМЧД)
|
||||
И ЗначениеЗаполнено(ПротоколПроверкиИзМЧД.ОписаниеОшибки) Тогда
|
||||
Объект.ТекстОшибкиПроверкиМЧД = ПротоколПроверкиИзМЧД.ОписаниеОшибки;
|
||||
КонецЕсли;
|
||||
@@ -229,6 +229,14 @@
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
&НаКлиенте
|
||||
Процедура НастройкаПроверкиНажатие(Элемент)
|
||||
|
||||
ОткрытьФорму("Обработка.РезультатыПроверкиПодписи.Форма.ИнформацияОНастройкахПроверкиСертификатов", , ЭтотОбъект,
|
||||
, , , , РежимОткрытияОкнаФормы.БлокироватьОкноВладельца);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
#Область ОбработчикиСобытийЭлементовТаблицыФормыДеревоПолномочийСОграничениями
|
||||
@@ -322,7 +330,8 @@
|
||||
|
||||
ДанныеСтроки = Элемент.ДанныеСтроки(ВыбраннаяСтрока);
|
||||
|
||||
Если ДанныеСтроки = Неопределено Тогда
|
||||
Если ДанныеСтроки = Неопределено
|
||||
Или ДанныеСтроки.Ссылка = Неопределено Тогда
|
||||
Возврат;
|
||||
КонецЕсли;
|
||||
|
||||
|
||||
@@ -299,6 +299,17 @@
|
||||
|
||||
// Конец СтандартныеПодсистемы.УправлениеДоступом
|
||||
|
||||
// См. СтандартныеПодсистемыСервер.ПриОпределенииМетодовРазрешенныхДляВызоваКакПроизвольныйКод
|
||||
Процедура ПриОпределенииМетодовРазрешенныхДляВызоваКакПроизвольныйКод(Методы) Экспорт
|
||||
|
||||
Методы.Вставить("ЗагрузитьНастройкиОбменаИзФайла", Истина);
|
||||
Методы.Вставить("ЗаполнитьВерсиюФормата");
|
||||
Методы.Вставить("ЗарегистрироватьДанныеКОбработке");
|
||||
Методы.Вставить("ПерезаполнитьНастройкиОбменСБанками");
|
||||
Методы.Вставить("ПолучитьНастройкиОбменаССервераБанка", Истина);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
+43
-6
@@ -697,9 +697,23 @@
|
||||
// Обновим clientSecret (ТекущийКлиентскийСекретИзФайла) и тем же самым проверим действительность транспортного сертификата
|
||||
ДвоичныеДанныеСертификата = ОбменСБанкамиSberAPIСлужебныйКлиентСервер.ДвоичныеДанныеИзBase64Строки(СертификатПодключения);
|
||||
ТекстОшибки = "";
|
||||
УспешноеОбновлениеКлиентскогоСекрета = ОбновитьКлиентскийСекрет(ДвоичныеДанныеСертификата, ТекстОшибки);
|
||||
|
||||
Если УспешноеОбновлениеКлиентскогоСекрета Тогда
|
||||
РезультатОбновленияКлиентскогоСекрета = ОбновитьКлиентскийСекрет(ДвоичныеДанныеСертификата, ТекстОшибки);
|
||||
|
||||
Если РезультатОбновленияКлиентскогоСекрета.Ошибка = "ОшибкаПароляTLS" Тогда
|
||||
|
||||
ТекстСообщения = НСтр("ru = 'Возможно, был введен пароль от личного кабинета банка или учетной записи.'");
|
||||
ТекстСообщения = ТекстСообщения + " ";
|
||||
ТекстСообщения = ТекстСообщения + НСтр("ru = 'Для продолжения создания настройки необходимо ввести пароль от сертификата шифрования.'");
|
||||
ТекстСообщения = ТекстСообщения + " ";
|
||||
ТекстСообщения = ТекстСообщения + НСтр("ru = 'Этот пароль был указан в личном кабинете банка, при создании нового сертификата.'");
|
||||
ОповещениеПослеПредупрежденияОПароле = Новый ОписаниеОповещения(
|
||||
"ОповещениеПослеПредупрежденияОПароле", ЭтотОбъект);
|
||||
ПоказатьПредупреждение(ОповещениеПослеПредупрежденияОПароле, ТекстСообщения, , НСтр("ru = 'Пароль указан неверно'"));
|
||||
|
||||
Возврат;
|
||||
|
||||
ИначеЕсли РезультатОбновленияКлиентскогоСекрета.Успех Тогда
|
||||
|
||||
ДобавитьНовуюСтраницу(Элементы.СтраницаSberAPI);
|
||||
// Перейдем на этап ввода логина и пароля
|
||||
@@ -2282,6 +2296,17 @@
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
&НаКлиенте
|
||||
Процедура ОповещениеПослеПредупрежденияОПароле(ДополнительныеПараметры) Экспорт
|
||||
|
||||
Сообщение = Новый СообщениеПользователю();
|
||||
Сообщение.Текст = НСтр("ru = 'Укажите пароль от сертификата шифрования'");
|
||||
Сообщение.Поле = "СертификатПодключенияПароль";
|
||||
Сообщение.УстановитьДанные(ЭтотОбъект);
|
||||
Сообщение.Сообщить();
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
#Область АсинхронныйОбмен
|
||||
@@ -3585,6 +3610,7 @@
|
||||
|
||||
КонецЕсли;
|
||||
|
||||
РезультатОбновления = Неопределено;
|
||||
Если ЗначениеЗаполнено(ПредыдущийКлиентскийСекретИзФайла)
|
||||
И ЗначениеЗаполнено(ПредыдущийКлиентскийСекретОбновленный)
|
||||
И ПредыдущийКлиентскийСекретИзФайла = ТекущийКлиентскийСекретИзФайла Тогда
|
||||
@@ -3600,7 +3626,8 @@
|
||||
|
||||
ПредыдущийКлиентскийСекретОбновленный = "";
|
||||
ПредыдущийКлиентскийСекретИзФайла = ТекущийКлиентскийСекретИзФайла;
|
||||
ОбменСБанкамиSberAPIСлужебный.ОбновитьКлиентскийСекрет(
|
||||
|
||||
РезультатОбновления = ОбменСБанкамиSberAPIСлужебный.ОбновитьКлиентскийСекрет(
|
||||
ИдентификаторОрганизации,
|
||||
ПредыдущийКлиентскийСекретИзФайла,
|
||||
ДвоичныеДанныеСертификата,
|
||||
@@ -3617,15 +3644,25 @@
|
||||
СертификатПодключенияПароль,
|
||||
ИдентификаторОрганизации);
|
||||
|
||||
Если ЗначениеЗаполнено(ПредыдущийКлиентскийСекретОбновленный) Тогда
|
||||
Результат = Новый Структура();
|
||||
Результат.Вставить("Успех", Ложь);
|
||||
Результат.Вставить("Ошибка", "");
|
||||
|
||||
Если РезультатОбновления = "ОшибкаПароляTLS" Тогда
|
||||
|
||||
Результат.Вставить("Ошибка", "ОшибкаПароляTLS");
|
||||
Возврат Результат;
|
||||
|
||||
ИначеЕсли ЗначениеЗаполнено(ПредыдущийКлиентскийСекретОбновленный) Тогда
|
||||
|
||||
ТекущийКлиентскийСекретИзФайла = ПредыдущийКлиентскийСекретОбновленный;
|
||||
|
||||
Возврат Истина;
|
||||
Результат.Вставить("Успех", Истина);
|
||||
Возврат Результат;
|
||||
|
||||
Иначе
|
||||
|
||||
Возврат Ложь;
|
||||
Возврат Результат;
|
||||
|
||||
КонецЕсли;
|
||||
|
||||
|
||||
@@ -16,9 +16,10 @@
|
||||
|
||||
ОформитьИСкрытьНедействительныеНастройкиОбмена();
|
||||
|
||||
ПравоНастройкиОбмена = ОбменСБанкамиСлужебныйВызовСервера.ПравоНастройкиОбмена();
|
||||
Элементы.СоздатьВручную.Видимость = ПравоНастройкиОбмена;
|
||||
Элементы.СписокЗагрузитьНастройкиИзФайла.Видимость = ПравоНастройкиОбмена;
|
||||
ПравоВыполненияОбмена = ОбменСБанкамиСлужебныйВызовСервера.ПравоВыполненияОбмена();
|
||||
Элементы.СоздатьВручную.Видимость = ПравоВыполненияОбмена;
|
||||
Элементы.СписокЗагрузитьНастройкиИзФайла.Видимость = ПравоВыполненияОбмена;
|
||||
Элементы.ФормаОткрытьСообщенияОбменаСБанками.Видимость = ПравоВыполненияОбмена;
|
||||
Элементы.ОткрытьПакетыЭДОСБанками.Видимость = ПравоВыполненияОбмена;
|
||||
|
||||
|
||||
@@ -1853,13 +1853,19 @@
|
||||
Элементы.СертификатыБанкаВыгрузить.Видимость = Ложь;
|
||||
КонецЕсли;
|
||||
|
||||
Если НЕ ПравоДоступа("Изменение", Метаданные.Справочники.НастройкиОбменСБанками) Тогда
|
||||
Если Не ОбменСБанкамиСлужебныйВызовСервера.ПравоНастройкиОбмена() Тогда
|
||||
Элементы.ЗагрузитьВнешнийМодульИзФайла.Видимость = Ложь;
|
||||
Элементы.ЗагрузитьНастройки.Доступность = Ложь;
|
||||
Элементы.ЗагрузитьНастройки.Видимость = Ложь;
|
||||
Элементы.ВключитьАвтоматическоеПолучениеВыписки.Доступность = Ложь;
|
||||
Элементы.ВыключитьАвтоматическоеПолучениеВыписки.Доступность = Ложь;
|
||||
Элементы.ИсходящиеДокументыПодписыватьВБанке.Доступность = Ложь;
|
||||
Элементы.ОткрытьДополнительныеПараметры.Доступность = Ложь;
|
||||
Элементы.ОткрытьДополнительныеПараметры.Видимость = Ложь;
|
||||
Элементы.ФормаЗаписатьИЗакрыть.Видимость = Ложь;
|
||||
|
||||
Если Элементы.Найти("ФормаЗаписать") <> Неопределено Тогда
|
||||
Элементы.ФормаЗаписать.Видимость = Ложь;
|
||||
КонецЕсли;
|
||||
|
||||
КонецЕсли;
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
+1015
-245
File diff suppressed because it is too large
Load Diff
@@ -471,7 +471,7 @@
|
||||
<Presentation>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
<v8:content>MAX</v8:content>
|
||||
<v8:content>МАКС</v8:content>
|
||||
</v8:item>
|
||||
</Presentation>
|
||||
<Value xsi:type="xs:string">MAX</Value>
|
||||
|
||||
@@ -227,8 +227,7 @@
|
||||
<Title formatted="true">
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
<v8:content><bgcolor #ffffe1><font Segoe UI><fontsize 9>Ключ доступа, полученный сотрудником на портале Госуслуг. Подробнее см. инструкцию по интеграции с Госключом по API </></><font Segoe UI><fontsize 9><link https://partners.gosuslugi.ru/catalog/goskey>https://partners.gosuslugi.ru/catalog/goskey</></></></>
|
||||
</v8:content>
|
||||
<v8:content>Ключ доступа, полученный сотрудником на портале Госуслуг. Подробнее см. инструкцию по интеграции с Госключом по API <link https://partners.gosuslugi.ru/catalog/api_for_gu>https://partners.gosuslugi.ru/catalog/api_for_gu</></v8:content>
|
||||
</v8:item>
|
||||
</Title>
|
||||
</ExtendedTooltip>
|
||||
|
||||
@@ -17,7 +17,7 @@
|
||||
СтандартнаяОбработка = Ложь;
|
||||
ВыбраннаяФорма = "Обработка.НастройкиПлатежныхСистем.Форма.Форма";
|
||||
НастройкиПлатежныхСистемСлужебный.ОбработкаПолученияФормыСписка(
|
||||
"ИнтернетЭквайринг",
|
||||
НастройкиПлатежныхСистемКлиентСервер.ИмяПодсистемыИнтернетЭквайринг(),
|
||||
ВидФормы,
|
||||
Параметры);
|
||||
|
||||
|
||||
@@ -32,22 +32,6 @@
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
#Область СлужебныйПрограммныйИнтерфейс
|
||||
|
||||
#Область ИнтеграцияСБиблиотекойСтандартныхПодсистем
|
||||
|
||||
// См. СтандартныеПодсистемыСервер.ПриОпределенииМетодовРазрешенныхДляВызоваКакПроизвольныйКод
|
||||
//
|
||||
Процедура ПриОпределенииМетодовРазрешенныхДляВызоваКакПроизвольныйКод(Методы) Экспорт
|
||||
|
||||
Методы.Вставить("НоваяНастройкаПодключения", Истина);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
#Область СлужебныеПроцедурыИФункции
|
||||
|
||||
// Создает новую настройку подключения к онлайн-заказам.
|
||||
|
||||
@@ -63,7 +63,6 @@
|
||||
<Representation>List</Representation>
|
||||
<CommandBarLocation>None</CommandBarLocation>
|
||||
<DefaultItem>true</DefaultItem>
|
||||
<UseAlternationRowColor>true</UseAlternationRowColor>
|
||||
<InitialTreeView>ExpandTopLevel</InitialTreeView>
|
||||
<EnableStartDrag>true</EnableStartDrag>
|
||||
<DataPath>Список</DataPath>
|
||||
|
||||
@@ -178,6 +178,7 @@
|
||||
<v8:content>Прием оплат от физлиц</v8:content>
|
||||
</v8:item>
|
||||
</Title>
|
||||
<ShowTitle>false</ShowTitle>
|
||||
<ExtendedTooltip name="ГруппаПриемОплатОтФизическихЛицРасширеннаяПодсказка" id="186"/>
|
||||
<ChildItems>
|
||||
<UsualGroup name="ГруппаПодключениеКСБПc2b" id="73">
|
||||
@@ -338,6 +339,64 @@
|
||||
</InputField>
|
||||
</ChildItems>
|
||||
</UsualGroup>
|
||||
<UsualGroup name="ГруппаПодключениеЯндексПэй" id="264">
|
||||
<Title>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
<v8:content>Яндекс Пэй</v8:content>
|
||||
</v8:item>
|
||||
</Title>
|
||||
<Group>AlwaysHorizontal</Group>
|
||||
<Representation>None</Representation>
|
||||
<United>false</United>
|
||||
<ShowTitle>false</ShowTitle>
|
||||
<ExtendedTooltip name="ГруппаПодключениеЯндексПэйРасширеннаяПодсказка" id="265"/>
|
||||
<ChildItems>
|
||||
<CheckBoxField name="ПриниматьОплатуЯндексПэй" id="266">
|
||||
<DataPath>ПриниматьОплатуЯндексПэй</DataPath>
|
||||
<Title>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
<v8:content>Яндекс Пэй</v8:content>
|
||||
</v8:item>
|
||||
</Title>
|
||||
<TitleLocation>Right</TitleLocation>
|
||||
<CheckBoxType>Switcher</CheckBoxType>
|
||||
<ContextMenu name="ПриниматьОплатуЯндексПэйКонтекстноеМеню" id="267"/>
|
||||
<ExtendedTooltip name="ПриниматьОплатуЯндексПэйРасширеннаяПодсказка" id="268"/>
|
||||
<Events>
|
||||
<Event name="OnChange">ПриниматьОплатуЯндексПэйПриИзменении</Event>
|
||||
</Events>
|
||||
</CheckBoxField>
|
||||
<InputField name="НастройкаПодключенияКЯндексПэй" id="270">
|
||||
<DataPath>НастройкаПодключенияКЯндексПэй</DataPath>
|
||||
<Title>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
<v8:content>Яндекс Пэй</v8:content>
|
||||
</v8:item>
|
||||
</Title>
|
||||
<TitleLocation>None</TitleLocation>
|
||||
<ClearButton>true</ClearButton>
|
||||
<ExtendedEditMultipleValues>true</ExtendedEditMultipleValues>
|
||||
<AutoMarkIncomplete>true</AutoMarkIncomplete>
|
||||
<ChooseType>false</ChooseType>
|
||||
<InputHint>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
<v8:content>Настройка подключения к Яндекс Пэй</v8:content>
|
||||
</v8:item>
|
||||
</InputHint>
|
||||
<ContextMenu name="НастройкаПодключенияКЯндексПэйКонтекстноеМеню" id="271"/>
|
||||
<ExtendedTooltip name="НастройкаПодключенияКЯндексПэйРасширеннаяПодсказка" id="272"/>
|
||||
<Events>
|
||||
<Event name="OnChange">НастройкаПодключенияКЯндексПэйПриИзменении</Event>
|
||||
<Event name="StartChoice">НастройкаПодключенияКЯндексПэйНачалоВыбора</Event>
|
||||
<Event name="Creating">НастройкаПодключенияКЯндексПэйСоздание</Event>
|
||||
</Events>
|
||||
</InputField>
|
||||
</ChildItems>
|
||||
</UsualGroup>
|
||||
<UsualGroup name="ГруппаПоБанковскимРеквизитамФизЛица" id="115">
|
||||
<Title>
|
||||
<v8:item>
|
||||
@@ -437,6 +496,7 @@
|
||||
<v8:content>Прием оплат от юрлиц</v8:content>
|
||||
</v8:item>
|
||||
</Title>
|
||||
<ShowTitle>false</ShowTitle>
|
||||
<ExtendedTooltip name="ГруппаПриемОплатОтЮридическихЛицРасширеннаяПодсказка" id="188"/>
|
||||
<ChildItems>
|
||||
<UsualGroup name="ГруппаПодключениеКСБПb2b" id="100">
|
||||
@@ -746,6 +806,27 @@
|
||||
<v8:Type>xs:boolean</v8:Type>
|
||||
</Type>
|
||||
</Attribute>
|
||||
<Attribute name="НастройкаПодключенияКЯндексПэй" id="21">
|
||||
<Title>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
<v8:content>Настройка подключения к Яндекс Пэй</v8:content>
|
||||
</v8:item>
|
||||
</Title>
|
||||
<Type/>
|
||||
<SavedData>true</SavedData>
|
||||
</Attribute>
|
||||
<Attribute name="ПриниматьОплатуЯндексПэй" id="22">
|
||||
<Title>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
<v8:content>Принимать оплату Яндекс Пэй</v8:content>
|
||||
</v8:item>
|
||||
</Title>
|
||||
<Type>
|
||||
<v8:Type>xs:boolean</v8:Type>
|
||||
</Type>
|
||||
</Attribute>
|
||||
</Attributes>
|
||||
<Commands>
|
||||
<Command name="НастроитьСтраницуЗаказа" id="1">
|
||||
|
||||
+142
-17
@@ -28,6 +28,9 @@
|
||||
ИначеЕсли НастройкаОплаты.СпособОплаты = Перечисления.СпособыОплатыОнлайнЗаказов.ОзонПэй Тогда
|
||||
НастройкаПодключенияКОзонПэй = НастройкаОплаты.НастройкаПодключения;
|
||||
ПриниматьОплатуОзонПэй = НастройкаОплаты.Используется;
|
||||
ИначеЕсли НастройкаОплаты.СпособОплаты = Перечисления.СпособыОплатыОнлайнЗаказов.ЯндексПэй Тогда
|
||||
НастройкаПодключенияКЯндексПэй = НастройкаОплаты.НастройкаПодключения;
|
||||
ПриниматьОплатуЯндексПэй = НастройкаОплаты.Используется;
|
||||
КонецЕсли;
|
||||
КонецЦикла;
|
||||
|
||||
@@ -70,6 +73,8 @@
|
||||
УправлениеЭлементамиФормыПоДанным();
|
||||
УстановитьДоступностьНастроекОплатФискализации();
|
||||
|
||||
Элементы.ФормаОбновитьНастройки.Доступность = Не ТолькоПросмотр;
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
&НаСервере
|
||||
@@ -111,6 +116,18 @@
|
||||
|
||||
КонецЕсли;
|
||||
|
||||
Если ПриниматьОплатуЯндексПэй
|
||||
И Не ЗначениеЗаполнено(НастройкаПодключенияКЯндексПэй) Тогда
|
||||
|
||||
ОбщегоНазначения.СообщитьПользователю(
|
||||
НСтр("ru = 'Не заполнена настройка подключения к Яндекс Пэй.'"),
|
||||
,
|
||||
"НастройкаПодключенияКЯндексПэй",
|
||||
,
|
||||
Отказ);
|
||||
|
||||
КонецЕсли;
|
||||
|
||||
Если Объект.ФискализироватьОнлайнЗаказы
|
||||
И Не ЗначениеЗаполнено(Объект.НастройкаПодключенияКОблачнойКассе) Тогда
|
||||
|
||||
@@ -175,6 +192,7 @@
|
||||
ДополнительныеПараметры = Новый Структура;
|
||||
ДополнительныеПараметры.Вставить("ЗакрытьПослеЗаписи", Ложь);
|
||||
ДополнительныеПараметры.Вставить("ВыполнитьОбработкуЗавершенияОперацииСТокенами", Истина);
|
||||
ДополнительныеПараметры.Вставить("ВидОбрабатываемойКоманды", "");
|
||||
ЗаполнитьЗначенияСвойств(ДополнительныеПараметры, ПараметрыЗаписи);
|
||||
|
||||
Если ОписаниеОповещенияОЗакрытии <> Неопределено
|
||||
@@ -407,6 +425,57 @@
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
#Область ЯндексПэй
|
||||
|
||||
&НаКлиенте
|
||||
Процедура ПриниматьОплатуЯндексПэйПриИзменении(Элемент)
|
||||
|
||||
УстановитьИспользованиеСпособаОплаты(
|
||||
ПредопределенноеЗначение("Перечисление.СпособыОплатыОнлайнЗаказов.ЯндексПэй"),
|
||||
ПриниматьОплатуЯндексПэй);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
&НаКлиенте
|
||||
Процедура НастройкаПодключенияКЯндексПэйПриИзменении(Элемент)
|
||||
|
||||
ПриИзмененииНастройкиОплаты(
|
||||
ПредопределенноеЗначение("Перечисление.СпособыОплатыОнлайнЗаказов.ЯндексПэй"),
|
||||
НастройкаПодключенияКЯндексПэй);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
&НаКлиенте
|
||||
Процедура НастройкаПодключенияКЯндексПэйНачалоВыбора(Элемент, ДанныеВыбора, ВыборДобавлением, СтандартнаяОбработка)
|
||||
|
||||
СтандартнаяОбработка = Ложь;
|
||||
|
||||
ОнлайнЗаказыКлиентСобытия.ПриВыбореНастройкиПодключения(
|
||||
ЭтотОбъект,
|
||||
Новый ОписаниеОповещения("ПослеВыбораНастройкиПодключенияЯндексПэй", ЭтотОбъект),
|
||||
ПредопределенноеЗначение("Перечисление.СпособыОплатыОнлайнЗаказов.ЯндексПэй"));
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
&НаКлиенте
|
||||
Процедура НастройкаПодключенияКЯндексПэйСоздание(Элемент, СтандартнаяОбработка)
|
||||
|
||||
СтандартнаяОбработка = Ложь;
|
||||
|
||||
Если Не ОбщегоНазначенияКлиент.ПодсистемаСуществует("ИнтернетПоддержкаПользователей.НастройкиПлатежныхСистем") Тогда
|
||||
Возврат;
|
||||
КонецЕсли;
|
||||
|
||||
ОнлайнЗаказыКлиентСобытия.ПриПодключенииПлатежнойСистемы(
|
||||
ПредопределенноеЗначение("Перечисление.СпособыОплатыОнлайнЗаказов.ЯндексПэй"),
|
||||
Новый ОписаниеОповещения(
|
||||
"СозданиеНастройкиПодключенияКЯндексПэйЗавершение",
|
||||
ЭтотОбъект));
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
#Область ПоРеквизитам
|
||||
|
||||
&НаКлиенте
|
||||
@@ -520,8 +589,9 @@
|
||||
&НаКлиенте
|
||||
Процедура НастроитьСтраницуЗаказа(Команда)
|
||||
|
||||
Если Не ЗначениеЗаполнено(Объект.Ссылка) Тогда
|
||||
ЗадатьВопросОЗаписи("ВнешнийВидСтраницы", Неопределено);
|
||||
Если Не ЗначениеЗаполнено(Объект.Ссылка)
|
||||
Или Модифицированность Тогда
|
||||
ЗадатьВопросОЗаписи("ВнешнийВидСтраницы");
|
||||
Иначе
|
||||
НастроитьВнешнийВидСтраницы();
|
||||
КонецЕсли;
|
||||
@@ -552,15 +622,14 @@
|
||||
#Область ВыборНастройки
|
||||
|
||||
&НаКлиенте
|
||||
Процедура ЗадатьВопросОЗаписи(ВидНастройки, НавигационнаяСсылка = Неопределено)
|
||||
Процедура ЗадатьВопросОЗаписи(ВидОбрабатываемойКоманды)
|
||||
|
||||
Оповещение = Новый ОписаниеОповещения(
|
||||
"ПослеОтветаНаВопросОЗаписи",
|
||||
ЭтотОбъект,
|
||||
Новый Структура(
|
||||
"ВидОбрабатываемойНастройки, НавигационнаяСсылка",
|
||||
ВидНастройки,
|
||||
НавигационнаяСсылка));
|
||||
"ВидОбрабатываемойКоманды",
|
||||
ВидОбрабатываемойКоманды));
|
||||
|
||||
Кнопки = Новый СписокЗначений;
|
||||
Кнопки.Добавить(КодВозвратаДиалога.Да, "Записать");
|
||||
@@ -577,17 +646,7 @@
|
||||
Процедура ПослеОтветаНаВопросОЗаписи(Результат, Параметры) Экспорт
|
||||
|
||||
Если Результат = КодВозвратаДиалога.Да Тогда
|
||||
|
||||
Записать();
|
||||
|
||||
Если Не ЗначениеЗаполнено(Объект.Ссылка) Тогда
|
||||
Возврат;
|
||||
КонецЕсли;
|
||||
|
||||
Если Параметры.ВидОбрабатываемойНастройки = "ВнешнийВидСтраницы" Тогда
|
||||
НастроитьВнешнийВидСтраницы();
|
||||
КонецЕсли;
|
||||
|
||||
Записать(Параметры);
|
||||
КонецЕсли;
|
||||
|
||||
КонецПроцедуры
|
||||
@@ -706,6 +765,23 @@
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
&НаКлиенте
|
||||
Процедура ПослеВыбораНастройкиПодключенияЯндексПэй(
|
||||
НастройкаПодключения,
|
||||
ДополнительныеПараметры) Экспорт
|
||||
|
||||
Если НастройкаПодключения <> Неопределено Тогда
|
||||
|
||||
НастройкаПодключенияКЯндексПэй = НастройкаПодключения;
|
||||
|
||||
ПриИзмененииНастройкиОплаты(
|
||||
ПредопределенноеЗначение("Перечисление.СпособыОплатыОнлайнЗаказов.ЯндексПэй"),
|
||||
НастройкаПодключения);
|
||||
|
||||
КонецЕсли;
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
&НаКлиенте
|
||||
Процедура ПослеВыбораНастройкиПодключенияСБПb2b(
|
||||
НастройкаПодключения,
|
||||
@@ -765,6 +841,20 @@
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
&НаКлиенте
|
||||
Процедура СозданиеНастройкиПодключенияКЯндексПэйЗавершение(
|
||||
Результат,
|
||||
ДополнительныеПараметры) Экспорт
|
||||
|
||||
Если ЗначениеЗаполнено(Результат) Тогда
|
||||
НастройкаПодключенияКЯндексПэй = Результат;
|
||||
ПриИзмененииНастройкиОплаты(
|
||||
ПредопределенноеЗначение("Перечисление.СпособыОплатыОнлайнЗаказов.ЯндексПэй"),
|
||||
НастройкаПодключенияКЯндексПэй);
|
||||
КонецЕсли;
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
&НаКлиенте
|
||||
Процедура СозданиеНастройкиПодключенияКСБПb2bЗавершение(
|
||||
Результат,
|
||||
@@ -804,6 +894,7 @@
|
||||
|
||||
ДополнительныеПараметры = Новый Структура;
|
||||
ДополнительныеПараметры.Вставить("ЗакрытьПослеЗаписи", Ложь);
|
||||
ДополнительныеПараметры.Вставить("ВидОбрабатываемойКоманды", "");
|
||||
ЗаполнитьЗначенияСвойств(ДополнительныеПараметры, Параметры);
|
||||
|
||||
Если Результат = КодВозвратаДиалога.Да Тогда
|
||||
@@ -826,6 +917,10 @@
|
||||
ДополнительныеПараметры.ЗакрытьПослеЗаписи,
|
||||
Ложь);
|
||||
|
||||
Если ДополнительныеПараметры.ВидОбрабатываемойКоманды = "ВнешнийВидСтраницы" Тогда
|
||||
НастроитьВнешнийВидСтраницы();
|
||||
КонецЕсли;
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
&НаСервереБезКонтекста
|
||||
@@ -933,6 +1028,10 @@
|
||||
&НаКлиенте
|
||||
Процедура ПослеЗавершенияОперацийСТокенами(ДополнительныеПараметры)
|
||||
|
||||
ПараметрыОбработки = Новый Структура;
|
||||
ПараметрыОбработки.Вставить("ВидОбрабатываемойКоманды", "");
|
||||
ЗаполнитьЗначенияСвойств(ПараметрыОбработки, ДополнительныеПараметры);
|
||||
|
||||
Если РезультатПроверкиШаблонов <> Неопределено
|
||||
И Не РезультатПроверкиШаблонов.ВсеШаблоны Тогда
|
||||
|
||||
@@ -954,6 +1053,10 @@
|
||||
Ложь);
|
||||
КонецЕсли;
|
||||
|
||||
Если ПараметрыОбработки.ВидОбрабатываемойКоманды = "ВнешнийВидСтраницы" Тогда
|
||||
НастроитьВнешнийВидСтраницы();
|
||||
КонецЕсли;
|
||||
|
||||
КонецЕсли;
|
||||
|
||||
КонецПроцедуры
|
||||
@@ -1356,6 +1459,7 @@
|
||||
Элементы.ГруппаПодключениеКСБПc2b.Доступность = НастройкаОнлайнЗаказовДоступна;
|
||||
Элементы.ГруппаПодключениеЭквайринг.Доступность = НастройкаОнлайнЗаказовДоступна;
|
||||
Элементы.ГруппаПодключениеОзонПэй.Доступность = НастройкаОнлайнЗаказовДоступна;
|
||||
Элементы.ГруппаПодключениеЯндексПэй.Доступность = НастройкаОнлайнЗаказовДоступна;
|
||||
Элементы.ГруппаПоБанковскимРеквизитамФизЛица.Доступность = НастройкаОнлайнЗаказовДоступна;
|
||||
Элементы.ГруппаПодключениеКОблачнойКассе.Доступность = НастройкаОнлайнЗаказовДоступна;
|
||||
Элементы.ГруппаПодключениеКСБПb2b.Доступность = НастройкаОнлайнЗаказовДоступна;
|
||||
@@ -1370,6 +1474,7 @@
|
||||
УстановитьВидимостьПредставлениеОблачнойФискализации();
|
||||
УстановитьПредставлениеДекорацииПредупреждение();
|
||||
УстановитьВидимостьПредставлениеОзонПэй();
|
||||
УстановитьВидимостьПредставлениеЯндексПэй();
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
@@ -1389,6 +1494,7 @@
|
||||
|
||||
Элементы.НастройкаПодключенияКСБПc2b.Доступность = ПриниматьОплатуСБПc2b;
|
||||
Элементы.НастройкаПодключенияКОзонПэй.Доступность = ПриниматьОплатуОзонПэй;
|
||||
Элементы.НастройкаПодключенияКЯндексПэй.Доступность = ПриниматьОплатуЯндексПэй;
|
||||
Элементы.НастройкаПодключенияКИнтернетЭквайрингу.Доступность = ПриниматьОплатуИнтернетЭквайринг;
|
||||
Элементы.НастройкаПодключенияКОблачнойКассе.Доступность = Объект.ФискализироватьОнлайнЗаказы;
|
||||
|
||||
@@ -1477,6 +1583,25 @@
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
&НаСервере
|
||||
Процедура УстановитьВидимостьПредставлениеЯндексПэй()
|
||||
|
||||
Если ЧтениеНастроекПлатежныхСистемДоступно
|
||||
И ОбщегоНазначения.ПодсистемаСуществует("ИнтернетПоддержкаПользователей.ПлатежныеСистемы.ЯндексПэй") Тогда
|
||||
|
||||
Элементы.ГруппаПодключениеЯндексПэй.Видимость = Истина;
|
||||
|
||||
Если Не ЗначениеЗаполнено(НастройкаПодключенияКЯндексПэй) Тогда
|
||||
НастройкаПодключенияКЯндексПэй =
|
||||
ПредопределенноеЗначение("Справочник.НастройкиПодключенияКПлатежнымСистемам.ПустаяСсылка");
|
||||
КонецЕсли;
|
||||
|
||||
Иначе
|
||||
Элементы.ГруппаПодключениеЯндексПэй.Видимость = Ложь;
|
||||
КонецЕсли;
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
&НаСервере
|
||||
Процедура УстановитьВидимостьПредставлениеОблачнойФискализации()
|
||||
|
||||
|
||||
@@ -13,10 +13,11 @@
|
||||
Процедура ОбработкаПолученияФормы(ВидФормы, Параметры, ВыбраннаяФорма, ДополнительнаяИнформация, СтандартнаяОбработка)
|
||||
|
||||
Если ВидФормы = "ФормаСписка" Или ВидФормы = "ФормаВыбора" Тогда
|
||||
|
||||
СтандартнаяОбработка = Ложь;
|
||||
ВыбраннаяФорма = "Обработка.НастройкиПлатежныхСистем.Форма.Форма";
|
||||
НастройкиПлатежныхСистемСлужебный.ОбработкаПолученияФормыСписка(
|
||||
"Все",
|
||||
НастройкиПлатежныхСистемКлиентСервер.ИмяПодсистемыПлатежныеСистемы(),
|
||||
ВидФормы,
|
||||
Параметры);
|
||||
|
||||
@@ -191,13 +192,12 @@
|
||||
// Возвращает перечень настроек подключения.
|
||||
//
|
||||
// Параметры:
|
||||
// ВариантНастройки - ПеречислениеСсылка.ВариантыНастройкиСБП - вариант настройки Системы быстрых платежей.
|
||||
// ПлатежныйСервис - ПеречислениеСсылка.ПлатежныеСервисы - платежных сервис.
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Массив Из Структура - перечень настроек подключения и их параметров:
|
||||
// * НастройкаПодключения - СправочникСсылка.НастройкиПодключенияКСистемеБыстрыхПлатежей - настройка подключения;
|
||||
// * НастройкаПодключения - СправочникСсылка.НастройкиПодключенияКПлатежнымСистемам - настройка подключения;
|
||||
// * Используется - Булево - признак активности настройки.
|
||||
// * ИдентификаторУчастника - Строка - Идентификатор участника СБП.
|
||||
//
|
||||
Функция НастройкиПодключенияПоСервису(ПлатежныйСервис) Экспорт
|
||||
|
||||
|
||||
+62
-14
@@ -6,13 +6,13 @@
|
||||
<v8:content>Настройка подключения</v8:content>
|
||||
</v8:item>
|
||||
</Title>
|
||||
<WindowOpeningMode>LockOwnerWindow</WindowOpeningMode>
|
||||
<AutoTitle>false</AutoTitle>
|
||||
<CommandSet>
|
||||
<ExcludedCommand>Copy</ExcludedCommand>
|
||||
<ExcludedCommand>SetDeletionMark</ExcludedCommand>
|
||||
<ExcludedCommand>WriteAndClose</ExcludedCommand>
|
||||
</CommandSet>
|
||||
<ShowTitle>false</ShowTitle>
|
||||
<UseForFoldersAndItems>Items</UseForFoldersAndItems>
|
||||
<AutoCommandBar name="ФормаКоманднаяПанель" id="-1">
|
||||
<Autofill>false</Autofill>
|
||||
@@ -23,6 +23,11 @@
|
||||
<CommandName>Form.Command.ЗаписатьИЗакрыть</CommandName>
|
||||
<ExtendedTooltip name="ФормаЗаписатьИЗакрытьРасширеннаяПодсказка" id="36"/>
|
||||
</Button>
|
||||
<Button name="ФормаЗаписать" id="45">
|
||||
<Type>CommandBarButton</Type>
|
||||
<CommandName>Form.StandardCommand.Write</CommandName>
|
||||
<ExtendedTooltip name="ФормаЗаписатьРасширеннаяПодсказка" id="46"/>
|
||||
</Button>
|
||||
<ButtonGroup name="КомандыФормы" id="39">
|
||||
<Title>
|
||||
<v8:item>
|
||||
@@ -33,11 +38,6 @@
|
||||
<CommandSource>Form</CommandSource>
|
||||
<ExtendedTooltip name="КомандыФормыРасширеннаяПодсказка" id="40"/>
|
||||
</ButtonGroup>
|
||||
<Button name="ФормаПроверитьПодключение" id="28">
|
||||
<Type>CommandBarButton</Type>
|
||||
<CommandName>Form.Command.ПроверитьПодключение</CommandName>
|
||||
<ExtendedTooltip name="ФормаПроверитьПодключениеРасширеннаяПодсказка" id="29"/>
|
||||
</Button>
|
||||
</ChildItems>
|
||||
</AutoCommandBar>
|
||||
<Events>
|
||||
@@ -69,6 +69,18 @@
|
||||
<ContextMenu name="НаименованиеКонтекстноеМеню" id="13"/>
|
||||
<ExtendedTooltip name="НаименованиеРасширеннаяПодсказка" id="14"/>
|
||||
</InputField>
|
||||
<UsualGroup name="ГруппаКолонки" id="47">
|
||||
<Title>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
<v8:content>Колонки</v8:content>
|
||||
</v8:item>
|
||||
</Title>
|
||||
<Group>Vertical</Group>
|
||||
<Representation>None</Representation>
|
||||
<ShowTitle>false</ShowTitle>
|
||||
<ExtendedTooltip name="ГруппаКолонкиРасширеннаяПодсказка" id="48"/>
|
||||
<ChildItems>
|
||||
<UsualGroup name="ГруппаНастройкиПодключения" id="10" DisplayImportance="Usual">
|
||||
<Title>
|
||||
<v8:item>
|
||||
@@ -79,7 +91,27 @@
|
||||
<Group>Vertical</Group>
|
||||
<ControlRepresentation>Picture</ControlRepresentation>
|
||||
<Representation>NormalSeparation</Representation>
|
||||
<ShowTitle>false</ShowTitle>
|
||||
<ExtendedTooltip name="ГруппаНастройкиПодключенияРасширеннаяПодсказка" id="11"/>
|
||||
<ChildItems>
|
||||
<UsualGroup name="ГруппаНастройкиАутентификации" id="53">
|
||||
<Title>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
<v8:content>Настройки аутентификации</v8:content>
|
||||
</v8:item>
|
||||
</Title>
|
||||
<Group>Vertical</Group>
|
||||
<Representation>None</Representation>
|
||||
<ShowTitle>false</ShowTitle>
|
||||
<ExtendedTooltip name="ГруппаНастройкиАутентификацииРасширеннаяПодсказка" id="54"/>
|
||||
</UsualGroup>
|
||||
<Button name="ПроверитьПодключение" id="49">
|
||||
<Type>UsualButton</Type>
|
||||
<CommandName>Form.Command.ПроверитьПодключение</CommandName>
|
||||
<ExtendedTooltip name="ПроверитьПодключениеРасширеннаяПодсказка" id="50"/>
|
||||
</Button>
|
||||
</ChildItems>
|
||||
</UsualGroup>
|
||||
<UsualGroup name="ГруппаНастройкиОплаты" id="23" DisplayImportance="Usual">
|
||||
<Title>
|
||||
@@ -91,9 +123,10 @@
|
||||
<Group>Vertical</Group>
|
||||
<ControlRepresentation>Picture</ControlRepresentation>
|
||||
<Representation>NormalSeparation</Representation>
|
||||
<ShowTitle>false</ShowTitle>
|
||||
<ExtendedTooltip name="ГруппаНастройкиОплатыРасширеннаяПодсказка" id="24"/>
|
||||
</UsualGroup>
|
||||
<UsualGroup name="ГруппаДополнительныеНастройки" id="30">
|
||||
<UsualGroup name="ГруппаДополнительныеНастройки" id="62">
|
||||
<Title>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
@@ -103,25 +136,40 @@
|
||||
<Group>Vertical</Group>
|
||||
<Collapsed>true</Collapsed>
|
||||
<ControlRepresentation>Picture</ControlRepresentation>
|
||||
<Representation>None</Representation>
|
||||
<ShowTitle>false</ShowTitle>
|
||||
<ExtendedTooltip name="ГруппаДополнительныеНастройкиРасширеннаяПодсказка" id="31"/>
|
||||
<ExtendedTooltip name="ГруппаДополнительныеНастройкиРасширеннаяПодсказка" id="63"/>
|
||||
<ChildItems>
|
||||
<LabelDecoration name="ДекорацияНастройкиШаблонов" id="32">
|
||||
<LabelDecoration name="ДекорацияНастройкиШаблонов" id="64">
|
||||
<Title formatted="true">
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
<v8:content><color #000000><link open:paymentPurpose>Шаблоны назначения (%1)</></></v8:content>
|
||||
<v8:content>Шаблоны назначения: <link open:paymentPurpose>Настроить</></v8:content>
|
||||
</v8:item>
|
||||
</Title>
|
||||
<ToolTipRepresentation>ShowLeft</ToolTipRepresentation>
|
||||
<GroupHorizontalAlign>Left</GroupHorizontalAlign>
|
||||
<ContextMenu name="ДекорацияНастройкиШаблоновКонтекстноеМеню" id="33"/>
|
||||
<ExtendedTooltip name="ДекорацияНастройкиШаблоновРасширеннаяПодсказка" id="34"/>
|
||||
<ContextMenu name="ДекорацияНастройкиШаблоновКонтекстноеМеню" id="65"/>
|
||||
<ExtendedTooltip name="ДекорацияНастройкиШаблоновРасширеннаяПодсказка" id="66"/>
|
||||
<Events>
|
||||
<Event name="URLProcessing">ДекорацияНастройкиШаблоновОбработкаНавигационнойСсылки</Event>
|
||||
</Events>
|
||||
</LabelDecoration>
|
||||
<LabelDecoration name="ДекорацияКассовыеСсылки" id="67">
|
||||
<Title formatted="true">
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
<v8:content>Кассовые QR-коды: <link open:cashQrc>Настроить</></v8:content>
|
||||
</v8:item>
|
||||
</Title>
|
||||
<GroupHorizontalAlign>Left</GroupHorizontalAlign>
|
||||
<ContextMenu name="ДекорацияКассовыеСсылкиКонтекстноеМеню" id="68"/>
|
||||
<ExtendedTooltip name="ДекорацияКассовыеСсылкиРасширеннаяПодсказка" id="69"/>
|
||||
<Events>
|
||||
<Event name="URLProcessing">ДекорацияКассовыеСсылкиОбработкаНавигационнойСсылки</Event>
|
||||
</Events>
|
||||
</LabelDecoration>
|
||||
</ChildItems>
|
||||
</UsualGroup>
|
||||
</ChildItems>
|
||||
</UsualGroup>
|
||||
</ChildItems>
|
||||
@@ -165,7 +213,7 @@
|
||||
<ToolTip>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
<v8:content>Проверить подключение</v8:content>
|
||||
<v8:content>Проверить корректность параметров аутентификации</v8:content>
|
||||
</v8:item>
|
||||
</ToolTip>
|
||||
<Action>ПроверитьПодключение</Action>
|
||||
|
||||
+70
-6
@@ -22,7 +22,7 @@
|
||||
|
||||
ПлатежныеСистемыСлужебный.ДобавитьНастройкиАутентификации(
|
||||
ЭтотОбъект,
|
||||
Элементы.ГруппаНастройкиПодключения,
|
||||
Элементы.ГруппаНастройкиАутентификации,
|
||||
Объект.ПлатежнаяСистема,
|
||||
Объект.Ссылка);
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
Объект.ПлатежнаяСистема,
|
||||
Объект.Ссылка);
|
||||
|
||||
ЗаполнитьДекорацияНастройкиШаблонов();
|
||||
ЗаполнитьДекорацииНастройкиШаблоновИКассовыхСсылок();
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
@@ -181,6 +181,44 @@
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
&НаКлиенте
|
||||
Процедура ДекорацияКассовыеСсылкиОбработкаНавигационнойСсылки(
|
||||
Элемент,
|
||||
НавигационнаяСсылкаФорматированнойСтроки,
|
||||
СтандартнаяОбработка)
|
||||
|
||||
Если НавигационнаяСсылкаФорматированнойСтроки <> "open:cashQrc" Тогда
|
||||
Возврат;
|
||||
КонецЕсли;
|
||||
|
||||
СтандартнаяОбработка = Ложь;
|
||||
|
||||
Если Модифицированность Тогда
|
||||
ОбщегоНазначенияКлиент.СообщитьПользователю(
|
||||
НСтр("ru = 'Перед настройкой кассовых QR-кодов необходимо записать изменения.'"));
|
||||
Возврат;
|
||||
КонецЕсли;
|
||||
|
||||
Если Не Объект.Используется Тогда
|
||||
ОбщегоНазначенияКлиент.СообщитьПользователю(
|
||||
НСтр("ru = 'Для отключенной настройки подключения недоступно изменение кассовых QR-кодов.'"));
|
||||
Возврат;
|
||||
КонецЕсли;
|
||||
|
||||
ОповещениеПослеЗакрытияФормыКассовыхСсылок = Новый ОписаниеОповещения(
|
||||
"ДекорацияКассовыеСсылкиЗавершение",
|
||||
ЭтотОбъект);
|
||||
|
||||
ПараметрыНастройки = Новый Структура;
|
||||
ПараметрыНастройки.Вставить("НастройкаПодключения", Объект.Ссылка);
|
||||
ПараметрыНастройки.Вставить("ПлатежнаяСистема", Объект.ПлатежнаяСистема);
|
||||
|
||||
ПлатежныеСистемыКлиент.ПриНастройкеКассовыхСсылок(
|
||||
ПараметрыНастройки,
|
||||
ОповещениеПослеЗакрытияФормыКассовыхСсылок);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
&НаКлиенте
|
||||
Процедура Подключаемый_ПриИзмененииДанныхАутентификации(Элемент)
|
||||
|
||||
@@ -323,17 +361,43 @@
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
&НаСервере
|
||||
Процедура ЗаполнитьДекорацияНастройкиШаблонов()
|
||||
&НаКлиенте
|
||||
Процедура ДекорацияКассовыеСсылкиЗавершение(
|
||||
Результат,
|
||||
ДополнительныеПараметры) Экспорт
|
||||
|
||||
ПредопределенныеШаблоны = ПлатежныеСистемыСлужебный.НастройкиПодключения(
|
||||
Объект.ПлатежнаяСистема).ШаблоныНазначений;
|
||||
ОбновитьНадписьКассовыеСсылкиНаСервере();
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
&НаСервере
|
||||
Процедура ЗаполнитьДекорацииНастройкиШаблоновИКассовыхСсылок()
|
||||
|
||||
НастройкиПодключения = ПлатежныеСистемыСлужебный.НастройкиПодключения(
|
||||
Объект.ПлатежнаяСистема);
|
||||
|
||||
ПредопределенныеШаблоны = НастройкиПодключения.ШаблоныНазначений;
|
||||
|
||||
НастройкиПлатежныхСистемСлужебный.ЗаполнитьДекорациюНастройкиШаблонов(
|
||||
ПредопределенныеШаблоны,
|
||||
Элементы.ДекорацияНастройкиШаблонов,
|
||||
Объект.Ссылка);
|
||||
|
||||
ПлатежныеСистемыСлужебный.ЗаполнитьДекорациюКассовыеСсылки(
|
||||
НастройкиПодключения.ИспользоватьНастройкуКассовыхСсылок,
|
||||
Элементы.ДекорацияКассовыеСсылки,
|
||||
Объект.Ссылка);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
&НаСервере
|
||||
Процедура ОбновитьНадписьКассовыеСсылкиНаСервере()
|
||||
|
||||
ПлатежныеСистемыСлужебный.ЗаполнитьДекорациюКассовыеСсылки(
|
||||
Элементы.ДекорацияКассовыеСсылки.Видимость,
|
||||
Элементы.ДекорацияКассовыеСсылки,
|
||||
Объект.Ссылка);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
&НаСервереБезКонтекста
|
||||
|
||||
@@ -6831,6 +6831,13 @@
|
||||
НайденнаяСсылка = ОбщегоНазначения.ИдентификаторОбъектаМетаданных(Документ.ПолноеИмя());
|
||||
ЭлементТЧ.ИдентификаторОбъектаМетаданных = НайденнаяСсылка;
|
||||
КонецЕсли;
|
||||
Документ = Метаданные.Документы.Найти("ДокументОПредстоящейПоставке");
|
||||
Если Документ <> Неопределено Тогда
|
||||
ЭлементТЧ = Элемент.Документы.Добавить();
|
||||
ЭлементТЧ.ИмяДокумента = Документ.Имя;
|
||||
НайденнаяСсылка = ОбщегоНазначения.ИдентификаторОбъектаМетаданных(Документ.ПолноеИмя());
|
||||
ЭлементТЧ.ИдентификаторОбъектаМетаданных = НайденнаяСсылка;
|
||||
КонецЕсли;
|
||||
|
||||
Элемент.ФункциональныеОпции = ТабличныеЧасти.ФункциональныеОпции.Скопировать();
|
||||
ЭлементТЧ = Элемент.ФункциональныеОпции.Добавить();
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
///////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
// Copyright (c) 2024, ООО 1С-Софт
|
||||
// Copyright (c) 2026, ООО 1С-Софт
|
||||
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
|
||||
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
|
||||
// Текст лицензии доступен по ссылке:
|
||||
@@ -220,6 +220,20 @@
|
||||
Запись.Записать(Истина);
|
||||
КонецЦикла;
|
||||
|
||||
ПредыдущиеЗначенияСостояний = ОбработкаНовостейКлиентСервер.НовыйОписательЗначенийСостоянияНовости(); // Все значения = Неопределено, мы не считывали значения состояний.
|
||||
НовыеЗначенияСостояний = ОбработкаНовостейКлиентСервер.НовыйОписательЗначенийСостоянияНовости(
|
||||
Истина, // Прочтена
|
||||
Неопределено, // Пометка
|
||||
ЛокальноеОповещениеВключено, // ОповещениеВключено
|
||||
Неопределено, // ДатаНачалаОповещения
|
||||
Неопределено, // УдаленаИзСпискаНовостей
|
||||
Неопределено); // ПрочитатьПозже
|
||||
ОбработкаНовостейПереопределяемый.ПослеИзмененияСостоянияНовостей(
|
||||
ОбщегоНазначенияКлиентСервер.ЗначениеВМассиве(ЛокальныйТекущийПользователь),
|
||||
ОбщегоНазначенияКлиентСервер.ЗначениеВМассиве(ТекущаяНовость.Значение),
|
||||
ПредыдущиеЗначенияСостояний,
|
||||
НовыеЗначенияСостояний);
|
||||
|
||||
Если ЛокальноеОповещениеВключено = Ложь Тогда
|
||||
Запрос = Новый Запрос;
|
||||
Запрос.Текст = "
|
||||
|
||||
@@ -52,7 +52,6 @@
|
||||
<SelectionMode>SingleRow</SelectionMode>
|
||||
<RowSelectionMode>Row</RowSelectionMode>
|
||||
<Header>false</Header>
|
||||
<VerticalLines>false</VerticalLines>
|
||||
<InitialTreeView>ExpandAllLevels</InitialTreeView>
|
||||
<FileDragMode>AsFile</FileDragMode>
|
||||
<DataPath>ТаблицаНовостей</DataPath>
|
||||
@@ -321,6 +320,42 @@
|
||||
</v8:StringQualifiers>
|
||||
</Type>
|
||||
</Column>
|
||||
<Column name="ОповещениеВключеноПриОткрытии" id="8">
|
||||
<Title>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
<v8:content>Оповещение включено (при открытии)</v8:content>
|
||||
</v8:item>
|
||||
</Title>
|
||||
<Type>
|
||||
<v8:Type>xs:boolean</v8:Type>
|
||||
</Type>
|
||||
</Column>
|
||||
<Column name="ПрочтенаПриОткрытии" id="9">
|
||||
<Title>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
<v8:content>Прочтена (при открытии)</v8:content>
|
||||
</v8:item>
|
||||
</Title>
|
||||
<Type>
|
||||
<v8:Type>xs:boolean</v8:Type>
|
||||
</Type>
|
||||
</Column>
|
||||
<Column name="ДатаНачалаОповещенияПриОткрытии" id="10">
|
||||
<Title>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
<v8:content>Дата начала оповещения (при открытии)</v8:content>
|
||||
</v8:item>
|
||||
</Title>
|
||||
<Type>
|
||||
<v8:Type>xs:dateTime</v8:Type>
|
||||
<v8:DateQualifiers>
|
||||
<v8:DateFractions>DateTime</v8:DateFractions>
|
||||
</v8:DateQualifiers>
|
||||
</Type>
|
||||
</Column>
|
||||
</Columns>
|
||||
</Attribute>
|
||||
<Attribute name="БылиИзменения" id="1">
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
///////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
// Copyright (c) 2025, ООО 1С-Софт
|
||||
// Copyright (c) 2026, ООО 1С-Софт
|
||||
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
|
||||
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
|
||||
// Текст лицензии доступен по ссылке:
|
||||
@@ -214,6 +214,13 @@
|
||||
Возврат;
|
||||
КонецЕсли;
|
||||
|
||||
// Запомнить начальные состояния новостей.
|
||||
Для Каждого ТекущаяНовость Из ТаблицаНовостей Цикл
|
||||
ТекущаяНовость.ПрочтенаПриОткрытии = ТекущаяНовость.Прочтена;
|
||||
ТекущаяНовость.ОповещениеВключеноПриОткрытии = ТекущаяНовость.ОповещениеВключено;
|
||||
ТекущаяНовость.ДатаНачалаОповещенияПриОткрытии = ТекущаяНовость.ДатаНачалаОповещения;
|
||||
КонецЦикла;
|
||||
|
||||
#Область МобильныйКлиент
|
||||
|
||||
Если ОбщегоНазначения.ЭтоМобильныйКлиент() Тогда
|
||||
@@ -386,7 +393,7 @@
|
||||
|
||||
#Область СлужебныеПроцедурыИФункции
|
||||
|
||||
&НаСервереБезКонтекста
|
||||
&НаСервере
|
||||
// Функция записывает регистр сведений "СостоянияНовостей".
|
||||
// Также подготавливается список данных для очистки кэша контекстных новостей.
|
||||
//
|
||||
@@ -421,6 +428,41 @@
|
||||
КонецЕсли;
|
||||
КонецЦикла;
|
||||
|
||||
// Здесь для каждой новости может быть свое состояние.
|
||||
// Поэтому надо вначале "свернуть" таблицу, чтобы обрабатывать новости пачками.
|
||||
ТаблицаНовостейТаблицей = лкТаблицаНовостей.Выгрузить(); // лкТаблицаНовостей - это ДанныеФормыКоллекция.
|
||||
СгруппированныеСостоянияНовостей = ТаблицаНовостейТаблицей.Скопировать();
|
||||
СгруппированныеСостоянияНовостей.Свернуть("ОповещениеВключено,Прочтена,ДатаНачалаОповещения,ОповещениеВключеноПриОткрытии,ПрочтенаПриОткрытии,ДатаНачалаОповещенияПриОткрытии");
|
||||
Для Каждого ТекущееСостояние Из СгруппированныеСостоянияНовостей Цикл
|
||||
ПараметрыОтбора = Новый Структура("ОповещениеВключено,Прочтена,ДатаНачалаОповещения,ОповещениеВключеноПриОткрытии,ПрочтенаПриОткрытии,ДатаНачалаОповещенияПриОткрытии");
|
||||
ЗаполнитьЗначенияСвойств(ПараметрыОтбора, ТекущееСостояние);
|
||||
НовостиПоСостоянию = ТаблицаНовостейТаблицей.НайтиСтроки(ПараметрыОтбора);
|
||||
МассивНовостей = Новый Массив;
|
||||
Для Каждого ТекущаяНовостьПоСостоянию Из НовостиПоСостоянию Цикл
|
||||
МассивНовостей.Добавить(ТекущаяНовостьПоСостоянию.Новость);
|
||||
КонецЦикла;
|
||||
|
||||
ПредыдущиеЗначенияСостояний = ОбработкаНовостейКлиентСервер.НовыйОписательЗначенийСостоянияНовости(
|
||||
ТекущееСостояние.ПрочтенаПриОткрытии, // Прочтена
|
||||
Неопределено, // Пометка
|
||||
ТекущееСостояние.ОповещениеВключеноПриОткрытии, // ОповещениеВключено
|
||||
ТекущееСостояние.ДатаНачалаОповещенияПриОткрытии, // ДатаНачалаОповещения
|
||||
Неопределено, // УдаленаИзСпискаНовостей
|
||||
Неопределено); // ПрочитатьПозже
|
||||
НовыеЗначенияСостояний = ОбработкаНовостейКлиентСервер.НовыйОписательЗначенийСостоянияНовости(
|
||||
ТекущееСостояние.Прочтена, // Прочтена
|
||||
Неопределено, // Пометка
|
||||
ТекущееСостояние.ОповещениеВключено, // ОповещениеВключено
|
||||
ТекущееСостояние.ДатаНачалаОповещения, // ДатаНачалаОповещения
|
||||
Неопределено, // УдаленаИзСпискаНовостей
|
||||
Неопределено); // ПрочитатьПозже
|
||||
ОбработкаНовостейПереопределяемый.ПослеИзмененияСостоянияНовостей(
|
||||
ОбщегоНазначенияКлиентСервер.ЗначениеВМассиве(лкТекущийПользователь),
|
||||
МассивНовостей,
|
||||
ПредыдущиеЗначенияСостояний,
|
||||
НовыеЗначенияСостояний);
|
||||
КонецЦикла;
|
||||
|
||||
СписокДанныхДляОчисткиКэшаКонтекстныхНовостей = Новый СписокЗначений;
|
||||
|
||||
Если МассивНовостейДляОчисткиКэшаКонтекстныхНовостей.Количество() > 0 Тогда
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
///////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
// Copyright (c) 2024, ООО 1С-Софт
|
||||
// Copyright (c) 2026, ООО 1С-Софт
|
||||
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
|
||||
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
|
||||
// Текст лицензии доступен по ссылке:
|
||||
@@ -209,7 +209,12 @@
|
||||
ОписательНовости.Вставить("Пометка" , Пометка);
|
||||
ОписательНовости.Вставить("ПрочитатьПозже" , ПрочитатьПозже);
|
||||
ОписательНовости.Вставить("ОповещениеВключено" , Ложь);
|
||||
ОписательНовости.Вставить("ДатаНачалаОповещения", '00010101');
|
||||
ОписательНовости.Вставить("ДатаНачалаОповещения" , '00010101');
|
||||
ОписательНовости.Вставить("ПрочтенаПриОткрытии" , ПрочтенаПриОткрытии);
|
||||
ОписательНовости.Вставить("ПометкаПриОткрытии" , ПометкаПриОткрытии);
|
||||
ОписательНовости.Вставить("ПрочитатьПозжеПриОткрытии" , ПрочитатьПозжеПриОткрытии);
|
||||
ОписательНовости.Вставить("ОповещениеВключеноПриОткрытии" , ОповещениеВключеноПриОткрытии);
|
||||
ОписательНовости.Вставить("ДатаНачалаОповещенияПриОткрытии", ДатаНачалаОповещения); // Оставить как есть
|
||||
// Настройки не изменялись, поэтому не важно, что туда записывать, главное, чтобы совпадали значения с "*ПриОткрытии".
|
||||
ОписательНастроекЛентыНовостей = Новый Структура;
|
||||
ОписательНастроекЛентыНовостей.Вставить("ЛентаНовостей" , Объект.ЛентаНовостей);
|
||||
@@ -506,7 +511,12 @@
|
||||
ОписательНовости.Вставить("Пометка" , Пометка);
|
||||
ОписательНовости.Вставить("ПрочитатьПозже" , ПрочитатьПозже);
|
||||
ОписательНовости.Вставить("ОповещениеВключено" , ОповещениеВключено);
|
||||
ОписательНовости.Вставить("ДатаНачалаОповещения", ДатаНачалаОповещения);
|
||||
ОписательНовости.Вставить("ДатаНачалаОповещения" , ДатаНачалаОповещения);
|
||||
ОписательНовости.Вставить("ПрочтенаПриОткрытии" , ПрочтенаПриОткрытии);
|
||||
ОписательНовости.Вставить("ПометкаПриОткрытии" , ПометкаПриОткрытии);
|
||||
ОписательНовости.Вставить("ПрочитатьПозжеПриОткрытии" , ПрочитатьПозжеПриОткрытии);
|
||||
ОписательНовости.Вставить("ОповещениеВключеноПриОткрытии" , ОповещениеВключеноПриОткрытии);
|
||||
ОписательНовости.Вставить("ДатаНачалаОповещенияПриОткрытии", ДатаНачалаОповещения); // Оставить как есть
|
||||
ОписательНастроекЛентыНовостей = Новый Структура;
|
||||
ОписательНастроекЛентыНовостей.Вставить("ЛентаНовостей" , Объект.ЛентаНовостей);
|
||||
ОписательНастроекЛентыНовостей.Вставить("ЛентаНовостейСостояниеОповещений" , ЛентаНовостейСостояниеОповещений);
|
||||
@@ -834,6 +844,26 @@
|
||||
Запись.ДатаНачалаОповещения = ОписательНовости.ДатаНачалаОповещения;
|
||||
Запись.Записать(Истина);
|
||||
|
||||
ПредыдущиеЗначенияСостояний = ОбработкаНовостейКлиентСервер.НовыйОписательЗначенийСостоянияНовости(
|
||||
ОписательНовости.ПрочтенаПриОткрытии,
|
||||
ОписательНовости.ПометкаПриОткрытии,
|
||||
ОписательНовости.ОповещениеВключеноПриОткрытии,
|
||||
ОписательНовости.ДатаНачалаОповещенияПриОткрытии,
|
||||
Неопределено,
|
||||
?(ОписательНовости.ПрочитатьПозжеПриОткрытии = 1, Истина, Ложь));
|
||||
НовыеЗначенияСостояний = ОбработкаНовостейКлиентСервер.НовыйОписательЗначенийСостоянияНовости(
|
||||
ОписательНовости.Прочтена,
|
||||
ОписательНовости.Пометка,
|
||||
ОписательНовости.ОповещениеВключено,
|
||||
ОписательНовости.ДатаНачалаОповещения,
|
||||
Неопределено,
|
||||
?(ОписательНовости.ПрочитатьПозже = 1, Истина, Ложь));
|
||||
ОбработкаНовостейПереопределяемый.ПослеИзмененияСостоянияНовостей(
|
||||
ОбщегоНазначенияКлиентСервер.ЗначениеВМассиве(Пользователи.ТекущийПользователь()),
|
||||
ОбщегоНазначенияКлиентСервер.ЗначениеВМассиве(ОписательНовости.НовостьСсылка),
|
||||
ПредыдущиеЗначенияСостояний,
|
||||
НовыеЗначенияСостояний);
|
||||
|
||||
// Настройки ленты новостей.
|
||||
НеобходимоСброситьКэш = Ложь;
|
||||
Если (ОписательНастроекЛентыНовостей.ЛентаНовостейСостояниеПодписки <> ОписательНастроекЛентыНовостей.ЛентаНовостейСостояниеПодпискиПриОткрытии) Тогда
|
||||
|
||||
@@ -2054,7 +2054,7 @@
|
||||
УстановитьДоступностьВестиУчетПоГТДЛокализация(Элементы.ВестиУчетПоГТД, Объект);
|
||||
|
||||
//++ Локализация
|
||||
ПриИзмененииТНВЭДиОКПД2();
|
||||
ПриИзмененииТНВЭДиОКПД2(Ложь);
|
||||
//-- Локализация
|
||||
|
||||
НастроитьФормуИОбновитьКарточку();
|
||||
@@ -5563,7 +5563,7 @@
|
||||
КонецПроцедуры
|
||||
|
||||
&НаКлиенте
|
||||
Процедура ПриИзмененииТНВЭДиОКПД2()
|
||||
Процедура ПриИзмененииТНВЭДиОКПД2(ОбновлятьКарточку = Истина)
|
||||
|
||||
УказанТНВЭД = ЗначениеЗаполнено(Объект.КодТНВЭД);
|
||||
УказанОКПД2 = ЗначениеЗаполнено(Объект.КодОКПД2);
|
||||
@@ -5575,7 +5575,9 @@
|
||||
Если Не ЗначениеЗаполнено(ВидПродукцииГИСМТ) Тогда
|
||||
ВидПродукцииГИСМТ = ДоступныеВидыПродукции[0];
|
||||
ИнтеграцияИСКлиент.ВидПродукцииГИСМТПриИзменении(ЭтотОбъект);
|
||||
Если ОбновлятьКарточку Тогда
|
||||
НастроитьФормуИОбновитьКарточку();
|
||||
КонецЕсли;
|
||||
Иначе
|
||||
Если УказанТНВЭД И УказанОКПД2 Тогда
|
||||
НачалоВопроса = СтрШаблон(
|
||||
|
||||
@@ -1507,9 +1507,6 @@
|
||||
</v8:item>
|
||||
</ToolTip>
|
||||
<ToolTipRepresentation>Button</ToolTipRepresentation>
|
||||
<Width>2</Width>
|
||||
<AutoMaxWidth>false</AutoMaxWidth>
|
||||
<MaxWidth>2</MaxWidth>
|
||||
<ChoiceButtonRepresentation>ShowInDropList</ChoiceButtonRepresentation>
|
||||
<ListChoiceMode>true</ListChoiceMode>
|
||||
<ExtendedEditMultipleValues>true</ExtendedEditMultipleValues>
|
||||
@@ -1521,7 +1518,7 @@
|
||||
<Presentation>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
<v8:content>Признак отсутствует</v8:content>
|
||||
<v8:content>0 - Отсутствует</v8:content>
|
||||
</v8:item>
|
||||
</Presentation>
|
||||
<Value xsi:type="xs:string">0</Value>
|
||||
@@ -1534,7 +1531,7 @@
|
||||
<Presentation>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
<v8:content>Есть право на освобождение от внесения обеспечительного платежа</v8:content>
|
||||
<v8:content>1 – Освобождение от внесения обеспечительного платежа</v8:content>
|
||||
</v8:item>
|
||||
</Presentation>
|
||||
<Value xsi:type="xs:string">1</Value>
|
||||
@@ -1547,7 +1544,7 @@
|
||||
<Presentation>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
<v8:content>Иной признак</v8:content>
|
||||
<v8:content>2 – Иной признак</v8:content>
|
||||
</v8:item>
|
||||
</Presentation>
|
||||
<Value xsi:type="xs:string">2</Value>
|
||||
@@ -5347,6 +5344,14 @@
|
||||
<xr:Common>false</xr:Common>
|
||||
</Visible>
|
||||
</Item>
|
||||
<Item>
|
||||
<Command>InformationRegister.ДокументыОПредстоящейПоставке.StandardCommand.OpenByValue.Организация</Command>
|
||||
<Type>Auto</Type>
|
||||
<DefaultVisible>false</DefaultVisible>
|
||||
<Visible>
|
||||
<xr:Common>false</xr:Common>
|
||||
</Visible>
|
||||
</Item>
|
||||
</NavigationPanel>
|
||||
<CommandBar>
|
||||
<Item>
|
||||
|
||||
@@ -388,7 +388,21 @@
|
||||
|
||||
&НаКлиенте
|
||||
Процедура Подключаемый_ОбновитьКомандыЭДО()
|
||||
|
||||
Если ИспользоватьПартнеровКакКонтрагентов Тогда
|
||||
ТекущаяСтрока = Элементы.Список.ТекущаяСтрока;
|
||||
Если ТекущаяСтрока <> Неопределено Тогда
|
||||
КонтрагентПартнера = ПартнерыИКонтрагентыВызовСервера.КонтрагентПартнера(ТекущаяСтрока);
|
||||
Если КонтрагентПартнера <> Неопределено Тогда
|
||||
ОбновитьКомандыЭДОДляКонтрагентаПартнера(КонтрагентПартнера);
|
||||
Иначе
|
||||
ОбменСКонтрагентамиКлиент.ОбновитьКоманды(ЭтотОбъект, Элементы.Список);
|
||||
КонецЕсли;
|
||||
КонецЕсли;
|
||||
Иначе
|
||||
ОбменСКонтрагентамиКлиент.ОбновитьКоманды(ЭтотОбъект, Элементы.Список);
|
||||
КонецЕсли;
|
||||
|
||||
КонецПроцедуры
|
||||
// Конец ЭлектронноеВзаимодействие.ОбменСКонтрагентами
|
||||
|
||||
@@ -729,6 +743,71 @@
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
// ЭлектронноеВзаимодействие.ОбменСКонтрагентами
|
||||
&НаСервере
|
||||
Функция ВычислитьЗначенияАлгоритмовЭДО(Алгоритмы, ПараметрыАлгоритма)
|
||||
ЗначенияАлгоритмов = Новый Соответствие;
|
||||
Для Каждого КлючИЗначение Из Алгоритмы Цикл
|
||||
СтрокаВычисления = СтрШаблон("%1(Параметры)", КлючИЗначение.Ключ);
|
||||
Значение = ОбщегоНазначения.ВычислитьВБезопасномРежиме(СтрокаВычисления, ПараметрыАлгоритма);
|
||||
ЗначенияАлгоритмов.Вставить(КлючИЗначение.Ключ, Значение);
|
||||
КонецЦикла;
|
||||
Возврат ЗначенияАлгоритмов;
|
||||
КонецФункции
|
||||
|
||||
&НаКлиенте
|
||||
Процедура ОбновитьКомандыЭДОДляКонтрагентаПартнера(Контрагент)
|
||||
|
||||
Если ОбщегоНазначенияКлиентСервер.ЕстьРеквизитИлиСвойствоОбъекта(ЭтотОбъект, "ПараметрыУправленияВидимостьюЭДО") Тогда
|
||||
ПараметрыУправленияВидимостью = ЭтотОбъект.ПараметрыУправленияВидимостьюЭДО;
|
||||
Иначе
|
||||
ПараметрыУправленияВидимостью = Неопределено;
|
||||
КонецЕсли;
|
||||
Если ПараметрыУправленияВидимостью = Неопределено Тогда
|
||||
Возврат;
|
||||
КонецЕсли;
|
||||
|
||||
КомандыДляПроверкиАлгоритмами = Новый Соответствие;
|
||||
ОбъектыДляПроверки = Новый Массив;
|
||||
ОбъектыДляПроверки.Добавить(Контрагент);
|
||||
|
||||
Для Каждого Команда Из ПараметрыУправленияВидимостью.КомандыСУсловиямиВидимости Цикл
|
||||
КомандаЭлемент = Элементы[Команда.ИмяВФорме];
|
||||
Видимость = Истина;
|
||||
|
||||
Если ЗначениеЗаполнено(Команда.ИмяРеквизитаУсловия) Тогда
|
||||
Видимость = Ложь;
|
||||
ИначеЕсли ЗначениеЗаполнено(Команда.ИмяАлгоритмаПроверкиУсловия) Тогда
|
||||
КомандыДляПроверкиАлгоритмами.Вставить(Команда, Команда.ИмяАлгоритмаПроверкиУсловия);
|
||||
ИначеЕсли Команда.ЗначениеУсловия = Неопределено Тогда
|
||||
Видимость = Ложь;
|
||||
Иначе
|
||||
Видимость = Истина;
|
||||
КонецЕсли;
|
||||
|
||||
КомандаЭлемент.Видимость = Видимость;
|
||||
|
||||
Если Не Видимость Тогда
|
||||
КомандыДляПроверкиАлгоритмами.Удалить(Команда);
|
||||
КонецЕсли;
|
||||
КонецЦикла;
|
||||
|
||||
Если КомандыДляПроверкиАлгоритмами.Количество() > 0 Тогда
|
||||
Алгоритмы = Новый Соответствие;
|
||||
Для Каждого КомандаИАлгоритм Из КомандыДляПроверкиАлгоритмами Цикл
|
||||
Алгоритмы.Вставить(КомандаИАлгоритм.Значение, Истина);
|
||||
КонецЦикла;
|
||||
ЗначенияАлгоритмов = ВычислитьЗначенияАлгоритмовЭДО(Алгоритмы, ОбъектыДляПроверки);
|
||||
Для Каждого КомандаИАлгоритм Из КомандыДляПроверкиАлгоритмами Цикл
|
||||
Команда = КомандаИАлгоритм.Ключ;
|
||||
КомандаЭлемент = Элементы[Команда.ИмяВФорме];
|
||||
КомандаЭлемент.Видимость = Команда.ЗначениеУсловия = ЗначенияАлгоритмов[КомандаИАлгоритм.Значение];
|
||||
КонецЦикла;
|
||||
КонецЕсли;
|
||||
|
||||
КонецПроцедуры
|
||||
// Конец ЭлектронноеВзаимодействие.ОбменСКонтрагентами
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
-1
@@ -169,7 +169,6 @@
|
||||
<v8:content>Доверенность</v8:content>
|
||||
</v8:item>
|
||||
</Title>
|
||||
<United>false</United>
|
||||
<ShowTitle>false</ShowTitle>
|
||||
<ExtendedTooltip name="ГруппаДоверенностьРасширеннаяПодсказка" id="13"/>
|
||||
<ChildItems>
|
||||
|
||||
@@ -991,10 +991,10 @@
|
||||
<Synonym>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
<v8:content>Порядковый номер ограничения</v8:content>
|
||||
<v8:content>Идентификатор ограничения</v8:content>
|
||||
</v8:item>
|
||||
</Synonym>
|
||||
<Comment/>
|
||||
<Comment>Порядковый номер ограничения</Comment>
|
||||
<Type>
|
||||
<v8:Type>xs:decimal</v8:Type>
|
||||
<v8:NumberQualifiers>
|
||||
|
||||
@@ -668,7 +668,7 @@
|
||||
ПравилоНастройкиПроверкиРасширенные = ПравилоОбъект.НастройкиПроверкиРасширенные;
|
||||
ПравилоНастройкиПроверкиРасширенные.Очистить();
|
||||
|
||||
Для Каждого ТекущаяНастройка из ФормаНастройкиПроверкиРасширенные Цикл
|
||||
Для Каждого ТекущаяНастройка Из ФормаНастройкиПроверкиРасширенные Цикл
|
||||
|
||||
НоваяНастройка = ПравилоНастройкиПроверкиРасширенные.Добавить();
|
||||
ЗаполнитьЗначенияСвойств(НоваяНастройка, ТекущаяНастройка);
|
||||
@@ -1645,7 +1645,7 @@
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
// Установливает текст и параметры запроса для конвертации правил проверки полномочий.
|
||||
// Устанавливает текст и параметры запроса для конвертации правил проверки полномочий.
|
||||
//
|
||||
// Параметры:
|
||||
// Запрос - Запрос
|
||||
|
||||
@@ -250,7 +250,7 @@
|
||||
</xr:StandardAttribute>
|
||||
<xr:StandardAttribute name="Description">
|
||||
<xr:LinkByType/>
|
||||
<xr:FillChecking>DontCheck</xr:FillChecking>
|
||||
<xr:FillChecking>ShowError</xr:FillChecking>
|
||||
<xr:MultiLine>false</xr:MultiLine>
|
||||
<xr:FillFromFillingValue>false</xr:FillFromFillingValue>
|
||||
<xr:CreateOnInput>Auto</xr:CreateOnInput>
|
||||
|
||||
@@ -352,11 +352,6 @@
|
||||
&НаСервере
|
||||
Процедура ОбработкаПроверкиЗаполненияНаСервере(Отказ, ПроверяемыеРеквизиты)
|
||||
// Проверка данных, которые выведены через реквизиты самой формы.
|
||||
Если Не ЗначениеЗаполнено(Объект.Наименование) Тогда
|
||||
Отказ = Истина;
|
||||
ТекстСообщения = НСтр("ru = 'Не введено наименование.'");
|
||||
ОбщегоНазначения.СообщитьПользователю(ТекстСообщения, , "Объект.Наименование");
|
||||
КонецЕсли;
|
||||
Если Объект.ИспользоватьЭлектроннуюПочту И Не Объект.Личная Тогда
|
||||
Если Не ЗначениеЗаполнено(ТипПолучателейРассылки) Тогда
|
||||
Отказ = Истина;
|
||||
|
||||
+2
-2
@@ -172,11 +172,11 @@
|
||||
Возврат;
|
||||
КонецЕсли;
|
||||
Если Параметр.Отозван Тогда
|
||||
ЭтотОбъект.Прочитать();
|
||||
Прочитать();
|
||||
ОбновитьВидимостьПредупреждения();
|
||||
КонецЕсли;
|
||||
Если Параметр.Установлен Тогда
|
||||
ЭтотОбъект.Прочитать();
|
||||
Прочитать();
|
||||
ПодключитьОбработчикОжидания("ОбработчикОжиданияПоказатьСостояниеСертификата", 0.1, Истина);
|
||||
КонецЕсли;
|
||||
Возврат;
|
||||
|
||||
@@ -642,7 +642,7 @@
|
||||
<Value>HK</Value>
|
||||
<Value>HKG</Value>
|
||||
<Value>344</Value>
|
||||
<Value>Специальный административный регион Китая Гонконг</Value>
|
||||
<Value>Специальный административный район Гонконг Китайской Народной Республики</Value>
|
||||
<Value>false</Value>
|
||||
<Value>false</Value>
|
||||
<Value>Hong Kong</Value>
|
||||
|
||||
@@ -66,16 +66,6 @@
|
||||
</v8:item>
|
||||
</title>
|
||||
</field>
|
||||
<field xsi:type="DataSetFieldField">
|
||||
<dataPath>МотивационнаяГруппа</dataPath>
|
||||
<field>МотивационнаяГруппа</field>
|
||||
<title xsi:type="v8:LocalStringType">
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
<v8:content>Мотивационная группа</v8:content>
|
||||
</v8:item>
|
||||
</title>
|
||||
</field>
|
||||
<field xsi:type="DataSetFieldField">
|
||||
<dataPath>Рецептурное</dataPath>
|
||||
<field>Рецептурное</field>
|
||||
@@ -92,8 +82,7 @@
|
||||
ЗНАЧЕНИЕ(Справочник.Номенклатура.ПустаяСсылка) КАК Номенклатура,
|
||||
ЗНАЧЕНИЕ(Справочник.ХарактеристикиНоменклатуры.ПустаяСсылка) КАК Характеристика,
|
||||
ЗНАЧЕНИЕ(Справочник.СерииНоменклатуры.ПустаяСсылка) КАК Серия,
|
||||
ЗНАЧЕНИЕ(Справочник.УТР_МаркетинговыеГруппы.ПустаяСсылка) КАК МаркетинговаяГруппа,
|
||||
ЗНАЧЕНИЕ(Справочник.итм_МотивационныеГруппы.ПустаяСсылка) КАК МотивационнаяГруппа,
|
||||
ЗНАЧЕНИЕ(Справочник.УАС_МаркетинговыеГруппы.ПустаяСсылка) КАК МаркетинговаяГруппа,
|
||||
ВЫРАЗИТЬ(ЛОЖЬ КАК БУЛЕВО) КАК Рецептурное
|
||||
ПОМЕСТИТЬ ВТ
|
||||
;
|
||||
@@ -126,7 +115,6 @@
|
||||
Т.Характеристика.*,
|
||||
Т.Серия.*,
|
||||
Т.МаркетинговаяГруппа.*,
|
||||
Т.МотивационнаяГруппа.*,
|
||||
С.Сегмент.*,
|
||||
Т.Рецептурное}</query>
|
||||
<autoFillFields>false</autoFillFields>
|
||||
|
||||
@@ -1221,7 +1221,7 @@
|
||||
&НаСервереБезКонтекста
|
||||
Процедура ЗагрузитьИзПланаОбменаНаСервере()
|
||||
УстановитьПривилегированныйРежим(Истина);
|
||||
РегистрыСведений.УАС_АктивныеСерииНоменклатуры.ОбновитьАктивныеСерии(,1000);
|
||||
РегистрыСведений.УАС_АктивныеСерииНоменклатуры.ОбновитьАктивныеСерии(1000);
|
||||
Справочники.УАС_РМК.ОбновитьОбщиеНастройкиИзМакета();
|
||||
КонецПроцедуры
|
||||
|
||||
|
||||
@@ -179,6 +179,19 @@
|
||||
|
||||
#Область ДляВызоваИзДругихПодсистем
|
||||
|
||||
#Область СтандартныеПодсистемы
|
||||
|
||||
// См. СтандартныеПодсистемыСервер.ПриОпределенииМетодовРазрешенныхДляВызоваКакПроизвольныйКод
|
||||
Процедура ПриОпределенииМетодовРазрешенныхДляВызоваКакПроизвольныйКод(Методы) Экспорт
|
||||
|
||||
Методы.Вставить("ДанныеОбновленыНаНовуюВерсиюПрограммы");
|
||||
Методы.Вставить("ЗаполнитьРегламентЭДО");
|
||||
Методы.Вставить("СнятьФлагОтветнойПодписиУСчетаНаОплату");
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
// Возвращает профили настроек организации для отправки Запроса коммерческих предложений исходящего через ЭДО.
|
||||
//
|
||||
// Параметры:
|
||||
|
||||
@@ -2,6 +2,21 @@
|
||||
|
||||
#Область ПрограммныйИнтерфейс
|
||||
|
||||
#Область ДляВызоваИзДругихПодсистем
|
||||
|
||||
#Область СтандартныеПодсистемы
|
||||
|
||||
// См. СтандартныеПодсистемыСервер.ПриОпределенииМетодовРазрешенныхДляВызоваКакПроизвольныйКод
|
||||
Процедура ПриОпределенииМетодовРазрешенныхДляВызоваКакПроизвольныйКод(Методы) Экспорт
|
||||
|
||||
Методы.Вставить("ПеренестиНастройкиСертификатов");
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
// Обработчик обновления БЭД 1.1.9.1
|
||||
// Заполняет дату окончания действия сертификата
|
||||
//
|
||||
|
||||
@@ -155,6 +155,20 @@
|
||||
|
||||
#Область ДляВызоваИзДругихПодсистем
|
||||
|
||||
#Область СтандартныеПодсистемы
|
||||
|
||||
// См. СтандартныеПодсистемыСервер.ПриОпределенииМетодовРазрешенныхДляВызоваКакПроизвольныйКод
|
||||
Процедура ПриОпределенииМетодовРазрешенныхДляВызоваКакПроизвольныйКод(Методы) Экспорт
|
||||
|
||||
Методы.Вставить("ДанныеОбновленыНаНовуюВерсиюПрограммы");
|
||||
Методы.Вставить("ОбновитьВерсиюФорматаИсходящихЭД207_208");
|
||||
Методы.Вставить("ОбновитьВерсиюФорматаИсходящихЭД501_502");
|
||||
Методы.Вставить("УдалитьОтветныеТитулы");
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
// СтандартныеПодсистемы.УправлениеДоступом
|
||||
|
||||
// См. УправлениеДоступомПереопределяемый.ПриЗаполненииСписковСОграничениемДоступа.
|
||||
@@ -1451,7 +1465,6 @@
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
#КонецЕсли
|
||||
@@ -726,6 +726,10 @@
|
||||
&НаКлиенте
|
||||
Процедура ПродлитьДействиеПодписей(Команда)
|
||||
|
||||
Если Модифицированность Тогда
|
||||
ПеренестиРезультатыПроверкиПодписей();
|
||||
КонецЕсли;
|
||||
|
||||
ОбработчикПродолжения = Новый ОписаниеОповещения("ПриПолученииПодписей", ЭтотОбъект);
|
||||
|
||||
ПараметрыПродления = Новый Структура;
|
||||
@@ -1617,6 +1621,11 @@
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
&НаСервере
|
||||
Процедура ПеренестиРезультатыПроверкиПодписей()
|
||||
РаботаСФайламиСлужебный.ПеренестиРезультатыПроверкиПодписей(ЭлектронныеПодписи, Объект.Ссылка);
|
||||
КонецПроцедуры
|
||||
|
||||
&НаКлиенте
|
||||
Процедура ПрочитатьИУстановитьДоступностьЭлементовФормы(Результат, ДополнительныеПараметры) Экспорт
|
||||
|
||||
|
||||
@@ -20,9 +20,10 @@
|
||||
СпособДоставкиПаролей = "phone";
|
||||
|
||||
ПараметрыПроцедуры = Новый Структура("ИдентификаторСертификата", СервисКриптографииСлужебный.Идентификатор(Сертификат));
|
||||
ПараметрыВыполнения = СервисКриптографииСлужебный.ПараметрыВыполненияВФоне(ПараметрыПроцедуры);
|
||||
|
||||
ДлительнаяОперация = СервисКриптографииСлужебный.ВыполнитьВФоне(
|
||||
"СервисКриптографииСлужебный.ПолучитьНастройкиПолученияВременныхПаролей", ПараметрыПроцедуры);
|
||||
ДлительнаяОперация = ДлительныеОперации.ВыполнитьВФоне(
|
||||
"СервисКриптографииСлужебный.ПолучитьНастройкиПолученияВременныхПаролей", ПараметрыПроцедуры, ПараметрыВыполнения);
|
||||
|
||||
ИспользоватьТокен = ЭлектроннаяПодписьВМоделиСервиса.ДолговременныйТокенИспользованиеВозможно();
|
||||
ПарольОтправляется = Истина;
|
||||
@@ -260,8 +261,10 @@
|
||||
ПараметрыПроцедуры.Вставить("Тип", СпособДоставкиПаролей);
|
||||
ПараметрыПроцедуры.Вставить("ИдентификаторСессии", ИдентификаторСессии);
|
||||
|
||||
Возврат СервисКриптографииСлужебный.ВыполнитьВФоне(
|
||||
"СервисКриптографииСлужебный.ПолучитьВременныйПароль", ПараметрыПроцедуры);
|
||||
ПараметрыВыполнения = СервисКриптографииСлужебный.ПараметрыВыполненияВФоне(ПараметрыПроцедуры);
|
||||
|
||||
Возврат ДлительныеОперации.ВыполнитьВФоне(
|
||||
"СервисКриптографииСлужебный.ПолучитьВременныйПароль", ПараметрыПроцедуры, ПараметрыВыполнения);
|
||||
|
||||
КонецФункции
|
||||
|
||||
@@ -384,8 +387,10 @@
|
||||
ПараметрыПроцедуры.Вставить("ВременныйПароль", Пароль);
|
||||
ПараметрыПроцедуры.Вставить("ИдентификаторСессии", ИдентификаторСессии);
|
||||
|
||||
Возврат СервисКриптографииСлужебный.ВыполнитьВФоне(
|
||||
"СервисКриптографииСлужебный.ПолучитьСеансовыйКлюч", ПараметрыПроцедуры);
|
||||
ПараметрыВыполнения = СервисКриптографииСлужебный.ПараметрыВыполненияВФоне(ПараметрыПроцедуры);
|
||||
|
||||
Возврат ДлительныеОперации.ВыполнитьВФоне(
|
||||
"СервисКриптографииСлужебный.ПолучитьСеансовыйКлюч", ПараметрыПроцедуры, ПараметрыВыполнения);
|
||||
|
||||
КонецФункции
|
||||
|
||||
|
||||
@@ -25,9 +25,10 @@
|
||||
СпособДоставкиПаролей = "phone";
|
||||
|
||||
ПараметрыПроцедуры = Новый Структура("ИдентификаторСертификата", СервисКриптографииСлужебный.Идентификатор(Сертификат));
|
||||
ПараметрыВыполнения = СервисКриптографииСлужебный.ПараметрыВыполненияВФоне(ПараметрыПроцедуры);
|
||||
|
||||
ДлительнаяОперация = СервисКриптографииСлужебный.ВыполнитьВФоне(
|
||||
"СервисКриптографииСлужебный.ПолучитьНастройкиПолученияВременныхПаролей", ПараметрыПроцедуры);
|
||||
ДлительнаяОперация = ДлительныеОперации.ВыполнитьВФоне(
|
||||
"СервисКриптографииСлужебный.ПолучитьНастройкиПолученияВременныхПаролей", ПараметрыПроцедуры, ПараметрыВыполнения);
|
||||
|
||||
ПарольОтправляется = Истина;
|
||||
Элементы.ФормаДругойСпособ.Видимость = Ложь;
|
||||
@@ -167,8 +168,10 @@
|
||||
ПараметрыПроцедуры.Вставить("Тип", СпособДоставкиПаролей);
|
||||
ПараметрыПроцедуры.Вставить("ИдентификаторСессии", ИдентификаторСессии);
|
||||
|
||||
Возврат СервисКриптографииСлужебный.ВыполнитьВФоне(
|
||||
"СервисКриптографииСлужебный.ПолучитьВременныйПароль", ПараметрыПроцедуры);
|
||||
ПараметрыВыполнения = СервисКриптографииСлужебный.ПараметрыВыполненияВФоне(ПараметрыПроцедуры);
|
||||
|
||||
Возврат ДлительныеОперации.ВыполнитьВФоне(
|
||||
"СервисКриптографииСлужебный.ПолучитьВременныйПароль", ПараметрыПроцедуры, ПараметрыВыполнения);
|
||||
|
||||
КонецФункции
|
||||
|
||||
@@ -245,8 +248,10 @@
|
||||
ПараметрыПроцедуры.Вставить("ВременныйПароль", ТекущийКод);
|
||||
ПараметрыПроцедуры.Вставить("ИдентификаторСессии", ИдентификаторСессии);
|
||||
|
||||
Возврат СервисКриптографииСлужебный.ВыполнитьВФоне(
|
||||
"СервисКриптографииСлужебный.ПолучитьСеансовыйКлюч", ПараметрыПроцедуры);
|
||||
ПараметрыВыполнения = СервисКриптографииСлужебный.ПараметрыВыполненияВФоне(ПараметрыПроцедуры);
|
||||
|
||||
Возврат ДлительныеОперации.ВыполнитьВФоне(
|
||||
"СервисКриптографииСлужебный.ПолучитьСеансовыйКлюч", ПараметрыПроцедуры, ПараметрыВыполнения);
|
||||
|
||||
КонецФункции
|
||||
|
||||
|
||||
@@ -23,8 +23,9 @@
|
||||
|
||||
Сертификат = Параметры.Сертификат;
|
||||
ПараметрыПроцедуры = Новый Структура("ИдентификаторСертификата", СервисКриптографииСлужебный.Идентификатор(Сертификат));
|
||||
ДлительнаяОперация = СервисКриптографииСлужебный.ВыполнитьВФоне(
|
||||
"СервисКриптографииСлужебный.ПолучитьНастройкиПолученияВременныхПаролей", ПараметрыПроцедуры);
|
||||
ПараметрыВыполнения = СервисКриптографииСлужебный.ПараметрыВыполненияВФоне(ПараметрыПроцедуры);
|
||||
ДлительнаяОперация = ДлительныеОперации.ВыполнитьВФоне(
|
||||
"СервисКриптографииСлужебный.ПолучитьНастройкиПолученияВременныхПаролей", ПараметрыПроцедуры, ПараметрыВыполнения);
|
||||
|
||||
ОтпечатокСертификата = ЭлектроннаяПодписьВМоделиСервиса.НайтиСертификатПоИдентификатору(Сертификат);
|
||||
ДанныеПользователя = ПолучитьДанныеТекущегоПользователя();
|
||||
@@ -415,8 +416,10 @@
|
||||
ПараметрыПроцедуры.Вставить("Тип", "phone");
|
||||
ПараметрыПроцедуры.Вставить("ИдентификаторСессии", ИдентификаторСессии);
|
||||
|
||||
Возврат СервисКриптографииСлужебный.ВыполнитьВФоне(
|
||||
"СервисКриптографииСлужебный.ПолучитьВременныйПароль", ПараметрыПроцедуры);
|
||||
ПараметрыВыполнения = СервисКриптографииСлужебный.ПараметрыВыполненияВФоне(ПараметрыПроцедуры);
|
||||
|
||||
Возврат ДлительныеОперации.ВыполнитьВФоне(
|
||||
"СервисКриптографииСлужебный.ПолучитьВременныйПароль", ПараметрыПроцедуры, ПараметрыВыполнения);
|
||||
|
||||
КонецФункции
|
||||
|
||||
@@ -493,8 +496,10 @@
|
||||
ПараметрыПроцедуры.Вставить("ВременныйПароль", КодТелефона);
|
||||
ПараметрыПроцедуры.Вставить("ИдентификаторСессии", ИдентификаторСессии);
|
||||
|
||||
Возврат СервисКриптографииСлужебный.ВыполнитьВФоне(
|
||||
"СервисКриптографииСлужебный.ПолучитьСеансовыйКлюч", ПараметрыПроцедуры);
|
||||
ПараметрыВыполнения = СервисКриптографииСлужебный.ПараметрыВыполненияВФоне(ПараметрыПроцедуры);
|
||||
|
||||
Возврат ДлительныеОперации.ВыполнитьВФоне(
|
||||
"СервисКриптографииСлужебный.ПолучитьСеансовыйКлюч", ПараметрыПроцедуры, ПараметрыВыполнения);
|
||||
|
||||
КонецФункции
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
///////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
// Copyright (c) 2024, ООО 1С-Софт
|
||||
// Copyright (c) 2026, ООО 1С-Софт
|
||||
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
|
||||
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
|
||||
// Текст лицензии доступен по ссылке:
|
||||
@@ -14,10 +14,12 @@
|
||||
Если ЗначениеЗаполнено(Параметры.ПлатежнаяСсылка) Тогда
|
||||
|
||||
ПлатежнаяСсылка = Параметры.ПлатежнаяСсылка;
|
||||
QRКод = СистемаБыстрыхПлатежей.ИзображениеQRКодаСБП(
|
||||
QRКод = НастройкиПлатежныхСистем.ИзображениеQRКода(
|
||||
Параметры.ПлатежнаяСсылка,
|
||||
360,
|
||||
НастройкиПлатежныхСистемКлиентСервер.ИмяПодсистемыСБП(),
|
||||
0);
|
||||
|
||||
QRКодКартинкой = ПоместитьВоВременноеХранилище(QRКод, ЭтотОбъект);
|
||||
|
||||
Иначе
|
||||
|
||||
@@ -39,6 +39,7 @@
|
||||
<v8:content>Страница выбора</v8:content>
|
||||
</v8:item>
|
||||
</Title>
|
||||
<ShowTitle>false</ShowTitle>
|
||||
<ExtendedTooltip name="СтраницаВыбораРасширеннаяПодсказка" id="417"/>
|
||||
<ChildItems>
|
||||
<Button name="Выбрать" id="418">
|
||||
@@ -68,12 +69,31 @@
|
||||
<MaxHeight>5</MaxHeight>
|
||||
<MaxRowsCount>1</MaxRowsCount>
|
||||
<Header>false</Header>
|
||||
<HorizontalLines>false</HorizontalLines>
|
||||
<VerticalLines>false</VerticalLines>
|
||||
<AutoInsertNewRow>true</AutoInsertNewRow>
|
||||
<EnableStartDrag>true</EnableStartDrag>
|
||||
<EnableDrag>true</EnableDrag>
|
||||
<DataPath>НастройкиПодключения</DataPath>
|
||||
<CommandSet>
|
||||
<ExcludedCommand>Add</ExcludedCommand>
|
||||
<ExcludedCommand>CancelSearch</ExcludedCommand>
|
||||
<ExcludedCommand>Change</ExcludedCommand>
|
||||
<ExcludedCommand>Copy</ExcludedCommand>
|
||||
<ExcludedCommand>CopyToClipboard</ExcludedCommand>
|
||||
<ExcludedCommand>Delete</ExcludedCommand>
|
||||
<ExcludedCommand>EndEdit</ExcludedCommand>
|
||||
<ExcludedCommand>Find</ExcludedCommand>
|
||||
<ExcludedCommand>FindByCurrentValue</ExcludedCommand>
|
||||
<ExcludedCommand>MoveDown</ExcludedCommand>
|
||||
<ExcludedCommand>MoveUp</ExcludedCommand>
|
||||
<ExcludedCommand>OutputList</ExcludedCommand>
|
||||
<ExcludedCommand>SearchEverywhere</ExcludedCommand>
|
||||
<ExcludedCommand>SearchHistory</ExcludedCommand>
|
||||
<ExcludedCommand>SelectAll</ExcludedCommand>
|
||||
<ExcludedCommand>ShowMultipleSelection</ExcludedCommand>
|
||||
<ExcludedCommand>ShowRowRearrangement</ExcludedCommand>
|
||||
<ExcludedCommand>SortListAsc</ExcludedCommand>
|
||||
<ExcludedCommand>SortListDesc</ExcludedCommand>
|
||||
</CommandSet>
|
||||
<RowFilter xsi:nil="true"/>
|
||||
<ContextMenu name="НастройкиПодключенияКонтекстноеМеню" id="424"/>
|
||||
<AutoCommandBar name="НастройкиПодключенияКоманднаяПанель" id="425">
|
||||
@@ -667,7 +687,7 @@
|
||||
<Presentation>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
<v8:content>MAX</v8:content>
|
||||
<v8:content>МАКС</v8:content>
|
||||
</v8:item>
|
||||
</Presentation>
|
||||
<Value xsi:type="xs:string">MAX</Value>
|
||||
@@ -848,6 +868,7 @@
|
||||
<v8:content>Группа шаблон сообщения электронная почта</v8:content>
|
||||
</v8:item>
|
||||
</Title>
|
||||
<ShowTitle>false</ShowTitle>
|
||||
<ExtendedTooltip name="ГруппаШаблонСообщенияЭлектроннаяПочтаРасширеннаяПодсказка" id="546"/>
|
||||
<ChildItems>
|
||||
<InputField name="ШаблонСообщенияЭлектроннаяПочта" id="532">
|
||||
@@ -881,6 +902,7 @@
|
||||
<v8:content>Группа шаблон сообщения телефон</v8:content>
|
||||
</v8:item>
|
||||
</Title>
|
||||
<ShowTitle>false</ShowTitle>
|
||||
<ExtendedTooltip name="ГруппаШаблонСообщенияТелефонРасширеннаяПодсказка" id="548"/>
|
||||
<ChildItems>
|
||||
<InputField name="ШаблонСообщенияТелефон" id="535">
|
||||
@@ -914,6 +936,7 @@
|
||||
<v8:content>Группа декорация отступ</v8:content>
|
||||
</v8:item>
|
||||
</Title>
|
||||
<ShowTitle>false</ShowTitle>
|
||||
<ExtendedTooltip name="ГруппаДекорацияОтступРасширеннаяПодсказка" id="550"/>
|
||||
<ChildItems>
|
||||
<LabelDecoration name="ДекорацияОтступ" id="538">
|
||||
@@ -1066,8 +1089,6 @@
|
||||
<SelectionMode>SingleRow</SelectionMode>
|
||||
<RowSelectionMode>Row</RowSelectionMode>
|
||||
<Header>false</Header>
|
||||
<HorizontalLines>false</HorizontalLines>
|
||||
<VerticalLines>false</VerticalLines>
|
||||
<AutoInsertNewRow>true</AutoInsertNewRow>
|
||||
<FileDragMode>AsFile</FileDragMode>
|
||||
<DataPath>Вложения</DataPath>
|
||||
@@ -1078,13 +1099,20 @@
|
||||
</v8:item>
|
||||
</Title>
|
||||
<CommandSet>
|
||||
<ExcludedCommand>Add</ExcludedCommand>
|
||||
<ExcludedCommand>CancelSearch</ExcludedCommand>
|
||||
<ExcludedCommand>Change</ExcludedCommand>
|
||||
<ExcludedCommand>Copy</ExcludedCommand>
|
||||
<ExcludedCommand>CopyToClipboard</ExcludedCommand>
|
||||
<ExcludedCommand>Delete</ExcludedCommand>
|
||||
<ExcludedCommand>EndEdit</ExcludedCommand>
|
||||
<ExcludedCommand>Find</ExcludedCommand>
|
||||
<ExcludedCommand>FindByCurrentValue</ExcludedCommand>
|
||||
<ExcludedCommand>MoveDown</ExcludedCommand>
|
||||
<ExcludedCommand>MoveUp</ExcludedCommand>
|
||||
<ExcludedCommand>OutputList</ExcludedCommand>
|
||||
<ExcludedCommand>SearchEverywhere</ExcludedCommand>
|
||||
<ExcludedCommand>SearchHistory</ExcludedCommand>
|
||||
<ExcludedCommand>ShowRowRearrangement</ExcludedCommand>
|
||||
<ExcludedCommand>SortListAsc</ExcludedCommand>
|
||||
<ExcludedCommand>SortListDesc</ExcludedCommand>
|
||||
@@ -1188,6 +1216,7 @@
|
||||
</v8:item>
|
||||
</Title>
|
||||
<Group>HorizontalIfPossible</Group>
|
||||
<ShowTitle>false</ShowTitle>
|
||||
<ExtendedTooltip name="СтраницаБуферРасширеннаяПодсказка" id="282"/>
|
||||
<ChildItems>
|
||||
<HTMLDocumentField name="БуферОбмена" id="274">
|
||||
|
||||
@@ -564,6 +564,7 @@
|
||||
ПараметрыВыгрузки.Вставить("ДокументЗаказа", ОснованиеЗаказа);
|
||||
ПараметрыВыгрузки.Вставить("ПечатныеФормы", ВыбранныеВложения.ПечатныеФормы);
|
||||
ПараметрыВыгрузки.Вставить("ПрисоединенныеФайлы", ВыбранныеВложения.ПрисоединенныеФайлы);
|
||||
ПараметрыВыгрузки.Вставить("ЗаказНаОплату", Неопределено);
|
||||
|
||||
РезультатВыполнения = ДлительныеОперации.ВыполнитьФункцию(
|
||||
ПараметрыВыполнения,
|
||||
|
||||
@@ -98,6 +98,7 @@
|
||||
<v8:content>Страница выбора</v8:content>
|
||||
</v8:item>
|
||||
</Title>
|
||||
<ShowTitle>false</ShowTitle>
|
||||
<ExtendedTooltip name="СтраницаВыбораРасширеннаяПодсказка" id="81"/>
|
||||
<ChildItems>
|
||||
<Button name="Выбрать" id="82">
|
||||
@@ -127,8 +128,6 @@
|
||||
<HeightInTableRows>1</HeightInTableRows>
|
||||
<HeightControlVariant>UseHeightInTableRows</HeightControlVariant>
|
||||
<Header>false</Header>
|
||||
<HorizontalLines>false</HorizontalLines>
|
||||
<VerticalLines>false</VerticalLines>
|
||||
<AutoInsertNewRow>true</AutoInsertNewRow>
|
||||
<EnableStartDrag>true</EnableStartDrag>
|
||||
<EnableDrag>true</EnableDrag>
|
||||
@@ -205,6 +204,7 @@
|
||||
<v8:content>Страница частичные оплаты</v8:content>
|
||||
</v8:item>
|
||||
</Title>
|
||||
<ShowTitle>false</ShowTitle>
|
||||
<ExtendedTooltip name="СтраницаЧастичныеОплатыРасширеннаяПодсказка" id="107"/>
|
||||
<ChildItems>
|
||||
<CommandBar name="ГруппаКомандыЧастичныхОплат" id="197">
|
||||
@@ -298,8 +298,6 @@
|
||||
<ReadOnly>true</ReadOnly>
|
||||
<HeightInTableRows>3</HeightInTableRows>
|
||||
<Header>false</Header>
|
||||
<HorizontalLines>false</HorizontalLines>
|
||||
<VerticalLines>false</VerticalLines>
|
||||
<AutoInsertNewRow>true</AutoInsertNewRow>
|
||||
<EnableStartDrag>true</EnableStartDrag>
|
||||
<EnableDrag>true</EnableDrag>
|
||||
@@ -850,7 +848,7 @@
|
||||
<Presentation>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
<v8:content>MAX</v8:content>
|
||||
<v8:content>МАКС</v8:content>
|
||||
</v8:item>
|
||||
</Presentation>
|
||||
<Value xsi:type="xs:string">MAX</Value>
|
||||
@@ -966,6 +964,7 @@
|
||||
<v8:content>Группа шаблон сообщения электронная почта</v8:content>
|
||||
</v8:item>
|
||||
</Title>
|
||||
<ShowTitle>false</ShowTitle>
|
||||
<ExtendedTooltip name="ГруппаШаблонСообщенияЭлектроннаяПочтаРасширеннаяПодсказка" id="286"/>
|
||||
<ChildItems>
|
||||
<InputField name="ШаблонСообщенияЭлектроннаяПочта" id="274">
|
||||
@@ -998,6 +997,7 @@
|
||||
<v8:content>Группа шаблон сообщения телефон</v8:content>
|
||||
</v8:item>
|
||||
</Title>
|
||||
<ShowTitle>false</ShowTitle>
|
||||
<ExtendedTooltip name="ГруппаШаблонСообщенияТелефонРасширеннаяПодсказка" id="291"/>
|
||||
<ChildItems>
|
||||
<InputField name="ШаблонСообщенияТелефон" id="277">
|
||||
@@ -1030,6 +1030,7 @@
|
||||
<v8:content>Группа декорация отступ</v8:content>
|
||||
</v8:item>
|
||||
</Title>
|
||||
<ShowTitle>false</ShowTitle>
|
||||
<ExtendedTooltip name="ГруппаДекорацияОтступРасширеннаяПодсказка" id="296"/>
|
||||
<ChildItems>
|
||||
<LabelDecoration name="ДекорацияОтступ" id="280">
|
||||
|
||||
@@ -1246,6 +1246,22 @@
|
||||
КонецЦикла;
|
||||
КонецПроцедуры
|
||||
|
||||
&НаСервере
|
||||
Функция БезопасноеИмяФайлаДляАрхива(Представление, ИмяВременногоКаталога)
|
||||
|
||||
ИмяФайла = ОбщегоНазначенияКлиентСервер.ЗаменитьНедопустимыеСимволыВИмениФайла(Представление);
|
||||
|
||||
СтруктураИмениФайла = ОбщегоНазначенияКлиентСервер.РазложитьПолноеИмяФайла(ИмяФайла);
|
||||
Если ЗначениеЗаполнено(СтруктураИмениФайла.Расширение) Тогда
|
||||
ИмяФайла = СтруктураИмениФайла.ИмяБезРасширения + НРег(СтруктураИмениФайла.Расширение);
|
||||
КонецЕсли;
|
||||
|
||||
ПолноеИмяФайла = ИмяВременногоКаталога + ИмяФайла;
|
||||
|
||||
Возврат ФайловаяСистема.УникальноеИмяФайла(ПолноеИмяФайла);
|
||||
|
||||
КонецФункции
|
||||
|
||||
&НаСервере
|
||||
Функция ПоместитьФайлыВАрхив(ПечатныеФормыДокументов, ПереданныеНастройки)
|
||||
Перем ЗаписьZipФайла, ИмяАрхива;
|
||||
@@ -1272,9 +1288,7 @@
|
||||
Для Каждого СтруктураФайла Из ПечатныеФормыДокументов Цикл
|
||||
|
||||
ДанныеФайла = ПолучитьИзВременногоХранилища(СтруктураФайла.АдресВоВременномХранилище);
|
||||
ИмяФайла = ОбщегоНазначенияКлиентСервер.ЗаменитьНедопустимыеСимволыВИмениФайла(СтруктураФайла.Представление);
|
||||
ПолноеИмяФайла = ИмяВременногоКаталога + ИмяФайла;
|
||||
ПолноеИмяФайла = ФайловаяСистема.УникальноеИмяФайла(ПолноеИмяФайла);
|
||||
ПолноеИмяФайла = БезопасноеИмяФайлаДляАрхива(СтруктураФайла.Представление, ИмяВременногоКаталога);
|
||||
ДанныеФайла.Записать(ПолноеИмяФайла);
|
||||
|
||||
ОбъектПечати = ?(УстанавливатьОбъектПечати И ЗначениеЗаполнено(СтруктураФайла.ОбъектПечати), СтруктураФайла.ОбъектПечати, Неопределено);
|
||||
|
||||
@@ -293,7 +293,6 @@
|
||||
| Документ.СчетФактураВыданный.ДокументыОснования КАК ДанныеДокумента
|
||||
| ГДЕ
|
||||
| ДанныеДокумента.Ссылка = &СчетФактура
|
||||
| И НЕ &ОтобразитьТолькоПодобранные
|
||||
|
|
||||
| ОБЪЕДИНИТЬ ВСЕ
|
||||
|
|
||||
@@ -303,8 +302,7 @@
|
||||
| ИЗ
|
||||
| РегистрСведений.ТребуетсяОформлениеСчетаФактуры КАК ДанныеРегистра
|
||||
| ГДЕ
|
||||
| НЕ &ОтобразитьТолькоПодобранные
|
||||
| И ДанныеРегистра.ТипСчетаФактуры = &ТипСчетаФактуры
|
||||
| ДанныеРегистра.ТипСчетаФактуры = &ТипСчетаФактуры
|
||||
| //УсловиеОтбораОснований
|
||||
|
|
||||
| ОБЪЕДИНИТЬ ВСЕ
|
||||
@@ -315,8 +313,7 @@
|
||||
| ИЗ
|
||||
| РегистрСведений.ТребуетсяОформлениеСчетаФактуры КАК ДанныеРегистра
|
||||
| ГДЕ
|
||||
| НЕ &ОтобразитьТолькоПодобранные
|
||||
| И ДанныеРегистра.ТипСчетаФактуры = &ТипСчетаФактуры
|
||||
| ДанныеРегистра.ТипСчетаФактуры = &ТипСчетаФактуры
|
||||
| И (ВЫБОР
|
||||
| КОГДА ТИПЗНАЧЕНИЯ(ДанныеРегистра.Основание) = ЗНАЧЕНИЕ(Документ.КорректировкаРеализации)
|
||||
| ТОГДА ДанныеРегистра.Основание.ДокументОснование В (&ОснованияИсходногоСФ)
|
||||
@@ -425,7 +422,6 @@
|
||||
Запрос.УстановитьПараметр("Организация", Организация);
|
||||
Запрос.УстановитьПараметр("Контрагент", Контрагент);
|
||||
Запрос.УстановитьПараметр("Валюта", Валюта);
|
||||
Запрос.УстановитьПараметр("ОтобразитьТолькоПодобранные", ЗначениеЗаполнено(СчетФактураИсправление));
|
||||
Запрос.УстановитьПараметр("ОснованияИсходногоСФ", ОснованияИсходногоСФ);
|
||||
Запрос.УстановитьПараметр("НачалоТекущегоДня", НачалоДня(ТекущаяДатаСеанса()));
|
||||
|
||||
|
||||
@@ -1615,7 +1615,9 @@
|
||||
Строка = СтруктураВарианта.НайтиПоИдентификатору(ПараметрыПеретаскивания.Значение);
|
||||
НовыйРодитель = СтруктураВарианта.НайтиПоИдентификатору(ИдентификаторЦели);
|
||||
|
||||
Результат = ПереместитьЭлементыСтруктурыВарианта(Строка, НовыйРодитель);
|
||||
ДополнительныеПараметры = ДополнительныеПараметрыПеремещенияЭлементовСтруктурыВарианта();
|
||||
ДополнительныеПараметры.Копировать = ПараметрыПеретаскивания.Действие = ДействиеПеретаскивания.Копирование;
|
||||
Результат = ПереместитьЭлементыСтруктурыВарианта(Строка, НовыйРодитель, ДополнительныеПараметры);
|
||||
|
||||
Элементы.СтруктураВарианта.Развернуть(НовыйРодитель.ПолучитьИдентификатор(), Истина);
|
||||
Элементы.СтруктураВарианта.ТекущаяСтрока = Результат.Строка.ПолучитьИдентификатор();
|
||||
@@ -1785,7 +1787,9 @@
|
||||
КонецЦикла;
|
||||
|
||||
// 1. Переместить нижнюю строку на уровень с верхней.
|
||||
Результат = ПереместитьЭлементыСтруктурыВарианта(СтрокаТаблицыВверх, СтрокаТаблицыВниз.ПолучитьРодителя(), СтрокаТаблицыВниз);
|
||||
ДополнительныеПараметры = ДополнительныеПараметрыПеремещенияЭлементовСтруктурыВарианта();
|
||||
ДополнительныеПараметры.ПередЧемВставить = СтрокаТаблицыВниз;
|
||||
Результат = ПереместитьЭлементыСтруктурыВарианта(СтрокаТаблицыВверх, СтрокаТаблицыВниз.ПолучитьРодителя(), ДополнительныеПараметры);
|
||||
СтрокаТаблицыВверх = Результат.Строка;
|
||||
|
||||
// 2. Запомнить какие строки нужно переместить.
|
||||
@@ -1807,7 +1811,9 @@
|
||||
Иначе
|
||||
ПередЧемВставить = СтрокиВверх[Индекс];
|
||||
КонецЕсли;
|
||||
Результат = ПереместитьЭлементыСтруктурыВарианта(СтрокаТаблицыВниз, СтрокаТаблицыВверх, ПередЧемВставить);
|
||||
ДополнительныеПараметры = ДополнительныеПараметрыПеремещенияЭлементовСтруктурыВарианта();
|
||||
ДополнительныеПараметры.ПередЧемВставить = ПередЧемВставить;
|
||||
Результат = ПереместитьЭлементыСтруктурыВарианта(СтрокаТаблицыВниз, СтрокаТаблицыВверх, ДополнительныеПараметры);
|
||||
СтрокаТаблицыВниз = Результат.Строка;
|
||||
|
||||
// Бантики.
|
||||
@@ -5054,11 +5060,31 @@
|
||||
КонецФункции
|
||||
|
||||
&НаКлиенте
|
||||
Функция ПереместитьЭлементыСтруктурыВарианта(Знач Строка, Знач НовыйРодитель,
|
||||
Знач ПередЧемВставить = Неопределено, Знач Индекс = Неопределено, Знач ИндексЭлементаНастройки = Неопределено)
|
||||
Функция ДополнительныеПараметрыПеремещенияЭлементовСтруктурыВарианта()
|
||||
|
||||
ДополнительныеПараметры = Новый Структура;
|
||||
ДополнительныеПараметры.Вставить("ПередЧемВставить", Неопределено);
|
||||
ДополнительныеПараметры.Вставить("Индекс", Неопределено);
|
||||
ДополнительныеПараметры.Вставить("ИндексЭлементаНастройки", Неопределено);
|
||||
ДополнительныеПараметры.Вставить("Копировать", Ложь);
|
||||
|
||||
Возврат ДополнительныеПараметры;
|
||||
КонецФункции
|
||||
|
||||
&НаКлиенте
|
||||
Функция ПереместитьЭлементыСтруктурыВарианта(Знач Строка, Знач НовыйРодитель, Знач ДополнительныеПараметры = Неопределено)
|
||||
|
||||
Результат = Новый Структура("Строка, ЭлементНастройки, Индекс, ИндексЭлементаНастройки");
|
||||
|
||||
Если ДополнительныеПараметры = Неопределено Тогда
|
||||
ДополнительныеПараметры = ДополнительныеПараметрыПеремещенияЭлементовСтруктурыВарианта();
|
||||
КонецЕсли;
|
||||
|
||||
ПередЧемВставить = ДополнительныеПараметры.ПередЧемВставить;
|
||||
Индекс = ДополнительныеПараметры.Индекс;
|
||||
ИндексЭлементаНастройки = ДополнительныеПараметры.ИндексЭлементаНастройки;
|
||||
Копировать = ДополнительныеПараметры.Копировать;
|
||||
|
||||
ДобавлятьВКонец = (НовыйРодитель = Неопределено);
|
||||
КудаВставить = ПолучитьЭлементы(СтруктураВарианта, НовыйРодитель);
|
||||
|
||||
@@ -5113,9 +5139,11 @@
|
||||
НоваяСтрока.Идентификатор = ПоискЭлементовКД.Получить(СтараяСтрока.Идентификатор);
|
||||
КонецЦикла;
|
||||
|
||||
Если Не Копировать Тогда
|
||||
ОткудаПереместить.Удалить(Строка);
|
||||
ОткудаПереместитьКД.Удалить(ЭлементКД);
|
||||
КонецЕсли;
|
||||
КонецЕсли;
|
||||
|
||||
Результат.Индекс = КудаВставить.Индекс(Результат.Строка);
|
||||
Результат.ИндексЭлементаНастройки = КудаВставитьКД.Индекс(Результат.ЭлементНастройки);
|
||||
@@ -6130,7 +6158,10 @@
|
||||
Индекс = 0;
|
||||
КонецЕсли;
|
||||
|
||||
Результат = ПереместитьЭлементыСтруктурыВарианта(Контекст.ТекущаяСтрока, НовыйРодитель,, Индекс, Индекс);
|
||||
ДополнительныеПараметры = ДополнительныеПараметрыПеремещенияЭлементовСтруктурыВарианта();
|
||||
ДополнительныеПараметры.Индекс = Индекс;
|
||||
ДополнительныеПараметры.ИндексЭлементаНастройки = Индекс;
|
||||
Результат = ПереместитьЭлементыСтруктурыВарианта(Контекст.ТекущаяСтрока, НовыйРодитель, ДополнительныеПараметры);
|
||||
|
||||
Элементы.СтруктураВарианта.Развернуть(НовыйРодитель.ПолучитьИдентификатор(), Истина);
|
||||
Элементы.СтруктураВарианта.ТекущаяСтрока = Результат.Строка.ПолучитьИдентификатор();
|
||||
|
||||
@@ -111,6 +111,7 @@
|
||||
Возврат;
|
||||
КонецЕсли;
|
||||
|
||||
УстановитьПривилегированныйРежим(Истина);
|
||||
ОтключитьИспользованиеКлючаДоступаКСервисуЭДО(ИдентификаторЭДО);
|
||||
|
||||
РегистрыСведений.СостоянияАвтоматическогоПолученияЭДО.Удалить(ИдентификаторЭДО);
|
||||
@@ -1251,7 +1252,7 @@
|
||||
Текст = СтрШаблон(НСтр("ru = 'Начало операции: %1.'"), ВидОперации);
|
||||
Подсистема = ОбщегоНазначенияБЭДКлиентСервер.ПодсистемыБЭД().АвтоматическоеПолучениеЭДО;
|
||||
ОбщегоНазначенияБЭД.ЗаписатьВЖурналРегистрации(Текст, Подсистема, УровеньЖурналаРегистрации.Информация);
|
||||
|
||||
ОписаниеЗамера = ОбщегоНазначенияБЭД.НачатьЗамер("АвтоматическоеПолучениеЭДО");
|
||||
Попытка
|
||||
|
||||
СостояниеПоИдентификаторамЭДОДоПолучения =
|
||||
@@ -1337,7 +1338,7 @@
|
||||
ОбработкаНеисправностейБЭД.ДобавитьОшибку(КонтекстДиагностики, Ошибка, Подсистема);
|
||||
ДиагностикаЭДО.ОбработатьОшибки(КонтекстДиагностики);
|
||||
КонецПопытки;
|
||||
|
||||
ОбщегоНазначенияБЭД.ЗакончитьЗамер("АвтоматическоеПолучениеЭДО", ОписаниеЗамера, Загружено);
|
||||
Возврат Результат;
|
||||
|
||||
КонецФункции
|
||||
@@ -1818,4 +1819,13 @@
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
// См. СтандартныеПодсистемыСервер.ПриОпределенииМетодовРазрешенныхДляВызоваКакПроизвольныйКод
|
||||
Процедура ПриОпределенииМетодовРазрешенныхДляВызоваКакПроизвольныйКод(Методы) Экспорт
|
||||
|
||||
Методы.Вставить("ВключитьПоУчетнымЗаписямЭДО", Истина);
|
||||
Методы.Вставить("ПолучитьПоРасписанию", Истина);
|
||||
Методы.Вставить("ПолучитьЧерезИнтервал", Истина);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
#КонецОбласти // СлужебныеПроцедурыИФункции
|
||||
|
||||
@@ -401,7 +401,7 @@
|
||||
И ЗагруженныеАдресныеСведения.Получить(КодРегиона).ИспользоватьЗагруженные Тогда
|
||||
|
||||
Адрес = РаспознатьАдресЗагруженныеДанные(ЧастиАдреса, КодРегиона);
|
||||
Если СтрСравнить(Адрес.addressType, АдресВСвободнойФорме()) <> 0 Тогда
|
||||
Если Адрес <> Неопределено И СтрСравнить(Адрес.addressType, АдресВСвободнойФорме()) <> 0 Тогда
|
||||
Возврат Адрес;
|
||||
КонецЕсли;
|
||||
|
||||
@@ -1339,6 +1339,7 @@
|
||||
НаименованиеИТипОбъекта = НаименованиеИТипОбъекта(ЧастиАдреса[2]);
|
||||
Результат.Area = НаименованиеИТипОбъекта.Наименование;
|
||||
Результат.AreaType = НаименованиеИТипОбъекта.Сокращение;
|
||||
Результат.areaValue = ОфициальноеНаименованиеРегиона(Результат.Area);
|
||||
ОбновитьСписокУровней(Результат, "area", ЗначениеЗаполнено(Результат["area"]));
|
||||
|
||||
НаименованиеИТипОбъекта = НаименованиеИТипОбъекта(ЧастиАдреса[3]);
|
||||
@@ -1397,6 +1398,7 @@
|
||||
СубъектРФ = НаименованиеИТипОбъекта(АдаптацияНазванияРегиона(АдресРФ.СубъектРФ));
|
||||
Результат.Area = Строка(СубъектРФ.Наименование);
|
||||
Результат.AreaType = Строка(СубъектРФ.ТипОбъекта);
|
||||
Результат.areaValue = ОфициальноеНаименованиеРегиона(Результат.Area);
|
||||
ОбновитьСписокУровней(Результат, "area", ЗначениеЗаполнено(Результат["area"]));
|
||||
|
||||
РайонАдреса = НаименованиеИТипОбъекта(РайонАдреса(АдресРФ));
|
||||
@@ -1409,10 +1411,12 @@
|
||||
Результат.CityType = Строка(Город.ТипОбъекта);
|
||||
ОбновитьСписокУровней(Результат, "city", ЗначениеЗаполнено(Результат["city"]));
|
||||
|
||||
Если ЗначениеГородаОтличаетсяОтНаселенногоПункта(АдресРФ.Город, АдресРФ.НаселПункт) Тогда
|
||||
НаселПункт = НаименованиеИТипОбъекта(АдресРФ.НаселПункт);
|
||||
Результат.Locality = Строка(НаселПункт.Наименование);
|
||||
Результат.LocalityType = Строка(НаселПункт.ТипОбъекта);
|
||||
ОбновитьСписокУровней(Результат, "locality", ЗначениеЗаполнено(Результат["locality"]));
|
||||
КонецЕсли;
|
||||
|
||||
ВнутригРайон = НаименованиеИТипОбъекта(АдресРФ.ВнутригРайон);
|
||||
Результат.CityDistrict = Строка(ВнутригРайон.Наименование);
|
||||
@@ -3073,6 +3077,21 @@
|
||||
|
||||
КонецФункции
|
||||
|
||||
Функция ЗначениеГородаОтличаетсяОтНаселенногоПункта(Город, НаселенныйПункт)
|
||||
Возврат СтрСравнить(Город, НаселенныйПункт) <> 0;
|
||||
КонецФункции
|
||||
|
||||
Функция ОфициальноеНаименованиеРегиона(Знач Наименование)
|
||||
|
||||
ДанныеОРегионе = АдресныйКлассификаторПовтИсп.ДанныеОРегионе(Наименование);
|
||||
Если ДанныеОРегионе <> Неопределено Тогда
|
||||
Возврат ДанныеОРегионе.ОфициальноеНаименование;
|
||||
КонецЕсли;
|
||||
|
||||
Возврат "";
|
||||
|
||||
КонецФункции
|
||||
|
||||
Функция ДействующиеНаименованиеКемеровскойОбласти() Экспорт
|
||||
// АПК: 1297-выкл Данные адресного классификатора, не локализуются
|
||||
Возврат "Кемеровская область - Кузбасс";
|
||||
@@ -3332,9 +3351,10 @@
|
||||
|
||||
КонецФункции
|
||||
|
||||
Функция РаспознатьАдресЗагруженныеДанные(ЧастиАдреса, КодРегиона)
|
||||
Функция РаспознатьАдресЗагруженныеДанные(ИсходныеЧастиАдреса, КодРегиона)
|
||||
|
||||
ЧастиАдреса = ОбработатьОбщепринятыеСокращенияИУдалитьТочкуВКонецТипа(ИсходныеЧастиАдреса);
|
||||
|
||||
ОбработатьОбщепринятыеСокращенияИУдалитьТочкуВКонецТипа(ЧастиАдреса);
|
||||
Адрес = ОписаниеНовойКонтактнойИнформации();
|
||||
|
||||
Запрос = Новый Запрос;
|
||||
@@ -3344,11 +3364,13 @@
|
||||
| ДанныеАдреса.Позиция КАК Позиция,
|
||||
| ДанныеАдреса.Значение КАК Значение,
|
||||
| ДанныеАдреса.Наименование КАК Наименование,
|
||||
| ДанныеАдреса.ТипОбъекта КАК ТипОбъекта
|
||||
| ДанныеАдреса.ТипОбъекта КАК ТипОбъекта,
|
||||
| ДанныеАдреса.ТипОбъекта2 КАК ТипОбъекта2
|
||||
|ПОМЕСТИТЬ ДанныеАдреса
|
||||
|ИЗ
|
||||
| &ДанныеАдреса КАК ДанныеАдреса
|
||||
|ГДЕ ДанныеАдреса.Уровень >= 0
|
||||
|ГДЕ
|
||||
| ДанныеАдреса.Уровень >= 0
|
||||
|
|
||||
|ИНДЕКСИРОВАТЬ ПО
|
||||
| Уровень,
|
||||
@@ -3358,57 +3380,90 @@
|
||||
|;
|
||||
|
|
||||
|////////////////////////////////////////////////////////////////////////////////
|
||||
|ВЫБРАТЬ РАЗЛИЧНЫЕ ПЕРВЫЕ 10
|
||||
| МАКСИМУМ(АдресныеОбъекты.Уровень) КАК Уровень,
|
||||
|ВЫБРАТЬ ПЕРВЫЕ 100
|
||||
| АдресныеОбъекты.Уровень КАК Уровень,
|
||||
| ДанныеАдреса.Позиция КАК Позиция,
|
||||
| ДанныеАдреса.Наименование КАК Наименование,
|
||||
| ДанныеАдреса.ТипОбъекта КАК ТипОбъекта
|
||||
| АдресныеОбъекты.Наименование КАК Наименование,
|
||||
| АдресныеОбъекты.ТипОбъекта КАК ТипОбъекта,
|
||||
| ДанныеАдреса.ТипОбъекта КАК ИсходныйТипОбъекта,
|
||||
| АдресныеОбъекты.Идентификатор КАК Идентификатор
|
||||
|ПОМЕСТИТЬ НайденныеОбъекты
|
||||
|ИЗ
|
||||
| ДанныеАдреса КАК ДанныеАдреса
|
||||
| ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.АдресныеОбъекты КАК АдресныеОбъекты
|
||||
| ПО (ДанныеАдреса.Наименование = АдресныеОбъекты.Наименование)
|
||||
| И (ДанныеАдреса.ТипОбъекта = АдресныеОбъекты.ТипОбъекта ИЛИ ДанныеАдреса.ТипОбъекта + ""."" = АдресныеОбъекты.ТипОбъекта )
|
||||
| И (ДанныеАдреса.ТипОбъекта = АдресныеОбъекты.ТипОбъекта
|
||||
| ИЛИ ДанныеАдреса.ТипОбъекта + ""."" = АдресныеОбъекты.ТипОбъекта
|
||||
| ИЛИ ДанныеАдреса.ТипОбъекта2 = АдресныеОбъекты.ТипОбъекта
|
||||
| ИЛИ ДанныеАдреса.ТипОбъекта2 + ""."" = АдресныеОбъекты.ТипОбъекта)
|
||||
|ГДЕ
|
||||
| НЕ АдресныеОбъекты.Идентификатор ЕСТЬ NULL
|
||||
| И АдресныеОбъекты.КодСубъектаРФ = &КодСубъектаРФ
|
||||
|
|
||||
|СГРУППИРОВАТЬ ПО
|
||||
| ДанныеАдреса.Наименование,
|
||||
| ДанныеАдреса.ТипОбъекта,
|
||||
| ДанныеАдреса.Позиция
|
||||
|
|
||||
|УПОРЯДОЧИТЬ ПО ДанныеАдреса.Позиция
|
||||
|;
|
||||
|
|
||||
|////////////////////////////////////////////////////////////////////////////////
|
||||
|ВЫБРАТЬ
|
||||
|ВЫБРАТЬ ПЕРВЫЕ 100
|
||||
| ДанныеАдреса.Уровень КАК Уровень,
|
||||
| ДанныеАдреса.Позиция КАК Позиция,
|
||||
| ДанныеАдреса.Значение КАК Значение,
|
||||
| ДанныеАдреса.Наименование КАК Наименование,
|
||||
| ДанныеАдреса.ТипОбъекта КАК ТипОбъекта
|
||||
|
|
||||
| ДанныеАдреса.ТипОбъекта КАК ТипОбъекта,
|
||||
| ДанныеАдреса.ИсходныйТипОбъекта КАК ИсходныйТипОбъекта,
|
||||
| ДанныеАдреса.Идентификатор КАК Идентификатор,
|
||||
| АдминистративнаяИерархия.РодительскийИдентификатор КАК АдминистративныйРодительскийИдентификатор,
|
||||
| МуниципальнаяИерархия.РодительскийИдентификатор КАК МуниципальныйРодительскийИдентификатор
|
||||
|ИЗ
|
||||
| ДанныеАдреса КАК ДанныеАдреса
|
||||
| ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.АдресныеОбъекты КАК АдресныеОбъекты
|
||||
| ПО ДанныеАдреса.Наименование = АдресныеОбъекты.Наименование
|
||||
| И (ДанныеАдреса.ТипОбъекта = АдресныеОбъекты.ТипОбъекта ИЛИ ДанныеАдреса.ТипОбъекта + ""."" = АдресныеОбъекты.ТипОбъекта )
|
||||
| НайденныеОбъекты КАК ДанныеАдреса
|
||||
| ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.АдминистративнаяИерархия КАК АдминистративнаяИерархия
|
||||
| ПО (АдминистративнаяИерархия.Идентификатор = ДанныеАдреса.Идентификатор)
|
||||
| ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.МуниципальнаяИерархия КАК МуниципальнаяИерархия
|
||||
| ПО (МуниципальнаяИерархия.Идентификатор = ДанныеАдреса.Идентификатор)
|
||||
|ГДЕ
|
||||
| АдресныеОбъекты.Идентификатор ЕСТЬ NULL
|
||||
| (АдминистративнаяИерархия.КодСубъектаРФ = &КодСубъектаРФ ИЛИ МуниципальнаяИерархия.КодСубъектаРФ = &КодСубъектаРФ)
|
||||
| И НЕ ДанныеАдреса.Идентификатор ЕСТЬ NULL
|
||||
|
|
||||
|УПОРЯДОЧИТЬ ПО ДанныеАдреса.Позиция
|
||||
|УПОРЯДОЧИТЬ ПО
|
||||
| ДанныеАдреса.Уровень УБЫВ, ДанныеАдреса.Позиция УБЫВ
|
||||
|";
|
||||
|
||||
Запрос.УстановитьПараметр("ДанныеАдреса", ЧастиАдреса);
|
||||
Запрос.УстановитьПараметр("КодСубъектаРФ", КодРегиона);
|
||||
|
||||
РезультатЗапроса = Запрос.ВыполнитьПакет();
|
||||
|
||||
СопоставленныеЧастиАдреса = СопоставленныеЧастиАдреса(РезультатЗапроса);
|
||||
|
||||
Если СопоставленныеЧастиАдреса.Количество() = 0 Тогда
|
||||
Возврат Адрес;
|
||||
Возврат Неопределено;
|
||||
КонецЕсли;
|
||||
|
||||
// дома
|
||||
ДомаЗдания = ДомаЗдания(РезультатЗапроса);
|
||||
Муниципальный = Истина;
|
||||
АдресПоНайденнымДанным = ОпределитьАдресПоНайденнымДанным(СопоставленныеЧастиАдреса, Муниципальный);
|
||||
Если АдресПоНайденнымДанным.Адрес = Неопределено Тогда
|
||||
Муниципальный = Ложь;
|
||||
АдресПоНайденнымДанным = ОпределитьАдресПоНайденнымДанным(СопоставленныеЧастиАдреса, Муниципальный);
|
||||
КонецЕсли;
|
||||
|
||||
Если АдресПоНайденнымДанным.Адрес = Неопределено Тогда
|
||||
Возврат Неопределено;
|
||||
КонецЕсли;
|
||||
|
||||
Для Каждого ЭлементАдреса Из АдресПоНайденнымДанным.ЦепочкаАдреса Цикл
|
||||
|
||||
ОтборПоУровню = Новый Структура;
|
||||
ОтборПоУровню.Вставить("Наименование", ЭлементАдреса.Наименование);
|
||||
ОтборПоУровню.Вставить("ТипОбъекта", ЭлементАдреса.ИсходныйТипОбъекта);
|
||||
|
||||
СтрокиПоУровню = ЧастиАдреса.НайтиСтроки(ОтборПоУровню);
|
||||
|
||||
Для Каждого СтрокаУровня Из СтрокиПоУровню Цикл
|
||||
СтрокаУровня.Уровень = ЭлементАдреса.Уровень;
|
||||
КонецЦикла;
|
||||
|
||||
КонецЦикла;
|
||||
|
||||
АдресДанные = АдресПоНайденнымДанным.Адрес;
|
||||
|
||||
// Все нераспознанное считаем домами.
|
||||
КодыДомовВладенийИСтроений = КодыДомовВладенийИСтроений();
|
||||
СокращенияНаименованийДомов = АдресныйКлассификаторПовтИсп.СокращенияНаименованийДомов();
|
||||
СокращенияНаименованийПомещений = АдресныйКлассификаторПовтИсп.СокращенияНаименованийПомещений();
|
||||
@@ -3419,14 +3474,17 @@
|
||||
СведенияОДоме = СведенияОДоме();
|
||||
СведенияОЗемельномУчастке = "";
|
||||
|
||||
Для Каждого ЭлементАдреса Из ДомаЗдания Цикл
|
||||
Для Каждого ЭлементАдреса Из ЧастиАдреса Цикл
|
||||
Если ЭлементАдреса.Уровень <> 0 Тогда
|
||||
Продолжить;
|
||||
КонецЕсли;
|
||||
|
||||
ТипОбъекта = ВРег(СокрЛП(СтрЗаменить(ЭлементАдреса.ТипОбъекта, "№", "")));
|
||||
Значение = ЭлементАдреса.Наименование;
|
||||
|
||||
Если СтрСравнить(ТипОбъекта, "З/У") = 0 Тогда
|
||||
Если ЭтоТипЗемельныйУчасток(ЭлементАдреса) Тогда
|
||||
СведенияОЗемельномУчастке = Значение;
|
||||
Продолжить
|
||||
Продолжить;
|
||||
КонецЕсли;
|
||||
|
||||
ТипДомаИлиСтроения = "";
|
||||
@@ -3463,74 +3521,19 @@
|
||||
|
||||
КонецЦикла;
|
||||
|
||||
АдресаПоПолям = НоваяТаблицаАдресовСРазбивкойНаПоля();
|
||||
|
||||
АдресМуниципальный = АдресаПоПолям.Добавить();
|
||||
АдресМуниципальный.Ключ = 0;
|
||||
АдресМуниципальный.ЭтоМуниципальныйАдрес = Истина;
|
||||
|
||||
АдресАдминистративный = АдресаПоПолям.Добавить();
|
||||
АдресАдминистративный.Ключ = 1;
|
||||
АдресАдминистративный.ЭтоМуниципальныйАдрес = Ложь;
|
||||
|
||||
МаксимальноеКоличествоЧастейАдреса = 5;
|
||||
КоличествоЧастейАдреса = ?(СопоставленныеЧастиАдреса.Количество() > МаксимальноеКоличествоЧастейАдреса,
|
||||
МаксимальноеКоличествоЧастейАдреса, СопоставленныеЧастиАдреса.Количество() - 1);
|
||||
Позиция = 0;
|
||||
|
||||
Пока Позиция <= КоличествоЧастейАдреса Цикл
|
||||
|
||||
АдресМуниципальный["Наименование" + Строка(Позиция)] = СопоставленныеЧастиАдреса[Позиция]["Наименование"];
|
||||
АдресМуниципальный["ТипОбъекта" + Строка(Позиция)] = СопоставленныеЧастиАдреса[Позиция]["ТипОбъекта"];
|
||||
АдресАдминистративный["Наименование" + Строка(Позиция)] = СопоставленныеЧастиАдреса[Позиция]["Наименование"];
|
||||
АдресАдминистративный["ТипОбъекта" + Строка(Позиция)] = СопоставленныеЧастиАдреса[Позиция]["ТипОбъекта"];
|
||||
|
||||
Позиция = Позиция + 1;
|
||||
КонецЦикла;
|
||||
|
||||
КодыРегионов = Новый Массив;
|
||||
КодыРегионов.Добавить(КодРегиона);
|
||||
|
||||
Запрос.Текст = ТекстЗапросаПроверкиАдресов();
|
||||
Запрос.УстановитьПараметр("АдресаПоПолям", АдресаПоПолям);
|
||||
Запрос.УстановитьПараметр("КодыРегионов", КодыРегионов);
|
||||
|
||||
РезультатЗапроса = Запрос.ВыполнитьПакет();
|
||||
ВариантыАдресов = РезультатЗапроса[13];
|
||||
ДомаИСведения = РезультатЗапроса[14];
|
||||
Участки = РезультатЗапроса[15];
|
||||
|
||||
Если ВариантыАдресов.Пустой() Тогда
|
||||
Возврат Адрес; // Не удалось распознать адрес.
|
||||
КонецЕсли;
|
||||
НайденныеАдреса= ВариантыАдресов.Выгрузить();
|
||||
|
||||
Если НайденныеАдреса.Количество() > 1 И НайденныеАдреса[0].Уровень < НайденныеАдреса[1].Уровень Тогда
|
||||
СтрокаАдреса = НайденныеАдреса[1];
|
||||
Иначе
|
||||
СтрокаАдреса = НайденныеАдреса[0];
|
||||
КонецЕсли;
|
||||
|
||||
СтрокаИндекс = ЧастиАдреса.Найти(-1, "Уровень");
|
||||
ПочтовыйИндекс = ?(СтрокаИндекс <> Неопределено, СтрокаИндекс.Значение, "");
|
||||
|
||||
Муниципальный = ?(СтрокаАдреса.КлючАдреса = 0, Истина, Ложь);
|
||||
|
||||
Сведения = СведенияОбАдресномОбъекта(СтрокаАдреса.Идентификатор);
|
||||
Сведения.ЗагруженныеДанные = Истина;
|
||||
Сведения.Муниципальный = Муниципальный;
|
||||
|
||||
АдресДанные = АктуальныеАдресныеСведения(Сведения);
|
||||
|
||||
Адрес = СформироватьАдресПоДаннымИзКлассификатора(АдресДанные.Данные);
|
||||
ИдентификаторАдресногоЭлемента = ИдентификаторАдресногоОбъекта(Адрес);
|
||||
Адрес.AddressType = ?(Муниципальный, МуниципальныйАдрес(), АдминистративноТерриториальныйАдрес());
|
||||
|
||||
Адрес.HouseType = ТРег(СведенияОДоме.НаименованиеДома);
|
||||
Адрес.HouseNumber = ТРег(СведенияОДоме.НомерДома);
|
||||
|
||||
Если ЗначениеЗаполнено(СведенияОЗемельномУчастке) Тогда
|
||||
ДанныеОбУчастке = КодыПоИдентификаторуАдресногоОбъектаЗемельныйУчасток(ИдентификаторАдресногоЭлемента, СведенияОЗемельномУчастке);
|
||||
|
||||
ДанныеОбУчастке = НайтиСтрокуСЗемельнымУчастком(Участки.Выгрузить(), СведенияОЗемельномУчастке);
|
||||
Адрес.stead = ДанныеОбУчастке.НомерЗемельногоУчастка;
|
||||
Адрес.steadId = ДанныеОбУчастке.ИдентификаторУчастка;
|
||||
|
||||
@@ -3539,7 +3542,8 @@
|
||||
Адрес.Buildings = Строения;
|
||||
Адрес.Apartments = Квартиры;
|
||||
|
||||
ОписаниеДома = НайтиСтрокуСДомом(ДомаИСведения.Выгрузить(), СведенияОДоме);
|
||||
ОписаниеДома = КодыПоИдентификаторуАдресногоОбъектаДома(ИдентификаторАдресногоЭлемента, СведенияОДоме);
|
||||
|
||||
Если ОписаниеДома <> Неопределено Тогда
|
||||
Адрес.HouseID = ОписаниеДома.ИдентификаторДома;
|
||||
Адрес.OKTMO = Формат(ОписаниеДома.ОКТМО, "ЧГ=0");
|
||||
@@ -3560,20 +3564,74 @@
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Параметры:
|
||||
// РезультатЗапроса - Массив
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// ТаблицаЗначений:
|
||||
// * Позиция - Число
|
||||
// * Значение - Строка
|
||||
// * Наименование - Строка
|
||||
// * ТипОбъекта - Строка
|
||||
//
|
||||
Функция ДомаЗдания(Знач РезультатЗапроса)
|
||||
Функция ОпределитьАдресПоНайденнымДанным(Знач СопоставленныеЧастиАдреса, Муниципальный)
|
||||
|
||||
ДомаЗдания = РезультатЗапроса[2].Выгрузить();
|
||||
Возврат ДомаЗдания
|
||||
РезультатОпределения = Новый Структура;
|
||||
РезультатОпределения.Вставить("Адрес", Неопределено);
|
||||
РезультатОпределения.Вставить("ЦепочкаАдреса", Неопределено);
|
||||
|
||||
ВерхнийУровеньАдреса = СопоставленныеЧастиАдреса.Получить(0);
|
||||
|
||||
ОтборПоУровню = Новый Структура;
|
||||
ОтборПоУровню.Вставить("Наименование", ВерхнийУровеньАдреса.Наименование);
|
||||
ОтборПоУровню.Вставить("ТипОбъекта", ВерхнийУровеньАдреса.ТипОбъекта);
|
||||
СтрокиУровня = СопоставленныеЧастиАдреса.НайтиСтроки(ОтборПоУровню);
|
||||
|
||||
ИмяПоляРодительскогоИдентификатора = ?(Муниципальный,
|
||||
"МуниципальныйРодительскийИдентификатор", "АдминистративныйРодительскийИдентификатор");
|
||||
|
||||
СведенияОбАдресе = Неопределено;
|
||||
|
||||
Для каждого СтрокаУровня Из СтрокиУровня Цикл
|
||||
|
||||
ЦепочкаРодителей = Новый Структура;
|
||||
ЦепочкаРодителей.Вставить("КореньНайден", Ложь);
|
||||
ЦепочкаРодителей.Вставить("Уровни", Новый Массив);
|
||||
|
||||
ЦепочкаРодителей.Уровни.Добавить(СтрокаУровня);
|
||||
|
||||
ЦепочкаРодителей = ПутьДоКорняНайден(СопоставленныеЧастиАдреса,
|
||||
СтрокаУровня[ИмяПоляРодительскогоИдентификатора], ИмяПоляРодительскогоИдентификатора, ЦепочкаРодителей);
|
||||
|
||||
Если ЦепочкаРодителей.КореньНайден Тогда
|
||||
|
||||
СведенияОбАдресе = СведенияОбАдресномОбъекта(СтрокаУровня.Идентификатор);
|
||||
СведенияОбАдресе.ЗагруженныеДанные = Истина;
|
||||
СведенияОбАдресе.Муниципальный = Муниципальный;
|
||||
РезультатОпределения.ЦепочкаАдреса = ЦепочкаРодителей.Уровни;
|
||||
Прервать;
|
||||
|
||||
КонецЕсли;
|
||||
|
||||
КонецЦикла;
|
||||
|
||||
Если СведенияОбАдресе = Неопределено Тогда
|
||||
Возврат РезультатОпределения;
|
||||
КонецЕсли;
|
||||
|
||||
РезультатОпределения.Адрес = АктуальныеАдресныеСведения(СведенияОбАдресе);
|
||||
|
||||
Возврат РезультатОпределения;
|
||||
|
||||
КонецФункции
|
||||
|
||||
Функция ПутьДоКорняНайден(СопоставленныеЧастиАдреса, Идентификатор, ИмяПоляРодительскогоИдентификатора, ЦепочкаРодителей)
|
||||
|
||||
НайденнаяСтрока = СопоставленныеЧастиАдреса.Найти(Идентификатор, "Идентификатор");
|
||||
Если НайденнаяСтрока = Неопределено Тогда
|
||||
ЦепочкаРодителей.КореньНайден = Ложь;
|
||||
Возврат ЦепочкаРодителей;
|
||||
КонецЕсли;
|
||||
|
||||
Если НайденнаяСтрока.Уровень = 1 Тогда
|
||||
ЦепочкаРодителей.Уровни.Добавить(НайденнаяСтрока);
|
||||
ЦепочкаРодителей.КореньНайден = Истина;
|
||||
Возврат ЦепочкаРодителей;
|
||||
КонецЕсли;
|
||||
|
||||
ЦепочкаРодителей.Уровни.Добавить(НайденнаяСтрока);
|
||||
|
||||
Возврат ПутьДоКорняНайден(СопоставленныеЧастиАдреса, НайденнаяСтрока[ИмяПоляРодительскогоИдентификатора], ИмяПоляРодительскогоИдентификатора, ЦепочкаРодителей);
|
||||
|
||||
КонецФункции
|
||||
|
||||
@@ -3589,7 +3647,7 @@
|
||||
//
|
||||
Функция СопоставленныеЧастиАдреса(Знач РезультатЗапроса)
|
||||
|
||||
СопоставленныеЧастиАдреса = РезультатЗапроса[1].Выгрузить();
|
||||
СопоставленныеЧастиАдреса = РезультатЗапроса[2].Выгрузить();
|
||||
Возврат СопоставленныеЧастиАдреса
|
||||
|
||||
КонецФункции
|
||||
@@ -4149,13 +4207,9 @@
|
||||
Запрос = Новый Запрос;
|
||||
УровеньУлицы = 8;
|
||||
|
||||
Если ПустаяСтрока(ТекстПоиска) Тогда
|
||||
ТекстЗапроса = ТекстЗапросаПодбораВсехУлиц();
|
||||
Иначе
|
||||
ТекстЗапроса = ТекстЗапросаПодбораУлицМуниципальнаяИерархия();
|
||||
КонецЕсли;
|
||||
ТекстЗапроса = ?(ПустаяСтрока(ТекстПоиска), ТекстЗапросаПодбораВсехУлиц(), ТекстЗапросаПодбораУлицМуниципальнаяИерархия());
|
||||
|
||||
Если ПараметрыАвтоподбора.ТипАдреса = АдминистративноТерриториальныйАдрес() Тогда
|
||||
Если ЭтоАдминистративноТерриториальныйАдрес(ПараметрыАвтоподбора.ТипАдреса) Тогда
|
||||
ТекстЗапроса = СтрЗаменить(ТекстЗапроса, Метаданные.РегистрыСведений.МуниципальнаяИерархия.Имя,
|
||||
Метаданные.РегистрыСведений.АдминистративнаяИерархия.Имя);
|
||||
КонецЕсли;
|
||||
@@ -4356,23 +4410,23 @@
|
||||
|ПОМЕСТИТЬ ИдентификаторыДочернихОбъектов
|
||||
|ИЗ
|
||||
| РегистрСведений.АдресныеОбъекты КАК АдресныйОбъект0
|
||||
| ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.АдминистративнаяИерархия КАК Иерархия1
|
||||
| ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.МуниципальнаяИерархия КАК Иерархия1
|
||||
| ПО (Иерархия1.РодительскийИдентификатор = АдресныйОбъект0.Идентификатор)
|
||||
| ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.АдресныеОбъекты КАК АдресныйОбъект1
|
||||
| ПО (Иерархия1.Идентификатор = АдресныйОбъект1.Идентификатор)
|
||||
| ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.АдминистративнаяИерархия КАК Иерархия2
|
||||
| ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.МуниципальнаяИерархия КАК Иерархия2
|
||||
| ПО (Иерархия2.РодительскийИдентификатор = Иерархия1.Идентификатор)
|
||||
| ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.АдресныеОбъекты КАК АдресныйОбъект2
|
||||
| ПО (Иерархия2.Идентификатор = АдресныйОбъект2.Идентификатор)
|
||||
| ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.АдминистративнаяИерархия КАК Иерархия3
|
||||
| ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.МуниципальнаяИерархия КАК Иерархия3
|
||||
| ПО (Иерархия3.РодительскийИдентификатор = Иерархия2.Идентификатор)
|
||||
| ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.АдресныеОбъекты КАК АдресныйОбъект3
|
||||
| ПО (Иерархия3.Идентификатор = АдресныйОбъект3.Идентификатор)
|
||||
| ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.АдминистративнаяИерархия КАК Иерархия4
|
||||
| ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.МуниципальнаяИерархия КАК Иерархия4
|
||||
| ПО (Иерархия4.РодительскийИдентификатор = Иерархия3.Идентификатор)
|
||||
| ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.АдресныеОбъекты КАК АдресныйОбъект4
|
||||
| ПО (Иерархия4.Идентификатор = АдресныйОбъект4.Идентификатор)
|
||||
| ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.АдминистративнаяИерархия КАК Иерархия5
|
||||
| ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.МуниципальнаяИерархия КАК Иерархия5
|
||||
| ПО (Иерархия5.РодительскийИдентификатор = Иерархия4.Идентификатор)
|
||||
| ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.АдресныеОбъекты КАК АдресныйОбъект5
|
||||
| ПО (Иерархия5.Идентификатор = АдресныйОбъект5.Идентификатор)
|
||||
@@ -4408,15 +4462,15 @@
|
||||
| ИдентификаторыДочернихОбъектов КАК ИдентификаторыОбъектов
|
||||
| ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.АдресныеОбъекты КАК АдресныйОбъект0
|
||||
| ПО (ИдентификаторыОбъектов.Идентификатор = АдресныйОбъект0.Идентификатор)
|
||||
| ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.АдминистративнаяИерархия КАК Иерархия1
|
||||
| ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.МуниципальнаяИерархия КАК Иерархия1
|
||||
| ПО (Иерархия1.Идентификатор = АдресныйОбъект0.Идентификатор)
|
||||
| ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.АдминистративнаяИерархия КАК Иерархия2
|
||||
| ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.МуниципальнаяИерархия КАК Иерархия2
|
||||
| ПО (Иерархия2.Идентификатор = Иерархия1.РодительскийИдентификатор)
|
||||
| ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.АдминистративнаяИерархия КАК Иерархия3
|
||||
| ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.МуниципальнаяИерархия КАК Иерархия3
|
||||
| ПО (Иерархия3.Идентификатор = Иерархия2.РодительскийИдентификатор)
|
||||
| ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.АдминистративнаяИерархия КАК Иерархия4
|
||||
| ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.МуниципальнаяИерархия КАК Иерархия4
|
||||
| ПО (Иерархия4.Идентификатор = Иерархия3.РодительскийИдентификатор)
|
||||
| ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.АдминистративнаяИерархия КАК Иерархия5
|
||||
| ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.МуниципальнаяИерархия КАК Иерархия5
|
||||
| ПО (Иерархия5.Идентификатор = Иерархия4.РодительскийИдентификатор)
|
||||
| ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.АдресныеОбъекты КАК АдресныйОбъект1
|
||||
| ПО (Иерархия1.РодительскийИдентификатор = АдресныйОбъект1.Идентификатор)
|
||||
@@ -4438,8 +4492,6 @@
|
||||
|
||||
КонецФункции
|
||||
|
||||
|
||||
|
||||
// Параметры:
|
||||
// СведенияОбАдресномОбъекте - см. СведенияОбАдресномОбъекта
|
||||
//
|
||||
@@ -4725,6 +4777,15 @@
|
||||
// АПК: 1036-вкл
|
||||
КонецФункции
|
||||
|
||||
Функция ЭтоТипЗемельныйУчасток(ЭлементАдреса)
|
||||
|
||||
// АПК: 1297-выкл Данные адресного классификатора, не локализуются
|
||||
ТипОбъекта = ВРег(СокрЛП(ЭлементАдреса.ТипОбъекта));
|
||||
Возврат СтрСравнить(ТипОбъекта, "З/У") = 0 Или СтрНачинаетсяС(ВРег(ЭлементАдреса.Значение), ВРег("Земельный участок"));
|
||||
// АПК: 1297-вкл
|
||||
|
||||
КонецФункции
|
||||
|
||||
Функция ПредставлениеУровняАдреса(Адрес, ИмяУровня) Экспорт
|
||||
|
||||
ЭтоРегион = СтрСравнить(ИмяУровня, АдресныйКлассификаторПовтИсп.НомераУровнейАдресаПоНаименованию().area) = 0;
|
||||
@@ -4825,7 +4886,6 @@
|
||||
|
||||
КонецФункции
|
||||
|
||||
|
||||
// Возвращаемое значение:
|
||||
// Структура:
|
||||
// * Идентификатор - Строка
|
||||
@@ -4916,13 +4976,13 @@
|
||||
|
||||
КонецФункции
|
||||
|
||||
Функция КодыПоИдентификаторуАдресногоОбъекта(АдресныйОбъект, СведенияОДоме)
|
||||
Функция КодыПоИдентификаторуАдресногоОбъектаДома(ИдентификаторАдресногоОбъекта, СведенияОДоме)
|
||||
|
||||
Запрос = Новый Запрос;
|
||||
Запрос.Текст =
|
||||
"ВЫБРАТЬ
|
||||
| ДомаЗданияСтроения.Строения КАК Строения,
|
||||
| ДополнительныеСведения.ПочтовыйИндекс КАК ПочтовыйИндекс,
|
||||
| ДополнительныеСведения.ПочтовыйИндекс КАК Индекс,
|
||||
| ДополнительныеСведения.ОКТМО КАК ОКТМО,
|
||||
| ДополнительныеСведения.ОКТМОБюджетополучателя КАК ОКТМОБюджетополучателя,
|
||||
| ДополнительныеСведения.OKATO КАК ОКАТО,
|
||||
@@ -4937,21 +4997,73 @@
|
||||
|ГДЕ
|
||||
| ДомаЗданияСтроения.АдресныйОбъект = &АдресныйОбъект";
|
||||
|
||||
Запрос.УстановитьПараметр("АдресныйОбъект", АдресныйОбъект);
|
||||
Запрос.УстановитьПараметр("АдресныйОбъект", ИдентификаторАдресногоОбъекта);
|
||||
РезультатЗапроса = Запрос.Выполнить().Выгрузить();
|
||||
|
||||
ОписаниеДома = НайтиСтрокуСДомом(РезультатЗапроса, СведенияОДоме);
|
||||
|
||||
Если ОписаниеДома <> Неопределено Тогда
|
||||
|
||||
Возврат ОписаниеДома;
|
||||
|
||||
Иначе
|
||||
// Коды с точностью до дома не найдены. Поэтому используем коды адресного объекта
|
||||
Коды = КодыПоИдентификаторуАдресногоОбъекта(ИдентификаторАдресногоОбъекта);
|
||||
Если Коды <> Неопределено Тогда
|
||||
Коды.Вставить("ИдентификаторДома", "");
|
||||
КонецЕсли;
|
||||
|
||||
КонецЕсли;
|
||||
|
||||
Возврат Коды;
|
||||
|
||||
КонецФункции
|
||||
|
||||
Функция КодыПоИдентификаторуАдресногоОбъектаЗемельныйУчасток(ИдентификаторАдресногоОбъекта, СведенияОЗемельномУчастке)
|
||||
|
||||
Запрос = Новый Запрос;
|
||||
Запрос.Текст =
|
||||
"ВЫБРАТЬ
|
||||
| ДополнительныеСведения.ПочтовыйИндекс КАК ПочтовыйИндекс,
|
||||
| ЗемельныеУчастки.Участки КАК Участки,
|
||||
| ДополнительныеСведения.ПочтовыйИндекс КАК Индекс,
|
||||
| ДополнительныеСведения.ОКТМО КАК ОКТМО,
|
||||
| ДополнительныеСведения.ОКТМОБюджетополучателя КАК ОКТМОБюджетополучателя,
|
||||
| ДополнительныеСведения.OKATO КАК ОКАТО,
|
||||
| ДополнительныеСведения.КодУчасткаИФНСЮЛ КАК КодУчасткаИФНСЮЛ,
|
||||
| ДополнительныеСведения.КодУчасткаИФНСФЛ КАК КодУчасткаИФНСФЛ,
|
||||
| ДополнительныеСведения.КодИФНСЮЛ КАК КодИФНСЮЛ,
|
||||
| ДополнительныеСведения.КодИФНСФЛ КАК КодИФНСФЛ
|
||||
|ИЗ
|
||||
| РегистрСведений.ЗемельныеУчастки КАК ЗемельныеУчастки
|
||||
| ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ДополнительныеАдресныеСведения КАК ДополнительныеСведения
|
||||
| ПО ЗемельныеУчастки.ДополнительныеАдресныеСведения = ДополнительныеСведения.Идентификатор
|
||||
|ГДЕ
|
||||
| ЗемельныеУчастки.АдресныйОбъект = &АдресныйОбъект";
|
||||
|
||||
Запрос.УстановитьПараметр("АдресныйОбъект", ИдентификаторАдресногоОбъекта);
|
||||
РезультатЗапроса = Запрос.Выполнить().Выгрузить();
|
||||
|
||||
ОписаниеУчастка = НайтиСтрокуСЗемельнымУчастком(РезультатЗапроса, СведенияОЗемельномУчастке);
|
||||
|
||||
Если ОписаниеУчастка <> Неопределено Тогда
|
||||
|
||||
Возврат ОписаниеУчастка;
|
||||
|
||||
Иначе
|
||||
// Коды с точностью до дома не найдены. Поэтому используем коды адресного объекта
|
||||
Коды = КодыПоИдентификаторуАдресногоОбъекта(ИдентификаторАдресногоОбъекта);
|
||||
Коды.Вставить("ИдентификаторУчастка", "");
|
||||
|
||||
КонецЕсли;
|
||||
|
||||
Возврат Коды;
|
||||
|
||||
КонецФункции
|
||||
|
||||
Функция КодыПоИдентификаторуАдресногоОбъекта(ИдентификаторАдресногоОбъекта)
|
||||
|
||||
Запрос = Новый Запрос;
|
||||
Запрос.Текст =
|
||||
"ВЫБРАТЬ
|
||||
| ДополнительныеСведения.ПочтовыйИндекс КАК Индекс,
|
||||
| ДополнительныеСведения.ОКТМО КАК ОКТМО,
|
||||
| ДополнительныеСведения.ОКТМОБюджетополучателя КАК ОКТМОБюджетополучателя,
|
||||
| ДополнительныеСведения.OKATO КАК ОКАТО,
|
||||
@@ -4966,17 +5078,14 @@
|
||||
|ГДЕ
|
||||
| АдресныеОбъекты.Идентификатор = &АдресныйОбъект";
|
||||
|
||||
Запрос.УстановитьПараметр("АдресныйОбъект", АдресныйОбъект);
|
||||
Запрос.УстановитьПараметр("АдресныйОбъект", ИдентификаторАдресногоОбъекта);
|
||||
|
||||
РезультатЗапроса = Запрос.Выполнить();
|
||||
|
||||
Коды = Неопределено;
|
||||
Если Не РезультатЗапроса.Пустой() Тогда
|
||||
|
||||
Результат = РезультатЗапроса.Выгрузить()[0];
|
||||
Коды = ОбщегоНазначения.СтрокаТаблицыЗначенийВСтруктуру(Результат);
|
||||
Коды.Вставить("ИдентификаторДома", "");
|
||||
|
||||
КонецЕсли;
|
||||
КонецЕсли;
|
||||
|
||||
Возврат Коды;
|
||||
@@ -5009,7 +5118,7 @@
|
||||
ДомВАдресе.НаименованиеДополнительногоДома2, ОписаниеДома.НаименованиеДополнительногоДома2) = 0 Тогда
|
||||
|
||||
ЗаполнитьЗначенияСвойств(ОписаниеДома, ИнформацияОДомах);
|
||||
ОписаниеДома.Индекс = ИнформацияОДомах.ПочтовыйИндекс;
|
||||
ОписаниеДома.Индекс = ИнформацияОДомах.Индекс;
|
||||
|
||||
Возврат ОписаниеДома;
|
||||
|
||||
@@ -6851,7 +6960,7 @@
|
||||
| ДомаЗданияСтроения.Строения КАК Строения,
|
||||
| Сведения.Идентификатор КАК Идентификатор,
|
||||
| Сведения.КодСубъектаРФ КАК КодСубъектаРФ,
|
||||
| Сведения.ПочтовыйИндекс КАК ПочтовыйИндекс,
|
||||
| Сведения.ПочтовыйИндекс КАК Индекс,
|
||||
| Сведения.ОКТМО КАК ОКТМО,
|
||||
| Сведения.OKATO КАК OKATO,
|
||||
| Сведения.КодУчасткаИФНСЮЛ КАК КодУчасткаИФНСЮЛ,
|
||||
@@ -6874,7 +6983,7 @@
|
||||
| ЗемельныеУчастки.Участки КАК Участки,
|
||||
| Сведения.Идентификатор КАК Идентификатор,
|
||||
| Сведения.КодСубъектаРФ КАК КодСубъектаРФ,
|
||||
| Сведения.ПочтовыйИндекс КАК ПочтовыйИндекс,
|
||||
| Сведения.ПочтовыйИндекс КАК Индекс,
|
||||
| Сведения.ОКТМО КАК ОКТМО,
|
||||
| Сведения.OKATO КАК OKATO,
|
||||
| Сведения.КодУчасткаИФНСЮЛ КАК КодУчасткаИФНСЮЛ,
|
||||
@@ -6893,7 +7002,6 @@
|
||||
|
||||
КонецФункции
|
||||
|
||||
|
||||
Процедура АктуализироватьДанныеОРегионе(Знач Адрес, Знач КодСубъектаРФ, Знач Результат)
|
||||
|
||||
Результат.АдресПроверен = Истина;
|
||||
@@ -7158,7 +7266,7 @@
|
||||
И СтрСравнить(ДомВАдресе.НаименованиеДополнительногоДома2,
|
||||
ОписаниеДома.НаименованиеДополнительногоДома2) = 0 Тогда
|
||||
ДомКорректный = Истина;
|
||||
ПочтовыйИндекс = ИнформацияОДомах.ПочтовыйИндекс;
|
||||
ПочтовыйИндекс = ИнформацияОДомах.Индекс;
|
||||
Прервать;
|
||||
Иначе
|
||||
|
||||
@@ -9035,9 +9143,13 @@
|
||||
Возврат Описание;
|
||||
КонецФункции
|
||||
|
||||
Процедура ОбработатьОбщепринятыеСокращенияИУдалитьТочкуВКонецТипа(АдресПоЧастям)
|
||||
Функция ОбработатьОбщепринятыеСокращенияИУдалитьТочкуВКонецТипа(ИсходнаяТаблица)
|
||||
|
||||
АдресПоЧастям = ИсходнаяТаблица.Скопировать();
|
||||
АдресПоЧастям.Колонки.Добавить("ТипОбъекта2", ОбщегоНазначения.ОписаниеТипаСтрока(128));
|
||||
|
||||
ОбщепринятыеСокращения = ОбщепринятыеСокращенияАдресныхЭлементовИОбъектов();
|
||||
ОбщепринятыеСокращенияЭлементов = ОбщепринятыеСокращенияАдресныхЭлементов();
|
||||
|
||||
Фильтр = Новый Структура("Уровень", 0);
|
||||
НераспознанныеСтроки = АдресПоЧастям.НайтиСтроки(Фильтр);
|
||||
@@ -9062,6 +9174,11 @@
|
||||
Продолжить;
|
||||
КонецЕсли;
|
||||
|
||||
Сокращение = ОбщепринятыеСокращенияЭлементов[ТипВРег];
|
||||
Если Сокращение <> Неопределено Тогда
|
||||
ЧастьАдреса.ТипОбъекта2 = Сокращение;
|
||||
КонецЕсли;
|
||||
|
||||
// Замена сокращения
|
||||
ПолноеИмя = ОбщепринятыеСокращения[ТипВРег];
|
||||
Если ПолноеИмя <> Неопределено Тогда
|
||||
@@ -9070,7 +9187,9 @@
|
||||
|
||||
КонецЦикла;
|
||||
|
||||
КонецПроцедуры
|
||||
Возврат АдресПоЧастям;
|
||||
|
||||
КонецФункции
|
||||
|
||||
Функция ОбщепринятыеСокращенияАдресныхЭлементовИОбъектов()
|
||||
|
||||
@@ -9096,6 +9215,19 @@
|
||||
|
||||
КонецФункции
|
||||
|
||||
Функция ОбщепринятыеСокращенияАдресныхЭлементов()
|
||||
|
||||
СтатическиеСокращения = Новый Соответствие;
|
||||
|
||||
СтатическиеСокращения = СокращенияАдресныхОбъектов();
|
||||
СтатическиеСокращения.Вставить("ЛИНИЯ", "Лн.");
|
||||
СтатическиеСокращения.Вставить("ПРОЕЗД", "пр-д");
|
||||
|
||||
Возврат СтатическиеСокращения;
|
||||
|
||||
КонецФункции
|
||||
|
||||
|
||||
Функция ПерваяБукваЗаглавная(Строка)
|
||||
Возврат ВРег(Лев(Строка, 1)) + Сред(НРег(Строка), 2); // Использовать ТРег нельзя.
|
||||
КонецФункции
|
||||
@@ -9949,7 +10081,7 @@
|
||||
//
|
||||
Функция ЗаполнитьКодыАдреса(Результат, ИдентификаторАдресногоОбъекта, СведенияОДоме)
|
||||
|
||||
Коды = КодыПоИдентификаторуАдресногоОбъекта(ИдентификаторАдресногоОбъекта, СведенияОДоме);
|
||||
Коды = КодыПоИдентификаторуАдресногоОбъектаДома(ИдентификаторАдресногоОбъекта, СведенияОДоме);
|
||||
Если Коды <> Неопределено Тогда
|
||||
ЗаполнитьЗначенияСвойств(Результат, Коды);
|
||||
|
||||
|
||||
@@ -692,41 +692,6 @@
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Возвращает токен доступа организации и срок его действия.
|
||||
//
|
||||
// Параметры:
|
||||
// Организация - ОпределяемыйТип.Организация - ссылка на организацию.
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Структура - содержит ключи:
|
||||
// * ТокенДоступа - Строка - токен доступа.
|
||||
// * СрокДействияТокенаДоступа - Дата - срок действия токена.
|
||||
//
|
||||
Функция ТокенДоступаОрганизации(Организация) Экспорт
|
||||
|
||||
Результат = Новый Структура;
|
||||
|
||||
Результат.Вставить("ТокенДоступа", "");
|
||||
Результат.Вставить("СрокДействияТокенаДоступа", Дата(1,1,1));
|
||||
|
||||
ИдентификаторОрганизации = ИдентификаторОрганизации(Организация);
|
||||
|
||||
Если Не ЗначениеЗаполнено(ИдентификаторОрганизации) Тогда
|
||||
Возврат Результат;
|
||||
КонецЕсли;
|
||||
|
||||
Отказ = Ложь;
|
||||
|
||||
КлючДоступа = КлючДоступаБизнесСети(ИдентификаторОрганизации, Ложь, Отказ);
|
||||
|
||||
Если Не Отказ Тогда
|
||||
ЗаполнитьЗначенияСвойств(Результат, КлючДоступа);
|
||||
КонецЕсли;
|
||||
|
||||
Возврат Результат;
|
||||
|
||||
КонецФункции
|
||||
|
||||
#Область ИдентификаторыКонтрагентов
|
||||
|
||||
// Обработчик регламентного задания ОбновлениеИдентификаторовКонтрагентовБизнесСети
|
||||
@@ -904,149 +869,13 @@
|
||||
|
||||
КонецФункции
|
||||
|
||||
Функция КонтрагентыПоИдентификаторам(Знач ИдентификаторыКонтрагентов) Экспорт
|
||||
|
||||
ИдентификаторыКонтрагентов = ОбщегоНазначенияКлиентСервер.СвернутьМассив(ИдентификаторыКонтрагентов);
|
||||
|
||||
Результат = Новый Структура;
|
||||
Результат.Вставить("Данные", НовыйДанныеКонтрагентовБизнесСети());
|
||||
Результат.Вставить("ЕстьОшибки", Ложь);
|
||||
Результат.Вставить("Ошибки", Новый Соответствие);
|
||||
|
||||
ДанныеКонтрагентов = Результат.Данные.СкопироватьКолонки();
|
||||
ДанныеКонтрагентов.Колонки.Добавить("КонтрагентНайден", Новый ОписаниеТипов("Булево"));
|
||||
ДанныеКонтрагентов.Индексы.Добавить("КонтрагентНайден");
|
||||
|
||||
Для Каждого Идентификатор Из ИдентификаторыКонтрагентов Цикл
|
||||
Если Не ЗначениеЗаполнено(Идентификатор) Тогда
|
||||
Продолжить;
|
||||
КонецЕсли;
|
||||
|
||||
НоваяСтрока = ДанныеКонтрагентов.Добавить();
|
||||
НоваяСтрока.Идентификатор = Идентификатор;
|
||||
НоваяСтрока.КонтрагентНайден = Ложь;
|
||||
КонецЦикла;
|
||||
|
||||
// Попытаемся найти контрагентов в локальном хранилище
|
||||
НайтиКонтрагентовПоИдентификаторамВКэшеБизнесСети(ДанныеКонтрагентов);
|
||||
|
||||
Результат.Данные = ДанныеКонтрагентов.Скопировать(
|
||||
ДанныеКонтрагентов.НайтиСтроки(Новый Структура("КонтрагентНайден", Истина)),
|
||||
"Контрагент, Идентификатор");
|
||||
|
||||
// Найденные идентификаторы обрабатывать больше не нужно.
|
||||
ДанныеКонтрагентов = ДанныеКонтрагентов.Скопировать(
|
||||
ДанныеКонтрагентов.НайтиСтроки(Новый Структура("КонтрагентНайден", Ложь)));
|
||||
|
||||
ТребуетсяЗапросКСервису = ДанныеКонтрагентов.Количество() > 0;
|
||||
Если Не ТребуетсяЗапросКСервису Тогда
|
||||
Возврат Результат;
|
||||
КонецЕсли;
|
||||
|
||||
// По идентификаторам получим в сервисе Бизнес Сеть натуральные ключи
|
||||
ДанныеКонтрагентов.Колонки.Добавить("ИНН", Новый ОписаниеТипов("Строка",,Новый КвалификаторыСтроки(12)));
|
||||
ДанныеКонтрагентов.Колонки.Добавить("КПП", Новый ОписаниеТипов("Строка",,Новый КвалификаторыСтроки(9)));
|
||||
ДанныеКонтрагентов.Колонки.Добавить("НатуральныеКлючиЗаполнены", Новый ОписаниеТипов("Булево"));
|
||||
|
||||
ДанныеКонтрагентов.ЗаполнитьЗначения(Ложь, "НатуральныеКлючиЗаполнены");
|
||||
|
||||
Идентификаторы = ДанныеКонтрагентов.ВыгрузитьКолонку("Идентификатор");
|
||||
|
||||
Отказ = Ложь;
|
||||
ДанныеСервиса = ДанныеОрганизацийПоИдентификаторам(Идентификаторы, Отказ);
|
||||
|
||||
Если Отказ Тогда
|
||||
Результат.ЕстьОшибки = Истина;
|
||||
|
||||
ТекстОшибки = НСтр("ru='Не удалось получить ИНН/КПП из сервиса.'");
|
||||
Для Каждого ДанныеКонтрагента Из ДанныеКонтрагентов Цикл
|
||||
Результат.Ошибки.Вставить(
|
||||
ДанныеКонтрагента.Идентификатор,
|
||||
НовыйОписаниеОшибкиПоискаКонтрагентов(ТипОшибкиСервисНеДоступен(), ТекстОшибки));
|
||||
КонецЦикла;
|
||||
|
||||
Возврат Результат;
|
||||
КонецЕсли;
|
||||
|
||||
Для Каждого ЗаписьСервиса Из ДанныеСервиса Цикл
|
||||
ДанныеКонтрагента = ДанныеКонтрагентов.Найти(ЗаписьСервиса.Идентификатор);
|
||||
Если ДанныеКонтрагента = Неопределено Или Не ЗначениеЗаполнено(ЗаписьСервиса.ИНН) Тогда
|
||||
Продолжить;
|
||||
КонецЕсли;
|
||||
|
||||
ЗаполнитьЗначенияСвойств(ДанныеКонтрагента, ЗаписьСервиса, "ИНН,КПП");
|
||||
ДанныеКонтрагента.НатуральныеКлючиЗаполнены = Истина;
|
||||
КонецЦикла;
|
||||
|
||||
// Если по идентификатору не удалось получить данные от сервиса - контрагент не зарегистрирован
|
||||
// или идентификатор не корректен.
|
||||
// Такие записи дальше не обрабатываем.
|
||||
ОшибочныеЗаписи = ДанныеКонтрагентов.НайтиСтроки(Новый Структура("НатуральныеКлючиЗаполнены", Ложь));
|
||||
Если ЗначениеЗаполнено(ОшибочныеЗаписи) Тогда
|
||||
Результат.ЕстьОшибки = Истина;
|
||||
ТекстОшибки = НСтр("ru='Идентификатор отсутствует в сервисе Бизнес Сеть.'");
|
||||
Для Каждого ДанныеКонтрагента Из ОшибочныеЗаписи Цикл
|
||||
Результат.Ошибки.Вставить(
|
||||
ДанныеКонтрагента.Идентификатор,
|
||||
НовыйОписаниеОшибкиПоискаКонтрагентов(ТипОшибкиОтсутствуетРегистрацияВБизнесСети(), ТекстОшибки));
|
||||
|
||||
ДанныеКонтрагентов.Удалить(ДанныеКонтрагента);
|
||||
КонецЦикла;
|
||||
КонецЕсли;
|
||||
|
||||
ДанныеКонтрагентов.Колонки.Удалить("НатуральныеКлючиЗаполнены");
|
||||
|
||||
Если ДанныеКонтрагентов.Количество() = 0 Тогда
|
||||
Возврат Результат;
|
||||
КонецЕсли;
|
||||
|
||||
// Ищем контрагентов в базе данных по кортежу ИНН + КПП
|
||||
НайтиКонтрагентовПоНатуральнымКлючам(ДанныеКонтрагентов);
|
||||
|
||||
НеНайденныеЗаписи = ДанныеКонтрагентов.НайтиСтроки(Новый Структура("КонтрагентНайден", Ложь));
|
||||
Если ЗначениеЗаполнено(НеНайденныеЗаписи) Тогда
|
||||
Результат.ЕстьОшибки = Истина;
|
||||
ШаблонТекстаОшибки =
|
||||
НСтр("ru='По %1, полученным от Бизнес Сети, не найдена запись в базе данных.'");
|
||||
|
||||
Для Каждого ДанныеКонтрагента Из НеНайденныеЗаписи Цикл
|
||||
ТекстОшибки = СтрШаблон(ШаблонТекстаОшибки, "ИНН: " + ДанныеКонтрагента.ИНН
|
||||
+ ?(Не ПустаяСтрока(ДанныеКонтрагента.КПП), " КПП:" + ДанныеКонтрагента.КПП, ""));
|
||||
|
||||
Результат.Ошибки.Вставить(
|
||||
ДанныеКонтрагента.Идентификатор,
|
||||
НовыйОписаниеОшибкиПоискаКонтрагентов(ТипОшибкиКонтрагентНеНайденВБазе(), ТекстОшибки));
|
||||
|
||||
ДанныеКонтрагентов.Удалить(ДанныеКонтрагента);
|
||||
КонецЦикла;
|
||||
КонецЕсли;
|
||||
|
||||
Для Каждого ДанныеКонтрагента Из ДанныеКонтрагентов Цикл
|
||||
ЗаполнитьЗначенияСвойств(Результат.Данные.Добавить(), ДанныеКонтрагента);
|
||||
КонецЦикла;
|
||||
|
||||
// Обновим кэш данных Бизнес Сети
|
||||
Отказ = Ложь;
|
||||
ТекстОшибки = "";
|
||||
РегистрыСведений.КонтрагентыБизнесСеть.ОбновитьКэшДанныхКонтрагентаБизнесСети(ДанныеКонтрагентов, Отказ, ТекстОшибки);
|
||||
|
||||
// С точки зрения поиска контрагентов это не ошибка.
|
||||
Если Отказ Тогда
|
||||
ОбщегоНазначенияБЭД.ЗаписатьВЖурналРегистрации(ТекстОшибки,
|
||||
ОбщегоНазначенияБЭДКлиентСервер.ПодсистемыБЭД().БизнесСеть);
|
||||
КонецЕсли;
|
||||
|
||||
Возврат Результат;
|
||||
|
||||
КонецФункции
|
||||
|
||||
Функция ТипОшибкиОтсутствуетРегистрацияВБизнесСети() Экспорт
|
||||
|
||||
Возврат "ОтсутствуетРегистрация"
|
||||
|
||||
КонецФункции
|
||||
|
||||
Функция ТипОшибкиСервисНеДоступен() Экспорт
|
||||
Функция ТипОшибкиСервисНеДоступен()
|
||||
|
||||
Возврат "СервисНеДоступен"
|
||||
|
||||
@@ -3299,7 +3128,7 @@
|
||||
// * Телефон - Строка, Неопределено -
|
||||
// * Сайт - Строка, Неопределено -
|
||||
// * Адрес - Строка, Неопределено -
|
||||
Функция ДанныеОрганизацииИзJSON(ДанныеСервиса) Экспорт
|
||||
Функция ДанныеОрганизацииИзJSON(ДанныеСервиса)
|
||||
|
||||
Результат = Новый Структура;
|
||||
|
||||
@@ -5252,112 +5081,6 @@
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура НайтиКонтрагентовПоИдентификаторамВКэшеБизнесСети(ДанныеКонтрагентов)
|
||||
|
||||
Запрос = Новый Запрос;
|
||||
Запрос.УстановитьПараметр("Данные", ДанныеКонтрагентов);
|
||||
Запрос.Текст =
|
||||
"ВЫБРАТЬ
|
||||
| Данные.Идентификатор КАК Идентификатор,
|
||||
| Данные.Контрагент КАК Контрагент
|
||||
|ПОМЕСТИТЬ Данные
|
||||
|ИЗ
|
||||
| &Данные КАК Данные
|
||||
|
|
||||
|ИНДЕКСИРОВАТЬ ПО
|
||||
| Идентификатор
|
||||
|;
|
||||
|
|
||||
|////////////////////////////////////////////////////////////////////////////////
|
||||
|ВЫБРАТЬ
|
||||
| КонтрагентыБизнесСеть.Контрагент КАК Контрагент,
|
||||
| Данные.Идентификатор КАК Идентификатор
|
||||
|ИЗ
|
||||
| Данные КАК Данные
|
||||
| ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.КонтрагентыБизнесСеть КАК КонтрагентыБизнесСеть
|
||||
| ПО (КонтрагентыБизнесСеть.Идентификатор = Данные.Идентификатор)";
|
||||
|
||||
Результат = Запрос.Выполнить();
|
||||
Если Результат.Пустой() Тогда
|
||||
Возврат;
|
||||
КонецЕсли;
|
||||
|
||||
ДанныеКэша = Результат.Выгрузить();
|
||||
ДанныеКэша.Индексы.Добавить("Идентификатор");
|
||||
|
||||
Для Каждого ДанныеКонтрагента Из ДанныеКонтрагентов Цикл
|
||||
ЗаписьКэша = ДанныеКэша.Найти(ДанныеКонтрагента.Идентификатор, "Идентификатор");
|
||||
Если ЗаписьКэша = Неопределено Или Не ЗначениеЗаполнено(ЗаписьКэша.Контрагент) Тогда
|
||||
Продолжить;
|
||||
КонецЕсли;
|
||||
|
||||
ДанныеКонтрагента.КонтрагентНайден = Истина;
|
||||
ДанныеКонтрагента.Контрагент = ЗаписьКэша.Контрагент;
|
||||
КонецЦикла;
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура НайтиКонтрагентовПоНатуральнымКлючам(ДанныеКонтрагентов)
|
||||
|
||||
Запрос = Новый Запрос;
|
||||
Запрос.УстановитьПараметр("Данные", ДанныеКонтрагентов);
|
||||
ТекстЗапроса =
|
||||
"ВЫБРАТЬ
|
||||
| Данные.Идентификатор КАК Идентификатор,
|
||||
| Данные.ИНН КАК ИНН,
|
||||
| Данные.КПП КАК КПП
|
||||
|ПОМЕСТИТЬ Данные
|
||||
|ИЗ
|
||||
| &Данные КАК Данные
|
||||
|
|
||||
|ИНДЕКСИРОВАТЬ ПО
|
||||
| ИНН,
|
||||
| КПП
|
||||
|;
|
||||
|
|
||||
|////////////////////////////////////////////////////////////////////////////////
|
||||
|ВЫБРАТЬ
|
||||
| Контрагенты.Ссылка КАК Контрагент,
|
||||
| Данные.ИНН КАК ИНН,
|
||||
| Данные.КПП КАК КПП,
|
||||
| Данные.Идентификатор КАК Идентификатор
|
||||
|ИЗ
|
||||
| Данные КАК Данные
|
||||
| ВНУТРЕННЕЕ СОЕДИНЕНИЕ &Контрагенты КАК Контрагенты
|
||||
| ПО (Контрагенты.ИНН = Данные.ИНН)
|
||||
| И (Контрагенты.КПП = Данные.КПП)
|
||||
|";
|
||||
|
||||
ИмяСправочникаКонтрагенты = ОбщегоНазначенияБЭД.ИмяПрикладногоСправочника("Контрагенты");
|
||||
РеквизитИНН = ОбщегоНазначенияБЭДПовтИсп.ИмяНаличиеОбъектаРеквизитаВПрикладномРешении("ИННКонтрагента");
|
||||
РеквизитКПП = ОбщегоНазначенияБЭДПовтИсп.ИмяНаличиеОбъектаРеквизитаВПрикладномРешении("КППКонтрагента");
|
||||
|
||||
ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&Контрагенты", "Справочник." + ИмяСправочникаКонтрагенты);
|
||||
ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "Контрагенты.ИНН", "Контрагенты." + РеквизитИНН);
|
||||
ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "Контрагенты.КПП", "Контрагенты." + РеквизитКПП);
|
||||
Запрос.Текст = ТекстЗапроса;
|
||||
|
||||
Результат = Запрос.Выполнить();
|
||||
Если Результат.Пустой() Тогда
|
||||
Возврат;
|
||||
КонецЕсли;
|
||||
|
||||
ДанныеИнформационнойБазы = Результат.Выгрузить();
|
||||
ДанныеИнформационнойБазы.Индексы.Добавить("Идентификатор");
|
||||
|
||||
Для Каждого ДанныеКонтрагента Из ДанныеКонтрагентов Цикл
|
||||
ЗаписьИнформационнойБазы = ДанныеИнформационнойБазы.Найти(ДанныеКонтрагента.Идентификатор, "Идентификатор");
|
||||
Если ЗаписьИнформационнойБазы = Неопределено
|
||||
Или Не ЗначениеЗаполнено(ЗаписьИнформационнойБазы.Контрагент) Тогда
|
||||
ДанныеКонтрагента.КонтрагентНайден = Ложь;
|
||||
Иначе
|
||||
ДанныеКонтрагента.КонтрагентНайден = Истина;
|
||||
ДанныеКонтрагента.Контрагент = ЗаписьИнформационнойБазы.Контрагент;
|
||||
КонецЕсли;
|
||||
КонецЦикла;
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура ЗаполнитьНатуральныеИдентификаторыКонтрагентов(ДанныеКонтрагентов)
|
||||
|
||||
Запрос = Новый Запрос;
|
||||
|
||||
@@ -147,8 +147,9 @@
|
||||
// Параметры:
|
||||
// Схема - СхемаКомпоновкиДанных - схема компоновки данных отчета.
|
||||
// КоличествоСтрокПараметров - Число - число по которому будем фиксировать шапку отчета.
|
||||
// ПараметрыОтчета - Структура - см. ПодготовитьПараметрыОтчета() в ФормаОтчета.
|
||||
//
|
||||
Процедура ВысотаВыводимыхПараметров(Схема, КоличествоСтрокПараметров) Экспорт
|
||||
Процедура ВысотаВыводимыхПараметров(Схема, КоличествоСтрокПараметров, ПараметрыОтчета = Неопределено) Экспорт
|
||||
КонецПроцедуры
|
||||
|
||||
// Вызывается в местах, где требуется получить полный список показателей отчета. Дополняет список показателями, существующими только в
|
||||
|
||||
@@ -36,13 +36,14 @@
|
||||
КонецЕсли;
|
||||
|
||||
НаименованиеЗадания = НСтр("ru = 'Получение визуализации электронного документа'");
|
||||
ВыполняемыйМетод = "ВизуализацияЭДОСлужебный.ПолучениеВизуализацииЭлектронныхДокументовЭДО";
|
||||
ПараметрыВыполнения = ДлительныеОперации.ПараметрыВыполненияПроцедуры();
|
||||
ПараметрыВыполнения.НаименованиеФоновогоЗадания = НаименованиеЗадания;
|
||||
ПараметрыВыполнения.КлючФоновогоЗадания = КлючФоновогоЗадания;
|
||||
ПараметрыВыполнения.ОжидатьЗавершение = 0;
|
||||
ПараметрыВыполнения.ЗапуститьВФоне = Истина;
|
||||
ДлительныеОперации.ВыполнитьПроцедуру(ПараметрыВыполнения, ВыполняемыйМетод);
|
||||
ДлительныеОперации.ВыполнитьПроцедуру(ПараметрыВыполнения,
|
||||
"ВизуализацияЭДОСлужебный.ПолучениеВизуализацииЭлектронныхДокументовЭДО");
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
// Получить визуализацию из кэша.
|
||||
@@ -142,7 +143,22 @@
|
||||
Возврат;
|
||||
КонецЕсли;
|
||||
ОсновнойФайл = ЭлектронныеДокументыЭДО.ОсновнойФайлИнформацииОтправителя(ДокументЭДО);
|
||||
Если Не ЗначениеЗаполнено(ОсновнойФайл) Тогда
|
||||
ТекстСообщения = НСтр("ru = 'Основной файл документа не доступен или удален.'");
|
||||
ЗаписатьОшибкуВЖурналРегистрации(ДокументЭДО, ТекстСообщения);
|
||||
Возврат;
|
||||
КонецЕсли;
|
||||
СвойстваОсновнойФайл = ОбщегоНазначения.ЗначенияРеквизитовОбъекта(ОсновнойФайл, "Расширение, Размер");
|
||||
Если СвойстваОсновнойФайл.Размер = Неопределено Тогда
|
||||
ТекстСообщения = НСтр("ru = 'Основной файл документа не доступен. Не удалось прочитать размер файла.'");
|
||||
ЗаписатьОшибкуВЖурналРегистрации(ДокументЭДО, ТекстСообщения);
|
||||
Возврат;
|
||||
КонецЕсли;
|
||||
Если Не ЗначениеЗаполнено(СвойстваОсновнойФайл.Расширение) Тогда
|
||||
ТекстСообщения = НСтр("ru = 'Расширение основного файла не заполнено.'");
|
||||
ЗаписатьОшибкуВЖурналРегистрации(ДокументЭДО, ТекстСообщения);
|
||||
Возврат;
|
||||
КонецЕсли;
|
||||
|
||||
ДопустимыйРазмерФайла = Интеграция1СШтампСлужебныйКлиентСервер.ДопустимыйРазмерИсходящегоТелаЗапроса();
|
||||
Если СвойстваОсновнойФайл.Размер > ДопустимыйРазмерФайла Тогда
|
||||
@@ -173,14 +189,8 @@
|
||||
ЗафиксироватьТранзакцию();
|
||||
Исключение
|
||||
ОтменитьТранзакцию();
|
||||
ТекстСообщения = НСтр("ru = 'Не удалось обновить кэш визуализации по причине:'")
|
||||
+ Символы.ПС + ОбработкаОшибок.ПодробноеПредставлениеОшибки(ИнформацияОбОшибке());
|
||||
ПараметрыЗаписи = ОбщегоНазначенияБЭД.НовыеПараметрыЗаписиВЖурналРегистрации();
|
||||
ПараметрыЗаписи.Данные = ДокументЭДО;
|
||||
ПараметрыЗаписи.ОбъектМетаданных = ДокументЭДО.Метаданные();
|
||||
ОбщегоНазначенияБЭД.ЗаписатьВЖурналРегистрации(ТекстСообщения,
|
||||
ОбщегоНазначенияБЭДКлиентСервер.ПодсистемыБЭД().ОбменСКонтрагентами,
|
||||
УровеньЖурналаРегистрации.Ошибка);
|
||||
ТекстСообщения = ОбработкаОшибок.ПодробноеПредставлениеОшибки(ИнформацияОбОшибке());
|
||||
ЗаписатьОшибкуВЖурналРегистрации(ДокументЭДО, ТекстСообщения);
|
||||
ВызватьИсключение;
|
||||
КонецПопытки;
|
||||
КонецЕсли;
|
||||
@@ -193,6 +203,8 @@
|
||||
ОбщегоНазначения.ПриНачалеВыполненияРегламентногоЗадания(
|
||||
Метаданные.РегламентныеЗадания.ПолучитьДанныеВизуализацииЭДО);
|
||||
|
||||
ОписаниеЗамера = ОбщегоНазначенияБЭД.НачатьЗамер("ПолучениеВизуализацииЭлектронныхДокументовЭДО");
|
||||
СчетчикДокументов = 0;
|
||||
Запрос = Новый Запрос;
|
||||
Запрос.Текст = "ВЫБРАТЬ ПЕРВЫЕ 100
|
||||
| ОчередьЗапросовВизуализации.ВладелецФайла КАК ДокументЭДО,
|
||||
@@ -234,11 +246,13 @@
|
||||
ПараметрыВыполнения.Вставить("ИмяФайла");
|
||||
ЗаполнитьЗначенияСвойств(ПараметрыВыполнения, Выборка);
|
||||
ОбновитьВизуализациюДокументаЭДОИзОчереди(ПараметрыВыполнения);
|
||||
СчетчикДокументов = СчетчикДокументов + 1;
|
||||
КонецЦикла;
|
||||
Запрос.УстановитьПараметр("ТекущаяУниверсальнаяДата", ТекущаяУниверсальнаяДата());
|
||||
Результат = Запрос.Выполнить();
|
||||
КонецЦикла;
|
||||
|
||||
ОбщегоНазначенияБЭД.ЗакончитьЗамер("ПолучениеВизуализацииЭлектронныхДокументовЭДО", ОписаниеЗамера,
|
||||
СчетчикДокументов);
|
||||
КонецПроцедуры
|
||||
|
||||
// Получение визуализации электронных документов ЭДО.
|
||||
@@ -246,7 +260,7 @@
|
||||
// Параметры:
|
||||
// ДокументЭДО - ОпределяемыйТип.ВладелецФайлаВизуализацииЭДО - Документ ЭДО
|
||||
Процедура ОбновитьКэшВизуализацииЭлектронногоДокументаЭДО(ДокументЭДО) Экспорт
|
||||
|
||||
ОписаниеЗамера = ОбщегоНазначенияБЭД.НачатьЗамер("ПолучениеВизуализацииЭлектронныхДокументовЭДО");
|
||||
Запрос = Новый Запрос;
|
||||
Запрос.Текст = "ВЫБРАТЬ ПЕРВЫЕ 1
|
||||
| &ЭлектронныйДокумент КАК ДокументЭДО,
|
||||
@@ -277,7 +291,7 @@
|
||||
ЗаполнитьЗначенияСвойств(ПараметрыВыполнения, Выборка);
|
||||
ОбновитьВизуализациюДокументаЭДОИзОчереди(ПараметрыВыполнения);
|
||||
КонецЕсли;
|
||||
|
||||
ОбщегоНазначенияБЭД.ЗакончитьЗамер("ПолучениеВизуализацииЭлектронныхДокументовЭДО", ОписаниеЗамера, 1);
|
||||
КонецПроцедуры
|
||||
|
||||
// Возвращает проштампованный файл.
|
||||
@@ -302,13 +316,16 @@
|
||||
Если Не ЗначениеЗаполнено(СообщениеЭДО) Тогда
|
||||
Возврат СтруктураВозврата;
|
||||
КонецЕсли;
|
||||
|
||||
ОписаниеЗамера = ОбщегоНазначенияБЭД.НачатьЗамер("ПолучениеВизуализацииPdfИзКэша.ФоновоеЗадание");
|
||||
ЭлектронныйДокумент = ОбщегоНазначения.ЗначениеРеквизитаОбъекта(СообщениеЭДО, "ЭлектронныйДокумент");
|
||||
НастройкиПредставления = ВизуализацияЭДО.НовыеНастройкиПредставления();
|
||||
КэшВизуализации = ПолучитьВизуализациюИзКэша(ЭлектронныйДокумент, НастройкиПредставления);
|
||||
ОбщегоНазначенияБЭД.ЗакончитьЗамер("ПолучениеВизуализацииPdfИзКэша.ФоновоеЗадание", ОписаниеЗамера);
|
||||
Если КэшВизуализации.ТребуетсяОбновить Тогда
|
||||
ОписаниеЗамера = ОбщегоНазначенияБЭД.НачатьЗамер("ОбновлениеКэшаPdf.ФоновоеЗадание");
|
||||
ОбновитьКэшВизуализации(ЭлектронныйДокумент);
|
||||
КэшВизуализации = ПолучитьВизуализациюИзКэша(ЭлектронныйДокумент, НастройкиПредставления);
|
||||
ОбщегоНазначенияБЭД.ЗакончитьЗамер("ОбновлениеКэшаPdf.ФоновоеЗадание", ОписаниеЗамера);
|
||||
КонецЕсли;
|
||||
СтруктураВозврата.Успех = КэшВизуализации.ПросмотрДоступен;
|
||||
СтруктураВозврата.ПредставлениеДокумента = КэшВизуализации.ПредставлениеДокумента;
|
||||
@@ -492,6 +509,7 @@
|
||||
// * ПодсказкаQRКода - Строка - текст подсказки QR кода.
|
||||
// * ПубличнаяСсылкаQRКода - Строка - текст публичной ссылки QR кода.
|
||||
// * Формат - Строка
|
||||
// * ВыводитьШтампыПодписей - Булево
|
||||
//
|
||||
Функция НовыеПараметрыВизуализацииДокумента() Экспорт
|
||||
|
||||
@@ -503,6 +521,7 @@
|
||||
ПараметрыВизуализацииДокумента.Вставить("ПодсказкаQRКода", "");
|
||||
ПараметрыВизуализацииДокумента.Вставить("ПубличнаяСсылкаQRКода", "");
|
||||
ПараметрыВизуализацииДокумента.Вставить("Формат", "");
|
||||
ПараметрыВизуализацииДокумента.Вставить("ВыводитьШтампыПодписей", Истина);
|
||||
|
||||
Возврат ПараметрыВизуализацииДокумента;
|
||||
|
||||
@@ -600,6 +619,10 @@
|
||||
НастройкиПредставления.ЕстьИдДокумента = ПараметрыВизуализации.ВыводитьШапкуСИдДокумента;
|
||||
НастройкиПредставления.ЕстьQRКод = ЗначениеЗаполнено(ПараметрыВизуализации.ПубличнаяСсылкаQRКода);
|
||||
|
||||
Если Не ПараметрыВизуализации.ВыводитьШтампыПодписей Тогда
|
||||
Возврат ВизуализацияДокументаБезШтампов(ДанныеДокумента, ПараметрыВизуализации, НастройкиПредставления);
|
||||
КонецЕсли;
|
||||
|
||||
КэшВизуализации = ПолучитьВизуализациюИзКэша(ДанныеДокумента.Ссылка, НастройкиПредставления);
|
||||
Если ТребуетсяОбновитьКэш Тогда
|
||||
КэшВизуализации.ТребуетсяОбновить = ТребуетсяОбновитьКэш;
|
||||
@@ -1273,8 +1296,11 @@
|
||||
ПараметрыДобавленияФайла.РасширениеБезТочки = РасширениеБезТочки;
|
||||
ПараметрыДобавленияФайла.Служебный = Истина;
|
||||
НоваяСсылкаНаФайл = Справочники.КэшВизуализацииДокументовЭДОПрисоединенныеФайлы.ПолучитьСсылку();
|
||||
КлючЗамера = "РаботаСФайлами.ДобавитьФайлЭДО";
|
||||
ОписаниеЗамера = ОбщегоНазначенияБЭД.НачатьЗамер(КлючЗамера);
|
||||
СвойстваВизуализации.ФайлВизуализации = РаботаСФайлами.ДобавитьФайл(ПараметрыДобавленияФайла,
|
||||
АдресФайлаВоВременномХранилище, , , НоваяСсылкаНаФайл);
|
||||
ОбщегоНазначенияБЭД.ЗакончитьЗамер(КлючЗамера, ОписаниеЗамера);
|
||||
КонецЕсли;
|
||||
УстановитьПривилегированныйРежим(Ложь);
|
||||
|
||||
@@ -2206,6 +2232,122 @@
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
#КонецОбласти
|
||||
// Готовит визуализацию документа без штампов и возвращает результат
|
||||
// Параметры:
|
||||
// ДанныеДокумента - См. НовыеСвойстваДокументаДляФормированияВизуализации
|
||||
// ПараметрыВизуализации - См. НовыеПараметрыВизуализацииДокумента
|
||||
// НастройкиПредставления - см. ВизуализацияЭДО.НовыеНастройкиПредставления
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// См. НовыйРезультатПредставленияДанныхСообщения
|
||||
Функция ВизуализацияДокументаБезШтампов(ДанныеДокумента, ПараметрыВизуализации, НастройкиПредставления)
|
||||
Результат = НовыйРезультатПредставленияДанныхСообщения();
|
||||
ДанныеДокументаДляПроверкиРаспознавания = НовыеДанныеДокументаДляПроверкиРаспознавания();
|
||||
ЗаполнитьЗначенияСвойств(ДанныеДокументаДляПроверкиРаспознавания.ПроверкаЗаписанногоДокумента, ДанныеДокумента);
|
||||
ДанныеДокументаДляПроверкиРаспознавания.ПроверкаЗаписанногоДокумента.ТипЭлементаРегламента =
|
||||
Перечисления.ТипыЭлементовРегламентаЭДО.ИнформацияОтправителя;
|
||||
|
||||
Если Не ДокументРаспознан(ДанныеДокументаДляПроверкиРаспознавания) Тогда
|
||||
Результат = ПредставлениеДанныхСообщенияПоФайлу(ДанныеДокумента.Ссылка);
|
||||
Если Не РаботаСФайламиБЭДКлиентСервер.ЭтоРасширениеФайлаPDF(Результат.РасширениеФайла)
|
||||
И ФайлПодходитДляОбработкиЧерезСервис1СШтамп(Результат.РасширениеФайла,
|
||||
Результат.РазмерФайла) Тогда
|
||||
|
||||
РезультатШтампования = ВизуализацияДокументаЭДОСПомощьюСервиса1СШтамп(
|
||||
Результат.ПредставлениеДокумента,
|
||||
Результат.РасширениеФайла,
|
||||
БиблиотекаКартинок.Пустая);
|
||||
|
||||
Если Не РезультатШтампования.ЕстьОшибки Тогда
|
||||
Результат.ПредставлениеДокумента = РезультатШтампования.ДвоичныеДанные;
|
||||
КонецЕсли;
|
||||
КонецЕсли;
|
||||
Возврат Результат;
|
||||
КонецЕсли;
|
||||
|
||||
ПараметрыПолученияПредставления = НовыеПараметрыПолученияПредставленияДанныхСообщенияПоСсылке();
|
||||
ПараметрыПолученияПредставления.ПараметрыВизуализации = ПараметрыВизуализации;
|
||||
|
||||
СвойстваСообщений = ЭлектронныеДокументыЭДОПовтИспНаВызов.СвойстваСообщенийПросмотраКарточкиДокумента(
|
||||
ДанныеДокумента.Ссылка);
|
||||
|
||||
Если ОбщегоНазначения.ПодсистемаСуществует("ЭлектронноеВзаимодействие.ОбменСГИСЭПД") Тогда
|
||||
МодульОбменСГИСЭПД = ОбщегоНазначения.ОбщийМодуль("ОбменСГИСЭПД");
|
||||
ПредставлениеДанных = МодульОбменСГИСЭПД.ПриВизуализацииДокумента(ПараметрыПолученияПредставления,
|
||||
СвойстваСообщений);
|
||||
Если ПредставлениеДанных <> Неопределено Тогда
|
||||
ЗаполнитьЗначенияСвойств(Результат, ПредставлениеДанных);
|
||||
Возврат Результат;
|
||||
КонецЕсли;
|
||||
КонецЕсли;
|
||||
|
||||
ВизуализацияСтроитсяПоОтветномуТитулу =
|
||||
ДляТипаДокументаВизуализацияСтроитсяПоОтветномуТитулу(ДанныеДокумента.ТипДокумента)
|
||||
И СвойстваСообщений.Количество() > 1;
|
||||
|
||||
Для Каждого СвойстваСообщения Из СвойстваСообщений Цикл
|
||||
|
||||
Если СвойстваСообщения.Статус = Перечисления.СтатусыСообщенийЭДО.НеСформирован Тогда
|
||||
Продолжить;
|
||||
КонецЕсли;
|
||||
|
||||
Если ВизуализацияСтроитсяПоОтветномуТитулу
|
||||
И СвойстваСообщения.ТипЭлементаРегламента =
|
||||
Перечисления.ТипыЭлементовРегламентаЭДО.ИнформацияОтправителя Тогда
|
||||
|
||||
ПараметрыПолученияПредставления.СообщениеЗапроса = СвойстваСообщения.Ссылка;
|
||||
|
||||
ИначеЕсли СвойстваСообщения.ТипЭлементаРегламента =
|
||||
Перечисления.ТипыЭлементовРегламентаЭДО.ИнформацияОтправителя Тогда
|
||||
|
||||
ПараметрыПолученияПредставления.Сообщение = СвойстваСообщения.Ссылка;
|
||||
|
||||
ИначеЕсли ВизуализацияСтроитсяПоОтветномуТитулу
|
||||
И СвойстваСообщения.ТипЭлементаРегламента =
|
||||
Перечисления.ТипыЭлементовРегламентаЭДО.ИнформацияПолучателя Тогда
|
||||
|
||||
ПараметрыПолученияПредставления.Сообщение = СвойстваСообщения.Ссылка;
|
||||
|
||||
Иначе
|
||||
|
||||
ПараметрыПолученияПредставления.СообщениеОтвета = СвойстваСообщения.Ссылка;
|
||||
|
||||
КонецЕсли;
|
||||
|
||||
КонецЦикла;
|
||||
ПараметрыПолученияПредставления.ВыводитьШтампыПодписей = Ложь;
|
||||
Результат = ПредставлениеДанныхСообщенияПоСсылке(ПараметрыПолученияПредставления);
|
||||
|
||||
Возврат Результат;
|
||||
КонецФункции
|
||||
|
||||
// Параметры:
|
||||
// ДокументЭДО - ОпределяемыйТип.ВладелецФайлаВизуализацииЭДО
|
||||
// ПричинаОшибки - Строка
|
||||
Процедура ЗаписатьОшибкуВЖурналРегистрации(ДокументЭДО, ПричинаОшибки)
|
||||
ТекстСообщения = СтрШаблон(НСтр("ru = 'Не удалось обновить кэш визуализации для документа %1 по причине:'")
|
||||
+ Символы.ПС + ПричинаОшибки,
|
||||
ДокументЭДО);
|
||||
|
||||
Если Не ТранзакцияАктивна() Тогда
|
||||
ПараметрыЗаписи = ОбщегоНазначенияБЭД.НовыеПараметрыЗаписиВЖурналРегистрации();
|
||||
ПараметрыЗаписи.Данные = ДокументЭДО;
|
||||
ПараметрыЗаписи.ОбъектМетаданных = ДокументЭДО.Метаданные();
|
||||
Иначе
|
||||
ПараметрыЗаписи = Неопределено;
|
||||
КонецЕсли;
|
||||
ОбщегоНазначенияБЭД.ЗаписатьВЖурналРегистрации(ТекстСообщения,
|
||||
ОбщегоНазначенияБЭДКлиентСервер.ПодсистемыБЭД().ОбменСКонтрагентами,
|
||||
УровеньЖурналаРегистрации.Ошибка, ПараметрыЗаписи);
|
||||
КонецПроцедуры
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
// См. СтандартныеПодсистемыСервер.ПриОпределенииМетодовРазрешенныхДляВызоваКакПроизвольныйКод
|
||||
Процедура ПриОпределенииМетодовРазрешенныхДляВызоваКакПроизвольныйКод(Методы) Экспорт
|
||||
|
||||
Методы.Вставить("ПолучениеВизуализацииЭлектронныхДокументовЭДО", Истина);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
#КонецОбласти
|
||||
@@ -1456,6 +1456,7 @@
|
||||
| Товары.ТипНоменклатуры КАК ТипНоменклатуры,
|
||||
| ЕСТЬNULL(ВтПодакцизныеТовары.ПодакцизныйТовар, ЛОЖЬ) КАК ПодакцизныйТовар,
|
||||
| Товары.ОсобенностьУчета КАК ОсобенностьУчета,
|
||||
| ЕСТЬNULL(ОписаниеНоменклатурыИС.КлючВидовПродукции, ЗНАЧЕНИЕ(Справочник.КлючиВидовПродукцииИС.ПустаяСсылка)) КАК ВидПродукцииИС,
|
||||
| Товары.НоменклатураНаименование КАК НоменклатураНаименование,
|
||||
| Товары.ХарактеристикаНаименование КАК ХарактеристикаНаименование,
|
||||
| Товары.УпаковкаНаименование КАК УпаковкаНаименование,
|
||||
@@ -1484,6 +1485,8 @@
|
||||
| И (ШтрихкодыНоменклатуры.Упаковка = Товары.Упаковка)
|
||||
| ЛЕВОЕ СОЕДИНЕНИЕ ВтПодакцизныеТовары КАК ВтПодакцизныеТовары
|
||||
| ПО Товары.Номенклатура = ВтПодакцизныеТовары.Номенклатура
|
||||
| ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ОписаниеНоменклатурыИС КАК ОписаниеНоменклатурыИС
|
||||
| ПО Товары.Номенклатура = ОписаниеНоменклатурыИС.Номенклатура
|
||||
|;
|
||||
|
|
||||
|////////////////////////////////////////////////////////////////////////////////
|
||||
@@ -1511,6 +1514,7 @@
|
||||
| Товары.Упаковка,
|
||||
| Товары.БазоваяУпаковка,
|
||||
| Товары.ОсобенностьУчета,
|
||||
| Товары.ВидПродукцииИС КАК ВидПродукцииИС,
|
||||
| Товары.Номенклатура,
|
||||
| Товары.НоменклатураНаименование,
|
||||
| Товары.Характеристика КАК Характеристика,
|
||||
|
||||
@@ -700,4 +700,11 @@
|
||||
|
||||
КонецФункции
|
||||
|
||||
// См. СтандартныеПодсистемыСервер.ПриОпределенииМетодовРазрешенныхДляВызоваКакПроизвольныйКод
|
||||
Процедура ПриОпределенииМетодовРазрешенныхДляВызоваКакПроизвольныйКод(Методы) Экспорт
|
||||
|
||||
Методы.Вставить("ПоместитьОшибкиВыгружаемыхДанныхВоВременноеХранилище", Истина);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
#КонецОбласти
|
||||
@@ -1507,7 +1507,7 @@
|
||||
Для НомерПотока = 1 По ПараметрыПотоков.КоличествоПотоков Цикл
|
||||
|
||||
Задание = ФоновыеЗадания.Выполнить(
|
||||
ИмяМетодаВыгрузкиЗагрузкиДанныхВПотоке(),
|
||||
"ВыгрузкаЗагрузкаДанныхСлужебный.ВыгрузкаЗагрузкаДанныхИнформационнойБазыВПотоке",
|
||||
ПараметрыЗадания,
|
||||
КлючЗаданияВыгрузкиЗагрузкиДанных(Контейнер),
|
||||
НаименованиеЗадания);
|
||||
@@ -1859,10 +1859,8 @@
|
||||
ПараметрыЗадания.Добавить(ПараметрыЗагрузки);
|
||||
ПараметрыЗадания.Добавить(АдресРезультата);
|
||||
|
||||
ИмяМетода = "ВыгрузкаЗагрузкаДанныхСлужебный.НачатьЗагрузкуДанныхТекущейОбластиИзАрхива";
|
||||
|
||||
Задание = ТехнологияСервиса.ВыполнитьЗаданиеСРасширениями(
|
||||
ИмяМетода,
|
||||
Задание = РасширенияКонфигурации.ВыполнитьФоновоеЗаданиеСРасширениямиБазыДанных(
|
||||
"ВыгрузкаЗагрузкаДанныхСлужебный.НачатьЗагрузкуДанныхТекущейОбластиИзАрхива",
|
||||
ПараметрыЗадания,
|
||||
Новый УникальныйИдентификатор,
|
||||
НСтр("ru = 'Восстановление области данных из архива'"))
|
||||
@@ -2093,6 +2091,11 @@
|
||||
УровеньЖурналаРегистрации.Предупреждение,,,
|
||||
ТекстПредупреждения);
|
||||
|
||||
Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.УправлениеДоступом") Тогда
|
||||
МодульУправлениеДоступом = ОбщегоНазначения.ОбщийМодуль("УправлениеДоступом");
|
||||
МодульУправлениеДоступом.ОтключитьОбновлениеКлючейДоступа(Истина, Ложь);
|
||||
КонецЕсли;
|
||||
|
||||
ВыборкаОбъектов.Сбросить();
|
||||
|
||||
Пока ВыборкаОбъектов.Следующий() Цикл
|
||||
@@ -3119,4 +3122,12 @@
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
// См. СтандартныеПодсистемыСервер.ПриОпределенииМетодовРазрешенныхДляВызоваКакПроизвольныйКод
|
||||
Процедура ПриОпределенииМетодовРазрешенныхДляВызоваКакПроизвольныйКод(Методы) Экспорт
|
||||
|
||||
Методы.Вставить("ВыгрузкаЗагрузкаДанныхИнформационнойБазыВПотоке", Истина);
|
||||
Методы.Вставить("НачатьЗагрузкуДанныхТекущейОбластиИзАрхива", Истина);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
@@ -596,14 +596,6 @@
|
||||
Возврат;
|
||||
КонецЕсли;
|
||||
|
||||
Если ОбщегоНазначенияБТС.ЭтоСсылочныеДанныеПоддерживающиеПредопределенныеЭлементы(ОбъектМетаданных) Тогда
|
||||
Если ПроверяемаяСсылка.Предопределенный Тогда
|
||||
// Сопоставление ссылок на предопределенные элементы выполняется отдельным механизмом
|
||||
// (см. общий модуль ВыгрузкаЗагрузкаПредопределенныхДанных).
|
||||
Возврат;
|
||||
КонецЕсли;
|
||||
КонецЕсли;
|
||||
|
||||
Если ОбъектМетаданныхРазделенХотьОднимРазделителем(ОбъектМетаданных, Контейнер.ДополнительныеСвойства.ЛокальныйКэшСоставовРазделителей) Тогда
|
||||
// Разделенные данные будут загружены с сохранением оригинальных уникальных идентификаторов (для объектов,
|
||||
// разделенных разделителями с типом разделения "Независимо и совместно" все ссылки будут сгенерированы заново).
|
||||
@@ -622,6 +614,14 @@
|
||||
Возврат;
|
||||
КонецЕсли;
|
||||
|
||||
Если ОбщегоНазначенияБТС.ЭтоСсылочныеДанныеПоддерживающиеПредопределенныеЭлементы(ОбъектМетаданных) Тогда
|
||||
Если ОбщегоНазначения.ЗначениеРеквизитаОбъекта(ПроверяемаяСсылка, "Предопределенный") Тогда //@skip-check bsl-legacy-check-string-literal
|
||||
// Сопоставление ссылок на предопределенные элементы выполняется отдельным механизмом
|
||||
// (см. общий модуль ВыгрузкаЗагрузкаПредопределенныхДанных).
|
||||
Возврат;
|
||||
КонецЕсли;
|
||||
КонецЕсли;
|
||||
|
||||
ШаблонОшибки =
|
||||
НСтр("ru = 'Объект метаданных %1 включен в перечень объектов, для которых не требуется сопоставление ссылок при выгрузке / загрузке
|
||||
|данных (в переопределяемой процедуре
|
||||
|
||||
+12
-5
@@ -132,21 +132,28 @@
|
||||
// Контейнер - ОбработкаОбъект.ВыгрузкаЗагрузкаДанныхМенеджерКонтейнера - менеджер контейнера.
|
||||
Процедура ПередЗагрузкойДанных(Контейнер) Экспорт
|
||||
|
||||
Если Не ОбщегоНазначения.РазделениеВключено() Тогда
|
||||
Если ОбщегоНазначения.РазделениеВключено() Тогда
|
||||
Возврат;
|
||||
КонецЕсли;
|
||||
|
||||
ИмяФайла = Контейнер.ПолучитьПроизвольныйФайл(ТипДанныхДляТаблицыДополнительноВыгружаемыхДанных());
|
||||
ИменаДополнительноЗагружаемых = ВыгрузкаЗагрузкаДанных.ПрочитатьОбъектИзФайла(ИмяФайла);
|
||||
УдалитьФайлы(ИмяФайла);
|
||||
|
||||
ПараметрыЗагрузки = Новый Структура(Контейнер.ПараметрыЗагрузки()); // см. ВыгрузкаЗагрузкаДанных.ЗагрузитьДанныеТекущейОбластиИзАрхива.ПараметрыЗагрузки
|
||||
Если Не ЗначениеЗаполнено(ИменаДополнительноЗагружаемых) Тогда
|
||||
Возврат;
|
||||
КонецЕсли;
|
||||
|
||||
ДополнительноЗагружаемыеТипы = Новый Массив();
|
||||
|
||||
Для Каждого ИмяДополнительноЗагружаемогоОбъекта Из ИменаДополнительноЗагружаемых Цикл
|
||||
ПараметрыЗагрузки.ЗагружаемыеТипы.Добавить(Метаданные.НайтиПоПолномуИмени(ИмяДополнительноЗагружаемогоОбъекта));
|
||||
ДополнительноЗагружаемыеТипы.Добавить(Метаданные.НайтиПоПолномуИмени(ИмяДополнительноЗагружаемогоОбъекта));
|
||||
КонецЦикла;
|
||||
|
||||
Контейнер.УстановитьПараметрыЗагрузки(ПараметрыЗагрузки);
|
||||
ПараметрыЗагрузки = Новый Структура(Контейнер.ПараметрыЗагрузки()); // см. ВыгрузкаЗагрузкаДанных.ЗагрузитьДанныеТекущейОбластиИзАрхива.ПараметрыЗагрузки
|
||||
ОбщегоНазначенияКлиентСервер.ДополнитьМассив(ПараметрыЗагрузки.ЗагружаемыеТипы, ДополнительноЗагружаемыеТипы, Истина);
|
||||
|
||||
КонецЕсли;
|
||||
Контейнер.УстановитьПараметрыЗагрузки(ПараметрыЗагрузки);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
|
||||
@@ -326,6 +326,8 @@
|
||||
|
||||
РезультатЗагрузкиДифференциальногоАрхива.Удалить("СоответствиеСсылок");
|
||||
|
||||
ПоместитьРезультатЗагрузкиВоВременноеХранилище(ПараметрыЗагрузки, РезультатЗагрузкиДифференциальногоАрхива);
|
||||
|
||||
Возврат РезультатЗагрузкиДифференциальногоАрхива;
|
||||
|
||||
КонецФункции
|
||||
@@ -682,4 +684,12 @@
|
||||
ПоместитьВоВременноеХранилище(РезультатЗагрузки, АдресХранилищаРезультата);
|
||||
КонецПроцедуры
|
||||
|
||||
// См. СтандартныеПодсистемыСервер.ПриОпределенииМетодовРазрешенныхДляВызоваКакПроизвольныйКод
|
||||
Процедура ПриОпределенииМетодовРазрешенныхДляВызоваКакПроизвольныйКод(Методы) Экспорт
|
||||
|
||||
Методы.Вставить("ВыгрузитьТекущуюОбластьВАрхив", Истина);
|
||||
Методы.Вставить("ЗагрузитьОбластьИзАрхива", Истина);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
#КонецОбласти
|
||||
@@ -144,7 +144,7 @@
|
||||
|ГДЕ
|
||||
| ТИПЗНАЧЕНИЯ(ТаблицаИзменения.Узел) В (&ТипыВыгружаемыхПлановОбмена)");
|
||||
|
||||
Запрос.Текст = СтрЗаменить(Запрос.Текст, "#ТаблицаИзменения", ОбъектМетаданных.ПолноеИмя() + ".Изменения");
|
||||
Запрос.Текст = СтрЗаменить(Запрос.Текст, "#ТаблицаИзменения", СтрЗаменить(ОбъектМетаданных.ПолноеИмя(), ".Перерасчет.", ".") + ".Изменения");
|
||||
Запрос.УстановитьПараметр("ТипыВыгружаемыхПлановОбмена", ТипыВыгружаемыхПлановОбмена);
|
||||
|
||||
РезультатЗапроса = Запрос.Выполнить();
|
||||
|
||||
@@ -42,6 +42,12 @@
|
||||
"Дата",
|
||||
"Закупки",
|
||||
"Организация");
|
||||
|
||||
ДатыЗапретаИзменения.ДобавитьСтроку(ИсточникиДанных,
|
||||
Метаданные.Документы.ДокументОПредстоящейПоставке.ПолноеИмя(),
|
||||
"Дата",
|
||||
"Закупки",
|
||||
"Организация");
|
||||
#КонецОбласти
|
||||
|
||||
|
||||
|
||||
@@ -2095,6 +2095,11 @@
|
||||
Функция ОшибкиЗаполненияРеквизитовПлательщикаПолучателя(ЭтоПлательщик, ДокументОбъект, РеквизитыСтороны, ВыводитьСообщение, Отказ = Ложь) Экспорт
|
||||
|
||||
ОшибкиЗаполнения = Новый Массив;
|
||||
|
||||
Если Не ЗначениеЗаполнено(РеквизитыСтороны.Объект) Тогда
|
||||
Возврат ОшибкиЗаполнения;
|
||||
КонецЕсли;
|
||||
|
||||
ИНН = СокрЛП(РеквизитыСтороны.ИНН);
|
||||
КПП = СокрЛП(РеквизитыСтороны.КПП);
|
||||
|
||||
|
||||
@@ -192,7 +192,7 @@
|
||||
//
|
||||
// Параметры:
|
||||
// Дерево - ДеревоЗначений - дерево данных, в котором необходимо сохранить данные
|
||||
// Коллекция - Структура, Выборка, СтрокаТаблицыЗначений - коллекция для сохранения в дереве
|
||||
// Коллекция - Структура, ВыборкаИзРезультатаЗапроса, СтрокаТаблицыЗначений - коллекция для сохранения в дереве
|
||||
// НазваниеТаблицы - Строка - название таблицы в дереве.
|
||||
//
|
||||
Процедура ДобавитьЗаписьВТаблицуДерева(Дерево, Коллекция, НазваниеТаблицы) Экспорт
|
||||
|
||||
@@ -1930,4 +1930,11 @@
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
// См. СтандартныеПодсистемыСервер.ПриОпределенииМетодовРазрешенныхДляВызоваКакПроизвольныйКод
|
||||
Процедура ПриОпределенииМетодовРазрешенныхДляВызоваКакПроизвольныйКод(Методы) Экспорт
|
||||
|
||||
Методы.Вставить("ВыполнитьДиагностику", Истина);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
#КонецОбласти
|
||||
@@ -1662,8 +1662,7 @@
|
||||
|
||||
КраткоеПредставлениеОшибки = ОбработкаОшибок.КраткоеПредставлениеОшибки(Результат.ИнформацияОбОшибке);
|
||||
// АПК:1405-выкл - требуется для быстрого определения причины ошибки
|
||||
СтрокаПоиска = НСтр("ru = 'Задание с таким значением ключа уже выполняется';
|
||||
|en = 'A job with the same key value is performed already'");
|
||||
СтрокаПоиска = НСтр("ru = 'Задание с таким значением ключа уже выполняется'");
|
||||
// АПК:1405-вкл
|
||||
Если ЗначениеЗаполнено(СтрокаПоиска) И СтрНачинаетсяС(КраткоеПредставлениеОшибки, СтрокаПоиска) Тогда
|
||||
Возврат Истина;
|
||||
|
||||
@@ -88,15 +88,7 @@
|
||||
Процедура ПроверитьЗаполнениеДанныхДоставки(Настройки, МассивНепроверяемыхРеквизитов, Отказ) Экспорт
|
||||
|
||||
Если ДоставкаТоваровКлиентСервер.ИспользуетсяДоставка20() Тогда
|
||||
|
||||
ПроверитьЗаполнениеРеквизитовДоставки(
|
||||
Настройки.ДокументОбъект,
|
||||
МассивНепроверяемыхРеквизитов,
|
||||
Отказ,
|
||||
Настройки.НакладнаяПоЗаказам);
|
||||
|
||||
Возврат;
|
||||
|
||||
КонецЕсли;
|
||||
|
||||
// Для совместимости с Доставка 2.0 требуется сохранить платформенную проверку,
|
||||
@@ -9270,11 +9262,11 @@
|
||||
ШаблонЗапроса =
|
||||
"ВЫБРАТЬ
|
||||
| ИСТИНА КАК ДополненнаяСтрока,
|
||||
| НедостающиеПлечиТ2.Регистратор КАК Регистратор,
|
||||
| Т2.Регистратор КАК Регистратор,
|
||||
| 0 КАК НомерСтроки,
|
||||
| НедостающиеПлечиТ2.Период КАК Период,
|
||||
| НедостающиеПлечиТ2.Организация КАК Организация,
|
||||
| НедостающиеПлечиТ2.ТипДоставки КАК ТипДоставки,
|
||||
| Т2.Период КАК Период,
|
||||
| Т2.Организация КАК Организация,
|
||||
| Т2.ТипДоставки КАК ТипДоставки,
|
||||
| ДАТАВРЕМЯ(1, 1, 1) КАК ДатаОтгрузки,
|
||||
| ЗНАЧЕНИЕ(Перечисление.СпособыДоставки25.ПустаяСсылка) КАК СпособДоставки,
|
||||
| ЗНАЧЕНИЕ(Справочник.Склады.ПустаяСсылка) КАК Отправитель,
|
||||
@@ -9283,31 +9275,30 @@
|
||||
| ЗНАЧЕНИЕ(Справочник.Партнеры.ПустаяСсылка) КАК Получатель,
|
||||
| ЗНАЧЕНИЕ(Справочник.ТочкиДоставки.ПустаяСсылка) КАК ТочкаПолучателя,
|
||||
| ЗНАЧЕНИЕ(Справочник.ЗоныДоставки.ПустаяСсылка) КАК ЗонаПолучателя,
|
||||
| НедостающиеПлечиТ2.Распоряжение КАК Распоряжение,
|
||||
| НедостающиеПлечиТ2.Номенклатура КАК Номенклатура,
|
||||
| НедостающиеПлечиТ2.Характеристика КАК Характеристика,
|
||||
| НедостающиеПлечиТ2.Серия КАК Серия,
|
||||
| НедостающиеПлечиТ2.КодСтроки КАК КодСтроки,
|
||||
| НедостающиеПлечиТ2.Плечо КАК Плечо,
|
||||
| Т2.Распоряжение КАК Распоряжение,
|
||||
| Т2.Номенклатура КАК Номенклатура,
|
||||
| Т2.Характеристика КАК Характеристика,
|
||||
| Т2.Серия КАК Серия,
|
||||
| Т2.КодСтроки КАК КодСтроки,
|
||||
| ПлечиТ1.Плечо КАК Плечо,
|
||||
| ЗНАЧЕНИЕ(Справочник.Партнеры.ПустаяСсылка) КАК Перевозчик,
|
||||
| ЗНАЧЕНИЕ(Справочник.УпаковкиЕдиницыИзмерения.ПустаяСсылка) КАК Упаковка,
|
||||
| НедостающиеПлечиТ2.УровеньОперации КАК УровеньОперации,
|
||||
| НедостающиеПлечиТ2.ДокументПланирования КАК ДокументПланирования,
|
||||
| Т2.УровеньОперации КАК УровеньОперации,
|
||||
| Т2.ДокументПланирования КАК ДокументПланирования,
|
||||
| ЛОЖЬ КАК ЭтоКонечноеПлечо,
|
||||
| 0 КАК НомерМинимальногоПлеча,
|
||||
| НедостающиеПлечиТ2.Количество КАК Количество
|
||||
| Т2.Количество КАК Количество
|
||||
|ДОБАВИТЬ ТаблицаНазначение
|
||||
|ИЗ
|
||||
| &ТаблицаНедостающиеПлечиТ2 КАК НедостающиеПлечиТ2
|
||||
| ЛЕВОЕ СОЕДИНЕНИЕ &ТаблицаИсточникТ2 КАК Т2
|
||||
| ПО НедостающиеПлечиТ2.Распоряжение = Т2.Распоряжение
|
||||
| И НедостающиеПлечиТ2.КодСтроки = Т2.КодСтроки
|
||||
| И НедостающиеПлечиТ2.ДокументПланирования = Т2.ДокументПланирования
|
||||
| И НедостающиеПлечиТ2.Регистратор = Т2.Регистратор
|
||||
| И НедостающиеПлечиТ2.Плечо = Т2.Плечо
|
||||
| &ТаблицаИсточникТ2 КАК Т2
|
||||
| ВНУТРЕННЕЕ СОЕДИНЕНИЕ &ТаблицаНедостающиеПлечиТ2 КАК ПлечиТ1
|
||||
| ПО Т2.Распоряжение = ПлечиТ1.Распоряжение
|
||||
| И Т2.КодСтроки = ПлечиТ1.КодСтроки
|
||||
| И Т2.ДокументПланирования = ПлечиТ1.ДокументПланирования
|
||||
| И Т2.Плечо < ПлечиТ1.Плечо
|
||||
| И Т2.ЭтоКонечноеПлечо
|
||||
|ГДЕ
|
||||
| Т2.Плечо ЕСТЬ NULL
|
||||
| И &ВыражениеОтбор";
|
||||
| &ВыражениеОтбор";
|
||||
|
||||
Возврат ШаблонЗапроса;
|
||||
|
||||
@@ -9318,7 +9309,7 @@
|
||||
ТекстЗапроса = ШаблонЗапросаДополнениеПлечТ2();
|
||||
|
||||
ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&ТаблицаИсточникТ2", "ВТТекущийУровеньТ2");
|
||||
ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&ТаблицаНедостающиеПлечиТ2", "ВТНедостающиеПлечиТекущегоУровняТ2");
|
||||
ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&ТаблицаНедостающиеПлечиТ2", "ВТПлечиПредыдущегоУровняТ1");
|
||||
ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "ДОБАВИТЬ ТаблицаНазначение", "ДОБАВИТЬ ВТТекущийУровеньТ2"); // @Query-part-1, @Query-part-2
|
||||
|
||||
ТекстЗапроса = СтрЗаменить(
|
||||
@@ -9386,7 +9377,7 @@
|
||||
ТекстЗапроса = ШаблонЗапросаДополнениеПлечТ2();
|
||||
|
||||
ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&ТаблицаИсточникТ2", "ВТПредыдущийУровеньТ1");
|
||||
ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&ТаблицаНедостающиеПлечиТ2", "ВТНедостающиеПлечиПредыдущегоУровняТ1");
|
||||
ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&ТаблицаНедостающиеПлечиТ2", "ВТПлечиТекущегоУровняТ2");
|
||||
ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "ДОБАВИТЬ ТаблицаНазначение", "ДОБАВИТЬ ВТПредыдущийУровеньТ1"); // @Query-part-1, @Query-part-2
|
||||
|
||||
ТекстЗапроса = СтрЗаменить(
|
||||
@@ -9826,7 +9817,7 @@
|
||||
ТекстЗапроса = ШаблонЗапросаДополнениеПлечТ2();
|
||||
|
||||
ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&ТаблицаИсточникТ2", "ВТСледующийУровеньТ2");
|
||||
ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&ТаблицаНедостающиеПлечиТ2", "ВТНедостающиеПлечиСледующегоУровняТ2");
|
||||
ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&ТаблицаНедостающиеПлечиТ2", "ВТПлечиТекущегоУровняТ1");
|
||||
ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "ДОБАВИТЬ ТаблицаНазначение", "ДОБАВИТЬ ВТСледующийУровеньТ2"); // @Query-part-1, @Query-part-2
|
||||
|
||||
ТекстЗапроса = СтрЗаменить(
|
||||
@@ -9929,7 +9920,7 @@
|
||||
ТекстЗапроса = ШаблонЗапросаДополнениеПлечТ2();
|
||||
|
||||
ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&ТаблицаИсточникТ2", "ВТТекущийУровеньТ1");
|
||||
ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&ТаблицаНедостающиеПлечиТ2", "ВТНедостающиеПлечиТекущегоУровняТ1");
|
||||
ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&ТаблицаНедостающиеПлечиТ2", "ВТПлечиСледующегоУровняТ2");
|
||||
ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "ДОБАВИТЬ ТаблицаНазначение", "ДОБАВИТЬ ВТТекущийУровеньТ1"); // @Query-part-1, @Query-part-2
|
||||
|
||||
ТекстЗапроса = СтрЗаменить(
|
||||
|
||||
@@ -3844,6 +3844,7 @@
|
||||
|УчетНДСЛокализация.СоздатьЭлементыСтавкиНДС
|
||||
|РегистрыСведений.ОчередьПереоформленияРасходныхОрдеров.ОбработатьДанныеДляПереходаНаНовуюВерсию
|
||||
|Справочники.НомераГТД.ОбработатьДанныеДляПереходаНаНовуюВерсию
|
||||
|РегистрыСведений.РаспоряженияНаОтгрузкуИВозвратКВыполнению.ОбработатьДанныеДляПереходаНаНовуюВерсию
|
||||
|";
|
||||
|
||||
ЗакрытиеМесяцаЛокализация.ОбработчикиОбновленияНеВлияющиеНаЗакрытиеМесяца(Обработчики);
|
||||
|
||||
@@ -9369,7 +9369,7 @@
|
||||
| И &ПроверкаНаПустоеЗначениеВСоглашении // Значение в соглашении заполнено
|
||||
| И &ПроверкаНаПустоеЗначениеВДокументе // Значение в документе заполнено
|
||||
| И СоглашениеСПоставщиком.ИмяРеквизита <> ДокументЗакупки.ИмяРеквизита КАК ИмяПоляЕстьОшибки,
|
||||
| ПРЕДСТАВЛЕНИЕ(СоглашениеСПоставщиком.ИмяРеквизита) КАК ИмяРеквизитаСоглашение,
|
||||
| ПРЕДСТАВЛЕНИЕ(СоглашениеСПоставщиком.ИмяРеквизита) КАК ПсевдонимРеквизитаСоглашения,
|
||||
| ПРЕДСТАВЛЕНИЕ(ДокументЗакупки.ИмяРеквизита) КАК ИмяРеквизита"; // @query-part
|
||||
|
||||
ЗаменяемаяСтрока = "&ПроверкаНаПустоеЗначениеВСоглашении";
|
||||
@@ -9396,6 +9396,10 @@
|
||||
ТекстУсловия = СтрЗаменить(ТекстУсловия, "ДокументЗакупки", "ВременнаяТаблицаТовары");
|
||||
КонецЕсли;
|
||||
|
||||
ТекстУсловия = СтрЗаменить(ТекстУсловия,
|
||||
"ПсевдонимРеквизитаСоглашения",
|
||||
ОписаниеПроверки.ПсевдонимРеквизитаСоглашения);
|
||||
|
||||
ТекстУсловия = СтрЗаменить(ТекстУсловия, "ИмяПоляЕстьОшибки", ОписаниеПроверки.ИмяПоляЕстьОшибки);
|
||||
ТекстУсловия = СтрЗаменить(ТекстУсловия, "ИмяРеквизита", ИмяРеквизита);
|
||||
|
||||
@@ -9468,7 +9472,7 @@
|
||||
| ЛОЖЬ
|
||||
| КОНЕЦ КАК ЕстьОшибкиЗаполненияХозяйственнаяОперация,
|
||||
| ПРЕДСТАВЛЕНИЕ(ДокументЗакупки.ХозяйственнаяОперация) КАК ХозяйственнаяОперация,
|
||||
| ПРЕДСТАВЛЕНИЕ(СоглашениеСПоставщиком.ХозяйственнаяОперация) КАК ХозяйственнаяОперацияСоглашение"); // @query-part
|
||||
| ПРЕДСТАВЛЕНИЕ(СоглашениеСПоставщиком.ХозяйственнаяОперация) КАК ХозяйственнаяОперацияСоглашения"); // @query-part
|
||||
|
||||
КонецЕсли;
|
||||
#КонецОбласти
|
||||
@@ -9481,9 +9485,9 @@
|
||||
"СоглашениеСПоставщиком.Склад ЕСТЬ НЕ NULL
|
||||
| И СоглашениеСПоставщиком.Склад <> ЗНАЧЕНИЕ(Справочник.Склады.ПустаяСсылка)
|
||||
| И СкладыКорректныеПоСоглашению.Склад ЕСТЬ NULL КАК ЕстьОшибкиЗаполненияСклад,
|
||||
| ЕСТЬNULL(СоглашениеСПоставщиком.Склад.ЭтоГруппа, ЛОЖЬ) КАК СкладСоглашениеЕстьГруппа,
|
||||
| ЕСТЬNULL(СоглашениеСПоставщиком.Склад.ЭтоГруппа, ЛОЖЬ) КАК СкладСоглашенияЕстьГруппа,
|
||||
| ПРЕДСТАВЛЕНИЕ(ДокументЗакупки.Склад) КАК Склад,
|
||||
| ПРЕДСТАВЛЕНИЕ(СоглашениеСПоставщиком.Склад) КАК СкладСоглашение"); // @query-part
|
||||
| ПРЕДСТАВЛЕНИЕ(СоглашениеСПоставщиком.Склад) КАК СкладСоглашения"); // @query-part
|
||||
ИначеЕсли ИмяТаблицы = "Документ.ЗаявкаНаЗакупку" Тогда
|
||||
// Проверка склада в ТЧ по соглашению в ТЧ:
|
||||
ВыбираемыеПоля.Добавить(
|
||||
@@ -9491,10 +9495,10 @@
|
||||
| И СоглашениеСПоставщиком.Склад ЕСТЬ НЕ NULL
|
||||
| И СоглашениеСПоставщиком.Склад <> ЗНАЧЕНИЕ(Справочник.Склады.ПустаяСсылка)
|
||||
| И СкладыКорректныеПоСоглашениям.Склад ЕСТЬ NULL КАК ЕстьОшибкиЗаполненияСклад,
|
||||
| ЕСТЬNULL(СоглашениеСПоставщиком.Склад.ЭтоГруппа, ЛОЖЬ) КАК СкладСоглашениеЕстьГруппа,
|
||||
| ЕСТЬNULL(СоглашениеСПоставщиком.Склад.ЭтоГруппа, ЛОЖЬ) КАК СкладСоглашенияЕстьГруппа,
|
||||
| ЕСТЬNULL(ДокументЗакупки.Склад.ЭтоГруппа, ЛОЖЬ) КАК СкладВШапкеГруппа,
|
||||
| ПРЕДСТАВЛЕНИЕ(ВременнаяТаблицаТовары.Склад) КАК Склад,
|
||||
| ПРЕДСТАВЛЕНИЕ(СоглашениеСПоставщиком.Склад) КАК СкладСоглашение"); // @query-part
|
||||
| ПРЕДСТАВЛЕНИЕ(СоглашениеСПоставщиком.Склад) КАК СкладСоглашения"); // @query-part
|
||||
|
||||
ПроверятьСкладПоСоглашениюВТабличнойЧасти = Истина;
|
||||
КонецЕсли;
|
||||
@@ -9514,7 +9518,7 @@
|
||||
| КОГДА СоглашениеСПоставщиком.ИспользуютсяДоговорыКонтрагентов
|
||||
| ТОГДА ДокументЗакупки.Договор.ПорядокРасчетов
|
||||
| ИНАЧЕ СоглашениеСПоставщиком.ПорядокРасчетов
|
||||
| КОНЕЦ) КАК ПорядокРасчетовСоглашение,
|
||||
| КОНЕЦ) КАК ПорядокРасчетовСоглашения,
|
||||
| СоглашениеСПоставщиком.ИспользуютсяДоговорыКонтрагентов КАК ИспользуютсяДоговорыКонтрагентов"); // @query-part
|
||||
#КонецОбласти
|
||||
КонецЕсли;
|
||||
@@ -9529,7 +9533,7 @@
|
||||
| И ДокументЗакупки.ХозяйственнаяОперация <> ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПриемНаХранениеСПравомПродажи)
|
||||
| КАК ЕстьОшибкиЗаполненияВалютаВзаиморасчетов,
|
||||
| ПРЕДСТАВЛЕНИЕ(ДокументЗакупки.ВалютаВзаиморасчетов) КАК ВалютаВзаиморасчетов,
|
||||
| ПРЕДСТАВЛЕНИЕ(СоглашениеСПоставщиком.Валюта) КАК ВалютаВзаиморасчетовСоглашение"); // @query-part
|
||||
| ПРЕДСТАВЛЕНИЕ(СоглашениеСПоставщиком.Валюта) КАК ВалютаВзаиморасчетовСоглашения"); // @query-part
|
||||
#КонецОбласти
|
||||
КонецЕсли;
|
||||
|
||||
@@ -9738,6 +9742,7 @@
|
||||
// Возвращаемое значение:
|
||||
// ТаблицаЗначений:
|
||||
// * ИмяРеквизита - Строка - Имя реквизита документа и соглашения.
|
||||
// * ПсевдонимРеквизитаСоглашения - Строка - Псевдоним для поля запроса, содержащего представление реквизита соглашения.
|
||||
// * ИмяПоляЕстьОшибки - Строка - Псевдоним для поля запроса, содержащего флаг (булево) наличия найденных в проверке ошибок.
|
||||
// * ПредставлениеРеквизита - Строка - Представление имени реквизита для вывода в отчет.
|
||||
// * ПустоеЗначениеВЗапросе - Строка - Если не пустая, то проверка реквизита выполняется только при
|
||||
@@ -9768,6 +9773,7 @@
|
||||
|
||||
ВозвращаемоеЗначение = Новый ТаблицаЗначений;
|
||||
ВозвращаемоеЗначение.Колонки.Добавить("ИмяРеквизита", ОписаниеТипаСтрока150);
|
||||
ВозвращаемоеЗначение.Колонки.Добавить("ПсевдонимРеквизитаСоглашения", ОписаниеТипаСтрока150);
|
||||
ВозвращаемоеЗначение.Колонки.Добавить("ИмяПоляЕстьОшибки", ОписаниеТипаСтрока150);
|
||||
ВозвращаемоеЗначение.Колонки.Добавить("ПредставлениеРеквизита", ОписаниеТипаСтрока150);
|
||||
ВозвращаемоеЗначение.Колонки.Добавить("ПустоеЗначениеВЗапросе", ОписаниеТипаСтрока150);
|
||||
@@ -9785,6 +9791,7 @@
|
||||
|
||||
ОписаниеПроверки = НовоеОписаниеПроверкиСоответствияЗначенияСоглашению(ВозвращаемоеЗначение,
|
||||
"ХозяйственнаяОперация",
|
||||
"ХозяйственнаяОперацияСоглашения",
|
||||
"ЕстьОшибкиЗаполненияХозяйственнаяОперация",
|
||||
НСтр("ru = 'Операция'"));
|
||||
ОписаниеПроверки.ПереопределенРасчетУсловий = Истина;
|
||||
@@ -9798,6 +9805,7 @@
|
||||
|
||||
ОписаниеПроверки = НовоеОписаниеПроверкиСоответствияЗначенияСоглашению(ВозвращаемоеЗначение,
|
||||
"ВалютаВзаиморасчетов",
|
||||
"ВалютаВзаиморасчетовСоглашения",
|
||||
"ЕстьОшибкиЗаполненияВалютаВзаиморасчетов",
|
||||
НСтр("ru = 'Валюта взаиморасчетов'"));
|
||||
ОписаниеПроверки.ПереопределенРасчетУсловий = Истина;
|
||||
@@ -9811,6 +9819,7 @@
|
||||
|
||||
ОписаниеПроверки = НовоеОписаниеПроверкиСоответствияЗначенияСоглашению(ВозвращаемоеЗначение,
|
||||
"Партнер",
|
||||
"ПартнерСоглашения",
|
||||
"ЕстьОшибкиЗаполненияПартнер",
|
||||
НСтр("ru = 'Партнер'"),
|
||||
"ЗНАЧЕНИЕ(Справочник.Партнеры.ПустаяСсылка)");
|
||||
@@ -9825,6 +9834,7 @@
|
||||
|
||||
ОписаниеПроверки = НовоеОписаниеПроверкиСоответствияЗначенияСоглашению(ВозвращаемоеЗначение,
|
||||
"Контрагент",
|
||||
"КонтрагентСоглашения",
|
||||
"ЕстьОшибкиЗаполненияКонтрагент",
|
||||
НСтр("ru = 'Контрагент'"),
|
||||
"ЗНАЧЕНИЕ(Справочник.Контрагенты.ПустаяСсылка)");
|
||||
@@ -9839,6 +9849,7 @@
|
||||
|
||||
ОписаниеПроверки = НовоеОписаниеПроверкиСоответствияЗначенияСоглашению(ВозвращаемоеЗначение,
|
||||
"Организация",
|
||||
"ОрганизацияСоглашения",
|
||||
"ЕстьОшибкиЗаполненияОрганизация",
|
||||
НСтр("ru = 'Организация'"),
|
||||
"ЗНАЧЕНИЕ(Справочник.Организации.ПустаяСсылка)");
|
||||
@@ -9853,6 +9864,7 @@
|
||||
|
||||
ОписаниеПроверки = НовоеОписаниеПроверкиСоответствияЗначенияСоглашению(ВозвращаемоеЗначение,
|
||||
"Валюта",
|
||||
"ВалютаСоглашения",
|
||||
"ЕстьОшибкиЗаполненияВалюта",
|
||||
НСтр("ru = 'Валюта'"));
|
||||
ОписаниеПроверки.ШаблонОшибкиВШапке = НСтр("ru = 'Валюта не должна отличаться от значения в соглашении ""%ЗначениеРеквизитаСоглашения%""'");
|
||||
@@ -9865,6 +9877,7 @@
|
||||
|
||||
ОписаниеПроверки = НовоеОписаниеПроверкиСоответствияЗначенияСоглашению(ВозвращаемоеЗначение,
|
||||
"ФормаОплаты",
|
||||
"ФормаОплатыСоглашения",
|
||||
"ЕстьОшибкиЗаполненияФормаОплаты",
|
||||
НСтр("ru = 'Форма оплаты'"),
|
||||
"ЗНАЧЕНИЕ(Перечисление.ФормыОплаты.ПустаяСсылка)");
|
||||
@@ -9878,6 +9891,7 @@
|
||||
|
||||
ОписаниеПроверки = НовоеОписаниеПроверкиСоответствияЗначенияСоглашению(ВозвращаемоеЗначение,
|
||||
"ЦенаВключаетНДС",
|
||||
"ЦенаВключаетНДССоглашения",
|
||||
"ЕстьОшибкиЗаполненияЦенаВключаетНДС",
|
||||
НСтр("ru = 'Признак ""Цена включает НДС""'"));
|
||||
ОписаниеПроверки.ШаблонОшибкиВШапке = НСтр("ru = 'Признак ""Цена включает НДС"" не должен отличаться от значения в соглашении ""%ЗначениеРеквизитаСоглашения%""'");
|
||||
@@ -9890,6 +9904,7 @@
|
||||
|
||||
ОписаниеПроверки = НовоеОписаниеПроверкиСоответствияЗначенияСоглашению(ВозвращаемоеЗначение,
|
||||
"ВидЦеныПоставщика",
|
||||
"ВидЦеныПоставщикаСоглашения",
|
||||
"ЕстьОшибкиЗаполненияВидЦеныПоставщика",
|
||||
НСтр("ru = 'Вид цен поставщика'"),
|
||||
"ЗНАЧЕНИЕ(Справочник.ВидыЦенПоставщиков.ПустаяСсылка)");
|
||||
@@ -9905,11 +9920,14 @@
|
||||
|
||||
КонецФункции
|
||||
|
||||
Функция НовоеОписаниеПроверкиСоответствияЗначенияСоглашению(ОписаниеПроверок, ИмяРеквизита, ИмяПоляЕстьОшибки, ПредставлениеРеквизита, ПустоеЗначениеВЗапросе = "")
|
||||
Функция НовоеОписаниеПроверкиСоответствияЗначенияСоглашению(ОписаниеПроверок, ИмяРеквизита, ПсевдонимРеквизитаСоглашения,
|
||||
ИмяПоляЕстьОшибки,
|
||||
ПредставлениеРеквизита, ПустоеЗначениеВЗапросе = "")
|
||||
|
||||
ОписаниеПроверки = ОписаниеПроверок.Добавить();
|
||||
|
||||
ОписаниеПроверки.ИмяРеквизита = ИмяРеквизита;
|
||||
ОписаниеПроверки.ПсевдонимРеквизитаСоглашения = ПсевдонимРеквизитаСоглашения;
|
||||
ОписаниеПроверки.ИмяПоляЕстьОшибки = ИмяПоляЕстьОшибки;
|
||||
ОписаниеПроверки.ПредставлениеРеквизита = ПредставлениеРеквизита;
|
||||
ОписаниеПроверки.ПустоеЗначениеВЗапросе = ПустоеЗначениеВЗапросе;
|
||||
@@ -10809,7 +10827,7 @@
|
||||
|
||||
ТекстОшибки = СтрЗаменить(ТекстОшибки,
|
||||
"%ЗначениеРеквизитаСоглашения%",
|
||||
Выборка[ОписаниеПроверки.ИмяРеквизита + "Соглашение"]);
|
||||
Выборка[ОписаниеПроверки.ПсевдонимРеквизитаСоглашения]);
|
||||
|
||||
ТекстОшибки = СтрЗаменить(ТекстОшибки,
|
||||
"%ИмяТабличнойЧасти%",
|
||||
@@ -10843,10 +10861,10 @@
|
||||
|
||||
Если ЭтоЗаявкаНаЗакупку Тогда
|
||||
|
||||
Если Выборка.СкладСоглашениеЕстьГруппа Тогда
|
||||
ТекстОшибки = НСтр("ru = 'Группа складов соглашения ""%СкладСоглашение%"" не содержит склад-получатель ""%Склад%""%АдресОшибки%'");
|
||||
Если Выборка.СкладСоглашенияЕстьГруппа Тогда
|
||||
ТекстОшибки = НСтр("ru = 'Группа складов соглашения ""%СкладСоглашения%"" не содержит склад-получатель ""%Склад%""%АдресОшибки%'");
|
||||
Иначе
|
||||
ТекстОшибки = НСтр("ru = 'Склад соглашения ""%СкладСоглашение%"" не должен отличаться от значения в документе ""%Склад%""%АдресОшибки%'");
|
||||
ТекстОшибки = НСтр("ru = 'Склад соглашения ""%СкладСоглашения%"" не должен отличаться от значения в документе ""%Склад%""%АдресОшибки%'");
|
||||
КонецЕсли;
|
||||
|
||||
ТекстОшибки = СтрЗаменить(ТекстОшибки,
|
||||
@@ -10854,20 +10872,20 @@
|
||||
?(ВыводитьВОтчет, "", АдресОшибки));
|
||||
|
||||
ИначеЕсли НЕ ВыводитьВОтчет Тогда
|
||||
Если Выборка.СкладСоглашениеЕстьГруппа Тогда
|
||||
ТекстОшибки = НСтр("ru = 'Склад должен входить в группу складов ""%СкладСоглашение%""'");
|
||||
Если Выборка.СкладСоглашенияЕстьГруппа Тогда
|
||||
ТекстОшибки = НСтр("ru = 'Склад должен входить в группу складов ""%СкладСоглашения%""'");
|
||||
Иначе
|
||||
ТекстОшибки = НСтр("ru = 'Склад не должен отличаться от значения в соглашении ""%СкладСоглашение%""'");
|
||||
ТекстОшибки = НСтр("ru = 'Склад не должен отличаться от значения в соглашении ""%СкладСоглашения%""'");
|
||||
КонецЕсли;
|
||||
Иначе
|
||||
Если Выборка.СкладСоглашениеЕстьГруппа Тогда
|
||||
ТекстОшибки = НСтр("ru = '""%Склад%"" должен входить в группу складов соглашения ""%СкладСоглашение%""'");
|
||||
Если Выборка.СкладСоглашенияЕстьГруппа Тогда
|
||||
ТекстОшибки = НСтр("ru = '""%Склад%"" должен входить в группу складов соглашения ""%СкладСоглашения%""'");
|
||||
Иначе
|
||||
ТекстОшибки = НСтр("ru = '""%Склад%"" отличается от склада в соглашении ""%СкладСоглашение%""'");
|
||||
ТекстОшибки = НСтр("ru = '""%Склад%"" отличается от склада в соглашении ""%СкладСоглашения%""'");
|
||||
КонецЕсли;
|
||||
КонецЕсли;
|
||||
|
||||
ТекстОшибки = СтрЗаменить(ТекстОшибки, "%СкладСоглашение%", Выборка.СкладСоглашение);
|
||||
ТекстОшибки = СтрЗаменить(ТекстОшибки, "%СкладСоглашения%", Выборка.СкладСоглашения);
|
||||
ТекстОшибки = СтрЗаменить(ТекстОшибки, "%Склад%", Выборка.Склад);
|
||||
|
||||
СообщитьОбОшибкеВУсловииЗакупки(ПараметрыВыводаОшибок,
|
||||
@@ -10968,7 +10986,7 @@
|
||||
Если НаличиеПроверок.ЕстьОшибкиЗаполненияПорядокРасчетов И Выборка.ЕстьОшибкиЗаполненияПорядокРасчетов Тогда
|
||||
Если Выборка.ИспользуютсяДоговорыКонтрагентов Тогда
|
||||
ТекстОшибки = НСтр("ru = 'Порядок расчетов не должен отличаться от значения в договоре ""%ПорядокРасчетов%""'");
|
||||
ТекстОшибки = СтрЗаменить(ТекстОшибки, "%ПорядокРасчетов%", Выборка.ПорядокРасчетовСоглашение);
|
||||
ТекстОшибки = СтрЗаменить(ТекстОшибки, "%ПорядокРасчетов%", Выборка.ПорядокРасчетовСоглашения);
|
||||
Если НЕ ВыводитьВОтчет Тогда
|
||||
ОбщегоНазначенияКлиентСервер.СообщитьПользователю(
|
||||
ТекстОшибки,
|
||||
@@ -10985,7 +11003,7 @@
|
||||
Иначе
|
||||
ТекстОшибки = НСтр("ru = 'Порядок расчетов не должен отличаться от значения в соглашении ""%ПорядокРасчетов%""'");
|
||||
КонецЕсли;
|
||||
ТекстОшибки = СтрЗаменить(ТекстОшибки, "%ПорядокРасчетов%", Выборка.ПорядокРасчетовСоглашение);
|
||||
ТекстОшибки = СтрЗаменить(ТекстОшибки, "%ПорядокРасчетов%", Выборка.ПорядокРасчетовСоглашения);
|
||||
|
||||
Если НЕ ВыводитьВОтчет Тогда
|
||||
ОбщегоНазначенияКлиентСервер.СообщитьПользователю(
|
||||
|
||||
@@ -17797,6 +17797,28 @@
|
||||
|;
|
||||
|
|
||||
|////////////////////////////////////////////////////////////////////////////////
|
||||
|ВЫБРАТЬ
|
||||
| ТаблицаТоваров.ДокументПоступления КАК ДокументПоступления,
|
||||
| ТаблицаТоваров.Номенклатура КАК Номенклатура,
|
||||
| ТаблицаТоваров.Характеристика КАК Характеристика,
|
||||
| ТаблицаТоваров.Назначение КАК Назначение,
|
||||
| ТаблицаТоваров.Серия КАК Серия,
|
||||
| ТаблицаТоваров.СтатусУказанияСерий КАК СтатусУказанияСерий,
|
||||
| СУММА(ТаблицаТоваров.Количество) КАК Количество
|
||||
|ПОМЕСТИТЬ ВтТаблицаТоваровВозврат
|
||||
|ИЗ
|
||||
| ТаблицаТоваров КАК ТаблицаТоваров
|
||||
|
|
||||
|СГРУППИРОВАТЬ ПО
|
||||
| ТаблицаТоваров.ДокументПоступления,
|
||||
| ТаблицаТоваров.Номенклатура,
|
||||
| ТаблицаТоваров.Характеристика,
|
||||
| ТаблицаТоваров.Назначение,
|
||||
| ТаблицаТоваров.Серия,
|
||||
| ТаблицаТоваров.СтатусУказанияСерий
|
||||
|;
|
||||
|
|
||||
|////////////////////////////////////////////////////////////////////////////////
|
||||
|ВЫБРАТЬ РАЗЛИЧНЫЕ
|
||||
| ТаблицаТоваров.ДокументПоступления КАК ДокументПоступления,
|
||||
| АналитикиУчета.КлючАналитики КАК АналитикаУчетаНоменклатуры,
|
||||
@@ -18382,6 +18404,7 @@
|
||||
| ПринятыеТовары.НомерГТД КАК НомерГТД,
|
||||
| СУММА(ПринятыеТовары.Количество) КАК КоличествоОстаток,
|
||||
| СУММА(ПринятыеТовары.КоличествоПоРНПТ) КАК КоличествоПоРНПТОстаток
|
||||
| ПОМЕСТИТЬ ВтПринятыеТовары
|
||||
|ИЗ
|
||||
| ПринятыеТовары КАК ПринятыеТовары
|
||||
| ЛЕВОЕ СОЕДИНЕНИЕ ТаблицаДанныхДокумента КАК ДанныеДокумента
|
||||
@@ -18434,6 +18457,39 @@
|
||||
|
|
||||
|////////////////////////////////////////////////////////////////////////////////
|
||||
|ВЫБРАТЬ РАЗЛИЧНЫЕ
|
||||
| ПринятыеТовары.Организация КАК Организация,
|
||||
| ПринятыеТовары.ДокументПоступления КАК ДокументПоступления,
|
||||
| ПринятыеТовары.ВидЗапасов КАК ВидЗапасов,
|
||||
| ПринятыеТовары.Номенклатура КАК Номенклатура,
|
||||
| ПринятыеТовары.Характеристика КАК Характеристика,
|
||||
| ПринятыеТовары.Серия КАК Серия,
|
||||
| ПринятыеТовары.Назначение КАК Назначение,
|
||||
| ПринятыеТовары.НомерГТД КАК НомерГТД,
|
||||
| ВЫБОР
|
||||
| КОГДА ПринятыеТовары.КоличествоОстаток > ТаблицаТоваровВозврат.Количество
|
||||
| ТОГДА ТаблицаТоваровВозврат.Количество
|
||||
| ИНАЧЕ ПринятыеТовары.КоличествоОстаток
|
||||
| КОНЕЦ КАК КоличествоОстаток,
|
||||
| ВЫБОР
|
||||
| КОГДА ПринятыеТовары.КоличествоОстаток > ТаблицаТоваровВозврат.Количество
|
||||
| ТОГДА (ПринятыеТовары.КоличествоПоРНПТОстаток / ПринятыеТовары.КоличествоОстаток) * ТаблицаТоваровВозврат.Количество
|
||||
| ИНАЧЕ ПринятыеТовары.КоличествоПоРНПТОстаток
|
||||
| КОНЕЦ КАК КоличествоПоРНПТОстаток
|
||||
|
|
||||
|ИЗ
|
||||
| ВТПринятыеТовары КАК ПринятыеТовары
|
||||
|
|
||||
| ВНУТРЕННЕЕ СОЕДИНЕНИЕ ВтТаблицаТоваровВозврат КАК ТаблицаТоваровВозврат
|
||||
| ПО ТаблицаТоваровВозврат.Номенклатура = ПринятыеТовары.Номенклатура
|
||||
| И ТаблицаТоваровВозврат.Характеристика = ПринятыеТовары.Характеристика
|
||||
| И (ТаблицаТоваровВозврат.Серия = ПринятыеТовары.Серия
|
||||
| ИЛИ ТаблицаТоваровВозврат.СтатусУказанияСерий <> 14)
|
||||
| И ТаблицаТоваровВозврат.Назначение = ПринятыеТовары.Назначение
|
||||
| И ТаблицаТоваровВозврат.ДокументПоступления = ПринятыеТовары.ДокументПоступления
|
||||
|;
|
||||
|
|
||||
|////////////////////////////////////////////////////////////////////////////////
|
||||
|ВЫБРАТЬ РАЗЛИЧНЫЕ
|
||||
| ДанныеДокумента.Организация КАК Организация,
|
||||
| ТаблицаТоваров.АналитикаУчетаНоменклатуры КАК АналитикаУчетаНоменклатуры
|
||||
|ПОМЕСТИТЬ ВтТаблицаТоваровПоАналитики
|
||||
|
||||
@@ -167,10 +167,7 @@
|
||||
Иначе
|
||||
|
||||
ДенежныеСредстваСерверЛокализация.ОшибкиЗаполненияРеквизитовПлательщикаПолучателя(Истина, Объект, РеквизитыПлательщика, Истина);
|
||||
|
||||
Если ЗначениеЗаполнено(ДанныеПолучателя.Получатель) Тогда
|
||||
ДенежныеСредстваСерверЛокализация.ОшибкиЗаполненияРеквизитовПлательщикаПолучателя(Ложь, Объект, РеквизитыПолучателя, Истина);
|
||||
КонецЕсли;
|
||||
|
||||
КонецЕсли;
|
||||
|
||||
|
||||
@@ -321,6 +321,22 @@
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
//++ Локализация
|
||||
|
||||
// Процедура дополняет тексты запросов проведения документа.
|
||||
//
|
||||
// Параметры:
|
||||
// Запрос - Запрос - Общий запрос проведения документа.
|
||||
// ТекстыЗапроса - СписокЗначений - Список текстов запроса проведения.
|
||||
// Регистры - Строка, Структура - Список регистров проведения документа через запятую или в ключах структуры.
|
||||
//
|
||||
Процедура ДополнитьТекстыЗапросовПроведенияДОПП(Запрос, ТекстыЗапроса, Регистры) Экспорт
|
||||
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
//-- Локализация
|
||||
|
||||
// Процедура пересчитывает значения строк таблицы значений для округления итоговой суммы колонки по целых единиц.
|
||||
//
|
||||
// Параметры:
|
||||
|
||||
@@ -98,12 +98,24 @@
|
||||
ПараметрыУстановкиШтампов.ПараметрыРезультата.ФорматРезультата = РасширениеФайлаРезультата;
|
||||
СлужебнаяИнформацияЗапроса = СлужебнаяИнформацияЗапроса(ПользовательскийСценарий, НовыйИдентификаторТрассировки());
|
||||
|
||||
Результат = НовыйРезультатОбработкиДокумента();
|
||||
|
||||
// Создаем ссылку для загрузки файла
|
||||
Ответ = СсылкаДляЗагрузки(СлужебнаяИнформацияЗапроса);
|
||||
|
||||
Если Ответ.Отказ Тогда
|
||||
Результат.ЕстьОшибки = Истина;
|
||||
Результат.ИнформацияОбОшибках = Ответ.ТекстОшибки;
|
||||
Возврат Результат;
|
||||
КонецЕсли;
|
||||
|
||||
URLДляЗагрузки = Ответ.URLРедиректа;
|
||||
|
||||
// Создаем задание в очередь в сервисе
|
||||
ОтветСервиса = РезультатВыполненияЗапросаСоздатьЗаданиеВСервисеНаУстановкуШтамповВДокумент(
|
||||
ПараметрыУстановкиШтампов,
|
||||
СлужебнаяИнформацияЗапроса);
|
||||
|
||||
Результат = НовыйРезультатОбработкиДокумента();
|
||||
СлужебнаяИнформацияЗапроса,
|
||||
URLДляЗагрузки);
|
||||
|
||||
Если Не ОтветСервиса.КодСостояния = Интеграция1СШтампСлужебныйКлиентСервер.КодСостоянияОжидание() Тогда
|
||||
Результат.ЕстьОшибки = Истина;
|
||||
@@ -259,17 +271,35 @@
|
||||
|
||||
#Область МетодыОбращенияКСервису
|
||||
|
||||
// Возвращает результат создания задания в очереди сервиса.
|
||||
// Возвращает ссылку для загрузки файла в сервис.
|
||||
//
|
||||
// Параметры:
|
||||
// ПараметрыДобавленияШтампов - См. Интеграция1СШтампКлиентСервер.НовыеПараметрыДобавленияШтамповВДокумент
|
||||
// СлужебнаяИнформацияЗапроса - См. СлужебнаяИнформацияЗапроса
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// См. НовыйРезультатВыполненияЗапроса
|
||||
//
|
||||
Функция СсылкаДляЗагрузки(Знач СлужебнаяИнформацияЗапроса)
|
||||
|
||||
ЗапросКСервису = ЗапросКСервисуСсылкаДляЗагрузки(СлужебнаяИнформацияЗапроса);
|
||||
Результат = ВыполнитьЗапрос(ЗапросКСервису);
|
||||
|
||||
Возврат Результат;
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Возвращает результат создания задания в очереди сервиса.
|
||||
//
|
||||
// Параметры:
|
||||
// ПараметрыДобавленияШтампов - См. Интеграция1СШтампКлиентСервер.НовыеПараметрыДобавленияШтамповВДокумент
|
||||
// СлужебнаяИнформацияЗапроса - См. СлужебнаяИнформацияЗапроса
|
||||
// URLДляЗагрузки - Строка - URL-адрес файла для загрузки
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// См. НовыйРезультатВыполненияЗапроса
|
||||
//
|
||||
Функция РезультатВыполненияЗапросаСоздатьЗаданиеВСервисеНаУстановкуШтамповВДокумент(
|
||||
Знач ПараметрыДобавленияШтампов, Знач СлужебнаяИнформацияЗапроса)
|
||||
Знач ПараметрыДобавленияШтампов, Знач СлужебнаяИнформацияЗапроса, URLДляЗагрузки)
|
||||
|
||||
ДвоичныеДанные = ДвоичныеДанныеАрхиваСФайламиДляШтампированияДокумента(ПараметрыДобавленияШтампов);
|
||||
Результат = РезультатВыполненияПрикладныхПроверокПередОтправкойЗапроса(ДвоичныеДанные);
|
||||
@@ -278,7 +308,7 @@
|
||||
Возврат Результат;
|
||||
КонецЕсли;
|
||||
|
||||
ЗапросКСервису = ЗапросКСервисуДобавитьШтампыВДокумент(ДвоичныеДанные, СлужебнаяИнформацияЗапроса);
|
||||
ЗапросКСервису = ЗапросКСервисуДобавитьШтампыВДокумент(URLДляЗагрузки, ДвоичныеДанные, СлужебнаяИнформацияЗапроса);
|
||||
Результат = ВыполнитьЗапрос(ЗапросКСервису);
|
||||
|
||||
Возврат Результат;
|
||||
@@ -327,12 +357,30 @@
|
||||
|
||||
#Область ВыполнениеЗапросов
|
||||
|
||||
Функция ЗапросКСервисуДобавитьШтампыВДокумент(Знач ДвоичныеДанные, Знач СлужебнаяИнформацияЗапроса)
|
||||
Функция ЗапросКСервисуСсылкаДляЗагрузки(СлужебнаяИнформацияЗапроса)
|
||||
|
||||
ЗапросСервиса = НовыйЗапросСервиса();
|
||||
ЗапросСервиса.СтрокаЗапроса = АдресЗапросаДобавитьШтамп();
|
||||
ЗапросСервиса.СтрокаЗапроса = "/v2/stamp";
|
||||
ЗапросСервиса.ТипПередаваемогоКонтента = ТипИсходящегоКонтентаДанныеДокументаИШтампов();
|
||||
ЗапросСервиса.Метод = "POST";
|
||||
ЗапросСервиса.Наименование = НСтр(
|
||||
"ru = 'Получение ссылки для загрузки файла'",
|
||||
ОбщегоНазначения.КодОсновногоЯзыка());
|
||||
|
||||
ЗапросСервиса.ДопустимыеКодыСостояния.Добавить(
|
||||
Интеграция1СШтампСлужебныйКлиентСервер.КодСостоянияРедиректаЗапроса());
|
||||
УстановитьЗаголовкиЗапроса(ЗапросСервиса, СлужебнаяИнформацияЗапроса);
|
||||
|
||||
Возврат ЗапросСервиса;
|
||||
|
||||
КонецФункции
|
||||
|
||||
Функция ЗапросКСервисуДобавитьШтампыВДокумент(Знач URLДляЗагрузки, Знач ДвоичныеДанные, Знач СлужебнаяИнформацияЗапроса)
|
||||
|
||||
ЗапросСервиса = НовыйЗапросСервиса();
|
||||
ЗапросСервиса.СтрокаЗапроса = URLДляЗагрузки;
|
||||
ЗапросСервиса.ТипПередаваемогоКонтента = ТипИсходящегоКонтентаДанныеДокументаИШтампов();
|
||||
ЗапросСервиса.Метод = "PUT";
|
||||
ЗапросСервиса.Данные = ДвоичныеДанные;
|
||||
ЗапросСервиса.Наименование = НСтр(
|
||||
"ru = 'Добавление штампов в документ в сервисе 1С:Штамп'",
|
||||
@@ -428,6 +476,7 @@
|
||||
ОбщегоНазначения.КодОсновногоЯзыка());
|
||||
РезультатВыполнения.ТекстОшибки = ЗафиксироватьОшибкуВЗапросе(ПараметрыСоединения, ЗапросСервиса, ТекстОшибки);
|
||||
РезультатВыполнения.КодСостояния = Интеграция1СШтампСлужебныйКлиентСервер.КодСостоянияСервисНеОтвечает();
|
||||
РезультатВыполнения.Отказ = Истина;
|
||||
Возврат РезультатВыполнения;
|
||||
КонецПопытки;
|
||||
|
||||
@@ -464,6 +513,7 @@
|
||||
ПодробноеОписаниеОшибки = ОбработкаОшибок.ПодробноеПредставлениеОшибки(ИнформацияОбОшибке());
|
||||
РезультатВыполнения.ТекстОшибки = ЗафиксироватьОшибкуВЗапросе(Соединение, ЗапросСервиса, ПодробноеОписаниеОшибки, Отказ);
|
||||
РезультатВыполнения.КодСостояния = Интеграция1СШтампСлужебныйКлиентСервер.КодСостоянияСервисНеОтвечает();
|
||||
РезультатВыполнения.Отказ = Истина;
|
||||
Возврат РезультатВыполнения;
|
||||
КонецПопытки;
|
||||
|
||||
@@ -476,6 +526,7 @@
|
||||
|
||||
Если Отказ Тогда
|
||||
РезультатВыполнения.ТекстОшибки = ЗафиксироватьОшибкуВЗапросе(ПараметрыСоединения, ЗапросСервиса, РезультатВыполнения.ТекстОшибки);
|
||||
РезультатВыполнения.Отказ = Истина;
|
||||
Возврат РезультатВыполнения;
|
||||
КонецЕсли;
|
||||
|
||||
@@ -1130,6 +1181,7 @@
|
||||
Результат.Вставить("URLРедиректа" , "");
|
||||
Результат.Вставить("Интервал" , 0);
|
||||
Результат.Вставить("ТекстОшибки" , "");
|
||||
Результат.Вставить("Отказ" , Ложь);
|
||||
|
||||
Возврат Результат;
|
||||
|
||||
@@ -1207,12 +1259,6 @@
|
||||
|
||||
КонецФункции
|
||||
|
||||
Функция АдресЗапросаДобавитьШтамп()
|
||||
|
||||
Возврат "stamp";
|
||||
|
||||
КонецФункции
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
#Область Словарь
|
||||
|
||||
@@ -233,7 +233,7 @@
|
||||
//
|
||||
Функция ЗначениеИнтервалаПовторногоОбращенияКСервисуПоУмолчанию() Экспорт
|
||||
|
||||
Возврат 1;
|
||||
Возврат 0;
|
||||
|
||||
КонецФункции
|
||||
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user