diff --git a/README.md b/README.md
new file mode 100644
index 000000000..b7f123de3
--- /dev/null
+++ b/README.md
@@ -0,0 +1,167 @@
+# crm3_26
+
+Репозиторий конфигурации **1С:Управление торговлей и взаимоотношениями с клиентами (CRM), редакция 3.1** в формате выгрузки в файлы для версионирования в Git.
+
+## Общие сведения
+
+| Параметр | Значение |
+|---|---|
+| Имя конфигурации | `УправлениеТорговлей_CRM_2` |
+| Синоним | 1С:Управление торговлей и взаимоотношениями с клиентами (CRM), редакция 3.1 |
+| Версия | **3.1.36.33** |
+| Разработчик | ООО «1С-Рарус Специализированные Решения» |
+| Основа продукта | 1С:Управление торговлей (11.5.27.52) + Модуль 1С:CRM (3.1.36.45) |
+| Режим совместимости платформы | 8.3.27 |
+| Режим запуска | Управляемое приложение |
+| Язык скриптов | Русский |
+| Репозиторий Git | https://git.p7net.ru/1c/crm3_26.git |
+
+Конфигурация выгружена с информационной базы **crm3** (сервер `1c-srv.rhana.local`).
+
+## Назначение
+
+Продукт объединяет функциональность **1С:Управление торговлей** и модуля **1С:CRM** и предназначен для комплексной автоматизации:
+
+- управления продажами и закупками;
+- складского учёта и логистики;
+- взаимодействия с клиентами (CRM);
+- маркетинга и аналитики клиентской базы;
+- планирования и финансового контроллинга;
+- казначейства и взаиморасчётов;
+- электронного документооборота и интеграций с внешними системами.
+
+## Структура репозитория
+
+```
+crm3_26/
+├── src/ # Конфигурация 1С в формате выгрузки в файлы
+│ ├── Configuration.xml # Корневой файл метаданных конфигурации
+│ ├── Catalogs/ # Справочники
+│ ├── Documents/ # Документы
+│ ├── Reports/ # Отчёты
+│ ├── DataProcessors/ # Обработки
+│ ├── CommonModules/ # Общие модули
+│ ├── InformationRegisters/ # Регистры сведений
+│ ├── AccumulationRegisters/ # Регистры накопления
+│ ├── Subsystems/ # Подсистемы
+│ ├── Roles/ # Роли
+│ ├── ExchangePlans/ # Планы обмена
+│ ├── WebServices/ # Веб-сервисы
+│ ├── HTTPServices/ # HTTP-сервисы
+│ ├── Bots/ # Боты
+│ ├── IntegrationServices/ # Сервисы интеграции
+│ └── ... # Прочие объекты метаданных
+├── VERSION # Текущая версия конфигурации
+├── .gitignore # Исключения для Git
+└── .gitattributes # Настройки окончаний строк и бинарных файлов
+```
+
+## Состав конфигурации (основные подсистемы)
+
+Конфигурация включает 28 подсистем верхнего уровня, в том числе:
+
+| Подсистема | Назначение |
+|---|---|
+| `CRM_МодульCRM` | Ядро CRM: работа с клиентами, проекты, маркетинг, календарь и почта, триггеры |
+| `CRMИМаркетинг` | Маркетинговые инструменты |
+| `Продажи` / `ПродажиБазовая` | Управление продажами |
+| `Закупки` / `ЗакупкиБазовая` | Управление закупками |
+| `Склад` / `СкладБазовая` | Складской учёт |
+| `Казначейство` | Управление денежными средствами |
+| `ФинансовыйРезультатИКонтроллинг` | Финансовый результат и контроллинг |
+| `Планирование` | Планирование |
+| `ЭлектронноеВзаимодействие` | ЭДО, обмен электронными документами |
+| `СинхронизацияДанных` | Синхронизация между базами |
+| `ИнтеграцияЕГАИСУТ` / `ИнтеграцияГИСМУТ` / `ИнтеграцияВЕТИСУТ` / `ИнтеграцияМОТПУТ` | Государственные информационные системы |
+| `ИнтеграцияС1СДокументооборотом` | Интеграция с 1С:Документооборот |
+| `СерверЛояльности` | Программы лояльности |
+| `МашинноеОбучение` | Машинное обучение |
+| `Администрирование` | Администрирование системы |
+| `СтандартныеПодсистемы` | Библиотека стандартных подсистем (БСП) |
+
+### Модуль CRM (ключевые разделы)
+
+Внутри подсистемы `CRM_МодульCRM` выделены функциональные блоки:
+
+- **Работа с клиентами** — продажи, поддержка, анализ обращений и клиентской базы;
+- **Маркетинг** — сегменты, рассылки, анкетирование, сквозная аналитика, распознавание лиц;
+- **Проекты** — управление проектами;
+- **Календарь и почта** — календарь, электронная почта, обмен с внешними календарями;
+- **Триггеры** — автоматизация бизнес-процессов по событиям;
+- **СофтФон** — интеграция с телефонией;
+- **SMS4B** — сервис SMS-рассылок.
+
+## Статистика объектов метаданных
+
+| Тип объекта | Количество |
+|---|---|
+| Справочники | 645 |
+| Документы | 306 |
+| Отчёты | 388 |
+| Обработки | 450 |
+| Общие модули | 3 195 |
+| Регистры сведений | 857 |
+| Регистры накопления | 105 |
+| Роли | 1 185 |
+| Планы обмена | 26 |
+| Веб-сервисы | 21 |
+| HTTP-сервисы | 16 |
+| Боты | 2 |
+| Файлы `.bsl` (модули) | ~14 650 |
+| Всего файлов в `src/` | ~61 400 |
+
+## Интеграции и сервисы
+
+Конфигурация содержит HTTP-сервисы для взаимодействия с внешними системами, в том числе:
+
+- электронный документооборот (ЭДО);
+- сервер лояльности;
+- биллинг;
+- телефония (SoftPhone);
+- обмен данными;
+- открытая авторизация почтовых сервисов.
+
+Также реализованы боты для оповещения пользователей о событиях и сервисы интеграции для обмена сообщениями.
+
+## Работа с репозиторием
+
+### Требования
+
+- Платформа **1С:Предприятие 8.3** (режим совместимости 8.3.27 и выше);
+- Конфигуратор 1С или среда разработки с поддержкой формата выгрузки в файлы (например, 1C:EDT).
+
+### Загрузка конфигурации
+
+1. Клонировать репозиторий:
+ ```bash
+ git clone https://git.p7net.ru/1c/crm3_26.git
+ ```
+2. В конфигураторе 1С: **Конфигурация → Загрузить конфигурацию из файлов** — указать каталог `src/`.
+3. Обновить конфигурацию базы данных.
+
+### Выгрузка изменений
+
+1. В конфигураторе: **Конфигурация → Выгрузить конфигурацию в файлы** — указать каталог `src/`.
+2. Обновить файл `VERSION` при смене версии.
+3. Зафиксировать изменения в Git.
+
+### Исключённые из Git файлы
+
+Согласно `.gitignore`, в репозиторий не попадают:
+
+- бинарные файлы конфигурации (`.cf`, `.cfe`, `.ef`);
+- временные и служебные файлы;
+- каталоги отладки (`.vs/`, `.vscode/`, `Debug/`).
+
+## История репозитория
+
+| Дата | Событие |
+|---|---|
+| 18.06.2026 | Начальный коммит — выгрузка конфигурации с DT-021 |
+| — | Экспорт из базы crm3 (1c-srv.rhana.local), версия 3.1.36.31 |
+| — | Актуальная версия конфигурации: **3.1.36.33** |
+
+## Ссылки
+
+- [Описание продукта на сайте 1С](http://solutions.1c.ru/catalog/product.html?product_id=1452)
+- [Каталог обновлений 1С](http://downloads.v8.1c.ru/tmplts/)
diff --git a/VERSION b/VERSION
index f3db542e4..c32d53c53 100644
--- a/VERSION
+++ b/VERSION
@@ -1 +1 @@
-3.1.36.31
+3.1.36.33
diff --git a/src/AccumulationRegisters/ДвиженияПоАкцизам/Ext/ManagerModule.bsl b/src/AccumulationRegisters/ДвиженияПоАкцизам/Ext/ManagerModule.bsl
index 8f0b92c5c..179ddf3be 100644
--- a/src/AccumulationRegisters/ДвиженияПоАкцизам/Ext/ManagerModule.bsl
+++ b/src/AccumulationRegisters/ДвиженияПоАкцизам/Ext/ManagerModule.bsl
@@ -108,6 +108,153 @@
#Область СлужебныеПроцедурыИФункции
+#КонецОбласти
+
+#Область ОбновлениеИнформационнойБазы
+
+// см. ОбновлениеИнформационнойБазыБСП.ПриДобавленииОбработчиковОбновления
+Процедура ПриДобавленииОбработчиковОбновления(Обработчики) Экспорт
+
+ Обработчик = Обработчики.Добавить();
+ Обработчик.Процедура = "РегистрыНакопления.ДвиженияПоАкцизам.ОбработатьДанныеДляПереходаНаНовуюВерсию";
+ Обработчик.Версия = "11.5.27.48";
+ Обработчик.Порядок = Перечисления.ПорядокОбработчиковОбновления.Некритичный;
+ Обработчик.РежимВыполнения = "Отложенно";
+ Обработчик.Идентификатор = Новый УникальныйИдентификатор("e0ca9ea7-01a0-4ba0-888a-ba5aac55c97f");
+ Обработчик.Многопоточный = Истина;
+ Обработчик.ПроцедураЗаполненияДанныхОбновления = "РегистрыНакопления.ДвиженияПоАкцизам.ЗарегистрироватьДанныеКОбработкеДляПереходаНаНовуюВерсию";
+ Обработчик.ПроцедураПроверки = "ОбновлениеИнформационнойБазы.ДанныеОбновленыНаНовуюВерсиюПрограммы";
+
+ Комментарий = НСтр("ru = 'Удаляет записи в регстре ""Движения по акцизам"" для непроведенных документов'");
+
+ Обработчик.Комментарий = Комментарий;
+
+ Читаемые = Новый Массив;
+
+
+ Читаемые.Добавить(Метаданные.Документы.Сторно.ПолноеИмя());
+ Читаемые.Добавить(Метаданные.Документы.ТаможеннаяДекларацияИмпорт.ПолноеИмя());
+ Читаемые.Добавить(Метаданные.Документы.ЗаявлениеОВвозеТоваров.ПолноеИмя());
+
+ Обработчик.ЧитаемыеОбъекты = СтрСоединить(Читаемые, ",");
+
+ Изменяемые = Новый Массив;
+ Изменяемые.Добавить(Метаданные.РегистрыНакопления.ДвиженияПоАкцизам.ПолноеИмя());
+ Обработчик.ИзменяемыеОбъекты = СтрСоединить(Изменяемые, ",");
+
+ Блокируемые = Новый Массив;
+ Блокируемые.Добавить(Метаданные.РегистрыНакопления.ДвиженияПоАкцизам.ПолноеИмя());
+ Обработчик.БлокируемыеОбъекты = СтрСоединить(Блокируемые, ",");
+
+КонецПроцедуры
+
+// Обработчик обновления
+//
+// Параметры:
+// Параметры - См. ОбновлениеИнформационнойБазы.ДополнительныеПараметрыВыборкиДанныхДляМногопоточнойОбработки
+//
+Процедура ЗарегистрироватьДанныеКОбработкеДляПереходаНаНовуюВерсию(Параметры) Экспорт
+
+ ПолноеИмяРегистра = Метаданные.РегистрыНакопления.ДвиженияПоАкцизам.ПолноеИмя();
+
+ ПараметрыВыборки = Параметры.ПараметрыВыборки;
+ ПараметрыВыборки.ПолныеИменаРегистров = ПолноеИмяРегистра;
+ ПараметрыВыборки.ПоляУпорядочиванияПриРаботеПользователей.Добавить("Период УБЫВ");
+ ПараметрыВыборки.ПоляУпорядочиванияПриОбработкеДанных.Добавить("Период УБЫВ");
+ ПараметрыВыборки.СпособВыборки = ОбновлениеИнформационнойБазы.СпособВыборкиРегистраторыРегистра();
+
+ Запрос = Новый Запрос();
+ Запрос.Текст = "ВЫБРАТЬ
+ | РегистрДвиженияПоАкцизам.Регистратор
+ |ИЗ РегистрНакопления.ДвиженияПоАкцизам КАК РегистрДвиженияПоАкцизам
+ |ГДЕ
+ | НЕ РегистрДвиженияПоАкцизам.Регистратор.Проведен";
+
+ Регистраторы = Запрос.Выполнить().Выгрузить().ВыгрузитьКолонку("Регистратор");
+
+ ОбновлениеИнформационнойБазы.ОтметитьРегистраторыКОбработке(Параметры, Регистраторы, ПолноеИмяРегистра);
+
+КонецПроцедуры
+
+// Обработчик обновления.
+//
+// Параметры:
+// Параметры - см. ОбновлениеИнформационнойБазы.ОсновныеПараметрыОтметкиКОбработке.
+//
+Процедура ОбработатьДанныеДляПереходаНаНовуюВерсию(Параметры) Экспорт
+
+ МетаданныеРегистра = Метаданные.РегистрыНакопления.ДвиженияПоАкцизам;
+ ПолноеИмяРегистра = МетаданныеРегистра.ПолноеИмя();
+
+ ОбновляемыеДанные = ОбновлениеИнформационнойБазы.ДанныеДляОбновленияВМногопоточномОбработчике(Параметры);
+ Если ОбновляемыеДанные.Количество() = 0 Тогда
+ Параметры.ОбработкаЗавершена = ОбновлениеИнформационнойБазы.ОбработкаДанныхЗавершена(Параметры.Очередь, ПолноеИмяРегистра);
+ Возврат;
+ КонецЕсли;
+
+ Для Каждого СтрокаДанных Из ОбновляемыеДанные Цикл
+ Регистратор = СтрокаДанных.Регистратор;
+
+ ПричинаИсключения = "";
+ Рекомендация = "";
+
+ СписокОписаний = Новый Массив;
+ СписокОписаний.Добавить(НСтр("ru = 'Не удалось обработать набор записей регистра накопления ""Движения по акцизам"":'"));
+
+ НачатьТранзакцию();
+
+ Попытка
+
+ ПричинаИсключения = "Блокировка";
+
+ Блокировка = Новый БлокировкаДанных;
+
+ ЭлементБлокировки = Блокировка.Добавить("РегистрНакопления.ДвиженияПоАкцизам.НаборЗаписей");
+ ЭлементБлокировки.УстановитьЗначение("Регистратор", Регистратор);
+ ЭлементБлокировки.Режим = РежимБлокировкиДанных.Исключительный;
+
+ Блокировка.Заблокировать();
+
+ ПричинаИсключения = "ПлохиеДанные";
+ Рекомендация = НСтр("ru = 'Перепроведите документ вручную.'");
+
+ НаборЗаписей = РегистрыНакопления.ДвиженияПоАкцизам.СоздатьНаборЗаписей();
+ НаборЗаписей.Отбор.Регистратор.Установить(Регистратор);
+ НаборЗаписей.Прочитать();
+ НаборЗаписей.Очистить();
+ ПричинаИсключения = "Запись";
+
+ Если НаборЗаписей.Модифицированность() Тогда
+ ОбновлениеИнформационнойБазы.ЗаписатьНаборЗаписей(НаборЗаписей);
+ Иначе
+ ОбновлениеИнформационнойБазы.ОтметитьВыполнениеОбработки(НаборЗаписей);
+ КонецЕсли;
+
+ ЗафиксироватьТранзакцию();
+
+ Исключение
+
+ ОтменитьТранзакцию();
+ ОбновлениеИнформационнойБазыУТ.СообщитьОНеудачнойОбработке(ИнформацияОбОшибке(), Регистратор);
+
+ Если ПричинаИсключения = "ПлохиеДанные" Тогда
+
+ ОбновлениеИнформационнойБазы.ЗарегистрироватьПроблемуСДанными(Регистратор, Рекомендация, Параметры);
+
+ ИначеЕсли ПричинаИсключения = "Запись" Тогда
+
+ ВызватьИсключение СтрСоединить(СписокОписаний, Символы.ПС);
+
+ КонецЕсли;
+
+ КонецПопытки;
+
+ КонецЦикла;
+
+ Параметры.ОбработкаЗавершена = ОбновлениеИнформационнойБазы.ОбработкаДанныхЗавершена(Параметры.Очередь, ПолноеИмяРегистра);
+
+КонецПроцедуры
+
#КонецОбласти
#КонецЕсли
\ No newline at end of file
diff --git a/src/AccumulationRegisters/ПрочиеАктивыПассивы/Ext/ManagerModule.bsl b/src/AccumulationRegisters/ПрочиеАктивыПассивы/Ext/ManagerModule.bsl
index e37093cb3..c02a91f5f 100644
--- a/src/AccumulationRegisters/ПрочиеАктивыПассивы/Ext/ManagerModule.bsl
+++ b/src/AccumulationRegisters/ПрочиеАктивыПассивы/Ext/ManagerModule.bsl
@@ -166,17 +166,27 @@
Обработчик = Обработчики.Добавить();
Обработчик.Процедура = "РегистрыНакопления.ПрочиеАктивыПассивы.ОбработатьДанныеДляПереходаНаНовуюВерсию";
- Обработчик.Версия = "11.5.26.61";
+ Обработчик.Версия = "11.5.27.48";
Обработчик.РежимВыполнения = "Отложенно";
Обработчик.Идентификатор = Новый УникальныйИдентификатор("e8ea5d4b-ae61-ea32-a34e-ce03ce438a26");
Обработчик.Многопоточный = Истина;
Обработчик.ПроцедураЗаполненияДанныхОбновления = "РегистрыНакопления.ПрочиеАктивыПассивы.ЗарегистрироватьДанныеКОбработкеДляПереходаНаНовуюВерсию";
Обработчик.ПроцедураПроверки = "ОбновлениеИнформационнойБазы.ДанныеОбновленыНаНовуюВерсиюПрограммы";
- Обработчик.Порядок = Перечисления.ПорядокОбработчиковОбновления.Некритичный;
- Обработчик.Комментарий = НСтр("ru = 'Заменяет статью ""Доходы текущего периода"" на ""Прибыли и убытки"" в движениях регистра ""Активы и пассивы"" незаблокированных периодов.'");
+
+ СписокОписаний = Новый Массив;
+ СписокОписаний.Добавить(НСтр("ru = 'Обновление регистра ""Прочие активы и пассивы"":'"));
+ СписокОписаний.Добавить(НСтр("ru = '- Заменяет статью ""Доходы текущего периода"" на ""Прибыли и убытки"" в движениях регистра ""Активы и пассивы"" незаблокированных периодов.'"));
+ СписокОписаний.Добавить(НСтр("ru = '- Удаляет движения по непроведенным документам с акцизами незаблокированных периодов.'"));
+
+ Обработчик.Комментарий = СтрСоединить(СписокОписаний, Символы.ПС);
+ Обработчик.Порядок = Перечисления.ПорядокОбработчиковОбновления.Обычный;
Читаемые = Новый Массив;
Читаемые.Добавить(Метаданные.РегистрыНакопления.ПрочиеАктивыПассивы.ПолноеИмя());
+ Читаемые.Добавить(Метаданные.Документы.ВнутреннееПотребление.ПолноеИмя());
+ Читаемые.Добавить(Метаданные.Документы.СписаниеНедостачТоваров.ПолноеИмя());
+ Читаемые.Добавить(Метаданные.Документы.Сторно.ПолноеИмя());
+
Обработчик.ЧитаемыеОбъекты = СтрСоединить(Читаемые, ",");
Изменяемые = Новый Массив;
@@ -215,6 +225,51 @@
| Движения.Статья = ЗНАЧЕНИЕ(ПланВидовХарактеристик.СтатьиАктивовПассивов.УпрБалансДоходыТекущегоПериода)
| И Движения.Активность
| И ЕСТЬNULL(КОНЕЦПЕРИОДА(Блокировка.ЗаблокироватьПо, МЕСЯЦ), ДАТАВРЕМЯ(1,1,1)) < Движения.Период
+ |
+ |ОБЪЕДИНИТЬ
+ |
+ |ВЫБРАТЬ РАЗЛИЧНЫЕ
+ | Движения.Регистратор КАК Ссылка
+ |ИЗ
+ | РегистрНакопления.ПрочиеАктивыПассивы КАК Движения
+ | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.НастройкаБлокировкиОтИзменений КАК Блокировка
+ | ПО Блокировка.Организация = Движения.Организация
+ | ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.ВнутреннееПотребление КАК ДокументВнутреннееПотребление
+ | ПО ДокументВнутреннееПотребление.Ссылка = Движения.Регистратор
+ | И НЕ ДокументВнутреннееПотребление.Проведен
+ |ГДЕ
+ | Движения.Активность
+ | И ЕСТЬNULL(КОНЕЦПЕРИОДА(Блокировка.ЗаблокироватьПо, МЕСЯЦ), ДАТАВРЕМЯ(1,1,1)) < Движения.Период
+ |
+ |ОБЪЕДИНИТЬ
+ |
+ |ВЫБРАТЬ РАЗЛИЧНЫЕ
+ | Движения.Регистратор КАК Ссылка
+ |ИЗ
+ | РегистрНакопления.ПрочиеАктивыПассивы КАК Движения
+ | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.НастройкаБлокировкиОтИзменений КАК Блокировка
+ | ПО Блокировка.Организация = Движения.Организация
+ | ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.СписаниеНедостачТоваров КАК ДокументСписаниеНедостачТоваров
+ | ПО ДокументСписаниеНедостачТоваров.Ссылка = Движения.Регистратор
+ | И НЕ ДокументСписаниеНедостачТоваров.Проведен
+ |ГДЕ
+ | Движения.Активность
+ | И ЕСТЬNULL(КОНЕЦПЕРИОДА(Блокировка.ЗаблокироватьПо, МЕСЯЦ), ДАТАВРЕМЯ(1,1,1)) < Движения.Период
+ |
+ |ОБЪЕДИНИТЬ
+ |
+ |ВЫБРАТЬ РАЗЛИЧНЫЕ
+ | Движения.Регистратор КАК Ссылка
+ |ИЗ
+ | РегистрНакопления.ПрочиеАктивыПассивы КАК Движения
+ | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.НастройкаБлокировкиОтИзменений КАК Блокировка
+ | ПО Блокировка.Организация = Движения.Организация
+ | ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.Сторно КАК ДокументСторно
+ | ПО ДокументСторно.Ссылка = Движения.Регистратор
+ | И НЕ ДокументСторно.Проведен
+ |ГДЕ
+ | Движения.Активность
+ | И ЕСТЬNULL(КОНЕЦПЕРИОДА(Блокировка.ЗаблокироватьПо, МЕСЯЦ), ДАТАВРЕМЯ(1,1,1)) < Движения.Период
|";
Регистраторы = Запрос.Выполнить().Выгрузить().ВыгрузитьКолонку("Ссылка");
@@ -274,7 +329,15 @@
НаборЗаписей = РегистрыНакопления.ПрочиеАктивыПассивы.СоздатьНаборЗаписей();
НаборЗаписей.Отбор.Регистратор.Установить(Регистратор);
НаборЗаписей.Прочитать();
+ ТипДокумента = ТипЗнч(Регистратор);
+ Если (ТипДокумента = Тип("ДокументСсылка.ВнутреннееПотребление")
+ Или ТипДокумента = Тип("ДокументСсылка.СписаниеНедостачТоваров")
+ Или ТипДокумента = Тип("ДокументСсылка.Сторно"))
+ И Не ОбщегоНазначения.ЗначениеРеквизитаОбъекта(Регистратор, "Проведен") = Истина Тогда
+ НаборЗаписей.Очистить();
+ КонецЕсли;
+
Для Каждого Запись Из НаборЗаписей Цикл
Если Запись.Статья = ПланыВидовХарактеристик.СтатьиАктивовПассивов.УпрБалансДоходыТекущегоПериода Тогда
diff --git a/src/Catalogs/CRM_ПотенциальныеКлиенты/Forms/ФормаЭлемента/Ext/Form/Module.bsl b/src/Catalogs/CRM_ПотенциальныеКлиенты/Forms/ФормаЭлемента/Ext/Form/Module.bsl
index 56e084993..90c916d29 100644
--- a/src/Catalogs/CRM_ПотенциальныеКлиенты/Forms/ФормаЭлемента/Ext/Form/Module.bsl
+++ b/src/Catalogs/CRM_ПотенциальныеКлиенты/Forms/ФормаЭлемента/Ext/Form/Module.bsl
@@ -124,10 +124,6 @@
CRM_КлиентыСервер.СформироватьСмещениеВремениТекущегоАбонента(ЭтотОбъект, , Объект.Ссылка, Объект.БизнесРегион);
- // Управление элементами на форме
- CRM_УправлениеЭлементамиНаФормах.ПриСозданииНаСервере(ЭтотОбъект, "КоманднаяПанельФормы", "ГруппаДополнительно");
- // Конец Управление элементами на форме
-
КомпонентыФС = Новый Массив;
КомпонентыФС.Добавить(Новый ФорматированнаяСтрока(НСтр("ru='Создан';en='Created'") + " ", ,
ЦветаСтиля.CRM_ЧерныйЦветТекста));
@@ -150,6 +146,11 @@
РаспознаваниеРечи_ПриСозданииНаСервере(Отказ, СтандартнаяОбработка);
// Конец РаспознаваниеРечи
+ // Управление элементами на форме
+ // ! Блок должен располагаться в конце процедуры !
+ CRM_УправлениеЭлементамиНаФормах.ПриСозданииНаСервере(ЭтотОбъект, "КоманднаяПанельФормы", "ГруппаДополнительно");
+ // Конец Управление элементами на форме
+
ЦветГолубой = ЦветаСтиля.CRM_ОсновнойГолубой;
ЦветКрасный = ЦветаСтиля.ЦветОсобогоТекста;
diff --git a/src/Catalogs/CRM_СостоянияИнтересов/Forms/ФормаНастройкиСостояния/Ext/Form/Module.bsl b/src/Catalogs/CRM_СостоянияИнтересов/Forms/ФормаНастройкиСостояния/Ext/Form/Module.bsl
index 8bf58ff0a..4e6d6189e 100644
--- a/src/Catalogs/CRM_СостоянияИнтересов/Forms/ФормаНастройкиСостояния/Ext/Form/Module.bsl
+++ b/src/Catalogs/CRM_СостоянияИнтересов/Forms/ФормаНастройкиСостояния/Ext/Form/Module.bsl
@@ -260,6 +260,7 @@
Настройки.Вставить("ЧекЛист", Объект.ЧекЛист);
Настройки.Вставить("ОжидаемыйСрокНаЭтапе", Объект.ОжидаемыйСрокНаЭтапе);
Настройки.Вставить("ЗавершатьСвязанныеДиалоги", Объект.ЗавершатьСвязанныеДиалоги);
+ Настройки.Вставить("НеСоздаватьЗадачу", Объект.НеСоздаватьЗадачу);
Закрыть(Настройки);
diff --git a/src/Catalogs/CRM_СостоянияИнтересов/Forms/ФормаЭлемента/Ext/Form/Module.bsl b/src/Catalogs/CRM_СостоянияИнтересов/Forms/ФормаЭлемента/Ext/Form/Module.bsl
index 56cf78d25..eb5b8cfe1 100644
--- a/src/Catalogs/CRM_СостоянияИнтересов/Forms/ФормаЭлемента/Ext/Form/Module.bsl
+++ b/src/Catalogs/CRM_СостоянияИнтересов/Forms/ФормаЭлемента/Ext/Form/Module.bsl
@@ -145,6 +145,7 @@
Настройки.Вставить("ЧекЛист", Объект.ЧекЛист);
Настройки.Вставить("ОжидаемыйСрокНаЭтапе", Объект.ОжидаемыйСрокНаЭтапе);
Настройки.Вставить("ЗавершатьСвязанныеДиалоги", Объект.ЗавершатьСвязанныеДиалоги);
+ Настройки.Вставить("НеСоздаватьЗадачу", Объект.НеСоздаватьЗадачу);
ОписаниеОповещения = Новый ОписаниеОповещения("ЗавершениеРедактированияНастроек", ЭтотОбъект);
ПараметрыОткрытия = Новый Структура("Настройки", Настройки);
diff --git a/src/Catalogs/ВетеринарноСопроводительныйДокументВЕТИС/Forms/ЗагрузкаИдентификаторовВСДИзВнешнихФайлов/Ext/Form/Module.bsl b/src/Catalogs/ВетеринарноСопроводительныйДокументВЕТИС/Forms/ЗагрузкаИдентификаторовВСДИзВнешнихФайлов/Ext/Form/Module.bsl
index f3c524d5d..6eab4da5f 100644
--- a/src/Catalogs/ВетеринарноСопроводительныйДокументВЕТИС/Forms/ЗагрузкаИдентификаторовВСДИзВнешнихФайлов/Ext/Form/Module.bsl
+++ b/src/Catalogs/ВетеринарноСопроводительныйДокументВЕТИС/Forms/ЗагрузкаИдентификаторовВСДИзВнешнихФайлов/Ext/Form/Module.bsl
@@ -9,7 +9,7 @@
КонецЕсли;
ИнициализироватьТабличныйДокумент();
-
+
ОбщегоНазначенияСобытияФормИСПереопределяемый.ПриСозданииНаСервере(ЭтотОбъект, Отказ, СтандартнаяОбработка);
КонецПроцедуры
diff --git a/src/Catalogs/ВидыЗапасов/Forms/ФормаВводаВидовЗапасов/Ext/Form.xml b/src/Catalogs/ВидыЗапасов/Forms/ФормаВводаВидовЗапасов/Ext/Form.xml
index c6dd4037c..d379a62ca 100644
--- a/src/Catalogs/ВидыЗапасов/Forms/ФормаВводаВидовЗапасов/Ext/Form.xml
+++ b/src/Catalogs/ВидыЗапасов/Forms/ФормаВводаВидовЗапасов/Ext/Form.xml
@@ -1175,7 +1175,12 @@
- cfg:DefinedType.ДенежнаяСуммаЛюбогоЗнака
+ xs:decimal
+
+ 15
+ 3
+ Any
+
- FunctionalOption.ИспользоватьПодакцизныеТовары
diff --git a/src/Catalogs/ВидыПродукцииИС/Ext/ManagerModule.bsl b/src/Catalogs/ВидыПродукцииИС/Ext/ManagerModule.bsl
index 72a4c230e..5959552e7 100644
--- a/src/Catalogs/ВидыПродукцииИС/Ext/ManagerModule.bsl
+++ b/src/Catalogs/ВидыПродукцииИС/Ext/ManagerModule.bsl
@@ -49,7 +49,7 @@
#Область ДляВызоваИзДругихПодсистем
-// Обработка данных перехода на конструктор настроек видов продуции
+// Обработка данных перехода на конструктор настроек видов продукции
//
Процедура ОбработатьДанныеДляПереходаНаНовуюВерсию() Экспорт
diff --git a/src/Catalogs/ВидыЦен/Forms/ФормаНастройкиРасписанияАвтообновленияЦен/Ext/Form.xml b/src/Catalogs/ВидыЦен/Forms/ФормаНастройкиРасписанияАвтообновленияЦен/Ext/Form.xml
index d840b6398..26783c374 100644
--- a/src/Catalogs/ВидыЦен/Forms/ФормаНастройкиРасписанияАвтообновленияЦен/Ext/Form.xml
+++ b/src/Catalogs/ВидыЦен/Forms/ФормаНастройкиРасписанияАвтообновленияЦен/Ext/Form.xml
@@ -29,6 +29,19 @@
ПриСозданииНаСервере
+
+ 70
+ false
+ style:ПросроченныеДанныеЦвет
+
+
+ ru
+ Информирование об удалении устаревшей функциональности
+
+
+
+
+
diff --git a/src/Catalogs/ВидыЦен/Forms/ФормаНастройкиРасписанияАвтообновленияЦен/Ext/Form/Module.bsl b/src/Catalogs/ВидыЦен/Forms/ФормаНастройкиРасписанияАвтообновленияЦен/Ext/Form/Module.bsl
index f32d65da3..78dce14df 100644
--- a/src/Catalogs/ВидыЦен/Forms/ФормаНастройкиРасписанияАвтообновленияЦен/Ext/Form/Module.bsl
+++ b/src/Catalogs/ВидыЦен/Forms/ФормаНастройкиРасписанияАвтообновленияЦен/Ext/Form/Module.bsl
@@ -1,5 +1,4 @@
-
-#Область ОбработчикиСобытийФормы
+#Область ОбработчикиСобытийФормы
&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
@@ -13,6 +12,8 @@
Элементы.ТаблицаРегламентныеЗаданияНастроитьРасписание.Видимость = Не РазделениеВключено;
+ ЦенообразованиеКлиентСервер.УстановитьСвойстваДекорацииИнформированиеОбУдаленииЦенообразованияВерсии20(Элементы);
+
КонецПроцедуры
&НаКлиенте
@@ -307,4 +308,4 @@
КонецФункции
-#КонецОбласти
\ No newline at end of file
+#КонецОбласти
diff --git a/src/Catalogs/ВидыЦен/Forms/ФормаСписка/Ext/Form.xml b/src/Catalogs/ВидыЦен/Forms/ФормаСписка/Ext/Form.xml
index 667c85a29..987fe75c8 100644
--- a/src/Catalogs/ВидыЦен/Forms/ФормаСписка/Ext/Form.xml
+++ b/src/Catalogs/ВидыЦен/Forms/ФормаСписка/Ext/Form.xml
@@ -10,6 +10,19 @@
ПриСозданииНаСервере
+
+ 70
+ false
+ style:ПросроченныеДанныеЦвет
+
+
+ ru
+ Информирование об удалении устаревшей функциональности
+
+
+
+
+
diff --git a/src/Catalogs/ВидыЦен/Forms/ФормаСписка/Ext/Form/Module.bsl b/src/Catalogs/ВидыЦен/Forms/ФормаСписка/Ext/Form/Module.bsl
index 3809c8228..555b511ea 100644
--- a/src/Catalogs/ВидыЦен/Forms/ФормаСписка/Ext/Form/Module.bsl
+++ b/src/Catalogs/ВидыЦен/Forms/ФормаСписка/Ext/Form/Module.bsl
@@ -1439,6 +1439,8 @@
СписокВыбораИспользование.Добавить("ИспользоватьПриВыпускеПродукции", НСтр("ru = 'выпуске продукции'"));
КонецЕсли;
+ ЦенообразованиеКлиентСервер.УстановитьСвойстваДекорацииИнформированиеОбУдаленииЦенообразованияВерсии20(Элементы);
+
КонецПроцедуры
&НаСервере
diff --git a/src/Catalogs/ДоговорыКонтрагентов/Forms/ФормаЭлемента/Ext/Form/Module.bsl b/src/Catalogs/ДоговорыКонтрагентов/Forms/ФормаЭлемента/Ext/Form/Module.bsl
index 1ebb21de0..b6939594d 100644
--- a/src/Catalogs/ДоговорыКонтрагентов/Forms/ФормаЭлемента/Ext/Form/Module.bsl
+++ b/src/Catalogs/ДоговорыКонтрагентов/Forms/ФормаЭлемента/Ext/Form/Module.bsl
@@ -3365,18 +3365,6 @@
Элементы.Сумма.АвтоОтметкаНезаполненного = ФиксированнаяСуммаДоговора;
ВариантДоговор = Перечисления.ВариантыОпределенияГрафикаИсполненияВДоговоре.Договор;
- ВариантРегулярныеПлатежи = Перечисления.ВариантыОпределенияГрафикаИсполненияВДоговоре.РегулярныеПлатежи;
-
- ЭлементСпискаВыбора = Элементы.ВариантОпределенияГрафикаИсполненияВДоговоре.СписокВыбора.НайтиПоЗначению(
- ВариантРегулярныеПлатежи);
-
- Если ЭлементСпискаВыбора = Неопределено Тогда
- ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(Элементы, "ВариантОпределенияГрафикаИсполненияВДоговоре",
- "Доступность", ФиксированнаяСуммаДоговора);
- Иначе
- ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(Элементы, "ВариантОпределенияГрафикаИсполненияВДоговоре",
- "Доступность", Истина);
- КонецЕсли;
Элементы.НадписьГрафикИсполнения.Видимость = Элементы.НадписьГрафикИсполнения.Видимость
И (Объект.ВариантОпределенияГрафикаИсполненияВДоговоре = ВариантДоговор);
diff --git a/src/Catalogs/ИмпортируемаяПартияСАТУРН/Forms/ДанныеКлассификатора/Ext/Form/Module.bsl b/src/Catalogs/ИмпортируемаяПартияСАТУРН/Forms/ДанныеКлассификатора/Ext/Form/Module.bsl
index 67c4ea172..645b6ea01 100644
--- a/src/Catalogs/ИмпортируемаяПартияСАТУРН/Forms/ДанныеКлассификатора/Ext/Form/Module.bsl
+++ b/src/Catalogs/ИмпортируемаяПартияСАТУРН/Forms/ДанныеКлассификатора/Ext/Form/Module.bsl
@@ -623,25 +623,25 @@
| Справочник.ИмпортируемаяПартияСАТУРН КАК ИмпортируемаяПартияСАТУРН
|ГДЕ
| ИмпортируемаяПартияСАТУРН.Идентификатор = &Идентификатор";
-
+
Запрос.УстановитьПараметр("Идентификатор", Идентификатор);
-
+
Выборка = Запрос.Выполнить().Выбрать();
-
+
Если Выборка.Следующий() Тогда
-
+
ИмпортируемаяПартия = Выборка.Ссылка;
-
+
Строки = Новый Массив;
Строки.Добавить(НСтр("ru = 'Импортируемая партия уже загружена'"));
Строки.Добавить(" (");
Строки.Добавить(Новый ФорматированнаяСтрока(НСтр("ru = 'открыть'"),, ЦветаСтиля.ЦветГиперссылкиГосИС,, "ОткрытьИмпортируемуюПартию"));
Строки.Добавить(").");
-
+
ИнформацияСостояниеЗагрузки = Новый ФорматированнаяСтрока(Строки);
-
+
КонецЕсли;
-
+
Запрос = Новый Запрос;
Запрос.Текст = "
|ВЫБРАТЬ
@@ -650,19 +650,19 @@
| Справочник.КлассификаторОрганизацийСАТУРН КАК КлассификаторОрганизацийСАТУРН
|ГДЕ
| КлассификаторОрганизацийСАТУРН.Идентификатор = &Идентификатор";
-
+
Запрос.УстановитьПараметр("Идентификатор", ИдентификаторОрганизации);
-
+
Выборка = Запрос.Выполнить().Выбрать();
-
+
Если Выборка.Следующий() Тогда
-
+
ОрганизацияСАТУРН = Выборка.Ссылка;
-
+
КонецЕсли;
-
+
УстановитьОтображениеОрганизации();
-
+
Запрос = Новый Запрос;
Запрос.Текст = "
|ВЫБРАТЬ
@@ -671,19 +671,19 @@
| Справочник.МестаХраненияСАТУРН КАК МестаХраненияСАТУРН
|ГДЕ
| МестаХраненияСАТУРН.Идентификатор = &Идентификатор";
-
+
Запрос.УстановитьПараметр("Идентификатор", ИдентификаторМестаХранения);
-
+
Выборка = Запрос.Выполнить().Выбрать();
-
+
Если Выборка.Следующий() Тогда
-
+
МестоХранения = Выборка.Ссылка;
-
+
КонецЕсли;
-
+
УстановитьОтображениеМестаХранения();
-
+
Запрос = Новый Запрос;
Запрос.Текст = "
|ВЫБРАТЬ
@@ -692,19 +692,19 @@
| Справочник.КлассификаторСтранСАТУРН КАК КлассификаторСтранСАТУРН
|ГДЕ
| КлассификаторСтранСАТУРН.Идентификатор = &Идентификатор";
-
+
Запрос.УстановитьПараметр("Идентификатор", ИдентификаторСтраныЭкспортера);
-
+
Выборка = Запрос.Выполнить().Выбрать();
-
+
Если Выборка.Следующий() Тогда
-
+
Страна = Выборка.Ссылка;
-
+
КонецЕсли;
-
+
УстановитьОтображениеСтраны();
-
+
Запрос = Новый Запрос;
Запрос.Текст = "
|ВЫБРАТЬ
@@ -713,19 +713,19 @@
| Справочник.КлассификаторТаможенныхПунктовСАТУРН КАК КлассификаторТаможенныхПунктовСАТУРН
|ГДЕ
| КлассификаторТаможенныхПунктовСАТУРН.Идентификатор = &Идентификатор";
-
+
Запрос.УстановитьПараметр("Идентификатор", ИдентификаторТаможенногоПункта);
-
+
Выборка = Запрос.Выполнить().Выбрать();
-
+
Если Выборка.Следующий() Тогда
-
+
ТаможенныйПункт = Выборка.Ссылка;
-
+
КонецЕсли;
-
+
УстановитьОтображениеТаможенногоПункта();
-
+
Запрос = Новый Запрос;
Запрос.Текст = "
|ВЫБРАТЬ
@@ -734,19 +734,19 @@
| Справочник.КлассификаторТерриториальныхУправленийСАТУРН КАК КлассификаторТерриториальныхУправленийСАТУРН
|ГДЕ
| КлассификаторТерриториальныхУправленийСАТУРН.Идентификатор = &Идентификатор";
-
+
Запрос.УстановитьПараметр("Идентификатор", ИдентификаторТерриториальногоУправления);
-
+
Выборка = Запрос.Выполнить().Выбрать();
-
+
Если Выборка.Следующий() Тогда
-
+
ТерриториальноеУправление = Выборка.Ссылка;
-
+
КонецЕсли;
-
+
УстановитьОтображениеТерриториальногоУправления();
-
+
Запрос = Новый Запрос;
Запрос.Текст = "
|ВЫБРАТЬ
@@ -755,19 +755,19 @@
| Справочник.КлассификаторТранспортныхСредствСАТУРН КАК КлассификаторТранспортныхСредствСАТУРН
|ГДЕ
| КлассификаторТранспортныхСредствСАТУРН.Идентификатор = &Идентификатор";
-
+
Запрос.УстановитьПараметр("Идентификатор", ИдентификаторТипаТранспортногоСредстваПеревозчика);
-
+
Выборка = Запрос.Выполнить().Выбрать();
-
+
Если Выборка.Следующий() Тогда
-
+
ТранспортноеСредство = Выборка.Ссылка;
-
+
КонецЕсли;
-
+
УстановитьОтображениеТранспортногоСредства();
-
+
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
@@ -783,7 +783,7 @@
РезультатЗапроса = Запрос.Выполнить();
ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
-
+
Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
ПараметрыПоиска = Новый Структура("ИдентификаторПА", ВыборкаДетальныеЗаписи.Идентификатор);
@@ -1009,7 +1009,7 @@
&НаСервере
Процедура УправлениеЭлементамиФормы()
-
+
Если ЕстьОшибка Тогда
Элементы.СтраницыФормы.ТекущаяСтраница = Элементы.СтраницаОшибка;
diff --git a/src/Catalogs/КатегорииПодакцизныхТоваров/Forms/ФормаЭлемента/Ext/Form/Module.bsl b/src/Catalogs/КатегорииПодакцизныхТоваров/Forms/ФормаЭлемента/Ext/Form/Module.bsl
index fd989fdc0..61c6dc8d4 100644
--- a/src/Catalogs/КатегорииПодакцизныхТоваров/Forms/ФормаЭлемента/Ext/Form/Module.bsl
+++ b/src/Catalogs/КатегорииПодакцизныхТоваров/Forms/ФормаЭлемента/Ext/Form/Module.bsl
@@ -125,7 +125,7 @@
Процедура ПослеЗаписи(ПараметрыЗаписи)
ОбновитьДоступностьКнопок();
- Оповестить("Запись_ПодакцизнаяКатегория", ПараметрыЗаписи, Объект.Ссылка);
+ Оповестить("Запись_ПодакцизнаяКатегория", Неопределено, Объект.Ссылка);
КонецПроцедуры
diff --git a/src/Catalogs/КлассификаторНСИЗЕРНО/Ext/ManagerModule.bsl b/src/Catalogs/КлассификаторНСИЗЕРНО/Ext/ManagerModule.bsl
index 3aeba1fe0..77c40860f 100644
--- a/src/Catalogs/КлассификаторНСИЗЕРНО/Ext/ManagerModule.bsl
+++ b/src/Catalogs/КлассификаторНСИЗЕРНО/Ext/ManagerModule.bsl
@@ -190,7 +190,7 @@
КонецПроцедуры
-// Обработка данных перехода на конструктор настроек видов продуции
+// Обработка данных перехода на конструктор настроек видов продукции
//
// Параметры:
// Параметры - см. ОбновлениеИнформационнойБазы.ОсновныеПараметрыОтметкиКОбработке
@@ -203,7 +203,7 @@
КонецПроцедуры
-// Обработка данных перехода на конструктор настроек видов продуции в монопольном режиме для неразделенных классификаторов
+// Обработка данных перехода на конструктор настроек видов продукции в монопольном режиме для неразделенных классификаторов
//
Процедура ОбработатьДанныеДляПереходаНаКонструкторНастроекВМонопольномРежиме() Экспорт
diff --git a/src/Catalogs/КлассификаторОрганизацийСАТУРН/Forms/ДанныеКлассификатора/Ext/Form/Module.bsl b/src/Catalogs/КлассификаторОрганизацийСАТУРН/Forms/ДанныеКлассификатора/Ext/Form/Module.bsl
index 59df12583..59ff1bfc7 100644
--- a/src/Catalogs/КлассификаторОрганизацийСАТУРН/Forms/ДанныеКлассификатора/Ext/Form/Module.bsl
+++ b/src/Catalogs/КлассификаторОрганизацийСАТУРН/Forms/ДанныеКлассификатора/Ext/Form/Module.bsl
@@ -859,7 +859,7 @@
&НаСервере
Процедура УправлениеЭлементамиФормы()
-
+
Если ЕстьОшибка Тогда
Элементы.СтраницыФормы.ТекущаяСтраница = Элементы.СтраницаОшибка;
@@ -901,7 +901,7 @@
Элементы.МестаПримененияНавигацияНайденоВКлассификатореСтраницаПредыдущая.Доступность = (МестаПримененияТекущийНомерСтраницы > 1);
Элементы.МестаПримененияНавигацияНайденоВКлассификатореСтраницаПервая.Доступность = (МестаПримененияТекущийНомерСтраницы > 1);
Элементы.МестаПримененияНавигацияНайденоВКлассификатореСтраницаСледующая.Доступность = (МестаПрименения.Количество() > 0 И МестаПрименения.Количество() = РазмерПорции);
-
+
КонецПроцедуры
&НаКлиенте
diff --git a/src/Catalogs/КлассификаторОрганизацийСАТУРН/Forms/ФормаСписка/Ext/Form/Module.bsl b/src/Catalogs/КлассификаторОрганизацийСАТУРН/Forms/ФормаСписка/Ext/Form/Module.bsl
index e05d129d4..bc374fa62 100644
--- a/src/Catalogs/КлассификаторОрганизацийСАТУРН/Forms/ФормаСписка/Ext/Form/Module.bsl
+++ b/src/Catalogs/КлассификаторОрганизацийСАТУРН/Forms/ФормаСписка/Ext/Form/Module.bsl
@@ -11,7 +11,7 @@
ПравоДобавления = ПравоДоступа("Добавление", Метаданные.Справочники.КлассификаторОрганизацийСАТУРН);
ЦветГиперссылки = ЦветаСтиля.ЦветГиперссылкиГосИС;
-
+
ОбработатьПереданныеПараметры(Отказ);
Если Отказ Тогда
Возврат;
@@ -21,7 +21,7 @@
УстановитьЗаголовокФормы();
ОбщегоНазначенияСобытияФормИСПереопределяемый.ПриСозданииНаСервере(ЭтотОбъект, Отказ, СтандартнаяОбработка);
-
+
КонецПроцедуры
&НаКлиенте
@@ -153,7 +153,7 @@
Процедура СписокПередНачаломДобавления(Элемент, Отказ, Копирование, Родитель, Группа, Параметр)
Отказ = Истина;
-
+
КонецПроцедуры
&НаКлиенте
@@ -227,7 +227,7 @@
Процедура ОрганизацииВыбор(Элемент, ВыбраннаяСтрока, Поле, СтандартнаяОбработка)
СтандартнаяОбработка = Ложь;
-
+
ПриВыбореИзДанныхКлассификатора();
КонецПроцедуры
@@ -241,7 +241,7 @@
ПараметрыОткрытияФормы = Новый Структура;
ПараметрыОткрытияФормы.Вставить("ЗначенияЗаполнения", ПараметрыПоиска);
-
+
ОповещениеПослеСоздания = Новый ОписаниеОповещения("ОрганизацияПослеСоздания", ЭтотОбъект);
ОткрытьФорму("Справочник.КлассификаторОрганизацийСАТУРН.Форма.ПомощникСоздания", ПараметрыОткрытияФормы, ЭтотОбъект,,,,ОповещениеПослеСоздания);
@@ -271,7 +271,7 @@
Процедура ВыбратьИзЗагруженных(Команда)
ПриВыбореИзЗагруженных();
-
+
КонецПроцедуры
#КонецОбласти
@@ -416,7 +416,7 @@
&НаСервере
Процедура НастроитьЭлементыФормыПриСоздании()
-
+
СформироватьПредставлениеПараметровПоиска(ПараметрыПоиска, Истина);
Элементы.ПоискНеНастроен.ОтображениеСостояния.ДополнительныйРежимОтображения = ДополнительныйРежимОтображения.Неактуальность;
@@ -438,7 +438,7 @@
Элементы.СписокВыбрать.Видимость = Ложь;
Элементы.СписокКонтекстноеМенюВыбрать.Видимость = Ложь;
-
+
Элементы.ОтборСоответствует.Видимость = Истина;
Элементы.ОтборНеСопоставлено.Видимость = Истина;
@@ -454,7 +454,7 @@
ОбщегоНазначенияКлиентСервер.УстановитьПараметрДинамическогоСписка(Список,
"ВсеСопоставлено",
НСтр("ru = 'все сопоставлено'"));
-
+
КонецПроцедуры
&НаСервере
@@ -496,7 +496,7 @@
РабочиеСтатусы.Добавить(Перечисления.СтатусыОбъектовСАТУРН.НаСогласовании);
ОтборЭлемента.ПравоеЗначение = РабочиеСтатусы;
-
+
Элемент.Оформление.УстановитьЗначениеПараметра("ЦветТекста", ЦветаСтиля.ЦветНедоступногоТекста);
// Классификатор. Отображение неактивными элементы со статусами кроме Актуально
@@ -510,7 +510,7 @@
ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.НеВСписке;
ОтборЭлемента.ПравоеЗначение = РабочиеСтатусы;
-
+
Элемент.Оформление.УстановитьЗначениеПараметра("ЦветТекста", ЦветаСтиля.ЦветНедоступногоТекста);
КонецПроцедуры
@@ -529,7 +529,7 @@
ПараметрыПоиска = Результат;
ОбработатьНайденныеОрганизации(1);
-
+
КонецПроцедуры
&НаСервере
@@ -733,7 +733,7 @@
КонецЕсли;
Иначе
-
+
Элементы.КартинкаИнформацияНеНастроенПоиск.Видимость = Ложь;
Элементы.Создать.Видимость = Не РежимВыбора И КоличествоПараметровОтбора > 0 И ПравоДобавления;
Элементы.ВыбратьИзКлассификатора.Видимость = РежимВыбора;
@@ -744,7 +744,7 @@
КонецЕсли;
ПредставлениеПараметровПоиска = ПредставлениеОтбора;
-
+
КонецПроцедуры
&НаСервере
@@ -918,30 +918,30 @@
КонецЕсли;
Если РежимВыбора Тогда
-
+
Если ВыборИдентификаторов Тогда
-
+
ДанныеВыбора = ПустаяСтруктураВозвратаВыборИдентификаторов();
ДанныеВыбора.Ссылка = ТекущиеДанные.ОрганизацияСАТУРН;
ДанныеВыбора.Наименование = ТекущиеДанные.Представление;
ДанныеВыбора.Идентификатор = ТекущиеДанные.GUID;
-
+
ОповеститьОВыборе(ДанныеВыбора);
-
+
ИначеЕсли ЗначениеЗаполнено(ТекущиеДанные.ОрганизацияСАТУРН) Тогда
-
+
ОповеститьОВыборе(ТекущиеДанные.ОрганизацияСАТУРН);
-
+
Иначе
-
+
ОткрытьФормуДанныхКлассификатора(ТекущиеДанные.Идентификатор);
-
+
КонецЕсли;
-
+
Иначе
-
+
ОткрытьФормуДанныхКлассификатора(ТекущиеДанные.Идентификатор);
-
+
КонецЕсли;
КонецПроцедуры
@@ -960,14 +960,14 @@
Если РежимВыбора Тогда
Если ВыборИдентификаторов Тогда
-
+
ДанныеВыбора = ПустаяСтруктураВозвратаВыборИдентификаторов();
ДанныеВыбора.Ссылка = ТекущиеДанные.Ссылка;
ДанныеВыбора.Наименование = ТекущиеДанные.Наименование;
ДанныеВыбора.Идентификатор = ТекущиеДанные.Идентификатор;
-
+
ОповеститьОВыборе(ДанныеВыбора);
-
+
Иначе
ОповеститьОВыборе(ТекущиеДанные.Ссылка);
КонецЕсли;
diff --git a/src/Catalogs/КлассификаторПАТСАТУРН/Forms/ДанныеКлассификатора/Ext/Form/Module.bsl b/src/Catalogs/КлассификаторПАТСАТУРН/Forms/ДанныеКлассификатора/Ext/Form/Module.bsl
index dd6bb2fc8..170c7abb7 100644
--- a/src/Catalogs/КлассификаторПАТСАТУРН/Forms/ДанныеКлассификатора/Ext/Form/Module.bsl
+++ b/src/Catalogs/КлассификаторПАТСАТУРН/Forms/ДанныеКлассификатора/Ext/Form/Module.bsl
@@ -381,9 +381,9 @@
Или ВидПродукции = Перечисления.ВидыПродукцииСАТУРН.Комбипак Тогда
Элементы.СтраницыПоВидуПродукции.ТекущаяСтраница = Элементы.СтраницаТукосмесь;
-
+
Иначе
-
+
Элементы.СтраницыПоВидуПродукции.ТекущаяСтраница = Элементы.СтраницаАгрохимикатПестицид;
КонецЕсли;
@@ -514,7 +514,7 @@
&НаСервере
Процедура УправлениеЭлементамиФормы()
-
+
Если ЕстьОшибка Тогда
Элементы.СтраницыФормы.ТекущаяСтраница = Элементы.СтраницаОшибка;
diff --git a/src/Catalogs/КлассификаторПАТСАТУРН/Forms/ФормаСписка/Ext/Form/Module.bsl b/src/Catalogs/КлассификаторПАТСАТУРН/Forms/ФормаСписка/Ext/Form/Module.bsl
index d74ae4883..c56101c0d 100644
--- a/src/Catalogs/КлассификаторПАТСАТУРН/Forms/ФормаСписка/Ext/Form/Module.bsl
+++ b/src/Catalogs/КлассификаторПАТСАТУРН/Forms/ФормаСписка/Ext/Form/Module.bsl
@@ -188,7 +188,7 @@
Элементы.ПоискНеНастроен.ОтображениеСостояния.ДополнительныйРежимОтображения = ДополнительныйРежимОтображения.Неактуальность;
Элементы.ПоискНеНастроен.ОтображениеСостояния.Текст = НСтр("ru = 'Элементы классификатора не выведены. Настройте отбор и выполните поиск.'");
Элементы.ПоискНеНастроен.ОтображениеСостояния.Видимость = Истина;
-
+
Если РежимВыбора Тогда
Элементы.СписокВыбрать.Видимость = Истина;
@@ -198,7 +198,7 @@
Элементы.СписокВыбрать.Видимость = Ложь;
Элементы.СписокКонтекстноеМенюВыбрать.Видимость = Ложь;
-
+
КонецЕсли;
КонецПроцедуры
@@ -238,7 +238,7 @@
РабочиеСтатусы.Добавить(Перечисления.СтатусыОбъектовСАТУРН.НаСогласовании);
ОтборЭлемента.ПравоеЗначение = РабочиеСтатусы;
-
+
Элемент.Оформление.УстановитьЗначениеПараметра("ЦветТекста", ЦветаСтиля.ЦветНедоступногоТекста);
// Классификатор. Отображение неактивными элементы со статусами кроме Актуально
@@ -252,7 +252,7 @@
ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.НеВСписке;
ОтборЭлемента.ПравоеЗначение = РабочиеСтатусы;
-
+
Элемент.Оформление.УстановитьЗначениеПараметра("ЦветТекста", ЦветаСтиля.ЦветНедоступногоТекста);
КонецПроцедуры
@@ -271,7 +271,7 @@
ПараметрыПоиска = Результат;
ОбработатьНайденныеПАТ(1);
-
+
// на текущий момент создание тукосмесей и комбипаков через АПИ не поддерживается
Элементы.Создать.Видимость = ПараметрыПоиска.Количество() > 0 И Ложь;
@@ -416,7 +416,7 @@
НулевойРезультат = КлассификаторПАТСАТУРН.Количество() = 0;
Элементы.ГруппаИнформацияОНеКорректномЗапросе.Видимость = КоличествоСтраницНесколько И Не НулевойРезультат;
-
+
Если ПриСоздании Или КоличествоСтраницНесколько И НулевойРезультат Тогда
Элементы.КартинкаИнформацияНеНастроенПоиск.Видимость = Истина;
@@ -431,7 +431,7 @@
КонецЕсли;
Иначе
-
+
Элементы.КартинкаИнформацияНеНастроенПоиск.Видимость = Ложь;
// на текущий момент создание тукосмесей и комбипаков через АПИ не поддерживается
Элементы.Создать.Видимость = Не РежимВыбора;
@@ -443,7 +443,7 @@
КонецЕсли;
ПредставлениеПараметровПоиска = ПредставлениеОтбора;
-
+
КонецПроцедуры
&НаСервере
diff --git a/src/Catalogs/КлассификаторПолномочийМЧД003/Ext/ManagerModule.bsl b/src/Catalogs/КлассификаторПолномочийМЧД003/Ext/ManagerModule.bsl
index 10ffbdb7a..aa6a41c8d 100644
--- a/src/Catalogs/КлассификаторПолномочийМЧД003/Ext/ManagerModule.bsl
+++ b/src/Catalogs/КлассификаторПолномочийМЧД003/Ext/ManagerModule.bsl
@@ -133,7 +133,7 @@
// Возвращаемое значение:
// Строка
-Функция КодПолномочия_KLASS_2_0_SIGN_DIG_DOC() Экспорт
+Функция КодПолномочия_KLASS_2_0_SIGN_DIG_DOC()
Возврат "KLASS_2.0_SIGN_DIG_DOC";
@@ -203,7 +203,7 @@
КлассификаторОграничений = РегистрыСведений.КлассификаторыОграниченийМЧД.КлассификаторОграничений();
- Для Каждого Элемент из КодыКлассификатора Цикл
+ Для Каждого Элемент Из КодыКлассификатора Цикл
НайденноеОграничение = КлассификаторОграничений.Найти(Элемент, "Код");
@@ -290,16 +290,16 @@
// Проверяет, находится ли код указанного полномочия в списке полномочий, поддерживающих ограничения
//
// Параметры:
-// КодКласификатора - Строка
+// КодКлассификатора - Строка
//
// Возвращаемое значение:
// Булево
-Функция ЭтоПолномочиеИспользуетОграничения(КодКласификатора) Экспорт
+Функция ЭтоПолномочиеИспользуетОграничения(КодКлассификатора) Экспорт
Результат = Ложь;
СписокПолномочийСОграничениями = ПолучитьСписокПолномочийСОграничениями();
- Если СписокПолномочийСОграничениями.Найти(КодКласификатора) <> Неопределено Тогда
+ Если СписокПолномочийСОграничениями.Найти(КодКлассификатора) <> Неопределено Тогда
Результат = Истина;
КонецЕсли;
diff --git a/src/Catalogs/КлассификаторПолномочийМЧД003/Forms/ФормаВыбора/Ext/Form/Module.bsl b/src/Catalogs/КлассификаторПолномочийМЧД003/Forms/ФормаВыбора/Ext/Form/Module.bsl
index 380d29271..e28bb5c44 100644
--- a/src/Catalogs/КлассификаторПолномочийМЧД003/Forms/ФормаВыбора/Ext/Form/Module.bsl
+++ b/src/Catalogs/КлассификаторПолномочийМЧД003/Forms/ФормаВыбора/Ext/Form/Module.bsl
@@ -86,12 +86,13 @@
ЗначенияРеквизитовВыбранныхПолномочий =
ОбщегоНазначения.ЗначенияРеквизитовОбъектов(
ВыбранныеПолномочия, "КодКлассификатора, Полномочие, Мнемоника, ОписаниеПолномочия, КонтекстПолномочия");
-
+
+ ПодготовленноеПравило = Новый Массив;
+
Для Каждого Полномочие Из ВыбранныеПолномочия Цикл
НомерОграничения = 1;
- ПодготовленноеПравило = Новый Массив;
-
+
УстанавливаемоеПолномочие = ЗначенияРеквизитовВыбранныхПолномочий[Полномочие];
НастройкиПравила =
diff --git a/src/Catalogs/КлассификаторПолномочийМЧД003/Forms/ФормаПодбораСоставныхПолномочий/Ext/Form.xml b/src/Catalogs/КлассификаторПолномочийМЧД003/Forms/ФормаПодбораСоставныхПолномочий/Ext/Form.xml
index b476c586e..c2e9074d8 100644
--- a/src/Catalogs/КлассификаторПолномочийМЧД003/Forms/ФормаПодбораСоставныхПолномочий/Ext/Form.xml
+++ b/src/Catalogs/КлассификаторПолномочийМЧД003/Forms/ФормаПодбораСоставныхПолномочий/Ext/Form.xml
@@ -389,11 +389,6 @@
InAdditionalSubmenu
-
false
-
-
+
+
@@ -527,8 +527,9 @@
-
+
СвУпПред[0].Пред[0].СведИП[0].СведФЛ[0].УдЛичнФЛ[0].expDate
+ false
ru
@@ -542,8 +543,8 @@
false
-
-
+
+
diff --git a/src/Catalogs/МЧД003/Forms/ДобавлениеПредставителя/Ext/Form/Module.bsl b/src/Catalogs/МЧД003/Forms/ДобавлениеПредставителя/Ext/Form/Module.bsl
index 23679e686..c4f94c7b7 100644
--- a/src/Catalogs/МЧД003/Forms/ДобавлениеПредставителя/Ext/Form/Module.bsl
+++ b/src/Catalogs/МЧД003/Forms/ДобавлениеПредставителя/Ext/Form/Module.bsl
@@ -19,8 +19,12 @@
ОтображаемаяГруппа = Элементы.ГруппаПредставитель_Организация;
ИначеЕсли СвУпПред[0].ТипПред = ТипыПредставителей.ИндивидуальныйПредприниматель Тогда
ОтображаемаяГруппа = Элементы.ГруппаПредставитель_ИндивидуальныйПредприниматель;
+ УстановитьВидимостьПоляСрокДействия(Элементы.СвУпПредПредСведИПСведФЛУдЛичнФЛСрокДействия,
+ СвУпПред[0].Пред[0].СведИП[0].СведФЛ[0].УдЛичнФЛ[0].КодВидДок);
Иначе
ОтображаемаяГруппа = Элементы.ГруппаПредставитель_ФизическоеЛицо;
+ УстановитьВидимостьПоляСрокДействия(Элементы.СвУпПредПредСведФизЛСведФЛУдЛичнФЛСрокДействия,
+ СвУпПред[0].Пред[0].СведФизЛ[0].СведФЛ[0].УдЛичнФЛ[0].КодВидДок);
КонецЕсли;
ПоказатьГруппу(Элементы.ГруппаПредставитель, ОтображаемаяГруппа);
@@ -74,8 +78,10 @@
Процедура СвУпПредПредСведФизЛСведФЛУдЛичнФЛКодВидДокПриИзменении(Элемент)
ПоляУдостоверяющиеЛичностьФизическогоЛица = СвУпПред[0].Пред[0].СведФизЛ[0].СведФЛ[0].УдЛичнФЛ[0];
- МашиночитаемыеДоверенностиКлиент.СброситьОформлениеИОчистититьПоляДокументаУдостоверяющегоЛичность(Элемент,
- ПоляУдостоверяющиеЛичностьФизическогоЛица);
+ МашиночитаемыеДоверенностиКлиент.УстановитьОформлениеНастройкиОтображенияИЗначенияПолейДУЛФЛПоУмолчанию(
+ Элемент.Родитель,
+ ПоляУдостоверяющиеЛичностьФизическогоЛица,
+ Элементы.СвУпПредПредСведФизЛСведФЛУдЛичнФЛСрокДействия);
КонецПроцедуры
@@ -83,8 +89,10 @@
Процедура СвУпПредПредСведФизЛСведФЛУдЛичнФЛКодВидДокОчистка(Элемент, СтандартнаяОбработка)
ПоляУдостоверяющиеЛичностьФизическогоЛица = СвУпПред[0].Пред[0].СведФизЛ[0].СведФЛ[0].УдЛичнФЛ[0];
- МашиночитаемыеДоверенностиКлиент.СброситьОформлениеИОчистититьПоляДокументаУдостоверяющегоЛичность(Элемент,
- ПоляУдостоверяющиеЛичностьФизическогоЛица);
+ МашиночитаемыеДоверенностиКлиент.УстановитьОформлениеНастройкиОтображенияИЗначенияПолейДУЛФЛПоУмолчанию(
+ Элемент.Родитель,
+ ПоляУдостоверяющиеЛичностьФизическогоЛица,
+ Элементы.СвУпПредПредСведИПСведФЛУдЛичнФЛСрокДействия);
КонецПроцедуры
@@ -92,8 +100,10 @@
Процедура СвУпПредПредСведИПСведФЛУдЛичнФЛКодВидДокПриИзменении(Элемент)
ПоляУдостоверяющиеЛичностьФизическогоЛица = СвУпПред[0].Пред[0].СведИП[0].СведФЛ[0].УдЛичнФЛ[0];
- МашиночитаемыеДоверенностиКлиент.СброситьОформлениеИОчистититьПоляДокументаУдостоверяющегоЛичность(Элемент,
- ПоляУдостоверяющиеЛичностьФизическогоЛица);
+ МашиночитаемыеДоверенностиКлиент.УстановитьОформлениеНастройкиОтображенияИЗначенияПолейДУЛФЛПоУмолчанию(
+ Элемент.Родитель,
+ ПоляУдостоверяющиеЛичностьФизическогоЛица,
+ Элементы.СвУпПредПредСведФизЛСведФЛУдЛичнФЛСрокДействия);
КонецПроцедуры
@@ -101,10 +111,13 @@
Процедура СвУпПредПредСведИПСведФЛУдЛичнФЛКодВидДокОчистка(Элемент, СтандартнаяОбработка)
ПоляУдостоверяющиеЛичностьФизическогоЛица = СвУпПред[0].Пред[0].СведИП[0].СведФЛ[0].УдЛичнФЛ[0];
- МашиночитаемыеДоверенностиКлиент.СброситьОформлениеИОчистититьПоляДокументаУдостоверяющегоЛичность(Элемент,
- ПоляУдостоверяющиеЛичностьФизическогоЛица);
+ МашиночитаемыеДоверенностиКлиент.УстановитьОформлениеНастройкиОтображенияИЗначенияПолейДУЛФЛПоУмолчанию(
+ Элемент.Родитель,
+ ПоляУдостоверяющиеЛичностьФизическогоЛица,
+ Элементы.СвУпПредПредСведИПСведФЛУдЛичнФЛСрокДействия);
КонецПроцедуры
+
#КонецОбласти
#Область ОбработчикиКомандФормы
@@ -200,6 +213,8 @@
ЗаполнитьТаблицуТипаСведФЛ(СведенияОФизЛице.СведФЛ[0], СтруктураСведений);
ПоказатьГруппу(Элементы.ГруппаПредставитель, Элементы.ГруппаПредставитель_ФизическоеЛицо);
СброситьОформлениеЭлементовФормы(Элементы.ГруппаПредставитель_ФизическоеЛицо, Истина);
+ УстановитьВидимостьПоляСрокДействия(Элементы.СвУпПредПредСведФизЛСведФЛУдЛичнФЛСрокДействия,
+ СведенияОФизЛице.СведФЛ[0].УдЛичнФЛ[0].КодВидДок);
Иначе
СтруктураСведений = ОбщегоНазначенияБЭД.ДанныеЮрФизЛица(Представитель);
Если ИнтеграцияЭДО.ЭтоФизЛицо(Представитель) Тогда
@@ -213,6 +228,8 @@
СведенияОбИП.СведФЛ[0].ФИО[0].Отчество = СтруктураСведений.Отчество;
ПоказатьГруппу(Элементы.ГруппаПредставитель, Элементы.ГруппаПредставитель_ИндивидуальныйПредприниматель);
СброситьОформлениеЭлементовФормы(Элементы.ГруппаПредставитель_ИндивидуальныйПредприниматель, Истина);
+ УстановитьВидимостьПоляСрокДействия(Элементы.СвУпПредПредСведИПСведФЛУдЛичнФЛСрокДействия,
+ СведенияОбИП.СведФЛ[0].УдЛичнФЛ[0].КодВидДок);
Иначе
СвУпПред[0].ТипПред = ТипыПредставителей.ЮридическоеЛицо;
СведенияОЮрЛице = СвУпПред[0].Пред[0].СведОрг[0];
@@ -230,19 +247,9 @@
&НаСервереБезКонтекста
Процедура ЗаполнитьТаблицуТипаСведФЛ(СведФЛ, СтруктураСведений)
- СведФЛ.ФИО[0].Фамилия = СтруктураСведений.Фамилия;
- СведФЛ.ФИО[0].Имя = СтруктураСведений.Имя;
- СведФЛ.ФИО[0].Отчество = СтруктураСведений.Отчество;
- СведФЛ.ДатаРожд = СтруктураСведений.ДатаРождения;
- Ключи = "КемВыдан, ДатаВыдачи, КодФНС, КодПодразделения, Серия, Номер";
- СведенияУдостоверения = Новый Структура(Ключи);
- ЗаполнитьЗначенияСвойств(СведенияУдостоверения, СтруктураСведений);
- СведФЛ.УдЛичнФЛ[0].ВыдДок = СведенияУдостоверения.КемВыдан;
- СведФЛ.УдЛичнФЛ[0].ДатаДок = СведенияУдостоверения.ДатаВыдачи;
- СведФЛ.УдЛичнФЛ[0].КодВидДок = СведенияУдостоверения.КодФНС;
- СведФЛ.УдЛичнФЛ[0].КодВыдДок = СведенияУдостоверения.КодПодразделения;
- СведФЛ.УдЛичнФЛ[0].СерНомДок = СтрШаблон("%1 %2", СведенияУдостоверения.Серия, СведенияУдостоверения.Номер);
- СведФЛ.УдЛичнФЛ[0].expDate = СтруктураСведений.СрокДействия;
+
+ МашиночитаемыеДоверенности.ЗаполнитьТаблицуТипаСведФЛ(СведФЛ, СтруктураСведений);
+
КонецПроцедуры
&НаКлиентеНаСервереБезКонтекста
@@ -807,6 +814,14 @@
КонецПроцедуры
+&НаСервере
+Процедура УстановитьВидимостьПоляСрокДействия(ПолеФормыСрокДействия, ЗначениеПоляКодВидДок)
+
+ МашиночитаемыеДоверенностиКлиентСервер.УстановитьВидимостьПоляСрокДействия(ПолеФормыСрокДействия,
+ ЗначениеПоляКодВидДок);
+
+КонецПроцедуры
+
#КонецОбласти
#КонецОбласти
\ No newline at end of file
diff --git a/src/Catalogs/МЧД003/Forms/ФормаПросмотра/Ext/Form.xml b/src/Catalogs/МЧД003/Forms/ФормаПросмотра/Ext/Form.xml
index 0f99981d9..db47b039a 100644
--- a/src/Catalogs/МЧД003/Forms/ФормаПросмотра/Ext/Form.xml
+++ b/src/Catalogs/МЧД003/Forms/ФормаПросмотра/Ext/Form.xml
@@ -13,11 +13,19 @@
useIfNecessary
Copy
+ Delete
Reread
+ SetDeletionMark
Items
+
-
@@ -485,12 +493,6 @@
Группа передоверия
-
-
- ru
- Группа передоверия
-
-
Vertical
Left
None
@@ -2299,7 +2301,7 @@
ОбновитьСписокПодписанныеДокументы
TextPicture
-
+
ru
@@ -2308,5 +2310,19 @@
ПерепроверитьПодпись
+
+
+
+ ru
+ Пометить на удаление / Снять пометку
+
+
+
+ StdPicture.MarkToDelete
+ true
+
+ УстановитьСнятьПометкуУдаления
+ TextPicture
+
\ No newline at end of file
diff --git a/src/Catalogs/МЧД003/Forms/ФормаПросмотра/Ext/Form/Module.bsl b/src/Catalogs/МЧД003/Forms/ФормаПросмотра/Ext/Form/Module.bsl
index d7baa32e5..bac416e2c 100644
--- a/src/Catalogs/МЧД003/Forms/ФормаПросмотра/Ext/Form/Module.bsl
+++ b/src/Catalogs/МЧД003/Forms/ФормаПросмотра/Ext/Form/Module.bsl
@@ -568,6 +568,16 @@
КонецПроцедуры
+&НаКлиенте
+Процедура УстановитьСнятьПометкуУдаления(Команда)
+
+ ТекстВопроса = МашиночитаемыеДоверенностиКлиент.ПолучитьТекстВопросаУстановитьСнятьПометкуУдаления(Объект);
+
+ ОписаниеОповещения = Новый ОписаниеОповещения("УстановитьСнятьПометкуУдаленияПродолжение", ЭтотОбъект, УникальныйИдентификатор);
+ ПоказатьВопрос(ОписаниеОповещения, ТекстВопроса, РежимДиалогаВопрос.ДаНет);
+
+КонецПроцедуры
+
#КонецОбласти
#Область СлужебныеПроцедурыИФункции
@@ -791,7 +801,8 @@
Элементы.ФормаОтозвать.Видимость =
Объект.СрокДействия > ОбщегоНазначенияКлиент.ДатаСеанса()
- И Объект.СтатусВРеестреФНС <> ПредопределенноеЗначение("Перечисление.СтатусыМашиночитаемойДоверенностиВРеестреФНС.Отозвано");
+ И Объект.СтатусВРеестреФНС <> ПредопределенноеЗначение("Перечисление.СтатусыМашиночитаемойДоверенностиВРеестреФНС.Отозвано")
+ И ЕстьПравоИзмененияМЧД;
ВидимостьКомандВыгрузки = Объект.СтатусВРеестреФНС = ПредопределенноеЗначение(
"Перечисление.СтатусыМашиночитаемойДоверенностиВРеестреФНС.ОтправленоЗаявлениеНаОтзыв")
@@ -1430,4 +1441,25 @@
КонецПроцедуры
+&НаКлиенте
+Процедура УстановитьСнятьПометкуУдаленияПродолжение(Результат, ДополнительныеПараметры) Экспорт
+
+ Если Результат = КодВозвратаДиалога.Нет Тогда
+ Возврат;
+ КонецЕсли;
+
+ УстановитьСнятьПометкуУдаленияНаСервере(Объект.Ссылка, ДополнительныеПараметры);
+ МашиночитаемыеДоверенностиКлиент.ОповеститьОбИзмененииПометкиУдаленияМЧД(
+ ОбщегоНазначенияКлиентСервер.ЗначениеВМассиве(Объект.Ссылка));
+ Прочитать();
+
+КонецПроцедуры
+
+&НаСервереБезКонтекста
+Процедура УстановитьСнятьПометкуУдаленияНаСервере(Знач Ссылка, Знач УникальныйИдентификатор)
+
+ МашиночитаемыеДоверенности.УстановитьСнятьПометкуУдаления(Ссылка, УникальныйИдентификатор);
+
+КонецПроцедуры
+
#КонецОбласти
\ No newline at end of file
diff --git a/src/Catalogs/МЧД003/Forms/ЧерновикМЧД/Ext/Form.xml b/src/Catalogs/МЧД003/Forms/ЧерновикМЧД/Ext/Form.xml
index 0ded5950a..a69e7b62e 100644
--- a/src/Catalogs/МЧД003/Forms/ЧерновикМЧД/Ext/Form.xml
+++ b/src/Catalogs/МЧД003/Forms/ЧерновикМЧД/Ext/Form.xml
@@ -1325,7 +1325,7 @@
-
+
Доверенность[0].Документ[0].Довер[0].СвУпПред[0].Пред[0].СведФизЛ[0].СведФЛ[0].УдЛичнФЛ[0].expDate
false
@@ -1341,8 +1341,8 @@
false
-
-
+
+
@@ -1597,7 +1597,7 @@
-
+
Доверенность[0].Документ[0].Довер[0].СвУпПред[0].Пред[0].СведИП[0].СведФЛ[0].УдЛичнФЛ[0].expDate
false
@@ -1613,8 +1613,8 @@
false
-
-
+
+
diff --git a/src/Catalogs/МЧД003/Forms/ЧерновикМЧД/Ext/Form/Module.bsl b/src/Catalogs/МЧД003/Forms/ЧерновикМЧД/Ext/Form/Module.bsl
index fdc31659f..deebf97f6 100644
--- a/src/Catalogs/МЧД003/Forms/ЧерновикМЧД/Ext/Form/Module.bsl
+++ b/src/Catalogs/МЧД003/Forms/ЧерновикМЧД/Ext/Form/Module.bsl
@@ -336,18 +336,22 @@
ПоляУдостоверяющиеЛичностьФизическогоЛица
= Доверенность[0].Документ[0].Довер[0].СвУпПред[0].Пред[0].СведФизЛ[0].СведФЛ[0].УдЛичнФЛ[0];
- МашиночитаемыеДоверенностиКлиент.СброситьОформлениеИОчистититьПоляДокументаУдостоверяющегоЛичность(Элемент,
- ПоляУдостоверяющиеЛичностьФизическогоЛица);
+ МашиночитаемыеДоверенностиКлиент.УстановитьОформлениеНастройкиОтображенияИЗначенияПолейДУЛФЛПоУмолчанию(
+ Элемент.Родитель,
+ ПоляУдостоверяющиеЛичностьФизическогоЛица,
+ Элементы.ДоверенностьДокументДоверСвУпПредПредСведФизЛСведФЛУдЛичнФЛСрокДействия);
КонецПроцедуры
&НаКлиенте
Процедура ДоверенностьДокументДоверСвУпПредПредСведИПСведФЛУдЛичнФЛКодВидДокПриИзменении(Элемент)
-
+
ПоляУдостоверяющиеЛичностьФизическогоЛица
= Доверенность[0].Документ[0].Довер[0].СвУпПред[0].Пред[0].СведИП[0].СведФЛ[0].УдЛичнФЛ[0];
- МашиночитаемыеДоверенностиКлиент.СброситьОформлениеИОчистититьПоляДокументаУдостоверяющегоЛичность(Элемент,
- ПоляУдостоверяющиеЛичностьФизическогоЛица);
+ МашиночитаемыеДоверенностиКлиент.УстановитьОформлениеНастройкиОтображенияИЗначенияПолейДУЛФЛПоУмолчанию(
+ Элемент.Родитель,
+ ПоляУдостоверяющиеЛичностьФизическогоЛица,
+ Элементы.ДоверенностьДокументДоверСвУпПредПредСведИПСведФЛУдЛичнФЛСрокДействия);
КонецПроцедуры
@@ -356,8 +360,10 @@
ПоляУдостоверяющиеЛичностьФизическогоЛица
= Доверенность[0].Документ[0].Довер[0].СвУпПред[0].Пред[0].СведФизЛ[0].СведФЛ[0].УдЛичнФЛ[0];
- МашиночитаемыеДоверенностиКлиент.СброситьОформлениеИОчистититьПоляДокументаУдостоверяющегоЛичность(Элемент,
- ПоляУдостоверяющиеЛичностьФизическогоЛица);
+ МашиночитаемыеДоверенностиКлиент.УстановитьОформлениеНастройкиОтображенияИЗначенияПолейДУЛФЛПоУмолчанию(
+ Элемент.Родитель,
+ ПоляУдостоверяющиеЛичностьФизическогоЛица,
+ Элементы.ДоверенностьДокументДоверСвУпПредПредСведФизЛСведФЛУдЛичнФЛСрокДействия);
КонецПроцедуры
@@ -366,9 +372,11 @@
ПоляУдостоверяющиеЛичностьФизическогоЛица
= Доверенность[0].Документ[0].Довер[0].СвУпПред[0].Пред[0].СведИП[0].СведФЛ[0].УдЛичнФЛ[0];
- МашиночитаемыеДоверенностиКлиент.СброситьОформлениеИОчистититьПоляДокументаУдостоверяющегоЛичность(Элемент,
- ПоляУдостоверяющиеЛичностьФизическогоЛица);
-
+ МашиночитаемыеДоверенностиКлиент.УстановитьОформлениеНастройкиОтображенияИЗначенияПолейДУЛФЛПоУмолчанию(
+ Элемент.Родитель,
+ ПоляУдостоверяющиеЛичностьФизическогоЛица,
+ Элементы.ДоверенностьДокументДоверСвУпПредПредСведИПСведФЛУдЛичнФЛСрокДействия);
+
КонецПроцедуры
#Область ОбработчикиСобытийЭлементовТаблицыФормыДеревоПолномочийСОграничениями
@@ -816,6 +824,9 @@
ЗаполнитьТаблицуТипаСведФЛ(СведенияОФизЛице.СведФЛ[0], СтруктураСведений);
ПоказатьГруппу(Элементы.ГруппаПредставитель, Элементы.ГруппаПредставитель_ФизическоеЛицо);
СброситьОформлениеЭлементовФормы(Элементы.ГруппаПредставитель_ФизическоеЛицо, Истина);
+ УстановитьВидимостьПоляСрокДействия(
+ Элементы.ДоверенностьДокументДоверСвУпПредПредСведФизЛСведФЛУдЛичнФЛСрокДействия,
+ СведенияОФизЛице.СведФЛ[0].УдЛичнФЛ[0].КодВидДок);
Иначе
СтруктураСведений = ОбщегоНазначенияБЭД.ДанныеЮрФизЛица(Представитель);
Если ИнтеграцияЭДО.ЭтоФизЛицо(Представитель) Тогда
@@ -830,6 +841,9 @@
ПоказатьГруппу(Элементы.ГруппаПредставитель, Элементы.ГруппаПредставитель_ИндивидуальныйПредприниматель);
СброситьОформлениеЭлементовФормы(Элементы.ГруппаПредставитель_ИндивидуальныйПредприниматель, Истина);
+ УстановитьВидимостьПоляСрокДействия(
+ Элементы.ДоверенностьДокументДоверСвУпПредПредСведИПСведФЛУдЛичнФЛСрокДействия,
+ СведенияОбИП.СведФЛ[0].УдЛичнФЛ[0].КодВидДок);
Иначе
СведенияОПредставителе[0].ТипПред = ТипыПредставителей.ЮридическоеЛицо;
СведенияОЮрЛице = СведенияОПредставителе[0].Пред[0].СведОрг[0];
@@ -867,18 +881,9 @@
&НаСервереБезКонтекста
Процедура ЗаполнитьТаблицуТипаСведФЛ(СведФЛ, СтруктураСведений)
- СведФЛ.ФИО[0].Фамилия = СтруктураСведений.Фамилия;
- СведФЛ.ФИО[0].Имя = СтруктураСведений.Имя;
- СведФЛ.ФИО[0].Отчество = СтруктураСведений.Отчество;
- СведФЛ.ДатаРожд = СтруктураСведений.ДатаРождения;
- Ключи = "КемВыдан, ДатаВыдачи, КодФНС, КодПодразделения, Серия, Номер";
- СведенияУдостоверения = Новый Структура(Ключи);
- ЗаполнитьЗначенияСвойств(СведенияУдостоверения, СтруктураСведений);
- СведФЛ.УдЛичнФЛ[0].ВыдДок = СведенияУдостоверения.КемВыдан;
- СведФЛ.УдЛичнФЛ[0].ДатаДок = СведенияУдостоверения.ДатаВыдачи;
- СведФЛ.УдЛичнФЛ[0].КодВидДок = СведенияУдостоверения.КодФНС;
- СведФЛ.УдЛичнФЛ[0].КодВыдДок = СведенияУдостоверения.КодПодразделения;
- СведФЛ.УдЛичнФЛ[0].СерНомДок = СтрШаблон("%1 %2", СведенияУдостоверения.Серия, СведенияУдостоверения.Номер);
+
+ МашиночитаемыеДоверенности.ЗаполнитьТаблицуТипаСведФЛ(СведФЛ, СтруктураСведений);
+
КонецПроцедуры
&НаСервере
@@ -1309,6 +1314,27 @@
Возврат;
КонецЕсли;
+ ДублиПолномочий = Новый Массив;
+ Для Каждого ДобавляемоеПолномочие Из Результат.НастройкиТекущегоПравила Цикл
+
+ ПараметрыОтбора = Новый Структура("КодПолномочия", ДобавляемоеПолномочие.КодПолномочия);
+ НайденныеСтроки = НастройкиПроверкиРасширенные.НайтиСтроки(ПараметрыОтбора);
+ Если НайденныеСтроки.Количество() > 0 Тогда
+ ДублиПолномочий.Добавить(ДобавляемоеПолномочие);
+ КонецЕсли;
+ КонецЦикла;
+
+ Если ДублиПолномочий.Количество() > 0 Тогда
+ Если Результат.НастройкиТекущегоПравила.Количество() = 1 Тогда
+ ПоказатьПредупреждение(, НСтр("ru = 'Добавляемое полномочие уже есть в списке.'"));
+ Возврат;
+ Иначе
+ ПоказатьПредупреждение(, НСтр("ru = 'Дубли добавляемых полномочий были удалены.'"));
+ КонецЕсли;
+ Результат.НастройкиТекущегоПравила =
+ ОбщегоНазначенияКлиентСервер.РазностьМассивов(Результат.НастройкиТекущегоПравила, ДублиПолномочий);
+ КонецЕсли;
+
Модифицированность = Истина;
ТекущийПорядковыйНомер = Результат.ПорядковыйНомер;
@@ -1486,30 +1512,7 @@
НастройкиПроверкиРасширенные.Удалить(ТекущаяСтрока);
КонецЦикла;
- УникальныеПорядковыеНомера = Новый Массив;
- Для Каждого ТекущаяСтрока Из НастройкиПроверкиРасширенные Цикл
- Если УникальныеПорядковыеНомера.Найти(ТекущаяСтрока.ПорядковыйНомер) = Неопределено Тогда
- УникальныеПорядковыеНомера.Добавить(ТекущаяСтрока.ПорядковыйНомер);
- КонецЕсли;
- КонецЦикла;
-
- НовыйПорядковыйНомер = 1;
- Для Каждого ПорядковыйНомер Из УникальныеПорядковыеНомера Цикл
-
- ПараметрыОтбора = Новый Структура("ПорядковыйНомер", ПорядковыйНомер);
- НайденныеСтроки = НастройкиПроверкиРасширенные.НайтиСтроки(ПараметрыОтбора);
-
- НовыйПорядковыйНомер = Мин(НовыйПорядковыйНомер, ПорядковыйНомер);
-
- Для Каждого ТекущаяСтрока Из НайденныеСтроки Цикл
- ТекущаяСтрока.ПорядковыйНомер = НовыйПорядковыйНомер;
- КонецЦикла;
-
- НовыйПорядковыйНомер = НовыйПорядковыйНомер + 1;
-
- КонецЦикла;
-
- Иначе
+ Иначе
ПорядковыйНомер = ПараметрыВыполнения.ПорядковыйНомер;
@@ -1533,6 +1536,29 @@
КонецЕсли;
+ УникальныеПорядковыеНомера = Новый Массив;
+ Для Каждого ТекущаяСтрока Из НастройкиПроверкиРасширенные Цикл
+ Если УникальныеПорядковыеНомера.Найти(ТекущаяСтрока.ПорядковыйНомер) = Неопределено Тогда
+ УникальныеПорядковыеНомера.Добавить(ТекущаяСтрока.ПорядковыйНомер);
+ КонецЕсли;
+ КонецЦикла;
+
+ НовыйПорядковыйНомер = 1;
+ Для Каждого ПорядковыйНомер Из УникальныеПорядковыеНомера Цикл
+
+ ПараметрыОтбора = Новый Структура("ПорядковыйНомер", ПорядковыйНомер);
+ НайденныеСтроки = НастройкиПроверкиРасширенные.НайтиСтроки(ПараметрыОтбора);
+
+ НовыйПорядковыйНомер = Мин(НовыйПорядковыйНомер, ПорядковыйНомер);
+
+ Для Каждого ТекущаяСтрока Из НайденныеСтроки Цикл
+ ТекущаяСтрока.ПорядковыйНомер = НовыйПорядковыйНомер;
+ КонецЦикла;
+
+ НовыйПорядковыйНомер = НовыйПорядковыйНомер + 1;
+
+ КонецЦикла;
+
КонецПроцедуры
&НаСервере
@@ -1617,6 +1643,17 @@
Возврат;
КонецЕсли;
+ ЭтоПолномочиеСОграничением =
+ Результат.НастройкиТекущегоПравила[0].КонтекстПолномочия =
+ МашиночитаемыеДоверенностиКлиентСервер.ПризнакПолномочиеСОграничением();
+
+ ПараметрыОтбора = Новый Структура("КодПолномочия", Результат.НастройкиТекущегоПравила[0].КодПолномочия);
+ НайденныеСтроки = НастройкиПроверкиРасширенные.НайтиСтроки(ПараметрыОтбора);
+ Если Не ЭтоПолномочиеСОграничением И НайденныеСтроки.Количество() > 0 Тогда
+ ПоказатьПредупреждение(, НСтр("ru = 'Выбранное полномочие уже есть в списке.'"));
+ Возврат;
+ КонецЕсли;
+
Модифицированность = Истина;
ТекущийПорядковыйНомер = Результат.ПорядковыйНомер;
@@ -3507,4 +3544,12 @@
КонецПроцедуры
+&НаСервере
+Процедура УстановитьВидимостьПоляСрокДействия(ПолеФормыСрокДействия, ЗначениеПоляКодВидДок)
+
+ МашиночитаемыеДоверенностиКлиентСервер.УстановитьВидимостьПоляСрокДействия(ПолеФормыСрокДействия,
+ ЗначениеПоляКодВидДок);
+
+КонецПроцедуры
+
#КонецОбласти
diff --git a/src/Catalogs/МЧД003/Forms/ЧерновикПередоверияМЧД/Ext/Form.xml b/src/Catalogs/МЧД003/Forms/ЧерновикПередоверияМЧД/Ext/Form.xml
index 586488591..bd8439012 100644
--- a/src/Catalogs/МЧД003/Forms/ЧерновикПередоверияМЧД/Ext/Form.xml
+++ b/src/Catalogs/МЧД003/Forms/ЧерновикПередоверияМЧД/Ext/Form.xml
@@ -54,12 +54,6 @@
Группа информация по исходной МЧД
-
-
- ru
- Группа информация по исходной МЧД
-
-
Vertical
None
false
@@ -116,12 +110,6 @@
Основные реквизиты
-
-
- ru
- Группа создание передоверия
-
-
@@ -131,12 +119,6 @@
Группа субъекты доверенности
-
-
- ru
- Группа субъекты передоверия
-
-
AlwaysHorizontal
Usual
None
@@ -150,12 +132,6 @@
Группа доверители
-
-
- ru
- Группа доверители передоверия
-
-
Vertical
Usual
None
@@ -170,12 +146,6 @@
Группа шапка
-
-
- ru
- Группа шапка передоверия
-
-
Vertical
Usual
None
@@ -200,12 +170,6 @@
Группа срок действия
-
-
- ru
- Группа срок действия передоверия
-
-
AlwaysHorizontal
Usual
None
@@ -251,12 +215,6 @@
Группа заголовок группы доверители
-
-
- ru
- Группа заголовок группы доверители передоверия
-
-
AlwaysHorizontal
Usual
None
@@ -283,12 +241,6 @@
Группа представление доверителей передоверия
-
-
- ru
- Группа представление доверителей передоверия
-
-
Vertical
Usual
None
@@ -302,12 +254,6 @@
Группа один доверитель передоверия
-
-
- ru
- Группа один доверитель передоверия
-
-
Vertical
Usual
None
@@ -321,12 +267,6 @@
Группа доверитель
-
-
- ru
- Группа доверитель передоверия
-
-
Vertical
Usual
None
@@ -340,12 +280,6 @@
Группа доверитель юридическое лицо
-
-
- ru
- Группа доверитель передоверия юридическое лицо
-
-
Vertical
Usual
None
@@ -374,12 +308,6 @@
Группа доверитель юридическое лицо ИНН и КПП
-
-
- ru
- Группа доверитель передоверия юридическое лицо ИНН и КПП
-
-
Usual
None
false
@@ -1399,7 +1327,7 @@
-
+
Доверенность[0].Документ[0].Передов[0].СвПередПолн[0].ПередПолн[0].ФилПерПолн[0].СвРукФил[0].СведФЛ[0].УдЛичнФЛ[0].expDate
@@ -1407,8 +1335,8 @@
Срок
-
-
+
+
@@ -1491,7 +1419,7 @@
ru
- Группа доверитель передоверия юридическое лицо ИННи КПП
+ Группа доверитель передоверия юридическое лицо ИНН и КПП
Usual
@@ -1578,12 +1506,6 @@
Группа доверитель ю л лица без доверенности передоверия
-
-
- ru
- Группа доверитель филиал иностранной организации лица без доверенности передоверия
-
-
Vertical
Usual
false
@@ -1597,12 +1519,6 @@
Группа заголовок группы доверитель юридического лица без доверенности
-
-
- ru
- Группа заголовок группы доверитель передоверия филиал иностранной организации руководитель ИО
-
-
Usual
None
false
@@ -1622,12 +1538,6 @@
-
-
- ru
- Группа одно лицо филиал иностранной организации руководитель
-
-
Vertical
Usual
None
@@ -1826,7 +1736,7 @@
-
+
Доверенность[0].Документ[0].Передов[0].СвПередПолн[0].ПередПолн[0].ИнПерПолн[0].СвРукОП[0].СведФЛ[0].УдЛичнФЛ[0].expDate
@@ -1834,8 +1744,8 @@
Срок
-
-
+
+
@@ -2122,12 +2032,6 @@
Группа представитель
-
-
- ru
- Группа представитель передоверия
-
-
Vertical
Usual
None
@@ -2141,12 +2045,6 @@
Группа представитель физическое лицо
-
-
- ru
- Группа представитель передоверия физическое лицо
-
-
Vertical
Usual
None
@@ -2225,12 +2123,6 @@
Группа представитель физическое лицо ИНН и СНИЛС
-
-
- ru
- Группа представитель передоверия физическое лицо ИНН и СНИЛС
-
-
Usual
None
false
@@ -2322,12 +2214,6 @@
Группа представитель физическое лицо срок выдачи
-
-
- ru
- Группа представитель передоверия физическое лицо срок выдачи
-
-
Usual
None
false
@@ -2345,8 +2231,9 @@
-
+
Доверенность[0].Документ[0].Передов[0].СвПолучПолн[0].Пред[0].СведФизЛ[0].СведФЛ[0].УдЛичнФЛ[0].expDate
+ false
ru
@@ -2360,8 +2247,8 @@
false
-
-
+
+
@@ -2398,12 +2285,6 @@
Группа представитель организация
-
-
- ru
- Группа представитель передоверия организация
-
-
Vertical
Usual
None
@@ -2418,12 +2299,6 @@
Группа представитель организация ИНН и КПП
-
-
- ru
- Группа представитель передоверия организация ИНН и КПП
-
-
Usual
None
false
@@ -2470,12 +2345,6 @@
Группа представитель индивидуальный предприниматель
-
-
- ru
- Группа представитель передоверия индивидуальный предприниматель
-
-
Vertical
Usual
None
@@ -2521,12 +2390,6 @@
Группа представитель индивидуальный предприниматель ИНН и СНИЛС
-
-
- ru
- Группа представитель передоверия индивидуальный предприниматель ИНН и СНИЛС
-
-
Usual
None
false
@@ -2623,12 +2486,6 @@
Группа представитель индивидуальный предприниматель срок документа
-
-
- ru
- Группа представитель передоверия индивидуальный предприниматель срок документа
-
-
Usual
None
false
@@ -2646,8 +2503,9 @@
-
+
Доверенность[0].Документ[0].Передов[0].СвПолучПолн[0].Пред[0].СведИП[0].СведФЛ[0].УдЛичнФЛ[0].expDate
+ false
ru
@@ -2661,8 +2519,8 @@
false
-
-
+
+
@@ -2703,12 +2561,6 @@
Группа несколько представителей передоверия
-
-
- ru
- Группа несколько представителей передоверия
-
-
Vertical
Usual
None
@@ -2842,12 +2694,6 @@
Группа заголовок группы полномочия
-
-
- ru
- Группа заголовок группы полномочия передоверия
-
-
110
false
AlwaysHorizontal
@@ -2915,12 +2761,6 @@
Группа типы полномочий передоверия
-
-
- ru
- Группа типы полномочий передоверия
-
-
110
false
Vertical
@@ -2936,12 +2776,6 @@
Группа текстовые полномочия передоверия
-
-
- ru
- Группа текстовые полномочия передоверия
-
-
Usual
None
false
diff --git a/src/Catalogs/МЧД003/Forms/ЧерновикПередоверияМЧД/Ext/Form/Module.bsl b/src/Catalogs/МЧД003/Forms/ЧерновикПередоверияМЧД/Ext/Form/Module.bsl
index eb9238933..50c6ace43 100644
--- a/src/Catalogs/МЧД003/Forms/ЧерновикПередоверияМЧД/Ext/Form/Module.bsl
+++ b/src/Catalogs/МЧД003/Forms/ЧерновикПередоверияМЧД/Ext/Form/Module.bsl
@@ -274,7 +274,6 @@
КонецПроцедуры
-
#КонецОбласти
#Область ФизическоеЛицо
@@ -483,8 +482,10 @@
ПоляУдостоверяющиеЛичностьФизическогоЛица
= Доверенность[0].Документ[0].Передов[0].СвПолучПолн[0].Пред[0].СведФизЛ[0].СведФЛ[0].УдЛичнФЛ[0];
- МашиночитаемыеДоверенностиКлиент.СброситьОформлениеИОчистититьПоляДокументаУдостоверяющегоЛичность(Элемент,
- ПоляУдостоверяющиеЛичностьФизическогоЛица);
+ МашиночитаемыеДоверенностиКлиент.УстановитьОформлениеНастройкиОтображенияИЗначенияПолейДУЛФЛПоУмолчанию(
+ Элемент.Родитель,
+ ПоляУдостоверяющиеЛичностьФизическогоЛица,
+ Элементы.ДоверенностьДокументПередовСвПолучПолнПредСведФизЛСведФЛУдЛичнФЛСрокДействия);
КонецПроцедуры
@@ -493,8 +494,10 @@
ПоляУдостоверяющиеЛичностьФизическогоЛица
= Доверенность[0].Документ[0].Передов[0].СвПолучПолн[0].Пред[0].СведИП[0].СведФЛ[0].УдЛичнФЛ[0];
- МашиночитаемыеДоверенностиКлиент.СброситьОформлениеИОчистититьПоляДокументаУдостоверяющегоЛичность(Элемент,
- ПоляУдостоверяющиеЛичностьФизическогоЛица);
+ МашиночитаемыеДоверенностиКлиент.УстановитьОформлениеНастройкиОтображенияИЗначенияПолейДУЛФЛПоУмолчанию(
+ Элемент.Родитель,
+ ПоляУдостоверяющиеЛичностьФизическогоЛица,
+ Элементы.ДоверенностьДокументПередовСвПолучПолнПредСведИПСведФЛУдЛичнФЛСрокДействия);
КонецПроцедуры
@@ -503,8 +506,10 @@
ПоляУдостоверяющиеЛичностьФизическогоЛица
= Доверенность[0].Документ[0].Передов[0].СвПолучПолн[0].Пред[0].СведФизЛ[0].СведФЛ[0].УдЛичнФЛ[0];
- МашиночитаемыеДоверенностиКлиент.СброситьОформлениеИОчистититьПоляДокументаУдостоверяющегоЛичность(Элемент,
- ПоляУдостоверяющиеЛичностьФизическогоЛица);
+ МашиночитаемыеДоверенностиКлиент.УстановитьОформлениеНастройкиОтображенияИЗначенияПолейДУЛФЛПоУмолчанию(
+ Элемент.Родитель,
+ ПоляУдостоверяющиеЛичностьФизическогоЛица,
+ Элементы.ДоверенностьДокументПередовСвПолучПолнПредСведФизЛСведФЛУдЛичнФЛСрокДействия);
КонецПроцедуры
@@ -513,8 +518,10 @@
ПоляУдостоверяющиеЛичностьФизическогоЛица
= Доверенность[0].Документ[0].Передов[0].СвПолучПолн[0].Пред[0].СведИП[0].СведФЛ[0].УдЛичнФЛ[0];
- МашиночитаемыеДоверенностиКлиент.СброситьОформлениеИОчистититьПоляДокументаУдостоверяющегоЛичность(Элемент,
- ПоляУдостоверяющиеЛичностьФизическогоЛица);
+ МашиночитаемыеДоверенностиКлиент.УстановитьОформлениеНастройкиОтображенияИЗначенияПолейДУЛФЛПоУмолчанию(
+ Элемент.Родитель,
+ ПоляУдостоверяющиеЛичностьФизическогоЛица,
+ Элементы.ДоверенностьДокументПередовСвПолучПолнПредСведИПСведФЛУдЛичнФЛСрокДействия);
КонецПроцедуры
@@ -1368,6 +1375,9 @@
ЗаполнитьТаблицуТипаСведФЛ(СведенияОФизЛице.СведФЛ[0], СтруктураСведений);
ПоказатьГруппу(Элементы.ГруппаПредставительПередоверия, Элементы.ГруппаПредставительПередоверия_ФизическоеЛицо);
СброситьОформлениеЭлементовФормы(Элементы.ГруппаПредставительПередоверия_ФизическоеЛицо, Истина);
+ УстановитьВидимостьПоляСрокДействия(
+ Элементы.ДоверенностьДокументПередовСвПолучПолнПредСведФизЛСведФЛУдЛичнФЛСрокДействия,
+ СведенияОФизЛице.СведФЛ[0].УдЛичнФЛ[0].КодВидДок);
Иначе
СтруктураСведений = ОбщегоНазначенияБЭД.ДанныеЮрФизЛица(Представитель);
Если ИнтеграцияЭДО.ЭтоФизЛицо(Представитель) Тогда
@@ -1382,6 +1392,9 @@
ПоказатьГруппу(Элементы.ГруппаПредставительПередоверия,
Элементы.ГруппаПредставительПередоверия_ИндивидуальныйПредприниматель);
СброситьОформлениеЭлементовФормы(Элементы.ГруппаПредставительПередоверия_ИндивидуальныйПредприниматель, Истина);
+ УстановитьВидимостьПоляСрокДействия(
+ Элементы.ДоверенностьДокументПередовСвПолучПолнПредСведИПСведФЛУдЛичнФЛСрокДействия,
+ СведенияОбИП.СведФЛ[0].УдЛичнФЛ[0].КодВидДок);
Иначе
СведенияОПредставителе[0].ТипПред = ТипыПредставителей.ЮридическоеЛицо;
СведенияОЮрЛице = СведенияОПредставителе[0].Пред[0].СведОрг[0];
@@ -1426,20 +1439,7 @@
&НаСервереБезКонтекста
Процедура ЗаполнитьТаблицуТипаСведФЛ(СведФЛ, СтруктураСведений)
- СведФЛ.ФИО[0].Фамилия = СтруктураСведений.Фамилия;
- СведФЛ.ФИО[0].Имя = СтруктураСведений.Имя;
- СведФЛ.ФИО[0].Отчество = СтруктураСведений.Отчество;
- СведФЛ.ДатаРожд = СтруктураСведений.ДатаРождения;
-
- Ключи = "КемВыдан, ДатаВыдачи, КодФНС, КодПодразделения, Серия, Номер";
- СведенияУдостоверения = Новый Структура(Ключи);
- ЗаполнитьЗначенияСвойств(СведенияУдостоверения, СтруктураСведений);
- СведФЛ.УдЛичнФЛ[0].ВыдДок = СведенияУдостоверения.КемВыдан;
- СведФЛ.УдЛичнФЛ[0].ДатаДок = СведенияУдостоверения.ДатаВыдачи;
- СведФЛ.УдЛичнФЛ[0].КодВидДок = СведенияУдостоверения.КодФНС;
- СведФЛ.УдЛичнФЛ[0].КодВыдДок = СведенияУдостоверения.КодПодразделения;
- СведФЛ.УдЛичнФЛ[0].СерНомДок = СтрШаблон("%1 %2", СведенияУдостоверения.Серия, СведенияУдостоверения.Номер);
- СведФЛ.УдЛичнФЛ[0].expDate = СтруктураСведений.СрокДействия;
+ МашиночитаемыеДоверенности.ЗаполнитьТаблицуТипаСведФЛ(СведФЛ, СтруктураСведений);
КонецПроцедуры
@@ -1683,17 +1683,10 @@
&НаСервере
Процедура ЗаполнитьСписокВидовДокументовФизическогоЛица()
- Элементы.ДоверенностьДокументПередовСвПолучПолнПредСведФизЛСведФЛУдЛичнФЛКодВидДок.СписокВыбора.Очистить();
- Элементы.ДоверенностьДокументПередовСвПолучПолнПредСведИПСведФЛУдЛичнФЛКодВидДок.СписокВыбора.Очистить();
-
- ВидыДокументов = МашиночитаемыеДоверенностиКлиентСервер.ВидыДокументовФизическихЛиц();
-
- Для Каждого ВидДокумента Из ВидыДокументов Цикл
- Элементы.ДоверенностьДокументПередовСвПолучПолнПредСведФизЛСведФЛУдЛичнФЛКодВидДок.СписокВыбора
- .Добавить(ВидДокумента.Ключ, ВидДокумента.Значение);
- Элементы.ДоверенностьДокументПередовСвПолучПолнПредСведИПСведФЛУдЛичнФЛКодВидДок.СписокВыбора
- .Добавить(ВидДокумента.Ключ, ВидДокумента.Значение);
- КонецЦикла;
+ ЭлементыВыбораВидаДокумента = Новый Массив; // Массив Из ПолеФормы
+ ЭлементыВыбораВидаДокумента.Добавить(Элементы.ДоверенностьДокументПередовСвПолучПолнПредСведФизЛСведФЛУдЛичнФЛКодВидДок);
+ ЭлементыВыбораВидаДокумента.Добавить(Элементы.ДоверенностьДокументПередовСвПолучПолнПредСведИПСведФЛУдЛичнФЛКодВидДок);
+ МашиночитаемыеДоверенности.УстановитьСписокВыбораДокументовФизическихЛиц(ЭлементыВыбораВидаДокумента);
КонецПроцедуры
@@ -4189,4 +4182,12 @@
КонецПроцедуры
+&НаСервере
+Процедура УстановитьВидимостьПоляСрокДействия(ПолеФормыСрокДействия, ЗначениеПоляКодВидДок)
+
+ МашиночитаемыеДоверенностиКлиентСервер.УстановитьВидимостьПоляСрокДействия(ПолеФормыСрокДействия,
+ ЗначениеПоляКодВидДок);
+
+КонецПроцедуры
+
#КонецОбласти
diff --git a/src/Catalogs/МашиночитаемыеДоверенностиКонтрагентов/Forms/ФормаЭлемента/Ext/Form.xml b/src/Catalogs/МашиночитаемыеДоверенностиКонтрагентов/Forms/ФормаЭлемента/Ext/Form.xml
index 39b74f3f7..b0257e309 100644
--- a/src/Catalogs/МашиночитаемыеДоверенностиКонтрагентов/Forms/ФормаЭлемента/Ext/Form.xml
+++ b/src/Catalogs/МашиночитаемыеДоверенностиКонтрагентов/Forms/ФормаЭлемента/Ext/Form.xml
@@ -10,10 +10,18 @@
false
Copy
+ Delete
+ SetDeletionMark
Items
+
+ CommandBarButton
+ Form.Command.УстановитьСнятьПометкуУдаления
+ InAdditionalSubmenu
+
+
@@ -510,9 +518,9 @@
MoveUp
CommandBar
-
+
-
+
- ДеревоПолномочийСОграничениями
@@ -1687,7 +1695,7 @@
ОбновитьСписокПодписанныеДокументы
TextPicture
-
+
ru
@@ -1696,5 +1704,19 @@
ПерепроверитьПодпись
+
+
+
+ ru
+ Пометить на удаление / Снять пометку
+
+
+
+ StdPicture.MarkToDelete
+ true
+
+ УстановитьСнятьПометкуУдаления
+ TextPicture
+
\ No newline at end of file
diff --git a/src/Catalogs/МашиночитаемыеДоверенностиКонтрагентов/Forms/ФормаЭлемента/Ext/Form/Module.bsl b/src/Catalogs/МашиночитаемыеДоверенностиКонтрагентов/Forms/ФормаЭлемента/Ext/Form/Module.bsl
index 053a5ac74..ca07b31ce 100644
--- a/src/Catalogs/МашиночитаемыеДоверенностиКонтрагентов/Forms/ФормаЭлемента/Ext/Form/Module.bsl
+++ b/src/Catalogs/МашиночитаемыеДоверенностиКонтрагентов/Forms/ФормаЭлемента/Ext/Form/Module.bsl
@@ -136,7 +136,7 @@
ПараметрыОшибкиКриптографии.Вставить("ДанныеПодписи", ДанныеПодписи);
ПараметрыОшибкиКриптографии.Вставить("ДанныеСертификата", ДанныеСертификатаПодписи);
ПараметрыОшибкиКриптографии.Вставить("Сертификат", СертификатПодписи);
- КриптографияБЭДСлужебныйКлиент.ОткрытьФормуРасширенногоПредставленияОшибки(Неопределено, ПараметрыОшибкиКриптографии);
+ КриптографияБЭДКлиент.ОткрытьФормуРасширенногоПредставленияОшибки(Неопределено, ПараметрыОшибкиКриптографии);
КонецПроцедуры
&НаКлиенте
@@ -363,6 +363,16 @@
КонецПроцедуры
+&НаКлиенте
+Процедура УстановитьСнятьПометкуУдаления(Команда)
+
+ ТекстВопроса = МашиночитаемыеДоверенностиКлиент.ПолучитьТекстВопросаУстановитьСнятьПометкуУдаления(Объект);
+
+ ОписаниеОповещения = Новый ОписаниеОповещения("УстановитьСнятьПометкуУдаленияПродолжение", ЭтотОбъект, УникальныйИдентификатор);
+ ПоказатьВопрос(ОписаниеОповещения, ТекстВопроса, РежимДиалогаВопрос.ДаНет);
+
+КонецПроцедуры
+
#КонецОбласти
#Область СлужебныеПроцедурыИФункции
@@ -516,7 +526,7 @@
Процедура УправлениеФормой()
Элементы.ФормаОбновить.Видимость = ЗначениеЗаполнено(Объект.СтатусВРеестреФНС);
- Элементы.ФормаПометитьОтозванной.Видимость = Не ЗначениеЗаполнено(Объект.СтатусВРеестреФНС);
+ Элементы.ФормаПометитьОтозванной.Видимость = Не ЗначениеЗаполнено(Объект.СтатусВРеестреФНС) И ЕстьПравоИзмененияМЧД;
Элементы.ФормаПерепроверитьПодпись.Видимость = ЕстьПравоИзмененияМЧД;
Если Объект.Отозвана Тогда
@@ -760,4 +770,25 @@
КонецПроцедуры
+&НаКлиенте
+Процедура УстановитьСнятьПометкуУдаленияПродолжение(Результат, ДополнительныеПараметры) Экспорт
+
+ Если Результат = КодВозвратаДиалога.Нет Тогда
+ Возврат;
+ КонецЕсли;
+
+ УстановитьСнятьПометкуУдаленияНаСервере(Объект.Ссылка, ДополнительныеПараметры);
+ МашиночитаемыеДоверенностиКлиент.ОповеститьОбИзмененииПометкиУдаленияМЧД(
+ ОбщегоНазначенияКлиентСервер.ЗначениеВМассиве(Объект.Ссылка));
+ Прочитать();
+
+КонецПроцедуры
+
+&НаСервереБезКонтекста
+Процедура УстановитьСнятьПометкуУдаленияНаСервере(Знач Ссылка, Знач УникальныйИдентификатор)
+
+ МашиночитаемыеДоверенности.УстановитьСнятьПометкуУдаления(Ссылка, УникальныйИдентификатор);
+
+КонецПроцедуры
+
#КонецОбласти
\ No newline at end of file
diff --git a/src/Catalogs/МашиночитаемыеДоверенностиОрганизаций/Ext/ManagerModule.bsl b/src/Catalogs/МашиночитаемыеДоверенностиОрганизаций/Ext/ManagerModule.bsl
index 410288e48..6f0d31779 100644
--- a/src/Catalogs/МашиночитаемыеДоверенностиОрганизаций/Ext/ManagerModule.bsl
+++ b/src/Catalogs/МашиночитаемыеДоверенностиОрганизаций/Ext/ManagerModule.bsl
@@ -16,7 +16,8 @@
|Подписана, Верна, Отозвана, ДатаОтзыва, ДатаОтправкиЗаявленияНаОтзыв, ВариантЗаполненияПолномочий,
|СовместныеПолномочия, НесколькоПредставителей,
|ИННДоверителяРодительскойДоверенности, НомерДоверенности, НомерРодительскойДоверенности, Представители,
- |ЭлектроннаяПодпись, XMLфайлМЧД, ИмяФайлаЗаявленияНаОтзыв, ФайлЗаявленияНаОтзыв, ЭлектроннаяПодписьЗаявленияНаОтзыв";
+ |ЭлектроннаяПодпись, XMLфайлМЧД, ИмяФайлаЗаявленияНаОтзыв, ФайлЗаявленияНаОтзыв,
+ |ЭлектроннаяПодписьЗаявленияНаОтзыв, ПометкаУдаления";
РеквизитыМЧД = ОбщегоНазначения.ЗначенияРеквизитовОбъекта(МЧД, Реквизиты);
СведенияМЧД = МашиночитаемыеДоверенности.НовыеСведенияМЧД();
СведенияМЧД.Ссылка = МЧД;
@@ -24,7 +25,8 @@
ЗаполнитьЗначенияСвойств(СведенияМЧД, РеквизитыМЧД,
"ДатаВыдачи, ДатаОкончания, СтатусВРеестреФНС, Подписана, Верна, Отозвана,
|ДатаОтзыва, ДатаОтправкиЗаявленияНаОтзыв, СовместныеПолномочия, НесколькоПредставителей,
- |ИННДоверителяРодительскойДоверенности, НомерДоверенности, НомерРодительскойДоверенности, ИмяФайлаЗаявленияНаОтзыв");
+ |ИННДоверителяРодительскойДоверенности, НомерДоверенности, НомерРодительскойДоверенности,
+ |ИмяФайлаЗаявленияНаОтзыв, ПометкаУдаления");
СведенияМЧД.ПолномочияОграничены = Не МашиночитаемыеДоверенности.ЭтоМЧДСПолнымиПолномочиями(МЧД);
СведенияМЧД.ДатаПолученияСведений = РеквизитыМЧД.ДатаОбновленияСтатуса;
СведенияМЧД.ПолномочияУказаныИзКлассификатора = МашиночитаемыеДоверенности.ПолномочияМЧДУказаныИзКлассификатора( ,
diff --git a/src/Catalogs/МашиночитаемыеДоверенностиОрганизаций/Forms/ФормаПросмотра/Ext/Form.xml b/src/Catalogs/МашиночитаемыеДоверенностиОрганизаций/Forms/ФормаПросмотра/Ext/Form.xml
index e081786bd..6b1ab06f0 100644
--- a/src/Catalogs/МашиночитаемыеДоверенностиОрганизаций/Forms/ФормаПросмотра/Ext/Form.xml
+++ b/src/Catalogs/МашиночитаемыеДоверенностиОрганизаций/Forms/ФормаПросмотра/Ext/Form.xml
@@ -13,11 +13,19 @@
useIfNecessary
Copy
+ Delete
Reread
+ SetDeletionMark
Items
+
+ CommandBarButton
+ Form.Command.УстановитьСнятьПометкуУдаления
+ InAdditionalSubmenu
+
+
CommandBarButton
Form.Command.ПеречитатьНаКлиенте
@@ -815,7 +823,7 @@
CommonPicture.ПорядокБЭД
false
-
+
@@ -898,7 +906,7 @@
-
+
ПодписанныеДокументы.ПроверкаВыполненаВРучную
@@ -1992,7 +2000,7 @@
ПроверитьПодписи
-
+
ru
@@ -2042,5 +2050,19 @@
- FunctionalOption.ИспользоватьИнтеграциюЦентраЭДО
+
+
+
+ ru
+ Пометить на удаление / Снять пометку
+
+
+
+ StdPicture.MarkToDelete
+ true
+
+ УстановитьСнятьПометкуУдаления
+ TextPicture
+
\ No newline at end of file
diff --git a/src/Catalogs/МашиночитаемыеДоверенностиОрганизаций/Forms/ФормаПросмотра/Ext/Form/Module.bsl b/src/Catalogs/МашиночитаемыеДоверенностиОрганизаций/Forms/ФормаПросмотра/Ext/Form/Module.bsl
index 4d64fd8cb..822019933 100644
--- a/src/Catalogs/МашиночитаемыеДоверенностиОрганизаций/Forms/ФормаПросмотра/Ext/Form/Module.bsl
+++ b/src/Catalogs/МашиночитаемыеДоверенностиОрганизаций/Forms/ФормаПросмотра/Ext/Form/Module.bsl
@@ -552,6 +552,16 @@
КонецПроцедуры
+&НаКлиенте
+Процедура УстановитьСнятьПометкуУдаления(Команда)
+
+ ТекстВопроса = МашиночитаемыеДоверенностиКлиент.ПолучитьТекстВопросаУстановитьСнятьПометкуУдаления(Объект);
+
+ ОписаниеОповещения = Новый ОписаниеОповещения("УстановитьСнятьПометкуУдаленияПродолжение", ЭтотОбъект, УникальныйИдентификатор);
+ ПоказатьВопрос(ОписаниеОповещения, ТекстВопроса, РежимДиалогаВопрос.ДаНет);
+
+КонецПроцедуры
+
#КонецОбласти
#Область СлужебныеПроцедурыИФункции
@@ -577,7 +587,8 @@
Элементы.ФормаОтозвать.Видимость =
Объект.ДатаОкончания > ОбщегоНазначенияКлиент.ДатаСеанса()
- И Объект.СтатусВРеестреФНС <> ПредопределенноеЗначение("Перечисление.СтатусыМашиночитаемойДоверенностиВРеестреФНС.Отозвано");
+ И Объект.СтатусВРеестреФНС <> ПредопределенноеЗначение("Перечисление.СтатусыМашиночитаемойДоверенностиВРеестреФНС.Отозвано")
+ И ЕстьПравоИзмененияМЧД;
Элементы.ФормаОбновитьСтатусИзРеестраФНС.Видимость = ЗначениеЗаполнено(Объект.СтатусВРеестреФНС);
Элементы.ФормаПерепроверитьПодпись.Видимость = ЕстьПравоИзмененияМЧД;
@@ -1105,4 +1116,25 @@
КонецПроцедуры
+&НаКлиенте
+Процедура УстановитьСнятьПометкуУдаленияПродолжение(Результат, ДополнительныеПараметры) Экспорт
+
+ Если Результат = КодВозвратаДиалога.Нет Тогда
+ Возврат;
+ КонецЕсли;
+
+ УстановитьСнятьПометкуУдаленияНаСервере(Объект.Ссылка, ДополнительныеПараметры);
+ МашиночитаемыеДоверенностиКлиент.ОповеститьОбИзмененииПометкиУдаленияМЧД(
+ ОбщегоНазначенияКлиентСервер.ЗначениеВМассиве(Объект.Ссылка));
+ Прочитать();
+
+КонецПроцедуры
+
+&НаСервереБезКонтекста
+Процедура УстановитьСнятьПометкуУдаленияНаСервере(Знач Ссылка, Знач УникальныйИдентификатор)
+
+ МашиночитаемыеДоверенности.УстановитьСнятьПометкуУдаления(Ссылка, УникальныйИдентификатор);
+
+КонецПроцедуры
+
#КонецОбласти
\ No newline at end of file
diff --git a/src/Catalogs/МестаПримененияСАТУРН/Forms/ДанныеКлассификатора/Ext/Form/Module.bsl b/src/Catalogs/МестаПримененияСАТУРН/Forms/ДанныеКлассификатора/Ext/Form/Module.bsl
index 0ad826b84..2ffe1e45b 100644
--- a/src/Catalogs/МестаПримененияСАТУРН/Forms/ДанныеКлассификатора/Ext/Form/Module.bsl
+++ b/src/Catalogs/МестаПримененияСАТУРН/Forms/ДанныеКлассификатора/Ext/Form/Module.bsl
@@ -313,7 +313,7 @@
&НаСервере
Процедура УправлениеЭлементамиФормы()
-
+
Если ЕстьОшибка Тогда
Элементы.СтраницыФормы.ТекущаяСтраница = Элементы.СтраницаОшибка;
diff --git a/src/Catalogs/МестаПримененияСАТУРН/Forms/ФормаСписка/Ext/Form/Module.bsl b/src/Catalogs/МестаПримененияСАТУРН/Forms/ФормаСписка/Ext/Form/Module.bsl
index 8b1065a19..b744c170c 100644
--- a/src/Catalogs/МестаПримененияСАТУРН/Forms/ФормаСписка/Ext/Form/Module.bsl
+++ b/src/Catalogs/МестаПримененияСАТУРН/Forms/ФормаСписка/Ext/Form/Module.bsl
@@ -16,12 +16,12 @@
Если Отказ Тогда
Возврат;
КонецЕсли;
-
+
НастроитьЭлементыФормыПриСоздании();
УстановитьЗаголовокФормы();
ОбщегоНазначенияСобытияФормИСПереопределяемый.ПриСозданииНаСервере(ЭтотОбъект, Отказ, СтандартнаяОбработка);
-
+
КонецПроцедуры
&НаКлиенте
@@ -117,7 +117,7 @@
СтандартнаяОбработка = Ложь;
ПриВыбореИзЗагруженных();
-
+
КонецПроцедуры
#КонецОбласти
@@ -248,7 +248,7 @@
ПараметрыПоиска.Вставить("Организация", Организация);
Иначе
-
+
Если ТипЗнч(Параметры.ПараметрыПоиска) = Тип("Структура") Тогда
ПараметрыПоиска = Параметры.ПараметрыПоиска;
ОбработатьНайденныеМестаПрименения(1);
@@ -257,7 +257,7 @@
КонецЕсли;
Элементы.Создать.Видимость = Не РежимВыбора И ПараметрыПоиска.Количество() > 0;
-
+
КонецПроцедуры
&НаСервере
@@ -274,7 +274,7 @@
Элементы.СписокВыбрать.Видимость = Ложь;
Элементы.СписокКонтекстноеМенюВыбрать.Видимость = Ложь;
-
+
КонецЕсли;
КонецПроцедуры
@@ -314,7 +314,7 @@
РабочиеСтатусы.Добавить(Перечисления.СтатусыОбъектовСАТУРН.НаСогласовании);
ОтборЭлемента.ПравоеЗначение = РабочиеСтатусы;
-
+
Элемент.Оформление.УстановитьЗначениеПараметра("ЦветТекста", ЦветаСтиля.ЦветНедоступногоТекста);
// Классификатор. Отображение неактивными элементы со статусами кроме Актуально
@@ -328,7 +328,7 @@
ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.НеВСписке;
ОтборЭлемента.ПравоеЗначение = РабочиеСтатусы;
-
+
Элемент.Оформление.УстановитьЗначениеПараметра("ЦветТекста", ЦветаСтиля.ЦветНедоступногоТекста);
КонецПроцедуры
@@ -515,7 +515,7 @@
Элементы.КартинкаИнформацияНеНастроенПоиск.Видимость = Истина;
Элементы.ВыбратьИзКлассификатора.Видимость = Ложь;
-
+
Элементы.СтраницыМестаПримененияСАТУРН.ТекущаяСтраница = Элементы.СтраницаМестаПримененияСАТУРНПоискНеВыполнен;
Если КоличествоСтраницНесколько Тогда
@@ -525,7 +525,7 @@
КонецЕсли;
Иначе
-
+
Элементы.КартинкаИнформацияНеНастроенПоиск.Видимость = Ложь;
Элементы.ВыбратьИзКлассификатора.Видимость = РежимВыбора;
Элементы.МестаПримененияСАТУРНКонтекстноеМенюВыбратьИзКлассификатора.Видимость = РежимВыбора;
@@ -535,7 +535,7 @@
КонецЕсли;
ПредставлениеПараметровПоиска = ПредставлениеОтбора;
-
+
КонецПроцедуры
&НаСервере
@@ -699,13 +699,13 @@
КонецЕсли;
Если РежимВыбора Тогда
-
+
Если ЗначениеЗаполнено(ТекущиеДанные.СкладСАТУРН) Тогда
ОповеститьОВыборе(ТекущиеДанные.СкладСАТУРН);
Иначе
ОткрытьФормуДанныхКлассификатора(ТекущиеДанные.Идентификатор);
КонецЕсли;
-
+
Иначе
ОткрытьФормуДанныхКлассификатора(ТекущиеДанные.Идентификатор);
КонецЕсли;
diff --git a/src/Catalogs/МестаХраненияСАТУРН/Forms/ДанныеКлассификатора/Ext/Form/Module.bsl b/src/Catalogs/МестаХраненияСАТУРН/Forms/ДанныеКлассификатора/Ext/Form/Module.bsl
index 9a5b294e2..821e99dcb 100644
--- a/src/Catalogs/МестаХраненияСАТУРН/Forms/ДанныеКлассификатора/Ext/Form/Module.bsl
+++ b/src/Catalogs/МестаХраненияСАТУРН/Forms/ДанныеКлассификатора/Ext/Form/Module.bsl
@@ -307,7 +307,7 @@
&НаСервере
Процедура УправлениеЭлементамиФормы()
-
+
Если ЕстьОшибка Тогда
Элементы.СтраницыФормы.ТекущаяСтраница = Элементы.СтраницаОшибка;
diff --git a/src/Catalogs/МестаХраненияСАТУРН/Forms/ФормаСписка/Ext/Form/Module.bsl b/src/Catalogs/МестаХраненияСАТУРН/Forms/ФормаСписка/Ext/Form/Module.bsl
index 9a2455f6f..58e97a1f4 100644
--- a/src/Catalogs/МестаХраненияСАТУРН/Forms/ФормаСписка/Ext/Form/Module.bsl
+++ b/src/Catalogs/МестаХраненияСАТУРН/Forms/ФормаСписка/Ext/Form/Module.bsl
@@ -21,7 +21,7 @@
УстановитьЗаголовокФормы();
ОбщегоНазначенияСобытияФормИСПереопределяемый.ПриСозданииНаСервере(ЭтотОбъект, Отказ, СтандартнаяОбработка);
-
+
КонецПроцедуры
&НаКлиенте
@@ -53,7 +53,7 @@
Иначе
Элементы.ВыбратьИзКлассификатора.КнопкаПоУмолчанию = Истина;
КонецЕсли;
-
+
КонецЕсли;
Если Не ПереключениеМеждуСтраницамиВыполнялось
@@ -118,7 +118,7 @@
СтандартнаяОбработка = Ложь;
ПриВыбореИзЗагруженных();
-
+
КонецПроцедуры
#КонецОбласти
@@ -250,7 +250,7 @@
КонецЕсли;
Элементы.Создать.Видимость = Не РежимВыбора И ПараметрыПоиска.Количество() > 0;
-
+
КонецПроцедуры
&НаСервере
@@ -267,7 +267,7 @@
Элементы.СписокВыбрать.Видимость = Ложь;
Элементы.СписокКонтекстноеМенюВыбрать.Видимость = Ложь;
-
+
КонецЕсли;
КонецПроцедуры
@@ -307,7 +307,7 @@
РабочиеСтатусы.Добавить(Перечисления.СтатусыОбъектовСАТУРН.НаСогласовании);
ОтборЭлемента.ПравоеЗначение = РабочиеСтатусы;
-
+
Элемент.Оформление.УстановитьЗначениеПараметра("ЦветТекста", ЦветаСтиля.ЦветНедоступногоТекста);
// Классификатор. Отображение неактивными элементы со статусами кроме Актуально
@@ -321,9 +321,9 @@
ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.НеВСписке;
ОтборЭлемента.ПравоеЗначение = РабочиеСтатусы;
-
+
Элемент.Оформление.УстановитьЗначениеПараметра("ЦветТекста", ЦветаСтиля.ЦветНедоступногоТекста);
-
+
// Загруженные. Вывод подтипа места хранения: Склад временного хранения
Элемент = УсловноеОформление.Элементы.Добавить();
@@ -508,7 +508,7 @@
ПараметрыПоиска = Результат;
ОбработатьНайденныеМестаХранения(1);
-
+
Элементы.Создать.Видимость = ПараметрыПоиска.Количество() > 0;
КонецПроцедуры
@@ -698,7 +698,7 @@
КонецЕсли;
Иначе
-
+
Элементы.КартинкаИнформацияНеНастроенПоиск.Видимость = Ложь;
Элементы.ВыбратьИзКлассификатора.Видимость = РежимВыбора;
Элементы.МестаХраненияСАТУРНКонтекстноеМенюВыбратьИзКлассификатора.Видимость = РежимВыбора;
@@ -708,7 +708,7 @@
КонецЕсли;
ПредставлениеПараметровПоиска = ПредставлениеОтбора;
-
+
КонецПроцедуры
&НаСервере
@@ -872,13 +872,13 @@
КонецЕсли;
Если РежимВыбора Тогда
-
+
Если ЗначениеЗаполнено(ТекущиеДанные.СкладСАТУРН) Тогда
ОповеститьОВыборе(ТекущиеДанные.СкладСАТУРН);
Иначе
ОткрытьФормуДанныхКлассификатора(ТекущиеДанные.Идентификатор);
КонецЕсли;
-
+
Иначе
ОткрытьФормуДанныхКлассификатора(ТекущиеДанные.Идентификатор);
КонецЕсли;
diff --git a/src/Catalogs/Назначения/Ext/ManagerModule.bsl b/src/Catalogs/Назначения/Ext/ManagerModule.bsl
index f57cb9c85..57eaa7949 100644
--- a/src/Catalogs/Назначения/Ext/ManagerModule.bsl
+++ b/src/Catalogs/Назначения/Ext/ManagerModule.bsl
@@ -571,6 +571,7 @@
Поля.Добавить("Заказ");
Поля.Добавить("Договор");
Поля.Добавить("Партнер");
+ Поля.Добавить("НаправлениеДеятельности");
Поля.Добавить("ТипНазначения");
КонецПроцедуры
@@ -586,19 +587,22 @@
ЭтоОсновнойЯзык = Ложь;
#Если Клиент Тогда
ЭтоОсновнойЯзык = ОбщегоНазначенияУТКлиентПовтИсп.ЭтоОсновнойЯзык();
+ КодОсновногоЯзыка = ОбщегоНазначенияКлиент.КодОсновногоЯзыка();
+
#Иначе
ЭтоОсновнойЯзык = ОбщегоНазначенияУТПовтИсп.ЭтоОсновнойЯзык();
+ КодОсновногоЯзыка = ОбщегоНазначения.КодОсновногоЯзыка();
#КонецЕсли
Если Не ЭтоОсновнойЯзык Тогда
+ ПредставлениеТипаНаОсновномЯзыке = НазначенияКлиентСервер.ПредставлениеТипаНазначения(Данные, КодОсновногоЯзыка);
+ ПредставлениеТипаНаОсновномЯзыке = "(" + ПредставлениеТипаНаОсновномЯзыке + ")";
+
ПредставлениеТипа = НазначенияКлиентСервер.ПредставлениеТипаНазначения(Данные, "");
+ ПредставлениеТипа = "(" + ПредставлениеТипа + ")";
Если ПредставлениеТипа <> Неопределено Тогда
-
- ПозицияОткрывающейСкобки = СтрНайти(Представление, "(", НаправлениеПоиска.СКонца);
- ОбрезанноеПредставление = Лев(Представление, ПозицияОткрывающейСкобки);
- Представление = ОбрезанноеПредставление + ПредставлениеТипа + ")";
-
+ Представление = СтрЗаменить(Представление, ПредставлениеТипаНаОсновномЯзыке, ПредставлениеТипа);
КонецЕсли;
КонецЕсли;
diff --git a/src/Catalogs/НастройкиОбменСБанками/Forms/ПомощникСозданияНастройкиОбмена/Ext/Form/Module.bsl b/src/Catalogs/НастройкиОбменСБанками/Forms/ПомощникСозданияНастройкиОбмена/Ext/Form/Module.bsl
index eb073ba93..598c21ae1 100644
--- a/src/Catalogs/НастройкиОбменСБанками/Forms/ПомощникСозданияНастройкиОбмена/Ext/Form/Module.bsl
+++ b/src/Catalogs/НастройкиОбменСБанками/Forms/ПомощникСозданияНастройкиОбмена/Ext/Form/Module.bsl
@@ -2258,7 +2258,6 @@
Процедура ОтобразитьСекретныеДанные(Элемент, ИмяРеквизита)
Элемент.РежимПароля = Не Элемент.РежимПароля;
- ЭтотОбъект[ИмяРеквизита] = Элемент.ТекстРедактирования;
Если Элемент.РежимПароля Тогда
Элемент.КартинкаКнопкиВыбора = БиблиотекаКартинок.ВводимыеСимволыВидны;
Иначе
@@ -2360,109 +2359,6 @@
КонецПроцедуры
-&НаКлиенте
-Процедура ПроверитьСертификатЦиклПослеСозданияМенеджераКриптографии(Результат, Контекст) Экспорт
-
- Если ТипЗнч(Результат) <> Тип("МенеджерКриптографии") Тогда
- Контекст.ОшибкаНаКлиенте.Ошибки.Добавить(Результат);
- ПроверитьСертификатЦиклНачало(Контекст);
- Возврат;
- КонецЕсли;
- Контекст.Вставить("МенеджерКриптографии", Результат);
-
- Контекст.МенеджерКриптографии.ПарольДоступаКЗакрытомуКлючу = ПарольСертификата;
-
- Оповещение = Новый ОписаниеОповещения("ПроверитьСертификатЦиклПослеПодписания", ЭтотОбъект, Контекст,
- "ПроверитьСертификатЦиклПослеОшибкиПодписания", ЭтотОбъект);
-
- Контекст.МенеджерКриптографии.НачатьПодписывание(
- Оповещение, Контекст.ДвоичныеДанныеСертификата, Контекст.СертификатКриптографии);
-
-КонецПроцедуры
-
-&НаКлиенте
-Процедура ПроверитьСертификатЦиклПослеПодписания(ДанныеПодписи, Контекст) Экспорт
-
- ПредставлениеОшибки = "";
- Попытка
- ПустыеДанныеПодписи(ДанныеПодписи, ПредставлениеОшибки);
- Исключение
- ИнформацияОбОшибке = ИнформацияОбОшибке();
- ПредставлениеОшибки = КраткоеПредставлениеОшибки(ИнформацияОбОшибке);
- КонецПопытки;
-
- Если ЗначениеЗаполнено(ПредставлениеОшибки) Тогда
- ЗаполнитьОшибкуПодписания(Контекст.ОшибкаНаКлиенте, Контекст.ОписаниеОшибки, Контекст.ОписаниеПрограммы,
- ПредставлениеОшибки, ИнформацияОбОшибке = Неопределено);
- ПроверитьСертификатЦиклНачало(Контекст);
- Возврат;
- КонецЕсли;
-
- Результат = Новый Структура("Программа", Контекст.ОписаниеПрограммы.Ссылка);
- ВыполнитьОбработкуОповещения(Контекст.Оповещение, Результат);
-
-КонецПроцедуры
-
-&НаКлиенте
-Функция ПустыеДанныеПодписи(ДанныеПодписи, ОписаниеОшибки)
-
- Если Не ЗначениеЗаполнено(ДанныеПодписи) Тогда
- ОписаниеОшибки = НСтр("ru = 'Сформирована пустая подпись.'");
- Возврат Истина;
- КонецЕсли;
-
- Возврат Ложь;
-
-КонецФункции
-
-&НаКлиенте
-Процедура ПроверитьСертификатЦиклПослеОшибкиПодписания(ИнформацияОбОшибке, СтандартнаяОбработка, Контекст) Экспорт
-
- СтандартнаяОбработка = Ложь;
-
- ЗаполнитьОшибкуПодписания(Контекст.ОшибкаНаКлиенте, Контекст.ОписаниеОшибки, Контекст.ОписаниеПрограммы,
- КраткоеПредставлениеОшибки(ИнформацияОбОшибке), Ложь);
-
- ПроверитьСертификатЦиклНачало(Контекст);
-
-КонецПроцедуры
-
-&НаКлиенте
-Процедура ПроверитьСертификатЦиклНачало(Контекст)
-
- Если Контекст.ОписанияПрограмм.Количество() <= Контекст.Индекс + 1 Тогда
- ВыполнитьОбработкуОповещения(Контекст.Оповещение);
- Возврат;
- КонецЕсли;
- Контекст.Индекс = Контекст.Индекс + 1;
- Контекст.Вставить("ОписаниеПрограммы", Контекст.ОписанияПрограмм[Контекст.Индекс]);
-
- Оповещение = Новый ОписаниеОповещения(
- "ПроверитьСертификатЦиклПослеСозданияМенеджераКриптографии", ЭтотОбъект, Контекст);
-
- ЭлектроннаяПодписьКлиент.СоздатьМенеджерКриптографии(Оповещение, "", Ложь, Контекст.ОписаниеПрограммы.Ссылка);
-
-КонецПроцедуры
-
-&НаКлиенте
-Процедура ПроверитьСертификатПослеИнициализацииСертификата(СертификатКриптографии, Контекст) Экспорт
-
- Контекст.Вставить("СертификатКриптографии", СертификатКриптографии);
-
- Контекст.Вставить("ОписаниеОшибки", "");
- Контекст.Вставить("ОшибкаНаКлиенте", Новый Структура);
-
- Контекст.ОшибкаНаКлиенте.Вставить("ОписаниеОшибки", "");
- Контекст.ОшибкаНаКлиенте.Вставить("Ошибки", Новый Массив);
-
- Контекст.Вставить("ОписанияПрограмм",
- СтандартныеПодсистемыКлиент.ПараметрыРаботыКлиента().ЭлектроннаяПодпись.ОбщиеНастройки.ОписанияПрограмм);
- Контекст.Вставить("Индекс", -1);
-
- ПроверитьСертификатЦиклНачало(Контекст);
-
-КонецПроцедуры
-
&НаКлиенте
Процедура ПроверитьОчереднуюПрограммуКриптографии(МассивПрограмм, ПрограммыКриптографии, Оповещение, МассивПрограммДляСоздания)
@@ -2544,41 +2440,6 @@
КонецПроцедуры
-&НаКлиенте
-Процедура ПодобратьПрограммуКриптографииДляСертификата(Оповещение, ДвоичныеДанныеСертификата)
-
- ДополнительныеПараметры = Новый Структура;
- ДополнительныеПараметры.Вставить("ДвоичныеДанныеСертификата", ДвоичныеДанныеСертификата);
- ДополнительныеПараметры.Вставить("Оповещение", Оповещение);
-
- СертификатКриптографии = Новый СертификатКриптографии;
- Оповещение = Новый ОписаниеОповещения(
- "ПроверитьСертификатПослеИнициализацииСертификата", ЭтотОбъект, ДополнительныеПараметры);
- СертификатКриптографии.НачатьИнициализацию(Оповещение, ДвоичныеДанныеСертификата);
-
-КонецПроцедуры
-
-&НаКлиентеНаСервереБезКонтекста
-Процедура ЗаполнитьОшибкуПодписания(Ошибка, ОписаниеОшибки, ОписаниеПрограммы, ПредставлениеОшибки, ПустыеДанные)
-
- ТекущаяОшибка = Новый Структура;
- ТекущаяОшибка.Вставить("Описание", ПредставлениеОшибки);
-
- Если Не ПустыеДанные Тогда
- ТекущаяОшибка.Вставить("НастройкаПрограмм", Истина);
- ТекущаяОшибка.Вставить("Инструкция", Истина);
- КонецЕсли;
-
- Ошибка.Ошибки.Добавить(ТекущаяОшибка);
-
- ОписаниеОшибки = ОписаниеОшибки + Символы.ПС + Символы.ПС + СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
- НСтр("ru = 'Не удалось пройти проверку подписания с помощью программы %1 по причине:
- |%2'"),
- ОписаниеПрограммы.Представление,
- ПредставлениеОшибки);
-
-КонецПроцедуры
-
&НаКлиенте
Процедура ЗаполнитьПрограммыКриптографии(Оповещение)
@@ -3107,30 +2968,29 @@
КонецФункции
&НаКлиенте
-Процедура ПодобратьПрограммуКриптографииПослеПолученияДвоичныхДанныхСертификата(
- ВыгруженныеДанные,
- ДополнительныеПараметры) Экспорт
+Процедура ЗаписатьСертификатВСправочник(ВыгруженныеДанные, ДополнительныеПараметры) Экспорт
ПараметрыОбработки = Новый Структура;
ПараметрыОбработки.Вставить("ДанныеСертификата", ВыгруженныеДанные);
- Оповещение = Новый ОписаниеОповещения(
- "СохранитьСертификатВИнформационнойБазеПослеОпределенияПрограммыКриптографии", ЭтотОбъект, ПараметрыОбработки);
+ ОбработчикЗавершения = Новый ОписаниеОповещения("ПослеЗаписиСертификатаВСправочник", ЭтотОбъект, ПараметрыОбработки);
+
+ ПараметрыЗаписиСертификата = ЭлектроннаяПодписьКлиент.ПараметрыЗаписиСертификата();
+ ПредставлениеСертификата = ЭлектроннаяПодписьКлиент.ПредставлениеСертификата(
+ ДополнительныеПараметры.СертификатКриптографии);
+ ПараметрыЗаписиСертификата.Наименование = ПредставлениеСертификата;
+ ПараметрыЗаписиСертификата.Организация = Организация;
+ ЭлектроннаяПодписьКлиент.ЗаписатьСертификатВСправочник(ОбработчикЗавершения, ВыгруженныеДанные, ПарольСертификата,
+ Ложь, ПараметрыЗаписиСертификата);
- ПодобратьПрограммуКриптографииДляСертификата(Оповещение, ВыгруженныеДанные);
-
КонецПроцедуры
&НаКлиенте
-Процедура СохранитьСертификатВИнформационнойБазеПослеОпределенияПрограммыКриптографии(
- Результат,
- ДополнительныеПараметры) Экспорт
+Процедура ПослеЗаписиСертификатаВСправочник(Результат, ДополнительныеПараметры) Экспорт
Если Результат = Неопределено Тогда // не удалось подобрать программу криптографии
Если СоздаватьЭлектронныеПодписиНаСервере Тогда
ПопыткаСозданияСертификатаНаСервере()
Иначе
- ТекстСообщения = НСтр("ru = 'Не удалось найти подходящую программу криптографии для указанного сертификата.'");
- ОбщегоНазначенияКлиент.СообщитьПользователю(ТекстСообщения);
Если СпособСозданияНастройки = 0 Тогда // автоматическое получение с сервера банка
ОбработатьРезультатПолученияНастроекССервераБанка(Ложь);
Иначе // ручное создание настройки обмена, переключаем на предыдущий шаг
@@ -3138,8 +2998,7 @@
КонецЕсли;
КонецЕсли;
Иначе
- СертификатАутентификацииСсылка = НайтиСоздатьСертификатЭП(
- ДополнительныеПараметры.ДанныеСертификата, Организация, Результат.Программа);
+ СертификатАутентификацииСсылка = Результат;
Если Не ЗначениеЗаполнено(СертификатАутентификацииСсылка) Тогда
Если СпособСозданияНастройки = 0 Тогда // автоматическое получение с сервера банка
ОбработатьРезультатПолученияНастроекССервераБанка(Ложь);
@@ -3154,13 +3013,6 @@
КонецПроцедуры
-&НаСервереБезКонтекста
-Функция НайтиСоздатьСертификатЭП(ДанныеСертификата, Организация, ИнформацияОПрограммеКриптографии)
-
- Возврат КриптографияБЭД.НайтиСоздатьСертификатЭП(ДанныеСертификата, Организация, ИнформацияОПрограммеКриптографии);
-
-КонецФункции
-
&НаКлиенте
Процедура ВыгрузитьДанныеСертификатаПослеПолучения(СертификатКриптографии, ДополнительныеПараметры) Экспорт
@@ -3177,8 +3029,9 @@
Возврат;
КонецЕсли;
- Оповещение = Новый ОписаниеОповещения(
- "ПодобратьПрограммуКриптографииПослеПолученияДвоичныхДанныхСертификата", ЭтотОбъект);
+ ПараметрыВыгрузки = Новый Структура;
+ ПараметрыВыгрузки.Вставить("СертификатКриптографии", СертификатКриптографии);
+ Оповещение = Новый ОписаниеОповещения("ЗаписатьСертификатВСправочник", ЭтотОбъект, ПараметрыВыгрузки);
СертификатКриптографии.НачатьВыгрузку(Оповещение);
@@ -6018,80 +5871,20 @@
Попытка
ЭД = ОбменСБанкамиСлужебный.XDTOДанныеФайлаНастроек(АдресФайла);
Исключение
- ОбщегоНазначения.СообщитьПользователю(КраткоеПредставлениеОшибки(ИнформацияОбОшибке()));
+ ОбщегоНазначения.СообщитьПользователю(ОбработкаОшибок.КраткоеПредставлениеОшибки(ИнформацияОбОшибке()));
+ Возврат Неопределено;
+ КонецПопытки;
+
+ Попытка
+ СсылкаНаОрганизацию = ОбменСБанкамиСлужебный.ОпределитьОрганизациюНастройкиОбмена(ЭД, Организация);
+ Исключение
+ ТекстСообщения = ОбработкаОшибок.ПредставлениеОшибкиДляПользователя(ИнформацияОбОшибке());
+ ОбщегоНазначения.СообщитьПользователю(ТекстСообщения);
Возврат Неопределено;
КонецПопытки;
ЭтоНастройкиСбербанка = ЭД.Свойства().Получить("Data") = Неопределено;
- ИННОрганизацииФайла = ?(ЭтоНастройкиСбербанка, ЗначениеСвойстваXDTO(ЭД, "Customer.INN"),
- ЗначениеСвойстваXDTO(ЭД, "Recipient.inn"));
-
- ИННОрганизацииБазы = ОбщегоНазначения.ЗначениеРеквизитаОбъекта(Организация,
- ОбменСБанкамиСлужебный.ИмяПрикладногоРеквизита("ИННОрганизации"));
-
- Если ИННОрганизацииБазы = ИННОрганизацииФайла Тогда
- СсылкаНаОрганизацию = Организация;
- Иначе
- СтруктураПоискаОрганизации = Новый Структура;
-
- Если ЗначениеЗаполнено(ИННОрганизацииФайла) Тогда
- СтруктураПоискаОрганизации.Вставить("ИНН", ИННОрганизацииФайла);
- КонецЕсли;
-
- КППОрганизации = ?(ЭтоНастройкиСбербанка, ЗначениеСвойстваXDTO(ЭД, "Customer.KPP"),
- ЗначениеСвойстваXDTO(ЭД, "Recipient.kpp"));
- Если КППОрганизации = "000000000" Тогда // Для Сбербанка
- КППОрганизации = "0";
- КонецЕсли;
- Если ЗначениеЗаполнено(КППОрганизации) Тогда
- СтруктураПоискаОрганизации.Вставить("КПП", КППОрганизации);
- КонецЕсли;
- НаименованиеОрганизации = ?(ЭтоНастройкиСбербанка, ЗначениеСвойстваXDTO(ЭД, "Customer.Name"),
- ЗначениеСвойстваXDTO(ЭД, "Recipient.name"));
- Если ЗначениеЗаполнено(НаименованиеОрганизации) Тогда
- СтруктураПоискаОрганизации.Вставить("Наименование", НаименованиеОрганизации);
- КонецЕсли;
-
- Если СтруктураПоискаОрганизации.Количество() > 0 Тогда
- СсылкаНаОрганизацию = ОбщегоНазначенияБЭД.НайтиСсылку("Организации", , СтруктураПоискаОрганизации);
- ИначеЕсли НЕ ЗначениеЗаполнено(Организация) Тогда
- ТекстСообщения = НСтр("ru = 'В файле настроек нет информации об организации.
- |Обратитесь в свой банк.'");
- ОбщегоНазначения.СообщитьПользователю(ТекстСообщения);
- Возврат Неопределено;
- Иначе
- СсылкаНаОрганизацию = Организация;
- КонецЕсли;
- КонецЕсли;
-
- Если Не ЗначениеЗаполнено(СсылкаНаОрганизацию) Тогда
- ТекстСообщения = НСтр("ru = 'Файл содержит настройки для неизвестной организации: %1%2%3'");
- Если СтруктураПоискаОрганизации.Свойство("ИНН") Тогда
- ТекстИНН = Символы.ПС + НСтр("ru = 'ИНН: %1'");
- ТекстИНН = СтрШаблон(ТекстИНН, СтруктураПоискаОрганизации.ИНН);
- Иначе
- ТекстИНН = "";
- КонецЕсли;
- Если СтруктураПоискаОрганизации.Свойство("КПП") Тогда
- ТекстКПП = Символы.ПС + НСтр("ru = 'КПП: %1'");
- ТекстКПП = СтрШаблон(ТекстКПП, СтруктураПоискаОрганизации.КПП);
- Иначе
- ТекстКПП = "";
- КонецЕсли;
- Если СтруктураПоискаОрганизации.Свойство("Наименование") Тогда
- ТекстНаименование = Символы.ПС + НСтр("ru = 'Наименование: %1'");
- ТекстНаименование = СтрШаблон(
- ТекстНаименование, СтруктураПоискаОрганизации.Наименование);
- Иначе
- ТекстНаименование = "";
- КонецЕсли;
- ТекстСообщения = СтрШаблон(
- ТекстСообщения, ТекстИНН, ТекстКПП, ТекстНаименование);
- ОбщегоНазначения.СообщитьПользователю(ТекстСообщения);
- Возврат Неопределено;
- КонецЕсли;
-
НаименованиеБанка = "";
СтруктураПоискаБанка = Новый Структура;
БИК = ?(ЭтоНастройкиСбербанка, ЗначениеСвойстваXDTO(ЭД, "Bank.BIC"), ЗначениеСвойстваXDTO(ЭД, "Sender.bic"));
diff --git a/src/Catalogs/НастройкиРМК/Ext/ObjectModule.bsl b/src/Catalogs/НастройкиРМК/Ext/ObjectModule.bsl
index c1042551b..56c06a363 100644
--- a/src/Catalogs/НастройкиРМК/Ext/ObjectModule.bsl
+++ b/src/Catalogs/НастройкиРМК/Ext/ObjectModule.bsl
@@ -95,7 +95,24 @@
ОбщегоНазначенияКлиентСервер.ПутьКТабличнойЧасти("ЭквайринговыеТерминалы", СтрокаТЧ.НомерСтроки, "ПодключаемоеОборудованиеККТ"),
,
Отказ);
-
+
+ Иначе
+ НайденныеКассы = Кассы.НайтиСтроки(Новый Структура("ПодключаемоеОборудование", СтрокаТЧ.ПодключаемоеОборудованиеККТ));
+ НайденныеКассыККМ = КассыККМ.НайтиСтроки(Новый Структура("ПодключаемоеОборудование", СтрокаТЧ.ПодключаемоеОборудованиеККТ));
+ Если НайденныеКассыККМ.Количество() = 0
+ И НайденныеКассы.Количество() = 0 Тогда
+
+ ТекстОшибки = НСтр("ru='Настройте кассу ККМ или кассу предприятия, связанную с ККТ эквайрингового терминала'");
+ АдресОшибки = НСтр("ru='в строке %НомерСтроки% списка ""Эквайринговые терминалы""'");
+ АдресОшибки = СтрЗаменить(АдресОшибки, "%НомерСтроки%", СтрокаТЧ.НомерСтроки);
+
+ ОбщегоНазначенияКлиентСервер.СообщитьПользователю(
+ ТекстОшибки + " " + АдресОшибки,
+ ЭтотОбъект,
+ ОбщегоНазначенияКлиентСервер.ПутьКТабличнойЧасти("ЭквайринговыеТерминалы", СтрокаТЧ.НомерСтроки, "ПодключаемоеОборудованиеККТ"),
+ ,
+ Отказ);
+ КонецЕсли;
КонецЕсли;
КонецЦикла;
diff --git a/src/Catalogs/НастройкиРМК/Forms/ФормаЭлемента/Ext/Form.xml b/src/Catalogs/НастройкиРМК/Forms/ФормаЭлемента/Ext/Form.xml
index 4e7415660..c00f7cdbe 100644
--- a/src/Catalogs/НастройкиРМК/Forms/ФормаЭлемента/Ext/Form.xml
+++ b/src/Catalogs/НастройкиРМК/Forms/ФормаЭлемента/Ext/Form.xml
@@ -318,6 +318,7 @@
КассыККМВыбор
+ КассыККМПередУдалением
diff --git a/src/Catalogs/НастройкиРМК/Forms/ФормаЭлемента/Ext/Form/Module.bsl b/src/Catalogs/НастройкиРМК/Forms/ФормаЭлемента/Ext/Form/Module.bsl
index 52ff0d78c..45167f8dc 100644
--- a/src/Catalogs/НастройкиРМК/Forms/ФормаЭлемента/Ext/Form/Module.bsl
+++ b/src/Catalogs/НастройкиРМК/Forms/ФормаЭлемента/Ext/Form/Module.bsl
@@ -482,6 +482,7 @@
//++ Локализация
+ ОчиститьСообщения();
Если Объект.ВидСсылкиСБП = ПредопределенноеЗначение("Перечисление.ВидыСсылокСБП.КассоваяСсылкаСБП") Тогда
Отказ = Истина;
@@ -592,6 +593,33 @@
КонецПроцедуры
+&НаКлиенте
+Процедура КассыККМПередУдалением(Элемент, Отказ)
+
+ ОчиститьСообщения();
+ ТекущаяСтрока = Элементы.КассыККМ.ТекущиеДанные;
+ Если ТекущаяСтрока <> Неопределено
+ И ЗначениеЗаполнено(ТекущаяСтрока.ПодключаемоеОборудование) Тогда
+ НайденныеЭквайринговыеТерминалы = Объект.ЭквайринговыеТерминалы.НайтиСтроки(Новый Структура("ПодключаемоеОборудованиеККТ", ТекущаяСтрока.ПодключаемоеОборудование));
+ Если НайденныеЭквайринговыеТерминалы.Количество() > 0 Тогда
+ НайденныеКассы = Объект.Кассы.НайтиСтроки(Новый Структура("ПодключаемоеОборудование", ТекущаяСтрока.ПодключаемоеОборудование));
+ НайденныеКассыККМ = Объект.КассыККМ.НайтиСтроки(Новый Структура("ПодключаемоеОборудование", ТекущаяСтрока.ПодключаемоеОборудование));
+ Если НайденныеКассы.Количество() = 0 И
+ НайденныеКассыККМ.Количество() = 1 Тогда
+ Отказ = Истина;
+
+ СтрокиСообщения = Новый Массив;
+ ШаблонСообщения = НСтр("ru = 'Есть настройка для эквайрингового терминала ""%1"", связанная с оборудованием ""%2"".'");
+ СтрокиСообщения.Добавить(СтрШаблон(ШаблонСообщения, НайденныеЭквайринговыеТерминалы[0].ЭквайринговыйТерминал,
+ ТекущаяСтрока.ПодключаемоеОборудование));
+ СтрокиСообщения.Добавить(НСтр("ru = 'Сначала на закладке ""Эквайринговые терминалы"" нужно удалить эту настройку.'"));
+ ОбщегоНазначенияКлиент.СообщитьПользователю(СтрСоединить(СтрокиСообщения, Символ(32)));
+ КонецЕсли;
+ КонецЕсли;
+ КонецЕсли;
+
+КонецПроцедуры
+
#КонецОбласти
#Область ОбработчикиСобытийЭлементовТаблицыФормыКассы
diff --git a/src/Catalogs/НастройкиРегламентныхЗаданийВЕТИС/Forms/ФормаНастроек/Ext/Form/Module.bsl b/src/Catalogs/НастройкиРегламентныхЗаданийВЕТИС/Forms/ФормаНастроек/Ext/Form/Module.bsl
index acc5cab24..13b747e36 100644
--- a/src/Catalogs/НастройкиРегламентныхЗаданийВЕТИС/Forms/ФормаНастроек/Ext/Form/Module.bsl
+++ b/src/Catalogs/НастройкиРегламентныхЗаданийВЕТИС/Forms/ФормаНастроек/Ext/Form/Module.bsl
@@ -14,7 +14,7 @@
ВосстановитьНастройкиФормы();
ЗаполнитьДанныеФормы();
УстановитьВидимостьДоступность(ЭтотОбъект);
-
+
ОбщегоНазначенияСобытияФормИСПереопределяемый.ПриСозданииНаСервере(ЭтотОбъект, Отказ, СтандартнаяОбработка);
КонецПроцедуры
@@ -46,7 +46,7 @@
&НаКлиенте
Процедура РасписаниеСинхронизацииКлассификаторовСтрокойНажатие(Элемент, СтандартнаяОбработка)
-
+
СтандартнаяОбработка = Ложь;
ДиалогРасписания = Новый ДиалогРасписанияРегламентногоЗадания(РасписаниеСинхронизацииКлассификаторов);
@@ -1458,7 +1458,7 @@
ЦветаСтиля.ЦветТекстаТребуетВниманияГосИС));
ПредприятияБезНастроекНадпись = Новый ФорматированнаяСтрока(МассивСтрок);
-
+
КонецПроцедуры
&НаКлиенте
diff --git a/src/Catalogs/ОтветственныеЗаАктуализациюТокеновАвторизацииИСМП/Forms/ФормаЭлемента/Ext/Form/Module.bsl b/src/Catalogs/ОтветственныеЗаАктуализациюТокеновАвторизацииИСМП/Forms/ФормаЭлемента/Ext/Form/Module.bsl
index 510394f3b..435c6b76f 100644
--- a/src/Catalogs/ОтветственныеЗаАктуализациюТокеновАвторизацииИСМП/Forms/ФормаЭлемента/Ext/Form/Module.bsl
+++ b/src/Catalogs/ОтветственныеЗаАктуализациюТокеновАвторизацииИСМП/Forms/ФормаЭлемента/Ext/Form/Module.bsl
@@ -203,7 +203,7 @@
ОбновитьПредставленияНаФорме();
УправлениеЭлементамиФормы(ЭтотОбъект);
-
+
КонецПроцедуры
&НаСервере
diff --git a/src/Catalogs/ПартииСАТУРН/Forms/ДанныеКлассификатора/Ext/Form/Module.bsl b/src/Catalogs/ПартииСАТУРН/Forms/ДанныеКлассификатора/Ext/Form/Module.bsl
index 2030878ff..68a5c36d2 100644
--- a/src/Catalogs/ПартииСАТУРН/Forms/ДанныеКлассификатора/Ext/Form/Module.bsl
+++ b/src/Catalogs/ПартииСАТУРН/Forms/ДанныеКлассификатора/Ext/Form/Module.bsl
@@ -11,7 +11,7 @@
ОбработатьПереданныеПараметры(Отказ);
УправлениеЭлементамиФормы();
СтандартныеПодсистемыСервер.СброситьРазмерыИПоложениеОкна(ЭтотОбъект);
-
+
ОбщегоНазначенияСобытияФормИСПереопределяемый.ПриСозданииНаСервере(ЭтотОбъект, Отказ, СтандартнаяОбработка);
КонецПроцедуры
@@ -492,7 +492,7 @@
&НаСервере
Процедура УправлениеЭлементамиФормы()
-
+
Если ЕстьОшибка Тогда
Элементы.СтраницыФормы.ТекущаяСтраница = Элементы.СтраницаОшибка;
diff --git a/src/Catalogs/ПартииСАТУРН/Forms/ФормаСписка/Ext/Form/Module.bsl b/src/Catalogs/ПартииСАТУРН/Forms/ФормаСписка/Ext/Form/Module.bsl
index cf508dc57..fe3acfdd7 100644
--- a/src/Catalogs/ПартииСАТУРН/Forms/ФормаСписка/Ext/Form/Module.bsl
+++ b/src/Catalogs/ПартииСАТУРН/Forms/ФормаСписка/Ext/Form/Module.bsl
@@ -101,7 +101,7 @@
СтандартнаяОбработка = Ложь;
ПриВыбореИзЗагруженных();
-
+
КонецПроцедуры
#КонецОбласти
@@ -173,7 +173,7 @@
Элементы.ПоискНеНастроен.ОтображениеСостояния.ДополнительныйРежимОтображения = ДополнительныйРежимОтображения.Неактуальность;
Элементы.ПоискНеНастроен.ОтображениеСостояния.Текст = НСтр("ru = 'Элементы классификатора не выведены. Настройте отбор и выполните поиск.'");
Элементы.ПоискНеНастроен.ОтображениеСостояния.Видимость = Истина;
-
+
Если РежимВыбора Тогда
Элементы.СписокВыбрать.Видимость = Истина;
@@ -185,7 +185,7 @@
Элементы.СписокКонтекстноеМенюВыбрать.Видимость = Ложь;
КонецЕсли;
-
+
КонецПроцедуры
&НаСервере
@@ -223,7 +223,7 @@
РабочиеСтатусы.Добавить(Перечисления.СтатусыОбъектовСАТУРН.НаСогласовании);
ОтборЭлемента.ПравоеЗначение = РабочиеСтатусы;
-
+
Элемент.Оформление.УстановитьЗначениеПараметра("ЦветТекста", ЦветаСтиля.ЦветНедоступногоТекста);
// Классификатор. Отображение неактивными элементы со статусами кроме Актуально
@@ -237,7 +237,7 @@
ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.НеВСписке;
ОтборЭлемента.ПравоеЗначение = РабочиеСтатусы;
-
+
Элемент.Оформление.УстановитьЗначениеПараметра("ЦветТекста", ЦветаСтиля.ЦветНедоступногоТекста);
КонецПроцедуры
@@ -256,7 +256,7 @@
ПараметрыПоиска = Результат;
ОбработатьНайденныеПартии(1);
-
+
КонецПроцедуры
&НаСервере
@@ -375,7 +375,7 @@
СтрокаОтбор = "";
КоличествоПараметровОтбора = 0;
-
+
Если ПараметрыОтбора <> Неопределено Тогда
ДобавитьВПредставление(СтрокаОтбор, ПараметрыОтбора, НСтр("ru = 'GUID'"), "GUID", КоличествоПараметровОтбора);
@@ -421,7 +421,7 @@
КонецЕсли;
ПредставлениеПараметровПоиска = ПредставлениеОтбора;
-
+
КонецПроцедуры
&НаСервере
@@ -577,13 +577,13 @@
КонецЕсли;
Если РежимВыбора Тогда
-
+
Если ЗначениеЗаполнено(ТекущиеДанные.Партия) Тогда
ОповеститьОВыборе(ТекущиеДанные.Партия);
Иначе
ОткрытьФормуДанныхКлассификатора(ТекущиеДанные.Идентификатор);
КонецЕсли;
-
+
Иначе
ОткрытьФормуДанныхКлассификатора(ТекущиеДанные.Идентификатор);
КонецЕсли;
diff --git a/src/Catalogs/Партнеры/Forms/CRM_Модуль_ФормаБыстрогоВвода/Ext/Form.xml b/src/Catalogs/Партнеры/Forms/CRM_Модуль_ФормаБыстрогоВвода/Ext/Form.xml
index 599dc11ea..354bd739f 100644
--- a/src/Catalogs/Партнеры/Forms/CRM_Модуль_ФормаБыстрогоВвода/Ext/Form.xml
+++ b/src/Catalogs/Партнеры/Forms/CRM_Модуль_ФормаБыстрогоВвода/Ext/Form.xml
@@ -416,6 +416,29 @@
Подключаемый_ОкончаниеВводаТекста
+
+
+
+ ru
+ Группа редактирование КПП
+
+
+
+
+ ru
+ Группа редактирование КПП
+
+
+ 3
+
+
+
+ CommandBarButton
+ Form.Command.ВключитьРедактированиеКПП
+
+
+
+
@@ -3718,5 +3741,25 @@
Picture
DontUse
+
+
+
+ ru
+ Включить редактирование КПП
+
+
+
+
+ ru
+ Включить редактирование КПП
+
+
+
+ CommonPicture.РазрешитьРедактированиеРеквизитовОбъекта
+ true
+
+ CRM_ВключитьРедактированиеКПП
+ Picture
+
\ No newline at end of file
diff --git a/src/Catalogs/Партнеры/Forms/CRM_Модуль_ФормаБыстрогоВвода/Ext/Form/Module.bsl b/src/Catalogs/Партнеры/Forms/CRM_Модуль_ФормаБыстрогоВвода/Ext/Form/Module.bsl
index eb8302ab3..13569692f 100644
--- a/src/Catalogs/Партнеры/Forms/CRM_Модуль_ФормаБыстрогоВвода/Ext/Form/Module.bsl
+++ b/src/Catalogs/Партнеры/Forms/CRM_Модуль_ФормаБыстрогоВвода/Ext/Form/Module.bsl
@@ -505,6 +505,7 @@
// +CRM_Модуль
ИначеЕсли ИмяСобытия = "CRM_ЗаполнитьРеквизитыКонтрагентаПоПолученнымДанным" И Источник = ЭтаФорма Тогда
ЗаполнитьФормуПоОбъекту();
+ Элементы.ВключитьРедактированиеКПП.Доступность = Элементы.КПП.ТолькоПросмотр;
// -CRM_Модуль
КонецЕсли;
@@ -773,8 +774,9 @@
// +CRM_Модуль мы не используем два поля ИНН и две кнопки
Элементы.ЗаполнитьПоИНН.Доступность = Не(ЭтоКомпания = 0 И ВидКомпании = 3);
Элементы.ЗаполнитьКПП.Доступность = Не(ЭтоКомпания = 0 И ВидКомпании = 3);
+ Элементы.ВключитьРедактированиеКПП.Доступность = Элементы.КПП.ТолькоПросмотр;
- Если ЭтоКомпания = 0 И ВидКомпании = 2 Тогда
+ Если ЭтоКомпания = 0 И ВидКомпании = 2 Тогда
Элементы.ЗаполнитьПоИНН.Доступность = НастройкиПодключенияКСервисуИППЗаданы И Не ПустаяСтрока(ИНН);
@@ -788,7 +790,7 @@
&НаКлиенте
Процедура ЗаполнитьФормуПоОбъекту()
-
+
РеквизитыКонтрагента = Объект;
Наименование = РеквизитыКонтрагента.Наименование;
@@ -1077,6 +1079,7 @@
// +CRM_Модуль мы не используем два поля ИНН и две кнопки
Элементы.ЗаполнитьПоИНН.Доступность = Не(ЭтоКомпания = 0 И ВидКомпании = 3);
Элементы.ЗаполнитьКПП.Доступность = Не(ЭтоКомпания = 0 И ВидКомпании = 3);
+ Элементы.ВключитьРедактированиеКПП.Доступность = Элементы.КПП.ТолькоПросмотр;
Если ЭтоКомпания = 0 И ВидКомпании = 2 Тогда
@@ -2013,6 +2016,20 @@
КонецПроцедуры
+// +CRM_Модуль
+
+&НаКлиенте
+Процедура CRM_ВключитьРедактированиеКПП(Команда)
+
+ ПометкаЗначение = Не Элементы.ВключитьРедактированиеКПП.Пометка;
+
+ Элементы.КПП.ТолькоПросмотр = Не ПометкаЗначение;
+ Элементы.ВключитьРедактированиеКПП.Пометка = ПометкаЗначение;
+
+КонецПроцедуры
+
+// -CRM_Модуль
+
#КонецОбласти
#Область СлужебныеПроцедурыИФункции
diff --git a/src/Catalogs/Партнеры/Forms/CRM_Модуль_ФормаЭлементаРеквизитыКонтрагентаНовая/Ext/Form/Module.bsl b/src/Catalogs/Партнеры/Forms/CRM_Модуль_ФормаЭлементаРеквизитыКонтрагентаНовая/Ext/Form/Module.bsl
index 06b987c01..0c487698c 100644
--- a/src/Catalogs/Партнеры/Forms/CRM_Модуль_ФормаЭлементаРеквизитыКонтрагентаНовая/Ext/Form/Module.bsl
+++ b/src/Catalogs/Партнеры/Forms/CRM_Модуль_ФормаЭлементаРеквизитыКонтрагентаНовая/Ext/Form/Module.bsl
@@ -377,10 +377,6 @@
НастроитьОбластьВвода();
// Конец ЛентаСобытий
- // Управление элементами на форме
- CRM_УправлениеЭлементамиНаФормах.ПриСозданииНаСервере(ЭтотОбъект, "КоманднаяПанельФормы", "ГруппаДополнительно");
- // Конец Управление элементами на форме
-
// ПодключаемыеКоманды
ПодключаемыеКоманды.ПриСозданииНаСервере(ЭтотОбъект);
// Конец ПодключаемыеКоманды
@@ -579,6 +575,11 @@
Элементы.СтатусРаботы_Настройка.Видимость = Истина;
КонецЕсли;
+ // Управление элементами на форме
+ // ! Блок должен располагаться в конце процедуры !
+ CRM_УправлениеЭлементамиНаФормах.ПриСозданииНаСервере(ЭтотОбъект, "КоманднаяПанельФормы", "ГруппаДополнительно");
+ // Конец Управление элементами на форме
+
ТекущийЭлемент = Элементы.Наименование;
CRM_ОбщегоНазначенияСервер.ЗакончитьЗамерВремениСозданияФормы(ЭтотОбъект, ВремяНачалаЗамера);
diff --git a/src/Catalogs/ПравилаПоискаДублейНСИ/Forms/ФормаЭлемента/Ext/Form/Module.bsl b/src/Catalogs/ПравилаПоискаДублейНСИ/Forms/ФормаЭлемента/Ext/Form/Module.bsl
index d26400967..06681282e 100644
--- a/src/Catalogs/ПравилаПоискаДублейНСИ/Forms/ФормаЭлемента/Ext/Form/Module.bsl
+++ b/src/Catalogs/ПравилаПоискаДублейНСИ/Forms/ФормаЭлемента/Ext/Form/Module.bsl
@@ -180,6 +180,11 @@
&НаКлиенте
Процедура НайтиИЗаписатьДублиПроверка()
+ ЗапросКорректный = ПроверитьЗапросНаСервере(Ложь);
+ Если Не ЗапросКорректный Тогда
+ ОбщегоНазначенияКлиент.СообщитьПользователю(НСтр("ru = 'Невозможно найти дубли. Некорректный запрос'"));
+ Возврат;
+ КонецЕсли;
ЕстьДублиПоПравилу = ПроверитьСуществованиеДублей(Объект.Ссылка);
ТекстВопроса = НСтр("ru = 'По данному правилу ранее были зарегистрированы дубли.
|При повторном поиске все ранее найденные дубли будут удалены. Продолжить?'");
diff --git a/src/Catalogs/ПравилаПроверкиПолномочийМЧД.xml b/src/Catalogs/ПравилаПроверкиПолномочийМЧД.xml
index 987ba0094..0dd9f7a28 100644
--- a/src/Catalogs/ПравилаПроверкиПолномочийМЧД.xml
+++ b/src/Catalogs/ПравилаПроверкиПолномочийМЧД.xml
@@ -324,12 +324,7 @@
-
-
- ru
- Правила проверки полномочий доверенностей
-
-
+
Use
diff --git a/src/Catalogs/ПравилаПроверкиПолномочийМЧД/Ext/ManagerModule.bsl b/src/Catalogs/ПравилаПроверкиПолномочийМЧД/Ext/ManagerModule.bsl
index 3c9fb053f..d9100ec55 100644
--- a/src/Catalogs/ПравилаПроверкиПолномочийМЧД/Ext/ManagerModule.bsl
+++ b/src/Catalogs/ПравилаПроверкиПолномочийМЧД/Ext/ManagerModule.bsl
@@ -556,7 +556,7 @@
| Параметры.Результат.Успех =
| Параметры.ЭлектронныйДокумент.ВидДокумента.ТипДокумента = Перечисления.ТипыДокументовЭДО.%1;
|КонецЕсли;";
- ТипДокументаЭДО = "ПустаяСсыла()";
+ ТипДокументаЭДО = "ПустаяСсылка()";
Для Каждого ЗначениеПеречисления Из Метаданные.Перечисления.ТипыДокументовЭДО.ЗначенияПеречисления Цикл
Если Перечисления.ТипыДокументовЭДО[ЗначениеПеречисления.Имя] = Правило.Значение.ТипДокумента Тогда
ТипДокументаЭДО = ЗначениеПеречисления.Имя;
@@ -772,8 +772,8 @@
Полномочия = МашиночитаемыеДоверенности.ПолномочияДоверенностиБезОбработки(МЧД);
Для Каждого Полномочие Из Полномочия Цикл
- ВложенныеПономочия = СтрРазделить(Полномочие.Код, ";");
- Для Каждого ВложенноеПолномочие Из ВложенныеПономочия Цикл
+ ВложенныеПолномочия = СтрРазделить(Полномочие.Код, ";");
+ Для Каждого ВложенноеПолномочие Из ВложенныеПолномочия Цикл
Если СтрДлина(ВложенноеПолномочие) = 1 И СтрНайти("123456789", ВложенноеПолномочие) Тогда
СписокПолномочий.Добавить(СтрШаблон("0%1",ВложенноеПолномочие));
Иначе
@@ -878,7 +878,7 @@
КонецФункции
-// Создаёт типовые правила у данной МЧД при загрузке МЧД
+// Создает типовые правила у данной МЧД при загрузке МЧД
//
// Параметры:
// Доверенность - ОпределяемыйТип.МашиночитаемаяДоверенность
diff --git a/src/Catalogs/ПравилаПроверкиПолномочийМЧД/Forms/ВводЗначения/Ext/Form.xml b/src/Catalogs/ПравилаПроверкиПолномочийМЧД/Forms/ВводЗначения/Ext/Form.xml
index 3f3de1972..7ff50bc48 100644
--- a/src/Catalogs/ПравилаПроверкиПолномочийМЧД/Forms/ВводЗначения/Ext/Form.xml
+++ b/src/Catalogs/ПравилаПроверкиПолномочийМЧД/Forms/ВводЗначения/Ext/Form.xml
@@ -30,12 +30,6 @@
Группа ввода числа
-
-
- ru
- Группа число
-
-
Vertical
Usual
None
@@ -80,12 +74,6 @@
Группа булево
-
-
- ru
- Группа булево
-
-
Usual
None
false
diff --git a/src/Catalogs/ПредприятияВЕТИС/Forms/ФормаСписка/Ext/Form/Module.bsl b/src/Catalogs/ПредприятияВЕТИС/Forms/ФормаСписка/Ext/Form/Module.bsl
index 27696c4f0..cb0a50bcb 100644
--- a/src/Catalogs/ПредприятияВЕТИС/Forms/ФормаСписка/Ext/Form/Module.bsl
+++ b/src/Catalogs/ПредприятияВЕТИС/Forms/ФормаСписка/Ext/Form/Module.bsl
@@ -19,9 +19,9 @@
НастроитьЭлементыФормыПриСоздании();
УстановитьЗаголовокФормы();
-
+
ОбщегоНазначенияСобытияФормИСПереопределяемый.ПриСозданииНаСервере(ЭтотОбъект, Отказ, СтандартнаяОбработка);
-
+
КонецПроцедуры
&НаКлиенте
@@ -48,7 +48,7 @@
Если РежимВыбора Тогда
Если ТекущаяСтраница = Элементы.СтраницаЗагруженные Тогда
-
+
Элементы.СписокВыбрать.КнопкаПоУмолчанию = Истина;
Иначе
@@ -68,7 +68,7 @@
КонецЕсли;
ПереключениеМеждуСтраницамиВыполнялось = Истина;
-
+
КонецПроцедуры
&НаКлиенте
@@ -114,7 +114,7 @@
ЗначениеЗаполнено(ОтборМаркировка));
КонецПроцедуры
-
+
#КонецОбласти
@@ -190,7 +190,7 @@
СтандартнаяОбработка = Ложь;
ПриВыбореИзДанныхКлассификатора();
-
+
КонецПроцедуры
#КонецОбласти
@@ -237,7 +237,7 @@
Процедура ВыбратьИзЗагруженных(Команда)
ПриВыбореИзЗагруженных();
-
+
КонецПроцедуры
#КонецОбласти
@@ -446,14 +446,14 @@
Элементы.ПоискНеНастроен.ОтображениеСостояния.ДополнительныйРежимОтображения = ДополнительныйРежимОтображения.Неактуальность;
Элементы.ПоискНеНастроен.ОтображениеСостояния.Текст = НСтр("ru = 'Элементы классификатора не выведены. Настройте отбор и выполните поиск.'");
Элементы.ПоискНеНастроен.ОтображениеСостояния.Видимость = Истина;
-
+
Элементы.СписокВыбрать.Видимость = РежимВыбора;
Элементы.СписокКонтекстноеМенюВыбрать.Видимость = РежимВыбора;
-
+
Элементы.Связано.Видимость = РежимВыбора
И Не ЗначениеЗаполнено(ХозяйствующийСубъект)
И Не ЗначениеЗаполнено(ХозяйствующийСубъектИдентификатор);
-
+
КонецПроцедуры
&НаСервере
@@ -861,7 +861,7 @@
НулевойРезультат = Предприятия.Количество() = 0;
Элементы.ГруппаИнформацияОНеКорректномЗапросе.Видимость = КоличествоСтраницНесколько И Не НулевойРезультат;
-
+
Если ПриСоздании Или КоличествоСтраницНесколько И НулевойРезультат Тогда
Элементы.КартинкаИнформацияНеНастроенПоиск.Видимость = Истина;
@@ -869,7 +869,7 @@
Элементы.ВыбратьИзКлассификатора.Видимость = Ложь;
Элементы.СтраницыПредприятия.ТекущаяСтраница = Элементы.СтраницаПредприятияПоискНеВыполнен;
-
+
Если КоличествоСтраницНесколько Тогда
Элементы.КартинкаИнформацияНеНастроенПоиск.Видимость = Ложь;
Элементы.ПоискНеНастроен.ОтображениеСостояния.Текст =
@@ -877,12 +877,12 @@
КонецЕсли;
Иначе
-
+
Элементы.КартинкаИнформацияНеНастроенПоиск.Видимость = Ложь;
Элементы.Создать.Видимость = Не РежимВыбора И КоличествоПараметровОтбора > 0;
Элементы.ВыбратьИзКлассификатора.Видимость = РежимВыбора;
Элементы.ПредприятияКонтекстноеМенюВыбратьИзКлассификатора.Видимость = РежимВыбора;
-
+
Элементы.СтраницыПредприятия.ТекущаяСтраница = Элементы.СтраницаПредприятияЭлементы;
КонецЕсли;
diff --git a/src/Catalogs/ПродукцияВЕТИС/Ext/ManagerModule.bsl b/src/Catalogs/ПродукцияВЕТИС/Ext/ManagerModule.bsl
index b7b60e1c3..202a74fce 100644
--- a/src/Catalogs/ПродукцияВЕТИС/Ext/ManagerModule.bsl
+++ b/src/Catalogs/ПродукцияВЕТИС/Ext/ManagerModule.bsl
@@ -137,11 +137,13 @@
#Область ОбработчикиСобытий
+#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда
+
Процедура ОбработкаПолученияФормы(ВидФормы, Параметры, ВыбраннаяФорма, ДополнительнаяИнформация, СтандартнаяОбработка)
Если ВидФормы = "ФормаОбъекта" Тогда
Если Параметры.Свойство("Ключ") И ЗначениеЗаполнено(Параметры.Ключ) Тогда
- ПроизвольнаяПродукция = ИнтеграцияВЕТИСВызовСервера.ЗначениеРеквизитаОбъекта(Параметры.Ключ, "Произвольная");
+ ПроизвольнаяПродукция = ОбщегоНазначения.ЗначениеРеквизитаОбъекта(Параметры.Ключ, "Произвольная");
Если ПроизвольнаяПродукция Тогда
ВыбраннаяФорма = "ПроизвольнаяПродукция";
СтандартнаяОбработка = Ложь;
@@ -154,6 +156,21 @@
КонецПроцедуры
+Процедура ОбработкаПолученияДанныхВыбора(ДанныеВыбора, Параметры, СтандартнаяОбработка)
+
+ Если Параметры.Свойство("ХСПроизводительОтбор") И ЗначениеЗаполнено(Параметры.ХСПроизводительОтбор) Тогда
+ Параметры.Отбор.Вставить("ХозяйствующийСубъектПроизводитель", Параметры.ХСПроизводительОтбор);
+ КонецЕсли;
+
+ Если Параметры.Свойство("ПредприятиеОтбор") И ЗначениеЗаполнено(Параметры.ПредприятиеОтбор) Тогда
+ СтандартнаяОбработка = Ложь;
+ ДанныеВыбора = ИнтеграцияВЕТИСВызовСервера.ПолучитьДанныеВыбораПродукцииСОтборомПоПредприятию(Параметры);
+ КонецЕсли;
+
+КонецПроцедуры
+
+#КонецЕсли
+
Процедура ОбработкаПолученияПолейПредставления(Поля, СтандартнаяОбработка)
СтандартнаяОбработка = Ложь;
@@ -179,18 +196,5 @@
КонецПроцедуры
-Процедура ОбработкаПолученияДанныхВыбора(ДанныеВыбора, Параметры, СтандартнаяОбработка)
-
- Если Параметры.Свойство("ХСПроизводительОтбор") И ЗначениеЗаполнено(Параметры.ХСПроизводительОтбор) Тогда
- Параметры.Отбор.Вставить("ХозяйствующийСубъектПроизводитель", Параметры.ХСПроизводительОтбор);
- КонецЕсли;
-
- Если Параметры.Свойство("ПредприятиеОтбор") И ЗначениеЗаполнено(Параметры.ПредприятиеОтбор) Тогда
- СтандартнаяОбработка = Ложь;
- ДанныеВыбора = ИнтеграцияВЕТИСВызовСервера.ПолучитьДанныеВыбораПродукцииСОтборомПоПредприятию(Параметры);
- КонецЕсли;
-
-КонецПроцедуры
-
#КонецОбласти
diff --git a/src/Catalogs/СДИЗЗЕРНО/Ext/ManagerModule.bsl b/src/Catalogs/СДИЗЗЕРНО/Ext/ManagerModule.bsl
index 823d16a58..f386ac1fb 100644
--- a/src/Catalogs/СДИЗЗЕРНО/Ext/ManagerModule.bsl
+++ b/src/Catalogs/СДИЗЗЕРНО/Ext/ManagerModule.bsl
@@ -115,7 +115,7 @@
КонецПроцедуры
-// Обработка данных перехода на конструктор настроек видов продуции
+// Обработка данных перехода на конструктор настроек видов продукции
//
// Параметры:
// Параметры - см. ОбновлениеИнформационнойБазы.ОсновныеПараметрыОтметкиКОбработке
diff --git a/src/Catalogs/СервисПровайдерыСУЗ/Ext/ManagerModule.bsl b/src/Catalogs/СервисПровайдерыСУЗ/Ext/ManagerModule.bsl
index 621aae5ed..336355c22 100644
--- a/src/Catalogs/СервисПровайдерыСУЗ/Ext/ManagerModule.bsl
+++ b/src/Catalogs/СервисПровайдерыСУЗ/Ext/ManagerModule.bsl
@@ -41,7 +41,7 @@
КонецПроцедуры
-// Обработка данных перехода на конструктор настроек видов продуции
+// Обработка данных перехода на конструктор настроек видов продукции
//
// Параметры:
// Параметры - см. ОбновлениеИнформационнойБазы.ОсновныеПараметрыОтметкиКОбработке
diff --git a/src/Catalogs/СтруктураПредприятия/Forms/ФормаВыбора/Ext/Form.xml b/src/Catalogs/СтруктураПредприятия/Forms/ФормаВыбора/Ext/Form.xml
index 108afd85b..9594b9d48 100644
--- a/src/Catalogs/СтруктураПредприятия/Forms/ФормаВыбора/Ext/Form.xml
+++ b/src/Catalogs/СтруктураПредприятия/Forms/ФормаВыбора/Ext/Form.xml
@@ -29,7 +29,12 @@
0
-
+
+
+ ru
+ Действует
+
+
Действует
@@ -37,15 +42,25 @@
0
-
- Не действует
+
+
+ ru
+ Не действует
+
+
+ НеДействует
0
-
+
+
+ ru
+ Все
+
+
Все
diff --git a/src/Catalogs/СтруктураПредприятия/Forms/ФормаВыбора/Ext/Form/Module.bsl b/src/Catalogs/СтруктураПредприятия/Forms/ФормаВыбора/Ext/Form/Module.bsl
index 91fc791fe..66b89262b 100644
--- a/src/Catalogs/СтруктураПредприятия/Forms/ФормаВыбора/Ext/Form/Module.bsl
+++ b/src/Catalogs/СтруктураПредприятия/Forms/ФормаВыбора/Ext/Form/Module.bsl
@@ -168,7 +168,7 @@
Процедура УстановитьОтборПоСтатусу()
Если ПустаяСтрока(ПереключательСтатусов) Или ПереключательСтатусов = "Все" Тогда
Статус = Перечисления.СтатусыОрганизацийПодразделений.ПустаяСсылка();
- ИначеЕсли ПереключательСтатусов = "Не действует" Тогда
+ ИначеЕсли ПереключательСтатусов = "НеДействует" Тогда
Статус = Перечисления.СтатусыОрганизацийПодразделений.НеДействует;
Элементы.Список.Отображение = ОтображениеТаблицы.Список;
Иначе
diff --git a/src/Catalogs/УчетныеЗаписиМаркетплейсов/Ext/ManagerModule.bsl b/src/Catalogs/УчетныеЗаписиМаркетплейсов/Ext/ManagerModule.bsl
index 48379e508..d80c03ae1 100644
--- a/src/Catalogs/УчетныеЗаписиМаркетплейсов/Ext/ManagerModule.bsl
+++ b/src/Catalogs/УчетныеЗаписиМаркетплейсов/Ext/ManagerModule.bsl
@@ -746,7 +746,7 @@
Запрос = Новый Запрос;
Запрос.УстановитьПараметр("ВидМаркетплейса", ВидМаркетплейса);
Запрос.Текст =
- "ВЫБРАТЬ
+ "ВЫБРАТЬ РАЗРЕШЕННЫЕ
| ЕСТЬNULL(КОЛИЧЕСТВО(РАЗЛИЧНЫЕ УчетныеЗаписиМаркетплейсов.Ссылка), 0) КАК КоличествоПодключений
|ИЗ
| Справочник.УчетныеЗаписиМаркетплейсов КАК УчетныеЗаписиМаркетплейсов
diff --git a/src/Catalogs/УчетныеЗаписиЦентровЭДО/Commands/СостояниеАвтополучения/Ext/CommandModule.bsl b/src/Catalogs/УчетныеЗаписиЦентровЭДО/Commands/СостояниеАвтополучения/Ext/CommandModule.bsl
index 1cd0d333c..be795defc 100644
--- a/src/Catalogs/УчетныеЗаписиЦентровЭДО/Commands/СостояниеАвтополучения/Ext/CommandModule.bsl
+++ b/src/Catalogs/УчетныеЗаписиЦентровЭДО/Commands/СостояниеАвтополучения/Ext/CommandModule.bsl
@@ -22,14 +22,14 @@
#Область СлужебныеПроцедурыИФункции
// Параметры:
-// УчентнаяЗапись - СправочникСсылка.УчетныеЗаписиЦентровЭДО
+// УчетнаяЗапись - СправочникСсылка.УчетныеЗаписиЦентровЭДО
//
// Возвращаемое значение:
// Массив из Строка
&НаСервере
-Функция ИдентификаторыЭДОУчетнойЗаписи(Знач УчентнаяЗапись)
+Функция ИдентификаторыЭДОУчетнойЗаписи(Знач УчетнаяЗапись)
- Возврат РегистрыСведений.НастройкиИнтеграцииЦентраЭДО.ИдентификаторыЭДОУчетнойЗаписи(УчентнаяЗапись);
+ Возврат РегистрыСведений.НастройкиИнтеграцииЦентраЭДО.ИдентификаторыЭДОУчетнойЗаписи(УчетнаяЗапись);
КонецФункции
diff --git a/src/Catalogs/УчетныеЗаписиЦентровЭДО/Commands/СостояниеСинхронизации/Ext/CommandModule.bsl b/src/Catalogs/УчетныеЗаписиЦентровЭДО/Commands/СостояниеСинхронизации/Ext/CommandModule.bsl
index eb5ebb73f..a9ac8ce62 100644
--- a/src/Catalogs/УчетныеЗаписиЦентровЭДО/Commands/СостояниеСинхронизации/Ext/CommandModule.bsl
+++ b/src/Catalogs/УчетныеЗаписиЦентровЭДО/Commands/СостояниеСинхронизации/Ext/CommandModule.bsl
@@ -22,14 +22,14 @@
#Область СлужебныеПроцедурыИФункции
// Параметры:
-// УчентнаяЗапись - СправочникСсылка.УчетныеЗаписиЦентровЭДО
+// УчетнаяЗапись - СправочникСсылка.УчетныеЗаписиЦентровЭДО
//
// Возвращаемое значение:
// Массив из Строка
&НаСервере
-Функция ИдентификаторыЭДОУчетнойЗаписи(Знач УчентнаяЗапись)
+Функция ИдентификаторыЭДОУчетнойЗаписи(Знач УчетнаяЗапись)
- Возврат РегистрыСведений.НастройкиИнтеграцииЦентраЭДО.ИдентификаторыЭДОУчетнойЗаписи(УчентнаяЗапись);
+ Возврат РегистрыСведений.НастройкиИнтеграцииЦентраЭДО.ИдентификаторыЭДОУчетнойЗаписи(УчетнаяЗапись);
КонецФункции
diff --git a/src/Catalogs/УчетныеЗаписиЦентровЭДО/Ext/ManagerModule.bsl b/src/Catalogs/УчетныеЗаписиЦентровЭДО/Ext/ManagerModule.bsl
index 175457c75..ab838403b 100644
--- a/src/Catalogs/УчетныеЗаписиЦентровЭДО/Ext/ManagerModule.bsl
+++ b/src/Catalogs/УчетныеЗаписиЦентровЭДО/Ext/ManagerModule.bsl
@@ -106,7 +106,7 @@
|ИЗ
| Справочник.УчетныеЗаписиЦентровЭДО КАК УчетныеЗаписиЦентровЭДО
|ГДЕ
- | Не УчетныеЗаписиЦентровЭДО.ПометкаУдаления";
+ | НЕ УчетныеЗаписиЦентровЭДО.ПометкаУдаления";
РезультатЗапроса = Запрос.Выполнить();
diff --git a/src/Catalogs/ХозяйствующиеСубъектыВЕТИС/Forms/ФормаСписка/Ext/Form/Module.bsl b/src/Catalogs/ХозяйствующиеСубъектыВЕТИС/Forms/ФормаСписка/Ext/Form/Module.bsl
index d0d386ad5..7b5ace4cc 100644
--- a/src/Catalogs/ХозяйствующиеСубъектыВЕТИС/Forms/ФормаСписка/Ext/Form/Module.bsl
+++ b/src/Catalogs/ХозяйствующиеСубъектыВЕТИС/Forms/ФормаСписка/Ext/Form/Module.bsl
@@ -147,9 +147,9 @@
&НаКлиенте
Процедура НастроеноПодключениеПриИзменении(Элемент)
-
+
ПриИзмененииОтбораНастроеноПодключение(ЭтотОбъект);
-
+
КонецПроцедуры
#КонецОбласти
@@ -182,8 +182,8 @@
СтандартнаяОбработка = Ложь;
ПриВыбореИзДанныхКлассификатора();
-
-КонецПроцедуры
+
+КонецПроцедуры
#КонецОбласти
@@ -228,7 +228,7 @@
Процедура ВыбратьИзЗагруженных(Команда)
ПриВыбореИзЗагруженных();
-
+
КонецПроцедуры
#КонецОбласти
@@ -367,7 +367,7 @@
Контрагент = Параметры.Контрагент;
ВыборИдентификаторов = Параметры.ВыборИдентификаторов;
-
+
Если ТипЗнч(Параметры.ПараметрыПоиска) = Тип("Структура") Тогда
ПараметрыПоиска = Параметры.ПараметрыПоиска;
@@ -436,12 +436,12 @@
Элементы.ОтборНеСопоставлено.Видимость = ОтборНеСопоставлено <> "Все";
Элементы.ОтборНастроеноПодключение.Видимость = Не ЗначениеЗаполнено(Контрагент);
-
+
Иначе
Элементы.СписокВыбрать.Видимость = Ложь;
Элементы.СписокКонтекстноеМенюВыбрать.Видимость = Ложь;
-
+
Элементы.КППОтбор.Видимость = Ложь;
Элементы.ИННОтбор.Видимость = Ложь;
@@ -459,7 +459,7 @@
ОбщегоНазначенияКлиентСервер.УстановитьПараметрДинамическогоСписка(Список,
"ВсеСопоставлено",
НСтр("ru = 'все сопоставлено'"));
-
+
КонецПроцедуры
&НаСервере
@@ -498,10 +498,10 @@
ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Список.Контрагент");
ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.НеЗаполнено;
-
+
Элемент.Оформление.УстановитьЗначениеПараметра("Текст", НСтр("ru='<не сопоставлено>'"));
Элемент.Оформление.УстановитьЗначениеПараметра("ЦветТекста", ЦветаСтиля.ЦветТекстаПроблемаГосИС);
-
+
#КонецОбласти
#Область ПредприятияНет
@@ -532,9 +532,9 @@
ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Список.ЕстьНесопоставленные");
ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
ОтборЭлемента.ПравоеЗначение = Истина;
-
+
Элемент.Оформление.УстановитьЗначениеПараметра("ЦветТекста", ЦветаСтиля.ЦветТекстаПроблемаГосИС);
-
+
#КонецОбласти
#Область ПредприятияНетНесопоставленных
@@ -608,7 +608,7 @@
ПараметрыПоиска = Результат;
ОбработатьНайденныеХозяйствующиеСубъекты(1);
-
+
КонецПроцедуры
&НаСервере
@@ -974,7 +974,7 @@
КонецЕсли;
Иначе
-
+
Элементы.КартинкаИнформацияНеНастроенПоиск.Видимость = Ложь;
Элементы.Создать.Видимость = Не РежимВыбора И КоличествоПараметровОтбора > 0;
Элементы.ВыбратьИзКлассификатора.Видимость = РежимВыбора;
@@ -985,7 +985,7 @@
КонецЕсли;
ПредставлениеПараметровПоиска = ПредставлениеОтбора;
-
+
КонецПроцедуры
&НаСервере
@@ -1199,14 +1199,14 @@
Если РежимВыбора Тогда
Если ВыборИдентификаторов Тогда
-
+
ДанныеВыбора = ПустаяСтруктураВозвратаВыборИдентификаторов();
ДанныеВыбора.Ссылка = ТекущиеДанные.Ссылка;
ДанныеВыбора.Наименование = ТекущиеДанные.Наименование;
ДанныеВыбора.Идентификатор = ТекущиеДанные.Идентификатор;
-
+
ОповеститьОВыборе(ДанныеВыбора);
-
+
Иначе
ОповеститьОВыборе(ТекущиеДанные.Ссылка);
КонецЕсли;
diff --git a/src/Catalogs/ХозяйствующиеСубъектыВЕТИС/Forms/ФормаЭлемента/Ext/Form/Module.bsl b/src/Catalogs/ХозяйствующиеСубъектыВЕТИС/Forms/ФормаЭлемента/Ext/Form/Module.bsl
index dbaedf1fb..dd115cdb9 100644
--- a/src/Catalogs/ХозяйствующиеСубъектыВЕТИС/Forms/ФормаЭлемента/Ext/Form/Module.bsl
+++ b/src/Catalogs/ХозяйствующиеСубъектыВЕТИС/Forms/ФормаЭлемента/Ext/Form/Module.bsl
@@ -34,7 +34,7 @@
Элементы.ПользователиУдалитьПользователяХСРежимОтладки.Видимость = Истина;
Элементы.ПользователиКонтекстноеМенюУдалитьПользователяХСРежимОтладки.Видимость = Истина;
КонецЕсли;
-
+
ОбщегоНазначенияСобытияФормИСПереопределяемый.ПриСозданииНаСервере(ЭтотОбъект, Отказ, СтандартнаяОбработка);
КонецПроцедуры
@@ -806,7 +806,7 @@
ЗаполнитьДанныеСопоставления();
УправлениеЭлементамиФормы(ЭтотОбъект);
-
+
УстановитьОтборСпискаПользователей();
КонецПроцедуры
@@ -846,11 +846,11 @@
Или Объект.Тип.Пустая() Тогда
Элементы.СтраницыИННКПП.ТекущаяСтраница = Элементы.СтраницаЮЛ;
-
+
Иначе
-
+
Элементы.СтраницыИННКПП.ТекущаяСтраница = Элементы.СтраницаИП;
-
+
КонецЕсли;
Если Объект.СоответствуетОрганизации Тогда
@@ -872,7 +872,7 @@
Элементы.СопоставитьПоИННКПП.Видимость = Не Объект.СоответствуетОрганизации;
Элементы.СопоставитьПоИНН.Видимость = Не Объект.СоответствуетОрганизации;
-
+
Элементы.ПредприятияСоздатьПредприятие.Видимость = Форма.ЕстьПравоИзменения И Форма.НастроеноПодключение;
Элементы.ПредприятияСвязатьСПредприятием.Видимость = Форма.ЕстьПравоИзменения И Форма.НастроеноПодключение;
Элементы.ПредприятияРазорватьСвязь.Видимость = Форма.ЕстьПравоИзменения И Форма.НастроеноПодключение;
@@ -1012,11 +1012,11 @@
ЗаполнитьТаблицуУполномоченногоГашения();
СоответствуетОрганизации = Число(Объект.СоответствуетОрганизации);
-
+
СоответствуетОрганизацииПриИзмененииСервер();
ЗаполнитьДанныеСопоставления();
-
+
УправлениеЭлементамиФормы(ЭтотОбъект);
КонецПроцедуры
diff --git a/src/Catalogs/ШтрихкодыУпаковокТоваров/Ext/ManagerModule.bsl b/src/Catalogs/ШтрихкодыУпаковокТоваров/Ext/ManagerModule.bsl
index 1646edfcb..4c2f98cdf 100644
--- a/src/Catalogs/ШтрихкодыУпаковокТоваров/Ext/ManagerModule.bsl
+++ b/src/Catalogs/ШтрихкодыУпаковокТоваров/Ext/ManagerModule.bsl
@@ -77,7 +77,7 @@
// * ЕстьКолонкаПроизвольнаяЕдиницаУчета - Булево - Признак наличия в дереве колонки ПроизвольнаяЕдиницаУчета
// * ЭтоДетализацияБезУпаковокНижнихУровней - Булево - Признак отсутствия потребительских упаковок на нижнем уровне
// * ИмяКолонкиКоличествоПотребительскихУпаковок - Строка - Имя колонки "КоличествоПотребительскихУпаковок"
-Функция ПараметрыСозданияШтриходовУпаковокПоДеревуМаркируемойПродукции(ДеревоМаркированнойПродукции, ПараметрыСканирования, ДополнительныеПараметры = Неопределено) Экспорт
+Функция ПараметрыСозданияШтрихкодовУпаковокПоДеревуМаркируемойПродукции(ДеревоМаркированнойПродукции, ПараметрыСканирования, ДополнительныеПараметры = Неопределено) Экспорт
ПараметрыСоздания = Новый Структура;
ПараметрыСоздания.Вставить("ШтрихкодыУпаковок", Неопределено);
@@ -120,7 +120,7 @@
// Параметры:
// ДеревоМаркированнойПродукции - ДеревоЗначений - дерево, содержащее результаты проверки и подбора в соответствующей форме.
// ТаблицаШтрихкодовВерхнегоУровня - ТаблицаЗначений - в таблицу помещаются данные о содержимом верхнего уровня.
-// Параметры - См. ПараметрыСозданияШтриходовУпаковокПоДеревуМаркируемойПродукции
+// Параметры - См. ПараметрыСозданияШтрихкодовУпаковокПоДеревуМаркируемойПродукции
// Возвращаемое значение:
// Структура - результат обработки:
// * ВложенныеШтрихкодыУпаковок - Массив Из СправочникСсылка.ШтрихкодыУпаковокТоваров - вложенные в текущую упаковку штриховые коды.
@@ -510,7 +510,7 @@
//
// Параметры:
// ДеревоМаркированнойПродукции - ДеревоЗначений - дерево, содержащее результаты проверки и подбора в соответствующей форме
-// Параметры - См. ПараметрыСозданияШтриходовУпаковокПоДеревуМаркируемойПродукции
+// Параметры - См. ПараметрыСозданияШтрихкодовУпаковокПоДеревуМаркируемойПродукции
//
Процедура ЗаполнитьШтрихкодыУпаковокИКоличествоПоДеревуМаркируемойПродукции(ДеревоМаркированнойПродукции, Параметры, СтрокиДереваСНайденнымиШтрихкодамиУпаковок = Неопределено) Экспорт
@@ -723,7 +723,7 @@
//
Процедура СоздатьШтрихкодыУпаковокПоДаннымДерева(ДеревоУпаковок, ПараметрыСканирования, ДополнительныеПараметры = Неопределено) Экспорт
- ПараметрыСозданияШтрихкодов = ПараметрыСозданияШтриходовУпаковокПоДеревуМаркируемойПродукции(ДеревоУпаковок, ПараметрыСканирования, ДополнительныеПараметры);
+ ПараметрыСозданияШтрихкодов = ПараметрыСозданияШтрихкодовУпаковокПоДеревуМаркируемойПродукции(ДеревоУпаковок, ПараметрыСканирования, ДополнительныеПараметры);
ПараметрыСозданияШтрихкодов.ШтрихкодыУпаковок = СуществующиеЭлементыШтрихкодовДерева(ДеревоУпаковок);
ПараметрыСозданияШтрихкодов.КэшСтатусовУказанияСерий = Новый Соответствие;
ПараметрыСозданияШтрихкодов.КэшСтрокДерева = Новый Соответствие;
@@ -2379,7 +2379,7 @@
//
// Параметры:
// СтрокиДерева - КоллекцияСтрокДереваЗначений - источник генерации штрихкодов упаковок
-// ПараметрыСозданияШтрихкодов - См. ПараметрыСозданияШтриходовУпаковокПоДеревуМаркируемойПродукции
+// ПараметрыСозданияШтрихкодов - См. ПараметрыСозданияШтрихкодовУпаковокПоДеревуМаркируемойПродукции
Процедура СоздатьШтрихкодыУпаковокПоСтрокамДерева(СтрокиДерева, ПараметрыСозданияШтрихкодов)
Если СтрокиДерева.Количество() > 1 Тогда
diff --git a/src/Catalogs/ЭлементыКонструктораВидовПродукцииИС/Ext/ManagerModule.bsl b/src/Catalogs/ЭлементыКонструктораВидовПродукцииИС/Ext/ManagerModule.bsl
index 16540d496..acc5125ba 100644
--- a/src/Catalogs/ЭлементыКонструктораВидовПродукцииИС/Ext/ManagerModule.bsl
+++ b/src/Catalogs/ЭлементыКонструктораВидовПродукцииИС/Ext/ManagerModule.bsl
@@ -437,6 +437,7 @@
СтандартныеЭлементы.Добавить(ВУПДПередаватьПеревозочныеДокументы);
СтандартныеЭлементы.Добавить(ПолеМинимальнаяРозничнаяЦена);
СтандартныеЭлементы.Добавить(АгрегироватьНаборыКакЛогистическиеУпаковки);
+ СтандартныеЭлементы.Добавить(ДоступнаРегистрацияМОДВГИСМТ);
ДобавитьСтандартныеЭлементы(Результат, СтандартныеЭлементы);
diff --git a/src/Catalogs/ЭлементыКонструктораВидовПродукцииИС/Ext/Predefined.xml b/src/Catalogs/ЭлементыКонструктораВидовПродукцииИС/Ext/Predefined.xml
index 6dcd4d316..474416400 100644
--- a/src/Catalogs/ЭлементыКонструктораВидовПродукцииИС/Ext/Predefined.xml
+++ b/src/Catalogs/ЭлементыКонструктораВидовПродукцииИС/Ext/Predefined.xml
@@ -768,6 +768,12 @@
Мера количества предмета расчета при частичном выбытии
false
+ -
+ ДоступнаРегистрацияМОДВГИСМТ
+
+ Доступна регистрация МОД в ГИС МТ
+ false
+
-
КонтролироватьПеремещениеМеждуМОД
diff --git a/src/CommonAttributes/ОбластьДанныхОсновныеДанные.xml b/src/CommonAttributes/ОбластьДанныхОсновныеДанные.xml
index 4a7d21e07..fa62231ef 100644
--- a/src/CommonAttributes/ОбластьДанныхОсновныеДанные.xml
+++ b/src/CommonAttributes/ОбластьДанныхОсновныеДанные.xml
@@ -110,11 +110,6 @@
DontUse
-
- ScheduledJob.CRM_ПолучениеИОтправкаЭлектронныхПисемПоток8
- DontUse
-
-
InformationRegister.РазрешенныеДляРедактированияЛентыНовостей
DontUse
@@ -345,21 +340,11 @@
DontUse
-
- ScheduledJob.CRM_ОтложенноеВыполнениеТриггеров
- DontUse
-
-
Constant.НастройкаПроксиСервера
DontUse
-
- ScheduledJob.сфпОбновлениеПодпискиНаСобытияОблачнойАТС
- DontUse
-
-
InformationRegister.СостоянияВыгрузкиЗагрузкиОбластейДанных
DontUse
@@ -405,11 +390,6 @@
DontUse
-
- ScheduledJob.CRM_ВыполнениеТриггеров
- DontUse
-
-
InformationRegister.РассчитанныеОтборыПоНовостям_Общие
DontUse
@@ -430,11 +410,6 @@
DontUse
-
- ScheduledJob.CRM_РасчетЗаполненностиРеквизитовОбъектов
- DontUse
-
-
ScheduledJob.УстановкаПорядкаОтложенногоОбновленияВМоделиСервиса
DontUse
@@ -555,11 +530,6 @@
DontUse
-
- ScheduledJob.CRM_РасчетВажностиИСрочностиЗадач
- DontUse
-
-
Constant.ИспользоватьПроверкуКонтрагентов
DontUse
@@ -695,11 +665,6 @@
DontUse
-
- ScheduledJob.CRM_ЗавершениеОтсутствияСотрудников
- DontUse
-
-
InformationRegister.ПлюсРасписаниеРекомендаций
DontUse
@@ -720,11 +685,6 @@
DontUse
-
- ScheduledJob.CRM_ОтправкаОповещенийПоСМС
- DontUse
-
-
InformationRegister.ПрогрессОбновления
DontUse
@@ -835,11 +795,6 @@
DontUse
-
- ScheduledJob.CRM_СинхронизацияС_iCRM
- DontUse
-
-
Catalog.ИнформационныеСсылкиДляФорм
DontUse
@@ -915,11 +870,6 @@
DontUse
-
- ScheduledJob.CRM_ПолучениеИОтправкаЭлектронныхПисемПоток5
- DontUse
-
-
InformationRegister.ОбработчикиОбновления
DontUse
@@ -940,11 +890,6 @@
DontUse
-
- ScheduledJob.CRM_ОбменB2BПортал
- DontUse
-
-
ScheduledJob.СинхронизацияССервисомИнтеграции
DontUse
@@ -1080,11 +1025,6 @@
DontUse
-
- ScheduledJob.сфпЗагрузкаПланаНумерации
- DontUse
-
-
ScheduledJob.ABCКлассификацияПартнеров
DontUse
@@ -1100,11 +1040,6 @@
DontUse
-
- ScheduledJob.CRM_ЗагрузкаЛидогенерации
- DontUse
-
-
ScheduledJob.УдалениеВзаимодействийПоРассылкамИОповещениям
DontUse
@@ -1130,11 +1065,6 @@
DontUse
-
- ScheduledJob.CRM_ОтправкаОповещенийПоЭлектроннойПочте
- DontUse
-
-
Constant.ЗагружатьИУстанавливатьИсправленияАвтоматически
DontUse
@@ -1170,11 +1100,6 @@
DontUse
-
- ScheduledJob.CRM_ПолучениеИОтправкаЭлектронныхПисемПоток2
- DontUse
-
-
Catalog.ПоставщикиУслугСервиса
DontUse
@@ -1225,11 +1150,6 @@
DontUse
-
- ScheduledJob.CRM_ПолучениеИОтправкаЭлектронныхПисемПоток6
- DontUse
-
-
Constant.ОсновнойЯзык
DontUse
@@ -1290,11 +1210,6 @@
DontUse
-
- ScheduledJob.CRM_ФормированиеПоздравленийСДнемРождения
- DontUse
-
-
ScheduledJob.ОбновлениеТоварногоКаталогаOzon
DontUse
@@ -1455,16 +1370,6 @@
DontUse
-
- ScheduledJob.CRM_ПолучениеИОтправкаЭлектронныхПисемПоток7
- DontUse
-
-
-
- ScheduledJob.CRM_СинхронизацияКалендарей
- DontUse
-
-
ScheduledJob.ПолучениеРекомендацийПоСклейкеТовараЯндексМаркет
DontUse
@@ -1485,21 +1390,11 @@
DontUse
-
- ScheduledJob.CRM_ОчисткаИсторииРеквизитовОбъектов
- DontUse
-
-
Catalog.УдалитьОчередьЗаданий
DontUse
-
- ScheduledJob.CRM_ФормированиеПоздравленийСПраздниками
- DontUse
-
-
InformationRegister.ЗамерыОбластиСтатистики
DontUse
@@ -1525,11 +1420,6 @@
DontUse
-
- ScheduledJob.CRM_ОтправкаРассылокЭлектронныхПисем
- DontUse
-
-
InformationRegister.ОперацииРегламентныхЗаданий
DontUse
@@ -1625,11 +1515,6 @@
DontUse
-
- ScheduledJob.CRM_ПолучениеИОтправкаЭлектронныхПисемПоток1
- DontUse
-
-
InformationRegister.КлассификаторыМЧД
DontUse
@@ -1650,21 +1535,11 @@
DontUse
-
- ScheduledJob.CRM_РасчетКлючевыхПоказателей
- DontUse
-
-
InformationRegister.ЗначенияКатегорийОбщие
DontUse
-
- ScheduledJob.сфпОчисткаСообщенийЖурналаЗвонков
- DontUse
-
-
InformationRegister.ДополнительныеАдресныеСведения
DontUse
@@ -1750,11 +1625,6 @@
DontUse
-
- ScheduledJob.CRM_ОбменДаннымиСMSExchange
- DontUse
-
-
ScheduledJob.ПерестроениеАгрегатов
DontUse
@@ -1850,11 +1720,6 @@
DontUse
-
- ScheduledJob.CRM_ПолучениеИОтправкаЭлектронныхПисемПоток9
- DontUse
-
-
ScheduledJob.ОбновлениеСтатусовСертификатовНоменклатурыРосаккредитации
DontUse
@@ -2005,16 +1870,6 @@
DontUse
-
- ScheduledJob.сфпПолучитьИсториюЗвонков
- DontUse
-
-
-
- ScheduledJob.CRM_НачалоОтсутствияСотрудников
- DontUse
-
-
ScheduledJob.ЗакрытиеМесяца
DontUse
@@ -2040,11 +1895,6 @@
DontUse
-
- ScheduledJob.SMS4B_ПолучениеSMS
- DontUse
-
-
Constant.ИспользоватьОценкуПроизводительностиСинхронизацииДанных
DontUse
@@ -2105,11 +1955,6 @@
DontUse
-
- ScheduledJob.CRM_СвязыватьРанееПолученныеEmailиЗвонкиСКлиентами
- DontUse
-
-
Constant.КаталогРезервныхКопийВстроенногоХранилищаДвоичныхДанныхДляWindows
DontUse
@@ -2135,16 +1980,6 @@
DontUse
-
- ScheduledJob.CRM_РасчетСтатусовРаботыСКлиентами
- DontUse
-
-
-
- ScheduledJob.CRM_УдалениеНеактуальныхНапоминаний
- DontUse
-
-
ScheduledJob.МониторингЗадач
DontUse
@@ -2175,11 +2010,6 @@
DontUse
-
- ScheduledJob.CRM_ОтправкаОповещенийВМессенджер
- DontUse
-
-
InformationRegister.ДопустимыеЗначенияПотребительскихСвойствЗЕРНО
DontUse
@@ -2370,11 +2200,6 @@
DontUse
-
- ScheduledJob.CRM_ОчисткаВложенийЭлектронныхПисем
- DontUse
-
-
Constant.ВнешнийАдресУправляющегоПриложения
DontUse
@@ -2390,11 +2215,6 @@
DontUse
-
- ScheduledJob.CRM_ОбменСИнтернетМагазином
- DontUse
-
-
InformationRegister.СообщенияОбменаДаннымиОбластейДанных
DontUse
@@ -2440,11 +2260,6 @@
DontUse
-
- ScheduledJob.CRM_РегистрацияПотерянныхОбращений
- DontUse
-
-
ScheduledJob.ПолучениеЭлектронныхДокументов
DontUse
@@ -2475,11 +2290,6 @@
DontUse
-
- ScheduledJob.CRM_ПолучениеИОтправкаЭлектронныхПисемПоток3
- DontUse
-
-
ScheduledJob.ЗагрузкаСтатусовОперацийОблачныхКасс
DontUse
@@ -2525,11 +2335,6 @@
DontUse
-
- ScheduledJob.CRM_ПолучениеИОтправкаЭлектронныхПисемПоток4
- DontUse
-
-
Constant.РазмерБлокаПередачиФайла
DontUse
@@ -2560,11 +2365,6 @@
DontUse
-
- ScheduledJob.CRM_ФормированиеОповещений
- DontUse
-
-
IntegrationService.ОбменСообщениями
DontUse
@@ -2595,11 +2395,6 @@
DontUse
-
- ScheduledJob.CRM_РасчетПотенциалаКлиентов
- DontUse
-
-
Catalog.ВерсииПоставляемыхРасширений
DontUse
@@ -2635,11 +2430,6 @@
DontUse
-
- ScheduledJob.CRM_ОтложеннаяОтправкаСообщенийМессенджера
- DontUse
-
-
InformationRegister.ОтправленныеСерверныеОповещения
DontUse
@@ -2655,11 +2445,6 @@
DontUse
-
- ScheduledJob.CRM_ПолучениеИОтправкаЭлектронныхПисемПоток10
- DontUse
-
-
ScheduledJob.ВыгрузкаОстатковНаМаркетплейсы
DontUse
@@ -2775,11 +2560,6 @@
DontUse
-
- ScheduledJob.CRM_ЗагрузкаСквознойАналитики
- DontUse
-
-
ScheduledJob.УдалениеОтложенныхЧековККМ
DontUse
@@ -2950,11 +2730,6 @@
DontUse
-
- ScheduledJob.сфпОбновлениеРечевойАналитики
- DontUse
-
-
Constant.ПериодХраненияИсторииЗапусковЗаданийОчереди
DontUse
@@ -3095,11 +2870,6 @@
DontUse
-
- ScheduledJob.CRM_ФормированиеСоставаЗначенийКлассификаторов
- DontUse
-
-
Constant.ИспользоватьКонтрольТарификации
DontUse
@@ -3120,11 +2890,6 @@
DontUse
-
- ScheduledJob.сфпОбновлениеТелефонныхКниг
- DontUse
-
-
Constant.ИспользоватьПоставляемыеДанныеОрганизацийБизнесСеть
DontUse
@@ -3240,11 +3005,6 @@
DontUse
-
- ScheduledJob.CRM_ОжиданиеСобытийМессенджера
- DontUse
-
-
InformationRegister.РежимыПодключенияВнешнихМодулей
DontUse
@@ -3285,11 +3045,6 @@
DontUse
-
- ScheduledJob.CRM_СтатусыEmailРассылок
- DontUse
-
-
InformationRegister.БезопасноеХранилищеДанных
DontUse
diff --git a/src/CommonForms/CRM_НастройкаЭтаповБизнесПроцессов/Ext/Form.xml b/src/CommonForms/CRM_НастройкаЭтаповБизнесПроцессов/Ext/Form.xml
index 0eae9716b..8d389b73f 100644
--- a/src/CommonForms/CRM_НастройкаЭтаповБизнесПроцессов/Ext/Form.xml
+++ b/src/CommonForms/CRM_НастройкаЭтаповБизнесПроцессов/Ext/Form.xml
@@ -1207,7 +1207,6 @@
- табИсполнители_ПередУдалением
табИсполнители_ПриАктивизацииСтроки
табИсполнители_ПриНачалеРедактирования
табИсполнители_ПослеУдаления
@@ -1238,7 +1237,6 @@
true
false
Items
- false
38
0
@@ -1248,6 +1246,7 @@
табИсполнители_ИсполнительПриИзменении
табИсполнители_ИсполнительНачалоВыбора
+ табИсполнители_ИсполнительНачалоВыбораИзСписка
табИсполнители_ИсполнительОчистка
@@ -3042,6 +3041,14 @@ Executor. Actions are added via context menu of list.
ТочкаМаршрута_Шаблон
true
+
+
+
+
+ Enum.bpmТипыПроцессов.EnumValue.НезависимыйПроцесс
+
+
+
@@ -4776,37 +4783,6 @@ Executor. Actions are added via context menu of list.
-
-
-
- табИсполнители_Исполнитель
-
-
- табИсполнители_Все
-
-
-
-
- AndGroup
-
- ТипПроцесса
- Equal
- Перечисление.bpmТипыПроцессов.ПроцессОбъекта
-
-
- табИсполнители_.Исполнитель
- Equal
- Перечисление.CRM_ВидыИсполнителейЗадач.Ответственный
-
-
-
-
-
- ТолькоПросмотр
- true
-
-
-
diff --git a/src/CommonForms/CRM_НастройкаЭтаповБизнесПроцессов/Ext/Form/Module.bsl b/src/CommonForms/CRM_НастройкаЭтаповБизнесПроцессов/Ext/Form/Module.bsl
index 20401305a..e2c5457fa 100644
--- a/src/CommonForms/CRM_НастройкаЭтаповБизнесПроцессов/Ext/Form/Module.bsl
+++ b/src/CommonForms/CRM_НастройкаЭтаповБизнесПроцессов/Ext/Form/Module.bsl
@@ -1,5 +1,4 @@
-
-#Область ОбработчикиСобытийФормы
+#Область ОбработчикиСобытийФормы
&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
@@ -376,8 +375,8 @@
&НаКлиенте
Процедура ШаблонПриИзменении(Элемент)
- ТекущиеДанные = Элементы.табМаршрут_.ТекущиеДанные;
- ТекущиеДанные.Шаблон = ТочкаМаршрута_Шаблон;
+ ТекущиеДанные = Элементы.табМаршрут_.ТекущиеДанные;
+ ТекущиеДанные.Шаблон = ТочкаМаршрута_Шаблон;
КонецПроцедуры
@@ -542,13 +541,6 @@
ТекущиеДанныеИсп = Элементы.табИсполнители_.ТекущиеДанные;
ТекущиеДанныеИсп.Объект = Процесс;
ТекущиеДанныеИсп.ТочкаМаршрута = ТочкаМаршрута;
- ИначеЕсли НоваяСтрока И Копирование Тогда
- Если ТипПроцесса = ПредопределенноеЗначение("Перечисление.bpmТипыПроцессов.ПроцессОбъекта") Тогда
- ТекущиеДанныеИсп = Элементы.табИсполнители_.ТекущиеДанные;
- Если ТекущиеДанныеИсп.Исполнитель = ПредопределенноеЗначение("Перечисление.CRM_ВидыИсполнителейЗадач.Ответственный") Тогда
- ТекущиеДанныеИсп.Исполнитель = ПредопределенноеЗначение("Перечисление.CRM_ВидыИсполнителейЗадач.Автор");
- КонецЕсли;
- КонецЕсли;
КонецЕсли;
КонецПроцедуры
@@ -560,22 +552,9 @@
КонецПроцедуры
-&НаКлиенте
-Процедура табИсполнители_ПередУдалением(Элемент, Отказ)
-
- Отказ = (Элементы.табИсполнители_.ТекущиеДанные.Исполнитель = ПредопределенноеЗначение("Перечисление.CRM_ВидыИсполнителейЗадач.Ответственный") И
- ТипПроцесса = ПредопределенноеЗначение("Перечисление.bpmТипыПроцессов.ПроцессОбъекта"));
-
-КонецПроцедуры
-
&НаКлиенте
Процедура табИсполнители_ИсполнительПриИзменении(Элемент)
- Если Элементы.табИсполнители_.ТекущиеДанные.Исполнитель = ПредопределенноеЗначение("Перечисление.CRM_ВидыИсполнителейЗадач.Ответственный")
- И ТипПроцесса = ПредопределенноеЗначение("Перечисление.bpmТипыПроцессов.ПроцессОбъекта") Тогда
- Элементы.табИсполнители_.ТекущиеДанные.Исполнитель = ПредопределенноеЗначение("Перечисление.CRM_ВидыИсполнителейЗадач.Автор");
- КонецЕсли;
-
Элементы.табМаршрут_.ТекущиеДанные.ИсполнительСтрокой = ОбновитьИсполнителяСтрокой();
Элементы.табИсполнители_Все.ТолькоПросмотр = ПроверитьНаРоль(Элементы.табИсполнители_.ТекущиеДанные.Исполнитель);
@@ -604,7 +583,7 @@
Ммассив = Новый массив;
Ммассив.Добавить(Тип("СправочникСсылка.CRM_ТочкиМаршрутов"));
- СписокТипов.Добавить(Новый ОписаниеТипов(Ммассив),"Этап");
+ СписокТипов.Добавить(Новый ОписаниеТипов(Ммассив),"Исполнитель выбранного этапа");
СтандартнаяОбработка = Ложь;
ОписаниеОповещенияВыбора = Новый ОписаниеОповещения("табИсполнители_ИсполнительНачалоВыбораЗавершение", ЭтотОбъект, Элемент);
@@ -627,6 +606,11 @@
КонецПроцедуры
+&НаКлиенте
+Процедура табИсполнители_ИсполнительНачалоВыбораИзСписка(Элемент, СтандартнаяОбработка)
+ табИсполнители_ИсполнительНачалоВыбора(Элемент, Неопределено, СтандартнаяОбработка)
+КонецПроцедуры
+
&НаКлиенте
Процедура табИсполнители_ИсполнительНачалоВыбораЗавершение(ВыбранныйТип, Элемент) Экспорт
Если НЕ ВыбранныйТип = Неопределено Тогда
@@ -659,6 +643,7 @@
СтандартнаяОбработка = Ложь;
Элементы.табИсполнители_.ТекущиеДанные.Исполнитель = Неопределено;
+ Элементы.табИсполнители_Исполнитель.ОграничениеТипа = Новый ОписаниеТипов("Неопределено");
КонецПроцедуры
diff --git a/src/CommonForms/CRM_СтруктураПодчиненности/Ext/Form/Module.bsl b/src/CommonForms/CRM_СтруктураПодчиненности/Ext/Form/Module.bsl
index bd4c888df..e5f7e4a11 100644
--- a/src/CommonForms/CRM_СтруктураПодчиненности/Ext/Form/Module.bsl
+++ b/src/CommonForms/CRM_СтруктураПодчиненности/Ext/Form/Module.bsl
@@ -1253,12 +1253,16 @@
Если Не РолиПользователя.НайтиПоЗначению(ОбъектСсылка.РольИсполнителя) = Неопределено Тогда
Возврат Истина;
КонецЕсли;
+ ИначеЕсли ЗначениеЗаполнено(ОбъектСсылка.Автор) И ОбъектСсылка.Автор = ТекущийПользователь Тогда
+ Возврат Истина;
КонецЕсли;
ИначеЕсли ТипЗнч(ОбъектСсылка) = Тип("БизнесПроцессСсылка.CRM_БизнесПроцесс") Тогда
Если ЗначениеЗаполнено(ОбъектСсылка.Ответственный) И ОбъектСсылка.Ответственный = ТекущийПользователь Тогда
Возврат Истина;
+ ИначеЕсли ЗначениеЗаполнено(ОбъектСсылка.Автор) И ОбъектСсылка.Автор = ТекущийПользователь Тогда
+ Возврат Истина;
КонецЕсли;
КонецЕсли;
diff --git a/src/CommonForms/ЗапросСправочниковЗЕРНО/Ext/Form/Module.bsl b/src/CommonForms/ЗапросСправочниковЗЕРНО/Ext/Form/Module.bsl
index c493aef42..2e0ef68ff 100644
--- a/src/CommonForms/ЗапросСправочниковЗЕРНО/Ext/Form/Module.bsl
+++ b/src/CommonForms/ЗапросСправочниковЗЕРНО/Ext/Form/Module.bsl
@@ -33,7 +33,7 @@
// РаботаСПолямимСоставногоТипа
СобытияФормИС.ПоляСоставногоТипаИнициализация(ЭтотОбъект, ИменаЭлементовПолейСоставногоТипа());
// Конец РаботаСПолямимСоставногоТипа
-
+
ОбщегоНазначенияСобытияФормИСПереопределяемый.ПриСозданииНаСервере(ЭтотОбъект, Отказ, СтандартнаяОбработка);
КонецПроцедуры
@@ -755,7 +755,7 @@
СтраницыФормы = Форма.Элементы.ГруппаСтраницы;
СтраницыНавигации = Форма.Элементы.Навигация;
-
+
ИндексСтраницы = Форма.ИменаСтраниц.Найти(СтраницыФормы.ТекущаяСтраница.Имя);
КоличествоСтраниц = Форма.ИменаСтраниц.Количество();
@@ -778,7 +778,7 @@
Процедура ОпределитьТипОрганизацияКонтрагент(ТипВладельца, ОрганизацияКонтрагент)
ТипВладельца = ИнтеграцияЗЕРНО.ОпределитьТипОрганизацияКонтрагент(ОрганизацияКонтрагент);
-
+
КонецПроцедуры
#КонецОбласти
diff --git a/src/CommonForms/ОжиданиеПроверкиКодовМаркировкиИСМП/Ext/Form/Module.bsl b/src/CommonForms/ОжиданиеПроверкиКодовМаркировкиИСМП/Ext/Form/Module.bsl
index be27e8781..8c700bf5c 100644
--- a/src/CommonForms/ОжиданиеПроверкиКодовМаркировкиИСМП/Ext/Form/Module.bsl
+++ b/src/CommonForms/ОжиданиеПроверкиКодовМаркировкиИСМП/Ext/Form/Module.bsl
@@ -23,7 +23,7 @@
ДанныеСтрокиСообщения.Добавить(НСтр("ru = 'Подготовка к проверке средствами ККТ пожалуйста, подождите...'"));
Элементы.ДекорацияПоясняющийТекстДлительнойОперации.Заголовок = Новый ФорматированнаяСтрока(ДанныеСтрокиСообщения);
-
+
СтандартныеПодсистемыСервер.СброситьРазмерыИПоложениеОкна(ЭтотОбъект);
КонецПроцедуры
@@ -130,7 +130,7 @@
Если НавигационнаяСсылкаФорматированнойСтроки = "СкопироватьШтриховойКодВБуферОбмена" Тогда
СтандартнаяОбработка = Ложь;
- ОбщегоНазначенияИСКлиент.СкопироватьШтрихКодВБуферОбмена(Элементы.БуферОбмена, КодМаркировки);
+ ОбщегоНазначенияИСКлиент.СкопироватьШтрихкодВБуферОбмена(Элементы.БуферОбмена, КодМаркировки);
КонецЕсли;
diff --git a/src/CommonForms/УточнениеКоэффициентовУпаковокИСМП/Ext/Form/Module.bsl b/src/CommonForms/УточнениеКоэффициентовУпаковокИСМП/Ext/Form/Module.bsl
index 5dc1f98e0..832ed5f96 100644
--- a/src/CommonForms/УточнениеКоэффициентовУпаковокИСМП/Ext/Form/Module.bsl
+++ b/src/CommonForms/УточнениеКоэффициентовУпаковокИСМП/Ext/Form/Module.bsl
@@ -161,8 +161,8 @@
Процедура ПриОткрытии(Отказ)
Если ИспользуетсяСервис1СНоменклатура Тогда
- ШтрихКоды = ШтрихкодыНоменклатурыКОпределению();
- ПолучитьНоменклатуруПоШтрихкодамВСервисе(ШтрихКоды);
+ Штрихкоды = ШтрихкодыНоменклатурыКОпределению();
+ ПолучитьНоменклатуруПоШтрихкодамВСервисе(Штрихкоды);
КонецЕсли;
КонецПроцедуры
@@ -914,7 +914,7 @@
КонецПроцедуры
&НаКлиенте
-Процедура ПолучитьНоменклатуруПоШтрихкодамВСервисе(ШтрихКоды)
+Процедура ПолучитьНоменклатуруПоШтрихкодамВСервисе(Штрихкоды)
НастроитьФормуПриДлительнойОперации(Истина, "Поиск");
@@ -925,7 +925,7 @@
МодульРаботаСНоменклатуройКлиент().ПолучитьНоменклатуруПоШтрихкодам(
ОписаниеОповещения,
- ШтрихКоды,
+ Штрихкоды,
ЭтотОбъект,
ИдентификаторЗадания,
Элементы.ГруппаДекорацииДлительнойОперации);
diff --git a/src/CommonForms/УточнениеСоставаУпаковкиИС/Ext/Form.xml b/src/CommonForms/УточнениеСоставаУпаковкиИС/Ext/Form.xml
index 0f97868ae..2854ae51c 100644
--- a/src/CommonForms/УточнениеСоставаУпаковкиИС/Ext/Form.xml
+++ b/src/CommonForms/УточнениеСоставаУпаковкиИС/Ext/Form.xml
@@ -71,6 +71,18 @@
+
+ false
+ style:ТекстИнформационнойНадписиИС
+
+
+ ru
+ Для группового сопоставления выделите несколько строк в табличной части <b>Коды</><b> </><b>требующие</><b> </><b>уточнения</> и выберите один из вариантов в таблице <b>Варианты</><b> </><b>сопоставления</>, нажмите "<b><<</>" для сопоставления выделенных<b>,</><b> </>или нажмите "<b><<<<</>"<b> </>для сопоставления всех подходящих строк (без учета выделеных строк)
+
+
+
+
+
@@ -161,7 +173,6 @@
ДанныеДляУточнения.Номенклатура
- EnterOnInput
DontUse
@@ -173,14 +184,12 @@
ДанныеДляУточнения.Характеристика
- EnterOnInput
true
ДанныеДляУточнения.Серия
- EnterOnInput
true
@@ -190,7 +199,6 @@
ДанныеДляУточнения.ИдентификаторПроисхожденияВЕТИС
- EnterOnInput
true
DontUse
@@ -440,18 +448,6 @@
-
- false
- style:ТекстИнформационнойНадписиИС
-
-
- ru
- Для группового сопоставления выделите несколько строк в табличной части <b>Коды</><b> </><b>требующие</><b> </><b>уточнения</> и выберите один из вариантов в таблице <b>Варианты</><b> </><b>сопоставления</>, нажмите "<b><<</>" для сопоставления выделенных<b>,</><b> </>или нажмите "<b><<<<</>"<b> </>для сопоставления всех подходящих строк (без учета выделеных строк)
-
-
-
-
-
@@ -478,6 +474,43 @@
+
+
+
+ ru
+ Группа запомнить выбор
+
+
+
+
+ ru
+ Группа запомнить выбор
+
+
+ AlwaysHorizontal
+ Left
+ None
+ false
+
+
+
+ ЗапомнитьВыбор
+ Right
+ ShowBottom
+ CheckBox
+
+
+ false
+
+
+ ru
+ При последовательном уточнении однородных упаковок не будет показываться эта форма. Будут использованы указанные данные.
+
+
+
+
+
+
@@ -979,6 +1012,21 @@
xs:boolean
+
+
+
+ ru
+ GTIN
+
+
+
+ xs:string
+
+ 0
+ Variable
+
+
+
@@ -1053,6 +1101,17 @@
+
+
+
+ ru
+ Запомнить выбор
+
+
+
+ xs:boolean
+
+
diff --git a/src/CommonForms/УточнениеСоставаУпаковкиИС/Ext/Form/Module.bsl b/src/CommonForms/УточнениеСоставаУпаковкиИС/Ext/Form/Module.bsl
index fc58e2fe0..788235f9c 100644
--- a/src/CommonForms/УточнениеСоставаУпаковкиИС/Ext/Form/Module.bsl
+++ b/src/CommonForms/УточнениеСоставаУпаковкиИС/Ext/Form/Module.bsl
@@ -27,7 +27,7 @@
Если Не ИспользоватьСерииНоменклатуры Тогда
Элементы.ДанныеДляУточненияСерия.Видимость = Ложь;
КонецЕсли;
-
+
ОбщегоНазначенияСобытияФормИСПереопределяемый.ПриСозданииНаСервере(ЭтотОбъект, Отказ, СтандартнаяОбработка);
КонецПроцедуры
@@ -48,7 +48,7 @@
Процедура ПоясняющийТекстОбработкаНавигационнойСсылки(Элемент, НавигационнаяСсылкаФорматированнойСтроки, СтандартнаяОбработка)
СтандартнаяОбработка = Ложь;
- ОбщегоНазначенияИСКлиент.СкопироватьШтрихКодВБуферОбмена(Элементы.БуферОбмена, КодМаркировки);
+ ОбщегоНазначенияИСКлиент.СкопироватьШтрихкодВБуферОбмена(Элементы.БуферОбмена, КодМаркировки);
КонецПроцедуры
@@ -293,7 +293,13 @@
Склад = ПараметрыСканирования.Склад;
ДеревоУпаковок = ПолучитьИзВременногоХранилища(АдресДереваУпаковок);
Упаковка = НайтиСтрокуДереваПоКодуМаркировки(ДеревоУпаковок, КодМаркировки);
- ЗаполнитьТребующиеУточненияДанныеУпаковки(Упаковка, ПараметрыСканирования.ДетализацияСтруктурыХранения);
+ ЕстьКолонкаЭтоШтрихкодНоменклатуры = ДеревоУпаковок.Колонки.Найти("ЭтоШтрихкодНоменклатуры") <> Неопределено;
+ РазрешитьСохранениеДанных = ПараметрыСканирования.ИспользуютсяДанныеВыбораПоМаркируемойПродукции;
+ Если ЕстьКолонкаЭтоШтрихкодНоменклатуры Тогда
+ ЗаполнитьТребующиеУточненияДанныеУпаковки(Упаковка, ПараметрыСканирования.ДетализацияСтруктурыХранения, РазрешитьСохранениеДанных);
+ Иначе
+ ЗаполнитьТребующиеУточненияДанныеУпаковки(Упаковка, ПараметрыСканирования.ДетализацияСтруктурыХранения);
+ КонецЕсли;
ИнтеграцияИСПереопределяемый.ЗаполнитьСлужебныеРеквизитыВКоллекции(ЭтотОбъект, ДанныеДляУточнения, ПараметрыСканирования);
ОбработатьРежимВыбораИзДокумента();
@@ -316,6 +322,8 @@
Элементы.ДанныеДляУточненияНоменклатура.АвтоОтметкаНезаполненного = Истина;
КонецЕсли;
+ Элементы.ГруппаЗапомнитьВыбор.Видимость = РазрешитьСохранениеДанных;
+
КонецПроцедуры
&НаСервере
@@ -326,7 +334,7 @@
Заголовок = НСтр("ru = 'Групповая обработка кодов маркировки'");
Иначе
-
+
Элементы.ПоясняющийТекст.Высота = 2;
МассивСтрок = Новый Массив;
МассивСтрок.Добавить(Новый ФорматированнаяСтрока(НСтр("ru = 'Обработка кода упаковки:'"),, ЦветаСтиля.ПоясняющийТекст));
@@ -434,7 +442,7 @@
КонецПроцедуры
&НаСервере
-Процедура ЗаполнитьТребующиеУточненияДанныеУпаковки(СтрокаДерева, ДетализацияСтруктурыХранения)
+Процедура ЗаполнитьТребующиеУточненияДанныеУпаковки(СтрокаДерева, ДетализацияСтруктурыХранения, РазрешитьСохранениеДанных = Ложь)
Если СтрокаДерева.ВидУпаковки = Перечисления.ВидыУпаковокИС.Потребительская
Или СтрокаДерева.ВидУпаковки = Перечисления.ВидыУпаковокИС.Групповая
@@ -443,6 +451,7 @@
И ДетализацияСтруктурыХранения = Перечисления.ДетализацияСтруктурыХраненияИС.КоробаСГрупповымиУпаковками) Тогда
ТребуетсяУточнение = Не ЗначениеЗаполнено(СтрокаДерева.Номенклатура);
+ РазрешитьСохранениеДанных = РазрешитьСохранениеДанных И Не СтрокаДерева.ЭтоШтрихкодНоменклатуры;
Если Не ТребуетсяУточнение
И Не ЗначениеЗаполнено(СтрокаДерева.Серия)
@@ -483,7 +492,7 @@
И СтрокаДерева.ТипУпаковки = Перечисления.ТипыУпаковок.МультитоварнаяУпаковка Тогда
Для Каждого ВложеннаяСтрока Из СтрокаДерева.Строки Цикл
- ЗаполнитьТребующиеУточненияДанныеУпаковки(ВложеннаяСтрока, ДетализацияСтруктурыХранения);
+ ЗаполнитьТребующиеУточненияДанныеУпаковки(ВложеннаяСтрока, ДетализацияСтруктурыХранения, РазрешитьСохранениеДанных);
КонецЦикла;
КонецЕсли;
@@ -491,7 +500,7 @@
Иначе
Для Каждого ВложеннаяСтрока Из СтрокаДерева.Строки Цикл
- ЗаполнитьТребующиеУточненияДанныеУпаковки(ВложеннаяСтрока, ДетализацияСтруктурыХранения);
+ ЗаполнитьТребующиеУточненияДанныеУпаковки(ВложеннаяСтрока, ДетализацияСтруктурыХранения, РазрешитьСохранениеДанных);
КонецЦикла;
КонецЕсли;
@@ -522,7 +531,7 @@
&НаСервере
Функция НайтиСтрокуДереваПоКодуМаркировки(ДеревоУпаковок, КодМаркировки)
- Возврат ДеревоУпаковок.Строки.Найти(КодМаркировки, "ШтрихКод", Истина);
+ Возврат ДеревоУпаковок.Строки.Найти(КодМаркировки, "Штрихкод", Истина);
КонецФункции
@@ -715,6 +724,16 @@
Возврат;
КонецЕсли;
+ СтруктураВозврата = ШтрихкодированиеИСКлиент.ИнициализацияСтруктурыДанныхСохраненногоВыбора();
+ СтруктураВозврата.Вставить("КодМаркировки", КодМаркировки);
+ СтруктураВозврата.Вставить("ЗапомнитьВыбор", ЗапомнитьВыбор);
+
+ Если ЗапомнитьВыбор Тогда
+ СтруктураВозврата.ДанныеВыбора.Агрегация = СохраненныйВыборПоТаблице();
+ Иначе
+ СтруктураВозврата.ДанныеВыбора = Неопределено;
+ КонецЕсли;
+
Закрыть(КодМаркировки);
КонецПроцедуры
@@ -830,6 +849,36 @@
КонецФункции
+&НаКлиенте
+Функция СохраненныйВыборПоТаблице()
+
+ РезультатУточнения = Новый Массив;
+ УточненныеЭлементы = Новый Соответствие;
+
+ Для Каждого СтрокаТаблицы Из ДанныеДляУточнения Цикл
+ Если УточненныеЭлементы.Получить(СтрокаТаблицы.GTIN)<> Неопределено Тогда
+ Продолжить;
+ ИначеЕсли УточненныеЭлементы.Получить(СтрокаТаблицы.АлкогольнаяПродукция)<> Неопределено Тогда
+ Продолжить;
+ ИначеЕсли РазборКодаМаркировкиИССлужебныйКлиентСервер.ЭтоEANИлиGTIN(СтрокаТаблицы.Штрихкод) Тогда
+ Продолжить;
+ КонецЕсли;
+ Если ЗначениеЗаполнено(СтрокаТаблицы.GTIN) Тогда
+ УточненныеЭлементы.Вставить(СтрокаТаблицы.GTIN);
+ Иначе
+ УточненныеЭлементы.Вставить(СтрокаТаблицы.АлкогольнаяПродукция);
+ КонецЕсли;
+
+ СохраненныйВыборПоСтроке = ШтрихкодированиеИСКлиент.ИнициализацияСтруктурыДанныхСохраненногоВыбора();
+ ЗаполнитьЗначенияСвойств(СохраненныйВыборПоСтроке.ДанныеВыбора, СтрокаТаблицы);
+ СохраненныйВыборПоСтроке.ДанныеВыбора.ГоденДо = СтрокаТаблицы.СрокГодности;
+ РезультатУточнения.Добавить(ОбщегоНазначенияКлиент.СкопироватьРекурсивно(СохраненныйВыборПоСтроке.ДанныеВыбора));
+ КонецЦикла;
+
+ Возврат РезультатУточнения;
+
+КонецФункции
+
&НаСервере
Функция ОбновитьИзмененныеОбъекты()
@@ -991,7 +1040,7 @@
ОбновитьВложенныеДанныеУпаковокПоУпаковке(СтрокаРезультат, ВложенныйЭлемент, ГруппыКПересортировке);
КонецЦикла;
- ЗаполнитьЗначенияСвойств(СтрокаДерева, СтрокаРезультат,,"Количество, Штрихкод, ВидУпаковки");
+ ЗаполнитьЗначенияСвойств(СтрокаДерева, СтрокаРезультат,,"Количество, Штрихкод, ВидУпаковки, GTIN");
Если СтрокаДерева.Родитель <> Неопределено Тогда
ГруппыКПересортировке.Вставить(СтрокаДерева.Родитель);
diff --git a/src/CommonForms/ФормаНастройкиНоменклатурыИС/Ext/Form/Module.bsl b/src/CommonForms/ФормаНастройкиНоменклатурыИС/Ext/Form/Module.bsl
index e14596472..3276e7cad 100644
--- a/src/CommonForms/ФормаНастройкиНоменклатурыИС/Ext/Form/Module.bsl
+++ b/src/CommonForms/ФормаНастройкиНоменклатурыИС/Ext/Form/Module.bsl
@@ -30,7 +30,7 @@
НастроитьЭлементыФормыНаСервере();
СтандартныеПодсистемыСервер.СброситьРазмерыИПоложениеОкна(ЭтотОбъект);
-
+
СобытияФормИСМППереопределяемый.ПриСозданииНаСервере(ЭтотОбъект, Отказ, СтандартнаяОбработка);
ОбщегоНазначенияИС.ПрименитьУсловноеОформлениеКПолю(ЭтотОбъект, "ХарактеристикаЧастичногоВыбытия");
diff --git a/src/CommonForms/ФормаОшибкиАвторизацииРазрешительногоРежима/Ext/Form/Module.bsl b/src/CommonForms/ФормаОшибкиАвторизацииРазрешительногоРежима/Ext/Form/Module.bsl
index e3b6e3c56..0c9d6a417 100644
--- a/src/CommonForms/ФормаОшибкиАвторизацииРазрешительногоРежима/Ext/Form/Module.bsl
+++ b/src/CommonForms/ФормаОшибкиАвторизацииРазрешительногоРежима/Ext/Form/Module.bsl
@@ -9,7 +9,7 @@
КонецЕсли;
ТестовыйКонтур = ПолучитьФункциональнуюОпцию("РежимРаботыСТестовымКонтуромИСМП");
-
+
КонецПроцедуры
#КонецОбласти
diff --git a/src/CommonForms/ФормаУточненияДанныхИС/Ext/Form.xml b/src/CommonForms/ФормаУточненияДанныхИС/Ext/Form.xml
index 64f0817b3..a2bd955f6 100644
--- a/src/CommonForms/ФормаУточненияДанныхИС/Ext/Form.xml
+++ b/src/CommonForms/ФормаУточненияДанныхИС/Ext/Form.xml
@@ -203,6 +203,9 @@
АлкогольнаяПродукция
+
+ АлкогольнаяПродукцияПриИзменении
+
Справка2
diff --git a/src/CommonForms/ФормаУточненияДанныхИС/Ext/Form/Module.bsl b/src/CommonForms/ФормаУточненияДанныхИС/Ext/Form/Module.bsl
index f239549f9..b66812687 100644
--- a/src/CommonForms/ФормаУточненияДанныхИС/Ext/Form/Module.bsl
+++ b/src/CommonForms/ФормаУточненияДанныхИС/Ext/Form/Module.bsl
@@ -404,9 +404,18 @@
СтандартнаяОбработка = Ложь;
Если НавигационнаяСсылкаФорматированнойСтроки = "СкопироватьШтрихкодБуферОбмена" Тогда
- ОбщегоНазначенияИСКлиент.СкопироватьШтрихКодВБуферОбмена(Элементы.БуферОбмена, ШтрихкодEAN);
+ ОбщегоНазначенияИСКлиент.СкопироватьШтрихкодВБуферОбмена(Элементы.БуферОбмена, ШтрихкодEAN);
ИначеЕсли НавигационнаяСсылкаФорматированнойСтроки = "СкопироватьКодМаркировкиВБуферОбмена" Тогда
- ОбщегоНазначенияИСКлиент.СкопироватьШтрихКодВБуферОбмена(Элементы.БуферОбмена, КодМаркировки);
+ ОбщегоНазначенияИСКлиент.СкопироватьШтрихкодВБуферОбмена(Элементы.БуферОбмена, КодМаркировки);
+ КонецЕсли;
+
+КонецПроцедуры
+
+&НаКлиенте
+Процедура АлкогольнаяПродукцияПриИзменении(Элемент)
+
+ Если Не ЗначениеЗаполнено(Номенклатура) И ЗначениеЗаполнено(АлкогольнаяПродукция) Тогда
+ АлкогольнаяПродукцияПриИзмененииСервер();
КонецЕсли;
КонецПроцедуры
@@ -585,6 +594,25 @@
КонецПроцедуры
+&НаСервере
+Процедура АлкогольнаяПродукцияПриИзмененииСервер()
+
+ ТаблицаСопоставления = Новый ТаблицаЗначений;
+ ТаблицаСопоставления.Колонки.Добавить("АлкогольнаяПродукция",
+ Новый ОписаниеТипов(
+ ОбщегоНазначенияКлиентСервер.ЗначениеВМассиве(
+ ТипЗнч(АлкогольнаяПродукция))));
+ ДанныеСопоставления = ТаблицаСопоставления.Добавить();
+ ДанныеСопоставления.АлкогольнаяПродукция = АлкогольнаяПродукция;
+ Модуль = ОбщегоНазначения.ОбщийМодуль("ИнтеграцияЕГАИС");
+ Модуль.ЗаполнитьСопоставленнуюПродукцию(ТаблицаСопоставления);
+ Если ЗначениеЗаполнено(ДанныеСопоставления.Номенклатура) Тогда
+ ЗаполнитьЗначенияСвойств(ЭтотОбъект, ДанныеСопоставления);
+ НоменклатураПриИзмененииСервер();
+ КонецЕсли;
+
+КонецПроцедуры
+
&НаСервере
Процедура ОбновитьОтображениеПоляКоличество()
@@ -930,7 +958,7 @@
&НаСервере
Процедура ЗаполнитьИдентификаторыЕГАИС()
- Если ЗапрашиватьАлкогольнуюПродукцию Тогда
+ Если ЗапрашиватьАлкогольнуюПродукцию И Не ЗначениеЗаполнено(АлкогольнаяПродукция) Тогда
Модуль = ОбщегоНазначения.ОбщийМодуль("ИнтеграцияЕГАИСКлиентСервер");
ПараметрыЗаполненияТабличнойЧасти = Модуль.ПараметрыЗаполненияТабличнойЧасти();
@@ -953,7 +981,7 @@
КонецЕсли;
- Если ЗапрашиватьСправку2 Тогда
+ Если ЗапрашиватьСправку2 И Не ЗначениеЗаполнено(Справка2) Тогда
СписокВыбора = РегистрыНакопления["ОстаткиАлкогольнойПродукцииЕГАИС"].Справки2ВНаличии(ПараметрыСканирования.ОрганизацияЕГАИС, АлкогольнаяПродукция);
Элементы.Справка2.СписокВыбора.ЗагрузитьЗначения(СписокВыбора);
diff --git a/src/CommonModules/CRM_MSExchangeВызовСервера/Ext/Module.bsl b/src/CommonModules/CRM_MSExchangeВызовСервера/Ext/Module.bsl
index cb22f1437..47c8f0e58 100644
--- a/src/CommonModules/CRM_MSExchangeВызовСервера/Ext/Module.bsl
+++ b/src/CommonModules/CRM_MSExchangeВызовСервера/Ext/Module.bsl
@@ -3479,8 +3479,8 @@
Если ЗначениеЗаполнено(Location) Тогда
ДанныеЗаполнения.Вставить("Место", Location);
КонецЕсли;
- ДанныеЗаполнения.Вставить("Ответственный", Настройка.УчетнаяЗапись.Пользователь);
- ДанныеЗаполнения.Вставить("Автор", Настройка.УчетнаяЗапись.Пользователь);
+ ДанныеЗаполнения.Вставить("Ответственный", Настройка.УчетнаяЗапись.Пользователь);
+ ДанныеЗаполнения.Вставить("Автор", Настройка.УчетнаяЗапись.Пользователь);
СтруктураУчастников = Неопределено;
Если Настройка.ИскатьКонтактыПоАдресамEMail Тогда
СтруктураУчастников = ПолучитьУчастниковСобытия1С(СтрокаТаблицы, Настройка, СоответствияАдресовИКонтактов);
@@ -3493,9 +3493,9 @@
Иначе
Если ТипЗнч(СтруктураУчастников) = Тип("Структура") И ЗначениеЗаполнено(СтруктураУчастников.Организатор.Участник)
И (ТипЗнч(СтруктураУчастников.Организатор.Участник) = Тип("СправочникСсылка.Пользователи")) Тогда
- ДанныеЗаполнения.Вставить("Ответственный", СтруктураУчастников.Организатор.Участник);
+ ДанныеЗаполнения.Вставить("Ответственный", СтруктураУчастников.Организатор.Участник);
Иначе
- ДанныеЗаполнения.Вставить("Ответственный", Настройка.УчетнаяЗапись.Пользователь);
+ ДанныеЗаполнения.Вставить("Ответственный", Настройка.УчетнаяЗапись.Пользователь);
КонецЕсли;
КонецЕсли;
Если (ТипЗнч(СобытиеСсылка) = Тип("ДокументСсылка.CRM_Взаимодействие")) И ЗначениеЗаполнено(СобытиеСсылка) Тогда
@@ -3530,16 +3530,14 @@
Если МассивСвоихЛиц.Найти(СтруктураУчастник.Участник) = Неопределено Тогда
МассивСвоихЛиц.Добавить(СтруктураУчастник.Участник);
КонецЕсли;
- Если СтруктураУчастник.Участник = СобытиеОбъект.Ответственный Тогда
- Продолжить;
- ИначеЕсли СобытиеОбъект.СвоиЛица.Найти(СтруктураУчастник.Участник, "Лицо") = Неопределено Тогда
- НоваяСтрока = СобытиеОбъект.СвоиЛица.Добавить();
- НоваяСтрока.Лицо = СтруктураУчастник.Участник;
- НоваяСтрока.Адрес = СтруктураУчастник.Адрес;
+ Если СобытиеОбъект.СвоиЛица.Найти(СтруктураУчастник.Участник, "Лицо") = Неопределено Тогда
+ НоваяСтрока = СобытиеОбъект.СвоиЛица.Добавить();
+ НоваяСтрока.Лицо = СтруктураУчастник.Участник;
+ НоваяСтрока.Адрес = СтруктураУчастник.Адрес;
КонецЕсли;
КонецЕсли;
КонецЦикла;
- КоличествоУчастников = СобытиеОбъект.СторонниеЛица.Количество();
+ КоличествоУчастников = СобытиеОбъект.СторонниеЛица.Количество();
Для НомерСтроки = 1 По КоличествоУчастников Цикл
СтрокаУчастника = СобытиеОбъект.СторонниеЛица[КоличествоУчастников - НомерСтроки];
Если ЗначениеЗаполнено(СтрокаУчастника.КонтактноеЛицо) Тогда
@@ -3550,7 +3548,7 @@
СобытиеОбъект.СторонниеЛица.Удалить(КоличествоУчастников - НомерСтроки);
КонецЕсли;
КонецЦикла;
- КоличествоУчастников = СобытиеОбъект.СвоиЛица.Количество();
+ КоличествоУчастников = СобытиеОбъект.СвоиЛица.Количество();
Для НомерСтроки = 1 По КоличествоУчастников Цикл
СтрокаУчастника = СобытиеОбъект.СвоиЛица[КоличествоУчастников - НомерСтроки];
Если (МассивСвоихЛиц.Найти(СтрокаУчастника.Лицо) = Неопределено) Тогда
@@ -3568,13 +3566,11 @@
КонецПопытки;
Если ОбновляетсяСуществующийОбъект Тогда
CRM_MSExchangeСерверЭкспортныеМетоды.ОбновитьChangeKeyВСоответствииОбъектовMSExchange(Настройка.УчетнаяЗапись,
- СобытиеОбъект.Ссылка,
- СтрокаТаблицы.ChangeKey);
+ СобытиеОбъект.Ссылка, СтрокаТаблицы.ChangeKey);
Иначе
CRM_MSExchangeСерверЭкспортныеМетоды.ЗаписатьСоответствиеОбъектовMSExchange(Настройка.УчетнаяЗапись,
- СобытиеОбъект.Ссылка, СтрокаТаблицы.ID, СтрокаТаблицы.ChangeKey,
- ?(ЗначениеЗаполнено(ДатаВремяНачалаОбмена), ДатаВремяНачалаОбмена - 1,
- Неопределено));
+ СобытиеОбъект.Ссылка, СтрокаТаблицы.ID, СтрокаТаблицы.ChangeKey,
+ ?(ЗначениеЗаполнено(ДатаВремяНачалаОбмена), ДатаВремяНачалаОбмена - 1, Неопределено));
КонецЕсли;
Возврат СобытиеОбъект.Ссылка;
КонецФункции
diff --git a/src/CommonModules/CRM_MSExchangeСервер/Ext/Module.bin b/src/CommonModules/CRM_MSExchangeСервер/Ext/Module.bin
index 236785f11..dbf35bfdc 100644
Binary files a/src/CommonModules/CRM_MSExchangeСервер/Ext/Module.bin and b/src/CommonModules/CRM_MSExchangeСервер/Ext/Module.bin differ
diff --git a/src/CommonModules/CRM_КлассификаторыВызовСервера/Ext/Module.bin b/src/CommonModules/CRM_КлассификаторыВызовСервера/Ext/Module.bin
index 19e6803fd..b0b59c6c2 100644
Binary files a/src/CommonModules/CRM_КлассификаторыВызовСервера/Ext/Module.bin and b/src/CommonModules/CRM_КлассификаторыВызовСервера/Ext/Module.bin differ
diff --git a/src/CommonModules/CRM_ЛицензированиеСервер/Ext/Module.bin b/src/CommonModules/CRM_ЛицензированиеСервер/Ext/Module.bin
index 4b38ef2bc..2c57a97dd 100644
Binary files a/src/CommonModules/CRM_ЛицензированиеСервер/Ext/Module.bin and b/src/CommonModules/CRM_ЛицензированиеСервер/Ext/Module.bin differ
diff --git a/src/CommonModules/CRM_Модуль_ОбновлениеИнформационнойБазы/Ext/Module.bsl b/src/CommonModules/CRM_Модуль_ОбновлениеИнформационнойБазы/Ext/Module.bsl
index 665f37a88..157b70dd1 100644
--- a/src/CommonModules/CRM_Модуль_ОбновлениеИнформационнойБазы/Ext/Module.bsl
+++ b/src/CommonModules/CRM_Модуль_ОбновлениеИнформационнойБазы/Ext/Module.bsl
@@ -34,7 +34,7 @@
Процедура ПриДобавленииПодсистемы(Описание) Экспорт
Описание.Имя = "CRMМодуль";
- Описание.Версия = "3.1.36.27";
+ Описание.Версия = "3.1.36.45";
Описание.РежимВыполненияОтложенныхОбработчиков = "Параллельно";
КонецПроцедуры
@@ -59,7 +59,7 @@
"ИмяПодсистемы, ИдентификаторИнтернетПоддержки, Версия",
?(CRM_ОбщегоНазначенияПовтИсп.ЭтоУХ(), "CRMМодульERP_УХ", "CRMМодуль"),
?(CRM_ОбщегоНазначенияПовтИсп.ЭтоУХ(), "CRMModuleERP_UH", "CRMModuleERP"),
- "3.1.36.27")); // Версия Модуля CRM (см.в процедуре ПриДобавленииПодсистемы() данного модуля).
+ "3.1.36.45")); // Версия Модуля CRM (см.в процедуре ПриДобавленииПодсистемы() данного модуля).
КонецПроцедуры
diff --git a/src/CommonModules/CRM_ОбменСВнешнимиКалендарями/Ext/Module.bsl b/src/CommonModules/CRM_ОбменСВнешнимиКалендарями/Ext/Module.bsl
index 9748bec69..297bccaf5 100644
--- a/src/CommonModules/CRM_ОбменСВнешнимиКалендарями/Ext/Module.bsl
+++ b/src/CommonModules/CRM_ОбменСВнешнимиКалендарями/Ext/Module.bsl
@@ -607,8 +607,10 @@
| ВсеНастройкиСинхронизацииУчетнойЗаписи.КалендарьСотрудника КАК КалендарьСотрудника
|ИЗ
| ДанныеСобытий КАК ДанныеСобытий
- | ЛЕВОЕ СОЕДИНЕНИЕ ВсеНастройкиСинхронизацииУчетнойЗаписи КАК ВсеНастройкиСинхронизацииУчетнойЗаписи
+ | ВНУТРЕННЕЕ СОЕДИНЕНИЕ ВсеНастройкиСинхронизацииУчетнойЗаписи КАК ВсеНастройкиСинхронизацииУчетнойЗаписи
| ПО ДанныеСобытий.Узел.Календарь = ВсеНастройкиСинхронизацииУчетнойЗаписи.КалендарьСотрудника
+ |ГДЕ
+ | ДанныеСобытий.Узел.Календарь = ВсеНастройкиСинхронизацииУчетнойЗаписи.КалендарьСотрудника
|
|УПОРЯДОЧИТЬ ПО
| ДанныеСобытий.Узел");
diff --git a/src/CommonModules/CRM_ОбновлениеИнформационнойБазыСпарка/Ext/Module.bsl b/src/CommonModules/CRM_ОбновлениеИнформационнойБазыСпарка/Ext/Module.bsl
index 331329016..4b62f70d4 100644
--- a/src/CommonModules/CRM_ОбновлениеИнформационнойБазыСпарка/Ext/Module.bsl
+++ b/src/CommonModules/CRM_ОбновлениеИнформационнойБазыСпарка/Ext/Module.bsl
@@ -40,7 +40,7 @@
Описание.Имя = "КомплекснаяАвтоматизация_CRM";
Описание.ИдентификаторИнтернетПоддержки = "ARAutomation";
КонецЕсли;
- Описание.Версия = "11.5.27.47";
+ Описание.Версия = "11.5.27.52";
Описание.РежимВыполненияОтложенныхОбработчиков = "Параллельно";
КонецПроцедуры
diff --git a/src/CommonModules/CRM_ОбщегоНазначенияСервер/Ext/Module.bsl b/src/CommonModules/CRM_ОбщегоНазначенияСервер/Ext/Module.bsl
index 394133a27..85811b82c 100644
--- a/src/CommonModules/CRM_ОбщегоНазначенияСервер/Ext/Module.bsl
+++ b/src/CommonModules/CRM_ОбщегоНазначенияСервер/Ext/Module.bsl
@@ -11368,6 +11368,10 @@
ИЛИ НЕ (Источник.Ссылка.ДатаРождения = Источник.ДатаРождения) Тогда
КорректироватьНапоминание = Истина;
КонецЕсли;
+ Если Источник.Владелец <> Источник.Ссылка.Владелец
+ И Источник.Ссылка.Владелец.CRM_ОсновноеКонтактноеЛицо = Источник.Ссылка Тогда
+ Источник.ДополнительныеСвойства.Вставить("ОчиститьОсновноеКЛПредыдущегоВладельца", Источник.Ссылка.Владелец);
+ КонецЕсли;
КонецЕсли;
CRM_СтатусыТемп = "";
@@ -11415,6 +11419,13 @@
Источник.ДополнительныеСвойства.КаналПервичногоИнтереса,
Источник.ДополнительныеСвойства.ИсточникПервичногоИнтереса);
КонецЕсли;
+ Если ТипЗнч(Источник) = Тип("СправочникОбъект.КонтактныеЛицаПартнеров")
+ И Источник.ДополнительныеСвойства.Свойство("ОчиститьОсновноеКЛПредыдущегоВладельца")
+ И ЗначениеЗаполнено(Источник.ДополнительныеСвойства.ОчиститьОсновноеКЛПредыдущегоВладельца) Тогда
+ ПВладелец = Источник.ДополнительныеСвойства.ОчиститьОсновноеКЛПредыдущегоВладельца.ПолучитьОбъект();
+ ПВладелец.CRM_ОсновноеКонтактноеЛицо = Неопределено;
+ ПВладелец.Записать();
+ КонецЕсли;
КонецПроцедуры
diff --git a/src/CommonModules/CRM_УТ_ОбновлениеИнформационнойБазы/Ext/Module.bsl b/src/CommonModules/CRM_УТ_ОбновлениеИнформационнойБазы/Ext/Module.bsl
index 4c089d881..f6285f718 100644
--- a/src/CommonModules/CRM_УТ_ОбновлениеИнформационнойБазы/Ext/Module.bsl
+++ b/src/CommonModules/CRM_УТ_ОбновлениеИнформационнойБазы/Ext/Module.bsl
@@ -34,7 +34,7 @@
Процедура ПриДобавленииПодсистемы(Описание) Экспорт
Описание.Имя = "УправлениеТорговлей_CRM_2";
- Описание.Версия = "3.1.36.31";
+ Описание.Версия = "3.1.36.33";
Описание.РежимВыполненияОтложенныхОбработчиков = "Параллельно";
Описание.ИдентификаторИнтернетПоддержки = "tradeCRM";
@@ -60,7 +60,7 @@
"ИмяПодсистемы, ИдентификаторИнтернетПоддержки, Версия",
"УправлениеТорговлей",
"Trade",
- "11.5.27.47")); // Версия текущей подсистемы УТ (см. общий модуль ОбновлениеИнформационнойБазыУТ).
+ "11.5.27.52")); // Версия текущей подсистемы УТ (см. общий модуль ОбновлениеИнформационнойБазыУТ).
КонецПроцедуры
diff --git a/src/CommonModules/CRM_УправлениеЭлектроннойПочтой/Ext/Module.bsl b/src/CommonModules/CRM_УправлениеЭлектроннойПочтой/Ext/Module.bsl
index f4ddaf041..e0a688331 100644
--- a/src/CommonModules/CRM_УправлениеЭлектроннойПочтой/Ext/Module.bsl
+++ b/src/CommonModules/CRM_УправлениеЭлектроннойПочтой/Ext/Module.bsl
@@ -3975,10 +3975,14 @@
Если Не ЭтоИсходящееПисьмо Тогда
Справочники.CRM_ПравилаОбработкиОбращений.ПрименитьПравило(Письмо);
КонецЕсли;
- Если Не (ЗначениеЗаполнено(Письмо.Ответственный)
- ИЛИ (Не ЭтоИсходящееПисьмо И ЗначениеЗаполнено(Письмо.CRM_РольОтветственного))) Тогда
+ Если Не (ЗначениеЗаполнено(Письмо.Ответственный)
+ Или (Не ЭтоИсходящееПисьмо И ЗначениеЗаполнено(Письмо.CRM_РольОтветственного))) Тогда
+
Письмо.Ответственный = ОтветственныйЗаОбработкуПисем;
- Если ЗначениеЗаполнено(ПредметИПапка.Предмет) И ТипЗнч(ПредметИПапка.Предмет) = Тип("ДокументСсылка.ЭлектронноеПисьмоИсходящее") Тогда
+
+ Если ЗначениеЗаполнено(Письмо.ВзаимодействиеОснование) Тогда
+ Письмо.Ответственный = Письмо.ВзаимодействиеОснование.Ответственный;
+ ИначеЕсли ЗначениеЗаполнено(ПредметИПапка.Предмет) И ТипЗнч(ПредметИПапка.Предмет) = Тип("ДокументСсылка.ЭлектронноеПисьмоИсходящее") Тогда
Письмо.Ответственный = ПредметИПапка.Предмет.Ответственный;
Иначе
diff --git a/src/CommonModules/АвтоматическоеПолучениеЭДО/Ext/Module.bsl b/src/CommonModules/АвтоматическоеПолучениеЭДО/Ext/Module.bsl
index f1610ba47..dd8597740 100644
--- a/src/CommonModules/АвтоматическоеПолучениеЭДО/Ext/Module.bsl
+++ b/src/CommonModules/АвтоматическоеПолучениеЭДО/Ext/Module.bsl
@@ -1,4 +1,6 @@
-// @strict-types
+
+
+// @strict-types
#Область СлужебныйПрограммныйИнтерфейс
@@ -125,6 +127,16 @@
Если Не Значение Тогда
Отключить();
+ Возврат;
+ КонецЕсли;
+
+ Если ИспользоватьПолучениеПоКлючуДоступа() Тогда
+ Возврат;
+ КонецЕсли;
+
+ УчетныеЗаписиОтсутствуют = РегистрыСведений.УчетныеЗаписиЭДО.УчетныеЗаписиОтсутствуют();
+ Если УчетныеЗаписиОтсутствуют Тогда
+ ВключитьИспользованиеТокеновДоступа();
КонецЕсли;
КонецПроцедуры
@@ -179,14 +191,18 @@
РезультатВключения = НовыйРезультатВключенияПоУчетнымЗаписямЭДО();
- Если Не НастройкиЭДО.ЕстьПравоНастройкиОбмена(Истина) Тогда
- Возврат РезультатВключения;
- КонецЕсли;
-
ИдентификаторыПоИнтеграциямЭДО = УчетныеЗаписиЭДО.ИдентификаторыПоИнтеграциямЭДО(ИдентификаторыЭДО);
Если ЗначениеЗаполнено(ИдентификаторыПоИнтеграциямЭДО.ИдентификаторыДляЛокальногоЭДО) Тогда
+ ИспользоватьПолучениеПоТокенамДоступа = АвтоматическоеПолучениеЭДОПовтИсп.ИспользоватьПолучениеПоТокенамДоступа();
+
+ Если Не ИспользоватьПолучениеПоТокенамДоступа
+ И ДоступноПолучениеПоТокенам()
+ И ВключатьАвтоматически() Тогда
+ ИспользоватьПолучениеПоТокенамДоступа = ВключитьИспользованиеТокеновДоступа();
+ КонецЕсли;
+
РасшифрованныеМаркерыДляЛокальногоЭДО = ВыбратьРасшифрованныеМаркеры(РасшифрованныеМаркеры, ИдентификаторыЭДО);
Если АвтоматическоеПолучениеЭДОПовтИсп.ИспользоватьПолучениеПоКлючуДоступа() Тогда
@@ -194,7 +210,7 @@
РезультатВключения = ВключитьИспользованиеКлючаДоступаКСервисуЭДО(ИдентификаторыЭДО,
РасшифрованныеМаркерыДляЛокальногоЭДО);
- ИначеЕсли АвтоматическоеПолучениеЭДОПовтИсп.ИспользоватьПолучениеПоТокенамДоступа() Тогда
+ ИначеЕсли ИспользоватьПолучениеПоТокенамДоступа Тогда
РезультатВключения = ВключитьИспользованиеТокеновДоступаПоУчетнымЗаписямЭДО(ИдентификаторыЭДО,
РасшифрованныеМаркерыДляЛокальногоЭДО);
@@ -245,6 +261,47 @@
#КонецОбласти // Использование
+#Область Доступность
+
+// Возвращаемое значение:
+// Булево
+Функция ДоступноПолучениеПоТокенам() Экспорт
+
+ Доступность = Ложь;
+
+ Возврат Доступность;
+
+КонецФункции
+
+#КонецОбласти
+
+#Область АвтоматическоеВключение
+
+// Параметры:
+// ИдентификаторыЭДО - Массив из Строка
+//
+// Возвращаемое значение:
+// Булево
+Функция ВключатьАвтоматическиДляУчетныхЗаписейЭДО(ИдентификаторыЭДО) Экспорт
+
+ Доступность = ДоступноПолучениеПоТокенам();
+ Если Не Доступность Тогда
+ Возврат Ложь;
+ КонецЕсли;
+
+ ДоступнаПроверкаПодписи = ДоступнаПроверкаПодписи();
+ Если Не ДоступнаПроверкаПодписи Тогда
+ Возврат Ложь;
+ КонецЕсли;
+
+ ЕстьУчетныеЗаписи = УчетныеЗаписиЭДО.ЕстьУчетныеЗаписиЧерезСервис1СЭДО(ИдентификаторыЭДО);
+
+ Возврат ЕстьУчетныеЗаписи;
+
+КонецФункции
+
+#КонецОбласти
+
#Область КлючДоступаКСервисуЭДО
// Параметры:
@@ -435,14 +492,14 @@
#КонецОбласти // Использование
-#Область ПроверкаДоступности
+#Область Доступность
// Параметры:
// КонтекстДиагностики - см. ОбработкаНеисправностейБЭД.НовыйКонтекстДиагностики
//
// Возвращаемое значение:
// Булево
-Функция ПроверитьДоступность(КонтекстДиагностики = Неопределено)
+Функция ДоступнаПроверкаПодписи(КонтекстДиагностики = Неопределено)
Если ОбщегоНазначения.РазделениеВключено() Тогда
Возврат ДоступнаПроверкаПодписиВОблаке(КонтекстДиагностики);
@@ -479,6 +536,10 @@
// Булево
Функция ДоступнаПроверкаПодписиНаСервере(КонтекстДиагностики = Неопределено)
+ Если КонтекстДиагностики = Неопределено Тогда
+ Возврат КриптографияБЭД.ДоступнаПроверкаПодписиНаСервере();
+ КонецЕсли;
+
МенеджерКриптографии = ЭлектроннаяПодпись.МенеджерКриптографии("", Ложь);
Если МенеджерКриптографии = Неопределено Тогда
Если КонтекстДиагностики <> Неопределено Тогда
@@ -515,7 +576,7 @@
// Возвращаемое значение:
// См. ОбработкаНеисправностейБЭДКлиентСервер.НовоеОписаниеВидаОшибки
-Функция ВидОшибкиПроверкаПодписейНедоступна() Экспорт
+Функция ВидОшибкиПроверкаПодписейНедоступна()
ВидОшибки = ОбработкаНеисправностейБЭДКлиентСервер.НовоеОписаниеВидаОшибки();
ВидОшибки.Идентификатор = "ПроверкаПодписейНедоступна";
@@ -567,6 +628,91 @@
#КонецОбласти
+#Область АвтоматическоеВключение
+
+// Параметры:
+// Сертификаты - Массив из СправочникСсылка.СертификатыКлючейЭлектроннойПодписиИШифрования
+//
+// Возвращаемое значение:
+// Структура:
+// * ЭтоВозобновление - Булево
+// * ИдентификаторыЭДО - Массив из Строка
+Функция ПараметрыАвтоматическогоВключения(Сертификаты) Экспорт
+
+ Результат = Новый Структура;
+ Результат.Вставить("ЭтоВозобновление", Ложь);
+ Результат.Вставить("ИдентификаторыЭДО", Новый Массив);
+
+ Если Не ДоступноПолучениеПоТокенам() Тогда
+ Возврат Результат;
+ КонецЕсли;
+
+ Использовать = АвтоматическоеПолучениеЭДОПовтИсп.ИспользоватьПолучениеПоКлючуДоступа()
+ Или АвтоматическоеПолучениеЭДОПовтИсп.ИспользоватьПолучениеПоТокенамДоступа();
+
+ ВключатьАвтоматически = ВключатьАвтоматически();
+ Если Не Использовать И Не ВключатьАвтоматически Тогда
+ Возврат Результат;
+ КонецЕсли;
+
+ ИдентификаторыЭДО = УчетныеЗаписиЭДО.ИдентификаторыУчетныхЗаписейЧерезСервис1СЭДОСертификатов(Сертификаты);
+
+ Если Использовать Тогда
+ Результат.ЭтоВозобновление = Истина;
+ Результат.ИдентификаторыЭДО =
+ РегистрыСведений.СостоянияАвтоматическогоПолученияЭДО.ОстановленоПоИдентификаторамЭДО(ИдентификаторыЭДО);
+ Возврат Результат;
+ КонецЕсли;
+
+ Если ВключатьАвтоматически Тогда
+ Результат.ИдентификаторыЭДО = ИдентификаторыЭДО;
+ Возврат Результат;
+ КонецЕсли;
+
+ Возврат Результат;
+
+КонецФункции
+
+// Возвращаемое значение:
+// Булево
+Функция ВключатьАвтоматически()
+
+ УстановитьПривилегированныйРежим(Истина);
+ ВключатьАвтоматически = ОбщегоНазначения.ХранилищеОбщихНастроекЗагрузить(
+ КлючОбъектаНастроек(), КлючНастройкиВключатьАвтоматически(), Истина);
+ УстановитьПривилегированныйРежим(Ложь);
+
+ Возврат ВключатьАвтоматически;
+
+КонецФункции
+
+// Параметры:
+// Значение - Булево
+Процедура УстановитьВключатьАвтоматически(Значение) Экспорт
+
+ ОбщегоНазначения.ХранилищеОбщихНастроекСохранить(
+ КлючОбъектаНастроек(), КлючНастройкиВключатьАвтоматически(), Значение);
+
+КонецПроцедуры
+
+// Возвращаемое значение:
+// Строка
+Функция КлючОбъектаНастроек()
+
+ Возврат АвтоматическоеПолучениеЭДОКлиентСервер.ПолноеИмяПодсистемы();
+
+КонецФункции
+
+// Возвращаемое значение:
+// Строка
+Функция КлючНастройкиВключатьАвтоматически()
+
+ Возврат "ВключатьАвтоматически";
+
+КонецФункции
+
+#КонецОбласти
+
#Область КлючДоступаКСервисуЭДО
// Возвращаемое значение:
@@ -585,7 +731,7 @@
//
// Возвращаемое значение:
// Булево
-Функция ЕстьВозможностьПолучитьДокументыИзСервисаЭДО(КлючСинхронизации, КонтекстДиагностики) Экспорт
+Функция ЕстьВозможностьПолучитьДокументыИзСервисаЭДО(КлючСинхронизации, КонтекстДиагностики)
ПараметрыВыполненияОперации = СервисЭДО.НовыеПараметрыВыполненияОперацииСервиса(КлючСинхронизации);
ПараметрыВыполненияОперации.ПредставлениеОперации =
@@ -779,7 +925,7 @@
// Возвращаемое значение:
// Строка
-Функция ВидОперацииВключениеИспользованияТокеновДоступаКСервисуЭДО() Экспорт
+Функция ВидОперацииВключениеИспользованияТокеновДоступаКСервисуЭДО()
Возврат НСтр("ru = 'Включение автоматического получения по токенам доступа к сервису ЭДО'");
@@ -807,7 +953,7 @@
КонтекстДиагностики = РезультатВключения.КонтекстДиагностики;
КонтекстДиагностики.ЗаголовокОперации = ВидОперацииВключениеИспользованияТокеновДоступаКСервисуЭДО();
- Использовать = ВключитьИспользованиеТокеновДоступа(КонтекстДиагностики);
+ Использовать = АвтоматическоеПолучениеЭДОПовтИсп.ИспользоватьПолучениеПоТокенамДоступа();
Если Не Использовать Тогда
Возврат РезультатВключения;
КонецЕсли;
@@ -818,8 +964,7 @@
РасшифрованныйМаркер = РасшифрованныеМаркеры[ИдентификаторЭДО];
Если РасшифрованныйМаркер = Неопределено Тогда
- Состояние = РегистрыСведений.СостоянияАвтоматическогоПолученияЭДО.УстановитьПризнакОстановки(
- ИдентификаторЭДО, Истина);
+ Состояние = УстановитьПризнакОстановки(ИдентификаторЭДО, Истина);
СостояниеПоИдентификаторамЭДО.Вставить(ИдентификаторЭДО, Состояние);
Продолжить;
КонецЕсли;
@@ -830,8 +975,7 @@
Продолжить;
КонецЕсли;
- Состояние = РегистрыСведений.СостоянияАвтоматическогоПолученияЭДО.УстановитьПризнакОстановки(
- ИдентификаторЭДО, Ложь);
+ Состояние = УстановитьПризнакОстановки(ИдентификаторЭДО, Ложь);
СостояниеПоИдентификаторамЭДО.Вставить(ИдентификаторЭДО, Состояние);
@@ -847,6 +991,21 @@
КонецФункции
+// Параметры:
+// ИдентификаторЭДО - Строка
+// Значение - Булево
+//
+// Возвращаемое значение:
+// См. РегистрыСведений.СостоянияАвтоматическогоПолученияЭДО.УстановитьПризнакОстановки
+Функция УстановитьПризнакОстановки(ИдентификаторЭДО, Значение = Ложь)
+
+ УстановитьПривилегированныйРежим(Истина);
+ Состояние = РегистрыСведений.СостоянияАвтоматическогоПолученияЭДО.УстановитьПризнакОстановки(
+ ИдентификаторЭДО, Значение);
+ Возврат Состояние;
+
+КонецФункции
+
// Параметры:
// КонтекстДиагностики - см. ОбработкаНеисправностейБЭД.НовыйКонтекстДиагностики
//
@@ -856,10 +1015,15 @@
Использовать = Ложь;
+ Если Не НастройкиЭДО.ИспользуетсяОбменЭлектроннымиДокументами(КонтекстДиагностики)
+ Или Не ДоступноПолучениеПоТокенам() Тогда
+ Возврат Использовать;
+ КонецЕсли;
+
ВключитьИспользованиеСервисаОблачнойПодписи();
- ИспользованиеДоступно = ПроверитьДоступность(КонтекстДиагностики);
- Если Не ИспользованиеДоступно Тогда
+ ДоступнаПроверкаПодписи = ДоступнаПроверкаПодписи(КонтекстДиагностики);
+ Если Не ДоступнаПроверкаПодписи Тогда
Возврат Использовать;
КонецЕсли;
@@ -892,6 +1056,7 @@
Использовать = ИспользоватьПолучениеПоТокенамДоступа();
Если Использовать Тогда
Константы.ИспользоватьАвтоматическоеПолучениеИзСервисаЭДОПоТокенам.Установить(Ложь);
+ УстановитьВключатьАвтоматически(Ложь);
ОбновитьПовторноИспользуемыеЗначения();
КонецЕсли;
Иначе
@@ -1182,7 +1347,7 @@
// * СостояниеПоИдентификаторамЭДО - см. РегистрыСведений.СостоянияАвтоматическогоПолученияЭДО.СостояниеПоИдентификаторамЭДО
// * ИтогДействийПоЭДО - см. ЭлектронныеДокументыЭДОКлиентСервер.НовыйИтогВыполненияДействийПоЭДО
// * КонтекстДиагностики - см. ОбработкаНеисправностейБЭД.НовыйКонтекстДиагностики
-Функция НовыйРезультатВариантаПолучения() Экспорт
+Функция НовыйРезультатВариантаПолучения()
Результат = Новый Структура;
Результат.Вставить("СостояниеПоИдентификаторамЭДО", Новый Соответствие);
@@ -1234,10 +1399,13 @@
ЕстьКритичнаяОшибка = ОбработкаНеисправностейБЭДКлиентСервер.ЭтоОшибкаДанногоВида(Ошибка,
МодульИнтеграцияЦентраЭДО.ВидОшибкиОтсутствуетОбластьЦентраЭДО()) Или ЕстьКритичнаяОшибка;
КонецЦикла;
-
+
+ ТекстОшибок = ?(Не ЕстьКритичнаяОшибка, "",
+ ОбработкаНеисправностейБЭД.ТекстОшибокКонтекстаДиагностики(КонтекстДиагностики));
+
Для Каждого ИдентификаторЭДО Из ИдентификаторыЭДО Цикл
СостояниеПолучения = РегистрыСведений.СостоянияАвтоматическогоПолученияЭДО.Записать(
- ИдентификаторЭДО, ЕстьКритичнаяОшибка, ДатаНачала);
+ ИдентификаторЭДО, ЕстьКритичнаяОшибка, ДатаНачала, Неопределено, ТекстОшибок);
СостояниеПоИдентификаторамЭДО.Вставить(ИдентификаторЭДО, СостояниеПолучения);
КонецЦикла;
@@ -1304,7 +1472,9 @@
РасшифрованныйМаркер = РасшифрованныйМаркерПоКлючуДоступа(
КлючДоступаКСервисуЭДО, ИдентификаторЭДО, Сертификаты[0], КонтекстДиагностики);
Если РасшифрованныйМаркер.Данные = Неопределено Тогда
- РегистрыСведений.СостоянияАвтоматическогоПолученияЭДО.Записать(ИдентификаторЭДО, Истина, ДатаНачала);
+ ТекстОшибок = ОбработкаНеисправностейБЭД.ТекстОшибокКонтекстаДиагностики(КонтекстДиагностики);
+ РегистрыСведений.СостоянияАвтоматическогоПолученияЭДО.Записать(ИдентификаторЭДО, Истина, ДатаНачала,
+ Неопределено, ТекстОшибок);
Продолжить;
КонецЕсли;
@@ -1466,15 +1636,6 @@
КонецФункции
-// Возвращаемое значение:
-// Булево
-Функция ДоступнаПроверкаПодписи()
-
- Возврат КриптографияБЭД.ДоступнаПроверкаПодписиНаСервере()
- Или КриптографияБЭД.ДоступнаПроверкаПодписиВОблаке();
-
-КонецФункции
-
// Параметры:
// Результат - см. НовыйРезультатВариантаПолучения
// ИдентификаторЭДО - Строка
@@ -1490,7 +1651,7 @@
ДатаНачала = ТекущаяДатаСеанса();
Остановлено = Ложь;
СостояниеПолучения = РегистрыСведений.СостоянияАвтоматическогоПолученияЭДО.Записать(
- ИдентификаторЭДО, ЕстьОшибки, ДатаНачала, Остановлено);
+ ИдентификаторЭДО, ЕстьОшибки, ДатаНачала, Остановлено, ТекстСообщения);
Результат.СостояниеПоИдентификаторамЭДО.Вставить(ИдентификаторЭДО, СостояниеПолучения);
КонецПроцедуры
@@ -1581,12 +1742,15 @@
Если РезультатПроверки.ЕстьКритичныеОшибки Тогда
Остановлено = Истина;
+ ПричинаОстановки = СтрСоединить(РезультатПроверки.ПредставленияОшибок,
+ ОбщегоНазначения.РазделительПакетаЗапросов());
Иначе
Остановлено = Ложь;
+ ПричинаОстановки = "";
КонецЕсли;
СостояниеПолучения = РегистрыСведений.СостоянияАвтоматическогоПолученияЭДО.Записать(
- ИдентификаторЭДО, РезультатПроверки.ЕстьОшибки, ДатаНачала, Остановлено);
+ ИдентификаторЭДО, РезультатПроверки.ЕстьОшибки, ДатаНачала, Остановлено, ПричинаОстановки);
Результат.СостояниеПоИдентификаторамЭДО.Вставить(ИдентификаторЭДО, СостояниеПолучения);
Если Не РезультатПроверки.ЕстьОшибки Тогда
diff --git a/src/CommonModules/АвтоматическоеПолучениеЭДОВызовСервера/Ext/Module.bsl b/src/CommonModules/АвтоматическоеПолучениеЭДОВызовСервера/Ext/Module.bsl
index f31410336..d959bbb89 100644
--- a/src/CommonModules/АвтоматическоеПолучениеЭДОВызовСервера/Ext/Module.bsl
+++ b/src/CommonModules/АвтоматическоеПолучениеЭДОВызовСервера/Ext/Module.bsl
@@ -13,6 +13,10 @@
// См. ДлительныеОперации.ВыполнитьФункцию
Функция ВключитьПоУчетнымЗаписямЭДОВФоне(Знач ИдентификаторыЭДО, Знач РасшифрованныеМаркеры, Знач ИдентификаторФормы = Неопределено) Экспорт
+ Если ИдентификаторФормы = Неопределено Тогда
+ ИдентификаторФормы = Новый УникальныйИдентификатор;
+ КонецЕсли;
+
ПараметрыВыполненияВФоне = ДлительныеОперации.ПараметрыВыполненияФункции(ИдентификаторФормы);
// См. АвтоматическоеПолучениеЭДО.ВключитьПоУчетнымЗаписямЭДО
@@ -77,6 +81,12 @@
// См. АвтоматическоеПолучениеЭДО.Отключить
Процедура Отключить(Знач ИдентификаторЭДО = Неопределено) Экспорт
+ Если ИдентификаторЭДО = Неопределено Тогда
+ УстановитьПривилегированныйРежим(Истина);
+ АвтоматическоеПолучениеЭДО.УстановитьВключатьАвтоматически(Ложь);
+ УстановитьПривилегированныйРежим(Ложь);
+ КонецЕсли;
+
АвтоматическоеПолучениеЭДО.Отключить(ИдентификаторЭДО);
КонецПроцедуры
@@ -93,6 +103,21 @@
#КонецОбласти
+#Область АвтоматическоеВключение
+
+// Параметры:
+// Сертификаты - Массив из СправочникСсылка.СертификатыКлючейЭлектроннойПодписиИШифрования
+//
+// Возвращаемое значение:
+// См. АвтоматическоеПолучениеЭДО.ПараметрыАвтоматическогоВключения
+Функция ПараметрыАвтоматическогоВключения(Знач Сертификаты) Экспорт
+
+ Возврат АвтоматическоеПолучениеЭДО.ПараметрыАвтоматическогоВключения(Сертификаты);
+
+КонецФункции
+
+#КонецОбласти
+
#Область Получение
// Параметры:
diff --git a/src/CommonModules/АвтоматическоеПолучениеЭДОКлиент/Ext/Module.bsl b/src/CommonModules/АвтоматическоеПолучениеЭДОКлиент/Ext/Module.bsl
index fd9b4a467..8219cadd5 100644
--- a/src/CommonModules/АвтоматическоеПолучениеЭДОКлиент/Ext/Module.bsl
+++ b/src/CommonModules/АвтоматическоеПолучениеЭДОКлиент/Ext/Module.bsl
@@ -145,6 +145,49 @@
#КонецОбласти
+#Область АвтоматическоеВключение
+
+// Параметры:
+// ОповещениеОЗавершении - ОписаниеОповещения
+// ПаролиСертификатов - см. КриптографияБЭДКлиент.НовыеПаролиСертификатов
+Процедура ВключитьПослеОтправкиПолученияДокументовЭДО(ОповещениеОЗавершении, ПаролиСертификатов) Экспорт
+
+ Контекст = НовыйКонтекстВключенияПослеОтправкиПолученияДокументовЭДО();
+ Контекст.ОповещениеОЗавершении = ОповещениеОЗавершении;
+
+#Если МобильныйКлиент Тогда
+ ВключитьПослеОтправкиПолученияДокументовЭДОЗавершение(Неопределено, Контекст);
+ Возврат;
+#КонецЕсли
+
+ Если Не ЗначениеЗаполнено(ПаролиСертификатов) Тогда
+ ВключитьПослеОтправкиПолученияДокументовЭДОЗавершение(Неопределено, Контекст);
+ Возврат;
+ КонецЕсли;
+
+ Сертификаты = ОбщегоНазначенияБЭДКлиент.ВыгрузитьКолонку(ПаролиСертификатов, "Ключ");
+
+ ПараметрыВключения = АвтоматическоеПолучениеЭДОВызовСервера.ПараметрыАвтоматическогоВключения(Сертификаты);
+ Если Не ЗначениеЗаполнено(ПараметрыВключения.ИдентификаторыЭДО) Тогда
+ ВключитьПослеОтправкиПолученияДокументовЭДОЗавершение(Неопределено, Контекст);
+ Возврат;
+ КонецЕсли;
+
+ Контекст.ЭтоВозобновление = ПараметрыВключения.ЭтоВозобновление;
+
+ Оповещение = Новый ОписаниеОповещения("ВключитьПослеОтправкиПолученияДокументовЭДОЗавершение",
+ ЭтотОбъект, Контекст);
+
+ ПараметрыАвторизации = УчетныеЗаписиЭДОКлиент.НовыеПараметрыАвторизацииВСервисеЭДО();
+ ПараметрыАвторизации.ИдентификаторыЭДО = ПараметрыВключения.ИдентификаторыЭДО;
+ ПараметрыАвторизации.ПаролиСертификатов = ПаролиСертификатов;
+
+ ВключитьПоУчетнымЗаписямЭДО(Оповещение, ПараметрыАвторизации);
+
+КонецПроцедуры
+
+#КонецОбласти
+
#Область СобытияОповещения
// Параметры:
@@ -262,6 +305,62 @@
#Область СлужебныеПроцедурыИФункции
+#Область АвтоматическоеВключение
+
+// Возвращаемое значение:
+// Структура:
+// * ОповещениеОЗавершении - см. ВключитьПослеОтправкиПолученияДокументовЭДО.ОповещениеОЗавершении
+// * ЭтоВозобновление - Булево
+Функция НовыйКонтекстВключенияПослеОтправкиПолученияДокументовЭДО()
+
+ Контекст = Новый Структура;
+ Контекст.Вставить("ОповещениеОЗавершении", Новый ОписаниеОповещения);
+ Контекст.Вставить("ЭтоВозобновление", Ложь);
+ Возврат Контекст;
+
+КонецФункции
+
+// Параметры:
+// РезультатВключения - Неопределено
+// - см. ВключитьПоУчетнымЗаписямЭДОЗавершение
+// Контекст - см. НовыйКонтекстВключенияПослеОтправкиПолученияДокументовЭДО
+//
+// Возвращаемое значение:
+// См. НовыйРезультатВключенияПослеОтправкиПолученияДокументовЭДО
+Функция ВключитьПослеОтправкиПолученияДокументовЭДОЗавершение(РезультатВключения, Контекст) Экспорт
+
+ Результат = НовыйРезультатВключенияПослеОтправкиПолученияДокументовЭДО();
+ Если ЗначениеЗаполнено(РезультатВключения) Тогда
+ Результат.Успех = ЗначениеЗаполнено(РезультатВключения.ИзменениеСостояния);
+ Результат.КонтекстДиагностики = РезультатВключения.КонтекстДиагностики;
+ КонецЕсли;
+
+ Если Результат.Успех И Не Контекст.ЭтоВозобновление Тогда
+ ОбщегоНазначенияКлиент.СообщитьПользователю(
+ НСтр("ru = 'Новые документы теперь будут загружаться автоматически сразу по мере поступления.'"));
+ КонецЕсли;
+
+ ВыполнитьОбработкуОповещения(Контекст.ОповещениеОЗавершении, Результат);
+
+ Возврат Результат;
+
+КонецФункции
+
+// Возвращаемое значение:
+// Структура:
+// * Успех - Булево
+// * КонтекстДиагностики - см. ОбработкаНеисправностейБЭДКлиент.НовыйКонтекстДиагностики
+Функция НовыйРезультатВключенияПослеОтправкиПолученияДокументовЭДО()
+
+ Результат = Новый Структура;
+ Результат.Вставить("Успех", Ложь);
+ Результат.Вставить("КонтекстДиагностики", ОбработкаНеисправностейБЭДКлиент.НовыйКонтекстДиагностики());
+ Возврат Результат;
+
+КонецФункции
+
+#КонецОбласти
+
#Область ПроверкаДоступности
#Область Использование
@@ -594,7 +693,8 @@
Результат.Вставить("Итог", РезультатПолучения.ИтогДействийПоЭДО);
Результат.Вставить("ОшибкиФормирования", Новый Массив);
Результат.Вставить("КонтекстДиагностики", РезультатПолучения.КонтекстДиагностики);
- ИнтерфейсДокументовЭДОКлиент.ЗавершитьОтправкуПолучениеДокументовЭДО(Результат, Новый ОписаниеОповещения);
+ Результат.Вставить("ПаролиСертификатов", КриптографияБЭДКлиент.НовыеПаролиСертификатов());
+ ИнтерфейсДокументовЭДОКлиент.ПослеОтправкиПолученияДокументовЭДО(Результат, Новый ОписаниеОповещения);
ИначеЕсли Не ПараметрыОжидания.ИспользоватьУведомленияКлиента Тогда
Оповестить(ИнтерфейсДокументовЭДОКлиент.ИмяСобытияОбновленияТекущихДелЭДО());
КонецЕсли;
diff --git a/src/CommonModules/АвтоматическоеПолучениеЭДОПовтИсп/Ext/Module.bsl b/src/CommonModules/АвтоматическоеПолучениеЭДОПовтИсп/Ext/Module.bsl
index d1cbe46d4..796f284a0 100644
--- a/src/CommonModules/АвтоматическоеПолучениеЭДОПовтИсп/Ext/Module.bsl
+++ b/src/CommonModules/АвтоматическоеПолучениеЭДОПовтИсп/Ext/Module.bsl
@@ -1,9 +1,5 @@
// @strict-types
-#Область СлужебныйПрограммныйИнтерфейс
-// @strict-types
-
-
#Область СлужебныеПроцедурыИФункции
#Область КлючДоступаКСервисуЭДО
@@ -29,5 +25,3 @@
#КонецОбласти
#КонецОбласти
-
-#КонецОбласти
diff --git a/src/CommonModules/АкцизныеМаркиКлиентСервер/Ext/Module.bsl b/src/CommonModules/АкцизныеМаркиКлиентСервер/Ext/Module.bsl
index 55232c08b..6d53ab19e 100644
--- a/src/CommonModules/АкцизныеМаркиКлиентСервер/Ext/Module.bsl
+++ b/src/CommonModules/АкцизныеМаркиКлиентСервер/Ext/Module.bsl
@@ -55,8 +55,8 @@
И ДополнительныеПараметры.ДанныеВыбора.Количество() > 0 Тогда
Форма.ДанныеВыбораПоМаркируемойПродукции = ДополнительныеПараметры.ДанныеВыбора;
- Форма.ДанныеВыбораПоМаркируемойПродукции.Вставить("АлкогольнаяПродукция", ДанныеШтрихКода.АлкогольнаяПродукция);
- Форма.ДанныеВыбораПоМаркируемойПродукции.Вставить("ТипШтрихКода", ДанныеШтрихКода.ТипШтрихКода);
+ Форма.ДанныеВыбораПоМаркируемойПродукции.Вставить("АлкогольнаяПродукция", ДанныеШтрихкода.АлкогольнаяПродукция);
+ Форма.ДанныеВыбораПоМаркируемойПродукции.Вставить("ТипШтрихкода", ДанныеШтрихкода.ТипШтрихкода);
Форма.СохраненВыборПоМаркируемойПродукции = Истина;
ШтрихкодированиеИСКлиентСервер.ОтобразитьСохраненныйВыборПоМаркируемойПродукции(Форма);
diff --git a/src/CommonModules/БизнесСеть/Ext/Module.bsl b/src/CommonModules/БизнесСеть/Ext/Module.bsl
index db6dc6dad..fdbf96548 100644
--- a/src/CommonModules/БизнесСеть/Ext/Module.bsl
+++ b/src/CommonModules/БизнесСеть/Ext/Module.bsl
@@ -1679,6 +1679,7 @@
НСтр("ru = 'Отчет о списании комиссионного товара'"));
СписокВидовЭД.Добавить(Перечисления.ТипыДокументовЭДО.ПрайсЛист, НСтр("ru = 'Прайс-лист'"));
СписокВидовЭД.Добавить(Перечисления.ТипыДокументовЭДО.СчетНаОплату, НСтр("ru = 'Счет на оплату'"));
+ СписокВидовЭД.Добавить(Перечисления.ТипыДокументовЭДО.СчетОферта, НСтр("ru = 'Счет-оферта'"));
СписокВидовЭД.Добавить(Перечисления.ТипыДокументовЭДО.КоммерческоеПредложение, НСтр("ru = 'Коммерческое предложение'"));
СписокВидовЭД.Добавить(Перечисления.ТипыДокументовЭДО.ЗапросКоммерческихПредложений,
НСтр("ru = 'Запрос коммерческих предложений'"));
@@ -2450,14 +2451,14 @@
ОтменитьВыполнениеЗадания(ИдентификаторЗадания);
НаименованиеЗадания = НСтр("ru = '1С:Бизнес-сеть. Отправка документов.'");
- ИмяПроцедуры = "БизнесСеть.ОтправитьДанныеДокументовЧерезБизнесСеть";
ПараметрыВыполнения = ДлительныеОперации.ПараметрыВыполненияВФоне(УникальныйИдентификатор);
ПараметрыВыполнения.НаименованиеФоновогоЗадания = НаименованиеЗадания;
ПараметрыВыполнения.ОжидатьЗавершение = 0;
ПараметрыВыполнения.ЗапуститьВФоне = Истина;
- Возврат ДлительныеОперации.ВыполнитьВФоне(ИмяПроцедуры, ДополнительныеПараметры, ПараметрыВыполнения);
+ Возврат ДлительныеОперации.ВыполнитьВФоне(
+ "БизнесСеть.ОтправитьДанныеДокументовЧерезБизнесСеть", ДополнительныеПараметры, ПараметрыВыполнения);
КонецФункции
@@ -2827,6 +2828,28 @@
#КонецОбласти
+#Область ДляВызоваИзДругихПодсистем
+
+// См. СтандартныеПодсистемыСервер.ПриОпределенииМетодовРазрешенныхДляВызоваКакПроизвольныйКод
+Процедура ПриОпределенииМетодовРазрешенныхДляВызоваКакПроизвольныйКод(Методы) Экспорт
+
+ Методы.Вставить("АктуализироватьКэшДанныхКонтрагентов", Истина);
+ Методы.Вставить("ОтправитьДанныеДокументовЧерезБизнесСеть", Истина);
+ Методы.Вставить("ОбновитьИнформациюОНовыхДокументахВСервисе", Истина);
+ Методы.Вставить("ОтправитьУведомлениеОбОтправке", Истина);
+ Методы.Вставить("ОтправитьДокументИПолучитьQRКодЧерезБизнесСеть", Истина);
+ Методы.Вставить("ПолучитьQRКодыПоДокументам", Истина);
+ Методы.Вставить("ПолучитьДанныеДокументаПоQRКоду", Истина);
+ Методы.Вставить("ПодключитьОрганизациюПоКодуАктивацииВФоне", Истина);
+ Методы.Вставить("ПолучениеДокументовСервиса", Истина);
+ Методы.Вставить("ПодключитьОрганизациюПоТикетуИТСВФоне", Истина);
+ Методы.Вставить("УстановитьСтатусЗагружен", Истина);
+ Методы.Вставить("ЗагрузитьДокументы", Истина);
+
+КонецПроцедуры
+
+#КонецОбласти
+
#КонецОбласти
#Область СлужебныеПроцедурыИФункции
@@ -3575,14 +3598,14 @@
Функция ОбновитьИнформациюОНовыхДокументахВСервисеАсинхронно(Знач ПараметрыОбновления) Экспорт
НаименованиеЗадания = НСтр("ru = 'Обновление информации о новых документах в сервисе ""1С:Бизнес-сеть"".'");
- ИмяПроцедуры = "БизнесСеть.ОбновитьИнформациюОНовыхДокументахВСервисе";
ПараметрыВыполнения = ДлительныеОперации.ПараметрыВыполненияВФоне(ПараметрыОбновления.ИдентификаторФормы);
ПараметрыВыполнения.НаименованиеФоновогоЗадания = НаименованиеЗадания;
ПараметрыВыполнения.ОжидатьЗавершение = 0;
ПараметрыВыполнения.ЗапуститьВФоне = Истина;
- Возврат ДлительныеОперации.ВыполнитьВФоне(ИмяПроцедуры, ПараметрыОбновления, ПараметрыВыполнения);
+ Возврат ДлительныеОперации.ВыполнитьВФоне(
+ "БизнесСеть.ОбновитьИнформациюОНовыхДокументахВСервисе", ПараметрыОбновления, ПараметрыВыполнения);
КонецФункции
diff --git a/src/CommonModules/БизнесСетьВызовСервера/Ext/Module.bsl b/src/CommonModules/БизнесСетьВызовСервера/Ext/Module.bsl
index eff6ca1dc..68f4bdb99 100644
--- a/src/CommonModules/БизнесСетьВызовСервера/Ext/Module.bsl
+++ b/src/CommonModules/БизнесСетьВызовСервера/Ext/Module.bsl
@@ -224,14 +224,14 @@
Функция ОтправкаУведомленияОбВыгрузкиДокумента(Знач УникальныйИдентификатор, Знач ДополнительныеПараметры) Экспорт
НаименованиеЗадания = НСтр("ru = '1С:Бизнес-сеть. Отправка документов.'");
- ИмяПроцедуры = "БизнесСеть.ОтправитьУведомлениеОбОтправке";
ПараметрыВыполнения = ДлительныеОперации.ПараметрыВыполненияВФоне(УникальныйИдентификатор);
ПараметрыВыполнения.НаименованиеФоновогоЗадания = НаименованиеЗадания;
ПараметрыВыполнения.ОжидатьЗавершение = 0;
ПараметрыВыполнения.ЗапуститьВФоне = Истина;
- Возврат ДлительныеОперации.ВыполнитьВФоне(ИмяПроцедуры, ДополнительныеПараметры, ПараметрыВыполнения);
+ Возврат ДлительныеОперации.ВыполнитьВФоне(
+ "БизнесСеть.ОтправитьУведомлениеОбОтправке", ДополнительныеПараметры, ПараметрыВыполнения);
КонецФункции
@@ -244,42 +244,42 @@
Функция ОтправлениеИПолучениеQRКодовЧерезБизнесСетьВФоне(Знач УникальныйИдентификатор, Знач ДополнительныеПараметры) Экспорт
НаименованиеЗадания = НСтр("ru = '1С:Бизнес-сеть. Отправка документов и получение QR-кодов.'");
- ИмяПроцедуры = "БизнесСеть.ОтправитьДокументИПолучитьQRКодЧерезБизнесСеть";
ПараметрыВыполнения = ДлительныеОперации.ПараметрыВыполненияВФоне(УникальныйИдентификатор);
ПараметрыВыполнения.НаименованиеФоновогоЗадания = НаименованиеЗадания;
ПараметрыВыполнения.ОжидатьЗавершение = 0;
ПараметрыВыполнения.ЗапуститьВФоне = Истина;
- Возврат ДлительныеОперации.ВыполнитьВФоне(ИмяПроцедуры, ДополнительныеПараметры, ПараметрыВыполнения);
+ Возврат ДлительныеОперации.ВыполнитьВФоне(
+ "БизнесСеть.ОтправитьДокументИПолучитьQRКодЧерезБизнесСеть", ДополнительныеПараметры, ПараметрыВыполнения);
КонецФункции
Функция ПолучениеQRКодовПоДокументамВФоне(Знач УникальныйИдентификатор, Знач ДополнительныеПараметры) Экспорт
НаименованиеЗадания = НСтр("ru = '1С:Бизнес-сеть. Получение QR-кодов по документам.'");
- ИмяПроцедуры = "БизнесСеть.ПолучитьQRКодыПоДокументам";
ПараметрыВыполнения = ДлительныеОперации.ПараметрыВыполненияВФоне(УникальныйИдентификатор);
ПараметрыВыполнения.НаименованиеФоновогоЗадания = НаименованиеЗадания;
ПараметрыВыполнения.ОжидатьЗавершение = 0;
ПараметрыВыполнения.ЗапуститьВФоне = Истина;
- Возврат ДлительныеОперации.ВыполнитьВФоне(ИмяПроцедуры, ДополнительныеПараметры, ПараметрыВыполнения);
+ Возврат ДлительныеОперации.ВыполнитьВФоне(
+ "БизнесСеть.ПолучитьQRКодыПоДокументам", ДополнительныеПараметры, ПараметрыВыполнения);
КонецФункции
Функция ПолучитьДанныеДокументаПоQRКодуВФоне(Знач УникальныйИдентификатор, Знач ДополнительныеПараметры) Экспорт
НаименованиеЗадания = НСтр("ru = '1С:Бизнес-сеть. Получение документа по QR-коду.'");
- ИмяПроцедуры = "БизнесСеть.ПолучитьДанныеДокументаПоQRКоду";
ПараметрыВыполнения = ДлительныеОперации.ПараметрыВыполненияВФоне(УникальныйИдентификатор);
ПараметрыВыполнения.НаименованиеФоновогоЗадания = НаименованиеЗадания;
ПараметрыВыполнения.ОжидатьЗавершение = 0;
ПараметрыВыполнения.ЗапуститьВФоне = Истина;
- Возврат ДлительныеОперации.ВыполнитьВФоне(ИмяПроцедуры, ДополнительныеПараметры, ПараметрыВыполнения);
+ Возврат ДлительныеОперации.ВыполнитьВФоне(
+ "БизнесСеть.ПолучитьДанныеДокументаПоQRКоду", ДополнительныеПараметры, ПараметрыВыполнения);
КонецФункции
@@ -330,9 +330,8 @@
ПараметрыВыполнения.ОжидатьЗавершение = 0;
ПараметрыВыполнения.ЗапуститьВФоне = Истина;
- ИмяПроцедуры = "БизнесСеть.ПодключитьОрганизациюПоКодуАктивацииВФоне";
-
- Возврат ДлительныеОперации.ВыполнитьВФоне(ИмяПроцедуры, ПараметрыПоиска, ПараметрыВыполнения);
+ Возврат ДлительныеОперации.ВыполнитьВФоне(
+ "БизнесСеть.ПодключитьОрганизациюПоКодуАктивацииВФоне", ПараметрыПоиска, ПараметрыВыполнения);
КонецФункции
diff --git a/src/CommonModules/БизнесСетьСлужебный/Ext/Module.bsl b/src/CommonModules/БизнесСетьСлужебный/Ext/Module.bsl
index 3f7fd822e..afdec23a0 100644
--- a/src/CommonModules/БизнесСетьСлужебный/Ext/Module.bsl
+++ b/src/CommonModules/БизнесСетьСлужебный/Ext/Module.bsl
@@ -339,6 +339,17 @@
#КонецОбласти
+#Область ДляВызоваИзДругихПодсистем
+
+// См. СтандартныеПодсистемыСервер.ПриОпределенииМетодовРазрешенныхДляВызоваКакПроизвольныйКод
+Процедура ПриОпределенииМетодовРазрешенныхДляВызоваКакПроизвольныйКод(Методы) Экспорт
+
+ Методы.Вставить("ПриОпределенииМетодовРазрешенныхДляВызоваКакПроизвольныйКод", Истина);
+
+КонецПроцедуры
+
+#КонецОбласти
+
#КонецОбласти
#Область СлужебныеПроцедурыИФункции
diff --git a/src/CommonModules/ВзаиморасчетыСлужебный/Ext/Module.bsl b/src/CommonModules/ВзаиморасчетыСлужебный/Ext/Module.bsl
index 7e0c929eb..84178192c 100644
--- a/src/CommonModules/ВзаиморасчетыСлужебный/Ext/Module.bsl
+++ b/src/CommonModules/ВзаиморасчетыСлужебный/Ext/Module.bsl
@@ -207,7 +207,7 @@
//
// Параметры:
// Регистратор - ДокументСсылка - Регистратор, инициатор регистрации заданий (проводимый документ).
-// ТаблицаИзменений - см. ТаблицаКРаспределению
+// ТаблицаИзменений - см. ОперативныеВзаиморасчетыСервер.ТаблицаКРаспределению
Процедура ЗарегистрироватьИзмененияКОтложенномуРаспределению(Регистратор, ТаблицаИзменений) Экспорт
Для Каждого СтрокаИзменений Из ТаблицаИзменений Цикл
@@ -219,13 +219,7 @@
НаборЗаписей.Отбор.ОбъектРасчетов.Установить(СтрокаИзменений.ОбъектРасчетов);
НаборЗаписей.Отбор.Валюта.Установить(СтрокаИзменений.Валюта);
- Если СтрокаИзменений.ПорядокОперации = "" Тогда
- ДатаИзменений = Дата(1,1,1);
- Иначе
- ДатаИзменений = Дата(Лев(СтрокаИзменений.ПорядокОперации, 8));
- КонецЕсли;
-
- НаборЗаписей.Отбор.ДатаПересчета.Установить(ДатаИзменений);
+ НаборЗаписей.Отбор.ДатаПересчета.Установить(СтрокаИзменений.ДатаНачалаПересчета);
НаборЗаписей.Отбор.Документ.Установить(Регистратор);
НовСтр = НаборЗаписей.Добавить();
@@ -233,7 +227,7 @@
НовСтр.АналитикаУчетаПоПартнерам = СтрокаИзменений.АналитикаУчетаПоПартнерам;
НовСтр.ОбъектРасчетов = СтрокаИзменений.ОбъектРасчетов;
НовСтр.Валюта = СтрокаИзменений.Валюта;
- НовСтр.ДатаПересчета = ДатаИзменений;
+ НовСтр.ДатаПересчета = СтрокаИзменений.ДатаНачалаПересчета;
НовСтр.Документ = Регистратор;
НовСтр.Приоритет = ?(СтрокаИзменений.ПоДаннымОбъектаРасчетовИсточника, 2, 1);
НовСтр.КоличествоДокументов = 1;
diff --git a/src/CommonModules/ВизуализацияЭДОСлужебный/Ext/Module.bsl b/src/CommonModules/ВизуализацияЭДОСлужебный/Ext/Module.bsl
index 81226dc8c..981f94682 100644
--- a/src/CommonModules/ВизуализацияЭДОСлужебный/Ext/Module.bsl
+++ b/src/CommonModules/ВизуализацияЭДОСлужебный/Ext/Module.bsl
@@ -2053,7 +2053,6 @@
И ТипДокумента <> Перечисления.ТипыДокументовЭДО.ЗаказТовара
И ТипДокумента <> Перечисления.ТипыДокументовЭДО.ОтчетОПродажахКомиссионногоТовара
И ТипДокумента <> Перечисления.ТипыДокументовЭДО.ОтчетОСписанииКомиссионногоТовара
- И ТипДокумента <> Перечисления.ТипыДокументовЭДО.АктОРасхождениях
И ТипДокумента <> Перечисления.ТипыДокументовЭДО.КонтрактЕИС;
КонецФункции
@@ -2121,6 +2120,8 @@
Возврат РезультатФормирования;
КонецЕсли;
+ НаВизуализацииПрисутствуетQRКод = Ложь;
+
ПараметрыПреобразования = Новый Структура;
ПараметрыПреобразования.Вставить("ИтоговыйФормат", "ТабличныйДокумент");
ПараметрыПреобразования.Вставить("ИсходныйФормат", ПараметрыДокумента.ИсходныйФормат);
@@ -2128,6 +2129,8 @@
ПараметрыПреобразования.Вставить("ВариантЗаполнения", ВариантЗаполнения);
Если ПараметрыДокумента.Свойство("ПараметрыПредставления") Тогда
ПараметрыПреобразования.Вставить("ПараметрыXSL", ПараметрыДокумента.ПараметрыПредставления);
+ НаВизуализацииПрисутствуетQRКод = ЗначениеЗаполнено(ОбщегоНазначенияКлиентСервер.
+ СвойствоСтруктуры(ПараметрыДокумента.ПараметрыПредставления, "ПубличнаяСсылкаQRКода"));
КонецЕсли;
Если ТипЗнч(ФайлXML) = Тип("Строка") Тогда
@@ -2150,6 +2153,12 @@
РезультатФормирования.ПредставлениеДокумента = ТабличныйДокумент;
РезультатФормирования.Успех = (ТабличныйДокумент <> Неопределено);
+ Если РезультатФормирования.Успех
+ И ТипЗнч(ТабличныйДокумент) = Тип("ТабличныйДокумент")
+ И НаВизуализацииПрисутствуетQRКод Тогда
+ ЗаменитьТекстQRКодаКартинкой(ТабличныйДокумент.Рисунки);
+ КонецЕсли;
+
Возврат РезультатФормирования;
КонецФункции
@@ -2166,6 +2175,37 @@
Возврат ДвоичныеДанныеФайла.Размер();
КонецФункции
+// Заменяет рисунки с типом текст на рисунок с типом картинка если в тексте указано что это КартинкаQRКода.
+// Параметры:
+// РисункиТабличногоДокумента - КоллекцияРисунковТабличногоДокумента
+Процедура ЗаменитьТекстQRКодаКартинкой(РисункиТабличногоДокумента)
+
+ РисункиДляУдаления = Новый Массив(); //Массив из РисунокТабличногоДокумента
+
+ Для Каждого Рисунок Из РисункиТабличногоДокумента Цикл
+
+ Если Не Рисунок.ТипРисунка = ТипРисункаТабличногоДокумента.Текст Тогда
+ Продолжить;
+ КонецЕсли;
+ Если Не СтрНачинаетсяС(Рисунок.Текст, "КартинкаQRКода") Тогда
+ Продолжить;
+ КонецЕсли;
+
+ РисункиДляУдаления.Добавить(Рисунок);
+
+ КонецЦикла;
+
+ Для Каждого РисунокДляУдаления Из РисункиДляУдаления Цикл
+
+ РисунокДляДобавления = РисункиТабличногоДокумента.Добавить(ТипРисункаТабличногоДокумента.Картинка);
+ ЗаполнитьЗначенияСвойств(РисунокДляДобавления, РисунокДляУдаления);
+ РисунокДляДобавления.Имя = РисунокДляУдаления.Текст;
+ РисункиТабличногоДокумента.Удалить(РисунокДляУдаления);
+
+ КонецЦикла;
+
+КонецПроцедуры
+
#КонецОбласти
#КонецОбласти
\ No newline at end of file
diff --git a/src/CommonModules/ВыводИзОборотаКлиентСервер/Ext/Module.bsl b/src/CommonModules/ВыводИзОборотаКлиентСервер/Ext/Module.bsl
index 7290cee46..5bf1f06d1 100644
--- a/src/CommonModules/ВыводИзОборотаКлиентСервер/Ext/Module.bsl
+++ b/src/CommonModules/ВыводИзОборотаКлиентСервер/Ext/Module.bsl
@@ -168,20 +168,9 @@
Функция ДоступноПолеАдрес(ВидПродукцииТоварнаяГруппа, Причина) Экспорт
- Если КонструкторИСМПОбщегоНазначенияКлиентСервер.ЭлементКонструктораСодержитЗначение(
+ Возврат КонструкторИСМПОбщегоНазначенияКлиентСервер.ЭлементКонструктораСодержитЗначение(
ПредопределенноеЗначение(
- "Справочник.ЭлементыКонструктораВидовПродукцииИС.ПолеАдрес"),
- ВидПродукцииТоварнаяГруппа) Тогда
-
- Возврат КонструкторИСМПОбщегоНазначенияКлиентСервер.ЭлементКонструктораСодержитЗначение(
- ПредопределенноеЗначение(
- "Справочник.ЭлементыКонструктораВидовПродукцииИС.ПолеАдрес"),
- ВидПродукцииТоварнаяГруппа,
- Причина);
-
- КонецЕсли;
-
- Возврат Истина;
+ "Справочник.ЭлементыКонструктораВидовПродукцииИС.ПолеАдрес"), ВидПродукцииТоварнаяГруппа, Причина);
КонецФункции
@@ -225,6 +214,39 @@
КонецФункции
+Функция ДоступнаРегистрацияМОДВГИСМТ(ВидПродукцииТоварнаяГруппа) Экспорт
+
+ Возврат КонструкторИСМПОбщегоНазначенияКлиентСервер.ЭлементКонструктораСодержитЗначение(
+ ПредопределенноеЗначение(
+ "Справочник.ЭлементыКонструктораВидовПродукцииИС.ДоступнаРегистрацияМОДВГИСМТ"),
+ ВидПродукцииТоварнаяГруппа);
+
+КонецФункции
+
#КонецОбласти
+Функция ПараметрыУказанияМОД(Организация, ВидПродукцииТоварнаяГруппа, Причина) Экспорт
+
+ ПараметрыМОД = Новый Структура;
+ ПараметрыМОД.Вставить("ВозможноУказаниеМОД", Ложь);
+ ПараметрыМОД.Вставить("ОбязательноУказаниеМОД", Ложь);
+ ПараметрыМОД.Вставить("ПодконтрольныеОбъектыВетИС", Ложь);
+
+ ПараметрыМОД.ВозможноУказаниеМОД = ДоступноПолеАдрес(ВидПродукцииТоварнаяГруппа, Причина);
+
+ Если ИмеютсяПодконтрольныеОбъектыВетИС(Организация) Тогда
+ ПараметрыМОД.ОбязательноУказаниеМОД = Истина;
+ ПараметрыМОД.ПодконтрольныеОбъектыВетИС = Истина;
+ Иначе
+ ПараметрыМОД.ОбязательноУказаниеМОД = ПроверятьЗаполнениеПоляАдрес(ВидПродукцииТоварнаяГруппа, Причина);
+ КонецЕсли;
+
+ Возврат ПараметрыМОД;
+
+КонецФункции
+
+Функция ИмеютсяПодконтрольныеОбъектыВетИС(Организация) Экспорт
+ Возврат ОбщегоНазначенияИСКлиентСерверПовтИсп.ОрганизацияИмеетПодконтрольныеОбъектыВЕТИС(Организация);
+КонецФункции
+
#КонецОбласти
\ No newline at end of file
diff --git a/src/CommonModules/ГрупповаяОбработкаШтрихкодовИСКлиент/Ext/Module.bsl b/src/CommonModules/ГрупповаяОбработкаШтрихкодовИСКлиент/Ext/Module.bsl
index 6b8a53c87..46d062477 100644
--- a/src/CommonModules/ГрупповаяОбработкаШтрихкодовИСКлиент/Ext/Module.bsl
+++ b/src/CommonModules/ГрупповаяОбработкаШтрихкодовИСКлиент/Ext/Module.bsl
@@ -91,10 +91,12 @@
Возврат;
ИначеЕсли Форма.ДанныеВыбораПоМаркируемойПродукции = Неопределено Тогда
Возврат;
- ИначеЕсли Не Форма.ЗагрузкаДанныхТСД.Свойство("Всего") Тогда //ЕГАИС
- Возврат;
КонецЕсли;
+ Если Форма.ДанныеВыбораПоМаркируемойПродукции.Агрегация <> Неопределено Тогда
+ ПрименитьСохраненныйВыборПриУточненииУпаковки(Форма, ДанныеШтрихкода, ПараметрыСканирования);
+ Возврат
+ КонецЕсли;
// Сохранение выбора в параметры сканирования
ПараметрыСканирования.ДанныеВыбораПоМаркируемойПродукции = Форма.ДанныеВыбораПоМаркируемойПродукции;
@@ -369,6 +371,95 @@
#Область СлужебныеПроцедурыИФункции
+// Работа с сохраненным выбором при загрузке агрегатов:
+// * Переносит данные сохраненного выбора (подходящая по GTIN строка) в коды маркировки, требующие уточнения данных.
+// * Не учитывает требующее маркировки количество для сброса сохраненного выбора.
+//
+// Параметры:
+// Форма - ФормаКлиентскогоПриложения - форма в которой происходит пакетная загрузка данных
+// ДанныеШтрихкода - См. ШтрихкодированиеОбщегоНазначенияИС.ИнициализироватьДанныеШтрихкода
+// ПараметрыСканирования - См. ШтрихкодированиеОбщегоНазначенияИСКлиент.ПараметрыСканирования
+//
+Процедура ПрименитьСохраненныйВыборПриУточненииУпаковки(Форма, ДанныеШтрихкода, ПараметрыСканирования)
+
+ // Сохранение выбора в параметры сканирования
+ ПараметрыСканирования.ДанныеВыбораПоМаркируемойПродукции = Форма.ДанныеВыбораПоМаркируемойПродукции;
+
+ // Определение состава полей для отбора
+ СохраненныйВыбор = Форма.ДанныеВыбораПоМаркируемойПродукции.Агрегация;
+
+ ПоляПоиска = Новый Структура;
+ ПоляПоиска.Вставить("Номенклатура");
+ ПоляПоиска.Вставить("Характеристика");
+ ПоляПоиска.Вставить("Серия");
+ Если ШтрихкодированиеОбщегоНазначенияИСКлиентСервер.ЗаполнятьДанныеВЕТИС(ПараметрыСканирования) Тогда
+ ПоляПоиска.Вставить("ИдентификаторПроисхожденияВЕТИС");
+ КонецЕсли;
+ Если ШтрихкодированиеОбщегоНазначенияИСКлиентСервер.ЗаполнятьСрокГодности(ПараметрыСканирования) Тогда
+ ПоляПоиска.Вставить("ГоденДо");
+ КонецЕсли;
+
+ Пакет = Форма.ЗагрузкаДанныхТСД;
+ ВсегоКодовМаркировки = Пакет.Всего;
+
+ // При обработке кода маркировки в форме документа изменения применяются мгновенно,
+ // поэтому поле Обработано содержит точное количество обработанных кодов.
+ // В форме проверки и подбора обработка кода происходит отложенно, вместе с обработкой остальных кодов.
+ Обработано = Пакет.Обработано;
+ Если Форма.ИмяФормы = "Обработка.ПроверкаИПодборПродукцииИС.Форма.ПроверкаИПодбор" Тогда
+ Обработано = Пакет.Обработано - 1;
+ КонецЕсли;
+
+ ПоляИсключения = Новый Массив;
+ ПоляИсключения.Добавить("Количество");
+ ПоляИсключения.Добавить("ВидУпаковки");
+ ПоляИсключения.Добавить("ВидПродукции");
+ ПоляИсключения = СтрСоединить(ПоляИсключения, ",");
+
+ ОбновляемыеШтрихкодыУпаковок = Новый Массив;
+
+ ЗаполняемыйКодМаркировки = Обработано;
+ Пока ЗаполняемыйКодМаркировки <> ВсегоКодовМаркировки Цикл
+ РезультатОбработки = Пакет.ШтрихкодыТСД[ЗаполняемыйКодМаркировки].РезультатОбработки;
+ Если РезультатОбработки <> Неопределено Тогда
+ Если Не (РезультатОбработки.ТребуетсяУточнениеДанных Или РезультатОбработки.ТребуетсяВыборСерии) Тогда
+ Продолжить;
+ КонецЕсли;
+ СтрокаШтрихкод = РезультатОбработки.ДанныеШтрихкода;
+ Если СтрокаШтрихкод <> Неопределено Тогда
+ Для Каждого ВариантВыбора Из СохраненныйВыбор Цикл
+ КодСоответствуетВыбору = Истина;
+ Для Каждого КлючИЗначение Из ПоляПоиска Цикл
+ КодСоответствуетВыбору = КодСоответствуетВыбору
+ И (ВариантВыбора[КлючИЗначение.Ключ] = СтрокаШтрихкод[КлючИЗначение.Ключ]
+ Или Не ЗначениеЗаполнено(СтрокаШтрихкод[КлючИЗначение.Ключ]));
+ КонецЦикла;
+ Если Не ЗначениеЗаполнено(СтрокаШтрихкод.Номенклатура) Тогда
+ КодСоответствуетВыбору = КодСоответствуетВыбору И ВариантВыбора.GTIN = СтрокаШтрихкод.GTIN;
+ КонецЕсли;
+ Если КодСоответствуетВыбору Тогда
+ ЗаполнитьЗначенияСвойств(ДанныеШтрихкода, ВариантВыбора,, ПоляИсключения);
+ РезультатОбработки.ТребуетсяУточнениеДанных = Ложь;
+ РезультатОбработки.ТребуетсяВыборСерии = Ложь;
+ ОбновляемыеШтрихкодыУпаковок.Добавить(СтрокаШтрихкод);
+ Прервать;
+ КонецЕсли;
+ КонецЦикла;
+ КонецЕсли;
+ КонецЕсли;
+
+ ЗаполняемыйКодМаркировки = ЗаполняемыйКодМаркировки + 1;
+
+ КонецЦикла;
+
+ // Требуется обновить существующие элементы справочника ШтрихкодыУпаковокТоваров как при уточнении данных
+ Если ОбновляемыеШтрихкодыУпаковок.Количество() Тогда
+ ШтрихкодированиеИСВызовСервера.ОбработатьГрупповоеУточнениеДанных(
+ СохраненныйВыбор, ОбновляемыеШтрихкодыУпаковок, ПараметрыСканирования);
+ КонецЕсли;
+
+КонецПроцедуры
+
// Возвращает текст заголовка оповещения для ТСД.
//
// Возвращаемое значение:
diff --git a/src/CommonModules/ДенежныеСредстваСервер/Ext/Module.bsl b/src/CommonModules/ДенежныеСредстваСервер/Ext/Module.bsl
index 273597503..eff2c8005 100644
--- a/src/CommonModules/ДенежныеСредстваСервер/Ext/Module.bsl
+++ b/src/CommonModules/ДенежныеСредстваСервер/Ext/Module.bsl
@@ -2698,7 +2698,7 @@
| НЕОПРЕДЕЛЕНО КАК АналитикаАктивовПассивов,
| НЕОПРЕДЕЛЕНО КАК ИдентификаторПлатежа,
| НЕОПРЕДЕЛЕНО КАК ДатаАвансовогоОтчета,
- | НЕОПРЕДЕЛЕНО КАК ПеречислениеВБюджет,
+ | ЛОЖЬ КАК ПеречислениеВБюджет,
| НЕОПРЕДЕЛЕНО КАК ТипНалога,
| НЕОПРЕДЕЛЕНО КАК НДФЛПоВедомостям,
| НЕОПРЕДЕЛЕНО КАК РегистрацияВНалоговомОргане,
@@ -2803,6 +2803,17 @@
КонецЕсли;
КонецЕсли;
+ //++ Локализация
+ Если ДанныеЗаполнения.ИННПлательщика = Неопределено Тогда
+
+ РеквизитыПлательщика = ДенежныеСредстваСерверЛокализация.РеквизитыПлательщика(ДанныеЗаполнения, ТекущаяДатаСеанса());
+ ДанныеЗаполнения.ИННПлательщика = РеквизитыПлательщика.ИННПлательщика;
+ ДанныеЗаполнения.КПППлательщика = РеквизитыПлательщика.КПППлательщика;
+ ДанныеЗаполнения.ТекстПлательщика = РеквизитыПлательщика.ТекстПлательщика;
+
+ КонецЕсли;
+ //-- Локализация
+
Если ДанныеЗаполнения.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.КонвертацияВалюты Тогда
СтруктураПараметров = ПараметрыЗаполненияБанковскогоСчетаОрганизации();
СтруктураПараметров.Организация = ДанныеЗаполнения.Организация;
diff --git a/src/CommonModules/ДенежныеСредстваСерверЛокализация/Ext/Module.bsl b/src/CommonModules/ДенежныеСредстваСерверЛокализация/Ext/Module.bsl
index b69050ee3..e985aaf33 100644
--- a/src/CommonModules/ДенежныеСредстваСерверЛокализация/Ext/Module.bsl
+++ b/src/CommonModules/ДенежныеСредстваСерверЛокализация/Ext/Module.bsl
@@ -1900,7 +1900,15 @@
// Возвращает реквизиты плательщика для указанного объекта.
//
// Параметры:
-// Объект - ДокументОбъект.ЗаявкаНаРасходованиеДенежныхСредств, ДокументОбъект.СписаниеБезналичныхДенежныхСредств, ДанныеФормыСтруктура - документ оплаты.
+// Объект - ДокументОбъект.ЗаявкаНаРасходованиеДенежныхСредств,
+// ДокументОбъект.СписаниеБезналичныхДенежныхСредств - документ оплаты.
+// - ДанныеФормыСтруктура - структура с данными документа.
+// - Структура - данные плательщика и платежа:
+// * Организация - СправочникСсылка.Организации - плательщик.
+// * БанковскийСчет - СправочникСсылка.БанковскиеСчетаОрганизаций - банковский счет плательщика.
+// * ПеречислениеВБюджет - Булево - признак перечисления денежных средств в бюджет.
+// * ТипНалога - СправочникСсылка.ВидыНалоговВзносов - тип налога при перечислении в бюджет, используется при Истина в ПеречислениеВБюджет.
+// * КодБК - Строка - КБК при перечислении в бюджет, используется при Истина в ПеречислениеВБюджет.
// Дата - Дата - дата, на которую формируются реквизиты
//
// Возвращаемое значение:
diff --git a/src/CommonModules/ДеревоЭлектронногоДокументаБЭД/Ext/Module.bsl b/src/CommonModules/ДеревоЭлектронногоДокументаБЭД/Ext/Module.bsl
index ba5184d4d..1b9b8e374 100644
--- a/src/CommonModules/ДеревоЭлектронногоДокументаБЭД/Ext/Module.bsl
+++ b/src/CommonModules/ДеревоЭлектронногоДокументаБЭД/Ext/Module.bsl
@@ -12,6 +12,66 @@
КонецФункции
+// Процедура проверяет реквизит дерева на ограничения по длине
+//
+// Параметры:
+// ДеревоДанных - ДеревоЗначений, СтрокаДереваЗначений - Дерево данных
+// Ошибки - Неопределено, Массив из Структура - ошибки, накопленные за время обработки. см. ОбщегоНазначенияБЭДКлиентСервер.НовыеПараметрыОшибки.
+// ПолноеИмяРеквизита - Строка - Полное имя реквизита
+// МинимальнаяДлина - Число - Минимальная длина
+// МаксимальнаяДлина - Число - Максимальная длина
+// НомерСтроки - Неопределено, Число - Номер строки
+//
+Процедура ПроверитьДлинуСтрокиЗначенияДерева(ДеревоДанных, Ошибки, ПолноеИмяРеквизита,
+ МинимальнаяДлина, МаксимальнаяДлина, НомерСтроки = Неопределено) Экспорт
+
+ РеквизитСтрокаДерева = Неопределено;
+ Реквизит = ЗначениеРеквизитаВДереве(ДеревоДанных, ПолноеИмяРеквизита, Ложь, РеквизитСтрокаДерева);
+
+ Если ЗначениеЗаполнено(Реквизит) Тогда
+
+ Если СтрДлина(Реквизит) < МинимальнаяДлина Или МаксимальнаяДлина < СтрДлина(Реквизит) Тогда
+
+ ТекстОшибки = "";
+ Если МинимальнаяДлина = МаксимальнаяДлина Тогда
+ ШаблонОшибки = НСтр("ru = 'длина значения должна быть равна %1, указано %2'");
+ ТекстОшибки = СтрШаблон(ШаблонОшибки, МинимальнаяДлина, СокрЛП(Реквизит));
+ Иначе
+ ШаблонОшибки = НСтр("ru = 'значение должно содержать от %1 до %2 символов, указано %3'");
+ ТекстОшибки = СтрШаблон(ШаблонОшибки, МинимальнаяДлина, МаксимальнаяДлина, СокрЛП(Реквизит));
+ КонецЕсли;
+
+ ДобавитьОшибкуПроверкиДереваДанных(Ошибки, РеквизитСтрокаДерева, ТекстОшибки,, НомерСтроки);
+
+ КонецЕсли;
+
+ КонецЕсли;
+
+КонецПроцедуры
+
+// Процедура проверяет на заполненность реквизит дерева
+//
+// Параметры:
+// ДеревоДанных - СтрокаДереваЗначений - Дерево данных
+// Ошибки - Неопределено
+// - Массив Из см. ОбщегоНазначенияБЭДКлиентСервер.НовыеПараметрыОшибки
+// ПолноеИмяРеквизита - Строка - Полное имя реквизита
+// НомерСтроки - Неопределено, Число - Номер строки
+//
+Процедура ПроверитьЗаполненностьЗначенияДерева(ДеревоДанных, Ошибки, ПолноеИмяРеквизита, НомерСтроки = Неопределено) Экспорт
+
+ РеквизитСтрокаДерева = Неопределено;
+ Реквизит = ЗначениеРеквизитаВДереве(ДеревоДанных, ПолноеИмяРеквизита, Ложь, РеквизитСтрокаДерева);
+
+ Если Не ЗначениеЗаполнено(Реквизит) Тогда
+
+ ДобавитьОшибкуПроверкиДереваДанных(Ошибки, РеквизитСтрокаДерева,
+ ТекстОшибкиНеЗаполненногоЗначенияДерева(),, НомерСтроки);
+
+ КонецЕсли;
+
+КонецПроцедуры
+
// Очищает значение в дереве данных.
//
// Параметры:
@@ -403,8 +463,12 @@
КонецЕсли;
НомерУровня = СтрЧислоВхождений(ИмяРеквизита, ".") + 1;
СтрокаДерева.ПолныйПуть = ИмяРеквизита;
- СтрокаДерева["Уровень" + НомерУровня] = ЭлектронноеВзаимодействие.НазваниеКолонки(ИмяРеквизита);
- СтрокаДерева.Значение = ЗначениеРеквизита;
+ СтрокаДерева["Уровень" + НомерУровня] = НазваниеКолонки(ИмяРеквизита);
+ Если ТипЗнч(ЗначениеРеквизита) = Тип("ДеревоЗначений") Тогда
+ СтрокаДерева.Значение = ЗначениеРеквизита.Скопировать();
+ Иначе
+ СтрокаДерева.Значение = ЗначениеРеквизита;
+ КонецЕсли;
КонецПроцедуры
@@ -811,8 +875,10 @@
Процедура ПроверитьЗаполнениеРеквизитовДереваДанныхРекурсивно(ДеревоДанных, Ошибки, ДатаПоФорматуФНС = Ложь) Экспорт
- ДеревоЭлектронногоДокументаБЭДСлужебный.ПроверитьЗаполнениеРеквизитовДереваДанных(
- ДеревоДанных, Ошибки, Ложь, , , ДатаПоФорматуФНС);
+ ПараметрыПроверки = ДеревоЭлектронногоДокументаБЭДСлужебный.НовыеПараметрыПроверкиДереваДанных();
+ ПараметрыПроверки.Вставить("ДатаПоФорматуФНС", ДатаПоФорматуФНС);
+
+ ДеревоЭлектронногоДокументаБЭДСлужебный.ПроверитьЗаполнениеРеквизитовДереваДанных(ДеревоДанных, Ошибки,,, ПараметрыПроверки);
КонецПроцедуры
diff --git a/src/CommonModules/ДеревоЭлектронногоДокументаБЭДСлужебный/Ext/Module.bsl b/src/CommonModules/ДеревоЭлектронногоДокументаБЭДСлужебный/Ext/Module.bsl
index e0519a662..66d271d93 100644
--- a/src/CommonModules/ДеревоЭлектронногоДокументаБЭДСлужебный/Ext/Module.bsl
+++ b/src/CommonModules/ДеревоЭлектронногоДокументаБЭДСлужебный/Ext/Module.bsl
@@ -105,7 +105,7 @@
// Возвращает список колонок, добавляемых в дерево данных электронного документа помимо объявленных в макете.
//
// Возвращаемое значение:
-// ФиксированныйМассив - массив колонок.
+// ФиксированныйМассив из Строка - Массив колонок.
//
Функция КолонкиДереваДокумента()
@@ -162,7 +162,7 @@
// Преобразует текстовое описание типа в объект ОписаниеТипов.
//
// Параметры:
-// Типы - Массив, Строка - см. ОписаниеТипов().
+// Типы - Массив из ОписаниеТипов, Строка - см. ОписаниеТипов().
// ОписаниеЧисла - Строка - см. КвалификаторыЧислаПоОписанию().
// ОписаниеСтроки - Строка - см. КвалификаторыСтрокиПоОписанию().
// ОписаниеДаты - Строка - см. КвалификаторыДатыПоОписанию().
@@ -594,71 +594,205 @@
КонецПроцедуры
-// Проверяет заполнение обязательных реквизитов дерева.
-// Только для внутреннего использования.
-// Параметры:
-// ДеревоДанных - деревоЗначений - дерево с данными.
-// Ошибки - Массив - ошибки, накопленные за время обработки. Элементами массива являются структуры.
-// Состав структур см. в ОбщегоНазначенияБЭДКлиентСервер.НовыеПараметрыОшибки().
-// ЭтоТаблица - Булево - если Истина, то проверяется табличная часть.
-// НомерСтроки - Число, Неопределено - номер проверяемой строки табличной части.
-// ПроверятьОбязательностьПараметровОшибки - Булево - определяет, нужно ли проверять, заданы ли параметры обработки ошибок
-// в тех реквизитах, для которых это обязательно.
-// ДатаПоФорматуФНС - Булево - если установлена в Истину, значения типа "Дата" будут проверяться дополнительно
-// на вхождение в диапазон лет 1900-2099 (требование схем ФНС).
+// Возвращает структуру параметров для проверки преобразования строки XML
+//
+// Возвращаемое значение:
+// Структура - Получить параметры проверки дерева данных:
+// * ДатаПоФорматуФНС - Булево - если установлена в Истину, значения типа "Дата" будут проверяться дополнительно
+// на вхождение в диапазон лет 1900-2099 (требование схем ФНС).
+// * Кодировка - Строка - Кодировка для XML
+// * ТаблицаСтрок - ТаблицаЗначений - :
+// ** Идентификатор - Строка - Идентификатор проверяемой строки
+// ** Значение - Строка - Значение проверяемой строки
+// ** Длина - Число - Ограничение длины проверяемой строки
+// ** Путь - Строка - Путь реквизита в дереве данных
+// ** НомерСтроки - Число, Неопределено - Номер строки для табличных частей
//
-Процедура ПроверитьЗаполнениеРеквизитовДереваДанных(ДеревоДанных, Ошибки, ЭтоТаблица,
- НомерСтроки = Неопределено, ПроверятьОбязательностьПараметровОшибки = Истина, ДатаПоФорматуФНС = Ложь) Экспорт
+Функция НовыеПараметрыПроверкиДереваДанных() Экспорт
+
+ ТаблицаСтрок = Новый ТаблицаЗначений;
+ ТаблицаСтрок.Колонки.Добавить("Идентификатор", ОбщегоНазначения.ОписаниеТипаСтрока(40));
+ ТаблицаСтрок.Колонки.Добавить("Значение", ОбщегоНазначения.ОписаниеТипаСтрока(0));
+ ТаблицаСтрок.Колонки.Добавить("Длина", ОбщегоНазначения.ОписаниеТипаЧисло(4));
+ ТаблицаСтрок.Колонки.Добавить("Путь", ОбщегоНазначения.ОписаниеТипаСтрока(0));
+ ТаблицаСтрок.Колонки.Добавить("НомерСтроки", ОбщегоНазначения.ОписаниеТипаЧисло(4));
+
+ ПараметрыПроверки = Новый Структура;
+ ПараметрыПроверки.Вставить("ДатаПоФорматуФНС", Ложь);
+ ПараметрыПроверки.Вставить("Кодировка", "windows-1251");
+ ПараметрыПроверки.Вставить("ТаблицаСтрок", ТаблицаСтрок);
- НомерСтрокиДляПодстановки = ?(ЭтоТаблица, НомерСтроки, Неопределено);
- СтрокаДерева = Неопределено; // в этой переменной будем хранить последнюю считанную строку дерева данных
+ Возврат ПараметрыПроверки;
- Для Каждого СтрокаДерева Из ДеревоДанных.Строки Цикл
- ТекстОшибки = "";
-
- РеквизитЗаполненИлиОбязателен = ЗначениеЗаполнено(СтрокаДерева.Значение) ИЛИ НРег(СтрокаДерева.Обязательное) = "да";
-
- // Проверяем заполнение самого реквизита.
- ПроверитьЗаполнениеРеквизитаДереваДанных(СтрокаДерева, ПроверятьОбязательностьПараметровОшибки, ДатаПоФорматуФНС, ТекстОшибки);
+КонецФункции
+
+// Включить реквизит в проверку длин строк.
+//
+// Параметры:
+// СтрокаДерева - СтрокаДереваЗначений - Строка дерева
+// РеквизитЗаполнен - Булево - Признак заполнения реквизита
+// ПараметрыПроверки - Структура: см. НовыеПараметрыПроверкиДереваДанных().
+// НомерСтроки - Неопределено, Число - Номер строки
+//
+Процедура ВключитьРеквизитВПроверкуДлинСтрок(СтрокаДерева, РеквизитЗаполнен, ПараметрыПроверки, НомерСтроки = Неопределено)
- Если ЗначениеЗаполнено(ТекстОшибки) Тогда
- ДобавитьОшибкуПроверкиДереваДанных(Ошибки, СтрокаДерева, ТекстОшибки,, НомерСтрокиДляПодстановки);
+ ТипЗначения = СтрокаДерева.ТипЗначения;
+
+ Если ЗначениеЗаполнено(ТипЗначения) И ТипЗначения.СодержитТип(Тип("Строка"))
+ И ТипЗначения.КвалификаторыСтроки.Длина > 0 И РеквизитЗаполнен Тогда
+
+ СтрокаТаблицы = ПараметрыПроверки.ТаблицаСтрок.Добавить();
+ СтрокаТаблицы.Идентификатор = "xml-" + Строка(Новый УникальныйИдентификатор);
+ СтрокаТаблицы.Значение = СтрокаДерева.Значение;
+ СтрокаТаблицы.Длина = ТипЗначения.КвалификаторыСтроки.Длина;
+ СтрокаТаблицы.Путь = СтрокаДерева.ПолныйПуть;
+ СтрокаТаблицы.НомерСтроки = НомерСтроки;
- Продолжить;
КонецЕсли;
+
+КонецПроцедуры
+
+// Проверяет строковые значение на предмет превышения длины строки учитывая спецсимволы
+//
+// Параметры:
+// ДеревоДанных - ДеревоЗначений - Дерево с данными.
+// ПараметрыПроверки - Структура: см. НовыеПараметрыПроверкиДереваДанных().
+// Ошибки - Массив из См. ОбщегоНазначенияБЭДКлиентСервер.НовыеПараметрыОшибки()
+//
+Процедура ПроверитьСтроковыеПараметрыНаПревышениеДлины(ДеревоДанных, ПараметрыПроверки, Ошибки)
+
+ ДлинаТэга = 42; // Длина идентификатора - 40 + символы "<>"
+ Пояснение = НСтр("ru='Некоторые символы ("", &, <, >) занимают больше места.'");
+
+ Поток = Новый ПотокВПамяти;
+
+ Запись = Новый ЗаписьXML();
+ Запись.ОткрытьПоток(Поток, Новый ПараметрыЗаписиXML(ПараметрыПроверки.Кодировка,, Ложь, Ложь));
+ Запись.ЗаписатьНачалоЭлемента("ДанныеСтрок");
- // Запускаем проверки подчиненных реквизитов, если это структурированное значение.
- Если СтрокаДерева.Признак = "Таблица" И (ТипЗнч(СтрокаДерева.Значение) = Тип("Число") И СтрокаДерева.Значение > 0 ИЛИ СтрокаДерева.Обязательное = "Да")Тогда
- Для Каждого СтрокаТаблицы Из СтрокаДерева.Строки Цикл
- ПроверитьЗаполнениеРеквизитовДереваДанных(СтрокаТаблицы, Ошибки, Истина, СтрокаТаблицы.Значение,
- РеквизитЗаполненИлиОбязателен И ПроверятьОбязательностьПараметровОшибки, ДатаПоФорматуФНС);
- КонецЦикла;
- ИначеЕсли СтрокаДерева.Признак = "Выбор" И (ЗначениеЗаполнено(СтрокаДерева.Значение) ИЛИ СтрокаДерева.Обязательное = "Да") Тогда
- ПроверяемаяСтрока = СтрокаДерева.Строки.Найти(СтрокаДерева.ПолныйПуть + "." + СтрокаДерева.Значение, "ПолныйПуть");
- Если ЗначениеЗаполнено(ПроверяемаяСтрока) Тогда
- // Поскольку сменили текущую строку дерева, нужно проверить заполнение самого реквизита.
- ПроверитьЗаполнениеРеквизитаДереваДанных(ПроверяемаяСтрока, ПроверятьОбязательностьПараметровОшибки, ДатаПоФорматуФНС, ТекстОшибки);
+ Для Каждого СтрокаТаблицы Из ПараметрыПроверки.ТаблицаСтрок Цикл
+
+ Запись.ЗаписатьНачалоЭлемента(СтрокаТаблицы.Идентификатор);
+ Запись.ЗаписатьТекст(СтрокаТаблицы.Значение);
+ Запись.ЗаписатьКонецЭлемента();
+
+ КонецЦикла;
+
+ Запись.ЗаписатьКонецЭлемента(); // ДанныеСтрок
+ Запись.Закрыть();
+
+ Поток.Перейти(0, ПозицияВПотоке.Начало);
+ Чтение = Новый ЧтениеДанных(Поток, ПараметрыПроверки.Кодировка);
+ Чтение.ПрочитатьСтроку(, "<ДанныеСтрок>");
+
+ Для Каждого СтрокаТаблицы Из ПараметрыПроверки.ТаблицаСтрок Цикл
+
+ РазделительСтроки = "" + СтрокаТаблицы.Идентификатор + ">";
+ СтрокаИзПотока = Чтение.ПрочитатьСтроку(, РазделительСтроки);
+ СтрокаДанных = Прав(СтрокаИзПотока, СтрДлина(СтрокаИзПотока) - ДлинаТэга);
+
+ Если СтрДлина(СтрокаДанных) > СтрокаТаблицы.Длина Тогда
+
+ СтрокаДерева = ДеревоДанных.Строки.Найти(СтрокаТаблицы.Путь, "ПолныйПуть", Истина);
+
+ НомерСтроки = ?(СтрокаТаблицы.НомерСтроки = 0, Неопределено, СтрокаТаблицы.НомерСтроки);
+ ЧислоСимволов = ПолучитьСклоненияСтрокиПоЧислу("", СтрокаТаблицы.Длина, "символ", "ЧС=Количественное", "ПД=Винительный")[0];
+ ТекстОшибки = СтрШаблон(НСтр("ru='Длина строки превышает допустимый размер %1 %2. %3'"),
+ СтрокаТаблицы.Длина, ЧислоСимволов, Пояснение);
+
+ ДобавитьОшибкуПроверкиДереваДанных(Ошибки, СтрокаДерева, ТекстОшибки,, НомерСтроки);
- Если ЗначениеЗаполнено(ТекстОшибки) Тогда
- ДобавитьОшибкуПроверкиДереваДанных(Ошибки, ПроверяемаяСтрока, ТекстОшибки,, НомерСтрокиДляПодстановки);
-
- Продолжить;
- КонецЕсли;
-
- ПроверитьЗаполнениеРеквизитовДереваДанных(ПроверяемаяСтрока, Ошибки, Ложь,,
- РеквизитЗаполненИлиОбязателен И ПроверятьОбязательностьПараметровОшибки, ДатаПоФорматуФНС);
- Иначе
- ТекстОшибки = ТекстОшибкиНеЗаполненногоЗначенияДерева();
-
- ДобавитьОшибкуПроверкиДереваДанных(Ошибки, СтрокаДерева, ТекстОшибки);
- КонецЕсли;
- ИначеЕсли СтрокаДерева.Признак = "Группа" И СтрокаДерева.Значение = Истина И СтрокаДерева.Строки.Количество() > 0 Тогда
- ПроверитьЗаполнениеРеквизитовДереваДанных(СтрокаДерева, Ошибки, Ложь,,
- РеквизитЗаполненИлиОбязателен И ПроверятьОбязательностьПараметровОшибки, ДатаПоФорматуФНС);
КонецЕсли;
КонецЦикла;
+ Поток.Закрыть();
+
+КонецПроцедуры
+
+// Проверяет заполнение обязательных реквизитов дерева и их корректность.
+//
+// Параметры:
+// ДеревоДанных - ДеревоЗначений - Дерево с данными.
+// Ошибки - Массив из См. ОбщегоНазначенияБЭДКлиентСервер.НовыеПараметрыОшибки()
+// НомерСтроки - Число, Неопределено - Номер строки
+// ПроверятьОбязательностьПараметровОшибки - Булево - Определяет, нужно ли проверять, заданы ли параметры обработки ошибок
+// в тех реквизитах, для которых это обязательно.
+// ПараметрыПроверки - Структура: см. НовыеПараметрыПроверкиДереваДанных().
+//
+Процедура ПроверитьЗаполнениеРеквизитовДереваДанных(ДеревоДанных, Ошибки,
+ НомерСтроки = Неопределено, ПроверятьОбязательностьПараметровОшибки = Истина, ПараметрыПроверки = Неопределено) Экспорт
+
+ ЭтоВерхнийУровеньДерева = ТипЗнч(ДеревоДанных) = Тип("ДеревоЗначений");
+ ПараметрыПроверки = ?(ПараметрыПроверки = Неопределено, НовыеПараметрыПроверкиДереваДанных(), ПараметрыПроверки);
+
+ Для Каждого СтрокаДерева Из ДеревоДанных.Строки Цикл
+
+ ТекстОшибки = "";
+ РеквизитЗаполнен = ЗначениеЗаполнено(СтрокаДерева.Значение);
+ РеквизитОбязателен = НРег(СтрокаДерева.Обязательное) = "да";
+ РеквизитЗаполненИлиОбязателен = РеквизитЗаполнен Или НРег(СтрокаДерева.Обязательное) = "да";
+
+ // Проверяем заполнение самого реквизита.
+ ПроверитьЗаполнениеРеквизитаДереваДанных(СтрокаДерева, ПроверятьОбязательностьПараметровОшибки,
+ ПараметрыПроверки.ДатаПоФорматуФНС, ТекстОшибки);
+
+ Если ЗначениеЗаполнено(ТекстОшибки) Тогда
+
+ ДобавитьОшибкуПроверкиДереваДанных(Ошибки, СтрокаДерева, ТекстОшибки,, НомерСтроки);
+ Продолжить;
+
+ КонецЕсли;
+
+ ВключитьРеквизитВПроверкуДлинСтрок(СтрокаДерева, РеквизитЗаполнен, ПараметрыПроверки, НомерСтроки);
+
+ // Запускаем проверки подчиненных реквизитов, если это структурированное значение.
+ Если СтрокаДерева.Признак = "Таблица" И (ТипЗнч(СтрокаДерева.Значение) = Тип("Число") И СтрокаДерева.Значение > 0 Или РеквизитОбязателен) Тогда
+
+ Для Каждого СтрокаТаблицы Из СтрокаДерева.Строки Цикл
+ ПроверитьЗаполнениеРеквизитовДереваДанных(СтрокаТаблицы, Ошибки, СтрокаТаблицы.Значение,
+ РеквизитЗаполненИлиОбязателен И ПроверятьОбязательностьПараметровОшибки, ПараметрыПроверки);
+ КонецЦикла;
+
+ ИначеЕсли СтрокаДерева.Признак = "Выбор" И (РеквизитЗаполнен Или РеквизитОбязателен) Тогда
+
+ ПроверяемаяСтрока = СтрокаДерева.Строки.Найти(СтрокаДерева.ПолныйПуть + "." + СтрокаДерева.Значение, "ПолныйПуть");
+ Если ЗначениеЗаполнено(ПроверяемаяСтрока) Тогда
+ // Поскольку сменили текущую строку дерева, нужно проверить заполнение самого реквизита.
+ ПроверитьЗаполнениеРеквизитаДереваДанных(ПроверяемаяСтрока, ПроверятьОбязательностьПараметровОшибки,
+ ПараметрыПроверки.ДатаПоФорматуФНС, ТекстОшибки);
+
+ Если ЗначениеЗаполнено(ТекстОшибки) Тогда
+
+ ДобавитьОшибкуПроверкиДереваДанных(Ошибки, ПроверяемаяСтрока, ТекстОшибки,, НомерСтроки);
+ Продолжить;
+
+ КонецЕсли;
+
+ ПроверитьЗаполнениеРеквизитовДереваДанных(ПроверяемаяСтрока, Ошибки,,
+ РеквизитЗаполненИлиОбязателен И ПроверятьОбязательностьПараметровОшибки, ПараметрыПроверки);
+
+ Иначе
+
+ ТекстОшибки = ТекстОшибкиНеЗаполненногоЗначенияДерева();
+ ДобавитьОшибкуПроверкиДереваДанных(Ошибки, СтрокаДерева, ТекстОшибки);
+
+ КонецЕсли;
+ ИначеЕсли СтрокаДерева.Признак = "Группа" И СтрокаДерева.Значение = Истина И СтрокаДерева.Строки.Количество() > 0 Тогда
+
+ ПроверитьЗаполнениеРеквизитовДереваДанных(СтрокаДерева, Ошибки,,
+ РеквизитЗаполненИлиОбязателен И ПроверятьОбязательностьПараметровОшибки, ПараметрыПроверки);
+
+ КонецЕсли;
+
+ КонецЦикла;
+
+ Если ЭтоВерхнийУровеньДерева Тогда
+
+ ПроверитьСтроковыеПараметрыНаПревышениеДлины(ДеревоДанных, ПараметрыПроверки, Ошибки);
+
+ КонецЕсли;
+
КонецПроцедуры
// Возвращает стандартный текст ошибки для незаполненного значения дерева.
@@ -675,8 +809,8 @@
// Добавляет в ошибку в хранилище накопленных ошибок.
//
// Параметры:
-// Ошибки - Массив - ошибки, накопленные за время обработки. Элементами массива являются структуры.
-// Состав структур см. ОбщегоНазначенияБЭДКлиентСервер.НовыеПараметрыОшибки.
+// Ошибки - Массив из Структура - ошибки, накопленные за время обработки. Элементами массива являются структуры.
+// см. ОбщегоНазначенияБЭДКлиентСервер.НовыеПараметрыОшибки.
// СтрокаДерева - СтрокаДереваЗначений - строка дерева электронного документа, по реквизиту которой
// фиксируется ошибка.
// ТекстОшибки - Строка - текст фиксируемой ошибки.
@@ -929,7 +1063,7 @@
// СтрокаТовара - СтрокаДереваЗначений - строка товара дерева документа, из которой нужно извлечь данные.
//
// Возвращаемое значение:
-// Структура - информация для сопоставления товаров.
+// Структура, Неопределено - информация для сопоставления товаров.
//
Функция ИзвлечьСопоставлениеНоменклатурыИзДереваДокумента(Знач СтрокаТовара) Экспорт
@@ -1100,10 +1234,10 @@
// Параметры:
// ДеревоДанных - ДеревоЗначений - дерево с данными
// НазваниеПоля - Строка - название поля в дереве, содержащее полный путь к реквизиту
-// НайтиРекурсивно - Булево, Истина - если требуется рекурсивный поиск.
+// НайтиРекурсивно - Булево - Истина, если требуется рекурсивный поиск.
//
// Возвращаемое значение:
-// Строка таблицы значений - содержит строку дерева.
+// СтрокаТаблицыЗначений - содержит строку дерева.
//
Функция СтрокаДерева(ДеревоДанных, НазваниеПоля, НайтиРекурсивно = Ложь) Экспорт
diff --git a/src/CommonModules/ДопустимыеЦелиВЕТИС/Ext/Module.bsl b/src/CommonModules/ДопустимыеЦелиВЕТИС/Ext/Module.bsl
index 32fd96591..41787b1ea 100644
--- a/src/CommonModules/ДопустимыеЦелиВЕТИС/Ext/Module.bsl
+++ b/src/CommonModules/ДопустимыеЦелиВЕТИС/Ext/Module.bsl
@@ -283,7 +283,7 @@
КонецЕсли;
Если НеКонтролироватьДоступныеЦели Тогда
- Возврат
+ Возврат;
КонецЕсли;
ДеревоДопустимыхЦелей = ДопустимыеЦелиПоПродукциям(Объект.Товары.ВыгрузитьКолонку("Продукция"));
@@ -513,7 +513,7 @@
СтрокаТаблицы = ЗаполненныеВиды.Получить(ВидПродукцииИдентификатор);
Если СтрокаТаблицы <> Неопределено Тогда
Если СтрНайти(СтрокаТаблицы.ВидПродукцииНаименование, ВидПродукцииНаименование) = 0 Тогда
- СтрокаТаблицы.ВидПродукцииНаименование = СтрокаТаблицы.ВидПродукцииНаименование + ", "+ ВидПродукцииНаименование;
+ СтрокаТаблицы.ВидПродукцииНаименование = СтрокаТаблицы.ВидПродукцииНаименование + ", " + ВидПродукцииНаименование;
КонецЕсли;
Продолжить;
КонецЕсли;
diff --git a/src/CommonModules/ДоставкаТоваров/Ext/Module.bsl b/src/CommonModules/ДоставкаТоваров/Ext/Module.bsl
index 8451d455b..579152fb8 100644
--- a/src/CommonModules/ДоставкаТоваров/Ext/Module.bsl
+++ b/src/CommonModules/ДоставкаТоваров/Ext/Module.bsl
@@ -1466,6 +1466,18 @@
РеквизитыШапки.Вставить("АдресДоставки", ВыборкаРеквизитыШапки.АдресДоставки);
РеквизитыШапки.Вставить("АдресДоставкиЗначенияПолей", ВыборкаРеквизитыШапки.АдресДоставкиЗначенияПолей);
+ ЕстьСвойствоЗначенияАдреса = ОбщегоНазначенияКлиентСервер.ЕстьРеквизитИлиСвойствоОбъекта(
+ ВыборкаРеквизитыШапки,
+ "АдресДоставкиЗначение");
+
+ Если ЕстьСвойствоЗначенияАдреса Тогда
+ АдресДоставкиЗначение = ВыборкаРеквизитыШапки.АдресДоставкиЗначение; // Строка
+ Иначе
+ АдресДоставкиЗначение = "";
+ КонецЕсли;
+
+ РеквизитыШапки.Вставить("АдресДоставкиЗначение", АдресДоставкиЗначение);
+
Если ВыборкаРеквизитыШапки.СпособДоставки = Перечисления.СпособыДоставки.ДоКлиента
Или ВыборкаРеквизитыШапки.СпособДоставки = Перечисления.СпособыДоставки.СиламиПеревозчикаПоАдресу Тогда
РеквизитыШапки.Вставить("ЗонаДоставки", ВыборкаРеквизитыШапки.ЗонаДоставки);
diff --git a/src/CommonModules/ЗакрытиеМесяцаСервер/Ext/Module.bsl b/src/CommonModules/ЗакрытиеМесяцаСервер/Ext/Module.bsl
index 80340ec8b..248480f0b 100644
--- a/src/CommonModules/ЗакрытиеМесяцаСервер/Ext/Module.bsl
+++ b/src/CommonModules/ЗакрытиеМесяцаСервер/Ext/Module.bsl
@@ -325,9 +325,20 @@
КонецПроцедуры
+// Использование информирования о переъоже на новые режимы учета.
+//
+// Параметры:
+// ПараметрыОбработчика - см. Обработки.ОперацииЗакрытияМесяца.ИнициализироватьПараметрыОбработчикаЭтапа
+//
Процедура Использование_ПереходНаНовыеРежимыРаботы(ПараметрыОбработчика) Экспорт
- СтатусПоУмолчанию = Перечисления.ВажностьПроблемыУчета.ВажнаяИнформация;
+ // При закрытии текущего и предыдущего месяца повышаем важность проблемы.
+ Если НачалоМесяца(ПараметрыОбработчика.ПараметрыРасчета.Период) >= ДобавитьМесяц(НачалоМесяца(ТекущаяДатаСеанса()), -1) Тогда
+ СтатусПоУмолчанию = Перечисления.ВажностьПроблемыУчета.ВажнаяИнформация;
+ Иначе
+ СтатусПоУмолчанию = Перечисления.ВажностьПроблемыУчета.Предупреждение;
+ ПараметрыОбработчика.ДанныеЭтапа.Наименование = НСтр("ru='Рекомендуется осуществить переход на новые режимы учета'");
+ КонецЕсли;
ТекстГиперссылкиПоУмолчанию = НСтр("ru='Перейти'", ОбщегоНазначения.КодОсновногоЯзыка());
//++ Локализация
@@ -3640,7 +3651,7 @@
БлокирующийОбработчик = ОбработчикиОбновления.Получить(ОбъектМетаданных);
Если БлокирующийОбработчик = Неопределено Тогда
- БлокирующийОбработчик = Истина;
+ БлокирующийОбработчик = Ложь;
КонецЕсли;
Отбор = ?(ТипЗнч(ОписаниеДанных.Значение) = Тип("Булево"), Неопределено, ОписаниеДанных.Значение);
@@ -3747,7 +3758,7 @@
Пока Выборка.Следующий() Цикл
БлокируетЗакрытиеМесяца = ОбработчикиОбновления.Получить(НРег(Выборка.ИмяОбработчика));
- БлокируетЗакрытиеМесяца = ?(БлокируетЗакрытиеМесяца = Неопределено, Истина, БлокируетЗакрытиеМесяца);
+ БлокируетЗакрытиеМесяца = ?(БлокируетЗакрытиеМесяца = Неопределено, Ложь, БлокируетЗакрытиеМесяца);
МассивИменМетаданных = СтроковыеФункцииКлиентСервер.РазложитьСтрокуВМассивПодстрок(СокрЛП(Выборка.ИзменяемыеОбъекты), ",", Истина, Истина);
@@ -3776,7 +3787,6 @@
// Каждый обработчик обновления указывается на новой строке, запятые в конце строки не нужны
Обработчики = "
- |ЗакрытиеМесяцаСервер.ОбработатьДанныеДляПереходаНаНовуюВерсию
|РегистрыСведений.ЗаданияКРаспределениюРасчетов.ОбработатьДанныеДляПереходаНаНовуюВерсию
|РегистрыСведений.ЗаданияНеоперативногоДопроведенияДокументов.ОбработатьДанныеДляПереходаНаНовуюВерсию
|РегистрыНакопления.РасчетыПоФинансовымИнструментам.ОбработатьДанныеДляПереходаНаНовуюВерсию
@@ -3801,6 +3811,7 @@
// Каждый обработчик обновления указывается на новой строке, запятые в конце строки не нужны
Обработчики = "
+ |ЗакрытиеМесяцаСервер.ОбработатьДанныеДляПереходаНаНовуюВерсию
|Справочники.ДоговорыКонтрагентов.ОбработатьДанныеДляПереходаНаНовуюВерсию
|Документы.АктОРасхожденияхПослеПриемки.ПриДобавленииОбработчиковОбновления
|Документы.ЗаказПоставщику.ОбработатьДанныеДляПереходаНаНовуюВерсию
diff --git a/src/CommonModules/ЗаполнениеДокументовВЕТИС/Ext/Module.bsl b/src/CommonModules/ЗаполнениеДокументовВЕТИС/Ext/Module.bsl
index b1e28a4a7..73d0a5ff1 100644
--- a/src/CommonModules/ЗаполнениеДокументовВЕТИС/Ext/Module.bsl
+++ b/src/CommonModules/ЗаполнениеДокументовВЕТИС/Ext/Module.bsl
@@ -404,7 +404,7 @@
| ТаблицаСоответствия.Продукция,
| ТаблицаСоответствия.Номенклатура,
| ТаблицаСоответствия.Характеристика,
- | ТаблицаСоответствия.Серия Убыв
+ | ТаблицаСоответствия.Серия УБЫВ
|";
Запрос = Новый Запрос(ТекстЗапроса);
@@ -459,7 +459,7 @@
КонецФункции
-// Определеяет предполагаемый документ-основание, на основании данных по связанным документам.
+// Определяет предполагаемый документ-основание, на основании данных по связанным документам.
// Сопоставляет данные из ТЗ "СвязанныеДокументы" и ВТ "ДокументыИнформационнойБазы" (см. ИнтеграцияВЕТИСПереопределяемый.ЗаполнитьВременнуюТаблицуСвязанныхДокументовИнформационнойБазы)
// по номеру и дате, после чего возвращает первый найденный документ информационной базы, упорядочивая их по полю "ПоказательУпорядочивания" ВТ "ДокументыИнформационнойБазы"
// Параметры:
@@ -523,7 +523,7 @@
КонецФункции
-// Заполняет один из реквизитов (дату прозводства/срок годности) по другому по полученной статистике
+// Заполняет один из реквизитов (дату производства/срок годности) по другому по полученной статистике
// * Не изменяет заполненные значения
// * Срок годности с точностью до часа (скоропорт) устанавливается только по аналогично заполненной второй точности
//
diff --git a/src/CommonModules/ЗаполнениеОбъектовПоСтатистикеВЕТИС/Ext/Module.bsl b/src/CommonModules/ЗаполнениеОбъектовПоСтатистикеВЕТИС/Ext/Module.bsl
index d5d3c4194..c38611ac1 100644
--- a/src/CommonModules/ЗаполнениеОбъектовПоСтатистикеВЕТИС/Ext/Module.bsl
+++ b/src/CommonModules/ЗаполнениеОбъектовПоСтатистикеВЕТИС/Ext/Module.bsl
@@ -24,7 +24,7 @@
| ИсходящаяТранспортнаяОперацияВЕТИС.Проведен
| И ИсходящаяТранспортнаяОперацияВЕТИС.ГрузоотправительПредприятие = &Предприятие
|УПОРЯДОЧИТЬ ПО
- | ИсходящаяТранспортнаяОперацияВЕТИС.Дата Убыв
+ | ИсходящаяТранспортнаяОперацияВЕТИС.Дата УБЫВ
|;
|////////////////////////////////////////////////////////////////////////////////
|ВЫБРАТЬ
@@ -38,7 +38,7 @@
|СГРУППИРОВАТЬ ПО
| ИсходящаяТранспортнаяОперацияВЕТИСТовары.БлагополучиеМестности
|УПОРЯДОЧИТЬ ПО
- | КоличествоВхождений Убыв";
+ | КоличествоВхождений УБЫВ";
Выборка = Запрос.Выполнить().Выбрать();
@@ -99,7 +99,7 @@
| И ТоварыДокумента.Ссылка.Проведен
| И ТоварыДокумента.Цель В (&ДоступныеЦели)
|УПОРЯДОЧИТЬ ПО
- | Дата Убыв
+ | Дата УБЫВ
|;
|////////////////////////////////////////////////////////////////////////////////
|ВЫБРАТЬ
@@ -197,7 +197,7 @@
| Документы.Проведен
| И Документы.Ответственный = &Ответственный
|УПОРЯДОЧИТЬ ПО
- | Документы.Дата Убыв
+ | Документы.Дата УБЫВ
|;
|
|////////////////////////////////////////////////////////////////////////////////
diff --git a/src/CommonModules/ИкарВЕТИСВызовСервера/Ext/Module.bsl b/src/CommonModules/ИкарВЕТИСВызовСервера/Ext/Module.bsl
index 61a910eff..d81a41ef8 100644
--- a/src/CommonModules/ИкарВЕТИСВызовСервера/Ext/Module.bsl
+++ b/src/CommonModules/ИкарВЕТИСВызовСервера/Ext/Module.bsl
@@ -885,7 +885,7 @@
ПараметрыЗапроса.НомерСтраницы = НомерСтраницы;
ПараметрыЗапроса.ИмяЭлемента = "locality";
ПараметрыЗапроса.ИмяСписка = "localityList";
- ПараметрыЗапроса.Представление = НСтр("ru = 'запрос списка населенных пунктов по идентификатора города'");
+ ПараметрыЗапроса.Представление = НСтр("ru = 'запрос списка населенных пунктов по идентификатору города'");
Если КоличествоЭлементовНаСтранице = Неопределено Тогда
КоличествоЭлементовНаСтранице = ИнтеграцияВЕТИСКлиентСервер.РазмерСтраницы();
diff --git a/src/CommonModules/Интеграция1СШтамп/Ext/Module.bsl b/src/CommonModules/Интеграция1СШтамп/Ext/Module.bsl
index 3113d4150..dda837307 100644
--- a/src/CommonModules/Интеграция1СШтамп/Ext/Module.bsl
+++ b/src/CommonModules/Интеграция1СШтамп/Ext/Module.bsl
@@ -130,4 +130,15 @@
КонецФункции
+#КонецОбласти
+
+#Область ДляВызоваИзДругихПодсистем
+
+// См. СтандартныеПодсистемыСервер.ПриОпределенииМетодовРазрешенныхДляВызоваКакПроизвольныйКод
+Процедура ПриОпределенииМетодовРазрешенныхДляВызоваКакПроизвольныйКод(Методы) Экспорт
+
+ Методы.Вставить("РезультатУстановкиШтамповВДокумент", Истина);
+
+КонецПроцедуры
+
#КонецОбласти
\ No newline at end of file
diff --git a/src/CommonModules/Интеграция1СШтампВызовСервера/Ext/Module.bsl b/src/CommonModules/Интеграция1СШтампВызовСервера/Ext/Module.bsl
index 8d5170ed8..65b105377 100644
--- a/src/CommonModules/Интеграция1СШтампВызовСервера/Ext/Module.bsl
+++ b/src/CommonModules/Интеграция1СШтампВызовСервера/Ext/Module.bsl
@@ -6,8 +6,6 @@
Знач ПользовательскийСценарий,
Знач ТаймаутПолученияСтатусаВыполненияЗаданияВСервисе = Неопределено) Экспорт
- ИмяФункции = "Интеграция1СШтамп.РезультатУстановкиШтамповВДокумент";
-
НаименованиеЗадания = НСтр("ru = '1С:Штамп. Добавление картинок штампов в документ.'",
ОбщегоНазначения.КодОсновногоЯзыка());
@@ -18,7 +16,7 @@
Возврат ДлительныеОперации.ВыполнитьФункцию(
ПараметрыВыполнения,
- ИмяФункции,
+ "Интеграция1СШтамп.РезультатУстановкиШтамповВДокумент",
ПараметрыУстановкиШтампов,
ПользовательскийСценарий,
ТаймаутПолученияСтатусаВыполненияЗаданияВСервисе);
diff --git a/src/CommonModules/Интеграция1СШтампСлужебный/Ext/Module.bsl b/src/CommonModules/Интеграция1СШтампСлужебный/Ext/Module.bsl
index 3528bb6c7..e2be1e161 100644
--- a/src/CommonModules/Интеграция1СШтампСлужебный/Ext/Module.bsl
+++ b/src/CommonModules/Интеграция1СШтампСлужебный/Ext/Module.bsl
@@ -244,6 +244,17 @@
#КонецОбласти
+#Область ДляВызоваИзДругихПодсистем
+
+// См. СтандартныеПодсистемыСервер.ПриОпределенииМетодовРазрешенныхДляВызоваКакПроизвольныйКод
+Процедура ПриОпределенииМетодовРазрешенныхДляВызоваКакПроизвольныйКод(Методы) Экспорт
+
+ Методы.Вставить("Пауза", Истина);
+
+КонецПроцедуры
+
+#КонецОбласти
+
#Область СлужебныеПроцедурыИФункции
#Область МетодыОбращенияКСервису
diff --git a/src/CommonModules/ИнтеграцияShare/Ext/Module.bsl b/src/CommonModules/ИнтеграцияShare/Ext/Module.bsl
index acb0b03e4..81555d2eb 100644
--- a/src/CommonModules/ИнтеграцияShare/Ext/Module.bsl
+++ b/src/CommonModules/ИнтеграцияShare/Ext/Module.bsl
@@ -72,9 +72,9 @@
// * СхемаПубликации - Строка - см. ИнтеграцияShareКлиентСервер.СхемыПубликацииДокумента.
// * ДлительностьСрокаЖизни - Число - срок жизни доступа к электронному документу в минутах.
// Допускается значение до 30 дней (43200 минут).
-// - Дата - содержит дату и время в часом поясе UTC длительности срока жизни доступа к электронному документу.
-// Допускается значение до 30 дней.
-// * ИнициаторПубликации - Строка - механизм инициириующий публикацию документа в сервис 1С:Share. При интеграции с другими сервиса
+// - Дата - длительности срока жизни доступа к электронному документу, содержит дату и время
+// в часом поясе сервера. Допускается значение до 30 дней.
+// * ИнициаторПубликации - Строка - механизм инициирующий публикацию документа в сервис 1С:Share. При интеграции с другими сервиса
// рекомендуется указывать наименование подсистемы или функциональности, например: "ОнлайнЗаказы", "ГрупповаяОбработка" и т.д.
// По умолчанию значение "СервисShare".
// * ДоступноРучноеУправление - Булево - признак доступности ручного управления ссылкой на документ в пользовательских интерфейсах.
@@ -100,11 +100,10 @@
ПараметрыДокумента.ДополнительныеПараметры = ДополнительныеПараметры;
Если НастройкиПубликации <> Неопределено Тогда
-
СрокЖизниВМинутах = 0;
ДлительностьСрокаЖизни = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(НастройкиПубликации, "ДлительностьСрокаЖизни");
Если ТипЗнч(ДлительностьСрокаЖизни) = Тип("Дата") Тогда
- СрокЖизниВМинутах = ДатаUTCВМинуты(ДлительностьСрокаЖизни);
+ СрокЖизниВМинутах = ДатаВМинуты(ДлительностьСрокаЖизни);
ИначеЕсли ТипЗнч(ДлительностьСрокаЖизни) = Тип("Число") Тогда
СрокЖизниВМинутах = ДлительностьСрокаЖизни;
КонецЕсли;
@@ -1345,21 +1344,22 @@
КонецФункции
-// Преобразует дату в формате UTC в минуты.
+// Вычисляется количество минут из разницы исходной даты и текущей даты сервера.
//
// Параметры:
-// ИсходнаяДата - Дата - исходная дата в формате UTC.
+// ИсходнаяДата - Дата - исходная дата.
//
// Возвращаемое значение:
// Число - результат преобразования в минуты.
//
-Функция ДатаUTCВМинуты(ИсходнаяДата)
+Функция ДатаВМинуты(ИсходнаяДата)
- Если Не ЗначениеЗаполнено(ИсходнаяДата) Тогда
+ Если Не ЗначениеЗаполнено(ИсходнаяДата)
+ Или ИсходнаяДата <= ТекущаяДатаСеанса() Тогда
Возврат 0;
КонецЕсли;
- Возврат Окр((ИсходнаяДата - НачалоМинуты(ТекущаяУниверсальнаяДата()))/60);
+ Возврат Окр((НачалоМинуты(ИсходнаяДата) - НачалоМинуты(ТекущаяДатаСеанса()))/60);
КонецФункции
@@ -2387,7 +2387,6 @@
ПараметрыЗаполнения = РаботаСФайламиБЭД.НовыеПараметрыЗаполненияXDTO();
ПараметрыЗаполнения.ОбязательныеСвойства = "Name";
- ПараметрыЗаполнения.ПропускаемыеНезаполненныеСвойства = "TIN";
РаботаСФайламиБЭД.ЗаполнитьСвойстваXDTOИзДерева(Получатель, ЗначенияСвойствXDTO, ДеревоДанных, Ошибки, ПараметрыЗаполнения);
diff --git a/src/CommonModules/ИнтеграцияShareУТ/Ext/Module.bsl b/src/CommonModules/ИнтеграцияShareУТ/Ext/Module.bsl
index eef7d2a52..5dae10e83 100644
--- a/src/CommonModules/ИнтеграцияShareУТ/Ext/Module.bsl
+++ b/src/CommonModules/ИнтеграцияShareУТ/Ext/Module.bsl
@@ -76,6 +76,12 @@
СоставКоманд.Исходящие.Добавить(Метаданные.Документы.КорректировкаРеализации.ПолноеИмя());
СоставКоманд.Входящие.Добавить(Метаданные.Документы.КорректировкаПриобретения.ПолноеИмя());
+ СоставКоманд.Исходящие.Добавить(Метаданные.Обработки.ЖурналДокументовПродажи.ПолноеИмя());
+ СоставКоманд.Входящие.Добавить(Метаданные.Обработки.ЖурналДокументовЗакупки.ПолноеИмя());
+ СоставКоманд.Исходящие.Добавить(Метаданные.Обработки.ЖурналДокументовОтчетыКомитентам.ПолноеИмя());
+ СоставКоманд.Входящие.Добавить(Метаданные.Обработки.ЖурналДокументовОтчетыКомиссионеров.ПолноеИмя());
+ СоставКоманд.Исходящие.Добавить(Метаданные.ЖурналыДокументов.СверкиВзаиморасчетов.ПолноеИмя());
+
КонецПроцедуры
// См. ИнтеграцияShareПереопределяемый.ПриОпределенииГиперссылкиНаИнструкциюПоРаботеССервисом.
diff --git a/src/CommonModules/ИнтеграцияБРОЭДО/Ext/Module.bsl b/src/CommonModules/ИнтеграцияБРОЭДО/Ext/Module.bsl
index e87fd236c..6cff2807b 100644
--- a/src/CommonModules/ИнтеграцияБРОЭДО/Ext/Module.bsl
+++ b/src/CommonModules/ИнтеграцияБРОЭДО/Ext/Module.bsl
@@ -351,6 +351,8 @@
КонверторТипов.Вставить(Перечисления.ТипыДокументовЭДО.АктСверкиВзаиморасчетов, "АктСверкиВзаиморасчетов");
КонверторТипов.Вставить(
Перечисления.ТипыДокументовЭДО.АктПриемкиСтроительныхРаботУслуг, "АктПриемкиСтроительныхРаботУслуг");
+ КонверторТипов.Вставить(Перечисления.ТипыДокументовЭДО.СчетНаОплату, "СчетНаОплату");
+ КонверторТипов.Вставить(Перечисления.ТипыДокументовЭДО.СчетОферта, "СчетОферта");
Результат = Новый Соответствие;
@@ -405,6 +407,26 @@
Возврат;
КонецПопытки;
+ Если ДанныеДокумента.ТипРегламента = Перечисления.ТипыРегламентовЭДО.Неформализованный
+ И ЭлектронныеДокументыЭДО.ВозможнаВыгрузкаТолькоПоФормализованномуРегламенту(ДанныеДокумента.ТипДокумента) Тогда
+
+ ОписаниеФайла = РаботаСФайламиБЭДКлиентСервер.НовоеОписаниеФайла();
+ ОписаниеФайла.ДвоичныеДанные = РаботаСФайлами.ДвоичныеДанныеФайла(ФайлДокумента, Ложь);
+ ОписаниеФайла.ИмяФайла = ДанныеФайла.ИмяФайла;
+ СодержаниеСообщения = ЭлектронныеДокументыЭДО.СодержаниеСообщения(ОписаниеФайла);
+
+ Если ЗначениеЗаполнено(СодержаниеСообщения) Тогда
+ ФорматыCML = ФорматыЭДО_CML.ПоддерживаемыеФорматы();
+ Если СодержаниеСообщения.Формат = ФорматыCML.CML208 Или СодержаниеСообщения.Формат = ФорматыCML.CML402 Тогда
+ ШаблонОшибки =
+ НСтр("ru = 'В формате CML тип документа ""%1"" не предназначен для предоставления в ФНС.'");
+ ТекстОшибки = СтрШаблон(ШаблонОшибки, ДанныеДокумента.ТипДокумента);
+ ДобавитьДокументВПакетСОшибкой(ПакетыДокументовДляВыгрузки, ДанныеДокумента.ЭлектронныйДокумент, ТекстОшибки);
+ Возврат;
+ КонецЕсли;
+ КонецЕсли;
+ КонецЕсли;
+
Если ДанныеДокумента.ТипДокумента = Перечисления.ТипыДокументовЭДО.ДоговорныйДокумент Тогда
Если ДоговорнойДокументВозможноПредоставитьКакФормализованный(ДанныеДокумента, ДанныеФайла) Тогда
@@ -1069,7 +1091,7 @@
// * ДвоичныеДанные - ДвоичныеДанные
// * Размер - Число
// * КНД - Строка - номер по классификатору налоговых документов
-// * УстановленныеПодписи - см. ЭлектроннаяПодпись.УстановленныеПодписи
+// * УстановленныеПодписи - см. ЭлектроннаяПодпись.ПодписиОбъекта
//
Процедура ВыгрузитьФайлыСообщений(ЭлементОписи, АдресКаталога, Сообщения)
@@ -1629,7 +1651,7 @@
// * ДвоичныеДанные - ДвоичныеДанные
// * Размер - Число
// * КНД - Строка - номер по классификатору налоговых документов
-// * УстановленныеПодписи - см. ЭлектроннаяПодпись.УстановленныеПодписи
+// * УстановленныеПодписи - см. ЭлектроннаяПодпись.ПодписиОбъекта
//
// Возвращаемое значение:
// Структура - Структура результатов проверки подписей:
@@ -1903,6 +1925,18 @@
КонецЕсли;
ИначеЕсли ТипДокумента = Перечисления.ТипыДокументовЭДО.ДоговорныйДокумент Тогда
КодВидДокумента = "14";
+ ИначеЕсли ТипДокумента = Перечисления.ТипыДокументовЭДО.СчетНаОплату Тогда
+ Если ТипРегламента = Перечисления.ТипыРегламентовЭДО.Формализованный Тогда
+ КодВидДокумента = "15";
+ Иначе
+ КодВидДокумента = "16";
+ КонецЕсли;
+ ИначеЕсли ТипДокумента = Перечисления.ТипыДокументовЭДО.СчетОферта Тогда
+ Если ТипРегламента = Перечисления.ТипыРегламентовЭДО.Формализованный Тогда
+ КодВидДокумента = "17";
+ Иначе
+ КодВидДокумента = "18";
+ КонецЕсли;
КонецЕсли;
Возврат КодВидДокумента;
@@ -1942,6 +1976,11 @@
КодВидДокумента = "10";
+ ИначеЕсли ТипДокумента = Перечисления.ТипыДокументовЭДО.СчетНаОплату
+ Или ТипДокумента = Перечисления.ТипыДокументовЭДО.СчетОферта Тогда
+
+ КодВидДокумента = "11";
+
Иначе
КодВидДокумента = "12";
diff --git a/src/CommonModules/ИнтеграцияБСПБЭДВызовСервера/Ext/Module.bsl b/src/CommonModules/ИнтеграцияБСПБЭДВызовСервера/Ext/Module.bsl
index 0d4098794..84d98848a 100644
--- a/src/CommonModules/ИнтеграцияБСПБЭДВызовСервера/Ext/Module.bsl
+++ b/src/CommonModules/ИнтеграцияБСПБЭДВызовСервера/Ext/Module.bsl
@@ -235,4 +235,15 @@
#КонецОбласти
+// Параметры:
+// ДанныеСертификата - ДвоичныеДанные
+//
+// Возвращаемое значение:
+// Булево
+Функция ФайлЯвляетсяСертификатом(Знач ДанныеСертификата) Экспорт
+
+ Возврат ЭлектроннаяПодписьСлужебныйВызовСервера.ФайлЯвляетсяСертификатом(ДанныеСертификата);
+
+КонецФункции
+
#КонецОбласти
\ No newline at end of file
diff --git a/src/CommonModules/ИнтеграцияБСПБЭДСлужебныйВызовСервера/Ext/Module.bsl b/src/CommonModules/ИнтеграцияБСПБЭДСлужебныйВызовСервера/Ext/Module.bsl
index c3b2c9815..fe6ca8e71 100644
--- a/src/CommonModules/ИнтеграцияБСПБЭДСлужебныйВызовСервера/Ext/Module.bsl
+++ b/src/CommonModules/ИнтеграцияБСПБЭДСлужебныйВызовСервера/Ext/Module.bsl
@@ -48,8 +48,7 @@
ИдентификаторФормы) Экспорт
Результат = Новый Структура("АдресДанныхСертификата, СвойстваСертификата", "", Неопределено);
-
- ПодписиОбъекта = ЭлектроннаяПодпись.УстановленныеПодписи(ПодписанныйОбъект, ПорядковыйНомерПодписи);
+ ПодписиОбъекта = КриптографияБЭД.УстановленныеПодписи(ПодписанныйОбъект, ПорядковыйНомерПодписи);
Если ПодписиОбъекта.Количество() Тогда
ДанныеСертификата = ПодписиОбъекта[0].Сертификат.Получить();
Результат.АдресДанныхСертификата = ПоместитьВоВременноеХранилище(ДанныеСертификата, ИдентификаторФормы);
diff --git a/src/CommonModules/ИнтеграцияВЕТИС/Ext/Module.bsl b/src/CommonModules/ИнтеграцияВЕТИС/Ext/Module.bsl
index 101c53092..2bec114a8 100644
--- a/src/CommonModules/ИнтеграцияВЕТИС/Ext/Module.bsl
+++ b/src/CommonModules/ИнтеграцияВЕТИС/Ext/Module.bsl
@@ -165,7 +165,7 @@
#КонецОбласти
-// Формирует структура доступных права для пользователя
+// Формирует структуру доступных прав для пользователя
//
// Параметры:
// ПользовательВЕТИС - СправочникСсылка.Пользователи - Пользователь.
@@ -275,12 +275,6 @@
|ВЫБРАТЬ
| ЗНАЧЕНИЕ(Перечисление.ПраваДоступаВЕТИС.УполномоченноеОформлениеВозвратныхВСД) КАК ПравоДоступа,
| ВЫРАЗИТЬ(&ПользовательВЕТИС КАК Справочник.ПользователиВЕТИС) КАК ПользовательВЕТИС
- |
- |ОБЪЕДИНИТЬ ВСЕ
- |
- |ВЫБРАТЬ
- | ЗНАЧЕНИЕ(Перечисление.ПраваДоступаВЕТИС.УполномоченноеОформлениеВозвратныхВСД) КАК ПравоДоступа,
- | ВЫРАЗИТЬ(&ПользовательВЕТИС КАК Справочник.ПользователиВЕТИС) КАК ПользовательВЕТИС
|;
|
|ВЫБРАТЬ РАЗЛИЧНЫЕ
diff --git a/src/CommonModules/ИнтеграцияВЕТИСВызовСервера/Ext/Module.bsl b/src/CommonModules/ИнтеграцияВЕТИСВызовСервера/Ext/Module.bsl
index 82dbcabbf..a6e8bd79d 100644
--- a/src/CommonModules/ИнтеграцияВЕТИСВызовСервера/Ext/Module.bsl
+++ b/src/CommonModules/ИнтеграцияВЕТИСВызовСервера/Ext/Module.bsl
@@ -231,7 +231,7 @@
// Отмечает документ как обработанный. Устанавливает дальнейшее действие - Не требуется.
//
// Параметры:
-// ДокументСсылка - ДокументсСсылка - Документ, которму необходимо установить соответствующий статус.
+// ДокументСсылка - ДокументСсылка - Документ, которому необходимо установить соответствующий статус.
// Возвращаемое значение:
// Структура - Описание:
// * Объект - ДокументОбъект - Документ-объект устанавливаемый.
@@ -1728,7 +1728,7 @@
Корпуса = Новый Массив;
Для Каждого СтрокаТЧ Из СведенияОбАдресе.Корпуса Цикл
- Если ВРЕГ(СтрокаТЧ.ТипКорпуса) = ВРЕГ("Строение") Тогда
+ Если ВРег(СтрокаТЧ.ТипКорпуса) = ВРег("Строение") Тогда
Корпуса.Добавить(СтрокаТЧ.Номер);
Иначе
Корпуса.Добавить(СтрокаТЧ.ТипКорпуса + " " + СтрокаТЧ.Номер);
@@ -1754,7 +1754,7 @@
КонецЕсли;
ДанныеАдреса.НомерДома = НомерДома;
- ДанныеАдреса.НомерСтроения = СтрСоединить(Помещения, ", ");
+ ДанныеАдреса.НомерСтроения = СтрСоединить(Корпуса, ", ");
ДанныеАдреса.НомерОфиса = СтрСоединить(Помещения, ", ");
ДанныеАдреса.ПочтовыйИндекс = СведенияОбАдресе.Индекс;
@@ -2816,14 +2816,6 @@
КонецФункции
-// см. ОбщегоНазначения.ЗначениеРеквизитаОбъекта
-//
-Функция ЗначениеРеквизитаОбъекта(Ссылка, ИмяРеквизита, ВыбратьРазрешенные = Ложь) Экспорт
-
- Возврат ОбщегоНазначения.ЗначениеРеквизитаОбъекта(Ссылка, ИмяРеквизита, ВыбратьРазрешенные);
-
-КонецФункции
-
// Изменяет структуру ДанныеАдреса в соответствии с классификатором ВЕТИС
//
Процедура ДанныеАдресаПоАдресуXMLАдаптацияПодВЕТИС(ДанныеАдреса, СведенияОбАдресе)
diff --git a/src/CommonModules/ИнтеграцияВЕТИСКлиент/Ext/Module.bsl b/src/CommonModules/ИнтеграцияВЕТИСКлиент/Ext/Module.bsl
index 8dce9e87f..c2c3e8001 100644
--- a/src/CommonModules/ИнтеграцияВЕТИСКлиент/Ext/Module.bsl
+++ b/src/CommonModules/ИнтеграцияВЕТИСКлиент/Ext/Module.bsl
@@ -665,7 +665,7 @@
Если ТипЗнч(ВходящийОбъект) = Тип("ДанныеФормыСтруктура") Тогда
ОбщегоНазначенияКлиент.СообщитьПользователю(ТекстСообщения,, "Продукция", "Объект");
- иначе
+ Иначе
Поле = ОбщегоНазначенияКлиентСервер.ПутьКТабличнойЧасти("Товары", ВходящийОбъект.НомерСтроки, "Продукция");
ОбщегоНазначенияКлиент.СообщитьПользователю(ТекстСообщения, Форма.Объект.Ссылка, Поле, "Объект");
КонецЕсли;
diff --git a/src/CommonModules/ИнтеграцияВЕТИСКлиентСервер/Ext/Module.bsl b/src/CommonModules/ИнтеграцияВЕТИСКлиентСервер/Ext/Module.bsl
index 05d37055c..65859f686 100644
--- a/src/CommonModules/ИнтеграцияВЕТИСКлиентСервер/Ext/Module.bsl
+++ b/src/CommonModules/ИнтеграцияВЕТИСКлиентСервер/Ext/Module.bsl
@@ -2072,18 +2072,18 @@
КонецФункции
-Функция ЭтоШтриховойКодЕАN13(ШтрихКод) Экспорт
+Функция ЭтоШтриховойКодЕАN13(Штрихкод) Экспорт
СтруктураВозврата = Новый Структура;
СтруктураВозврата.Вставить("Соответствует", Истина);
СтруктураВозврата.Вставить("ТекстОшибки", "");
- Если СтрДлина(ШтрихКод) <> 13 Тогда
+ Если СтрДлина(Штрихкод) <> 13 Тогда
СтруктураВозврата.Соответствует = Ложь;
СтруктураВозврата.ТекстОшибки = НСтр("ru = 'Длина не равна 13 символам'");
- ИначеЕсли МенеджерОборудованияКлиентСервер.РассчитатьКонтрольныйСимволGTIN13(ШтрихКод) <> Прав(ШтрихКод, 1) Тогда
+ ИначеЕсли МенеджерОборудованияКлиентСервер.РассчитатьКонтрольныйСимволGTIN13(Штрихкод) <> Прав(Штрихкод, 1) Тогда
СтруктураВозврата.Соответствует = Ложь;
СтруктураВозврата.ТекстОшибки = НСтр("ru = 'Контрольная цифра не соответствует рассчитанной'");
diff --git a/src/CommonModules/ИнтеграцияЕГАИСВызовСервера/Ext/Module.bsl b/src/CommonModules/ИнтеграцияЕГАИСВызовСервера/Ext/Module.bsl
index 9e5aba0b0..24278d370 100644
--- a/src/CommonModules/ИнтеграцияЕГАИСВызовСервера/Ext/Module.bsl
+++ b/src/CommonModules/ИнтеграцияЕГАИСВызовСервера/Ext/Module.bsl
@@ -1560,4 +1560,66 @@
КонецФункции
+// Только для внутреннего использования.
+// Вызывается из: ПодготовитьСообщенияКПередаче
+//
+// Параметры:
+// СсылкиДокументов - Массив из ОпределяемыйТип.ДокументыЕГАИС
+//
+// Возвращаемое значение:
+// Булево - Возможна отправка подтверждения
+Функция ВозможнаОтправкаПодтверждения(СсылкиДокументов) Экспорт
+
+ Отказ = Ложь;
+
+ СтатусыПроверкиИПодбора = ОбщегоНазначения.ЗначениеРеквизитаОбъектов(СсылкиДокументов, "СтатусПроверкиИПодбора");
+
+ КоличествоПроверенныхДокументов = 0;
+
+ Для Каждого КлючЗначение Из СтатусыПроверкиИПодбора Цикл
+ Если КлючЗначение.Значение = ПредопределенноеЗначение("Перечисление.СтатусыПроверкиИПодбораИС.Завершено") Тогда
+ КоличествоПроверенныхДокументов = КоличествоПроверенныхДокументов + 1;
+ КонецЕсли;
+ КонецЦикла;
+
+ Если КоличествоПроверенныхДокументов <> СсылкиДокументов.Количество() Тогда
+ Если КоличествоПроверенныхДокументов = 0 Тогда
+ Если СсылкиДокументов.Количество() = 1 Тогда
+ СообщениеПользователю = НСтр("ru = 'В указанном документе не выполнена проверка поступившей алкогольной продукции.'");
+ Иначе
+ СообщениеПользователю = НСтр("ru = 'В указанных документах не выполнена проверка поступившей алкогольной продукции.'");
+ КонецЕсли;
+ Иначе
+ СообщениеПользователю = НСтр("ru = 'Не во всех указанных документах выполнена проверка поступившей алкогольной продукции.'");
+ КонецЕсли;
+ СообщениеПользователю = СообщениеПользователю + " " + НСтр("ru = 'Отправка подтверждения возможна только после завершения проверки.'");
+ ОбщегоНазначения.СообщитьПользователю(СообщениеПользователю,,,, Отказ);
+ КонецЕсли;
+
+ Возврат НЕ Отказ;
+
+КонецФункции
+
+Функция РеквизитыИсточникаДанныхПараметровСканирования(ИсточникДанных) Экспорт
+
+ Если ТипЗнч(ИсточникДанных) = Тип("ДокументСсылка.ЧекЕГАИС")
+ Или ТипЗнч(ИсточникДанных) = Тип("ДокументСсылка.ЧекЕГАИСВозврат")
+ Или ТипЗнч(ИсточникДанных) = Тип("ДокументСсылка.ВозвратИзРегистра2ЕГАИС")
+ Или ТипЗнч(ИсточникДанных) = Тип("ДокументСсылка.ЗапросАкцизныхМарокЕГАИС") Тогда
+ ОписаниеПолейОбъекта = "ОрганизацияЕГАИС, Ссылка, ДокументОснование";
+ ИначеЕсли ТипЗнч(ИсточникДанных) = Тип("ДокументСсылка.ТТНВходящаяЕГАИС") Тогда
+ ОписаниеПолейОбъекта = Новый Структура("Грузополучатель, Ссылка, ДокументОснование");
+ ИначеЕсли ТипЗнч(ИсточникДанных) = Тип("ДокументСсылка.АктПостановкиНаБалансЕГАИС")
+ Или ТипЗнч(ИсточникДанных) = Тип("ДокументСсылка.АктСписанияЕГАИС") Тогда
+ ОписаниеПолейОбъекта = "ОрганизацияЕГАИС, ВидДокумента, Ссылка, ДокументОснование";
+ ИначеЕсли ТипЗнч(ИсточникДанных) = Тип("ДокументСсылка.ТТНИсходящаяЕГАИС") Тогда
+ ОписаниеПолейОбъекта = "Ссылка, ДокументОснование, Грузоотправитель";
+ Иначе
+ Возврат ИсточникДанных;
+ КонецЕсли;
+
+ Возврат ОбщегоНазначения.ЗначенияРеквизитовОбъекта(ИсточникДанных, ОписаниеПолейОбъекта);
+
+КонецФункции
+
#КонецОбласти
diff --git a/src/CommonModules/ИнтеграцияЕГАИСКлиент/Ext/Module.bsl b/src/CommonModules/ИнтеграцияЕГАИСКлиент/Ext/Module.bsl
index 039cdbd43..4d9f4ea7c 100644
--- a/src/CommonModules/ИнтеграцияЕГАИСКлиент/Ext/Module.bsl
+++ b/src/CommonModules/ИнтеграцияЕГАИСКлиент/Ext/Module.bsl
@@ -78,7 +78,7 @@
Контекст.ДействиеНедоступно = Контекст.МассивДокументов.Количество() > 0
И ДальнейшееДействие = ПредопределенноеЗначение("Перечисление.ДальнейшиеДействияПоВзаимодействиюЕГАИС.ПодтвердитеПолучение")
- И Не ВозможнаОтправкаПодтверждения(Контекст.МассивДокументов);
+ И Не ИнтеграцияЕГАИСВызовСервера.ВозможнаОтправкаПодтверждения(Контекст.МассивДокументов);
ОбменДаннымиИСКлиент.ПодготовитьСообщенияКПередаче(Контекст);
@@ -691,55 +691,6 @@
#Область СлужебныеПроцедурыИФункции
-// Только для внутреннего использования.
-// Вызывается из: ПодготовитьСообщенияКПередаче
-Функция ВозможнаОтправкаПодтверждения(СсылкиДокументов)
-
- Отказ = Ложь;
-
- СтатусыПроверкиИПодбора = ОбщегоНазначенияИСВызовСервера.ЗначениеРеквизитаОбъектов(СсылкиДокументов, "СтатусПроверкиИПодбора");
-
- КоличествоПроверенныхДокументов = 0;
-
- Для Каждого КлючЗначение Из СтатусыПроверкиИПодбора Цикл
- Если ЗавершенаПроверкаИПодбор(КлючЗначение.Значение) Тогда
- КоличествоПроверенныхДокументов = КоличествоПроверенныхДокументов + 1;
- КонецЕсли;
- КонецЦикла;
-
- Если КоличествоПроверенныхДокументов <> СсылкиДокументов.Количество() Тогда
- Если КоличествоПроверенныхДокументов = 0 Тогда
- Если СсылкиДокументов.Количество() = 1 Тогда
- СообщениеПользователю = НСтр("ru = 'В указанном документе не выполнена проверка поступившей алкогольной продукции.'");
- Иначе
- СообщениеПользователю = НСтр("ru = 'В указанных документах не выполнена проверка поступившей алкогольной продукции.'");
- КонецЕсли;
- Иначе
- СообщениеПользователю = НСтр("ru = 'Не во всех указанных документах выполнена проверка поступившей алкогольной продукции.'");
- КонецЕсли;
- СообщениеПользователю = СообщениеПользователю + " " + НСтр("ru = 'Отправка подтверждения возможна только после завершения проверки.'");
- ОбщегоНазначенияКлиент.СообщитьПользователю(СообщениеПользователю,,,, Отказ);
- КонецЕсли;
-
- Возврат НЕ Отказ;
-
-КонецФункции
-
-// Только для внутреннего использования.
-//
-// Параметры:
-// СтатусПроверкиИПодбора - Структура, Произвольный - Статус проверки и подбора:
-// * Ключ - Строка -
-// * Значение - Произвольный -
-//
-// Возвращаемое значение:
-// Булево - Завершена проверка и подбор
-Функция ЗавершенаПроверкаИПодбор(СтатусПроверкиИПодбора) Экспорт
-
- Возврат СтатусПроверкиИПодбора = ПредопределенноеЗначение("Перечисление.СтатусыПроверкиИПодбораИС.Завершено");
-
-КонецФункции
-
// Находит первую строку в заданной колонке, с заданным значением в коллекции ДанныеФормыДерево.
//
// Параметры:
diff --git a/src/CommonModules/ИнтеграцияЕГАИСКлиентСервер/Ext/Module.bsl b/src/CommonModules/ИнтеграцияЕГАИСКлиентСервер/Ext/Module.bsl
index de5954dbf..6d56dc2a9 100644
--- a/src/CommonModules/ИнтеграцияЕГАИСКлиентСервер/Ext/Module.bsl
+++ b/src/CommonModules/ИнтеграцияЕГАИСКлиентСервер/Ext/Module.bsl
@@ -409,7 +409,7 @@
СтруктураПересчетаСуммы.Строки.Добавить(Строка);
СтруктураПересчетаСуммы.ИтогКоличество = СтруктураПересчетаСуммы.ИтогКоличество + Строка[СтруктураПересчетаСуммы.ИмяПоляКоличество];
-Конецпроцедуры
+КонецПроцедуры
// Пересчитывает суммы в строках, добавленных в структуру пересчета суммы, описание см. функция
// ОбработкаТабличнойЧастиКлиентСервер.СтруктураПересчетаСуммы.
diff --git a/src/CommonModules/ИнтеграцияЕГАИСУТ/Ext/Module.bsl b/src/CommonModules/ИнтеграцияЕГАИСУТ/Ext/Module.bsl
index f87049c4e..619d081a3 100644
--- a/src/CommonModules/ИнтеграцияЕГАИСУТ/Ext/Module.bsl
+++ b/src/CommonModules/ИнтеграцияЕГАИСУТ/Ext/Module.bsl
@@ -4348,7 +4348,8 @@
| НЕ ДокументОснование.Проведен КАК ЕстьОшибкиПроведен,
| ДокументОснование.Организация КАК Поставщик,
| ДокументОснование.Менеджер КАК Ответственный,
- | ДокументОснование.Контрагент КАК Грузополучатель,
+ | ДокументОснование.Контрагент КАК Контрагент,
+ | ДокументОснование.Грузополучатель КАК Грузополучатель,
| ДокументОснование.Организация КАК Грузоотправитель,
| ДокументОснование.Склад КАК Склад,
| ДокументОснование.Партнер КАК Партнер,
@@ -4395,10 +4396,17 @@
ДокументОбъект.Поставщик = ОрганизацияЕГАИСПоОрганизацииИСкладу(РеквизитыДокумента.Поставщик, РеквизитыДокумента.Склад);
ДокументОбъект.Грузоотправитель = ДокументОбъект.Поставщик;
- ДокументОбъект.Грузополучатель = ОрганизацияЕГАИСПоПартнеруИКонтрагенту(
- РеквизитыДокумента.Партнер,
- РеквизитыДокумента.Грузополучатель);
-
+ Если ЗначениеЗаполнено(РеквизитыДокумента.Грузополучатель) Тогда
+ ДокументОбъект.Грузополучатель = ОрганизацияЕГАИСПоПартнеруИКонтрагенту(
+ РеквизитыДокумента.Партнер,
+ РеквизитыДокумента.Грузополучатель);
+ КонецЕсли;
+ Если Не ЗначениеЗаполнено(ДокументОбъект.Грузополучатель) Тогда
+ ДокументОбъект.Грузополучатель = ОрганизацияЕГАИСПоПартнеруИКонтрагенту(
+ РеквизитыДокумента.Партнер,
+ РеквизитыДокумента.Контрагент);
+ КонецЕсли;
+
ЗаполнитьТранспортныеРеквизитыТТНИсходящей(ДокументОбъект, ТранспортнаяНакладная);
КонецЕсли;
@@ -5029,7 +5037,8 @@
| НЕ ДокументОснование.Проведен КАК ЕстьОшибкиПроведен,
| ДокументОснование.Организация КАК Поставщик,
| ДокументОснование.Менеджер КАК Ответственный,
- | ДокументОснование.Контрагент КАК Грузополучатель,
+ | ДокументОснование.Контрагент КАК Контрагент,
+ | ДокументОснование.Грузополучатель КАК Грузополучатель,
| ДокументОснование.Организация КАК Грузоотправитель,
| ДокументОснование.Склад КАК Склад,
| ДокументОснование.Партнер КАК Партнер,
@@ -5076,9 +5085,16 @@
ДокументОбъект.Поставщик = ОрганизацияЕГАИСПоОрганизацииИСкладу(РеквизитыДокумента.Поставщик, РеквизитыДокумента.Склад);
ДокументОбъект.Грузоотправитель = ДокументОбъект.Поставщик;
- ДокументОбъект.Грузополучатель = ОрганизацияЕГАИСПоПартнеруИКонтрагенту(
- РеквизитыДокумента.Партнер,
- РеквизитыДокумента.Грузополучатель);
+ Если ЗначениеЗаполнено(РеквизитыДокумента.Грузополучатель) Тогда
+ ДокументОбъект.Грузополучатель = ОрганизацияЕГАИСПоПартнеруИКонтрагенту(
+ РеквизитыДокумента.Партнер,
+ РеквизитыДокумента.Грузополучатель);
+ КонецЕсли;
+ Если Не ЗначениеЗаполнено(ДокументОбъект.Грузополучатель) Тогда
+ ДокументОбъект.Грузополучатель = ОрганизацияЕГАИСПоПартнеруИКонтрагенту(
+ РеквизитыДокумента.Партнер,
+ РеквизитыДокумента.Контрагент);
+ КонецЕсли;
ЗаполнитьТранспортныеРеквизитыТТНИсходящей(ДокументОбъект, ТранспортнаяНакладная);
@@ -5258,7 +5274,8 @@
| НЕ ДокументСсылка.Проведен КАК ЕстьОшибкиПроведен,
| ДокументСсылка.Организация КАК Поставщик,
| ДокументСсылка.Менеджер КАК Ответственный,
- | ДокументСсылка.Контрагент КАК Грузополучатель,
+ | ДокументСсылка.Контрагент КАК Контрагент,
+ | ДокументСсылка.Грузополучатель КАК Грузополучатель,
| ДокументСсылка.Организация КАК Грузоотправитель,
| ДокументСсылка.Склад КАК Склад,
| ДокументСсылка.Партнер КАК Партнер,
@@ -5305,9 +5322,16 @@
ДокументОбъект.Поставщик = ОрганизацияЕГАИСПоОрганизацииИСкладу(РеквизитыДокумента.Поставщик, РеквизитыДокумента.Склад);
ДокументОбъект.Грузоотправитель = ДокументОбъект.Поставщик;
- ДокументОбъект.Грузополучатель = ОрганизацияЕГАИСПоПартнеруИКонтрагенту(
- РеквизитыДокумента.Партнер,
- РеквизитыДокумента.Грузополучатель);
+ Если ЗначениеЗаполнено(РеквизитыДокумента.Грузополучатель) Тогда
+ ДокументОбъект.Грузополучатель = ОрганизацияЕГАИСПоПартнеруИКонтрагенту(
+ РеквизитыДокумента.Партнер,
+ РеквизитыДокумента.Грузополучатель);
+ КонецЕсли;
+ Если Не ЗначениеЗаполнено(ДокументОбъект.Грузополучатель) Тогда
+ ДокументОбъект.Грузополучатель = ОрганизацияЕГАИСПоПартнеруИКонтрагенту(
+ РеквизитыДокумента.Партнер,
+ РеквизитыДокумента.Контрагент);
+ КонецЕсли;
ЗаполнитьТранспортныеРеквизитыТТНИсходящей(ДокументОбъект, ТранспортнаяНакладная);
diff --git a/src/CommonModules/ИнтеграцияЗЕРНОВызовСервера/Ext/Module.bsl b/src/CommonModules/ИнтеграцияЗЕРНОВызовСервера/Ext/Module.bsl
index 0dbf0b676..11002cfba 100644
--- a/src/CommonModules/ИнтеграцияЗЕРНОВызовСервера/Ext/Module.bsl
+++ b/src/CommonModules/ИнтеграцияЗЕРНОВызовСервера/Ext/Module.bsl
@@ -1157,6 +1157,30 @@
КонецФункции
+Функция ОрганизацияСертификата(Сертификат) Экспорт
+
+ Если Не ЗначениеЗаполнено(Сертификат) Тогда
+ Возврат ОбщегоНазначенияИС.ПустоеЗначениеОпределяемогоТипа("Организация");
+ ИначеЕсли Не Метаданные.РегистрыСведений.ОчередьСообщенийЗЕРНО.Реквизиты.Сертификат.Тип.СодержитТип(ТипЗнч(Сертификат)) Тогда
+ ВызватьИсключение НСтр("ru = 'Не верный тип значения сертификата для получения организации'");
+ КонецЕсли;
+
+ Возврат ОбщегоНазначения.ЗначениеРеквизитаОбъекта(Сертификат, "Организация");
+
+КонецФункции
+
+Функция ЗначенияРеквизитовДляОпределенияДоступностиДействий(СсылкиНаДокументы, ПараметрыОпределения) Экспорт
+
+ ИменаРеквизитов = ИнтеграцияЗЕРНОКлиентСервер.ИменаРеквизитовОпределенияДоступностиДействий();
+ Реквизиты = Новый Массив;
+ Для Каждого КлючИЗначение Из ИменаРеквизитов Цикл
+ Реквизиты.Добавить(КлючИЗначение.Ключ);
+ КонецЦикла;
+
+ Возврат ОбщегоНазначения.ЗначенияРеквизитовОбъектов(СсылкиНаДокументы, Реквизиты);
+
+КонецФункции
+
#Область РаботаСАдресами
Функция ИдентификаторыАдресаПоДаннымJSON(ДанныеАдресаJSON) Экспорт
diff --git a/src/CommonModules/ИнтеграцияЗЕРНОКлиент/Ext/Module.bsl b/src/CommonModules/ИнтеграцияЗЕРНОКлиент/Ext/Module.bsl
index 1a479212e..248ad7159 100644
--- a/src/CommonModules/ИнтеграцияЗЕРНОКлиент/Ext/Module.bsl
+++ b/src/CommonModules/ИнтеграцияЗЕРНОКлиент/Ext/Module.bsl
@@ -248,12 +248,11 @@
ИменаКолонокДальнейшиеДействия.Добавить("ДальнейшееДействие3");
КонецЕсли;
- ИменаРеквизитов = Новый Структура();
- ИменаРеквизитов.Вставить("Организация");
- ИменаРеквизитов.Вставить("Подразделение");
+ ПараметрыОпределенияДоступности = ОбменДаннымиИСКлиентСервер.ПараметрыОпределенияДоступностиДействий();
+ ПараметрыОпределенияДоступности.Подсистема = ИнтеграцияЗЕРНОКлиентСервер.ИмяПодсистемы();
ОбменДаннымиИСКлиент.ОпределитьДоступностьДействий(
- Контекст, ИменаКолонокДальнейшиеДействия, ИменаРеквизитов);
+ Контекст, ИменаКолонокДальнейшиеДействия, ПараметрыОпределенияДоступности);
ОбменДаннымиИСКлиент.ПодготовитьСообщенияКПередаче(Контекст);
diff --git a/src/CommonModules/ИнтеграцияЗЕРНОКлиентСервер/Ext/Module.bsl b/src/CommonModules/ИнтеграцияЗЕРНОКлиентСервер/Ext/Module.bsl
index 593f949d1..361b7b2d7 100644
--- a/src/CommonModules/ИнтеграцияЗЕРНОКлиентСервер/Ext/Module.bsl
+++ b/src/CommonModules/ИнтеграцияЗЕРНОКлиентСервер/Ext/Module.bsl
@@ -739,6 +739,22 @@
#КонецОбласти
+// Возвращает структуру с именами реквизитов, используемых для определения доступности действий.
+//
+// Возвращаемое значение:
+// Структура:
+// * Организация - Строка, Неопределено - имя реквизита организации
+// * Подразделение - Строка, Неопределено - имя реквизита подразделения
+Функция ИменаРеквизитовОпределенияДоступностиДействий() Экспорт
+
+ ИменаРеквизитов = Новый Структура();
+ ИменаРеквизитов.Вставить("Организация", Неопределено);
+ ИменаРеквизитов.Вставить("Подразделение", Неопределено);
+
+ Возврат ИменаРеквизитов;
+
+КонецФункции
+
Функция СтруктураИнтервала(НачалоПериода, КонецПериода = Неопределено) Экспорт
Интервал = Новый Структура;
diff --git a/src/CommonModules/ИнтеграцияЗЕРНОСлужебныйКлиент/Ext/Module.bsl b/src/CommonModules/ИнтеграцияЗЕРНОСлужебныйКлиент/Ext/Module.bsl
index fa22f3df4..7027ab7a8 100644
--- a/src/CommonModules/ИнтеграцияЗЕРНОСлужебныйКлиент/Ext/Module.bsl
+++ b/src/CommonModules/ИнтеграцияЗЕРНОСлужебныйКлиент/Ext/Module.bsl
@@ -537,7 +537,7 @@
Если Не ЗначениеЗаполнено(Сообщение.Организация) Тогда
Если ОрганизацияСертификата = Неопределено Тогда
- ОрганизацияСертификата = ИнтеграцияИСВызовСервера.ЗначениеРеквизитаОбъекта(Результат.ВыбранныйСертификат.Ссылка, "Организация");
+ ОрганизацияСертификата = ИнтеграцияЗЕРНОВызовСервера.ОрганизацияСертификата(Результат.ВыбранныйСертификат.Ссылка);
КонецЕсли;
Сообщение.Организация = ОрганизацияСертификата;
КонецЕсли;
diff --git a/src/CommonModules/ИнтеграцияИСВызовСервера/Ext/Module.bsl b/src/CommonModules/ИнтеграцияИСВызовСервера/Ext/Module.bsl
index ce8f1a447..5e7e4d10d 100644
--- a/src/CommonModules/ИнтеграцияИСВызовСервера/Ext/Module.bsl
+++ b/src/CommonModules/ИнтеграцияИСВызовСервера/Ext/Module.bsl
@@ -118,11 +118,6 @@
#КонецОбласти
-// см. ОбщегоНазначения.ЗначениеРеквизитаОбъекта
-Функция ЗначениеРеквизитаОбъекта(Ссылка, ИмяРеквизита, ВыбратьРазрешенные = Ложь, КодЯзыка = Неопределено) Экспорт
- Возврат ОбщегоНазначения.ЗначениеРеквизитаОбъекта(Ссылка, ИмяРеквизита, ВыбратьРазрешенные, КодЯзыка);
-КонецФункции
-
#Область ЧастичноеВыбытие
// Данные представления настройки номенклатуры. Формирует гиперссылку для отображения в карточке номенклатуры.
diff --git a/src/CommonModules/ИнтеграцияИСМП/Ext/Module.bsl b/src/CommonModules/ИнтеграцияИСМП/Ext/Module.bsl
index e87682492..11915648e 100644
--- a/src/CommonModules/ИнтеграцияИСМП/Ext/Module.bsl
+++ b/src/CommonModules/ИнтеграцияИСМП/Ext/Module.bsl
@@ -2806,7 +2806,8 @@
| И Проблемы.ЕстьПроблема",
"НастройкаНоменклатурыПоТНВЭДиОКПД2");
- // Настройте удаление кодов маркировки с истекшим сроком использования
+ // Настройте удаление кодов маркировки с истекшим сроком использования
+
ТекстыЗапроса.Добавить(
"ВЫБРАТЬ
| 1 КАК УдалениеНеиспользованныхКодовМаркировкиИСМП
diff --git a/src/CommonModules/ИнтеграцияИСМПВЕТИС/Ext/Module.bsl b/src/CommonModules/ИнтеграцияИСМПВЕТИС/Ext/Module.bsl
index a37e1e77c..d75ee9c42 100644
--- a/src/CommonModules/ИнтеграцияИСМПВЕТИС/Ext/Module.bsl
+++ b/src/CommonModules/ИнтеграцияИСМПВЕТИС/Ext/Module.bsl
@@ -636,7 +636,7 @@
// Параметры:
// Запрос - Запрос - запрос обработчика заполнения маркируемой продукции документов ИСМП.
// - Строка - текст части запроса заполнения специфики маркируемой продукции.
-// ЕстьКолонкаВСДСтрокой - Булево - Признак наличия колонки строкового представления индентификатора ВСД.
+// ЕстьКолонкаВСДСтрокой - Булево - Признак наличия колонки строкового представления идентификатора ВСД.
Процедура ДоработатьЗапросЗаполненияМаркируемойПродукцииДокументаМаркировка(Запрос, ЕстьКолонкаВСДСтрокой = Ложь) Экспорт
СтандартнаяОбработка = Истина;
diff --git a/src/CommonModules/ИнтеграцияИСМПВызовСервера/Ext/Module.bsl b/src/CommonModules/ИнтеграцияИСМПВызовСервера/Ext/Module.bsl
index 8c66a0596..f2aa946d8 100644
--- a/src/CommonModules/ИнтеграцияИСМПВызовСервера/Ext/Module.bsl
+++ b/src/CommonModules/ИнтеграцияИСМПВызовСервера/Ext/Module.bsl
@@ -30,6 +30,7 @@
ВозвращаемоеЗначение.Вставить("ДлительнаяОперация", Неопределено);
ВозвращаемоеЗначение.Вставить("Ожидать", Неопределено);
ВозвращаемоеЗначение.Вставить("АдресВоВременномХранилище", Неопределено);
+ ВозвращаемоеЗначение.Вставить("МОДКПроверкеРегистрации", Неопределено);
ПараметрыВыполнения = ДлительныеОперации.ПараметрыВыполненияВФоне(УникальныйИдентификатор);
ПараметрыВыполнения.НаименованиеФоновогоЗадания = НСтр("ru = 'Загрузка входящих документов из ИС МП'");
diff --git a/src/CommonModules/ИнтеграцияИСМПКлиент/Ext/Module.bsl b/src/CommonModules/ИнтеграцияИСМПКлиент/Ext/Module.bsl
index dc439bce5..5ce7ece27 100644
--- a/src/CommonModules/ИнтеграцияИСМПКлиент/Ext/Module.bsl
+++ b/src/CommonModules/ИнтеграцияИСМПКлиент/Ext/Module.bsl
@@ -675,7 +675,8 @@
Процедура ВопросПроверитьОбъектУчетаГИСМТЗавершение(Ответ, ДополнительныеПараметры) Экспорт
Если Ответ <> "Проверить" Тогда
- Если ДополнительныеПараметры.ОповещениеПриОтказе <> Неопределено Тогда
+ Если ДополнительныеПараметры.Свойство("ОповещениеПриОтказе")
+ И ДополнительныеПараметры.ОповещениеПриОтказе <> Неопределено Тогда
ВыполнитьОбработкуОповещения(ДополнительныеПараметры.ОповещениеПриОтказе, Ответ);
КонецЕсли;
Возврат;
@@ -985,4 +986,67 @@
КонецПроцедуры
+// Параметры открытия формы регистрации места осуществления деятельности в ГИС МТ.
+//
+// Возвращаемое значение:
+// Структура - Параметры открытия формы места осуществления деятельности в ГИС МТ:
+// * НезависимаяРегистрацияМОД - Булево - Регистрация МОД инициирована из внешних объектов.
+// * МножественнаяРегистрацияМОД - Булево - Регистрация МОД инициирована из внешних объектов.
+// * СписокМОДКРегистрации - Неопределено, Структура - см. ИнтеграцияИСМПКлиент.ПараметрыРегистрацииМОДГИСМТ.
+Функция ПараметрыОткрытияФормыРегистрацииМОДГИСМТ() Экспорт
+
+ ПараметрыОткрытия = Новый Структура;
+
+ ПараметрыОткрытия.Вставить("НезависимаяРегистрацияМОД", Ложь);
+ ПараметрыОткрытия.Вставить("МножественнаяРегистрацияМОД", Ложь);
+ ПараметрыОткрытия.Вставить("СписокМОДКРегистрации", Неопределено);
+
+ Возврат ПараметрыОткрытия;
+
+КонецФункции
+
+// Параметры регистрации места осуществления деятельности в ГИС МТ.
+//
+// Возвращаемое значение:
+// Структура - Параметры регистрации места осуществления деятельности в ГИС МТ:
+// * Организация - ОпределяемыйТип.Организация, Неопределено - Организация.
+// * Подразделение - ОпределяемыйТип.ПроизводственныйОбъектИС, Неопределено - Подразделение.
+// * ДанныеАдреса - Строка - Данные адреса места осуществления деятельности.
+// * ДанныеАдресаСтрокой - Строка - Представление адреса.
+// * КПП - Строка - КПП.
+// * КодФИАС - Строка - Идентификатор адреса.
+// * ТоварныеГруппы - Массив из СправочникСсылка.ТоварныеГруппыГИСМТ - Товарные группы по которым будет зарегистрировано место осуществления деятельности.
+Функция ПараметрыРегистрацииМОДГИСМТ() Экспорт
+
+ ПараметрыОткрытия = Новый Структура;
+ ПараметрыОткрытия.Вставить("Организация", Неопределено);
+ ПараметрыОткрытия.Вставить("Подразделение", Неопределено);
+ ПараметрыОткрытия.Вставить("ДанныеАдреса", "");
+ ПараметрыОткрытия.Вставить("ДанныеАдресаСтрокой", "");
+ ПараметрыОткрытия.Вставить("КПП", "");
+ ПараметрыОткрытия.Вставить("КодФИАС", "");
+ ПараметрыОткрытия.Вставить("ТоварныеГруппы", Новый Массив());
+
+ Возврат ПараметрыОткрытия;
+
+КонецФункции
+
+// Открыть форму регистрации мест осуществления деятельности в ГИС МТ.
+//
+// Параметры:
+// ПараметрыОткрытия - см. ПараметрыОткрытияФормыУточненияУпаковокПоGTIN
+// ФормаВладелец - ФормаКлиентскогоПриложения - Владелец открываемой формы.
+// ОписаниеОповещения - ОписаниеОповещения, Неопределено - Описание оповещения о закрытии формы уточнения.
+Процедура ОткрытьФормуРегистрацииМестаОсуществленияДеятельностиГИСМТ(ПараметрыОткрытия, ФормаВладелец, ОписаниеОповещения = Неопределено) Экспорт
+
+ ПараметрыОткрытияФормыРегистрации = ПараметрыОткрытияФормыРегистрацииМОДГИСМТ();
+ ПараметрыОткрытияФормыРегистрации.СписокМОДКРегистрации = ПараметрыОткрытия;
+ ПараметрыОткрытияФормыРегистрации.НезависимаяРегистрацияМОД = Истина;
+
+ ОткрытьФорму("РегистрСведений.МестаОсуществленияДеятельностиИСМП.Форма.ФормаРегистрацииМОДВСервисе",
+ ПараметрыОткрытияФормыРегистрации, ФормаВладелец,,,,
+ ОписаниеОповещения, РежимОткрытияОкнаФормы.БлокироватьОкноВладельца);
+
+КонецПроцедуры
+
#КонецОбласти
\ No newline at end of file
diff --git a/src/CommonModules/ИнтеграцияИСМПКлиентСервер/Ext/Module.bsl b/src/CommonModules/ИнтеграцияИСМПКлиентСервер/Ext/Module.bsl
index 6f087ac16..7bc49003e 100644
--- a/src/CommonModules/ИнтеграцияИСМПКлиентСервер/Ext/Module.bsl
+++ b/src/CommonModules/ИнтеграцияИСМПКлиентСервер/Ext/Module.bsl
@@ -546,7 +546,7 @@
Возврат Результат;
-Конецфункции
+КонецФункции
// Возвращает список операций списаний кодов маркировки:
// сведения о разрешительной документации или отчет о перевзвешивании.
@@ -568,7 +568,7 @@
Возврат Результат;
-Конецфункции
+КонецФункции
#Область Сертификация
diff --git a/src/CommonModules/ИнтеграцияИСМПСлужебный/Ext/Module.bsl b/src/CommonModules/ИнтеграцияИСМПСлужебный/Ext/Module.bsl
index 5cd1b9c95..e0c6492d3 100644
--- a/src/CommonModules/ИнтеграцияИСМПСлужебный/Ext/Module.bsl
+++ b/src/CommonModules/ИнтеграцияИСМПСлужебный/Ext/Module.bsl
@@ -18,6 +18,7 @@
ВозвращаемоеЗначение.Вставить(
"ИзвлекатьДанныеЛогаЗапросов",
ОбщегоНазначенияИСВызовСервера.ЭтоФоновоеЗаданиеНаСервере());
+ ВозвращаемоеЗначение.Вставить("МОДКПроверкеРегистрации", Неопределено);
Организации = Новый Массив;
Если ТипЗнч(ПараметрыЗагрузки.Организация) = Тип("Массив") Тогда
@@ -1182,7 +1183,7 @@
НастройкиРазбораКодаМаркировки = Новый Структура;
НастройкиРазбораКодаМаркировки.Вставить("Кеш", РазборКодаМаркировкиИССлужебныйКлиентСервер.ИнициализироватьНастройкиИспользующиеРезультатыПредыдущихРазборов());
- НастройкиРазбораКодаМаркировки.Вставить("Общие", РазборКодаМаркировкиИССлужебный.НастройкиРазбораКодаМаркировки(, Ложь));
+ НастройкиРазбораКодаМаркировки.Вставить("Общие", РазборКодаМаркировкиИССлужебныйПовтИсп.НастройкиРазбораКодаМаркировки(, Ложь));
НастройкиРазбораКодаМаркировки.Вставить("Пользовательские", ПользовательскиеПараметрыРазбораКодаМаркировки);
АТКДляРасформирования = Новый Соответствие;
@@ -1377,7 +1378,7 @@
НастройкиРазбораКодаМаркировки = Новый Структура;
НастройкиРазбораКодаМаркировки.Вставить("Кеш", РазборКодаМаркировкиИССлужебныйКлиентСервер.ИнициализироватьНастройкиИспользующиеРезультатыПредыдущихРазборов());
- НастройкиРазбораКодаМаркировки.Вставить("Общие", РазборКодаМаркировкиИССлужебный.НастройкиРазбораКодаМаркировки(, Ложь));
+ НастройкиРазбораКодаМаркировки.Вставить("Общие", РазборКодаМаркировкиИССлужебныйПовтИсп.НастройкиРазбораКодаМаркировки(, Ложь));
НастройкиРазбораКодаМаркировки.Вставить("Пользовательские", ПользовательскиеПараметрыРазбораКодаМаркировки);
Настройки.Вставить("НастройкиРазбораКодаМаркировки", НастройкиРазбораКодаМаркировки);
@@ -8000,10 +8001,10 @@
ОбработкаДокументаОбъемноСортовогоУчета(ДокументОбъект, ДанныеШтрихкодов);
Иначе
- РезультатЗапросаВложенныхШтриходов = Неопределено;
- ДополнитьТабличныеЧастиПоДаннымИСМП(ДокументОбъект, ДанныеШтрихкодов, РезультатЗапросаВложенныхШтриходов);
+ РезультатЗапросаВложенныхШтрихкодов = Неопределено;
+ ДополнитьТабличныеЧастиПоДаннымИСМП(ДокументОбъект, ДанныеШтрихкодов, РезультатЗапросаВложенныхШтрихкодов);
- Если РезультатЗапросаВложенныхШтриходов <> Неопределено Тогда
+ Если РезультатЗапросаВложенныхШтрихкодов <> Неопределено Тогда
СтрокаРезультата = ОбменДаннымиИСМП.СтруктураИзменения();
СтрокаРезультата.Операция = ЭлементОчереди.Операция;
@@ -8012,7 +8013,7 @@
СтрокаРезультата.Объект = Неопределено;
СтрокаРезультата.ДокументОснование = Неопределено;
- СтрокаРезультата.ТекстОшибки = РезультатЗапросаВложенныхШтриходов.ТекстОшибки;
+ СтрокаРезультата.ТекстОшибки = РезультатЗапросаВложенныхШтрихкодов.ТекстОшибки;
СтрокаРезультата.ПодготовленоКПередаче = Ложь;
СтрокаРезультата.Передано = Ложь;
СтрокаРезультата.Принято = Истина;
@@ -10719,7 +10720,7 @@
НастройкиРазбораКодаМаркировки = Новый Структура;
НастройкиРазбораКодаМаркировки.Вставить("Кеш", РазборКодаМаркировкиИССлужебныйКлиентСервер.ИнициализироватьНастройкиИспользующиеРезультатыПредыдущихРазборов());
- НастройкиРазбораКодаМаркировки.Вставить("Общие", РазборКодаМаркировкиИССлужебный.НастройкиРазбораКодаМаркировки(, Ложь));
+ НастройкиРазбораКодаМаркировки.Вставить("Общие", РазборКодаМаркировкиИССлужебныйПовтИсп.НастройкиРазбораКодаМаркировки(, Ложь));
НастройкиРазбораКодаМаркировки.Вставить("Пользовательские", ПользовательскиеПараметрыРазбораКодаМаркировки);
Настройки.Вставить("НастройкиРазбораКодаМаркировки", НастройкиРазбораКодаМаркировки);
@@ -12959,7 +12960,7 @@
ИначеЕсли Не ЗначениеЗаполнено(ДанныеРазбора.Детализация.ШаблонРазбораКодаМаркировки) Тогда
ВызватьИсключение СтрШаблон(
НСтр("ru ='Не удалось определить шаблон кода маркировки: %1'"),
- КодМаркировки);
+ СтрЗаменить(КодМаркировки, Символ(29), ""));
КонецЕсли;
Если Не ЗначениеЗаполнено(ДанныеРазбора.ВидУпаковки) Тогда
@@ -16156,4 +16157,130 @@
КонецПроцедуры
+// Проверяет, зарегистрировано ли место осуществления деятельности организации в ГИС МТ для указанной товарной группы.
+//
+// Параметры:
+// Организация - ЛюбаяСсылка - организация
+// ИНН - Строка - ИНН организации
+// КПП - Строка - КПП организации
+// КодФИАС - Строка - код ФИАС места осуществления деятельности
+// ТоварнаяГруппа - ЛюбаяСсылка - товарная группа
+//
+// Возвращаемое значение:
+// Структура:
+// * ТребуетсяОбновлениеКлючаСессии - Булево - признак необходимости обновления ключа сессии
+// * ТекстОшибки - Строка - описание ошибки
+// * МОДЗарегистрирован - Булево - признак регистрации места осуществления деятельности в ГИС МТ
+Функция МестоОсуществленияДеятельностиЗарегистрированоВГИСМТ(Организация, ИНН, КПП, КодФИАС, ТоварнаяГруппа) Экспорт
+
+ ПараметрыОтбора = Новый Структура;
+ ПараметрыОтбора.Вставить("ИННУчастника", ИНН);
+ ПараметрыОтбора.Вставить("КППУчастника", КПП);
+ ПараметрыОтбора.Вставить("КодФИАС", КодФИАС);
+
+ РезультатПроверкиМОД = ИнтерфейсИСМПОбщегоНазначения.СписокМестОсуществленияДеятельности(Организация, ПараметрыОтбора);
+
+ Результат = Новый Структура;
+ Результат.Вставить("ТребуетсяОбновлениеКлючаСессии", РезультатПроверкиМОД.ТребуетсяОбновлениеКлючаСессии);
+ Результат.Вставить("ТекстОшибки", РезультатПроверкиМОД.ТекстОшибки);
+ Результат.Вставить("МОДЗарегистрирован", Ложь);
+
+ Если Не Результат.ТребуетсяОбновлениеКлючаСессии Тогда
+ МОДЗарегистрированВГИСМТ = Ложь;
+ ИмяТоварнойГруппы = ИнтерфейсИСМПОбщегоНазначенияКлиентСервер.ТоварнаяГруппа(ТоварнаяГруппа);
+
+ Если РезультатПроверкиМОД.МестаОсуществленияДеятельности.Количество() > 0 Тогда
+ ТоварныеГруппыМОД = РезультатПроверкиМОД.МестаОсуществленияДеятельности[0].ТоварныеГруппы;
+
+ Если ТоварныеГруппыМОД <> Неопределено И ТоварныеГруппыМОД.Найти(ИмяТоварнойГруппы) <> Неопределено Тогда
+ МОДЗарегистрированВГИСМТ = Истина;
+ КонецЕсли;
+
+ КонецЕсли;
+
+ Результат.МОДЗарегистрирован = МОДЗарегистрированВГИСМТ;
+
+ КонецЕсли;
+
+ Возврат Результат;
+
+КонецФункции
+
+Функция МОДКРегистрацииВГИСМТПоСпискуДокументов(СписокДокументов) Экспорт
+
+ Результат = Новый Структура;
+ Результат.Вставить("ТребуетсяОбновлениеКлючаСессии", Ложь);
+ Результат.Вставить("ТекстОшибки", "");
+ Результат.Вставить("МОДКРегистрации", Новый Массив);
+
+ ТребуетсяРегистрация = Новый Массив;
+ РезультатыПроверки = Новый Соответствие;
+ МОДыВСервисеГИСМТ = Новый Соответствие;
+
+ Для Каждого ДокументПроверки Из СписокДокументов Цикл
+ ТоварнаяГруппа = ДокументПроверки.ТоварныеГруппы[0];
+ ИмяТоварнойГруппы = ИнтерфейсИСМПОбщегоНазначенияКлиентСервер.ТоварнаяГруппа(ТоварнаяГруппа);
+
+ МассивКлючейПроверки = Новый Массив;
+ МассивКлючейПроверки.Добавить(ДокументПроверки.ИНН);
+ МассивКлючейПроверки.Добавить(ДокументПроверки.КПП);
+ МассивКлючейПроверки.Добавить(ДокументПроверки.КодФИАС);
+ МассивКлючейПроверки.Добавить(ИмяТоварнойГруппы);
+
+ КлючПроверки = СтрСоединить(МассивКлючейПроверки, ",");
+ РезультатыПроверкиПоКлючу = РезультатыПроверки.Получить(КлючПроверки);
+
+ Если РезультатыПроверкиПоКлючу <> Неопределено Тогда
+ СписокМОДПоПараметрам = РезультатыПроверкиПоКлючу;
+ Иначе
+ ПараметрыОтбора = Новый Структура;
+ ПараметрыОтбора.Вставить("ИННУчастника", ДокументПроверки.ИНН);
+ ПараметрыОтбора.Вставить("КППУчастника", ДокументПроверки.КПП);
+ ПараметрыОтбора.Вставить("КодФИАС", ДокументПроверки.КодФИАС);
+ ПараметрыОтбора.Вставить("ТоварнаяГруппа", ТоварнаяГруппа);
+
+ РезультатПроверкиМОД = ИнтерфейсИСМПОбщегоНазначения.СписокМестОсуществленияДеятельности(
+ ДокументПроверки.Организация, ПараметрыОтбора);
+
+ Если РезультатПроверкиМОД.ТребуетсяОбновлениеКлючаСессии Тогда
+ Результат.ТребуетсяОбновлениеКлючаСессии = Истина;
+ КонецЕсли;
+
+ Если РезультатПроверкиМОД.ТребуетсяОбновлениеКлючаСессии
+ Или ЗначениеЗаполнено(РезультатПроверкиМОД.ТекстОшибки) Тогда
+ Прервать;
+ КонецЕсли;
+
+ СписокМОДПоПараметрам = РезультатПроверкиМОД.МестаОсуществленияДеятельности;
+
+ РезультатыПроверки.Вставить(КлючПроверки, СписокМОДПоПараметрам);
+
+ Если СписокМОДПоПараметрам.Количество() Тогда
+ МОДыВСервисеГИСМТ.Вставить(ДокументПроверки.Организация, СписокМОДПоПараметрам[0]);
+ КонецЕсли;
+
+ КонецЕсли;
+
+ Если Не СписокМОДПоПараметрам.Количество() Тогда
+ ТребуетсяРегистрация.Добавить(ДокументПроверки);
+ КонецЕсли;
+
+ КонецЦикла;
+
+ Если МОДыВСервисеГИСМТ.Количество() Тогда
+ Отказ = Не РегистрыСведений.МестаОсуществленияДеятельностиИСМП.ОбновитьСписокМОДПриПроверкеДокументов(МОДыВСервисеГИСМТ);
+
+ Если Отказ Тогда
+ ВызватьИсключение НСтр("ru = 'Не удалось записать места осуществления деятельности.
+ |Подробности см. в журнале регистрации.'");
+ КонецЕсли;
+
+ КонецЕсли;
+
+ Результат.МОДКРегистрации = ТребуетсяРегистрация;
+
+ Возврат Результат;
+
+КонецФункции
+
#КонецОбласти
diff --git a/src/CommonModules/ИнтеграцияИСМПСлужебныйКлиент/Ext/Module.bsl b/src/CommonModules/ИнтеграцияИСМПСлужебныйКлиент/Ext/Module.bsl
index bf32a7de9..1f24befcd 100644
--- a/src/CommonModules/ИнтеграцияИСМПСлужебныйКлиент/Ext/Module.bsl
+++ b/src/CommonModules/ИнтеграцияИСМПСлужебныйКлиент/Ext/Module.bsl
@@ -46,4 +46,26 @@
#КонецОбласти
+// Обработчик завершения регистрации МОД в ГИС МТ
+//
+// Параметры:
+// Результат - Структура - содержит результаты регистрации МОД.
+// Контекст - Структура - содержит дополнительные параметры обработчика.
+//
+Процедура ПродолжитьВыполнениеОбменаПослеУточненияПараметровРегистрацииМОД(Результат, Контекст) Экспорт
+
+ Если Результат = Неопределено Или Не Результат.МОДЗарегистрирован Тогда
+ Возврат;
+ КонецЕсли;
+
+ РезультатОбмена = ОбменДаннымиИСМПВызовСервера.ПродолжитьВыполнениеОбмена(
+ Контекст.ПодписанныеСообщенияПоОрганизациям,
+ Контекст.АдресРезультатаОбменаВоВременномХранилище);
+
+ ОбменДаннымиИСМПКлиент.ОбработатьРезультатОбмена(
+ РезультатОбмена,
+ Контекст.Форма, Контекст, Контекст.ОповещениеПриЗавершении, Истина);
+
+КонецПроцедуры
+
#КонецОбласти
\ No newline at end of file
diff --git a/src/CommonModules/ИнтеграцияИСМПУТ/Ext/Module.bsl b/src/CommonModules/ИнтеграцияИСМПУТ/Ext/Module.bsl
index 078730f79..5f7490810 100644
--- a/src/CommonModules/ИнтеграцияИСМПУТ/Ext/Module.bsl
+++ b/src/CommonModules/ИнтеграцияИСМПУТ/Ext/Module.bsl
@@ -4469,7 +4469,7 @@
| Товары.Номенклатура,
| Товары.Характеристика,
| Товары.Серия,
- | Товары.РазрешенОборотНемаркируемыхОстатков,
+ | Товары.УменьшатьКоличествоТовараПоКоличествуПодобранныхМарок,
| -Товары.Количество
|ИЗ
| Подобрано КАК Товары
@@ -4496,7 +4496,7 @@
| Товары.Номенклатура,
| Товары.Характеристика,
| Товары.Серия,
- | Товары.РазрешенОборотНемаркируемыхОстатков,
+ | Товары.УменьшатьКоличествоТовараПоКоличествуПодобранныхМарок,
| СУММА(Товары.Количество) КАК Недостача
|ПОМЕСТИТЬ Итог
|ИЗ
@@ -4505,7 +4505,7 @@
| Товары.Номенклатура,
| Товары.Характеристика,
| Товары.Серия,
- | Товары.РазрешенОборотНемаркируемыхОстатков
+ | Товары.УменьшатьКоличествоТовараПоКоличествуПодобранныхМарок
|ИМЕЮЩИЕ
| СУММА(Товары.Количество) <> 0
|;
@@ -4517,7 +4517,7 @@
| Итог.Недостача
|ИЗ
| Итог КАК Итог
- |ГДЕ Итог.РазрешенОборотНемаркируемыхОстатков
+ |ГДЕ Итог.УменьшатьКоличествоТовараПоКоличествуПодобранныхМарок
| ИЛИ Итог.Недостача < 0
|УПОРЯДОЧИТЬ ПО
| Недостача Убыв";
@@ -5502,7 +5502,7 @@
| Товары.Номенклатура,
| Товары.Характеристика,
| Товары.Серия,
- | Товары.РазрешенОборотНемаркируемыхОстатков,
+ | Товары.УменьшатьКоличествоТовараПоКоличествуПодобранныхМарок,
| -Товары.Количество
|ИЗ
| Подобрано КАК Товары
diff --git a/src/CommonModules/ИнтеграцияСАТУРНВызовСервера/Ext/Module.bsl b/src/CommonModules/ИнтеграцияСАТУРНВызовСервера/Ext/Module.bsl
index 1d70f8388..2cf899699 100644
--- a/src/CommonModules/ИнтеграцияСАТУРНВызовСервера/Ext/Module.bsl
+++ b/src/CommonModules/ИнтеграцияСАТУРНВызовСервера/Ext/Module.bsl
@@ -699,4 +699,12 @@
КонецФункции
+Функция ЗначенияРеквизитовДляОпределенияДоступностиДействий(СсылкиНаДокументы, ПараметрыОпределения) Экспорт
+
+ ИменаРеквизитов = ИнтеграцияСАТУРНСлужебныйКлиентСервер.ИменаРеквизитовОпределенияДоступностиДействий(ПараметрыОпределения.Префикс);
+
+ Возврат ОбщегоНазначения.ЗначенияРеквизитовОбъектов(СсылкиНаДокументы, ИменаРеквизитов);
+
+КонецФункции
+
#КонецОбласти
\ No newline at end of file
diff --git a/src/CommonModules/ИнтеграцияСАТУРНКлиент/Ext/Module.bsl b/src/CommonModules/ИнтеграцияСАТУРНКлиент/Ext/Module.bsl
index 9b7097771..362b4dc4f 100644
--- a/src/CommonModules/ИнтеграцияСАТУРНКлиент/Ext/Module.bsl
+++ b/src/CommonModules/ИнтеграцияСАТУРНКлиент/Ext/Module.bsl
@@ -167,8 +167,12 @@
ИменаКолонокДальнейшиеДействия.Добавить("ДальнейшееДействие3");
КонецЕсли;
+ ПараметрыОпределенияДоступности = ОбменДаннымиИСКлиентСервер.ПараметрыОпределенияДоступностиДействий();
+ ПараметрыОпределенияДоступности.Подсистема = ИнтеграцияСАТУРНКлиентСервер.ИмяПодсистемы();
+ ПараметрыОпределенияДоступности.Префикс = Префикс;
+
ОбменДаннымиИСКлиент.ОпределитьДоступностьДействий(
- Контекст, ИменаКолонокДальнейшиеДействия, Префикс + "ОрганизацияСАТУРН");
+ Контекст, ИменаКолонокДальнейшиеДействия, ПараметрыОпределенияДоступности);
ОбменДаннымиИСКлиент.ПодготовитьСообщенияКПередаче(Контекст);
diff --git a/src/CommonModules/ИнтеграцияСАТУРНСлужебныйКлиентСервер/Ext/Module.bsl b/src/CommonModules/ИнтеграцияСАТУРНСлужебныйКлиентСервер/Ext/Module.bsl
index 8bb3efac1..a5123daf6 100644
--- a/src/CommonModules/ИнтеграцияСАТУРНСлужебныйКлиентСервер/Ext/Module.bsl
+++ b/src/CommonModules/ИнтеграцияСАТУРНСлужебныйКлиентСервер/Ext/Module.bsl
@@ -95,6 +95,19 @@
КонецФункции
+// Возвращает структуру с именами реквизитов, используемых для определения доступности действий.
+//
+// Параметры:
+// Префикс - Строка - Префикс
+//
+// Возвращаемое значение:
+// - Строка - имя реквизита организации
+Функция ИменаРеквизитовОпределенияДоступностиДействий(Префикс = "") Экспорт
+
+ Возврат Префикс + "ОрганизацияСАТУРН";
+
+КонецФункции
+
#КонецОбласти
#Область СлужебныеПроцедурыИФункции
diff --git a/src/CommonModules/ИнтеграцияСЭлектроннымиТорговымиПлощадками/Ext/Module.bsl b/src/CommonModules/ИнтеграцияСЭлектроннымиТорговымиПлощадками/Ext/Module.bsl
index 3a5976442..51c9dc664 100644
--- a/src/CommonModules/ИнтеграцияСЭлектроннымиТорговымиПлощадками/Ext/Module.bsl
+++ b/src/CommonModules/ИнтеграцияСЭлектроннымиТорговымиПлощадками/Ext/Module.bsl
@@ -4177,7 +4177,7 @@
// Строка - версия API
//
Функция ВерсияAPIБидзаар()
- Возврат "5.3";
+ Возврат "5.4";
КонецФункции
#КонецОбласти
diff --git a/src/CommonModules/ИнтеграцияСЯндексМаркетСервер/Ext/Module.bsl b/src/CommonModules/ИнтеграцияСЯндексМаркетСервер/Ext/Module.bsl
index ac27a543d..0eb91ed90 100644
--- a/src/CommonModules/ИнтеграцияСЯндексМаркетСервер/Ext/Module.bsl
+++ b/src/CommonModules/ИнтеграцияСЯндексМаркетСервер/Ext/Module.bsl
@@ -591,6 +591,98 @@
КонецПроцедуры
+// Получает информацию о произвольном токене авторизации.
+//
+// Параметры:
+// КлючДоступа - Строка - токен авторизации.
+//
+// Возвращаемое значение:
+// Структура - данные о токене (см. описание метода https://api.partner.market.yandex.ru/v2/auth/token)
+//
+Функция ПолучитьДанныеКлючаДоступа(КлючДоступа) Экспорт
+
+ Попытка
+ ДанныеПриложения = ДанныеПриложения();
+ Сервер = СерверAPI();
+ АдресРесурса = "/v2/auth/token";
+
+ ИнтернетПрокси = Неопределено;
+ Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ПолучениеФайловИзИнтернета") Тогда
+ МодульПолучениеФайловИзИнтернета = ОбщегоНазначения.ОбщийМодуль("ПолучениеФайловИзИнтернета");
+ ИнтернетПрокси = МодульПолучениеФайловИзИнтернета.ПолучитьПрокси("https");
+ КонецЕсли;
+ СоединениеOpenSSL = ОбщегоНазначенияКлиентСервер.НовоеЗащищенноеСоединение();
+
+ HTTPСоединение = Новый HTTPСоединение(Сервер,,,, ИнтернетПрокси, 180, СоединениеOpenSSL);
+
+ Заголовки = Новый Соответствие;
+ Заголовки.Вставить("Content-Type", "application/json");
+ Заголовки.Вставить("Api-Key", КлючДоступа);
+ ДобавитьПодписьИнтеграцииВЗаголовки(Заголовки);
+
+ ДанныеЗапроса = Новый Структура;
+ ТелоЗапроса = ВJSON(ДанныеЗапроса);
+
+ HTTPЗапрос = Новый HTTPЗапрос(АдресРесурса, Заголовки);
+ HTTPЗапрос.УстановитьТелоИзСтроки(ТелоЗапроса, "UTF-8");
+
+ HTTPОтвет = HTTPСоединение.ОтправитьДляОбработки(HTTPЗапрос);
+ КодСостояния = HTTPОтвет.КодСостояния;
+ СтрокаОтвета = HTTPОтвет.ПолучитьТелоКакСтроку();
+ Результат = ИзJSON(СтрокаОтвета);
+
+ РезультатЗапроса = Новый Структура;
+
+ РезультатЗапроса.Вставить("Результат", Новый Структура);
+ РезультатЗапроса.Вставить("Ошибка", Неопределено);
+ РезультатЗапроса.Вставить("Описание","");
+ Ошибка = ИнтеграцияСМаркетплейсамиСервер.НоваяОшибка();
+ Ошибка.КодОшибки = ИнтеграцияСМаркетплейсамиСервер.КодыОшибок().ОшибкаПрочие;
+
+ Если КодСостояния = 200 И Результат.status = "OK" Тогда
+ РезультатЗапроса.Результат = Результат["result"];
+ РезультатЗапроса.Описание = ПолучитьОписаниеПравДоступаКлюча(РезультатЗапроса.Результат);
+ Иначе
+ Если Результат.Свойство("status") И Результат.status = "ERROR" Тогда
+ ОписаниеОшибок = ТекстОшибки(Результат.errors);
+ Иначе
+ ОписаниеОшибок = "";
+ КонецЕсли;
+
+ Отказ = Истина;
+ ТекстОшибки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
+ НСтр("ru = 'Ошибка выполнения запроса %1: %2%3'",
+ ОбщегоНазначения.КодОсновногоЯзыка()),
+ Сервер + АдресРесурса,
+ ОписаниеОшибок,
+ СтрокаОтвета);
+ Ошибка.ОписаниеОшибки = ТекстОшибки;
+ РезультатЗапроса.Ошибка = Ошибка;
+
+ ЗаписьЖурналаРегистрации(СобытиеЖурналаРегистрации(),
+ УровеньЖурналаРегистрации.Ошибка,,,
+ ТекстОшибки);
+ КонецЕсли;
+
+ Исключение
+ Отказ = Истина;
+ ТекстОшибки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
+ НСтр("ru = 'Отсутствует соединение с сервером %1 по причине: %2'",
+ ОбщегоНазначения.КодОсновногоЯзыка()),
+ Сервер,
+ ОбработкаОшибок.ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()));
+ Ошибка.ОписаниеОшибки = ТекстОшибки;
+ РезультатЗапроса.Ошибка = Ошибка;
+
+ ЗаписьЖурналаРегистрации(СобытиеЖурналаРегистрации(),
+ УровеньЖурналаРегистрации.Ошибка,,,
+ ТекстОшибки);
+ КонецПопытки;
+
+ Возврат РезультатЗапроса;
+
+КонецФункции
+
#КонецОбласти
#Область УчетныеЗаписи
@@ -2959,18 +3051,21 @@
#Область УправлениеМагазинами
-// Возвращает список магазинов, к которым имеет доступ пользователь - владелец авторизационного токена.
+// Определяет список магазинов из сервиса, к которым имеет доступ пользователь - владелец авторизационного токена, использованного в запросе.
+// Для агентских пользователей список состоит из подчиненных магазинов.
+// Описание метода см. https://yandex.ru/dev/market/partner-api/doc/ru/reference/campaigns/getCampaigns.
//
// Параметры:
-// ИдентификаторКабинета - Строка - идентификатор бизнес-кабинета для подключения к сервису.
+// ИдентификаторКабинета - Строка - идентификатор бизнес-кабинета в Яндекс Маркет;
+// Отказ - Булево - выходной параметр, определяет наличие ошибки при выполнении запросов к сервису.
//
// Возвращаемое значение:
-// См. ИнтеграцияСМаркетплейсамиСервер.НоваяОшибка.
+// - ТаблицаЗначений - таблица для хранения свойств магазинов, см. НоваяТаблицаМагазинов().
//
-Функция ПолучитьМагазиныЯндексМаркет(ИдентификаторКабинета) Экспорт
+Функция ПолучитьМагазиныПользователя(ИдентификаторКабинета, Отказ = Ложь)
- Ошибка = ИнтеграцияСМаркетплейсамиСервер.НоваяОшибка();
- Отказ = Ложь;
+ ТаблицаМагазинов = НоваяТаблицаМагазинов();
+ Ошибка = ИнтеграцияСМаркетплейсамиСервер.НоваяОшибка();
ИдентификаторАккаунта = "";
ДанныеАвторизации = ДанныеАвторизацииПоИдентификаторуКабинета(ИдентификаторКабинета);
@@ -2994,12 +3089,83 @@
Пока Результат.Следующий() Цикл
ИдентификаторАккаунта = Результат.ИдентификаторАккаунта;
КонецЦикла;
- ДанныеАвторизации = ДанныеАвторизацииПоИдентификаторуАккаунта(ИдентификаторАккаунта);
- КонецЕсли;
-
- Если ДанныеАвторизации <> Неопределено Тогда
- Магазины = ПолучитьМагазиныПользователяИзСервиса(ДанныеАвторизации, Отказ);
+ ДанныеАвторизации = ДанныеАвторизацииПоИдентификаторуАккаунта(ИдентификаторАккаунта);
+ Если ДанныеАвторизации<>Неопределено И ДанныеАвторизации.Свойство("apikey_token") Тогда
+ ДанныеАвторизации.Вставить("ИдентификаторАккаунта", ИдентификаторАккаунта);
+ ДанныеАвторизации.Вставить("ИдентификаторКабинета", ИдентификаторКабинета);
+ ДанныеАвторизации.Вставить("ИдентификаторМагазина","");
+ Иначе
+ ДанныеАвторизации = Новый Структура();
+ ДанныеАвторизации.Вставить("apikey_token","");
+ ДанныеАвторизации.Вставить("ИдентификаторАккаунта","");
+ ДанныеАвторизации.Вставить("ИдентификаторКабинета","");
+ ДанныеАвторизации.Вставить("ИдентификаторМагазина","");
+ КонецЕсли;
+ Иначе
+ ДанныеАвторизации.Вставить("ИдентификаторАккаунта", ИдентификаторАккаунта);
+ ДанныеАвторизации.Вставить("ИдентификаторКабинета", ИдентификаторКабинета);
+ ДанныеАвторизации.Вставить("ИдентификаторМагазина","");
КонецЕсли;
+
+ ЕстьСледующаяСтраница = Истина;
+ ИдентификаторСтраницы = "";
+ Параметры = Новый Структура;
+ Параметры.Вставить("ИдентификаторСтраницы",ИдентификаторСтраницы);
+
+ Пока ЕстьСледующаяСтраница Цикл
+ Параметры.ИдентификаторСтраницы = ИдентификаторСтраницы;
+ ОтветСервиса = ПолучитьМагазиныИзСервиса(ДанныеАвторизации, Параметры);
+
+ Если ОтветСервиса.Ошибка <> Неопределено Тогда
+ ЕстьСледующаяСтраница = Ложь;
+ Отказ = Истина;
+
+ ИначеЕсли ОтветСервиса.Результат.Количество() = 0 Тогда
+ ЕстьСледующаяСтраница = Ложь;
+
+ Иначе
+ Для Каждого Магазин Из ОтветСервиса.Результат Цикл
+
+ Если Магазин.Свойство("placementType") Тогда
+ СхемаРаботы = ОпределитьСхемуРаботы(Магазин.placementType);
+ Иначе
+ СхемаРаботы = Перечисления.СхемыРаботыТорговыхПлощадок.ПустаяСсылка();
+ КонецЕсли;
+
+ НоваяСтрока = ТаблицаМагазинов.Добавить();
+ НоваяСтрока.Наименование = Магазин.domain;
+ НоваяСтрока.ВидМаркетплейса = Перечисления.ВидыМаркетплейсов.МаркетплейсЯндексМаркет;
+ НоваяСтрока.ИдентификаторАккаунта = ИдентификаторАккаунта;
+ НоваяСтрока.ИдентификаторМагазина = Формат(Магазин.id, "ЧН=; ЧГ=0");
+ НоваяСтрока.ИдентификаторКабинета = Формат(Магазин.business.id, "ЧН=; ЧГ=0");
+ НоваяСтрока.СхемаРаботы = СхемаРаботы;
+ НоваяСтрока.ПометкаУдаления = Ложь;
+ НоваяСтрока.НеОбновлятьДанныеТорговойПлощадки = Истина;
+
+ КонецЦикла;
+
+ ЕстьСледующаяСтраница = ОтветСервиса.ЕстьСледующаяСтраница;
+ ИдентификаторСтраницы = ОтветСервиса.ИдентификаторСтраницы;
+ КонецЕсли;
+ КонецЦикла;
+
+ Возврат ТаблицаМагазинов;
+
+КонецФункции
+
+// Возвращает список магазинов, к которым имеет доступ пользователь - владелец авторизационного токена.
+//
+// Параметры:
+// ИдентификаторКабинета - Строка - идентификатор бизнес-кабинета для подключения к сервису.
+//
+// Возвращаемое значение:
+// См. ИнтеграцияСМаркетплейсамиСервер.НоваяОшибка.
+//
+Функция ПолучитьМагазиныЯндексМаркет(ИдентификаторКабинета) Экспорт
+
+ Ошибка = ИнтеграцияСМаркетплейсамиСервер.НоваяОшибка();
+ Отказ = Ложь;
+ ТаблицаМагазинов = ПолучитьМагазиныПользователя(ИдентификаторКабинета, Отказ);
Если Не Отказ Тогда
Запрос = Новый Запрос;
@@ -3027,15 +3193,10 @@
УчетныеЗаписи = РезультатЗапроса.Выгрузить();
- Для Каждого ЭлементКоллекции Из Магазины.campaigns Цикл
- Если ЭлементКоллекции.Свойство("placementType") Тогда
- СхемаРаботы = ОпределитьСхемуРаботы(ЭлементКоллекции.placementType);
- Иначе
- СхемаРаботы = Перечисления.СхемыРаботыТорговыхПлощадок.ПустаяСсылка();
- КонецЕсли;
+ Для Каждого СтрокаТаблицы Из ТаблицаМагазинов Цикл
- Если СокрЛП(Формат(ЭлементКоллекции.business.id, "ЧН=; ЧГ=0"))=СокрЛП(ИдентификаторКабинета) Тогда
- СтрокаТаблицыЗначений = УчетныеЗаписи.Найти(Формат(ЭлементКоллекции.id, "ЧН=; ЧГ=0"), "ИдентификаторМагазина");
+ Если СокрЛП(СтрокаТаблицы.ИдентификаторКабинета)=СокрЛП(ИдентификаторКабинета) Тогда
+ СтрокаТаблицыЗначений = УчетныеЗаписи.Найти(СтрокаТаблицы.ИдентификаторКабинета, "ИдентификаторМагазина");
Если СтрокаТаблицыЗначений = Неопределено Тогда
НачатьТранзакцию();
Попытка
@@ -3046,15 +3207,8 @@
ЭлементБлокировкиДанных.ИспользоватьИзИсточникаДанных("Ссылка", "Ссылка");
БлокировкаДанных.Заблокировать();
- НоваяУчетнаяЗапись = Справочники.УчетныеЗаписиМаркетплейсов.СоздатьЭлемент();
- НоваяУчетнаяЗапись.Наименование = ЭлементКоллекции.domain;
- НоваяУчетнаяЗапись.ВидМаркетплейса = Перечисления.ВидыМаркетплейсов.МаркетплейсЯндексМаркет;
- НоваяУчетнаяЗапись.ИдентификаторАккаунта = ИдентификаторАккаунта;
- НоваяУчетнаяЗапись.ИдентификаторМагазина = Формат(ЭлементКоллекции.id, "ЧН=; ЧГ=0");
- НоваяУчетнаяЗапись.ИдентификаторКабинета = Формат(ЭлементКоллекции.business.id, "ЧН=; ЧГ=0");
- НоваяУчетнаяЗапись.СхемаРаботы = СхемаРаботы;
- НоваяУчетнаяЗапись.ПометкаУдаления = Ложь;
- НоваяУчетнаяЗапись.НеОбновлятьДанныеТорговойПлощадки = Истина;
+ НоваяУчетнаяЗапись = Справочники.УчетныеЗаписиМаркетплейсов.СоздатьЭлемент();
+ ЗаполнитьЗначенияСвойств(НоваяУчетнаяЗапись, СтрокаТаблицы);
НоваяУчетнаяЗапись.Записать();
ЗафиксироватьТранзакцию();
Исключение
@@ -3067,14 +3221,14 @@
Иначе
СтрокаТаблицыЗначений.Активность = Истина;
- Если ЭлементКоллекции.Свойство("placementType") И ЭлементКоллекции.placementType = "FBS"
+ Если СтрокаТаблицы.СхемаРаботы = Перечисления.СхемыРаботыТорговыхПлощадок.FBS
И СтрокаТаблицыЗначений.СхемаРаботы = Перечисления.СхемыРаботыТорговыхПлощадок.Express Тогда
СхемаРаботы = Перечисления.СхемыРаботыТорговыхПлощадок.Express;
КонецЕсли;
- Если СтрокаТаблицыЗначений.Наименование <> ЭлементКоллекции.domain
- Или СтрокаТаблицыЗначений.ИдентификаторАккаунта <> ИдентификаторАккаунта
- Или СтрокаТаблицыЗначений.ИдентификаторКабинета <> Формат(ЭлементКоллекции.business.id, "ЧН=; ЧГ=0")
+ Если СтрокаТаблицыЗначений.Наименование <> СтрокаТаблицы.Наименование
+ Или СтрокаТаблицыЗначений.ИдентификаторАккаунта <> СтрокаТаблицы.ИдентификаторАккаунта
+ Или СтрокаТаблицыЗначений.ИдентификаторКабинета <> СтрокаТаблицы.ИдентификаторКабинета
Или СтрокаТаблицыЗначений.СхемаРаботы <> СхемаРаботы Тогда
НачатьТранзакцию();
Попытка
@@ -3086,9 +3240,9 @@
БлокировкаДанных.Заблокировать();
УчетнаяЗапись = СтрокаТаблицыЗначений.Ссылка.ПолучитьОбъект();
- УчетнаяЗапись.Наименование = ЭлементКоллекции.domain;
- УчетнаяЗапись.ИдентификаторАккаунта = ИдентификаторАккаунта;
- УчетнаяЗапись.ИдентификаторКабинета = Формат(ЭлементКоллекции.business.id, "ЧН=; ЧГ=0");
+ УчетнаяЗапись.Наименование = СтрокаТаблицы.Наименование;
+ УчетнаяЗапись.ИдентификаторАккаунта = СтрокаТаблицы.ИдентификаторАккаунта;
+ УчетнаяЗапись.ИдентификаторКабинета = СтрокаТаблицы.ИдентификаторКабинета;
УчетнаяЗапись.СхемаРаботы = СхемаРаботы;
УчетнаяЗапись.ПометкаУдаления = Ложь;
УчетнаяЗапись.Записать();
@@ -3132,7 +3286,7 @@
КонецЕсли;
КонецЦикла;
- Если Магазины.campaigns.Количество() = 0 Тогда
+ Если ТаблицаМагазинов.Количество() = 0 Тогда
Ошибка.КодОшибки = "ЯндексМаркет_ПолучитьМагазиныЯндексМаркет";
Ошибка.ОписаниеОшибки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
НСтр("ru = 'В личном кабинете торговой площадки для кабинета ""%1"" магазины не зарегистрированы.'"),
@@ -4533,6 +4687,105 @@
КонецФункции
+Функция ПолучитьОписаниеПравДоступаКлюча(Результат)
+
+ Описание = "";
+ Если Результат.Свойство("apiKey") И Результат.apiKey.Свойство("authScopes") Тогда
+ Если Результат.apiKey.authScopes.Количество()=1 Тогда
+
+ Описание = ОписаниеПрофиляДоступа(Результат.apiKey.authScopes[0], Истина);
+
+ ИначеЕсли Результат.apiKey.authScopes.Количество()>1 Тогда
+
+ Описание = НСтр("ru = 'Разрешения ключа доступа:'");
+ Для Каждого Доступ Из Результат.apiKey.authScopes Цикл
+ Описание = Описание + "
+ | " + ОписаниеПрофиляДоступа(Доступ, Ложь);
+
+ КонецЦикла;
+
+ КонецЕсли;
+ Иначе
+ Описание = НСтр("ru = 'Невозможно получить описание предоставляемых прав.'");
+ КонецЕсли;
+
+ Возврат Описание;
+
+КонецФункции
+
+Функция ОписаниеПрофиляДоступа(Доступ, ДляКлючаЗаданОдинПрофиль)
+
+ Описание = "";
+ Доступ = НРег(Доступ);
+
+ Если Доступ = "all_methods" Тогда
+ Описание = НСтр("ru = '- полное управление кабинетом'");
+ ЕдиничноеОписание = НСтр("ru = 'Текущий ключ предоставляет права на полное управление кабинетом.'");
+
+ ИначеЕсли Доступ = "all_methods_read_only" Тогда
+ Описание = НСтр("ru = '- просмотр всех данных'");
+ ЕдиничноеОписание = НСтр("ru = 'Текущий ключ предоставляет права на просмотр всех данных.'");
+
+ ИначеЕсли Доступ = "inventory_and_order_processing" Тогда
+ Описание = НСтр("ru = '- обработка заказов и учёт товаров'");
+ ЕдиничноеОписание = НСтр("ru = 'Текущий ключ предоставляет права на обработку заказов и учёт товаров.'");
+
+ ИначеЕсли Доступ = "inventory_and_order_processing_read_only" Тогда
+ Описание = НСтр("ru = '- просмотр информации о заказах'");
+ ЕдиничноеОписание = НСтр("ru = 'Текущий ключ предоставляет права на обработку заказов и учёт товаров.'");
+
+ ИначеЕсли Доступ = "pricing" Тогда
+ Описание = НСтр("ru = '- управление ценами'");
+ ЕдиничноеОписание = НСтр("ru = 'Текущий ключ предоставляет права на управление ценами.'");
+
+ ИначеЕсли Доступ = "pricing_read_only" Тогда
+ Описание = НСтр("ru = '- просмотр цен'");
+ ЕдиничноеОписание = НСтр("ru = 'Текущий ключ предоставляет права на просмотр цен.'");
+
+ ИначеЕсли Доступ = "offers_and_cards_management" Тогда
+ Описание = НСтр("ru = '- управление товарами и карточками'");
+ ЕдиничноеОписание = НСтр("ru = 'Текущий ключ предоставляет права на управление товарами и карточками.'");
+
+ ИначеЕсли Доступ = "offers_and_cards_management_read_only" Тогда
+ Описание = НСтр("ru = '- просмотр товаров и карточек'");
+ ЕдиничноеОписание = НСтр("ru = 'Текущий ключ предоставляет права на просмотр товаров и карточек.'");
+
+ ИначеЕсли Доступ = "promotion" Тогда
+ Описание = НСтр("ru = '- продвижение товаров'");
+ ЕдиничноеОписание = НСтр("ru = 'Текущий ключ предоставляет права на продвижение товаров.'");
+
+ ИначеЕсли Доступ = "promotion_read_only" Тогда
+ Описание = НСтр("ru = '- просмотр информации о продвижении товаров'");
+ ЕдиничноеОписание = НСтр("ru = 'Текущий ключ предоставляет права на просмотр информации о продвижении товаров.'");
+
+ ИначеЕсли Доступ = "finance_and_accounting" Тогда
+ Описание = НСтр("ru = '- просмотр финансовой информации и отчётности'");
+ ЕдиничноеОписание = НСтр("ru = 'Текущий ключ предоставляет права на просмотр финансовой информации и отчётности.'");
+
+ ИначеЕсли Доступ = "communication" Тогда
+ Описание = НСтр("ru = '- общение с покупателями'");
+ ЕдиничноеОписание = НСтр("ru = 'Текущий ключ предоставляет права на общение с покупателями.'");
+
+ ИначеЕсли Доступ = "settings_management" Тогда
+ Описание = НСтр("ru = '- редактирование настроек магазина'");
+ ЕдиничноеОписание = НСтр("ru = 'Текущий ключ предоставляет права на редактирование настроек магазина.'");
+
+ ИначеЕсли Доступ = "supplies_management_read_only" Тогда
+ Описание = НСтр("ru = '- получение информации по FBY-заявкам'");
+ ЕдиничноеОписание = НСтр("ru = 'Текущий ключ предоставляет права на получение информации по FBY-заявкам.'");
+
+ КонецЕсли;
+
+ Если ДляКлючаЗаданОдинПрофиль Тогда
+
+ Описание = ЕдиничноеОписание;
+
+ КонецЕсли;
+
+ Возврат Описание;
+
+КонецФункции
+
#КонецОбласти
#Область УправлениеКаталогомСлужебный
@@ -8137,101 +8390,90 @@
#Область УправлениеМагазинамиСлужебный
-// Определяет список магазинов из сервиса, к которым имеет доступ пользователь - владелец авторизационного токена, использованного в запросе.
-// Для агентских пользователей список состоит из подчиненных магазинов.
-// Описание метода см. https://yandex.ru/dev/market/partner-api/doc/ru/reference/campaigns/getCampaigns.
-//
-// Параметры:
-// ДанныеАвторизации - Структура - данные авторизации для подключения к сервису (см. ДанныеАвторизацииПоИдентификаторуАккаунта);
-// Отказ - Булево - выходной параметр, определяет наличие ошибки при выполнении запросов к сервису.
+// Возвращает новую таблицу для хранения свойств магазинов.
//
// Возвращаемое значение:
-// - Неопределено - при выполнении запроса к внешнему ресурсу возникли ошибки.
-// - Структура Из КлючИЗначение - результат выполнения запроса:
-// * campaigns - Массив Из Структура - список с информацией по каждому магазину (CampaignDTO):
-// ** domain - Строка - URL или наименование магазина;
-// ** id - Число - идентификатор кампании;
-// ** clientId - Число - идентификатор плательщика в Яндекс Балансе;
-// ** business - Структура - информацию о бизнесе (BusinessDTO):
-// *** id - Число - идентификатор бизнеса;
-// *** name - Строка - название бизнеса.
-// ** placementType - Строка - модель, по которой работает магазин.
-// * pager - Структура - Модель для пагинации (FlippingPagerDTO):
-// ** total - Число - сколько всего найдено элементов;
-// ** from - Число - начальный номер найденного элемента на странице;
-// ** to - Число - конечный номер найденного элемента на странице;
-// ** currentPage - Число - текущая страница;
-// ** pagesCount - Число - общее количество страниц;
-// ** pageSize - Число - размер страницы.
+// ТаблицаЗначений:
+// * Наименование - Строка
+// * ВидМаркетплейса - ПеречислениеСсылка.ВидыМаркетплейсов
+// * ИдентификаторАккаунта - Строка
+// * ИдентификаторМагазина - Строка
+// * ИдентификаторКабинета - Строка
+// * СхемаРаботы - ПеречислениеСсылка.СхемыРаботыТорговыхПлощадок
+// * ПометкаУдаления - Булево
+// * НеОбновлятьДанныеТорговойПлощадки - Булево
//
-Функция ПолучитьМагазиныПользователяИзСервиса(ДанныеАвторизации, Отказ = Ложь)
+Функция НоваяТаблицаМагазинов()
- Результат = Неопределено;
+ ОписаниеТипаБулево = Новый ОписаниеТипов("Булево");
+ ОписаниеТипаДата = Новый ОписаниеТипов("Дата");
+ ОписаниеТипаСтрока50 = Новый ОписаниеТипов("Строка",,,, Новый КвалификаторыСтроки(50));
+ ОписаниеТипаСтрока150 = Новый ОписаниеТипов("Строка",,,, Новый КвалификаторыСтроки(150));
+ ОписаниеТипаВидыМаркетплейсов = Новый ОписаниеТипов("ПеречислениеСсылка.ВидыМаркетплейсов");
+ ОписаниеТипаСхемыРаботы = Новый ОписаниеТипов("ПеречислениеСсылка.СхемыРаботыТорговыхПлощадок");
- Попытка
- ДанныеПриложения = ДанныеПриложения();
- Сервер = СерверПартнерскогоAPI();
- АдресРесурса = "";
+ ТаблицаМагазинов = Новый ТаблицаЗначений;
+
+ ТаблицаМагазинов.Колонки.Добавить("Наименование",);
+ ТаблицаМагазинов.Колонки.Добавить("ВидМаркетплейса",);
+ ТаблицаМагазинов.Колонки.Добавить("ИдентификаторАккаунта",);
+ ТаблицаМагазинов.Колонки.Добавить("ИдентификаторМагазина",);
+ ТаблицаМагазинов.Колонки.Добавить("ИдентификаторКабинета",);
+ ТаблицаМагазинов.Колонки.Добавить("СхемаРаботы",);
+ ТаблицаМагазинов.Колонки.Добавить("ПометкаУдаления",ОписаниеТипаБулево);
+ ТаблицаМагазинов.Колонки.Добавить("НеОбновлятьДанныеТорговойПлощадки",ОписаниеТипаБулево);
+
+ Возврат ТаблицаМагазинов;
- ИнтернетПрокси = Неопределено;
- Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ПолучениеФайловИзИнтернета") Тогда
- МодульПолучениеФайловИзИнтернета = ОбщегоНазначения.ОбщийМодуль("ПолучениеФайловИзИнтернета");
- ИнтернетПрокси = МодульПолучениеФайловИзИнтернета.ПолучитьПрокси("https");
- КонецЕсли;
- СоединениеOpenSSL = ОбщегоНазначенияКлиентСервер.НовоеЗащищенноеСоединение();
-
- HTTPСоединение = Новый HTTPСоединение(Сервер,,,, ИнтернетПрокси, 60, СоединениеOpenSSL);
-
- Заголовки = Новый Соответствие;
- Заголовки.Вставить("Content-Type", "application/json");
- Если ДанныеАвторизации<>Неопределено И ДанныеАвторизации.Свойство("apikey_token") Тогда
- Заголовки.Вставить("Api-Key", ДанныеАвторизации.apikey_token);
- ИначеЕсли ДанныеАвторизации<>Неопределено И ДанныеАвторизации.Свойство("access_token") Тогда
- Заголовки.Вставить("Authorization", "OAuth oauth_token=" + ДанныеАвторизации.access_token + ", oauth_client_id=" + ДанныеПриложения.IDПриложения);
- КонецЕсли;
- ДобавитьПодписьИнтеграцииВЗаголовки(Заголовки);
-
- HTTPЗапрос = Новый HTTPЗапрос(АдресРесурса, Заголовки);
-
- HTTPОтвет = HTTPСоединение.Получить(HTTPЗапрос);
- КодСостояния = HTTPОтвет.КодСостояния;
- СтрокаОтвета = HTTPОтвет.ПолучитьТелоКакСтроку();
- Результат = ИзJSON(СтрокаОтвета);
-
- Если КодСостояния <> 200 Тогда
- Если Результат.Свойство("status") И Результат.status = "ERROR" Тогда
- ОписаниеОшибок = ТекстОшибки(Результат.errors);
- Иначе
- ОписаниеОшибок = "";
- КонецЕсли;
-
- Отказ = Истина;
- ТекстОшибки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
- НСтр("ru = 'Ошибка выполнения запроса %1: %2%3'",
- ОбщегоНазначения.КодОсновногоЯзыка()),
- Сервер + АдресРесурса,
- ОписаниеОшибок,
- СтрокаОтвета);
-
- ЗаписьЖурналаРегистрации(СобытиеЖурналаРегистрации(),
- УровеньЖурналаРегистрации.Ошибка,,,
- ТекстОшибки);
- КонецЕсли;
-
- Исключение
- Отказ = Истина;
- ТекстОшибки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
- НСтр("ru = 'Отсутствует соединение с сервером %1 по причине: %2'",
- ОбщегоНазначения.КодОсновногоЯзыка()),
- Сервер,
- ОбработкаОшибок.ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()));
- ЗаписьЖурналаРегистрации(СобытиеЖурналаРегистрации(),
- УровеньЖурналаРегистрации.Ошибка,,,
- ТекстОшибки);
- КонецПопытки;
-
- Возврат Результат;
+КонецФункции
+// Получает данные магазинов из сервиса (см. https://yandex.ru/dev/market/partner-api/doc/ru/reference/campaigns/getCampaigns).
+//
+// Параметры:
+// ДанныеАвторизации - см. ДанныеАвторизации.
+//
+// Возвращаемое значение:
+// Структура - содержит данные авторизации:
+// * СтруктураОтвета - Строка - ответ сервера с информацией о данных магазинов.
+//
+Функция ПолучитьМагазиныИзСервиса(ДанныеАвторизации, Параметры)
+
+ ТекстЗапроса = "/v2/campaigns";
+
+ ПараметрыЗапроса = Новый Структура;
+ ПараметрыЗапроса.Вставить("pageToken", Параметры.ИдентификаторСтраницы);
+
+ СлужебныеПараметры = НовыеСлужебныеПараметрыHTTPЗапроса();
+ СлужебныеПараметры.ДанныеАвторизации = ДанныеАвторизации;
+
+ ОтветСервиса = ВыполнитьЗапросВСервис(
+ Неопределено,
+ ТекстЗапроса,
+ ПараметрыЗапроса,
+ Новый Структура,
+ "GET",
+ СлужебныеПараметры);
+
+ РезультатЗапроса = Новый Структура;
+
+ РезультатЗапроса.Вставить("Результат", Новый Массив);
+ РезультатЗапроса.Вставить("ЕстьСледующаяСтраница", Ложь);
+ РезультатЗапроса.Вставить("ИдентификаторСтраницы", "");
+ РезультатЗапроса.Вставить("Ошибка", Неопределено);
+
+ Если ОтветСервиса.Ошибка = Неопределено Тогда
+ //@skip-check statement-type-change
+ РезультатЗапроса.Результат = ОтветСервиса.Результат["campaigns"];
+
+ ДанныеСтраницы = ДанныеСледующейСтраницы(ОтветСервиса.Результат);
+ РезультатЗапроса.ЕстьСледующаяСтраница = ДанныеСтраницы.ЕстьСледующаяСтраница;
+ РезультатЗапроса.ИдентификаторСтраницы = ДанныеСтраницы.ИдентификаторСтраницы;
+ Иначе
+ РезультатЗапроса.Ошибка = ОтветСервиса.Ошибка;
+ КонецЕсли;
+
+ Возврат РезультатЗапроса;
+
КонецФункции
// Определяет схему работы магазина по его представлению из сервиса.
@@ -13610,6 +13852,7 @@
Результат.Вставить("ПрочитатьВСоответствие", Ложь);
Результат.Вставить("ПолучениеДвоичныхДанных", Ложь);
Результат.Вставить("ПоляТипаДата", Новый Массив);
+ Результат.Вставить("ДанныеАвторизации", Новый Структура);
Возврат Результат;
@@ -13648,7 +13891,12 @@
КонецЕсли;
Попытка
- ДанныеАвторизации = ИнтеграцияСМаркетплейсамиПовтИсп.ПолучитьДанныеАвторизации(УчетнаяЗапись);
+ Если УчетнаяЗапись <> Неопределено Тогда
+ ДанныеАвторизации = ИнтеграцияСМаркетплейсамиПовтИсп.ПолучитьДанныеАвторизации(УчетнаяЗапись);
+ Иначе
+ ДанныеАвторизации = СлужебныеПараметры.ДанныеАвторизации;
+ КонецЕсли;
+
ДанныеПриложения = ДанныеПриложения();
АдресСервера = СерверAPI();
diff --git a/src/CommonModules/ИнтеграцияЦентраЭДО/Ext/Module.bsl b/src/CommonModules/ИнтеграцияЦентраЭДО/Ext/Module.bsl
index ff56ce75a..3ed88a7ba 100644
--- a/src/CommonModules/ИнтеграцияЦентраЭДО/Ext/Module.bsl
+++ b/src/CommonModules/ИнтеграцияЦентраЭДО/Ext/Module.bsl
@@ -1383,7 +1383,7 @@
// ВидОперации - Строка
// ТекстОшибки - Строка
// УчетнаяЗапись - СправочникСсылка.УчетныеЗаписиЦентровЭДО
-Процедура ДобавитьНеизвестнуюОшибкуИлиИсключение(КонтекстДиагностики, ВидОперации, ТекстОшибки, УчетнаяЗапись) Экспорт
+Процедура ДобавитьНеизвестнуюОшибкуИлиИсключение(КонтекстДиагностики, ВидОперации, ТекстОшибки, УчетнаяЗапись)
Если КонтекстДиагностики = Неопределено Тогда
ВызватьИсключение СтрШаблон(НСтр("ru = 'При выполнении операции %1 возникла ошибка: %2'"),
diff --git a/src/CommonModules/ИнтеграцияЭДО/Ext/Module.bsl b/src/CommonModules/ИнтеграцияЭДО/Ext/Module.bsl
index aaa8a4ec2..de06eb335 100644
--- a/src/CommonModules/ИнтеграцияЭДО/Ext/Module.bsl
+++ b/src/CommonModules/ИнтеграцияЭДО/Ext/Module.bsl
@@ -94,7 +94,7 @@
// ЭлектронныеДокументы - Массив Из ДокументСсылка.ЭлектронныйДокументВходящийЭДО, ДокументСсылка.ЭлектронныйДокументИсходящийЭДО
//
// Возвращаемое значение:
-// ТаблицаЗначений - данные соответствия.
+// ТаблицаЗначений - данные соответствия:
// * ОбъектУчета - ОпределяемыйТип.ОснованияЭлектронныхДокументовЭДО - ссылка на объект учета.
// * ЭлектронныйДокумент - ДокументСсылка.ЭлектронныйДокументВходящийЭДО, ДокументСсылка.ЭлектронныйДокументИсходящийЭДО - актуальный электронный документ.
//
@@ -2914,7 +2914,7 @@
// * ВыводитьДопДанные - Булево
// * ВыводитьБанковскиеРеквизиты - Булево
// * ВыводитьПостраничныйРазделитель - Булево
-// * ЭлектронныеПодписи - См. ЭлектроннаяПодпись.УстановленныеПодписи
+// * ЭлектронныеПодписи - См. ЭлектроннаяПодпись.ПодписиОбъекта
// * ПрикладнойТипДокумента - Произвольный,ОпределяемыйТип.ПрикладныеТипыЭлектронныхДокументовЭДО
//
Функция НовыеПараметрыПредставленияПроизвольногоДокумента() Экспорт
@@ -3463,6 +3463,11 @@
//
Процедура ПослеЗагрузкиПодтвержденияПоСчетуФактуре(ЭлектронныйДокумент, ДокументыПодтверждения, КонтекстДиагностики) Экспорт
+ Если ОбщегоНазначенияБЭД.ЭтоРежимЦентрЭДО() Тогда
+ МодульЦентрЭДО = ОбщегоНазначения.ОбщийМодуль("ЦентрЭДО");
+ МодульЦентрЭДО.ПослеЗагрузкиПодтвержденияПоСчетуФактуре(ЭлектронныйДокумент, ДокументыПодтверждения);
+ КонецЕсли;
+
ОбъектыУчета = ОбъектыУчетаЭлектронныхДокументов(
ОбщегоНазначенияКлиентСервер.ЗначениеВМассиве(ЭлектронныйДокумент)).ВыгрузитьКолонку("ОбъектУчета");
@@ -3513,6 +3518,11 @@
//
Процедура ПослеФормированияЭлектронногоДокумента(ЭлектронныйДокумент, КонтекстДиагностики) Экспорт
+ Если ОбщегоНазначенияБЭД.ЭтоРежимЦентрЭДО() Тогда
+ МодульЦентрЭДО = ОбщегоНазначения.ОбщийМодуль("ЦентрЭДО");
+ МодульЦентрЭДО.ПослеФормированияЭлектронногоДокумента(ЭлектронныйДокумент);
+ КонецЕсли;
+
ОбменСКонтрагентамиПереопределяемый.ПослеФормированияЭлектронногоДокумента(ЭлектронныйДокумент);
КонецПроцедуры
@@ -3521,6 +3531,11 @@
//
Процедура ПослеЗагрузкиНовогоЭлектронногоДокумента(ЗагруженныйДокумент, КонтекстДиагностики) Экспорт
+ Если ОбщегоНазначенияБЭД.ЭтоРежимЦентрЭДО() Тогда
+ МодульЦентрЭДО = ОбщегоНазначения.ОбщийМодуль("ЦентрЭДО");
+ МодульЦентрЭДО.ПослеЗагрузкиНовогоЭлектронногоДокумента(ЗагруженныйДокумент.ЭлектронныйДокумент);
+ КонецЕсли;
+
Если ЕстьПодсистемаОтражениеВУчетеЭДО() Тогда
ОбщийМодульОтражениеВУчетеЭДО().ПослеЗагрузкиНовогоЭлектронногоДокумента(ЗагруженныйДокумент, КонтекстДиагностики);
КонецЕсли;
@@ -3533,6 +3548,11 @@
//
Процедура ПослеУтвержденияЭлектронногоДокумента(ЭлектронныйДокумент, КонтекстДиагностики) Экспорт
+ Если ОбщегоНазначенияБЭД.ЭтоРежимЦентрЭДО() Тогда
+ МодульЦентрЭДО = ОбщегоНазначения.ОбщийМодуль("ЦентрЭДО");
+ МодульЦентрЭДО.ПослеУтвержденияЭлектронногоДокумента(ЭлектронныйДокумент);
+ КонецЕсли;
+
ОбменСКонтрагентамиПереопределяемый.ПослеУтвержденияЭлектронногоДокумента(ЭлектронныйДокумент);
КонецПроцедуры
@@ -3541,6 +3561,11 @@
//
Процедура ПослеПодписанияЭлектронногоДокумента(ЭлектронныйДокумент, КонтекстДиагностики) Экспорт
+ Если ОбщегоНазначенияБЭД.ЭтоРежимЦентрЭДО() Тогда
+ МодульЦентрЭДО = ОбщегоНазначения.ОбщийМодуль("ЦентрЭДО");
+ МодульЦентрЭДО.ПослеПодписанияЭлектронногоДокумента(ЭлектронныйДокумент);
+ КонецЕсли;
+
ОбменСКонтрагентамиПереопределяемый.ПослеПодписанияЭлектронногоДокумента(ЭлектронныйДокумент);
КонецПроцедуры
@@ -3549,6 +3574,11 @@
//
Процедура ПослеЗавершенияОбменаЭлектроннымДокументом(ЭлектронныйДокумент, КонтекстДиагностики) Экспорт
+ Если ОбщегоНазначенияБЭД.ЭтоРежимЦентрЭДО() Тогда
+ МодульЦентрЭДО = ОбщегоНазначения.ОбщийМодуль("ЦентрЭДО");
+ МодульЦентрЭДО.ПослеЗавершенияОбменаЭлектроннымДокументом(ЭлектронныйДокумент);
+ КонецЕсли;
+
ОбменСКонтрагентамиПереопределяемый.ПослеЗавершенияОбменаЭлектроннымДокументом(ЭлектронныйДокумент);
КонецПроцедуры
@@ -3557,14 +3587,66 @@
//
Процедура ПослеАннулированияЭлектронногоДокумента(ЭлектронныйДокумент, КонтекстДиагностики) Экспорт
+ Если ОбщегоНазначенияБЭД.ЭтоРежимЦентрЭДО() Тогда
+ МодульЦентрЭДО = ОбщегоНазначения.ОбщийМодуль("ЦентрЭДО");
+ МодульЦентрЭДО.ПослеАннулированияЭлектронногоДокумента(ЭлектронныйДокумент);
+ КонецЕсли;
+
ОбменСКонтрагентамиПереопределяемый.ПослеАннулированияЭлектронногоДокумента(ЭлектронныйДокумент);
КонецПроцедуры
+// См. ЭлектронныеДокументыЭДОСобытия.ПослеОтклоненияЭлектронногоДокумента
+//
+Процедура ПослеОтклоненияЭлектронногоДокумента(ЭлектронныйДокумент, КонтекстДиагностики) Экспорт
+
+ Если ЭлектронныеДокументыЭДО.ЭтоВходящийЭДО(ЭлектронныйДокумент) Тогда
+ ОтражениеВУчетеЭДО.ОтключитьКонтрольСопоставленияНоменклатурыПоДокументу(ЭлектронныйДокумент);
+ КонецЕсли;
+
+КонецПроцедуры
+
+// См. ЭлектронныеДокументыЭДОСобытия.ПослеПринудительногоЗакрытияЭлектронногоДокумента
+//
+Процедура ПослеПринудительногоЗакрытияЭлектронногоДокумента(ЭлектронныйДокумент, КонтекстДиагностики) Экспорт
+
+ Если ЭлектронныеДокументыЭДО.ЭтоВходящийЭДО(ЭлектронныйДокумент) Тогда
+ ОтражениеВУчетеЭДО.ОтключитьКонтрольСопоставленияНоменклатурыПоДокументу(ЭлектронныйДокумент);
+ КонецЕсли;
+
+КонецПроцедуры
+
+// См. ЭлектронныеДокументыЭДОСобытия.ПослеВозвращенияВРаботуЭлектронногоДокумента
+//
+Процедура ПослеВозвращенияВРаботуЭлектронногоДокумента(ЭлектронныйДокумент, КонтекстДиагностики) Экспорт
+
+ Если Не ЭлектронныеДокументыЭДО.ЭтоВходящийЭДО(ЭлектронныйДокумент) Тогда
+ Возврат;
+ КонецЕсли;
+
+ Документ = Новый Структура("СпособОбработки");
+ Настройки = Новый Структура("ОтражатьТолькоСопоставленные", Истина);
+ СопоставлениеНоменклатурыКонтрагентовПереопределяемый.ПриОтраженииВУчетеЭлектронногоДокументаСНоменклатурой(
+ Документ, Настройки);
+
+ Если Не Настройки.ОтражатьТолькоСопоставленные Тогда
+ Возврат;
+ КонецЕсли;
+
+ ОтражениеВУчетеЭДО.ВыполнитьКонтрольСопоставленияНоменклатурыДокументов(
+ ОбщегоНазначенияКлиентСервер.ЗначениеВМассиве(ЭлектронныйДокумент), КонтекстДиагностики);
+
+КонецПроцедуры
+
// См. ЭлектронныеДокументыЭДОСобытия.ПослеЗагрузкиИнформацииПолучателяПоАктуСверкиВзаиморасчетов
//
Процедура ПослеЗагрузкиИнформацииПолучателяПоАктуСверкиВзаиморасчетов(ЭлектронныйДокумент, ОписаниеДанных, КонтекстДиагностики) Экспорт
+ Если ОбщегоНазначенияБЭД.ЭтоРежимЦентрЭДО() Тогда
+ МодульЦентрЭДО = ОбщегоНазначения.ОбщийМодуль("ЦентрЭДО");
+ МодульЦентрЭДО.ПослеЗагрузкиИнформацииПолучателяПоАктуСверкиВзаиморасчетов(ЭлектронныйДокумент);
+ КонецЕсли;
+
ДанныеДокумента = ОбменСКонтрагентами.ДанныеЭлектронногоДокументаПоФайлу(ОписаниеДанных.ДвоичныеДанные);
ОбъектыУчета = ОбъектыУчетаЭлектронныхДокументов(
ОбщегоНазначенияКлиентСервер.ЗначениеВМассиве(ЭлектронныйДокумент)).ВыгрузитьКолонку("ОбъектУчета");
@@ -3577,6 +3659,11 @@
//
Процедура ПослеЗагрузкиДополнительныхСведенийПоАктуОРасхождениях(ЭлектронныйДокумент, ОписаниеДанных, КонтекстДиагностики) Экспорт
+ Если ОбщегоНазначенияБЭД.ЭтоРежимЦентрЭДО() Тогда
+ МодульЦентрЭДО = ОбщегоНазначения.ОбщийМодуль("ЦентрЭДО");
+ МодульЦентрЭДО.ПослеЗагрузкиДополнительныхСведенийПоАктуОРасхождениях(ЭлектронныйДокумент);
+ КонецЕсли;
+
ДанныеДокумента = ОбменСКонтрагентами.ДанныеЭлектронногоДокументаПоФайлу(ОписаниеДанных.ДвоичныеДанные);
ОбъектыУчета = ОбъектыУчетаЭлектронныхДокументов(
ОбщегоНазначенияКлиентСервер.ЗначениеВМассиве(ЭлектронныйДокумент)).ВыгрузитьКолонку("ОбъектУчета");
@@ -4082,10 +4169,6 @@
ПоддерживаемыеФорматы = ЭлектронныеДокументыЭДО.ПоддерживаемыеФорматы();
- Если Формат = ПоддерживаемыеФорматы.ФНС.УКД2020.ИнформацияПродавца Тогда
- УчестьМножественностьКорректируемыхСФ(Данные);
- КонецЕсли;
-
КонецПроцедуры
#КонецОбласти
@@ -8664,28 +8747,40 @@
// Район, округ, территория.
Если ЗначениеЗаполнено(АдресПоПриказуМинфина.МуниципальныйРайон) Тогда
- Виды = Новый Структура();
+
+ КодыБСП = ИнтеграцияБСПБЭД.КодыМуниципальныхРайонов();
+
+ Виды = Новый Структура();
Виды.Вставить("МуниципальныйРайон", "1");
Виды.Вставить("ГородскойОкруг", "2");
Виды.Вставить("ВнутригородскаяТерритория", "3");
Виды.Вставить("МуниципальныйОкруг", "4");
Виды.Вставить("ФедеральнаяТерритория", "5");
- Если ВРег(АдресПоПриказуМинфина.МуниципальныйРайонТипПолный) = "МУНИЦИПАЛЬНЫЙ РАЙОН" Тогда
+ Вид = "";
+ Если АдресПоПриказуМинфина.КодМуниципальногоРайона = КодыБСП.МуниципальныйРайон Тогда
Вид = Виды.МуниципальныйРайон;
- ИначеЕсли ВРег(АдресПоПриказуМинфина.МуниципальныйРайонТипПолный) = "ГОРОДСКОЙ ОКРУГ" Тогда
+ ИначеЕсли АдресПоПриказуМинфина.КодМуниципальногоРайона = КодыБСП.ГородскойОкруг Тогда
Вид = Виды.ГородскойОкруг;
- ИначеЕсли ВРег(АдресПоПриказуМинфина.МуниципальныйРайонТипПолный) = "ВНУТРИГОРОДСКАЯ ТЕРРИТОРИЯ" Тогда
+ ИначеЕсли АдресПоПриказуМинфина.КодМуниципальногоРайона = КодыБСП.ВнутригородскаяТерритория Тогда
Вид = Виды.ВнутригородскаяТерритория;
- ИначеЕсли ВРег(АдресПоПриказуМинфина.МуниципальныйРайонТипПолный) = "МУНИЦИПАЛЬНЫЙ ОКРУГ" Тогда
+ ИначеЕсли АдресПоПриказуМинфина.КодМуниципальногоРайона = КодыБСП.МуниципальныйОкруг Тогда
Вид = Виды.МуниципальныйОкруг;
- Иначе
+ ИначеЕсли АдресПоПриказуМинфина.КодМуниципальногоРайона = КодыБСП.ФедеральнаяТерритория Тогда
Вид = Виды.ФедеральнаяТерритория;
КонецЕсли;
+ ПараметрыОбработкиОшибокВида = ЭлектронноеВзаимодействиеКлиентСервер.НовыеПараметрыОбработкиОшибки();
+ Если ПустаяСтрока(Вид) Тогда
+ ПараметрыОбработкиОшибокВида.ТекстОшибки =
+ СтрШаблон(НСтр("ru = 'Не удалось определить вид муниципального района ""%1"".
+ |Проверьте правильность адреса или попробуйте ввести его в другом формате.'"),
+ АдресПоПриказуМинфина.МуниципальныйРайон);
+ КонецЕсли;
+
ЭлектронноеВзаимодействие.ЗаполнитьЗначениеРеквизитаВДереве(ДеревоДанных,
ПутьКАдресу + ".РайонОкругТерритория.Вид",
- Вид, ПараметрыОбработкиОшибок);
+ Вид, ПараметрыОбработкиОшибокВида);
ЭлектронноеВзаимодействие.ЗаполнитьЗначениеРеквизитаВДереве(ДеревоДанных,
ПутьКАдресу + ".РайонОкругТерритория.Наименование",
АдресПоПриказуМинфина.МуниципальныйРайон, ПараметрыОбработкиОшибок);
@@ -8694,25 +8789,36 @@
// Город, село, поселение.
Если ЗначениеЗаполнено(АдресПоПриказуМинфина.Поселение) Тогда
+ КодыБСП = ИнтеграцияБСПБЭД.КодыПоселений();
+
Виды = Новый Структура();
Виды.Вставить("ГородскоеПоселение", "1");
Виды.Вставить("СельскоеПоселение", "2");
Виды.Вставить("МежселеннаяТерритория", "3");
Виды.Вставить("ВнутригородскойРайон", "4");
- Если ВРег(АдресПоПриказуМинфина.ПоселениеТипПолный) = "ГОРОДСКОЕ ПОСЕЛЕНИЕ" Тогда
+ Вид = "";
+ Если АдресПоПриказуМинфина.КодПоселения = КодыБСП.ГородскоеПоселение Тогда
Вид = Виды.ГородскоеПоселение;
- ИначеЕсли ВРег(АдресПоПриказуМинфина.ПоселениеТипПолный) = "СЕЛЬСКОЕ ПОСЕЛЕНИЕ" Тогда
+ ИначеЕсли АдресПоПриказуМинфина.КодПоселения = КодыБСП.СельскоеПоселение Тогда
Вид = Виды.СельскоеПоселение;
- ИначеЕсли ВРег(АдресПоПриказуМинфина.ПоселениеТипПолный) = "МЕЖСЕЛЕННАЯ ТЕРРИТОРИЯ" Тогда
+ ИначеЕсли АдресПоПриказуМинфина.КодПоселения = КодыБСП.МежселеннаяТерритория Тогда
Вид = Виды.МежселеннаяТерритория;
- ИначеЕсли ВРег(АдресПоПриказуМинфина.ПоселениеТипПолный) = "ВНУТРИГОРОДСКОЙ РАЙОН" Тогда
+ ИначеЕсли АдресПоПриказуМинфина.КодПоселения = КодыБСП.ВнутригородскойРайон Тогда
Вид = Виды.ВнутригородскойРайон;
КонецЕсли;
+ ПараметрыОбработкиОшибокВида = ЭлектронноеВзаимодействиеКлиентСервер.НовыеПараметрыОбработкиОшибки();
+ Если ПустаяСтрока(Вид) Тогда
+ ПараметрыОбработкиОшибокВида.ТекстОшибки =
+ СтрШаблон(НСтр("ru = 'Не удалось определить вид поселения ""%1"".
+ |Проверьте правильность адреса или попробуйте ввести его в другом формате.'"),
+ АдресПоПриказуМинфина.Поселение);
+ КонецЕсли;
+
ЭлектронноеВзаимодействие.ЗаполнитьЗначениеРеквизитаВДереве(ДеревоДанных,
ПутьКАдресу + ".ГородСелоПоселение.Вид",
- Вид, ПараметрыОбработкиОшибок);
+ Вид, ПараметрыОбработкиОшибокВида);
ЭлектронноеВзаимодействие.ЗаполнитьЗначениеРеквизитаВДереве(ДеревоДанных,
ПутьКАдресу + ".ГородСелоПоселение.Наименование",
АдресПоПриказуМинфина.Поселение, ПараметрыОбработкиОшибок);
@@ -12550,7 +12656,7 @@
// * Наименование - Строка
// * GLN - Строка
//
-Функция РеквизитыКонтрагента(Реквизиты) Экспорт
+Функция РеквизитыКонтрагента(Реквизиты)
Результат = Новый Структура();
Результат.Вставить("ИНН", "");
@@ -13247,257 +13353,6 @@
#КонецОбласти
-#Область ОбратнаяСовместимостьДереваЭлектронногоДокумента
-
-#Область ТаблицаКорректируемыхСФ
-
-// Обрабатывает "мягкий" переход на множественное указание корректируемых СФ в дереве данных УКД.
-//
-// Параметры:
-// Данные - ДеревоЗначений - Дерево данных документа согласно макетам УКД_ИнформацияПродавца
-// или УКД_ИнформацияПродавца_2020
-Процедура УчестьМножественностьКорректируемыхСФ(Данные)
-
- СведенияПоСтарому = СведенияОКорректируемомСФПоСтарому(Данные);
- СведенияПоНовому = СведенияОКорректируемыхСФПоНовому(Данные);
-
- ЗанестиСведенияКорректируемогоСФВТаблицу(СведенияПоСтарому, СведенияПоНовому);
- ЗанестиСведенияКорректируемогоСФВРеквизиты(СведенияПоСтарому, СведенияПоНовому);
-
- ЗаполнитьСведенияКорректируемогоСФВДеревеДанных(СведенияПоСтарому, СведенияПоНовому, Данные);
-
-КонецПроцедуры
-
-Функция СведенияОКорректируемомСФПоСтарому(Данные)
-
- СведенияИсходногоДокумента = Новый Структура;
- СведенияИсходногоДокумента.Вставить("НомерИсходногоДокумента");
- СведенияИсходногоДокумента.Вставить("ДатаИсходногоДокумента");
- СведенияИсходногоДокумента.Вставить("ПредставлениеИсходногоДокумента");
- СведенияИсходногоДокумента.Вставить("НомерИсправленияИсходногоДокумента");
- СведенияИсходногоДокумента.Вставить("ДатаИсправленияИсходногоДокумента");
-
-
- СведенияИсходногоДокумента.НомерИсходногоДокумента =
- ЭлектронноеВзаимодействие.ЗначениеРеквизитаВДереве(Данные, "НомерИсходногоДокумента");
- СведенияИсходногоДокумента.ДатаИсходногоДокумента =
- ЭлектронноеВзаимодействие.ЗначениеРеквизитаВДереве(Данные, "ДатаИсходногоДокумента");
- СведенияИсходногоДокумента.ПредставлениеИсходногоДокумента =
- ЭлектронноеВзаимодействие.ЗначениеРеквизитаВДереве(Данные, "ПредставлениеИсходногоДокумента");
- СведенияИсходногоДокумента.НомерИсправленияИсходногоДокумента =
- ЭлектронноеВзаимодействие.ЗначениеРеквизитаВДереве(Данные, "НомерИсправленияИсходногоДокумента");
- СведенияИсходногоДокумента.ДатаИсправленияИсходногоДокумента =
- ЭлектронноеВзаимодействие.ЗначениеРеквизитаВДереве(Данные, "ДатаИсправленияИсходногоДокумента");
-
- Возврат СведенияИсходногоДокумента;
-
-КонецФункции
-
-Функция СведенияОКорректируемыхСФПоНовому(Данные)
-
- ИсходныеДокументы = Новый ТаблицаЗначений;
- ИсходныеДокументы.Колонки.Добавить("НомерИсходногоДокумента");
- ИсходныеДокументы.Колонки.Добавить("ДатаИсходногоДокумента");
- ИсходныеДокументы.Колонки.Добавить("ПредставлениеИсходногоДокумента");
- ИсходныеДокументы.Колонки.Добавить("ИсправленияИсходногоДокумента");
-
- ТаблицаИсходныхДокументов = Данные.Строки.Найти("ИсходныеДокументы", "ПолныйПуть");
- Для каждого ИсходныйДокумент Из ТаблицаИсходныхДокументов.Строки Цикл
-
- НомерИсходногоДокумента = ДеревоЭлектронногоДокументаБЭД.ЗначениеРеквизитаВДереве(
- ИсходныйДокумент, "ИсходныеДокументы.НомерСтроки.НомерИсходногоДокумента");
- ДатаИсходногоДокумента = ДеревоЭлектронногоДокументаБЭД.ЗначениеРеквизитаВДереве(
- ИсходныйДокумент, "ИсходныеДокументы.НомерСтроки.ДатаИсходногоДокумента");
-
- Если Не (ЗначениеЗаполнено(НомерИсходногоДокумента) И ЗначениеЗаполнено(ДатаИсходногоДокумента)) Тогда
- Продолжить;
- КонецЕсли;
-
- СтрокаДокумента = ИсходныеДокументы.Добавить();
-
- СтрокаДокумента.НомерИсходногоДокумента = НомерИсходногоДокумента;
- СтрокаДокумента.ДатаИсходногоДокумента = ДатаИсходногоДокумента;
- СтрокаДокумента.ПредставлениеИсходногоДокумента = ДеревоЭлектронногоДокументаБЭД.ЗначениеРеквизитаВДереве(
- ИсходныйДокумент, "ИсходныеДокументы.НомерСтроки.ПредставлениеИсходногоДокумента");
-
- ТаблицаИсправлений = ИсходныйДокумент.Строки.Найти("ИсходныеДокументы.НомерСтроки.ИсправленияИсходногоДокумента");
-
- Если ТаблицаИсправлений.Строки.Количество() > 0 Тогда
- ИсправленияИсходногоДокумента = Новый ТаблицаЗначений;
- ИсправленияИсходногоДокумента.Колонки.Добавить("НомерИсправленияИсходногоДокумента");
- ИсправленияИсходногоДокумента.Колонки.Добавить("ДатаИсправленияИсходногоДокумента");
-
- СтрокаДокумента.ИсправленияИсходногоДокумента = ИсправленияИсходногоДокумента;
- КонецЕсли;
-
- Для Каждого Исправление Из ТаблицаИсправлений.Строки Цикл
-
- НомерИсправления = ДеревоЭлектронногоДокументаБЭД.ЗначениеРеквизитаВДереве(
- Исправление,
- "ИсходныеДокументы.НомерСтроки.ИсправленияИсходногоДокумента.НомерСтроки.НомерИсправленияИсходногоДокумента");
- ДатаИсправления = ДеревоЭлектронногоДокументаБЭД.ЗначениеРеквизитаВДереве(
- Исправление,
- "ИсходныеДокументы.НомерСтроки.ИсправленияИсходногоДокумента.НомерСтроки.ДатаИсправленияИсходногоДокумента");
-
- Если Не (ЗначениеЗаполнено(НомерИсправления) И ЗначениеЗаполнено(ДатаИсправления)) Тогда
- Продолжить;
- КонецЕсли;
-
- СтрокаИсправления = СтрокаДокумента.ИсправленияИсходногоДокумента.Добавить();
-
- СтрокаИсправления.НомерИсправленияИсходногоДокумента = НомерИсправления;
- СтрокаИсправления.ДатаИсправленияИсходногоДокумента = ДатаИсправления;
-
- КонецЦикла;
-
- КонецЦикла;
-
- Возврат ИсходныеДокументы;
-
-КонецФункции
-
-Процедура ЗанестиСведенияКорректируемогоСФВТаблицу(СведенияПоСтарому, СведенияПоНовому)
-
- Если Не (ЗначениеЗаполнено(СведенияПоСтарому.НомерИсходногоДокумента)
- И ЗначениеЗаполнено(СведенияПоСтарому.ДатаИсходногоДокумента)) Тогда
-
- Возврат;
- КонецЕсли;
-
- СтрокаИсхДокВТаблице = Неопределено;
-
- Для Каждого СтрокаИсхДок Из СведенияПоНовому Цикл
-
- Если СтрокаИсхДок.НомерИсходногоДокумента = СведенияПоСтарому.НомерИсходногоДокумента
- И СтрокаИсхДок.ДатаИсходногоДокумента = СведенияПоСтарому.ДатаИсходногоДокумента Тогда
-
- СтрокаИсхДокВТаблице = СтрокаИсхДок;
- Прервать;
- КонецЕсли;
-
- КонецЦикла;
-
- Если СтрокаИсхДокВТаблице = Неопределено Тогда
- СтрокаИсхДокВТаблице = СведенияПоНовому.Добавить();
-
- СтрокаИсхДокВТаблице.НомерИсходногоДокумента = СведенияПоСтарому.НомерИсходногоДокумента;
- СтрокаИсхДокВТаблице.ДатаИсходногоДокумента = СведенияПоСтарому.ДатаИсходногоДокумента;
- СтрокаИсхДокВТаблице.ПредставлениеИсходногоДокумента = СведенияПоСтарому.ПредставлениеИсходногоДокумента;
- КонецЕсли;
-
- Если Не (ЗначениеЗаполнено(СведенияПоСтарому.НомерИсправленияИсходногоДокумента)
- И ЗначениеЗаполнено(СведенияПоСтарому.ДатаИсправленияИсходногоДокумента)) Тогда
-
- Возврат;
- КонецЕсли;
-
- СтрокаИсправленияВТаблице = Неопределено;
-
- Если ТипЗнч(СтрокаИсхДокВТаблице.ИсправленияИсходногоДокумента) = Тип("ТаблицаЗначений") Тогда
- Для Каждого СтрокаИсправления Из СтрокаИсхДокВТаблице.ИсправленияИсходногоДокумента Цикл
-
- Если СтрокаИсправления.НомерИсправленияИсходногоДокумента
- = СведенияПоСтарому.НомерИсправленияИсходногоДокумента
- И СтрокаИсправления.ДатаИсправленияИсходногоДокумента
- = СведенияПоСтарому.ДатаИсправленияИсходногоДокумента Тогда
-
- СтрокаИсправленияВТаблице = СтрокаИсправления;
- Прервать;
- КонецЕсли;
-
- КонецЦикла;
- КонецЕсли;
-
- Если СтрокаИсправленияВТаблице = Неопределено Тогда
-
- Если ТипЗнч(СтрокаИсхДокВТаблице.ИсправленияИсходногоДокумента) <> Тип("ТаблицаЗначений") Тогда
- СтрокаИсхДокВТаблице.ИсправленияИсходногоДокумента = Новый ТаблицаЗначений();
- КонецЕсли;
-
- СтрокаИсправленияВТаблице = СтрокаИсхДокВТаблице.ИсправленияИсходногоДокумента.Добавить();
-
- СтрокаИсправленияВТаблице.НомерИсправленияИсходногоДокумента =
- СведенияПоСтарому.НомерИсправленияИсходногоДокумента;
- СтрокаИсправленияВТаблице.ДатаИсправленияИсходногоДокумента =
- СведенияПоСтарому.ДатаИсправленияИсходногоДокумента;
-
- КонецЕсли;
-
-КонецПроцедуры
-
-Процедура ЗанестиСведенияКорректируемогоСФВРеквизиты(СведенияПоСтарому, СведенияПоНовому)
-
- Если СведенияПоНовому.Количество() = 0 Тогда
- Возврат;
- КонецЕсли;
-
- Если ЗначениеЗаполнено(СведенияПоСтарому.НомерИсходногоДокумента)
- И ЗначениеЗаполнено(СведенияПоСтарому.ДатаИсходногоДокумента) Тогда
-
- Возврат;
- КонецЕсли;
-
- ПоследняяСтрокаИсхДок = СведенияПоНовому[СведенияПоНовому.Количество() - 1];
-
- СведенияПоСтарому.НомерИсходногоДокумента = ПоследняяСтрокаИсхДок.НомерИсходногоДокумента;
- СведенияПоСтарому.ДатаИсходногоДокумента = ПоследняяСтрокаИсхДок.ДатаИсходногоДокумента;
- СведенияПоСтарому.ПредставлениеИсходногоДокумента = ПоследняяСтрокаИсхДок.ПредставлениеИсходногоДокумента;
-
- ТаблицаИсправлений = ПоследняяСтрокаИсхДок.ИсправленияИсходногоДокумента;
-
- Если ТипЗнч(ТаблицаИсправлений) <> Тип("ТаблицаЗначений")
- Или ТаблицаИсправлений.Количество() = 0 Тогда
-
- СведенияПоСтарому.НомерИсправленияИсходногоДокумента ="";
- СведенияПоСтарому.ДатаИсправленияИсходногоДокумента = Дата(1, 1, 1);
- Возврат;
- КонецЕсли;
-
- ПоследняяСтрокаИсправлений = ТаблицаИсправлений[ТаблицаИсправлений.Количество() - 1];
-
- Если ЗначениеЗаполнено(ПоследняяСтрокаИсправлений.НомерИсправленияИсходногоДокумента)
- И ЗначениеЗаполнено(ПоследняяСтрокаИсправлений.ДатаИсправленияИсходногоДокумента) Тогда
-
- СведенияПоСтарому.НомерИсправленияИсходногоДокумента =
- ПоследняяСтрокаИсправлений.НомерИсправленияИсходногоДокумента;
- СведенияПоСтарому.ДатаИсправленияИсходногоДокумента =
- ПоследняяСтрокаИсправлений.ДатаИсправленияИсходногоДокумента;
-
- Иначе
-
- СведенияПоСтарому.НомерИсправленияИсходногоДокумента ="";
- СведенияПоСтарому.ДатаИсправленияИсходногоДокумента = Дата(1, 1, 1);
-
- КонецЕсли;
-
-КонецПроцедуры
-
-Процедура ЗаполнитьСведенияКорректируемогоСФВДеревеДанных(СведенияПоСтарому, СведенияПоНовому, Данные)
-
- ЭлектронноеВзаимодействие.ЗаполнитьЗначениеРеквизитаВДереве(Данные,
- "НомерИсходногоДокумента",
- СведенияПоСтарому.НомерИсходногоДокумента);
- ЭлектронноеВзаимодействие.ЗаполнитьЗначениеРеквизитаВДереве(Данные,
- "ДатаИсходногоДокумента",
- СведенияПоСтарому.ДатаИсходногоДокумента);
- ЭлектронноеВзаимодействие.ЗаполнитьЗначениеРеквизитаВДереве(Данные,
- "ПредставлениеИсходногоДокумента",
- СведенияПоСтарому.ПредставлениеИсходногоДокумента);
- ЭлектронноеВзаимодействие.ЗаполнитьЗначениеРеквизитаВДереве(Данные,
- "НомерИсправленияИсходногоДокумента",
- СведенияПоСтарому.НомерИсправленияИсходногоДокумента);
- ЭлектронноеВзаимодействие.ЗаполнитьЗначениеРеквизитаВДереве(Данные,
- "ДатаИсправленияИсходногоДокумента",
- СведенияПоСтарому.ДатаИсправленияИсходногоДокумента);
-
- ЭлектронноеВзаимодействие.ЗагрузитьТаблицуВДерево(Данные, СведенияПоНовому, "ИсходныеДокументы");
-
-КонецПроцедуры
-
-#КонецОбласти
-
-#КонецОбласти
-
// Установить управляемую блокировку данных регистра сведений объектов учета документов ЭДО.
// Устанавливает блокировку по всем измерениям регистра, если не задан ОбъектУчета или ЭлектронныйДокумент получает их.
//
diff --git a/src/CommonModules/ИнтерфейсАвторизацииИСМПКлиент/Ext/Module.bsl b/src/CommonModules/ИнтерфейсАвторизацииИСМПКлиент/Ext/Module.bsl
index b136faf7f..01f7269e6 100644
--- a/src/CommonModules/ИнтерфейсАвторизацииИСМПКлиент/Ext/Module.bsl
+++ b/src/CommonModules/ИнтерфейсАвторизацииИСМПКлиент/Ext/Module.bsl
@@ -63,13 +63,13 @@
ПродукцияПодлежитОбязательнойОнлайнПроверке = Ложь;
Если ТипЗнч(ПараметрВидПродукции) = Тип("СправочникСсылка.ВидыПродукцииИС") Тогда
ПродукцияПодлежитОбязательнойОнлайнПроверке = ОбщегоНазначенияИСМПКлиентСерверПовтИсп.ПродукцияПодлежитОбязательнойОнлайнПроверкеПередРозничнойПродажей(
- ПараметрВидПродукции, ПараметрыСканирования.ВидОперацииИСМП, ПараметрыСканирования.ТребуетсяПроверкаСредствамиККТ);
+ ПараметрВидПродукции, ПараметрыСканирования.ВидОперацииИСМП, ПараметрыСканирования.ТребуетсяПроверкаСредствамиККТ Или ПараметрыСканирования.ЭтоОблачнаяККТИСМП);
Иначе
Для Каждого ВидПродукции Из ПараметрВидПродукции Цикл
ПродукцияПодлежитОбязательнойОнлайнПроверке = ОбщегоНазначенияИСМПКлиентСерверПовтИсп.ПродукцияПодлежитОбязательнойОнлайнПроверкеПередРозничнойПродажей(
- ВидПродукции, ПараметрыСканирования.ВидОперацииИСМП, ПараметрыСканирования.ТребуетсяПроверкаСредствамиККТ);
+ ВидПродукции, ПараметрыСканирования.ВидОперацииИСМП, ПараметрыСканирования.ТребуетсяПроверкаСредствамиККТ Или ПараметрыСканирования.ЭтоОблачнаяККТИСМП);
Если ПродукцияПодлежитОбязательнойОнлайнПроверке Тогда
Прервать;
КонецЕсли;
diff --git a/src/CommonModules/ИнтерфейсДокументовЭДО/Ext/Module.bsl b/src/CommonModules/ИнтерфейсДокументовЭДО/Ext/Module.bsl
index 190e0d938..a2141a771 100644
--- a/src/CommonModules/ИнтерфейсДокументовЭДО/Ext/Module.bsl
+++ b/src/CommonModules/ИнтерфейсДокументовЭДО/Ext/Module.bsl
@@ -2417,6 +2417,7 @@
ДобавитьОписаниеРаздела(ОписаниеРазделов, "Исправить", НСтр("ru = 'Исправить'"));
ДобавитьОписаниеРаздела(ОписаниеРазделов, "Аннулировать", НСтр("ru = 'Аннулировать'"));
ДобавитьОписаниеРаздела(ОписаниеРазделов, "НаКонтроле", НСтр("ru = 'На контроле'"));
+ ДобавитьОписаниеРаздела(ОписаниеРазделов, "СообщенияВх", НСтр("ru = 'Сообщения'"));
ДобавитьОписаниеРаздела(ОписаниеРазделов, "Исходящие", НСтр("ru = 'Исходящие'"), , ОбщегоНазначения.ЭтоМобильныйКлиент());
ДобавитьОписаниеРаздела(ОписаниеРазделов, "Сформировать", НСтр("ru = 'Создать'"));
@@ -2424,6 +2425,7 @@
ДобавитьОписаниеРаздела(ОписаниеРазделов, "ИсправитьИсх", НСтр("ru = 'Исправить'"));
ДобавитьОписаниеРаздела(ОписаниеРазделов, "АннулироватьИсх", НСтр("ru = 'Аннулировать'"));
ДобавитьОписаниеРаздела(ОписаниеРазделов, "НаКонтролеИсх", НСтр("ru = 'На контроле'"));
+ ДобавитьОписаниеРаздела(ОписаниеРазделов, "СообщенияИсх", НСтр("ru = 'Сообщения'"));
ДобавитьОписаниеРаздела(ОписаниеРазделов, "Ознакомиться", НСтр("ru = 'Ознакомиться'"));
@@ -3419,7 +3421,34 @@
| КонтрольСопоставленияНоменклатурыЭДО.Идентификатор
| ИЗ
| РегистрСведений.КонтрольСопоставленияНоменклатурыЭДО КАК КонтрольСопоставленияНоменклатурыЭДО) КАК ВложенныйЗапрос";
-
+
+ ИначеЕсли Раздел = "СообщенияВх" Тогда
+
+ ТекстЗапроса =
+ "ВЫБРАТЬ РАЗРЕШЕННЫЕ
+ | КОЛИЧЕСТВО(1) КАК _Счетчик
+ |ИЗ
+ | (ВЫБРАТЬ РАЗЛИЧНЫЕ ПЕРВЫЕ 1000
+ | ОсновнаяТаблица.ЭлектронныйДокумент
+ | ИЗ
+ | РегистрСведений.ТекстовыеСообщенияДокументовЭДО КАК ОсновнаяТаблица
+ | ГДЕ
+ | ОсновнаяТаблица.Прочитано = ЛОЖЬ
+ | И ОсновнаяТаблица.ЭлектронныйДокумент ССЫЛКА Документ.ЭлектронныйДокументВходящийЭДО) КАК ВложенныйЗапрос";
+
+ ИначеЕсли Раздел = "СообщенияИсх" Тогда
+
+ ТекстЗапроса =
+ "ВЫБРАТЬ РАЗРЕШЕННЫЕ
+ | КОЛИЧЕСТВО(1) КАК _Счетчик
+ |ИЗ
+ | (ВЫБРАТЬ РАЗЛИЧНЫЕ ПЕРВЫЕ 1000
+ | ОсновнаяТаблица.ЭлектронныйДокумент
+ | ИЗ
+ | РегистрСведений.ТекстовыеСообщенияДокументовЭДО КАК ОсновнаяТаблица
+ | ГДЕ
+ | ОсновнаяТаблица.Прочитано = ЛОЖЬ
+ | И ОсновнаяТаблица.ЭлектронныйДокумент ССЫЛКА Документ.ЭлектронныйДокументИсходящийЭДО) КАК ВложенныйЗапрос";
Иначе
ВызватьИсключение ОбщегоНазначенияБЭД.СформироватьТекстИсключения(
@@ -4560,6 +4589,7 @@
// * УчетныеЗаписиЭДОБезПринятыхУсловийСервиса - см. УчетныеЗаписиЭДО.УчетныеЗаписиЭДОБезПринятыхУсловийСервиса
// * ИспользуетсяОтправкаПолучениеСОтборомПоОрганизации - Булево, Неопределено -
// * ДанныеОтбораНастройкиОтправкиПолучения - см. ДанныеОтбораНастройкиОтправкиПолучения
+// * ВключатьАвтоматическоеПолучениеЭДО - Булево
Функция ПараметрыОтправкиПолученияДокументовЭДО(УчетныеЗаписиОбмена = Неопределено) Экспорт
ПараметрыВыполненияДействий = ПараметрыВыполненияДействийПриОтправкеПолученииДокументовЭДО();
@@ -4577,6 +4607,10 @@
ПараметрыОтправкиПолучения.УчетныеЗаписиЭДОБезПринятыхУсловийСервиса =
УчетныеЗаписиЭДО.УчетныеЗаписиЭДОБезПринятыхУсловийСервиса(ИдентификаторыОрганизаций);
+ ВключатьАвтоматическоеПолучениеЭДО = АвтоматическоеПолучениеЭДО.ВключатьАвтоматическиДляУчетныхЗаписейЭДО(
+ ПараметрыВыполненияДействий.ОбъектыДействий.ИдентификаторыОрганизаций);
+ ПараметрыОтправкиПолучения.Вставить("ВключатьАвтоматическоеПолучениеЭДО", ВключатьАвтоматическоеПолучениеЭДО);
+
Возврат ПараметрыОтправкиПолучения;
КонецФункции
diff --git a/src/CommonModules/ИнтерфейсДокументовЭДОВызовСервера/Ext/Module.bsl b/src/CommonModules/ИнтерфейсДокументовЭДОВызовСервера/Ext/Module.bsl
index aefcd7d39..d6f342c14 100644
--- a/src/CommonModules/ИнтерфейсДокументовЭДОВызовСервера/Ext/Module.bsl
+++ b/src/CommonModules/ИнтерфейсДокументовЭДОВызовСервера/Ext/Module.bsl
@@ -456,13 +456,12 @@
//
Функция ИспользуетсяОтправкаПолучениеСОтборомПоОрганизации() Экспорт
- Возврат ОбщегоНазначенияВызовСервера.ХранилищеОбщихНастроекЗагрузить(
+ Возврат ОбщегоНазначения.ХранилищеОбщихНастроекЗагрузить(
ИнтерфейсДокументовЭДОКлиентСервер.КлючОбъектаНастроекИнтерфейсаЭДО(),
"ИспользуетсяОтправкаПолучениеСОтборомПоОрганизации", Неопределено);
КонецФункции
-
// Установить отправку получение с отбором по организации.
//
// Параметры:
@@ -470,7 +469,7 @@
//
Процедура УстановитьОтправкуПолучениеСОтборомПоОрганизации(Включить) Экспорт
- ОбщегоНазначенияВызовСервера.ХранилищеОбщихНастроекСохранить(
+ ОбщегоНазначения.ХранилищеОбщихНастроекСохранить(
ИнтерфейсДокументовЭДОКлиентСервер.КлючОбъектаНастроекИнтерфейсаЭДО(),
"ИспользуетсяОтправкаПолучениеСОтборомПоОрганизации", Включить);
diff --git a/src/CommonModules/ИнтерфейсДокументовЭДОКлиент/Ext/Module.bsl b/src/CommonModules/ИнтерфейсДокументовЭДОКлиент/Ext/Module.bsl
index 878d86e9e..a3089e942 100644
--- a/src/CommonModules/ИнтерфейсДокументовЭДОКлиент/Ext/Module.bsl
+++ b/src/CommonModules/ИнтерфейсДокументовЭДОКлиент/Ext/Module.bsl
@@ -1482,6 +1482,12 @@
Возврат "ИзменениеНастроекТекущихДелЭДО";
КонецФункции
+// Возвращаемое значение:
+// Строка
+Функция ИмяСобытияИзменениеДанныхСопоставленияНоменклатурыДокумента() Экспорт
+ Возврат "ОбновитьСопоставлениеНоменклатурыДокумента";
+КонецФункции
+
// Возвращаемое значение:
// Структура:
// * ОбъектыУчета - Массив Из ОпределяемыйТип.ОснованияЭлектронныхДокументовЭДО
@@ -1552,7 +1558,7 @@
КонецПроцедуры
Процедура ЗаписатьНастройкуНеПоказыватьОкноПредложенияОтправкиВФормализованномВиде() Экспорт
- ОбщегоНазначенияВызовСервера.ХранилищеОбщихНастроекСохранить(
+ ОбщегоНазначенияКлиент.ХранилищеОбщихНастроекСохранить(
"НастройкиБольшеНеПоказывать", "ПоказыватьОкноПредложенияОтправкиВФормализованномВиде", Ложь);
КонецПроцедуры
@@ -1742,7 +1748,7 @@
Возврат;
КонецЕсли;
- Если РезультатЗагрузки.Предупреждения.Количество() > 0 Тогда
+ Если РезультатЗагрузки.Предупреждения.Количество() > 0 И Не ЗначениеЗаполнено(РезультатЗагрузки.Ошибка) Тогда
ПараметрыФормы = Новый Структура("ПараметрыОшибки", РезультатЗагрузки.Предупреждения);
ОповещениеОЗавершении = Новый ОписаниеОповещения(
"ЗагрузитьФормализованныйДокументПоДаннымФайлаXMLПринудительно", ЭтотОбъект, ДополнительныеПараметры);
@@ -1879,6 +1885,18 @@
КонецЕсли;
КонецПроцедуры
+// Параметры:
+// Комментарий - Строка
+Процедура ПоказатьКомментарийКСостояниюДокумента(Комментарий) Экспорт
+
+ Параметры = ОбщегоНазначенияБЭДКлиент.ПараметрыВводаСтроки();
+ Параметры.ЗаголовокФормы = НСтр("ru = 'Комментарий'");
+ Параметры.Строка = Комментарий;
+ Параметры.Многострочность = Истина;
+ ОбщегоНазначенияБЭДКлиент.ПоказатьВводСтрокиБЭД(Новый ОписаниеОповещения(), Параметры);
+
+КонецПроцедуры
+
#КонецОбласти // ПросмотрЭлектронногоДокумента
#Область ФормированиеДокументов
@@ -1991,8 +2009,8 @@
Если ФормаРучногоФормированияОтветногоТитула = Неопределено Тогда
ФормаРучногоФормированияОтветногоТитула =
ИнтерфейсДокументовЭДОКлиентСервер.ФормыРучногоФормированияТитула().ОбщаяФорма;
+ ПриОпределенииОткрываемойФормыРучногоФормированияОтветногоТитула(ФормаРучногоФормированияОтветногоТитула);
КонецЕсли;
- ПриОпределенииОткрываемойФормыРучногоФормированияОтветногоТитула(ФормаРучногоФормированияОтветногоТитула);
ОткрытьФорму(ФормаРучногоФормированияОтветногоТитула, ПараметрыФормы, Параметры.ФормаВладелец,,,,,
РежимОткрытияОкнаФормы.БлокироватьОкноВладельца);
@@ -2365,6 +2383,8 @@
КонецЕсли;
+ ОповеститьОбИзмененииДанныхСопоставленияНоменклатурыПослеВыполненияДействийПоЭДО(Результат, ЭлектронныеДокументы);
+
Если ПараметрыОповещения <> Неопределено
И ПараметрыОповещения.Свойство("ОповещениеУспешногоЗавершения") Тогда
@@ -2388,19 +2408,17 @@
ПараметрыОтправкиПолучения = ИнтерфейсДокументовЭДОВызовСервера.ПараметрыОтправкиПолученияДокументовЭДО(УчетныеЗаписиОбмена);
- Если ОповещениеОЗавершении = Неопределено Тогда
- ОповещениеОЗавершении = Новый ОписаниеОповещения;
+ Контекст = НовыйКонтекстОтправкиПолученияДокументовЭДО();
+ Контекст.ПараметрыОтправкиПолучения = ПараметрыОтправкиПолучения;
+ Контекст.УчетныеЗаписиОбмена = УчетныеЗаписиОбмена;
+ Если ОповещениеОЗавершении <> Неопределено Тогда
+ Контекст.ОповещениеОЗавершении = ОповещениеОЗавершении;
КонецЕсли;
Если ЗначениеЗаполнено(ПараметрыОтправкиПолучения.УчетныеЗаписиЭДОБезПринятыхУсловийСервиса) Тогда
- КонтекстПринятияУсловий = Новый Структура;
- КонтекстПринятияУсловий.Вставить("ОповещениеОЗавершении", ОповещениеОЗавершении);
- КонтекстПринятияУсловий.Вставить("ПараметрыОтправкиПолучения", ПараметрыОтправкиПолучения);
- КонтекстПринятияУсловий.Вставить("УчетныеЗаписиОбмена", УчетныеЗаписиОбмена);
-
Оповещение = Новый ОписаниеОповещения("ОтправитьПолучитьДокументыЭДОПослеПринятияУсловийСервиса",
- ИнтерфейсДокументовЭДОКлиент, КонтекстПринятияУсловий);
+ ИнтерфейсДокументовЭДОКлиент, Контекст);
ПараметрыФормы = Новый Структура("УчетныеЗаписиЭДО",
ПараметрыОтправкиПолучения.УчетныеЗаписиЭДОБезПринятыхУсловийСервиса);
@@ -2410,8 +2428,7 @@
Возврат;
КонецЕсли;
- ПодготовитьОтборУчетныхЗаписейДляОтправкиПолученияДокументовЭДО(ОповещениеОЗавершении,
- ПараметрыОтправкиПолучения, УчетныеЗаписиОбмена);
+ ПодготовитьОтборУчетныхЗаписейДляОтправкиПолученияДокументовЭДО(Контекст);
КонецПроцедуры
@@ -2420,8 +2437,32 @@
// * Итог - см. ИнтерфейсДокументовЭДОКлиентСервер.НовыйИтогВыполненияДействийПоЭДО
// * ОшибкиФормирования - Массив из Структура
// * КонтекстДиагностики - см. ОбработкаНеисправностейБЭДКлиент.НовыйКонтекстДиагностики
-// ОповещениеОЗавершении - см. НачатьОтправкуПолучениеДокументовЭДО.ОповещениеОЗавершении
-Процедура ЗавершитьОтправкуПолучениеДокументовЭДО(Результат, ОповещениеОЗавершении) Экспорт
+// КонтекстОтправкиПолучения - см. НовыйКонтекстОтправкиПолученияДокументовЭДО
+Процедура ЗавершитьОтправкуПолучениеДокументовЭДО(Результат, КонтекстОтправкиПолучения) Экспорт
+
+ КонтекстОтправкиПолучения.Результат = Результат;
+
+ Если КонтекстОтправкиПолучения.ПараметрыОтправкиПолучения.ВключатьАвтоматическоеПолучениеЭДО Тогда
+
+ Оповещение = Новый ОписаниеОповещения(
+ "ЗавершитьОтправкуПолучениеПослеВключенияАвтоматическогоПолученияЭДО",
+ ЭтотОбъект, КонтекстОтправкиПолучения);
+
+ АвтоматическоеПолучениеЭДОКлиент.ВключитьПослеОтправкиПолученияДокументовЭДО(
+ Оповещение, Результат.ПаролиСертификатов);
+
+ Иначе
+
+ ПослеОтправкиПолученияДокументовЭДО(Результат, КонтекстОтправкиПолучения.ОповещениеОЗавершении);
+
+ КонецЕсли;
+
+КонецПроцедуры
+
+// Параметры:
+// Результат - см. ЗавершитьОтправкуПолучениеДокументовЭДО.Результат
+// ОповещениеОЗавершении - см. ОтправитьПолучитьДокументыЭДО.ОповещениеОЗавершении
+Процедура ПослеОтправкиПолученияДокументовЭДО(Результат, ОповещениеОЗавершении) Экспорт
ПоказатьРезультатыОтправкиПолученияДокументовЭДО(Результат.Итог, Результат.КонтекстДиагностики);
@@ -3393,6 +3434,27 @@
КонецПроцедуры
+// Параметры:
+// Результат - Структура:
+// * Итог - см. ИнтерфейсДокументовЭДОКлиентСервер.НовыйИтогВыполненияДействийПоЭДО
+// * ОшибкиФормирования - Массив из Структура
+// * КонтекстДиагностики - см. ОбработкаНеисправностейБЭДКлиент.НовыйКонтекстДиагностики
+// ЭлектронныеДокументы - Массив из ДокументСсылка.ЭлектронныйДокументВходящийЭДО,ДокументСсылка.ЭлектронныйДокументИсходящийЭДО
+Процедура ОповеститьОбИзмененииДанныхСопоставленияНоменклатурыПослеВыполненияДействийПоЭДО(Результат,
+ ЭлектронныеДокументы)
+
+ ДействиеОтклонения = ПредопределенноеЗначение("Перечисление.ДействияПоЭДО.Отклонить");
+ ДействиеПринудительногоЗакрытия = ПредопределенноеЗначение("Перечисление.ДействияПоЭДО.ЗакрытьПринудительно");
+ ДействиеВозвращенияВРаботу = ПредопределенноеЗначение("Перечисление.ДействияПоЭДО.ВернутьВРаботу");
+
+ Если Результат.Итог.ОбработаноПоДействиям[ДействиеОтклонения] = Истина
+ Или Результат.Итог.ОбработаноПоДействиям[ДействиеПринудительногоЗакрытия] = Истина
+ Или Результат.Итог.ОбработаноПоДействиям[ДействиеВозвращенияВРаботу] = Истина Тогда
+ Оповестить(ИмяСобытияИзменениеДанныхСопоставленияНоменклатурыДокумента(), ЭлектронныеДокументы);
+ КонецЕсли;
+
+КонецПроцедуры
+
#КонецОбласти
// Открывает электронный документ по параметрам просмотра.
@@ -4350,6 +4412,23 @@
#Область ОтправитьИПолучить
+// Возвращаемое значение:
+// Структура - Новый контекст отправки получения документов ЭДО:
+// * ОповещениеОЗавершении - см. ОтправитьПолучитьДокументыЭДО.ОповещениеОЗавершении
+// * УчетныеЗаписиОбмена - см. ОтправитьПолучитьДокументыЭДО.УчетныеЗаписиОбмена
+// * ПараметрыОтправкиПолучения - см. ИнтерфейсДокументовЭДОВызовСервера.ПараметрыОтправкиПолученияДокументовЭДО
+// * Результат - см. ЗавершитьОтправкуПолучениеДокументовЭДО.Результат
+Функция НовыйКонтекстОтправкиПолученияДокументовЭДО()
+
+ Контекст = Новый Структура;
+ Контекст.Вставить("ОповещениеОЗавершении", Новый ОписаниеОповещения);
+ Контекст.Вставить("УчетныеЗаписиОбмена", Неопределено);
+ Контекст.Вставить("ПараметрыОтправкиПолучения", Новый Структура);
+ Контекст.Вставить("Результат", Новый Структура);
+ Возврат Контекст;
+
+КонецФункции
+
// Показывает условия использования сервиса 1С-ЭДО.
//
// Параметры:
@@ -4368,40 +4447,37 @@
// Параметры:
// УсловияПриняты - Булево
-// КонтекстПринятияУсловий - Структура:
-// * ОповещениеОЗавершении - ОписаниеОповещения
-// * ПараметрыОтправкиПолучения - см. ИнтерфейсДокументовЭДО.ПараметрыОтправкиПолученияДокументовЭДО
-// * УчетныеЗаписиОбмена - Массив из Строка - идентификаторы оператора электронного документооборота
-Процедура ОтправитьПолучитьДокументыЭДОПослеПринятияУсловийСервиса(УсловияПриняты, КонтекстПринятияУсловий) Экспорт
+// КонтекстОтправкиПолучения - см. НовыйКонтекстОтправкиПолученияДокументовЭДО
+Процедура ОтправитьПолучитьДокументыЭДОПослеПринятияУсловийСервиса(УсловияПриняты, КонтекстОтправкиПолучения) Экспорт
Если УсловияПриняты <> Истина Тогда
- ВыполнитьОбработкуОповещения(КонтекстПринятияУсловий.ОповещениеОЗавершении);
+ ВыполнитьОбработкуОповещения(КонтекстОтправкиПолучения.ОповещениеОЗавершении);
Возврат;
КонецЕсли;
- ПодготовитьОтборУчетныхЗаписейДляОтправкиПолученияДокументовЭДО(КонтекстПринятияУсловий.ОповещениеОЗавершении,
- КонтекстПринятияУсловий.ПараметрыОтправкиПолучения, КонтекстПринятияУсловий.УчетныеЗаписиОбмена);
+ ПодготовитьОтборУчетныхЗаписейДляОтправкиПолученияДокументовЭДО(КонтекстОтправкиПолучения);
КонецПроцедуры
// Параметры:
-// ОповещениеОЗавершении - см. ОтправитьПолучитьДокументыЭДО.ОповещениеОЗавершении
-// ПараметрыВыполненияДействий - Структура - Параметры выполнения действий:
-Процедура НачатьОтправкуПолучениеДокументовЭДО(ОповещениеОЗавершении, ПараметрыВыполненияДействий)
+// КонтекстОтправкиПолучения - см. НовыйКонтекстОтправкиПолученияДокументовЭДО
+Процедура НачатьОтправкуПолучениеДокументовЭДО(КонтекстОтправкиПолучения)
+
+ ПараметрыВыполненияДействий = КонтекстОтправкиПолучения.ПараметрыОтправкиПолучения.ПараметрыВыполненияДействий;
Оповещение = Новый ОписаниеОповещения("ЗавершитьОтправкуПолучениеДокументовЭДО",
- ИнтерфейсДокументовЭДОКлиент, ОповещениеОЗавершении);
+ ИнтерфейсДокументовЭДОКлиент, КонтекстОтправкиПолучения);
ЭлектронныеДокументыЭДОКлиент.НачатьВыполнениеДействийПоЭДО(Оповещение, ПараметрыВыполненияДействий);
КонецПроцедуры
// Параметры:
-// ОповещениеОЗавершении - см. ОтправитьПолучитьДокументыЭДО.ОповещениеОЗавершении
-// ПараметрыОтправкиПолучения - см. ИнтерфейсДокументовЭДО.ПараметрыОтправкиПолученияДокументовЭДО
-// УчетныеЗаписиОбмена - Массив из Строка - идентификаторы оператора электронного документооборота
-Асинх Процедура ПодготовитьОтборУчетныхЗаписейДляОтправкиПолученияДокументовЭДО(ОповещениеОЗавершении,
- ПараметрыОтправкиПолучения, УчетныеЗаписиОбмена)
+// КонтекстОтправкиПолучения - см. НовыйКонтекстОтправкиПолученияДокументовЭДО
+Асинх Процедура ПодготовитьОтборУчетныхЗаписейДляОтправкиПолученияДокументовЭДО(КонтекстОтправкиПолучения)
+
+ УчетныеЗаписиОбмена = КонтекстОтправкиПолучения.УчетныеЗаписиОбмена;
+ ПараметрыОтправкиПолучения = КонтекстОтправкиПолучения.ПараметрыОтправкиПолучения;
ДоступныеУчетныеЗаписи = ПараметрыОтправкиПолучения.ПараметрыВыполненияДействий.ОбъектыДействий.ИдентификаторыОрганизаций;
КоличествоДоступныхУчетныхЗаписей = ДоступныеУчетныеЗаписи.Количество();
@@ -4410,7 +4486,7 @@
КонецЕсли;
Если ПараметрыОтправкиПолучения.ИспользуетсяОтправкаПолучениеСОтборомПоОрганизации = Ложь
Или КоличествоДоступныхУчетныхЗаписей < 2 Тогда
- НачатьОтправкуПолучениеДокументовЭДО(ОповещениеОЗавершении, ПараметрыОтправкиПолучения.ПараметрыВыполненияДействий);
+ НачатьОтправкуПолучениеДокументовЭДО(КонтекстОтправкиПолучения);
Возврат;
ИначеЕсли ПараметрыОтправкиПолучения.ИспользуетсяОтправкаПолучениеСОтборомПоОрганизации = Неопределено Тогда
ТекстВопроса = НСтр("ru = 'Теперь можно настроить программу так, чтобы получение и
@@ -4432,7 +4508,7 @@
Если Ответ = КодВозвратаДиалога.Нет Тогда
ИнтерфейсДокументовЭДОВызовСервера.УстановитьОтправкуПолучениеСОтборомПоОрганизации(Ложь);
Оповестить("УстановитьОтправкуПолучениеСОтборомПоОрганизации", Ложь);
- НачатьОтправкуПолучениеДокументовЭДО(ОповещениеОЗавершении, ПараметрыОтправкиПолучения.ПараметрыВыполненияДействий);
+ НачатьОтправкуПолучениеДокументовЭДО(КонтекстОтправкиПолучения);
Возврат;
КонецЕсли;
КонецЕсли;
@@ -4443,26 +4519,23 @@
ДанныеУчетныхЗаписей.Добавить(ДанныеОрганизации.Значение);
КонецЦикла;
Если ДанныеУчетныхЗаписей.Количество() = 0 Тогда
- НачатьОтправкуПолучениеДокументовЭДО(ОповещениеОЗавершении, ПараметрыОтправкиПолучения.ПараметрыВыполненияДействий);
+ НачатьОтправкуПолучениеДокументовЭДО(КонтекстОтправкиПолучения);
ИначеЕсли ДанныеУчетныхЗаписей.Количество() = 1 И ДанныеУчетныхЗаписей[0].Количество() = 1 Тогда
УчетныеЗаписиОбмена = Новый Массив;
МассивУчетныхЗаписей = ДанныеУчетныхЗаписей[0];
УчетныеЗаписиОбмена.Добавить(МассивУчетныхЗаписей[0].ИдентификаторЭДО);
ПараметрыОтправкиПолучения.ПараметрыВыполненияДействий.ОбъектыДействий.ИдентификаторыОрганизаций = УчетныеЗаписиОбмена;
- НачатьОтправкуПолучениеДокументовЭДО(ОповещениеОЗавершении, ПараметрыОтправкиПолучения.ПараметрыВыполненияДействий);
+ НачатьОтправкуПолучениеДокументовЭДО(КонтекстОтправкиПолучения);
Иначе
- ДополнительныеПараметры = Новый Структура;
- ДополнительныеПараметры.Вставить("ОповещениеОЗавершении", ОповещениеОЗавершении);
- ДополнительныеПараметры.Вставить("ПараметрыВыполненияДействий", ПараметрыОтправкиПолучения.ПараметрыВыполненияДействий);
ОписаниеВыбора = Новый ОписаниеОповещения("ОтправитьПолучитьДокументыЭДОПослеОтбораУчетныхЗаписей",
- ЭтотОбъект, ДополнительныеПараметры);
+ ЭтотОбъект, КонтекстОтправкиПолучения);
ПараметрыФормы = Новый Структура;
ПараметрыФормы.Вставить("ДанныеУчетныхЗаписей", ПараметрыОтправкиПолучения.ДанныеОтбораНастройкиОтправкиПолучения);
ОткрытьФорму("Обработка.ИнтерфейсДокументовЭДО.Форма.НастройкиОтправкиПолучения",ПараметрыФормы , ЭтотОбъект,,,, ОписаниеВыбора);
КонецЕсли;
Возврат;
Иначе
- НачатьОтправкуПолучениеДокументовЭДО(ОповещениеОЗавершении, ПараметрыОтправкиПолучения.ПараметрыВыполненияДействий);
+ НачатьОтправкуПолучениеДокументовЭДО(КонтекстОтправкиПолучения);
КонецЕсли;
КонецПроцедуры
@@ -4472,18 +4545,16 @@
// Параметры:
// Результат - Структура:
// *УчетныеЗаписиОбмена - Массив из Строка - учетные записи ЭДО
-// ДополнительныеПараметры - Структура:
-// *ОповещениеОЗавершении - см. ОтправитьПолучитьДокументыЭДО
-// *ПараметрыВыполненияДействий - См. ИнтерфейсДокументовЭДОКлиентСервер.НовыеПараметрыВыполненияДействийПоЭДО
-Процедура ОтправитьПолучитьДокументыЭДОПослеОтбораУчетныхЗаписей(Результат, ДополнительныеПараметры) Экспорт
+// КонтекстОтправкиПолучения - см. НовыйКонтекстОтправкиПолученияДокументовЭДО
+Процедура ОтправитьПолучитьДокументыЭДОПослеОтбораУчетныхЗаписей(Результат, КонтекстОтправкиПолучения) Экспорт
Если Результат = Неопределено Тогда
- ВыполнитьОбработкуОповещения(ДополнительныеПараметры.ОповещениеОЗавершении,
+ ВыполнитьОбработкуОповещения(КонтекстОтправкиПолучения.ОповещениеОЗавершении,
ИнтерфейсДокументовЭДОКлиентСервер.НовыйИтогВыполненияДействийПоЭДО());
Возврат;
КонецЕсли;
- ДополнительныеПараметры.ПараметрыВыполненияДействий.ОбъектыДействий.ИдентификаторыОрганизаций = Результат.УчетныеЗаписиОбмена;
- НачатьОтправкуПолучениеДокументовЭДО(ДополнительныеПараметры.ОповещениеОЗавершении,
- ДополнительныеПараметры.ПараметрыВыполненияДействий);
+ КонтекстОтправкиПолучения.ПараметрыОтправкиПолучения.ПараметрыВыполненияДействий.ОбъектыДействий.ИдентификаторыОрганизаций =
+ Результат.УчетныеЗаписиОбмена;
+ НачатьОтправкуПолучениеДокументовЭДО(КонтекстОтправкиПолучения);
КонецПроцедуры
// Параметры:
@@ -4629,6 +4700,22 @@
КонецПроцедуры
+// Параметры:
+// РезультатВключения - см. АвтоматическоеПолучениеЭДОКлиент.ВключитьПослеОтправкиПолученияДокументовЭДОЗавершение
+// КонтекстОтправкиПолучения - см. НовыйКонтекстОтправкиПолученияДокументовЭДО
+Процедура ЗавершитьОтправкуПолучениеПослеВключенияАвтоматическогоПолученияЭДО(РезультатВключения, КонтекстОтправкиПолучения) Экспорт
+
+ Если ЗначениеЗаполнено(РезультатВключения) Тогда
+ ОбработкаНеисправностейБЭДКлиентСервер.ДополнитьКонтекстДиагностики(
+ КонтекстОтправкиПолучения.Результат.КонтекстДиагностики,
+ РезультатВключения.КонтекстДиагностики);
+ КонецЕсли;
+
+ ПослеОтправкиПолученияДокументовЭДО(
+ КонтекстОтправкиПолучения.Результат, КонтекстОтправкиПолучения.ОповещениеОЗавершении);
+
+КонецПроцедуры
+
#КонецОбласти
// Открыть файл, если нужно, сделав визуализацию ЭП. Получение файла с визуализацией выполняется в фоновом задании.
diff --git a/src/CommonModules/ИнтерфейсИСМП/Ext/Module.bsl b/src/CommonModules/ИнтерфейсИСМП/Ext/Module.bsl
index da1c6dd9c..4a061b095 100644
--- a/src/CommonModules/ИнтерфейсИСМП/Ext/Module.bsl
+++ b/src/CommonModules/ИнтерфейсИСМП/Ext/Module.bsl
@@ -304,8 +304,6 @@
ВозвращаемоеЗначение.РезультатОтправкиЗапроса = РезультатОтправкиЗапроса;
- НастройкиРазбора = РазборКодаМаркировкиИССлужебный.НастройкиРазбораКодаМаркировки(, Ложь);
-
Если РезультатОтправкиЗапроса.ОтветПолучен Тогда
Если РезультатОтправкиЗапроса.КодСостояния = 200 Тогда
@@ -622,6 +620,11 @@
Результат = ДанныеОбработки["result"];
+ Эталон = Новый Структура;
+ Эталон.Вставить("Источник", Неопределено);
+ Эталон.Вставить("Результат", Неопределено);
+ Эталон.Вставить("КлючиСравнения", ИнтерфейсИСМПОбщегоНазначения.КлючиХешаПараметровКодаМаркировкиМОТП());
+
НомерСтроки = 1;
КоличествоСтрок = Результат.Количество();
Для Каждого СтрокаДанных Из Результат Цикл
@@ -632,7 +635,7 @@
ВозвращаемоеЗначение.ДанныеКодовМаркировки.Вставить(
СтрокаКодаМаркировки,
- ИнтерфейсИСМПОбщегоНазначения.ПараметрыКодаМаркировкиМОТП(СтрокаДанных));
+ ИнтерфейсИСМПОбщегоНазначения.ПараметрыКодаМаркировкиМОТП(СтрокаДанных, , , Эталон));
Если НомерСтроки = КоличествоСтрок Тогда
ПараметрыЗапроса.ПараметрыНавигации.ДатаЭмиссии = СтрокаДанных["emissionDate"];
@@ -1893,4 +1896,4 @@
КонецФункции
-#КонецОбласти
\ No newline at end of file
+#КонецОбласти
diff --git a/src/CommonModules/ИнтерфейсИСМПОбщегоНазначения/Ext/Module.bsl b/src/CommonModules/ИнтерфейсИСМПОбщегоНазначения/Ext/Module.bsl
index 9b30abf52..844b15e75 100644
--- a/src/CommonModules/ИнтерфейсИСМПОбщегоНазначения/Ext/Module.bsl
+++ b/src/CommonModules/ИнтерфейсИСМПОбщегоНазначения/Ext/Module.bsl
@@ -654,7 +654,7 @@
// Параметры:
// Организация - ОпределяемыйТип.Организация - Организация
// ПараметрыОтбора - Структура из КлючИЗначение:
-// * ИННУчастника - Строка - необязательный отбор по ИНН участника оборота
+// * ИННУчастника - Массив Из Строка, Строка - необязательный отбор по ИНН участника оборота
// * КППУчастника - Строка - необязательный отбор по КПП участника оборота
// * КодФИАС - Строка - необязательный отбор по коду ФИАС конкретного проверяемого МОДа
// * ВидыПродукции - Массив из СправочникСсылка.ВидыПродукцииИС
@@ -689,8 +689,16 @@
Если ПараметрыОтбора <> Неопределено Тогда
- Если ПараметрыОтбора.Свойство("ИННУчастника") И ЗначениеЗаполнено(ПараметрыОтбора.ИННУчастника) Тогда
- ПараметрыЗапроса.Добавить(СтрШаблон("inns=%1", ПараметрыОтбора.ИННУчастника));
+ Если ПараметрыОтбора.Свойство("ИННУчастника") Тогда
+ Если ТипЗнч(ПараметрыОтбора.ИННУчастника) = Тип("Массив") Тогда
+ Для каждого СтрокаИНН Из ПараметрыОтбора.ИННУчастника Цикл
+ ПараметрыЗапроса.Добавить(СтрШаблон("inns=%1", СтрокаИНН));
+ КонецЦикла;
+ Иначе
+ Если ЗначениеЗаполнено(ПараметрыОтбора.ИННУчастника) Тогда
+ ПараметрыЗапроса.Добавить(СтрШаблон("inns=%1", ПараметрыОтбора.ИННУчастника));
+ КонецЕсли;
+ КонецЕсли;
КонецЕсли;
Если ПараметрыОтбора.Свойство("КППУчастника") И ЗначениеЗаполнено(ПараметрыОтбора.КППУчастника) Тогда
@@ -793,6 +801,9 @@
СтрокаРезультат.Вставить("КодФИАС", ЭлементДанных.Получить("fiasId"));
СтрокаРезультат.Вставить("Адрес", ЭлементДанных.Получить("address"));
СтрокаРезультат.Вставить("ПредставлениеВидыПродукции", СтрСоединить(МассивВидовПродукции, ", "));
+ СтрокаРезультат.Вставить("ИНН", ЭлементДанных.Получить("inn"));
+ СтрокаРезультат.Вставить("КПП", ЭлементДанных.Получить("kpp"));
+ СтрокаРезультат.Вставить("ТоварныеГруппы", ВидыПродукцииМОД);
ВозвращаемоеЗначение.МестаОсуществленияДеятельности.Добавить(СтрокаРезультат);
@@ -830,26 +841,84 @@
КонецФункции
-// Возвращает структуру данных кода маркировки.
+// Возвращает массив ключей данных кода маркировки для вычисления хеша кэша.
+// Исключаемые ключи: cis, requestedCis, sgtin.
+//
+// Возвращаемое значение:
+// Массив Из Строка - ключи в фиксированном порядке.
+//
+Функция КлючиХешаПараметровКодаМаркировкиМОТП() Экспорт
+
+ Ключи = Новый Массив;
+ Ключи.Добавить("tnVedEaes");
+ Ключи.Добавить("tnVedEaesGroup");
+ Ключи.Добавить("batchNumber");
+ Ключи.Добавить("partyNumber");
+ Ключи.Добавить("productGroup");
+ Ключи.Добавить("groupIds");
+ Ключи.Добавить("status");
+ Ключи.Добавить("statusEx");
+ Ключи.Добавить("valid");
+ Ключи.Добавить("found");
+ Ключи.Добавить("verified");
+ Ключи.Добавить("utilised");
+ Ключи.Добавить("realizable");
+ Ключи.Добавить("sold");
+ Ключи.Добавить("packageType");
+ Ключи.Добавить("generalPackageType");
+ Ключи.Добавить("ownerInn");
+ Ключи.Добавить("isOwner");
+ Ключи.Добавить("isTracking");
+ Ключи.Добавить("gtin");
+ Ключи.Добавить("lastDocId");
+ Ключи.Добавить("producerInn");
+ Ключи.Добавить("productName");
+ Ключи.Добавить("producerName");
+ Ключи.Добавить("prVetDocument");
+ Ключи.Добавить("grayZone");
+ Ключи.Добавить("innerUnitCount");
+ Ключи.Добавить("maxRetailPrice");
+ Ключи.Добавить("mrp");
+ Ключи.Добавить("expirationDate");
+ Ключи.Добавить("expireDate");
+ Ключи.Добавить("emissionDate");
+ Ключи.Добавить("emissionType");
+ Ключи.Добавить("producedDate");
+ Ключи.Добавить("productionDate");
+ Ключи.Добавить("introducedDate");
+ Ключи.Добавить("applicationDate");
+ Ключи.Добавить("connectDate");
+ Ключи.Добавить("partialSaleInfo");
+ Ключи.Добавить("parent");
+ Ключи.Добавить("isBlocked");
+ Ключи.Добавить("ogvs");
+ Ключи.Добавить("certDoc");
+ Ключи.Добавить("certDocRequirementDetails");
+ //Ключи.Добавить("child");
+
+ Возврат Ключи;
+
+КонецФункции
+
+// Возвращает параметры кода маркировки из данных ГИС МТ.
+// Выполняет разбор кода маркировки и заполнение параметров, используя кеш для оптимизации
+// повторного разбора одинаковых кодов.
+//
// Параметры:
-// ЭлементДанных - Соответствие из КлючИЗначение, Структура, Неопределено - Данные ГИС МТ
+// ЭлементДанных - Соответствие, КлючИЗначение, Структура, Неопределено - Данные ГИС МТ.
// ВидПродукции - СправочникСсылка.ВидыПродукцииИС, Неопределено - Вид продукции.
-// ДополнительныеПараметры - Структура:
+// ДополнительныеПараметры - Структура - Дополнительные параметры:
// * НастройкиРазбора - см. РазборКодаМаркировкиИССлужебный.НастройкиРазбораКодаМаркировки.
-// * Организация - ОпределяемыйТип.Организация
-// * КешОрганизаций - Соответствие из КлючИЗначение - кеш для получения ИНН организаций-владельцев кода:
-// ** Ключ - ОпределяемыйТип.Организация - организация
-// ** Значение - Строка - ИНН организации
+// * Организация - ОпределяемыйТип.Организация.
+// * КешОрганизаций - Соответствие из КлючИЗначение - Кеш для получения ИНН организаций-владельцев кода.
+// Эталон - Структура, Неопределено - Кэш данных кода маркировки для оптимизации повторного разбора:
+// * Источник - Соответствие, Структура - Исходные данные кода маркировки.
+// * Результат - см. ИнициализироватьПараметрыКодаМаркировкиМОТП - Результат предыдущего разбора.
+// * КлючиСравнения - Массив из Строка - Ключи для сравнения данных (см. КлючиХешаПараметровКодаМаркировкиМОТП).
//
// Возвращаемое значение:
-// См. ИнициализироватьПараметрыКодаМаркировкиМОТП.
-Функция ПараметрыКодаМаркировкиМОТП(ЭлементДанных = Неопределено, ВидПродукции = Неопределено, ДополнительныеПараметры = Неопределено) Экспорт
-
- ПараметрыКодаМаркировки = ИнициализироватьПараметрыКодаМаркировкиМОТП();
-
- Если ЭлементДанных = Неопределено Тогда
- Возврат ПараметрыКодаМаркировки;
- КонецЕсли;
+// Структура - см. ИнициализироватьПараметрыКодаМаркировкиМОТП.
+Функция ПараметрыКодаМаркировкиМОТП(ЭлементДанных = Неопределено, ВидПродукции = Неопределено, ДополнительныеПараметры = Неопределено, Эталон = Неопределено) Экспорт
ТипЭлементаДанных = ТипЗнч(ЭлементДанных);
Если ТипЭлементаДанных = Тип("Соответствие") Тогда
@@ -861,6 +930,38 @@
ОбщегоНазначенияКлиентСервер.ДополнитьСоответствие(ИсточникДанных, ЭлементДанных);
КонецЕсли;
+ Если ИсточникДанных <> Неопределено Тогда
+ ВложенныеЭлементы = ИсточникДанных["child"];
+ КонецЕсли;
+
+ Если Эталон <> Неопределено
+ И Эталон.Результат <> Неопределено
+ И ВложенныеЭлементы <> Неопределено
+ И ВложенныеЭлементы.Количество() = 0 Тогда
+
+ Если Эталон.Свойство("КлючиСравнения")
+ И Эталон.КлючиСравнения <> Неопределено Тогда
+ КлючиСравнения = Эталон.КлючиСравнения;
+ Иначе
+ КлючиСравнения = КлючиХешаПараметровКодаМаркировкиМОТП();
+ КонецЕсли;
+
+ Если ДанныеКодаМаркировкиСовпадают(ИсточникДанных, Эталон.Источник, КлючиСравнения) Тогда
+ ПараметрыКодаМаркировки = ИнициализироватьПараметрыКодаМаркировкиМОТП();
+ ЗаполнитьЗначенияСвойств(ПараметрыКодаМаркировки, Эталон.Результат);
+ Возврат ПараметрыКодаМаркировки;
+ Иначе
+ Эталон = Неопределено; // Свойства некоторых элементов отличаются, нет смысла копировать эталон
+ КонецЕсли;
+
+ КонецЕсли;
+
+ ПараметрыКодаМаркировки = ИнициализироватьПараметрыКодаМаркировкиМОТП();
+
+ Если ЭлементДанных = Неопределено Тогда
+ Возврат ПараметрыКодаМаркировки;
+ КонецЕсли;
+
ПараметрыКодаМаркировки.КодТНВЭД = ИсточникДанных["tnVedEaes"];
ПараметрыКодаМаркировки.ГруппаТНВЭД = ИсточникДанных["tnVedEaesGroup"];
@@ -879,7 +980,7 @@
Значение = ИсточникДанных["productGroup"];
Если Значение <> Неопределено Тогда
ПараметрыКодаМаркировки.ИмяТоварнойГруппы = Значение;
- ПараметрыКодаМаркировки.ВидПродукции = ИнтерфейсИСМПОбщегоНазначенияКлиентСервер.ТоварнаяГруппа(Значение, ДанныеДляУточнения);
+ ПараметрыКодаМаркировки.ВидПродукции = ОбщегоНазначенияИСМПКлиентСерверПовтИсп.ТоварнаяГруппа(Значение, ДанныеДляУточнения);
Иначе
Значение = ИсточникДанных["groupIds"];
@@ -912,7 +1013,7 @@
ДанныеПоGTIN = Результат.ДанныеПродукцииПоШтрихкодуEAN[ИсточникДанных["gtin"]];
Если ДанныеПоGTIN <> Неопределено Тогда
ДанныеДляУточнения.ОКПД2 = ДанныеПоGTIN.ОКПД2;
- ВидыПродукции = ИнтерфейсИСМПОбщегоНазначенияКлиентСервер.ТоварнаяГруппа(Значение, ДанныеДляУточнения);
+ ВидыПродукции = ОбщегоНазначенияИСМПКлиентСерверПовтИсп.ТоварнаяГруппа(Значение, ДанныеДляУточнения);
Если ВидыПродукции.Количество() = 1 Тогда
ПараметрыКодаМаркировки.ВидПродукции = ВидыПродукции[0];
КонецЕсли;
@@ -1236,8 +1337,8 @@
КонецЕсли;
- Если ИсточникДанных["child"] <> Неопределено
- И ИсточникДанных["child"].Количество() > 0 Тогда
+ Если ВложенныеЭлементы <> Неопределено
+ И ВложенныеЭлементы.Количество() > 0 Тогда
Если ДополнительныеПараметры.Свойство("НастройкиРазбора")
И Не ДополнительныеПараметры.НастройкиРазбора = Неопределено Тогда
@@ -1248,13 +1349,13 @@
НастройкиРазбораКодаМаркировки = Новый Структура;
НастройкиРазбораКодаМаркировки.Вставить("Кеш", РазборКодаМаркировкиИССлужебныйКлиентСервер.ИнициализироватьНастройкиИспользующиеРезультатыПредыдущихРазборов());
- НастройкиРазбораКодаМаркировки.Вставить("Общие", РазборКодаМаркировкиИССлужебный.НастройкиРазбораКодаМаркировки(, Ложь));
+ НастройкиРазбораКодаМаркировки.Вставить("Общие", РазборКодаМаркировкиИССлужебныйПовтИсп.НастройкиРазбораКодаМаркировки(, Ложь));
НастройкиРазбораКодаМаркировки.Вставить("Пользовательские", ПользовательскиеПараметрыРазбораКодаМаркировки);
КонецЕсли;
ПараметрыКодаМаркировки.ВложенныеУпаковки = Новый Соответствие();
- Для Каждого ВложенныйКодМаркировки Из ИсточникДанных["child"] Цикл
+ Для Каждого ВложенныйКодМаркировки Из ВложенныеЭлементы Цикл
СтрокаКодаМаркировки = ШтрихкодированиеОбщегоНазначенияИС.НоваяСтруктураОбработкиШтрихкодаУпрощенныйРазбор(
ВложенныйКодМаркировки, ВидПродукцииДляРазбораКода, НастройкиРазбораКодаМаркировки);
@@ -1313,7 +1414,7 @@
НоваяСтрокаРазрешительнойДокументации.ВидДокументаСертификации = ВидДокументаСертификации(СтрокаДокументовСертификации["type"]);
НоваяСтрокаРазрешительнойДокументации.ГруппаСтатуса = ИнтерфейсИСМПОбщегоНазначенияКлиентСервер.ГруппаСтатусовРазрешительныхДокументов(СтрокаДокументовСертификации["statusGroup"]);
- НоваяСтрокаРазрешительнойДокументации.ДатаДокументаСертификации = СтроковыеФункцииКлиентСервер.СтрокаВДату(СтрокаДокументовСертификации["date"]);
+ НоваяСтрокаРазрешительнойДокументации.ДатаДокументаСертификации = ОбщегоНазначенияИС.СтрокаВДату(СтрокаДокументовСертификации["date"]);
НоваяСтрокаРазрешительнойДокументации.НомерДокументаСертификации = СтрокаДокументовСертификации["number"];
НоваяСтрокаРазрешительнойДокументации.ОбоснованиеОтсутствияРД = СтрокаДокументовСертификации["isRequired"];
@@ -1359,6 +1460,11 @@
КонецЕсли;
+ Если Эталон <> Неопределено Тогда
+ Эталон.Источник = ИсточникДанных;
+ Эталон.Результат = ПараметрыКодаМаркировки;
+ КонецЕсли;
+
Возврат ПараметрыКодаМаркировки;
КонецФункции
@@ -2223,6 +2329,170 @@
КонецФункции
+// Регистрация списка мест осуществления деятельности ГИСМТ.
+//
+// Параметры:
+// Организация Организация
+// ПараметрыЗапроса Параметры запроса
+//
+// Возвращаемое значение:
+// Структура - Регистрация списка мест осуществления деятельности ГИСМТ:
+// * ТребуетсяОбновлениеКлючаСессии - Булево -
+// * РезультатОтправкиЗапроса - Неопределено -
+// * МестаОсуществленияДеятельности - Массив -
+// * ТекстОшибки - Строка -
+Функция РегистрацияСпискаМестОсуществленияДеятельностиГИСМТ(Организация, ПараметрыЗапроса) Экспорт
+
+ КлючСессии = ИнтерфейсАвторизацииИСМПСлужебный.ПроверитьОбновитьКлючСессии(
+ ИнтерфейсИСМПОбщегоНазначенияКлиентСервер.ПараметрыЗапросаКлючаСессии(Организация));
+
+ ВозвращаемоеЗначение = Новый Структура;
+ ВозвращаемоеЗначение.Вставить("ТребуетсяОбновлениеКлючаСессии", КлючСессии = Неопределено);
+ ВозвращаемоеЗначение.Вставить("РезультатОтправкиЗапроса", Неопределено);
+ ВозвращаемоеЗначение.Вставить("МестаОсуществленияДеятельности", Новый Массив);
+ ВозвращаемоеЗначение.Вставить("ТекстОшибки", "");
+
+ Если ВозвращаемоеЗначение.ТребуетсяОбновлениеКлючаСессии Тогда
+ Возврат ВозвращаемоеЗначение;
+ КонецЕсли;
+
+ URLЗапроса = "api/v3/true-api/mods/add";
+ ТелоЗапроса = Новый Структура;
+ ПараметрыОтправкиHTTPЗапросов = ОбщегоНазначенияИСМПКлиентСервер.ПараметрыОтправкиHTTPЗапросов("", Истина);
+ СписокМОДКРегистрации = Новый Массив;
+
+ Для Каждого РегистрируемыйМОД Из ПараметрыЗапроса.СписокМОД Цикл
+ ТелоЗапросаМОД = Новый Структура;
+ ТелоЗапросаМОД.Вставить("fiasId", РегистрируемыйМОД.КодФИАС);
+ ТелоЗапросаМОД.Вставить("kpp", РегистрируемыйМОД.КПП);
+
+ МассивИменТоварныхГрупп = Новый Массив;
+ Для Каждого ТоварнаяГруппа Из РегистрируемыйМОД.ТоварныеГруппы Цикл
+ МассивИменТоварныхГрупп.Добавить(ИнтерфейсИСМПОбщегоНазначенияКлиентСервер.ТоварнаяГруппа(ТоварнаяГруппа));
+ КонецЦикла;
+ ТелоЗапросаМОД.Вставить("productGroup", МассивИменТоварныхГрупп);
+
+ СписокМОДКРегистрации.Добавить(ТелоЗапросаМОД);
+
+ КонецЦикла;
+
+ ТелоЗапроса.Вставить("mods", СписокМОДКРегистрации);
+
+ РезультатЗапроса = ОбменДаннымиИСМПКлиентСервер.ОтправитьДанныеВСервис(
+ URLЗапроса, ТелоЗапроса, КлючСессии, "POST", ПараметрыОтправкиHTTPЗапросов);
+
+ РезультатОтправкиЗапроса = ОбменДаннымиИСМПКлиентСервер.ОбработатьРезультатОтправкиHTTPЗапросаКакJSON(
+ РезультатЗапроса);
+
+ ВозвращаемоеЗначение.РезультатОтправкиЗапроса = РезультатОтправкиЗапроса;
+
+ Если РезультатОтправкиЗапроса.ОтветПолучен Тогда
+
+ Если РезультатОтправкиЗапроса.КодСостояния = 200 Тогда
+ ДанныеОбработки = ОбменДаннымиИСМПКлиентСервер.ТекстJSONВОбъект(
+ РезультатОтправкиЗапроса.ТекстВходящегоСообщенияJSON);
+
+ Если ДанныеОбработки = Неопределено Тогда
+ ВозвращаемоеЗначение.ТекстОшибки = ОбщегоНазначенияИСКлиентСервер.ТекстОшибкиПоРезультатуОтправкиЗапроса(
+ URLЗапроса, РезультатОтправкиЗапроса);
+
+ Иначе
+
+ Для Каждого ЭлементДанных Из ДанныеОбработки.results Цикл
+ СтруктураОтвета = Новый Структура;
+ СтруктураОтвета.Вставить("ОписаниеРезультата", ЭлементДанных.groupDescription);
+ СтруктураОтвета.Вставить("КодРезультата", ЭлементДанных.code);
+ СтруктураОтвета.Вставить("Количество", ЭлементДанных.count);
+ СтруктураОтвета.Вставить("СписокМОД", Новый Массив);
+
+ Если ЭлементДанных.code = 400 Тогда
+ СтруктураОтвета.СписокМОД = ЭлементДанных.modList;
+ КонецЕсли;
+
+ ВозвращаемоеЗначение.МестаОсуществленияДеятельности.Добавить(СтруктураОтвета);
+
+ КонецЦикла;
+
+ КонецЕсли;
+
+ Иначе
+ ВозвращаемоеЗначение.ТекстОшибки = ОбщегоНазначенияИСКлиентСервер.ТекстОшибкиПоРезультатуОтправкиЗапроса(
+ URLЗапроса, РезультатОтправкиЗапроса);
+
+ Если РезультатОтправкиЗапроса.КодСостояния = 401 Тогда
+ ВозвращаемоеЗначение.ТребуетсяОбновлениеКлючаСессии = Истина;
+ КонецЕсли;
+
+ Возврат ВозвращаемоеЗначение;
+
+ КонецЕсли;
+
+ ИначеЕсли РезультатОтправкиЗапроса.КодСостояния <> 404 Тогда
+ ВозвращаемоеЗначение.ТекстОшибки = ОбщегоНазначенияИСКлиентСервер.ТекстОшибкиПоРезультатуОтправкиЗапроса(
+ URLЗапроса, РезультатОтправкиЗапроса);
+
+ КонецЕсли;
+
+ Возврат ВозвращаемоеЗначение;
+
+КонецФункции
+
+// Удаление места осуществления деятельности ГИСМТ.
+//
+// Параметры:
+// Организация Организация
+// ПараметрыЗапроса Параметры запроса
+//
+// Возвращаемое значение:
+// Структура - Регистрация списка мест осуществления деятельности ГИСМТ:
+// * ТребуетсяОбновлениеКлючаСессии - Булево -
+// * РезультатОтправкиЗапроса - Неопределено -
+// * ТекстОшибки - Строка -
+Функция УдалениеМестаОсуществленияДеятельностиГИСМТ(Организация, ПараметрыЗапроса) Экспорт
+
+ КлючСессии = ИнтерфейсАвторизацииИСМПСлужебный.ПроверитьОбновитьКлючСессии(
+ ИнтерфейсИСМПОбщегоНазначенияКлиентСервер.ПараметрыЗапросаКлючаСессии(Организация));
+
+ ВозвращаемоеЗначение = Новый Структура;
+ ВозвращаемоеЗначение.Вставить("ТребуетсяОбновлениеКлючаСессии", КлючСессии = Неопределено);
+ ВозвращаемоеЗначение.Вставить("РезультатОтправкиЗапроса", Неопределено);
+ ВозвращаемоеЗначение.Вставить("ТекстОшибки", "");
+
+ Если ВозвращаемоеЗначение.ТребуетсяОбновлениеКлючаСессии Тогда
+ Возврат ВозвращаемоеЗначение;
+ КонецЕсли;
+
+ URLЗапроса = "api/v3/true-api/mod";
+ ТелоЗапроса = Новый Структура;
+ ПараметрыОтправкиHTTPЗапросов = ОбщегоНазначенияИСМПКлиентСервер.ПараметрыОтправкиHTTPЗапросов("", Истина);
+
+ ТелоЗапроса.Вставить("productGroup", ИнтерфейсИСМПОбщегоНазначенияКлиентСервер.ТоварнаяГруппа(ПараметрыЗапроса.ТоварнаяГруппа));
+ ТелоЗапроса.Вставить("fiasId", ПараметрыЗапроса.КодФИАС);
+ ТелоЗапроса.Вставить("kpp", ПараметрыЗапроса.КПП);
+
+ РезультатЗапроса = ОбменДаннымиИСМПКлиентСервер.ОтправитьДанныеВСервис(URLЗапроса, ТелоЗапроса, КлючСессии, "DELETE",
+ ПараметрыОтправкиHTTPЗапросов);
+
+ РезультатОтправкиЗапроса = ОбменДаннымиИСМПКлиентСервер.ОбработатьРезультатОтправкиHTTPЗапросаКакJSON(РезультатЗапроса);
+
+ ВозвращаемоеЗначение.РезультатОтправкиЗапроса = РезультатОтправкиЗапроса;
+
+ Если РезультатОтправкиЗапроса.КодСостояния <> 200 Тогда
+ ВозвращаемоеЗначение.ТекстОшибки = ОбщегоНазначенияИСКлиентСервер.ТекстОшибкиПоРезультатуОтправкиЗапроса(
+ URLЗапроса, РезультатОтправкиЗапроса);
+
+ Если РезультатОтправкиЗапроса.КодСостояния = 401 Тогда
+ ВозвращаемоеЗначение.ТребуетсяОбновлениеКлючаСессии = Истина;
+ КонецЕсли;
+
+ Возврат ВозвращаемоеЗначение;
+
+ КонецЕсли;
+
+ Возврат ВозвращаемоеЗначение;
+
+КонецФункции
+
#Область ПроверкиОрганизацийКонтрагентов
// Запросить статус регистрации участника и товарные группы.
@@ -2358,6 +2628,65 @@
#Область СлужебныеПроцедурыИФункции
+// Сравнивает два набора данных кода маркировки по заданным ключам.
+//
+// Параметры:
+// Данные1 - Соответствие, Структура - Первый набор данных.
+// Данные2 - Соответствие, Структура - Второй набор данных.
+// КлючиСравнения - Массив из Строка - Ключи для сравнения.
+//
+// Возвращаемое значение:
+// Булево - Истина, если данные совпадают.
+//
+Функция ДанныеКодаМаркировкиСовпадают(Данные1, Данные2, КлючиСравнения)
+
+ Для Каждого Ключ Из КлючиСравнения Цикл
+
+ Значение1 = Данные1[Ключ];
+ Значение2 = Данные2[Ключ];
+
+ Если Значение1 = Неопределено И Значение2 = Неопределено Тогда
+ Продолжить;
+ ИначеЕсли Значение1 = Неопределено Или Значение2 = Неопределено Тогда
+ Возврат Ложь;
+ КонецЕсли;
+
+ ТипЗначения = ТипЗнч(Значение1);
+ Если ТипЗначения <> ТипЗнч(Значение2) Тогда
+ Возврат Ложь;
+ КонецЕсли;
+
+ Если ТипЗначения = Тип("Соответствие")
+ Или ТипЗначения = Тип("Структура")
+ Или ТипЗначения = Тип("ФиксированнаяСтруктура") Тогда
+
+ Если Не ДанныеКодаМаркировкиСовпадают(Значение1, Значение2, КлючиСравнения) Тогда
+ Возврат Ложь;
+ КонецЕсли;
+
+ ИначеЕсли ТипЗначения = Тип("Массив")
+ Или ТипЗначения = Тип("ФиксированныйМассив") Тогда
+
+ Если Значение1.Количество() <> Значение2.Количество() Тогда
+ Возврат Ложь;
+ КонецЕсли;
+
+ Для Индекс = 0 По Значение1.ВГраница() Цикл
+ Если Не ДанныеКодаМаркировкиСовпадают(Значение1[Индекс], Значение2[Индекс], КлючиСравнения) Тогда
+ Возврат Ложь;
+ КонецЕсли;
+ КонецЦикла;
+
+ ИначеЕсли Значение1 <> Значение2 Тогда
+ Возврат Ложь;
+ КонецЕсли;
+
+ КонецЦикла;
+
+ Возврат Истина;
+
+КонецФункции
+
Функция СоздатьДокументПоСообщению(Организация, Операция, ВидПродукции, ТекстСообщения, Подпись, ПараметрыЗапросаИсходящегоСообщения, ТекстДополнительногоСообщения = "", ДополнительнаяПодпись = "") Экспорт
ПараметрыЗапроса = Новый Массив;
diff --git a/src/CommonModules/ИнтерфейсИСМПОбщегоНазначенияВызовСервера/Ext/Module.bsl b/src/CommonModules/ИнтерфейсИСМПОбщегоНазначенияВызовСервера/Ext/Module.bsl
index 3e526d6eb..079a0cb21 100644
--- a/src/CommonModules/ИнтерфейсИСМПОбщегоНазначенияВызовСервера/Ext/Module.bsl
+++ b/src/CommonModules/ИнтерфейсИСМПОбщегоНазначенияВызовСервера/Ext/Module.bsl
@@ -1,5 +1,360 @@
#Область ПрограммныйИнтерфейс
+#КонецОбласти
+
+#Область СлужебныйПрограммныйИнтерфейс
+
+Процедура ЗапросМетодаИнтерфейсаСОбработкой(ПараметрыОбработки) Экспорт
+
+ Если Не ЭлектроннаяПодпись.ИспользоватьЭлектронныеПодписи()
+ И Не ПараметрыОбработки.ПроверкаПоТокенуРозничнойПродажи
+ И Не ПараметрыОбработки.НеТребуетсяАвторизацияПоКлючуСессии Тогда
+ ПараметрыОбработки.ЕстьОшибки = Истина;
+ ПараметрыОбработки.ТекстОшибки = НСтр("ru = 'Подсистема электронной подписи отключена.'");
+ Возврат;
+ КонецЕсли;
+
+ ЗаполнитьОрганизациюПараметровОбработкиПоКлючуСессии(ПараметрыОбработки);
+
+ Если Не ЗначениеЗаполнено(ПараметрыОбработки.Организация)
+ И ПараметрыОбработки.ОрганизацияПоСертификатам = Неопределено Тогда
+ ПараметрыОбработки.ОрганизацияПоСертификатам = Истина;
+ Возврат;
+ КонецЕсли;
+
+ ТребуетсяОбновлениеКлючаСессии = Ложь;
+ ТребуетсяОбновлениеКлючаСессииРозница = Ложь;
+ ТекстОшибки = Неопределено;
+ ДанныеДляОбработки = Неопределено;
+
+ ДоступныеМетодыИнтерфейса = ИнтерфейсИСМПОбщегоНазначенияКлиентСервер.ДоступныеМетодыИнтерфейса();
+
+ Если ПараметрыОбработки.ИмяОбработчика = ДоступныеМетодыИнтерфейса.ЕмкостьУпаковкиПоGTIN Тогда
+
+ ТаблицаНоменклатуры = Новый ТаблицаЗначений();
+ ТаблицаНоменклатуры.Колонки.Добавить("Номенклатура", Метаданные.ОпределяемыеТипы.Номенклатура.Тип);
+ ТаблицаНоменклатуры.Колонки.Добавить("Характеристика", Метаданные.ОпределяемыеТипы.ХарактеристикаНоменклатуры.Тип);
+
+ НоваяСтрока = ТаблицаНоменклатуры.Добавить();
+ НоваяСтрока.Номенклатура = ПараметрыОбработки.Параметры.Номенклатура;
+ МассивGTIN = Новый Массив();
+ ШтрихкодированиеОбщегоНазначенияИС.ЗаполнитьПроверяемыеGTIN(ТаблицаНоменклатуры, МассивGTIN, Новый Соответствие(),, Ложь);
+
+ Если МассивGTIN.Количество() = 0 Тогда
+
+ ТекстОшибки = НСтр("ru = 'Не найдено GTIN для получения емкости упаковки по данным ГИС МТ.'");
+
+ Иначе
+
+ Результат = ИнтерфейсИСМПОбщегоНазначения.ДанныеПродукцииПоШтрихкодуEAN(
+ МассивGTIN,
+ ПараметрыОбработки.Организация);
+
+ ТребуетсяОбновлениеКлючаСессии = Результат.ТребуетсяОбновлениеКлючаСессии;
+ ТекстОшибки = Результат.ТекстОшибки;
+ ДанныеДляОбработки = Результат.ДанныеПродукцииПоШтрихкодуEAN;
+
+ КонецЕсли;
+
+ ИначеЕсли ПараметрыОбработки.ИмяОбработчика = ДоступныеМетодыИнтерфейса.МестаОсуществленияДеятельности Тогда
+
+ Результат = ИнтерфейсИСМПОбщегоНазначения.МестаОсуществленияДеятельности(ПараметрыОбработки.Организация, ПараметрыОбработки.ВидПродукции);
+
+ ТребуетсяОбновлениеКлючаСессии = Результат.ТребуетсяОбновлениеКлючаСессии;
+ ТекстОшибки = Результат.ТекстОшибки;
+ ДанныеДляОбработки = Результат.МестаОсуществленияДеятельности;
+
+ ИначеЕсли ПараметрыОбработки.ИмяОбработчика = ДоступныеМетодыИнтерфейса.СписокМестОсуществленияДеятельности Тогда
+
+ Результат = ИнтерфейсИСМПОбщегоНазначения.СписокМестОсуществленияДеятельности(ПараметрыОбработки.Организация, ПараметрыОбработки.Параметры);
+
+ ТребуетсяОбновлениеКлючаСессии = Результат.ТребуетсяОбновлениеКлючаСессии;
+ ТекстОшибки = Результат.ТекстОшибки;
+ ДанныеДляОбработки = Результат.МестаОсуществленияДеятельности;
+
+ ИначеЕсли ПараметрыОбработки.ИмяОбработчика = ДоступныеМетодыИнтерфейса.РегистрацияМестОсуществленияДеятельностиГИСМТ Тогда
+
+ Результат = ИнтерфейсИСМПОбщегоНазначения.РегистрацияСпискаМестОсуществленияДеятельностиГИСМТ(ПараметрыОбработки.Организация,
+ ПараметрыОбработки.Параметры);
+
+ ТребуетсяОбновлениеКлючаСессии = Результат.ТребуетсяОбновлениеКлючаСессии;
+ ТекстОшибки = Результат.ТекстОшибки;
+ ДанныеДляОбработки = Результат.МестаОсуществленияДеятельности;
+
+ ИначеЕсли ПараметрыОбработки.ИмяОбработчика = ДоступныеМетодыИнтерфейса.УдалениеМестаОсуществленияДеятельностиГИСМТ Тогда
+
+ Результат = ИнтерфейсИСМПОбщегоНазначения.УдалениеМестаОсуществленияДеятельностиГИСМТ(ПараметрыОбработки.Организация,
+ ПараметрыОбработки.Параметры);
+
+ ТребуетсяОбновлениеКлючаСессии = Результат.ТребуетсяОбновлениеКлючаСессии;
+ ТекстОшибки = Результат.ТекстОшибки;
+ ДанныеДляОбработки = Неопределено;
+
+ ИначеЕсли ПараметрыОбработки.ИмяОбработчика = ДоступныеМетодыИнтерфейса.АктуализацияCDNПлощадок Тогда
+
+ ОбновлятьБезПроверкиДатыОбновления = Ложь;
+ ИспользуетсяТСПИоТДляРР = Ложь;
+
+ Если ТипЗнч(ПараметрыОбработки.Параметры) = Тип("Структура") Тогда
+
+ Если ПараметрыОбработки.Параметры.Свойство("ОбновлятьБезПроверкиДатыОбновления") Тогда
+ ОбновлятьБезПроверкиДатыОбновления = ПараметрыОбработки.Параметры.ОбновлятьБезПроверкиДатыОбновления;
+ КонецЕсли;
+
+ НомерФискальногоНакопителя = "";
+ ККТ = Неопределено;
+
+ Если ПараметрыОбработки.Параметры.Свойство("НомерФискальногоНакопителя") Тогда
+ НомерФискальногоНакопителя = ПараметрыОбработки.Параметры.НомерФискальногоНакопителя;
+ КонецЕсли;
+
+ Если ПараметрыОбработки.Параметры.Свойство("ККТ") Тогда
+ ККТ = ПараметрыОбработки.Параметры.ККТ;
+ КонецЕсли;
+
+ Если ЗначениеЗаполнено(ККТ) Или ЗначениеЗаполнено(НомерФискальногоНакопителя) Тогда
+ ИспользуетсяТСПИоТДляРР = ИнтеграцияТСПИоТ.ПоПодключаемомуОборудованиюНастроеноПодключениеТСПИоТ(ККТ, НомерФискальногоНакопителя);
+ КонецЕсли;
+
+ КонецЕсли;
+
+ Если ИспользуетсяТСПИоТДляРР Тогда
+ ПараметрыОбработки.ВыполнениеВФоне = Ложь;
+ Возврат;
+ КонецЕсли;
+
+ РезультатОбновления = ОбщегоНазначенияИСМПВызовСервера.ЗапуститьОбновлениеCDNПлощадок(ПараметрыОбработки.Организация, ПараметрыОбработки.УникальныйИдентификатор, ОбновлятьБезПроверкиДатыОбновления);
+
+ ИначеЕсли ПараметрыОбработки.ИмяОбработчика = ДоступныеМетодыИнтерфейса.ИнициализацияКонфигурацииЛокальногоМодуляЧЗ Тогда
+
+ РезультатНастройкиЛМЧЗ = ОбщегоНазначенияИСМПВызовСервера.ИнициализироватьКонфигурациюЛокальногоМодуляЧЗ(
+ ПараметрыОбработки.Параметры.Организация,
+ ПараметрыОбработки.Параметры.ПараметрыУстановки,
+ ПараметрыОбработки.УникальныйИдентификатор);
+
+ ИначеЕсли ПараметрыОбработки.ИмяОбработчика = ДоступныеМетодыИнтерфейса.ОбновлениеСтатусаЛокальногоМодуляЧЗ Тогда
+
+ РезультатНастройкиЛМЧЗ = ОбщегоНазначенияИСМПВызовСервера.ЗапроситьСтатусЛокальногоМодуляЧЗ(
+ ПараметрыОбработки.Параметры.Организация,
+ ПараметрыОбработки.Параметры.ПараметрыУстановки,
+ ПараметрыОбработки.УникальныйИдентификатор);
+
+ ИначеЕсли ПараметрыОбработки.ИмяОбработчика = ДоступныеМетодыИнтерфейса.СменаПароляАдминистрированияЛокальногоМодуляЧЗ Тогда
+
+ РезультатНастройкиЛМЧЗ = ОбщегоНазначенияИСМПВызовСервера.ИзменитьПарольАдминистратораЛокальногоМодуляЧЗ(
+ ПараметрыОбработки.Параметры.Организация,
+ ПараметрыОбработки.Параметры.ПараметрыУстановки,
+ ПараметрыОбработки.Параметры.НовыйПароль,
+ ПараметрыОбработки.УникальныйИдентификатор);
+
+ ИначеЕсли ПараметрыОбработки.ИмяОбработчика = ДоступныеМетодыИнтерфейса.НастройкаСпискаТоварныхГрупп Тогда
+
+ РезультатНастройкиЛМЧЗ = ОбщегоНазначенияИСМПВызовСервера.НастроитьТоварныеГруппыЛокальногоМодуляЧЗ(
+ ПараметрыОбработки.Параметры.Организация,
+ ПараметрыОбработки.Параметры.ПараметрыУстановки,
+ ПараметрыОбработки.Параметры.ПараметрыНастройкиТоварныхГрупп,
+ ПараметрыОбработки.УникальныйИдентификатор);
+
+ ИначеЕсли ПараметрыОбработки.ИмяОбработчика = ДоступныеМетодыИнтерфейса.ПолучениеКонфигурацииЛокальногоМодуляЧЗ Тогда
+
+ РезультатНастройкиЛМЧЗ = ОбщегоНазначенияИСМПВызовСервера.ПолучитьКонфигурациюЛокальногоМодуляЧЗ(
+ ПараметрыОбработки.Параметры.Организация,
+ ПараметрыОбработки.Параметры.ПараметрыУстановки,
+ ПараметрыОбработки.УникальныйИдентификатор);
+
+ ИначеЕсли ПараметрыОбработки.ИмяОбработчика = ДоступныеМетодыИнтерфейса.ТоварныеГруппыПоОрганизации Тогда
+
+ ПараметрыВыполнения = ДлительныеОперации.ПараметрыВыполненияВФоне(ПараметрыОбработки.УникальныйИдентификатор);
+ ПараметрыВыполнения.НаименованиеФоновогоЗадания = НСтр("ru = 'Товарные группы по организации'");
+
+ ПараметрыФоновогоЗадания = Новый Структура;
+ ПараметрыФоновогоЗадания.Вставить("Организация", ПараметрыОбработки.Организация);
+ ПараметрыФоновогоЗадания.Вставить("ПараметрыЛогированияЗапросовИСМП", ПараметрыСеанса.ПараметрыЛогированияЗапросовИСМП);
+
+ Если ОбщегоНазначенияИСМП.ЭтоРасширеннаяВерсияГосИС() Тогда
+ МодульИнтеграцияИСПереопределяемый = ОбщегоНазначения.ОбщийМодуль("ИнтеграцияИСПереопределяемый");
+ МодульИнтеграцияИСПереопределяемый.НастроитьДлительнуюОперацию(ПараметрыФоновогоЗадания, ПараметрыВыполнения);
+ КонецЕсли;
+
+ ДлительнаяОперация = ДлительныеОперации.ВыполнитьВФоне(
+ "ОбщегоНазначенияИСМП.ТоварныеГруппыПоОрганизацииДлительнаяОперация",
+ ПараметрыФоновогоЗадания, ПараметрыВыполнения);
+
+ ИначеЕсли ПараметрыОбработки.ИмяОбработчика = ДоступныеМетодыИнтерфейса.ПолучениеДанныхНастройкиТСПИоТ Тогда
+
+ РезультатНастроекТСПИоТ = ОбщегоНазначенияИСМПВызовСервера.ПолучитьДанныеНастройкиТСПИоТ(
+ ПараметрыОбработки.Параметры.ПараметрыПодключения,
+ ПараметрыОбработки.УникальныйИдентификатор);
+
+ Иначе
+ ВызватьИсключение СтрШаблон(
+ НСтр("ru = 'Внутренняя ошибка. Не описан метод интерфейса с запросом ключа авторизации %1'"),
+ ПараметрыОбработки.ИмяОбработчика);
+ КонецЕсли;
+
+ Если ТребуетсяОбновлениеКлючаСессии Тогда
+
+ ПараметрыОбработки.ТребуетсяОбновлениеКлючаСессии = Истина;
+
+ ИначеЕсли ТребуетсяОбновлениеКлючаСессииРозница Тогда
+
+ ПараметрыОбработки.ТребуетсяОбновлениеКлючаСессииРозница = Истина;
+
+ ИначеЕсли ЗначениеЗаполнено(ТекстОшибки) Тогда
+
+ ПараметрыОбработки.ЕстьОшибки = Истина;
+ ПараметрыОбработки.ТекстОшибки = ТекстОшибки;
+
+ Иначе
+
+ Если ПараметрыОбработки.ИмяОбработчика = ДоступныеМетодыИнтерфейса.ЕмкостьУпаковкиПоGTIN Тогда
+ ПараметрыОбработки.Результат = ОбработкаРезультатаЕмкостьУпаковкиПоGTIN(ДанныеДляОбработки);
+ ИначеЕсли ПараметрыОбработки.ИмяОбработчика = ДоступныеМетодыИнтерфейса.МестаОсуществленияДеятельности
+ Или ПараметрыОбработки.ИмяОбработчика = ДоступныеМетодыИнтерфейса.СписокМестОсуществленияДеятельности Тогда
+ ПараметрыОбработки.Результат = ОбработкаМестаОсуществленияДеятельности(ДанныеДляОбработки);
+ ИначеЕсли ПараметрыОбработки.ИмяОбработчика = ДоступныеМетодыИнтерфейса.АктуализацияCDNПлощадок Тогда
+ ПараметрыОбработки.ДлительнаяОперация = РезультатОбновления;
+ ИначеЕсли ПараметрыОбработки.ИмяОбработчика = ДоступныеМетодыИнтерфейса.ТоварныеГруппыПоОрганизации Тогда
+ ПараметрыОбработки.ДлительнаяОперация = ДлительнаяОперация;
+ ИначеЕсли ПараметрыОбработки.ИмяОбработчика = ДоступныеМетодыИнтерфейса.ИнициализацияКонфигурацииЛокальногоМодуляЧЗ
+ Или ПараметрыОбработки.ИмяОбработчика = ДоступныеМетодыИнтерфейса.ОбновлениеСтатусаЛокальногоМодуляЧЗ
+ Или ПараметрыОбработки.ИмяОбработчика = ДоступныеМетодыИнтерфейса.СменаПароляАдминистрированияЛокальногоМодуляЧЗ
+ Или ПараметрыОбработки.ИмяОбработчика = ДоступныеМетодыИнтерфейса.НастройкаСпискаТоварныхГрупп
+ Или ПараметрыОбработки.ИмяОбработчика = ДоступныеМетодыИнтерфейса.ПолучениеКонфигурацииЛокальногоМодуляЧЗ Тогда
+ ПараметрыОбработки.ДлительнаяОперация = РезультатНастройкиЛМЧЗ;
+ ИначеЕсли ПараметрыОбработки.ИмяОбработчика = ДоступныеМетодыИнтерфейса.ПолучениеДанныхНастройкиТСПИоТ Тогда
+ ПараметрыОбработки.ДлительнаяОперация = РезультатНастроекТСПИоТ;
+ ИначеЕсли ПараметрыОбработки.ИмяОбработчика = ДоступныеМетодыИнтерфейса.РегистрацияМестОсуществленияДеятельностиГИСМТ
+ Или ПараметрыОбработки.ИмяОбработчика = ДоступныеМетодыИнтерфейса.УдалениеМестаОсуществленияДеятельностиГИСМТ Тогда
+ ПараметрыОбработки.Результат = ДанныеДляОбработки;
+ Иначе
+ ВызватьИсключение НСтр("ru = 'Внутренняя ошибка. Не описан метод интерфейса с запросом ключа авторизации (после авторизации).'");
+ КонецЕсли;
+
+ КонецЕсли;
+
+КонецПроцедуры
+
+Процедура ЗаполнитьОрганизациюПараметровОбработкиПоКлючуСессии(ПараметрыОбработки) Экспорт
+
+ Если ЗначениеЗаполнено(ПараметрыОбработки.Организация) Тогда
+ Возврат;
+ КонецЕсли;
+
+ Если ПараметрыОбработки.ПроверкаПоТокенуРозничнойПродажи Тогда
+ ПараметрыЗапроса = ИнтерфейсИСМПОбщегоНазначенияКлиентСервер.ПараметрыЗапросаКлючаСессииИСМПРозница();
+ Иначе
+ ПараметрыЗапроса = ИнтерфейсИСМПОбщегоНазначенияКлиентСервер.ПараметрыЗапросаКлючаСессии();
+ КонецЕсли;
+
+ ДанныеКлючаСессии = ИнтерфейсАвторизацииИСМПСлужебный.ПолучитьСохраненныеДанныеКлючаСессии(ПараметрыЗапроса.ИмяПараметраСеанса);
+ ОрганизацииСИстекшимКлючем = Новый ТаблицаЗначений();
+ ОрганизацииСИстекшимКлючем.Колонки.Добавить("Организация");
+ ОрганизацииСИстекшимКлючем.Колонки.Добавить("ДействуетДо");
+
+ Если ДанныеКлючаСессии <> Неопределено Тогда
+ Для Каждого КлючИЗначение Из ДанныеКлючаСессии Цикл
+ Организация = КлючИЗначение.Ключ;
+ ПараметрыКлючаСессии = КлючИЗначение.Значение;
+ ЭтоРозничныйТокен =
+ (ПараметрыЗапроса.ИмяПараметраСеанса = ИнтерфейсИСМПОбщегоНазначенияКлиентСервер.ИмяДанныхКлючаСессии(Перечисления.ТипыТокеновАвторизации.ИСМПРозница));
+
+ Если ЭтоРозничныйТокен
+ И ИнтерфейсИСМПОбщегоНазначенияКлиентСервер.ДатаДействияТокенаИСМПРозница() > ТекущаяДатаСеанса() Тогда
+ ПараметрыОбработки.Организация = Организация;
+ Возврат;
+ ИначеЕсли Не ЭтоРозничныйТокен И ПараметрыКлючаСессии.ДействуетДо > ТекущаяДатаСеанса() Тогда
+ ПараметрыОбработки.Организация = Организация;
+ Возврат;
+ Иначе
+ НоваяСтрока = ОрганизацииСИстекшимКлючем.Добавить();
+ НоваяСтрока.Организация = Организация;
+ НоваяСтрока.ДействуетДо = ПараметрыКлючаСессии.ДействуетДо;
+ КонецЕсли;
+ КонецЦикла;
+ КонецЕсли;
+
+ СертификатыДляПодписания = ИнтерфейсАвторизацииИСМПСлужебный.СертификатыДляПодписанияНаСервере();
+
+ Если СертификатыДляПодписания <> Неопределено
+ И СертификатыДляПодписания.Сертификаты.Количество() Тогда
+ ПараметрыОбработки.Организация = СертификатыДляПодписания.Сертификаты[0].Организация;
+ Возврат;
+ КонецЕсли;
+
+ Если ОрганизацииСИстекшимКлючем.Количество() Тогда
+ ОрганизацииСИстекшимКлючем.Сортировать("ДействуетДо убыв");
+ ПараметрыОбработки.Организация = ОрганизацииСИстекшимКлючем[0].Организация;
+ КонецЕсли;
+
+КонецПроцедуры
+
+#КонецОбласти
+
+#Область СлужебныеПроцедурыИФункции
+
+Функция ОбработкаРезультатаЕмкостьУпаковкиПоGTIN(ИсходныеДанные)
+
+ Результат = Новый Соответствие();
+ ОписаниеЧисло = Новый ОписаниеТипов("Число");
+ Для Каждого КлючИЗначение Из ИсходныеДанные Цикл
+
+ GTIN = КлючИЗначение.Ключ;
+ ДанныеОписанияТовара = КлючИЗначение.Значение;
+ ЕмкостьУпаковки = ОписаниеЧисло.ПривестиЗначение(ДанныеОписанияТовара.ЕмкостьУпаковки);
+ Если Не ЗначениеЗаполнено(ЕмкостьУпаковки) Тогда
+ Продолжить;
+ КонецЕсли;
+
+ Результат.Вставить(GTIN, ЕмкостьУпаковки);
+
+ КонецЦикла;
+
+ Возврат Результат;
+
+КонецФункции
+
+Функция ОбработкаМестаОсуществленияДеятельности(ИсходныеДанные)
+
+ ВозвращаемоеЗначение = Новый Массив();
+ КешДобавленных = Новый Соответствие();
+
+ Для Каждого СтрокаДанных Из ИсходныеДанные Цикл
+
+ Если КешДобавленных[СтрокаДанных.КодФИАС] <> Неопределено Тогда
+ Продолжить;
+ КонецЕсли;
+
+ НоваяСтрокаДанных = Новый Структура();
+ НоваяСтрокаДанных.Вставить("КодФИАС", СтрокаДанных.КодФИАС);
+ НоваяСтрокаДанных.Вставить("ДанныеАдреса", "");
+ НоваяСтрокаДанных.Вставить("ПредставлениеАдреса", "");
+ НоваяСтрокаДанных.Вставить("ИНН", СтрокаДанных.ИНН);
+ НоваяСтрокаДанных.Вставить("КПП", СтрокаДанных.КПП);
+ НоваяСтрокаДанных.Вставить("ТоварныеГруппы", СтрокаДанных.ТоварныеГруппы);
+
+ Если СтрокаДанных.КодФИАС <> Неопределено Тогда
+ НоваяСтрокаДанных.ДанныеАдреса = РаботаСАдресами.АдресПоИдентификатору(СтрокаДанных.КодФИАС);
+
+ Если НоваяСтрокаДанных.ДанныеАдреса <> Неопределено Тогда
+ НоваяСтрокаДанных.ПредставлениеАдреса = УправлениеКонтактнойИнформацией.ПредставлениеКонтактнойИнформации(
+ НоваяСтрокаДанных.ДанныеАдреса);
+ КонецЕсли;
+
+ КонецЕсли;
+
+ ВозвращаемоеЗначение.Добавить(НоваяСтрокаДанных);
+
+ Если НоваяСтрокаДанных.КодФИАС <> Неопределено Тогда
+ КешДобавленных[СтрокаДанных.КодФИАС] = НоваяСтрокаДанных;
+ КонецЕсли;
+
+ КонецЦикла;
+
+ Возврат ВозвращаемоеЗначение;
+
+КонецФункции
+
// Возвращает массив доступных видов продукции по ТН ВЭД и ОКПД2.
//
// Параметры:
@@ -255,327 +610,4 @@
КонецФункции
-#КонецОбласти
-
-#Область СлужебныйПрограммныйИнтерфейс
-
-Процедура ЗапросМетодаИнтерфейсаСОбработкой(ПараметрыОбработки) Экспорт
-
- Если Не ЭлектроннаяПодпись.ИспользоватьЭлектронныеПодписи()
- И Не ПараметрыОбработки.ПроверкаПоТокенуРозничнойПродажи
- И Не ПараметрыОбработки.НеТребуетсяАвторизацияПоКлючуСессии Тогда
- ПараметрыОбработки.ЕстьОшибки = Истина;
- ПараметрыОбработки.ТекстОшибки = НСтр("ru = 'Подсистема электронной подписи отключена.'");
- Возврат;
- КонецЕсли;
-
- ЗаполнитьОрганизациюПараметровОбработкиПоКлючуСессии(ПараметрыОбработки);
-
- Если Не ЗначениеЗаполнено(ПараметрыОбработки.Организация)
- И ПараметрыОбработки.ОрганизацияПоСертификатам = Неопределено Тогда
- ПараметрыОбработки.ОрганизацияПоСертификатам = Истина;
- Возврат;
- КонецЕсли;
-
- ТребуетсяОбновлениеКлючаСессии = Ложь;
- ТребуетсяОбновлениеКлючаСессииРозница = Ложь;
- ТекстОшибки = Неопределено;
- ДанныеДляОбработки = Неопределено;
-
- ДоступныеМетодыИнтерфейса = ИнтерфейсИСМПОбщегоНазначенияКлиентСервер.ДоступныеМетодыИнтерфейса();
-
- Если ПараметрыОбработки.ИмяОбработчика = ДоступныеМетодыИнтерфейса.ЕмкостьУпаковкиПоGTIN Тогда
-
- ТаблицаНоменклатуры = Новый ТаблицаЗначений();
- ТаблицаНоменклатуры.Колонки.Добавить("Номенклатура", Метаданные.ОпределяемыеТипы.Номенклатура.Тип);
- ТаблицаНоменклатуры.Колонки.Добавить("Характеристика", Метаданные.ОпределяемыеТипы.ХарактеристикаНоменклатуры.Тип);
-
- НоваяСтрока = ТаблицаНоменклатуры.Добавить();
- НоваяСтрока.Номенклатура = ПараметрыОбработки.Параметры.Номенклатура;
- МассивGTIN = Новый Массив();
- ШтрихкодированиеОбщегоНазначенияИС.ЗаполнитьПроверяемыеGTIN(ТаблицаНоменклатуры, МассивGTIN, Новый Соответствие(),, Ложь);
-
- Если МассивGTIN.Количество() = 0 Тогда
-
- ТекстОшибки = НСтр("ru = 'Не найдено GTIN для получения емкости упаковки по данным ГИС МТ.'");
-
- Иначе
-
- Результат = ИнтерфейсИСМПОбщегоНазначения.ДанныеПродукцииПоШтрихкодуEAN(
- МассивGTIN,
- ПараметрыОбработки.Организация);
-
- ТребуетсяОбновлениеКлючаСессии = Результат.ТребуетсяОбновлениеКлючаСессии;
- ТекстОшибки = Результат.ТекстОшибки;
- ДанныеДляОбработки = Результат.ДанныеПродукцииПоШтрихкодуEAN;
-
- КонецЕсли;
-
- ИначеЕсли ПараметрыОбработки.ИмяОбработчика = ДоступныеМетодыИнтерфейса.МестаОсуществленияДеятельности Тогда
-
- Результат = ИнтерфейсИСМПОбщегоНазначения.МестаОсуществленияДеятельности(ПараметрыОбработки.Организация, ПараметрыОбработки.ВидПродукции);
-
- ТребуетсяОбновлениеКлючаСессии = Результат.ТребуетсяОбновлениеКлючаСессии;
- ТекстОшибки = Результат.ТекстОшибки;
- ДанныеДляОбработки = Результат.МестаОсуществленияДеятельности;
-
- ИначеЕсли ПараметрыОбработки.ИмяОбработчика = ДоступныеМетодыИнтерфейса.СписокМестОсуществленияДеятельности Тогда
-
- Результат = ИнтерфейсИСМПОбщегоНазначения.СписокМестОсуществленияДеятельности(ПараметрыОбработки.Организация, ПараметрыОбработки.Параметры);
-
- ТребуетсяОбновлениеКлючаСессии = Результат.ТребуетсяОбновлениеКлючаСессии;
- ТекстОшибки = Результат.ТекстОшибки;
- ДанныеДляОбработки = Результат.МестаОсуществленияДеятельности;
-
- ИначеЕсли ПараметрыОбработки.ИмяОбработчика = ДоступныеМетодыИнтерфейса.АктуализацияCDNПлощадок Тогда
-
- ОбновлятьБезПроверкиДатыОбновления = Ложь;
- ИспользуетсяТСПИоТДляРР = Ложь;
-
- Если ТипЗнч(ПараметрыОбработки.Параметры) = Тип("Структура") Тогда
-
- Если ПараметрыОбработки.Параметры.Свойство("ОбновлятьБезПроверкиДатыОбновления") Тогда
- ОбновлятьБезПроверкиДатыОбновления = ПараметрыОбработки.Параметры.ОбновлятьБезПроверкиДатыОбновления;
- КонецЕсли;
-
- НомерФискальногоНакопителя = "";
- ККТ = Неопределено;
-
- Если ПараметрыОбработки.Параметры.Свойство("НомерФискальногоНакопителя") Тогда
- НомерФискальногоНакопителя = ПараметрыОбработки.Параметры.НомерФискальногоНакопителя;
- КонецЕсли;
-
- Если ПараметрыОбработки.Параметры.Свойство("ККТ") Тогда
- ККТ = ПараметрыОбработки.Параметры.ККТ;
- КонецЕсли;
-
- Если ЗначениеЗаполнено(ККТ) Или ЗначениеЗаполнено(НомерФискальногоНакопителя) Тогда
- ИспользуетсяТСПИоТДляРР = ИнтеграцияТСПИоТ.ПоПодключаемомуОборудованиюНастроеноПодключениеТСПИоТ(ККТ, НомерФискальногоНакопителя);
- КонецЕсли;
-
- КонецЕсли;
-
- Если ИспользуетсяТСПИоТДляРР Тогда
- ПараметрыОбработки.ВыполнениеВФоне = Ложь;
- Возврат;
- КонецЕсли;
-
- РезультатОбновления = ОбщегоНазначенияИСМПВызовСервера.ЗапуститьОбновлениеCDNПлощадок(ПараметрыОбработки.Организация, ПараметрыОбработки.УникальныйИдентификатор, ОбновлятьБезПроверкиДатыОбновления);
-
- ИначеЕсли ПараметрыОбработки.ИмяОбработчика = ДоступныеМетодыИнтерфейса.ИнициализацияКонфигурацииЛокальногоМодуляЧЗ Тогда
-
- РезультатНастройкиЛМЧЗ = ОбщегоНазначенияИСМПВызовСервера.ИнициализироватьКонфигурациюЛокальногоМодуляЧЗ(
- ПараметрыОбработки.Параметры.Организация,
- ПараметрыОбработки.Параметры.ПараметрыУстановки,
- ПараметрыОбработки.УникальныйИдентификатор);
-
- ИначеЕсли ПараметрыОбработки.ИмяОбработчика = ДоступныеМетодыИнтерфейса.ОбновлениеСтатусаЛокальногоМодуляЧЗ Тогда
-
- РезультатНастройкиЛМЧЗ = ОбщегоНазначенияИСМПВызовСервера.ЗапроситьСтатусЛокальногоМодуляЧЗ(
- ПараметрыОбработки.Параметры.Организация,
- ПараметрыОбработки.Параметры.ПараметрыУстановки,
- ПараметрыОбработки.УникальныйИдентификатор);
-
- ИначеЕсли ПараметрыОбработки.ИмяОбработчика = ДоступныеМетодыИнтерфейса.СменаПароляАдминистрированияЛокальногоМодуляЧЗ Тогда
-
- РезультатНастройкиЛМЧЗ = ОбщегоНазначенияИСМПВызовСервера.ИзменитьПарольАдминистратораЛокальногоМодуляЧЗ(
- ПараметрыОбработки.Параметры.Организация,
- ПараметрыОбработки.Параметры.ПараметрыУстановки,
- ПараметрыОбработки.Параметры.НовыйПароль,
- ПараметрыОбработки.УникальныйИдентификатор);
-
- ИначеЕсли ПараметрыОбработки.ИмяОбработчика = ДоступныеМетодыИнтерфейса.НастройкаСпискаТоварныхГрупп Тогда
-
- РезультатНастройкиЛМЧЗ = ОбщегоНазначенияИСМПВызовСервера.НастроитьТоварныеГруппыЛокальногоМодуляЧЗ(
- ПараметрыОбработки.Параметры.Организация,
- ПараметрыОбработки.Параметры.ПараметрыУстановки,
- ПараметрыОбработки.Параметры.ПараметрыНастройкиТоварныхГрупп,
- ПараметрыОбработки.УникальныйИдентификатор);
-
- ИначеЕсли ПараметрыОбработки.ИмяОбработчика = ДоступныеМетодыИнтерфейса.ПолучениеКонфигурацииЛокальногоМодуляЧЗ Тогда
-
- РезультатНастройкиЛМЧЗ = ОбщегоНазначенияИСМПВызовСервера.ПолучитьКонфигурациюЛокальногоМодуляЧЗ(
- ПараметрыОбработки.Параметры.Организация,
- ПараметрыОбработки.Параметры.ПараметрыУстановки,
- ПараметрыОбработки.УникальныйИдентификатор);
-
- ИначеЕсли ПараметрыОбработки.ИмяОбработчика = ДоступныеМетодыИнтерфейса.ТоварныеГруппыПоОрганизации Тогда
-
- ПараметрыВыполнения = ДлительныеОперации.ПараметрыВыполненияВФоне(ПараметрыОбработки.УникальныйИдентификатор);
- ПараметрыВыполнения.НаименованиеФоновогоЗадания = НСтр("ru = 'Товарные группы по организации'");
-
- ПараметрыФоновогоЗадания = Новый Структура;
- ПараметрыФоновогоЗадания.Вставить("Организация", ПараметрыОбработки.Организация);
- ПараметрыФоновогоЗадания.Вставить("ПараметрыЛогированияЗапросовИСМП", ПараметрыСеанса.ПараметрыЛогированияЗапросовИСМП);
-
- Если ОбщегоНазначенияИСМП.ЭтоРасширеннаяВерсияГосИС() Тогда
- МодульИнтеграцияИСПереопределяемый = ОбщегоНазначения.ОбщийМодуль("ИнтеграцияИСПереопределяемый");
- МодульИнтеграцияИСПереопределяемый.НастроитьДлительнуюОперацию(ПараметрыФоновогоЗадания, ПараметрыВыполнения);
- КонецЕсли;
-
- ДлительнаяОперация = ДлительныеОперации.ВыполнитьВФоне(
- "ОбщегоНазначенияИСМП.ТоварныеГруппыПоОрганизацииДлительнаяОперация",
- ПараметрыФоновогоЗадания, ПараметрыВыполнения);
-
- ИначеЕсли ПараметрыОбработки.ИмяОбработчика = ДоступныеМетодыИнтерфейса.ПолучениеДанныхНастройкиТСПИоТ Тогда
-
- РезультатНастроекТСПИоТ = ОбщегоНазначенияИСМПВызовСервера.ПолучитьДанныеНастройкиТСПИоТ(
- ПараметрыОбработки.Параметры.ПараметрыПодключения,
- ПараметрыОбработки.УникальныйИдентификатор);
-
- Иначе
- ВызватьИсключение СтрШаблон(
- НСтр("ru = 'Внутренняя ошибка. Не описан метод интерфейса с запросом ключа авторизации %1'"),
- ПараметрыОбработки.ИмяОбработчика);
- КонецЕсли;
-
- Если ТребуетсяОбновлениеКлючаСессии Тогда
-
- ПараметрыОбработки.ТребуетсяОбновлениеКлючаСессии = Истина;
-
- ИначеЕсли ТребуетсяОбновлениеКлючаСессииРозница Тогда
-
- ПараметрыОбработки.ТребуетсяОбновлениеКлючаСессииРозница = Истина;
-
- ИначеЕсли ЗначениеЗаполнено(ТекстОшибки) Тогда
-
- ПараметрыОбработки.ЕстьОшибки = Истина;
- ПараметрыОбработки.ТекстОшибки = ТекстОшибки;
-
- Иначе
-
- Если ПараметрыОбработки.ИмяОбработчика = ДоступныеМетодыИнтерфейса.ЕмкостьУпаковкиПоGTIN Тогда
- ПараметрыОбработки.Результат = ОбработкаРезультатаЕмкостьУпаковкиПоGTIN(ДанныеДляОбработки);
- ИначеЕсли ПараметрыОбработки.ИмяОбработчика = ДоступныеМетодыИнтерфейса.МестаОсуществленияДеятельности
- Или ПараметрыОбработки.ИмяОбработчика = ДоступныеМетодыИнтерфейса.СписокМестОсуществленияДеятельности Тогда
- ПараметрыОбработки.Результат = ОбработкаМестаОсуществленияДеятельности(ДанныеДляОбработки);
- ИначеЕсли ПараметрыОбработки.ИмяОбработчика = ДоступныеМетодыИнтерфейса.АктуализацияCDNПлощадок Тогда
- ПараметрыОбработки.ДлительнаяОперация = РезультатОбновления;
- ИначеЕсли ПараметрыОбработки.ИмяОбработчика = ДоступныеМетодыИнтерфейса.ТоварныеГруппыПоОрганизации Тогда
- ПараметрыОбработки.ДлительнаяОперация = ДлительнаяОперация;
- ИначеЕсли ПараметрыОбработки.ИмяОбработчика = ДоступныеМетодыИнтерфейса.ИнициализацияКонфигурацииЛокальногоМодуляЧЗ
- Или ПараметрыОбработки.ИмяОбработчика = ДоступныеМетодыИнтерфейса.ОбновлениеСтатусаЛокальногоМодуляЧЗ
- Или ПараметрыОбработки.ИмяОбработчика = ДоступныеМетодыИнтерфейса.СменаПароляАдминистрированияЛокальногоМодуляЧЗ
- Или ПараметрыОбработки.ИмяОбработчика = ДоступныеМетодыИнтерфейса.НастройкаСпискаТоварныхГрупп
- Или ПараметрыОбработки.ИмяОбработчика = ДоступныеМетодыИнтерфейса.ПолучениеКонфигурацииЛокальногоМодуляЧЗ Тогда
- ПараметрыОбработки.ДлительнаяОперация = РезультатНастройкиЛМЧЗ;
- ИначеЕсли ПараметрыОбработки.ИмяОбработчика = ДоступныеМетодыИнтерфейса.ПолучениеДанныхНастройкиТСПИоТ Тогда
- ПараметрыОбработки.ДлительнаяОперация = РезультатНастроекТСПИоТ;
- Иначе
- ВызватьИсключение НСтр("ru = 'Внутренняя ошибка. Не описан метод интерфейса с запросом ключа авторизации (после авторизации).'");
- КонецЕсли;
-
- КонецЕсли;
-
-КонецПроцедуры
-
-Процедура ЗаполнитьОрганизациюПараметровОбработкиПоКлючуСессии(ПараметрыОбработки) Экспорт
-
- Если ЗначениеЗаполнено(ПараметрыОбработки.Организация) Тогда
- Возврат;
- КонецЕсли;
-
- Если ПараметрыОбработки.ПроверкаПоТокенуРозничнойПродажи Тогда
- ПараметрыЗапроса = ИнтерфейсИСМПОбщегоНазначенияКлиентСервер.ПараметрыЗапросаКлючаСессииИСМПРозница();
- Иначе
- ПараметрыЗапроса = ИнтерфейсИСМПОбщегоНазначенияКлиентСервер.ПараметрыЗапросаКлючаСессии();
- КонецЕсли;
-
- ДанныеКлючаСессии = ИнтерфейсАвторизацииИСМПСлужебный.ПолучитьСохраненныеДанныеКлючаСессии(ПараметрыЗапроса.ИмяПараметраСеанса);
- ОрганизацииСИстекшимКлючем = Новый ТаблицаЗначений();
- ОрганизацииСИстекшимКлючем.Колонки.Добавить("Организация");
- ОрганизацииСИстекшимКлючем.Колонки.Добавить("ДействуетДо");
-
- Если ДанныеКлючаСессии <> Неопределено Тогда
- Для Каждого КлючИЗначение Из ДанныеКлючаСессии Цикл
- Организация = КлючИЗначение.Ключ;
- ПараметрыКлючаСессии = КлючИЗначение.Значение;
- ЭтоРозничныйТокен =
- (ПараметрыЗапроса.ИмяПараметраСеанса = ИнтерфейсИСМПОбщегоНазначенияКлиентСервер.ИмяДанныхКлючаСессии(Перечисления.ТипыТокеновАвторизации.ИСМПРозница));
-
- Если ЭтоРозничныйТокен
- И ИнтерфейсИСМПОбщегоНазначенияКлиентСервер.ДатаДействияТокенаИСМПРозница() > ТекущаяДатаСеанса() Тогда
- ПараметрыОбработки.Организация = Организация;
- Возврат;
- ИначеЕсли Не ЭтоРозничныйТокен И ПараметрыКлючаСессии.ДействуетДо > ТекущаяДатаСеанса() Тогда
- ПараметрыОбработки.Организация = Организация;
- Возврат;
- Иначе
- НоваяСтрока = ОрганизацииСИстекшимКлючем.Добавить();
- НоваяСтрока.Организация = Организация;
- НоваяСтрока.ДействуетДо = ПараметрыКлючаСессии.ДействуетДо;
- КонецЕсли;
- КонецЦикла;
- КонецЕсли;
-
- СертификатыДляПодписания = ИнтерфейсАвторизацииИСМПСлужебный.СертификатыДляПодписанияНаСервере();
-
- Если СертификатыДляПодписания <> Неопределено
- И СертификатыДляПодписания.Сертификаты.Количество() Тогда
- ПараметрыОбработки.Организация = СертификатыДляПодписания.Сертификаты[0].Организация;
- Возврат;
- КонецЕсли;
-
- Если ОрганизацииСИстекшимКлючем.Количество() Тогда
- ОрганизацииСИстекшимКлючем.Сортировать("ДействуетДо убыв");
- ПараметрыОбработки.Организация = ОрганизацииСИстекшимКлючем[0].Организация;
- КонецЕсли;
-
-КонецПроцедуры
-
-#КонецОбласти
-
-#Область СлужебныеПроцедурыИФункции
-
-Функция ОбработкаРезультатаЕмкостьУпаковкиПоGTIN(ИсходныеДанные)
-
- Результат = Новый Соответствие();
- ОписаниеЧисло = Новый ОписаниеТипов("Число");
- Для Каждого КлючИЗначение Из ИсходныеДанные Цикл
-
- GTIN = КлючИЗначение.Ключ;
- ДанныеОписанияТовара = КлючИЗначение.Значение;
- ЕмкостьУпаковки = ОписаниеЧисло.ПривестиЗначение(ДанныеОписанияТовара.ЕмкостьУпаковки);
- Если Не ЗначениеЗаполнено(ЕмкостьУпаковки) Тогда
- Продолжить;
- КонецЕсли;
-
- Результат.Вставить(GTIN, ЕмкостьУпаковки);
-
- КонецЦикла;
-
- Возврат Результат;
-
-КонецФункции
-
-Функция ОбработкаМестаОсуществленияДеятельности(ИсходныеДанные)
-
- ВозвращаемоеЗначение = Новый Массив();
- КешДобавленных = Новый Соответствие();
-
- Для Каждого СтрокаДанных Из ИсходныеДанные Цикл
-
- Если КешДобавленных[СтрокаДанных.КодФИАС] <> Неопределено Тогда
- Продолжить;
- КонецЕсли;
-
- НоваяСтрокаДанных = Новый Структура("КодФИАС, ДанныеАдреса, ПредставлениеАдреса", СтрокаДанных.КодФИАС);
-
- НоваяСтрокаДанных.ДанныеАдреса = РаботаСАдресами.АдресПоИдентификатору(СтрокаДанных.КодФИАС);
-
- Если НоваяСтрокаДанных.ДанныеАдреса <> Неопределено Тогда
- НоваяСтрокаДанных.ПредставлениеАдреса = УправлениеКонтактнойИнформацией.ПредставлениеКонтактнойИнформации(
- НоваяСтрокаДанных.ДанныеАдреса);
- КонецЕсли;
-
- ВозвращаемоеЗначение.Добавить(НоваяСтрокаДанных);
-
- КешДобавленных[СтрокаДанных.КодФИАС] = НоваяСтрокаДанных;
-
- КонецЦикла;
-
- Возврат ВозвращаемоеЗначение;
-
-КонецФункции
-
#КонецОбласти
\ No newline at end of file
diff --git a/src/CommonModules/ИнтерфейсИСМПОбщегоНазначенияКлиент/Ext/Module.bsl b/src/CommonModules/ИнтерфейсИСМПОбщегоНазначенияКлиент/Ext/Module.bsl
index f1a98844b..f9708e5c4 100644
--- a/src/CommonModules/ИнтерфейсИСМПОбщегоНазначенияКлиент/Ext/Module.bsl
+++ b/src/CommonModules/ИнтерфейсИСМПОбщегоНазначенияКлиент/Ext/Module.bsl
@@ -214,6 +214,36 @@
КонецПроцедуры
+// Регистрирует места осуществления деятельности в ГИС МТ (метод добавления).
+// Результат выполнения операции будет передан в ОписаниеОповещения в переданном параметре.
+//
+// Параметры:
+// ПараметрыЗапроса - (см. ИнтерфейсИСМПОбщегоНазначенияКлиент.ПараметрыЗапросаДанных).
+Процедура РегистрацияМестОсуществленияДеятельностиГИСМТ(ПараметрыЗапроса) Экспорт
+
+ ПараметрыОбработки = ПараметрыОбработкиЗапросаДанных(ПараметрыЗапроса);
+ ДоступныеМетодыИнтерфейса = ИнтерфейсИСМПОбщегоНазначенияКлиентСервер.ДоступныеМетодыИнтерфейса();
+ ПараметрыОбработки.ИмяОбработчика = ДоступныеМетодыИнтерфейса.РегистрацияМестОсуществленияДеятельностиГИСМТ;
+
+ ОбработкаМетодаИнтерфейсаСАвторизацией(ПараметрыЗапроса, ПараметрыОбработки);
+
+КонецПроцедуры
+
+// Удаляет место осуществления деятельности в ГИС МТ (метод удаления).
+// Результат выполнения операции будет передан в ОписаниеОповещения в переданном параметре.
+//
+// Параметры:
+// ПараметрыЗапроса - (см. ИнтерфейсИСМПОбщегоНазначенияКлиент.ПараметрыЗапросаДанных).
+Процедура УдалениеМестОсуществленияДеятельностиГИСМТ(ПараметрыЗапроса) Экспорт
+
+ ПараметрыОбработки = ПараметрыОбработкиЗапросаДанных(ПараметрыЗапроса);
+ ДоступныеМетодыИнтерфейса = ИнтерфейсИСМПОбщегоНазначенияКлиентСервер.ДоступныеМетодыИнтерфейса();
+ ПараметрыОбработки.ИмяОбработчика = ДоступныеМетодыИнтерфейса.УдалениеМестаОсуществленияДеятельностиГИСМТ;
+
+ ОбработкаМетодаИнтерфейсаСАвторизацией(ПараметрыЗапроса, ПараметрыОбработки);
+
+КонецПроцедуры
+
#КонецОбласти
#Область СлужебныеПроцедурыИФункции
@@ -332,6 +362,28 @@
КонецЕсли;
+ ИначеЕсли ПараметрыОбработки.ИмяОбработчика = ДоступныеМетодыИнтерфейса.РегистрацияМестОсуществленияДеятельностиГИСМТ Тогда
+
+ Если ПараметрыОбработки.ВыполнениеНаКлиенте Тогда
+
+ ПараметрыОбработки.ЕстьОшибки = Истина;
+ ПараметрыОбработки.ТекстОшибки = НСтр("ru = 'Данный метод недоступен на клиенте.'");
+
+ Возврат;
+
+ КонецЕсли;
+
+ ИначеЕсли ПараметрыОбработки.ИмяОбработчика = ДоступныеМетодыИнтерфейса.УдалениеМестаОсуществленияДеятельностиГИСМТ Тогда
+
+ Если ПараметрыОбработки.ВыполнениеНаКлиенте Тогда
+
+ ПараметрыОбработки.ЕстьОшибки = Истина;
+ ПараметрыОбработки.ТекстОшибки = НСтр("ru = 'Данный метод недоступен на клиенте.'");
+
+ Возврат;
+
+ КонецЕсли;
+
ИначеЕсли ПараметрыОбработки.ИмяОбработчика = ДоступныеМетодыИнтерфейса.АктуализацияCDNПлощадок Тогда
Если ПараметрыОбработки.ВыполнениеНаКлиенте Тогда
diff --git a/src/CommonModules/ИнтерфейсИСМПОбщегоНазначенияКлиентСервер/Ext/Module.bsl b/src/CommonModules/ИнтерфейсИСМПОбщегоНазначенияКлиентСервер/Ext/Module.bsl
index 497e0cc03..f93ea48cd 100644
--- a/src/CommonModules/ИнтерфейсИСМПОбщегоНазначенияКлиентСервер/Ext/Module.bsl
+++ b/src/CommonModules/ИнтерфейсИСМПОбщегоНазначенияКлиентСервер/Ext/Module.bsl
@@ -1232,6 +1232,8 @@
ВозвращаемоеЗначение.Вставить("ПолучениеКонфигурацииЛокальногоМодуляЧЗ", "ПолучениеКонфигурацииЛокальногоМодуляЧЗ");
ВозвращаемоеЗначение.Вставить("ПолучениеДанныхНастройкиТСПИоТ", "ПолучениеДанныхНастройкиТСПИоТ");
ВозвращаемоеЗначение.Вставить("ТоварныеГруппыПоОрганизации", "ТоварныеГруппыПоОрганизации");
+ ВозвращаемоеЗначение.Вставить("РегистрацияМестОсуществленияДеятельностиГИСМТ", "РегистрацияМестОсуществленияДеятельностиГИСМТ");
+ ВозвращаемоеЗначение.Вставить("УдалениеМестаОсуществленияДеятельностиГИСМТ", "УдалениеМестаОсуществленияДеятельностиГИСМТ");
Возврат ВозвращаемоеЗначение;
diff --git a/src/CommonModules/ИнтерфейсИСМПСлужебный/Ext/Module.bsl b/src/CommonModules/ИнтерфейсИСМПСлужебный/Ext/Module.bsl
index 4efb30417..feea4b2c2 100644
--- a/src/CommonModules/ИнтерфейсИСМПСлужебный/Ext/Module.bsl
+++ b/src/CommonModules/ИнтерфейсИСМПСлужебный/Ext/Module.bsl
@@ -116,7 +116,7 @@
Если ИсточникДанных["productGroup"] <> Неопределено И ЗначениеЗаполнено( ИсточникДанных["productGroup"]) Тогда
ДанныеДляУточненияТоварнойГруппы = ИнтерфейсИСМПОбщегоНазначенияКлиентСервер.ДанныеДляУточненияТоварнойГруппы();
ДанныеДляУточненияТоварнойГруппы.ВидПродукции = ВидПродукции;
- ПараметрыКодаМаркировки.ВидПродукции = ИнтерфейсИСМПОбщегоНазначенияКлиентСервер.ТоварнаяГруппа(
+ ПараметрыКодаМаркировки.ВидПродукции = ОбщегоНазначенияИСМПКлиентСерверПовтИсп.ТоварнаяГруппа(
ИсточникДанных["productGroup"], ДанныеДляУточненияТоварнойГруппы);
КонецЕсли;
diff --git a/src/CommonModules/ИнтерфейсМОТП/Ext/Module.bsl b/src/CommonModules/ИнтерфейсМОТП/Ext/Module.bsl
index dc7a77a6b..1172a63d2 100644
--- a/src/CommonModules/ИнтерфейсМОТП/Ext/Module.bsl
+++ b/src/CommonModules/ИнтерфейсМОТП/Ext/Module.bsl
@@ -84,7 +84,7 @@
НастройкиРазбораКодаМаркировки = Новый Структура;
НастройкиРазбораКодаМаркировки.Вставить("Кеш", РазборКодаМаркировкиИССлужебныйКлиентСервер.ИнициализироватьНастройкиИспользующиеРезультатыПредыдущихРазборов());
- НастройкиРазбораКодаМаркировки.Вставить("Общие", РазборКодаМаркировкиИССлужебный.НастройкиРазбораКодаМаркировки(, Ложь));
+ НастройкиРазбораКодаМаркировки.Вставить("Общие", РазборКодаМаркировкиИССлужебныйПовтИсп.НастройкиРазбораКодаМаркировки(, Ложь));
НастройкиРазбораКодаМаркировки.Вставить("Пользовательские", ПользовательскиеПараметрыРазбораКодаМаркировки);
ПараметрыНабораПакетов = НовыеПараметрыНабораПакетов();
@@ -377,7 +377,7 @@
КонецЕсли;
- ИначеЕсли СтрокаКодаМаркировки <> Перечисления.ВидыУпаковокИС.Потребительская Тогда
+ ИначеЕсли СтрокаКодаМаркировки.ВидУпаковки <> Перечисления.ВидыУпаковокИС.Потребительская Тогда
ДанныеОбАгрегации.Вставить(СтрокаКодаМаркировки, ВложенныеУпаковки.Количество());
@@ -851,6 +851,7 @@
// СтатусыКодовМаркировкиКеш - Соответствие, Неопределено - Кеш статусов кодов маркировки.
// Организация - ОпределяемыйТип.Организация - Организация.
// ЗапрашиватьСтатусыКодовЕАЭС - Булево - флаг использования запроса для проверки в сервисе.
+// РазбиратьВложения - Булево - флаг необходимости разбора вложенных кодов маркировки.
// Возвращаемое значение:
// Структура - Описание:
// * ТребуетсяОбновлениеКлючаСессии - Булево - Признак необходимости обновления ключа сессии.
@@ -859,7 +860,7 @@
// * Статус - ПеречислениеСсылка.СтатусыКодовМаркировкиИСМП - Статус кода маркировки.
// * ИННВладельца - Строка - ИНН владельца кода маркировки.
// * ТекстОшибки - Строка - Текст сообщения об ошибке.
-Функция ЗапроситьСтатусыКодовМаркировки(ДанныеДляЗапроса, Организация = Неопределено, ЗапрашиватьСтатусыКодовЕАЭС = Ложь) Экспорт
+Функция ЗапроситьСтатусыКодовМаркировки(ДанныеДляЗапроса, Организация = Неопределено, ЗапрашиватьСтатусыКодовЕАЭС = Ложь, РазбиратьВложения = Истина) Экспорт
КлючСессии = ИнтерфейсАвторизацииИСМПСлужебный.ПроверитьОбновитьКлючСессии(
ОбщегоНазначенияИСМПКлиентСервер.ПараметрыЗапросаКлючаСессии(Организация));
@@ -967,8 +968,7 @@
Если СтрокиДляЗапроса.Количество() Тогда
- ОбщиеНастройкиРазбора = РазборКодаМаркировкиИССлужебный.НастройкиРазбораКодаМаркировки(
- КонструкторИСОбщегоНазначенияКлиентСервер.ВидыПродукцииИСМП(Истина), Ложь);
+ ОбщиеНастройкиРазбора = РазборКодаМаркировкиИССлужебныйПовтИсп.НастройкиРазбораКодаМаркировки(, Ложь);
ПользовательскиеПараметрыРазбораКодаМаркировки = РазборКодаМаркировкиИССлужебныйКлиентСервер.ПользовательскиеПараметрыРазбораКодаМаркировки();
ПользовательскиеПараметрыРазбораКодаМаркировки.ПроверятьАлфавитЭлементов = Ложь;
@@ -983,6 +983,7 @@
ПараметрыЗапросаСтатусов.СтатусыКодовМаркировкиКеш = СтатусыКодовМаркировки;
ПараметрыЗапросаСтатусов.НастройкиРазбора = НастройкиРазбора;
ПараметрыЗапросаСтатусов.ЗапрашиватьСтатусыКодовЕАЭС = ЗапрашиватьСтатусыКодовЕАЭС;
+ ПараметрыЗапросаСтатусов.РазбиратьВложения = РазбиратьВложения;
РезультатЗапросаСтатусовКодовМаркировок = ЗапроситьСтатусыКодовМаркировкиПакетно(
СтрокиДляЗапроса, ПараметрыЗапросаСтатусов);
@@ -1082,6 +1083,7 @@
СтатусыКодовМаркировкиКеш = ПараметрыЗапросаСтатусов.СтатусыКодовМаркировкиКеш;
НастройкиРазбора = ПараметрыЗапросаСтатусов.НастройкиРазбора;
ЗапрашиватьСтатусыКодовЕАЭС = ПараметрыЗапросаСтатусов.ЗапрашиватьСтатусыКодовЕАЭС;
+ РазбиратьВложения = ПараметрыЗапросаСтатусов.РазбиратьВложения;
ПараметрыЗапросаКлючаСессии = ОбщегоНазначенияИСМПКлиентСервер.ПараметрыЗапросаКлючаСессии(Организация);
КлючСессии = ИнтерфейсАвторизацииИСМПСлужебный.ПроверитьОбновитьКлючСессии(ПараметрыЗапросаКлючаСессии);
@@ -1295,7 +1297,7 @@
НастройкиРазбораКодаМаркировки = Новый Структура;
НастройкиРазбораКодаМаркировки.Вставить("Кеш", РазборКодаМаркировкиИССлужебныйКлиентСервер.ИнициализироватьНастройкиИспользующиеРезультатыПредыдущихРазборов());
- НастройкиРазбораКодаМаркировки.Вставить("Общие", РазборКодаМаркировкиИССлужебный.НастройкиРазбораКодаМаркировки(, Ложь));
+ НастройкиРазбораКодаМаркировки.Вставить("Общие", РазборКодаМаркировкиИССлужебныйПовтИсп.НастройкиРазбораКодаМаркировки(, Ложь));
НастройкиРазбораКодаМаркировки.Вставить("Пользовательские", ПользовательскиеПараметрыРазбораКодаМаркировки);
Иначе
НастройкиРазбораКодаМаркировки = НастройкиРазбора;
@@ -1303,6 +1305,10 @@
РезультатыОтправкиДляОбработки = Новый Массив;
+ СтруктураДополнительныхПараметров = Новый Структура();
+ СтруктураДополнительныхПараметров.Вставить("НастройкиРазбора", НастройкиРазбораКодаМаркировки);
+ СтруктураДополнительныхПараметров.Вставить("РазбиратьВложения", РазбиратьВложения);
+
Для Каждого КлючИЗначениеПараметровЗапроса Из ПараметрыЗапросаПоТоварнымГруппам Цикл
ТоварнаяГруппа = КлючИЗначениеПараметровЗапроса.Ключ;
@@ -1424,6 +1430,11 @@
ДобавленныеСтрокиБез404 = Новый Соответствие();
+ Эталон = Новый Структура;
+ Эталон.Вставить("Источник", Неопределено);
+ Эталон.Вставить("Результат", Неопределено);
+ Эталон.Вставить("КлючиСравнения", ИнтерфейсИСМПОбщегоНазначения.КлючиХешаПараметровКодаМаркировкиМОТП());
+
Для Каждого ЭлементДанных Из ДанныеОбработки Цикл
ДанныеКодаМаркировки = ЭлементДанных["cisInfo"];
@@ -1465,9 +1476,6 @@
Иначе
- СтруктураДополнительныхПараметров = Новый Структура();
- СтруктураДополнительныхПараметров.Вставить("НастройкиРазбора", НастройкиРазбораКодаМаркировки);
-
ВидПродукции = Неопределено;
Если СтрокаТаблицы <> Неопределено
@@ -1498,7 +1506,7 @@
КонецЕсли;
ПараметрыКодаМаркировки = ИнтерфейсИСМПОбщегоНазначения.ПараметрыКодаМаркировкиМОТП(
- ДанныеКодаМаркировки, ВидПродукции, СтруктураДополнительныхПараметров);
+ ДанныеКодаМаркировки, ВидПродукции, СтруктураДополнительныхПараметров, Эталон);
КонецЕсли;
@@ -2732,6 +2740,7 @@
Результат.Вставить("ПолеИсточник", Неопределено);
Результат.Вставить("НастройкиРазбора", Неопределено);
Результат.Вставить("ЗапрашиватьСтатусыКодовЕАЭС", Ложь);
+ Результат.Вставить("РазбиратьВложения", Истина);
Возврат Результат;
diff --git a/src/CommonModules/КонвертацияЭДО/Ext/Module.bsl b/src/CommonModules/КонвертацияЭДО/Ext/Module.bsl
index 324ce9e66..44ec78d51 100644
--- a/src/CommonModules/КонвертацияЭДО/Ext/Module.bsl
+++ b/src/CommonModules/КонвертацияЭДО/Ext/Module.bsl
@@ -112,6 +112,9 @@
Возврат Неопределено;
КонецЕсли;
+ Преобразователь.ДобавитьПараметр("ВерсияБЭД",
+ СтрШаблон("'%1'", ОбновлениеИнформационнойБазыБЭД.ВерсияБиблиотеки()));
+
Иначе
Кодировка = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(Параметры, "Кодировка");
ТекстПравила = ТекстПравилаПреобразованияФормата(Параметры, КонтекстДиагностики);
diff --git a/src/CommonModules/КонструкторИСМПКлиентСервер/Ext/Module.bsl b/src/CommonModules/КонструкторИСМПКлиентСервер/Ext/Module.bsl
index 9bcecf81b..b640ea382 100644
--- a/src/CommonModules/КонструкторИСМПКлиентСервер/Ext/Module.bsl
+++ b/src/CommonModules/КонструкторИСМПКлиентСервер/Ext/Module.bsl
@@ -18,7 +18,6 @@
// Массив из СправочникСсылка.ВидыПродукцииИС
Функция ВидыПродукцииВнутреннегоПеремещенияМеждуМОД() Экспорт
-
Возврат КонструкторИСОбщегоНазначенияКлиентСервер.ВидыПродукцииПоЭлементуКонструктора(
ПредопределенноеЗначение(
"Справочник.ЭлементыКонструктораВидовПродукцииИС.ПеремещениеМеждуМОД"));
diff --git a/src/CommonModules/КонструкторИСМПОбщегоНазначенияКлиентСервер/Ext/Module.bsl b/src/CommonModules/КонструкторИСМПОбщегоНазначенияКлиентСервер/Ext/Module.bsl
index b857aaaf6..dccb7b2ba 100644
--- a/src/CommonModules/КонструкторИСМПОбщегоНазначенияКлиентСервер/Ext/Module.bsl
+++ b/src/CommonModules/КонструкторИСМПОбщегоНазначенияКлиентСервер/Ext/Module.bsl
@@ -508,11 +508,11 @@
Если Результат = Неопределено
И ОбщегоНазначенияИСКлиентСерверПовтИсп.ЭтоРасширеннаяВерсияГосИС() Тогда
#Если Клиент Или ТонкийКлиент Или ВебКлиент Или МобильноеПриложениеКлиент Или МобильныйКлиент Тогда
- МолульКонструкторИСМПКлиентСервер = ОбщегоНазначенияКлиент.ОбщийМодуль("КонструкторИСМПКлиентСервер");
+ МодульКонструкторИСМПКлиентСервер = ОбщегоНазначенияКлиент.ОбщийМодуль("КонструкторИСМПКлиентСервер");
#Иначе
- МолульКонструкторИСМПКлиентСервер = ОбщегоНазначенияИСПовтИсп.ОбщийМодуль("КонструкторИСМПКлиентСервер");
+ МодульКонструкторИСМПКлиентСервер = ОбщегоНазначенияИСПовтИсп.ОбщийМодуль("КонструкторИСМПКлиентСервер");
#КонецЕсли
- Результат = МолульКонструкторИСМПКлиентСервер.ЭлементКонструктораДляОпределенияДоступныхВидовПродукции(Объект);
+ Результат = МодульКонструкторИСМПКлиентСервер.ЭлементКонструктораДляОпределенияДоступныхВидовПродукции(Объект);
КонецЕсли;
Если Результат = Неопределено Тогда
diff --git a/src/CommonModules/КонструкторИСОбщегоНазначенияКлиентСервер/Ext/Module.bsl b/src/CommonModules/КонструкторИСОбщегоНазначенияКлиентСервер/Ext/Module.bsl
index dc3e09ece..d5f90f688 100644
--- a/src/CommonModules/КонструкторИСОбщегоНазначенияКлиентСервер/Ext/Module.bsl
+++ b/src/CommonModules/КонструкторИСОбщегоНазначенияКлиентСервер/Ext/Module.bsl
@@ -962,6 +962,13 @@
// Массив из ОпределяемыйТип.ЗначениеЭлементаКонструктораВидовПродукцииИС - значение.
Функция ЗначенияЭлементаКонструктораПоВидуПродукции(ЭлементКонструктора, ВидПродукции) Экспорт
+ КешРезультатовФункции = Неопределено;
+ Результат = ОбщегоНазначенияИСКлиентСервер.ПрочитатьКеш(
+ ОбщегоНазначенияИСКлиентСерверПовтИсп.ГлобальныйКеш(), ЭлементКонструктора, ВидПродукции, КешРезультатовФункции);
+ Если Результат <> Неопределено Тогда
+ Возврат Результат;
+ КонецЕсли;
+
Если ТипЗнч(ВидПродукции) = Тип("Массив")
Или ТипЗнч(ВидПродукции) = Тип("ФиксированныйМассив") Тогда
ВидыПродукции = ВидПродукции;
@@ -975,27 +982,37 @@
ДанныеЭлемента = ДанныеЭлементаКонструктора(ЭлементКонструктора);
Если Не ДанныеЭлемента.Параметризуется Тогда
+
+ Результат = Ложь;
+
Для Каждого ТекущийВидПродукции Из ВидыПродукции Цикл
Значения = ДанныеЭлемента.ВидыПродукции[ТекущийВидПродукции];
Если Значения <> Неопределено Тогда
- Возврат Истина;
+ Результат = Истина;
+ Прервать;
КонецЕсли;
КонецЦикла;
- Возврат Ложь;
+
+ Иначе
+
+ Результат = Новый Массив;
+
+ Для Каждого ТекущийВидПродукции Из ВидыПродукции Цикл
+ Значения = ДанныеЭлемента.ВидыПродукции[ТекущийВидПродукции];
+ Если Значения <> Неопределено Тогда
+ Для Каждого КлючИЗначение Из Значения Цикл
+ Если Результат.Найти(КлючИЗначение.Ключ) = Неопределено Тогда
+ Результат.Добавить(КлючИЗначение.Ключ);
+ КонецЕсли;
+ КонецЦикла;
+ КонецЕсли;
+ КонецЦикла;
+
КонецЕсли;
- Результат = Новый Массив;
-
- Для Каждого ТекущийВидПродукции Из ВидыПродукции Цикл
- Значения = ДанныеЭлемента.ВидыПродукции[ТекущийВидПродукции];
- Если Значения <> Неопределено Тогда
- Для Каждого КлючИЗначение Из Значения Цикл
- Если Результат.Найти(КлючИЗначение.Ключ) = Неопределено Тогда
- Результат.Добавить(КлючИЗначение.Ключ);
- КонецЕсли;
- КонецЦикла;
- КонецЕсли;
- КонецЦикла;
+ Если КешРезультатовФункции <> Неопределено Тогда
+ КешРезультатовФункции.Вставить(ВидПродукции, Результат);
+ КонецЕсли;
Возврат Результат;
@@ -1010,6 +1027,13 @@
// Массив из СправочникСсылка.ВидыПродукцииИС - виды продукции по элементу конструктора.
Функция ВидыПродукцииПоЭлементуКонструктора(ЭлементКонструктора) Экспорт
+ КешРезультатовФункции = Неопределено;
+ Результат = ОбщегоНазначенияИСКлиентСервер.ПрочитатьКеш(
+ ОбщегоНазначенияИСКлиентСерверПовтИсп.ГлобальныйКеш(), ЭлементКонструктора, "", КешРезультатовФункции);
+ Если Результат <> Неопределено Тогда
+ Возврат Результат;
+ КонецЕсли;
+
ДанныеЭлемента = ДанныеЭлементаКонструктора(ЭлементКонструктора);
Результат = Новый Массив;
@@ -1017,6 +1041,10 @@
Результат.Добавить(КлючИЗначение.Ключ);
КонецЦикла;
+ Если КешРезультатовФункции <> Неопределено Тогда
+ КешРезультатовФункции.Вставить("", Результат);
+ КонецЕсли;
+
Возврат Результат;
КонецФункции
diff --git a/src/CommonModules/КорректировкаРеализацииЛокализация/Ext/Module.bsl b/src/CommonModules/КорректировкаРеализацииЛокализация/Ext/Module.bsl
index a34944424..858088599 100644
--- a/src/CommonModules/КорректировкаРеализацииЛокализация/Ext/Module.bsl
+++ b/src/CommonModules/КорректировкаРеализацииЛокализация/Ext/Module.bsl
@@ -67,10 +67,15 @@
Объект.ШтрихкодыУпаковок.Загрузить(ШтрихкодыУпаковок.Выгрузить());
КонецЕсли;
ИначеЕсли ТипЗнч(ДанныеЗаполнения) = Тип("Структура")
- И ДанныеЗаполнения.Свойство("АктОРасхожденияхПослеОтгрузкиОснование") Тогда
- //Объект.ШтрихкодыУпаковок.Загрузить(ДанныеЗаполнения.АктОРасхожденияхПослеОтгрузкиОснование.ШтрихкодыУпаковок.Выгрузить());
+ И ДанныеЗаполнения.Свойство("ДокументОснование")
+ И ТипЗнч(ДанныеЗаполнения.ДокументОснование) = Тип("ДокументСсылка.РеализацияТоваровУслуг") Тогда
+ ШтрихкодыУпаковок = ОбщегоНазначения.ЗначениеРеквизитаОбъекта(ДанныеЗаполнения.ДокументОснование, "ШтрихкодыУпаковок");
+ Если ШтрихкодыУпаковок <> Неопределено Тогда
+ Объект.ШтрихкодыУпаковок.Загрузить(ШтрихкодыУпаковок.Выгрузить());
+ КонецЕсли;
+ ИначеЕсли ТипЗнч(ДанныеЗаполнения) = Тип("Структура")
+ И ДанныеЗаполнения.Свойство("АктОРасхожденияхПослеОтгрузкиОснование") Тогда
ЗаполнитьШтрихкодыУпаковокПоАктуОРасхожденияхПослеОтгрузки(Объект, ДанныеЗаполнения);
-
КонецЕсли;
Если ТипЗнч(ДанныеЗаполнения) = Тип("Структура")
@@ -1512,63 +1517,32 @@
ПараметрыЗаполнения.ВключаяНомераГТД = Истина;
ПараметрыЗаполнения.ВключаяДоКорректировки = Истина;
ПараметрыЗаполнения.ОбработатьНастройкиПечатиНаборов = Истина;
+ ПараметрыЗаполнения.НужныДанныеПоИсходнымДокументам = Истина;
ПоместитьВременнуюТаблицуТоваров(МенеджерВременныхТаблиц, ПараметрыЗаполнения);
ОтветственныеЛицаСервер.СформироватьВременнуюТаблицуОтветственныхЛицДокументов(МассивОбъектов, МенеджерВременныхТаблиц);
СформироватьВременнуюТаблицуНоменклатураДокументов(МенеджерВременныхТаблиц);
+ ПолучитьИсходныеДокументы(МенеджерВременныхТаблиц);
Запрос.Текст =
"ВЫБРАТЬ
- | ТаблицаДанныхДокументов.Ссылка КАК Ссылка,
- | ДанныеОснования.Номер КАК НомерСчетаФактуры,
- | ДанныеОснования.Дата КАК ДатаСчетаФактуры,
- | НЕОПРЕДЕЛЕНО КАК НомерИсправленияСчетаФактуры,
- | НЕОПРЕДЕЛЕНО КАК ДатаИсправленияСчетаФактуры
- |
- |ИЗ
- | ТаблицаДанныхДокументов КАК ТаблицаДанныхДокументов
- | ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.РеализацияТоваровУслуг КАК ДанныеОснования
- | ПО ТаблицаДанныхДокументов.ДокументОснование = ДанныеОснования.Ссылка
- |
- |ОБЪЕДИНИТЬ ВСЕ
- |
- |ВЫБРАТЬ
- | ТаблицаДанныхДокументов.Ссылка,
- | ДанныеОснования.Номер,
- | ДанныеОснования.Дата,
- | НЕОПРЕДЕЛЕНО,
- | НЕОПРЕДЕЛЕНО
- |ИЗ
- | ТаблицаДанныхДокументов КАК ТаблицаДанныхДокументов
- | ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.РеализацияУслугПрочихАктивов КАК ДанныеОснования
- | ПО ТаблицаДанныхДокументов.ДокументОснование = ДанныеОснования.Ссылка
- |
- |ОБЪЕДИНИТЬ ВСЕ
- |
- |ВЫБРАТЬ
- | ТаблицаДанныхДокументов.Ссылка,
- | ДанныеОснования.Номер,
- | ДанныеОснования.Дата,
- | НЕОПРЕДЕЛЕНО,
- | НЕОПРЕДЕЛЕНО
- |ИЗ
- | ТаблицаДанныхДокументов КАК ТаблицаДанныхДокументов
- | ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.АктВыполненныхРабот КАК ДанныеОснования
- | ПО ТаблицаДанныхДокументов.ДокументОснование = ДанныеОснования.Ссылка
- |
- |ОБЪЕДИНИТЬ ВСЕ
- |
- |ВЫБРАТЬ
- | ТаблицаДанныхДокументов.Ссылка,
- | ДанныеОснования.Номер,
- | ДанныеОснования.Дата,
- | НЕОПРЕДЕЛЕНО,
- | НЕОПРЕДЕЛЕНО
- |ИЗ
- | ТаблицаДанныхДокументов КАК ТаблицаДанныхДокументов
- | ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.ПервичныйДокумент КАК ДанныеОснования
- | ПО ТаблицаДанныхДокументов.ДокументОснование = ДанныеОснования.Ссылка
+ | ДанныеИсходныхДокументов.Ссылка КАК Ссылка,
+ | ЕСТЬNULL(Исправления.ИсходныйДокумент, ДанныеИсходныхДокументов.ИсходныйДокумент) КАК ИсходныйДокумент,
+ | ДанныеИсходныхДокументов.НомерСчетаФактуры КАК НомерСчетаФактуры,
+ | ДанныеИсходныхДокументов.ДатаСчетаФактуры КАК ДатаСчетаФактуры,
+ | МАКСИМУМ(ДанныеИсходныхДокументов.НомерИсправленияСчетаФактуры) КАК НомерИсправленияСчетаФактуры,
+ | МАКСИМУМ(ДанныеИсходныхДокументов.ДатаИсправленияСчетаФактуры) КАК ДатаИсправленияСчетаФактуры
+ |ИЗ ДанныеИсходныхДокументов КАК ДанныеИсходныхДокументов
+ | ЛЕВОЕ СОЕДИНЕНИЕ ДанныеИсходныхДокументов КАК Исправления
+ | ПО ДанныеИсходныхДокументов.Ссылка = Исправления.Ссылка
+ | И ДанныеИсходныхДокументов.НомерСчетаФактуры = Исправления.НомерСчетаФактуры
+ | И ДанныеИсходныхДокументов.ДатаСчетаФактуры = Исправления.ДатаСчетаФактуры
+ |СГРУППИРОВАТЬ ПО
+ | ДанныеИсходныхДокументов.Ссылка,
+ | ЕСТЬNULL(Исправления.ИсходныйДокумент, ДанныеИсходныхДокументов.ИсходныйДокумент),
+ | ДанныеИсходныхДокументов.НомерСчетаФактуры,
+ | ДанныеИсходныхДокументов.ДатаСчетаФактуры
|
|ИТОГИ ПО
| Ссылка
@@ -3017,7 +2991,7 @@
| 0 КАК КоличествоПоРНПТ,
| ЕСТЬNULL(СуммыРегл.СуммаБезНДСРегл, ЕСТЬNULL(Товары.Сумма, 0)) КАК СуммаБезНДС,
|
- | Расхождения.СтавкаНДС КАК СтавкаНДС,
+ | Товары.СтавкаНДС КАК СтавкаНДС,
|
| ЕСТЬNULL(СуммыРегл.СуммаНДСРегл, ЕСТЬNULL(Товары.СуммаНДС, 0)) КАК СуммаНДС,
|
@@ -3548,14 +3522,15 @@
| НомерСтроки
|;
|/////////////////////////////////////////////////////////////////////////////
- |УНИЧТОЖИТЬ ВтСвязанныеДокументы
- |;
- |/////////////////////////////////////////////////////////////////////////////
|УНИЧТОЖИТЬ СтрокиТоваров
|;
|/////////////////////////////////////////////////////////////////////////////
|УНИЧТОЖИТЬ ВтВидыЗапасов
|";
+
+ Если Не ПараметрыЗаполнения.НужныДанныеПоИсходнымДокументам Тогда
+ Запрос.Текст = Запрос.Текст + ОбщегоНазначения.РазделительПакетаЗапросов() + "УНИЧТОЖИТЬ ВтСвязанныеДокументы";
+ КонецЕсли;
Если ПараметрыЗаполнения.ОбработатьНастройкиПечатиНаборов Тогда
@@ -3929,6 +3904,444 @@
КонецПроцедуры
+Процедура ПолучитьИсходныеДокументы(МенеджерВременныхТаблиц)
+
+ Запрос = Новый Запрос;
+ Запрос.МенеджерВременныхТаблиц = МенеджерВременныхТаблиц;
+ Запрос.Текст =
+ "ВЫБРАТЬ
+ | ДанныеОснования.Ссылка КАК Ссылка,
+ | ДанныеОснования.НомерСтроки КАК НомерСтроки,
+ | ДанныеОснования.Номенклатура КАК Номенклатура,
+ | ДанныеОснования.Характеристика КАК Характеристика,
+ | ДанныеОснования.НоменклатураНабора КАК НоменклатураНабора,
+ | ДанныеОснования.ХарактеристикаНабора КАК ХарактеристикаНабора,
+ | ДанныеОснования.Серия КАК Серия,
+ | ДанныеОснования.Назначение КАК Назначение,
+ | ДанныеОснования.Содержание КАК Содержание
+ |ПОМЕСТИТЬ ВтДанныеКорректировки
+ |ИЗ
+ | Документ.КорректировкаРеализации.Расхождения КАК ДанныеОснования
+ | ВНУТРЕННЕЕ СОЕДИНЕНИЕ
+ | ТаблицаДанныхДокументов КАК ДанныеДокументов
+ | ПО
+ | ДанныеОснования.Ссылка = ДанныеДокументов.Ссылка
+ |;
+ |
+ |////////////////////////////////////////////////////////////////////////////////
+ |ВЫБРАТЬ
+ | ВтПредыдущиеДокументы.Основной КАК Основной,
+ | ШапкаОснования.Ссылка КАК ИсходныйДокумент,
+ | ШапкаОснования.МоментВремени КАК МоментВремени,
+ | ТаблицаДанныхДокументов.Номенклатура КАК Номенклатура,
+ | ТаблицаДанныхДокументов.Характеристика КАК Характеристика,
+ | ТаблицаДанныхДокументов.НоменклатураНабора КАК НоменклатураНабора,
+ | ТаблицаДанныхДокументов.ХарактеристикаНабора КАК ХарактеристикаНабора,
+ | ТаблицаДанныхДокументов.Серия КАК Серия,
+ | ТаблицаДанныхДокументов.Назначение КАК Назначение,
+ | ТаблицаДанныхДокументов.Содержание КАК Содержание
+ |
+ |ПОМЕСТИТЬ ВтДанныеПоПоследнимИзменениям
+ |ИЗ
+ | ВтСвязанныеДокументы КАК ВтПредыдущиеДокументы
+ | ВНУТРЕННЕЕ СОЕДИНЕНИЕ ВтДанныеКорректировки КАК ТаблицаДанныхДокументов
+ | ПО ВтПредыдущиеДокументы.Основной = ТаблицаДанныхДокументов.Ссылка
+ | ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.РеализацияТоваровУслуг КАК ШапкаОснования
+ | ПО ШапкаОснования.Ссылка = ВтПредыдущиеДокументы.Подчиненный
+ | ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.РеализацияТоваровУслуг.Товары КАК ДанныеОснования
+ | ПО ШапкаОснования.Ссылка = ДанныеОснования.Ссылка
+ | И ТаблицаДанныхДокументов.Номенклатура = ДанныеОснования.Номенклатура
+ | И ТаблицаДанныхДокументов.Характеристика = ДанныеОснования.Характеристика
+ | И ТаблицаДанныхДокументов.НоменклатураНабора = ДанныеОснования.НоменклатураНабора
+ | И ТаблицаДанныхДокументов.ХарактеристикаНабора = ДанныеОснования.ХарактеристикаНабора
+ | И ТаблицаДанныхДокументов.Серия = ДанныеОснования.Серия
+ | И ТаблицаДанныхДокументов.Назначение = ДанныеОснования.Назначение
+ |
+ |ОБЪЕДИНИТЬ ВСЕ
+ |
+ |ВЫБРАТЬ
+ | ВтПредыдущиеДокументы.Основной,
+ | ШапкаОснования.Ссылка,
+ | ШапкаОснования.МоментВремени,
+ | ТаблицаДанныхДокументов.Номенклатура КАК Номенклатура,
+ | ТаблицаДанныхДокументов.Характеристика КАК Характеристика,
+ | ТаблицаДанныхДокументов.НоменклатураНабора КАК НоменклатураНабора,
+ | ТаблицаДанныхДокументов.ХарактеристикаНабора КАК ХарактеристикаНабора,
+ | ТаблицаДанныхДокументов.Серия КАК Серия,
+ | ТаблицаДанныхДокументов.Назначение КАК Назначение,
+ | ТаблицаДанныхДокументов.Содержание КАК Содержание
+ |ИЗ
+ | ВтСвязанныеДокументы КАК ВтПредыдущиеДокументы
+ | ВНУТРЕННЕЕ СОЕДИНЕНИЕ ВтДанныеКорректировки КАК ТаблицаДанныхДокументов
+ | ПО ВтПредыдущиеДокументы.Основной = ТаблицаДанныхДокументов.Ссылка
+ | ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.РеализацияУслугПрочихАктивов КАК ШапкаОснования
+ | ПО ШапкаОснования.Ссылка = ВтПредыдущиеДокументы.Подчиненный
+ | ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.РеализацияУслугПрочихАктивов.Доходы КАК ДанныеОснования
+ | ПО ШапкаОснования.Ссылка = ДанныеОснования.Ссылка
+ | И ТаблицаДанныхДокументов.Содержание = ДанныеОснования.Содержание
+ |
+ |ОБЪЕДИНИТЬ ВСЕ
+ |
+ |ВЫБРАТЬ
+ | ВтПредыдущиеДокументы.Основной,
+ | ШапкаОснования.Ссылка,
+ | ШапкаОснования.МоментВремени,
+ | ТаблицаДанныхДокументов.Номенклатура КАК Номенклатура,
+ | ТаблицаДанныхДокументов.Характеристика КАК Характеристика,
+ | ТаблицаДанныхДокументов.НоменклатураНабора КАК НоменклатураНабора,
+ | ТаблицаДанныхДокументов.ХарактеристикаНабора КАК ХарактеристикаНабора,
+ | ТаблицаДанныхДокументов.Серия КАК Серия,
+ | ТаблицаДанныхДокументов.Назначение КАК Назначение,
+ | ТаблицаДанныхДокументов.Содержание КАК Содержание
+ |ИЗ
+ | ВтСвязанныеДокументы КАК ВтПредыдущиеДокументы
+ | ВНУТРЕННЕЕ СОЕДИНЕНИЕ ВтДанныеКорректировки КАК ТаблицаДанныхДокументов
+ | ПО ВтПредыдущиеДокументы.Основной = ТаблицаДанныхДокументов.Ссылка
+ | ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.АктВыполненныхРабот КАК ШапкаОснования
+ | ПО ШапкаОснования.Ссылка = ВтПредыдущиеДокументы.Подчиненный
+ | ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.АктВыполненныхРабот.Услуги КАК ДанныеОснования
+ | ПО ШапкаОснования.Ссылка = ДанныеОснования.Ссылка
+ | И ТаблицаДанныхДокументов.Номенклатура = ДанныеОснования.Номенклатура
+ | И ТаблицаДанныхДокументов.Характеристика = ДанныеОснования.Характеристика
+ | И ТаблицаДанныхДокументов.НоменклатураНабора = ДанныеОснования.НоменклатураНабора
+ | И ТаблицаДанныхДокументов.ХарактеристикаНабора = ДанныеОснования.ХарактеристикаНабора
+ | И ТаблицаДанныхДокументов.Назначение = ДанныеОснования.Назначение
+ | И ТаблицаДанныхДокументов.Содержание = ДанныеОснования.Содержание
+ |
+ |ОБЪЕДИНИТЬ ВСЕ
+ |
+ |ВЫБРАТЬ
+ | ВтПредыдущиеДокументы.Основной,
+ | ШапкаОснования.Ссылка,
+ | ШапкаОснования.МоментВремени,
+ | ТаблицаДанныхДокументов.Номенклатура КАК Номенклатура,
+ | ТаблицаДанныхДокументов.Характеристика КАК Характеристика,
+ | ТаблицаДанныхДокументов.НоменклатураНабора КАК НоменклатураНабора,
+ | ТаблицаДанныхДокументов.ХарактеристикаНабора КАК ХарактеристикаНабора,
+ | ТаблицаДанныхДокументов.Серия КАК Серия,
+ | ТаблицаДанныхДокументов.Назначение КАК Назначение,
+ | ТаблицаДанныхДокументов.Содержание КАК Содержание
+ |ИЗ
+ | ВтСвязанныеДокументы КАК ВтПредыдущиеДокументы
+ | ВНУТРЕННЕЕ СОЕДИНЕНИЕ ВтДанныеКорректировки КАК ТаблицаДанныхДокументов
+ | ПО ВтПредыдущиеДокументы.Основной = ТаблицаДанныхДокументов.Ссылка
+ | ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.КорректировкаРеализации КАК ШапкаОснования
+ | ПО ШапкаОснования.Ссылка = ВтПредыдущиеДокументы.Подчиненный
+ | И ШапкаОснования.Ссылка <> ВтПредыдущиеДокументы.Основной
+ |
+ | ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.КорректировкаРеализации.Расхождения КАК ДанныеОснования
+ | ПО ШапкаОснования.Ссылка = ДанныеОснования.Ссылка
+ | И ТаблицаДанныхДокументов.Номенклатура = ДанныеОснования.Номенклатура
+ | И ТаблицаДанныхДокументов.Характеристика = ДанныеОснования.Характеристика
+ | И ТаблицаДанныхДокументов.НоменклатураНабора = ДанныеОснования.НоменклатураНабора
+ | И ТаблицаДанныхДокументов.ХарактеристикаНабора = ДанныеОснования.ХарактеристикаНабора
+ | И ТаблицаДанныхДокументов.Серия = ДанныеОснования.Серия
+ | И ТаблицаДанныхДокументов.Назначение = ДанныеОснования.Назначение
+ | И ТаблицаДанныхДокументов.Содержание = ДанныеОснования.Содержание
+ |
+ |ОБЪЕДИНИТЬ ВСЕ
+ |
+ |ВЫБРАТЬ
+ | ВтПредыдущиеДокументы.Основной,
+ | ШапкаОснования.Ссылка,
+ | ШапкаОснования.МоментВремени,
+ | ТаблицаДанныхДокументов.Номенклатура КАК Номенклатура,
+ | ТаблицаДанныхДокументов.Характеристика КАК Характеристика,
+ | ТаблицаДанныхДокументов.НоменклатураНабора КАК НоменклатураНабора,
+ | ТаблицаДанныхДокументов.ХарактеристикаНабора КАК ХарактеристикаНабора,
+ | ТаблицаДанныхДокументов.Серия КАК Серия,
+ | ТаблицаДанныхДокументов.Назначение КАК Назначение,
+ | ТаблицаДанныхДокументов.Содержание КАК Содержание
+ |ИЗ
+ | ВтСвязанныеДокументы КАК ВтПредыдущиеДокументы
+ | ВНУТРЕННЕЕ СОЕДИНЕНИЕ ВтДанныеКорректировки КАК ТаблицаДанныхДокументов
+ | ПО ВтПредыдущиеДокументы.Основной = ТаблицаДанныхДокументов.Ссылка
+ | ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.ПервичныйДокумент КАК ШапкаОснования
+ | ПО ШапкаОснования.Ссылка = ВтПредыдущиеДокументы.Подчиненный
+ |;
+ |
+ |////////////////////////////////////////////////////////////////////////////////
+ |ВЫБРАТЬ
+ | ТаблицаДанныхДокументов.Ссылка КАК Основной,
+ | ЕСТЬNULL(ДанныеПоИзменениям.ИсходныйДокумент, ДанныеОснования.ДокументОснование) КАК ИсходныйДокумент,
+ | ЕСТЬNULL(ДанныеПоИзменениям.МоментВремени, ДанныеОснования.ДокументОснование.МоментВремени) КАК МоментВремени,
+ | ТаблицаДанныхДокументов.Номенклатура КАК Номенклатура,
+ | ТаблицаДанныхДокументов.Характеристика КАК Характеристика,
+ | ТаблицаДанныхДокументов.НоменклатураНабора КАК НоменклатураНабора,
+ | ТаблицаДанныхДокументов.ХарактеристикаНабора КАК ХарактеристикаНабора,
+ | ТаблицаДанныхДокументов.Серия КАК Серия,
+ | ТаблицаДанныхДокументов.Назначение КАК Назначение,
+ | ТаблицаДанныхДокументов.Содержание КАК Содержание
+ |
+ |ПОМЕСТИТЬ ВтДанныеПоПоследнимИзменениямСОснованием
+ |ИЗ
+ | ВтДанныеКорректировки КАК ТаблицаДанныхДокументов
+ | ЛЕВОЕ СОЕДИНЕНИЕ ВтДанныеПоПоследнимИзменениям КАК ДанныеПоИзменениям
+ | ПО ТаблицаДанныхДокументов.Ссылка = ДанныеПоИзменениям.Основной
+ | И ТаблицаДанныхДокументов.Номенклатура = ДанныеПоИзменениям.Номенклатура
+ | И ТаблицаДанныхДокументов.Характеристика = ДанныеПоИзменениям.Характеристика
+ | И ТаблицаДанныхДокументов.НоменклатураНабора = ДанныеПоИзменениям.НоменклатураНабора
+ | И ТаблицаДанныхДокументов.ХарактеристикаНабора = ДанныеПоИзменениям.ХарактеристикаНабора
+ | И ТаблицаДанныхДокументов.Серия = ДанныеПоИзменениям.Серия
+ | И ТаблицаДанныхДокументов.Назначение = ДанныеПоИзменениям.Назначение
+ | И ТаблицаДанныхДокументов.Содержание = ДанныеПоИзменениям.Содержание
+ | ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.КорректировкаРеализации КАК ДанныеОснования
+ | ПО ТаблицаДанныхДокументов.Ссылка = ДанныеОснования.Ссылка
+ |;
+ |
+ |////////////////////////////////////////////////////////////////////////////////
+ |ВЫБРАТЬ РАЗЛИЧНЫЕ
+ | ДанныеОснования.Основной КАК Основной,
+ | ДанныеОснования.ИсходныйДокумент КАК Предыдущий
+ |ПОМЕСТИТЬ ВтДанныеПоИсходнымДокументамПромежуточная
+ |ИЗ
+ | ВтДанныеПоПоследнимИзменениямСОснованием КАК ДанныеОснования
+ |ГДЕ ДанныеОснования.ИсходныйДокумент В (
+ | ВЫБРАТЬ ПЕРВЫЕ 1
+ | ВременнаяТаблица.ИсходныйДокумент
+ |
+ | ИЗ ВтДанныеПоПоследнимИзменениямСОснованием КАК ВременнаяТаблица
+ | ГДЕ ВременнаяТаблица.Основной = ДанныеОснования.Основной
+ | И ВременнаяТаблица.Номенклатура = ДанныеОснования.Номенклатура
+ | И ВременнаяТаблица.Характеристика = ДанныеОснования.Характеристика
+ | И ВременнаяТаблица.НоменклатураНабора = ДанныеОснования.НоменклатураНабора
+ | И ВременнаяТаблица.ХарактеристикаНабора = ДанныеОснования.ХарактеристикаНабора
+ | И ВременнаяТаблица.Серия = ДанныеОснования.Серия
+ | И ВременнаяТаблица.Назначение = ДанныеОснования.Назначение
+ | И ВременнаяТаблица.Содержание = ДанныеОснования.Содержание
+ | УПОРЯДОЧИТЬ ПО
+ | ВременнаяТаблица.МоментВремени УБЫВ
+ | )
+ |;
+ |
+ |////////////////////////////////////////////////////////////////////////////////
+ |ВЫБРАТЬ
+ | ДанныеПоИсходнымДокументам.Основной КАК Основной,
+ | ЕСТЬNULL(КорректировкаИсправительная.Ссылка, ДанныеПоИсходнымДокументам.Предыдущий) КАК Предыдущий
+ |ПОМЕСТИТЬ ВтДанныеПоИсходнымДокументам
+ |ИЗ
+ | ВтДанныеПоИсходнымДокументамПромежуточная КАК ДанныеПоИсходнымДокументам
+ | ЛЕВОЕ СОЕДИНЕНИЕ Документ.КорректировкаРеализации КАК КорректировкаИсправительная
+ | ПО КорректировкаИсправительная.ИсправляемыйДокумент = ДанныеПоИсходнымДокументам.Предыдущий
+ | И КорректировкаИсправительная.Проведен
+ |;
+ |
+ |////////////////////////////////////////////////////////////////////////////////
+ |ВЫБРАТЬ
+ | ДанныеДокумента.Ссылка КАК Ссылка,
+ | ДанныеДокумента.МоментВремени КАК МоментВремени,
+ | ДанныеДокумента.ДокументОснование КАК ОснованиеСсылка,
+ | ДанныеДокумента.ДокументОснование.МоментВремени КАК ОснованиеМоментВремени,
+ | ДанныеДокумента.ДокументОснование.Дата КАК ОснованиеДата,
+ | ДанныеДокумента.ДокументОснование.Номер КАК ОснованиеНомер,
+ | МАКСИМУМ(ЕСТЬNULL(ДанныеДокументаКорректировки.Дата, ДанныеДокумента.ДокументОснование.Дата)) КАК КорректировкаДата
+ |ПОМЕСТИТЬ ДанныеДляРасчетаСКорректировкамиПромежуточная
+ |ИЗ
+ | ВтДанныеПоИсходнымДокументам КАК ВтДанныеПоИсходнымДокументам
+ | ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.КорректировкаРеализации КАК ДанныеДокумента
+ | ПО ВтДанныеПоИсходнымДокументам.Предыдущий = ДанныеДокумента.Ссылка
+ | И ДанныеДокумента.ВидКорректировки = ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ИсправлениеОшибок)
+ | ЛЕВОЕ СОЕДИНЕНИЕ Документ.КорректировкаРеализации КАК ДанныеДокументаКорректировки
+ | ПО ДанныеДокумента.ДокументОснование = ДанныеДокументаКорректировки.ДокументОснование
+ | И ДанныеДокумента.МоментВремени >= ДанныеДокументаКорректировки.МоментВремени
+ | И ДанныеДокументаКорректировки.Проведен
+ | И ДанныеДокументаКорректировки.ВидКорректировки = ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.КорректировкаПоСогласованиюСторон)
+ |
+ |СГРУППИРОВАТЬ ПО
+ | ДанныеДокумента.Ссылка,
+ | ДанныеДокумента.МоментВремени,
+ | ДанныеДокумента.ДокументОснование,
+ | ДанныеДокумента.ДокументОснование.Номер,
+ | ДанныеДокумента.ДокументОснование.МоментВремени
+ |;
+ |
+ |////////////////////////////////////////////////////////////////////////////////
+ |ВЫБРАТЬ
+ | ДанныеДляРасчетаСКорректировками.Ссылка КАК Ссылка,
+ | ДанныеДляРасчетаСКорректировками.МоментВремени КАК МоментВремени,
+ | ДанныеДляРасчетаСКорректировками.ОснованиеСсылка КАК ОснованиеСсылка,
+ | ДанныеДляРасчетаСКорректировками.ОснованиеНомер КАК ОснованиеНомер,
+ | ДанныеДляРасчетаСКорректировками.ОснованиеМоментВремени КАК ОснованиеМоментВремени,
+ | ДанныеДляРасчетаСКорректировками.ОснованиеДата КАК ОснованиеДата,
+ | ДанныеДляРасчетаСКорректировками.КорректировкаДата КАК КорректировкаДата,
+ | МАКСИМУМ(ДанныеДокументаКорректировки.Ссылка) КАК КорректировкаСсылка
+ |ПОМЕСТИТЬ ДанныеДляРасчетаСКорректировками
+ |ИЗ
+ | ДанныеДляРасчетаСКорректировкамиПромежуточная КАК ДанныеДляРасчетаСКорректировками
+ | ЛЕВОЕ СОЕДИНЕНИЕ Документ.КорректировкаРеализации КАК ДанныеДокументаКорректировки
+ | ПО ДанныеДляРасчетаСКорректировками.ОснованиеСсылка = ДанныеДокументаКорректировки.ДокументОснование
+ | И ДанныеДляРасчетаСКорректировками.КорректировкаДата = ДанныеДокументаКорректировки.Дата
+ | И ДанныеДокументаКорректировки.Проведен
+ | И ДанныеДокументаКорректировки.ВидКорректировки = ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.КорректировкаПоСогласованиюСторон)
+ |
+ |СГРУППИРОВАТЬ ПО
+ | ДанныеДляРасчетаСКорректировками.Ссылка,
+ | ДанныеДляРасчетаСКорректировками.МоментВремени,
+ | ДанныеДляРасчетаСКорректировками.ОснованиеСсылка,
+ | ДанныеДляРасчетаСКорректировками.ОснованиеНомер,
+ | ДанныеДляРасчетаСКорректировками.ОснованиеМоментВремени,
+ | ДанныеДляРасчетаСКорректировками.ОснованиеДата,
+ | ДанныеДляРасчетаСКорректировками.КорректировкаДата
+ |;
+ |
+ |////////////////////////////////////////////////////////////////////////////////
+ |ВЫБРАТЬ
+ | ДанныеДляРасчетаСКорректировками.Ссылка КАК Ссылка,
+ | ДанныеДляРасчетаСКорректировками.КорректировкаДата КАК Дата,
+ | ДанныеДокументаКорректировки.Номер КАК Номер,
+ | ДанныеДокументаИсправления.Ссылка КАК ДанныеДокументаИсправленияСсылка
+ |ПОМЕСТИТЬ ДанныеСКорректировкамиИИсправлениямиПромежуточный
+ |ИЗ
+ | ДанныеДляРасчетаСКорректировками КАК ДанныеДляРасчетаСКорректировками
+ | ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.КорректировкаРеализации КАК ДанныеДокументаКорректировки
+ | ПО ДанныеДляРасчетаСКорректировками.КорректировкаСсылка = ДанныеДокументаКорректировки.Ссылка
+ | ЛЕВОЕ СОЕДИНЕНИЕ Документ.КорректировкаРеализации КАК ДанныеДокументаИсправления
+ | ПО ДанныеДляРасчетаСКорректировками.ОснованиеСсылка = ДанныеДокументаИсправления.ДокументОснование
+ | И ДанныеДокументаКорректировки.МоментВремени <= ДанныеДокументаИсправления.МоментВремени
+ | И ДанныеДляРасчетаСКорректировками.МоментВремени >= ДанныеДокументаИсправления.МоментВремени
+ | И ДанныеДокументаИсправления.Проведен
+ | И ДанныеДокументаИсправления.ВидКорректировки = ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ИсправлениеОшибок)
+ |
+ |СГРУППИРОВАТЬ ПО
+ | ДанныеДляРасчетаСКорректировками.Ссылка,
+ | ДанныеДляРасчетаСКорректировками.КорректировкаДата,
+ | ДанныеДокументаКорректировки.Номер,
+ | ДанныеДокументаИсправления.Ссылка
+ |
+ |ОБЪЕДИНИТЬ ВСЕ
+ |
+ |ВЫБРАТЬ
+ | ДанныеДляРасчетаСКорректировками.Ссылка,
+ | ДанныеДляРасчетаСКорректировками.КорректировкаДата,
+ | ДанныеДляРасчетаСКорректировками.ОснованиеНомер,
+ | ДанныеДокументаИсправления.Ссылка
+ |ИЗ
+ | ДанныеДляРасчетаСКорректировками КАК ДанныеДляРасчетаСКорректировками
+ | ЛЕВОЕ СОЕДИНЕНИЕ Документ.КорректировкаРеализации КАК ДанныеДокументаКорректировки
+ | ПО ДанныеДляРасчетаСКорректировками.КорректировкаСсылка = ДанныеДокументаКорректировки.Ссылка
+ | ЛЕВОЕ СОЕДИНЕНИЕ Документ.КорректировкаРеализации КАК ДанныеДокументаИсправления
+ | ПО ДанныеДляРасчетаСКорректировками.ОснованиеСсылка = ДанныеДокументаИсправления.ДокументОснование
+ | И ДанныеДляРасчетаСКорректировками.ОснованиеДата <= ДанныеДокументаИсправления.Дата
+ | И ДанныеДляРасчетаСКорректировками.МоментВремени >= ДанныеДокументаИсправления.МоментВремени
+ | И ДанныеДокументаИсправления.Проведен
+ | И ДанныеДокументаИсправления.ВидКорректировки = ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ИсправлениеОшибок)
+ |ГДЕ
+ | ДанныеДокументаКорректировки.Ссылка ЕСТЬ NULL
+ |
+ |СГРУППИРОВАТЬ ПО
+ | ДанныеДляРасчетаСКорректировками.Ссылка,
+ | ДанныеДляРасчетаСКорректировками.КорректировкаДата,
+ | ДанныеДляРасчетаСКорректировками.ОснованиеНомер,
+ | ДанныеДокументаИсправления.Ссылка
+ |;
+ |
+ |////////////////////////////////////////////////////////////////////////////////
+ |ВЫБРАТЬ
+ | ДанныеСКорректировкамиИИсправлениямиПромежуточный.Ссылка КАК Ссылка,
+ | ДанныеСКорректировкамиИИсправлениямиПромежуточный.Дата КАК Дата,
+ | ДанныеСКорректировкамиИИсправлениямиПромежуточный.Номер КАК Номер,
+ | КОЛИЧЕСТВО(РАЗЛИЧНЫЕ ДанныеСКорректировкамиИИсправлениямиПромежуточный.ДанныеДокументаИсправленияСсылка) КАК НомерИсправления
+ |ПОМЕСТИТЬ ДанныеСКорректировкамиИИсправлениями
+ |ИЗ
+ | ДанныеСКорректировкамиИИсправлениямиПромежуточный КАК ДанныеСКорректировкамиИИсправлениямиПромежуточный
+ |
+ |СГРУППИРОВАТЬ ПО
+ | ДанныеСКорректировкамиИИсправлениямиПромежуточный.Ссылка,
+ | ДанныеСКорректировкамиИИсправлениямиПромежуточный.Дата,
+ | ДанныеСКорректировкамиИИсправлениямиПромежуточный.Номер
+ |;
+ |
+ |////////////////////////////////////////////////////////////////////////////////
+ |ВЫБРАТЬ
+ | ТаблицаДанныхДокументов.Основной КАК Ссылка,
+ | ДанныеОснования.Ссылка КАК ИсходныйДокумент,
+ | ДанныеОснования.Номер КАК НомерСчетаФактуры,
+ | ДанныеОснования.Дата КАК ДатаСчетаФактуры,
+ | НЕОПРЕДЕЛЕНО КАК НомерИсправленияСчетаФактуры,
+ | НЕОПРЕДЕЛЕНО КАК ДатаИсправленияСчетаФактуры
+ |ПОМЕСТИТЬ ДанныеИсходныхДокументов
+ |
+ |ИЗ
+ | ВтДанныеПоИсходнымДокументам КАК ТаблицаДанныхДокументов
+ | ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.РеализацияТоваровУслуг КАК ДанныеОснования
+ | ПО ТаблицаДанныхДокументов.Предыдущий = ДанныеОснования.Ссылка
+ |
+ |ОБЪЕДИНИТЬ ВСЕ
+ |
+ |ВЫБРАТЬ
+ | ТаблицаДанныхДокументов.Основной,
+ | ДанныеОснования.Ссылка КАК ИсходныйДокумент,
+ | ДанныеОснования.Номер,
+ | ДанныеОснования.Дата,
+ | НЕОПРЕДЕЛЕНО,
+ | НЕОПРЕДЕЛЕНО
+ |ИЗ
+ | ВтДанныеПоИсходнымДокументам КАК ТаблицаДанныхДокументов
+ | ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.РеализацияУслугПрочихАктивов КАК ДанныеОснования
+ | ПО ТаблицаДанныхДокументов.Предыдущий = ДанныеОснования.Ссылка
+ |
+ |ОБЪЕДИНИТЬ ВСЕ
+ |
+ |ВЫБРАТЬ
+ | ТаблицаДанныхДокументов.Основной,
+ | ДанныеОснования.Ссылка КАК ИсходныйДокумент,
+ | ДанныеОснования.Номер,
+ | ДанныеОснования.Дата,
+ | НЕОПРЕДЕЛЕНО,
+ | НЕОПРЕДЕЛЕНО
+ |ИЗ
+ | ВтДанныеПоИсходнымДокументам КАК ТаблицаДанныхДокументов
+ | ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.АктВыполненныхРабот КАК ДанныеОснования
+ | ПО ТаблицаДанныхДокументов.Предыдущий = ДанныеОснования.Ссылка
+ |
+ |ОБЪЕДИНИТЬ ВСЕ
+ |
+ |ВЫБРАТЬ
+ | ТаблицаДанныхДокументов.Основной,
+ | ДанныеОснования.Ссылка КАК ИсходныйДокумент,
+ | СОКРЛП(ДанныеОснования.Номер),
+ | ДанныеОснования.Дата,
+ | НЕОПРЕДЕЛЕНО,
+ | НЕОПРЕДЕЛЕНО
+ |ИЗ
+ | ВтДанныеПоИсходнымДокументам КАК ТаблицаДанныхДокументов
+ | ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.ПервичныйДокумент КАК ДанныеОснования
+ | ПО ТаблицаДанныхДокументов.Предыдущий = ДанныеОснования.Ссылка
+ |
+ |ОБЪЕДИНИТЬ ВСЕ
+ |
+ |ВЫБРАТЬ
+ | ТаблицаДанныхДокументов.Основной,
+ | ДанныеОснования.Ссылка КАК ИсходныйДокумент,
+ | ЕСТЬNULL(ДанныеСКорректировкамиИИсправлениями.Номер, ДанныеОснования.Номер) КАК Номер,
+ | ЕСТЬNULL(ДанныеСКорректировкамиИИсправлениями.Дата, ДанныеОснования.Дата) КАК Дата,
+ | ЕСТЬNULL(ДанныеСКорректировкамиИИсправлениями.НомерИсправления, НЕОПРЕДЕЛЕНО) КАК НомерИсправления,
+ | ВЫБОР
+ | КОГДА ДанныеОснования.ВидКорректировки = ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ИсправлениеОшибок)
+ | ТОГДА ДанныеОснования.Дата
+ | ИНАЧЕ НЕОПРЕДЕЛЕНО
+ | КОНЕЦ КАК ДатаИсправления
+ |ИЗ
+ | ВтДанныеПоИсходнымДокументам КАК ТаблицаДанныхДокументов
+ | ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.КорректировкаРеализации КАК ДанныеОснования
+ | ПО ТаблицаДанныхДокументов.Предыдущий = ДанныеОснования.Ссылка
+ | ЛЕВОЕ СОЕДИНЕНИЕ ДанныеСКорректировкамиИИсправлениями КАК ДанныеСКорректировкамиИИсправлениями
+ | ПО ТаблицаДанныхДокументов.Предыдущий = ДанныеСКорректировкамиИИсправлениями.Ссылка
+ |;
+ |/////////////////////////////////////////////////////////////////////////////
+ |УНИЧТОЖИТЬ ВтДанныеКорректировки
+ |;
+ |/////////////////////////////////////////////////////////////////////////////
+ |УНИЧТОЖИТЬ ВтДанныеПоПоследнимИзменениям
+ |;
+ |/////////////////////////////////////////////////////////////////////////////
+ |УНИЧТОЖИТЬ ВтДанныеПоПоследнимИзменениямСОснованием
+ |";
+
+ Запрос.Выполнить();
+
+КонецПроцедуры
+
// Преобразует временную таблицу товаров, созданную функцией ПоместитьВременнуюТаблицуТоваров()
// к виду, используемому при печати счетов-фактуры.
// После преобразования временная таблица уничтожается.
diff --git a/src/CommonModules/КриптографияБЭД/Ext/Module.bsl b/src/CommonModules/КриптографияБЭД/Ext/Module.bsl
index ea543fecf..3b2b90d28 100644
--- a/src/CommonModules/КриптографияБЭД/Ext/Module.bsl
+++ b/src/CommonModules/КриптографияБЭД/Ext/Module.bsl
@@ -1725,7 +1725,7 @@
// - Массив из Число
//
// Возвращаемое значение:
-// Массив из см. ЭлектроннаяПодписьКлиентСервер.НовыеСвойстваПодписи
+// см. ЭлектроннаяПодпись.ПодписиОбъекта
Функция УстановленныеПодписи(Объект, ПорядковыйНомер = Неопределено) Экспорт
ПараметрыПолученияПодписейОбъекта = ЭлектроннаяПодпись.НовыйПараметрыПолученияПодписейОбъекта();
ПараметрыПолученияПодписейОбъекта.ПорядковыйНомер = ПорядковыйНомер;
@@ -1793,7 +1793,7 @@
НачатьТранзакцию();
Попытка
Блокировка.Заблокировать();
- ПодписиОбъекта = ЭлектроннаяПодпись.УстановленныеПодписи(Объект);
+ ПодписиОбъекта = УстановленныеПодписи(Объект);
Для Каждого ПодписьОбъекта Из ПодписиОбъекта Цикл
ДвоичныеДанныеПодписи = ПодписьОбъекта.Подпись;
@@ -2385,6 +2385,7 @@
СертификатОтозванИлиИстек = Ложь;
РежимСтрогойПроверкиДоверенностейОтключен = Ложь;
ПроверкаПолномочийВыполненаУспешно = Ложь;
+ ПроверкаМЧДВыполненаУспешно = Ложь;
Если ОбщегоНазначения.ПодсистемаСуществует("ЭлектронноеВзаимодействие.ОбменСКонтрагентами") Тогда
@@ -2400,10 +2401,15 @@
Если Подпись.РезультатПроверкиПоМЧД <> Неопределено
И Подпись.РезультатПроверкиПоМЧД.Свойство("ПротоколПроверки")
И Подпись.РезультатПроверкиПоМЧД.ПротоколПроверки <> Неопределено Тогда
-
+
+ ПроверкаМЧД = Подпись.РезультатПроверкиПоМЧД.ПротоколПроверки.ПроверкаМЧД;
+
ПроверкаПолномочийВыполненаУспешно =
- МодульМашиночитаемыеДоверенности.ПроверкаПолномочийВыполненаУспешно(
- Подпись.РезультатПроверкиПоМЧД.ПротоколПроверки.ПроверкаМЧД)
+ МодульМашиночитаемыеДоверенности.ПроверкаПолномочийВыполненаУспешно(ПроверкаМЧД);
+
+ ПроверкаМЧДВыполненаУспешно =
+ МодульМашиночитаемыеДоверенности.ПроверкаМЧДВыполненаУспешно(ПроверкаМЧД);
+
КонецЕсли;
Если ПротоколПроверкиПодписиМЧД <> Неопределено Тогда
@@ -2425,7 +2431,8 @@
И ЕстьОшибкаВДоверенности(Подпись.РезультатПроверкиПоМЧД));
Если Результат И РежимСтрогойПроверкиДоверенностейОтключен Тогда
- Если СертификатОтозванИлиИстек Или Не ПроверкаПолномочийВыполненаУспешно Тогда
+ Если ПроверкаМЧДВыполненаУспешно
+ И (СертификатОтозванИлиИстек Или Не ПроверкаПолномочийВыполненаУспешно) Тогда
Результат = Ложь;
КонецЕсли;
КонецЕсли;
diff --git a/src/CommonModules/КриптографияБЭДКлиент/Ext/Module.bsl b/src/CommonModules/КриптографияБЭДКлиент/Ext/Module.bsl
index cc63e50b0..390c5be2b 100644
--- a/src/CommonModules/КриптографияБЭДКлиент/Ext/Module.bsl
+++ b/src/CommonModules/КриптографияБЭДКлиент/Ext/Module.bsl
@@ -709,6 +709,19 @@
// Конец ЭлектронноеВзаимодействие.БазоваяФункциональность.ОбработкаНеисправностей
+// ЭлектронноеВзаимодействие.ОбменСКонтрагентами.МашиночитаемыеДоверенности
+
+// см. КриптографияБЭДСлужебныйКлиент.ОткрытьФормуРасширенногоПредставленияОшибки
+Процедура ОткрытьФормуРасширенногоПредставленияОшибки(КонтекстДиагностики,
+ ДополнительныеПараметры = Неопределено) Экспорт
+
+ КриптографияБЭДСлужебныйКлиент.ОткрытьФормуРасширенногоПредставленияОшибки(КонтекстДиагностики,
+ ДополнительныеПараметры);
+
+КонецПроцедуры
+
+// Конец ЭлектронноеВзаимодействие.ОбменСКонтрагентами.МашиночитаемыеДоверенности
+
#КонецОбласти
#КонецОбласти
diff --git a/src/CommonModules/КриптографияБЭДСлужебныйКлиент/Ext/Module.bsl b/src/CommonModules/КриптографияБЭДСлужебныйКлиент/Ext/Module.bsl
index 25af684d9..630b567e5 100644
--- a/src/CommonModules/КриптографияБЭДСлужебныйКлиент/Ext/Module.bsl
+++ b/src/CommonModules/КриптографияБЭДСлужебныйКлиент/Ext/Module.bsl
@@ -1001,6 +1001,9 @@
КонецФункции
+// Параметры:
+// ДлительнаяОперация - См. ДлительныеОперации.ВыполнитьВФоне
+// ВходящийКонтекст - См. УстановитьCryptoProCSPПослеВводаРегистрационныхДанных.ВходящийКонтекст
Процедура УстановитьКриптопровайдерПослеПолученияДистрибутива(ДлительнаяОперация, ВходящийКонтекст) Экспорт
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(ВходящийКонтекст.Форма.Элементы, "УстановитьVipNet",
@@ -1008,16 +1011,16 @@
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(ВходящийКонтекст.Форма.Элементы,
"УстановитьCryptoPRO", "Картинка", Новый Картинка);
+
+ РезультатВыполнения = Новый Структура("Выполнено, ОписаниеОшибки", Ложь, "");
Если ДлительнаяОперация = Неопределено Тогда
- РезультатВыполнения = Новый Структура("Выполнено", Ложь);
-
МассивСтрок = Новый Массив;
МассивСтрок.Добавить(НСтр("ru = 'Вызов API сервиса выдачи дистрибутивов'"));
МассивСтрок.Добавить(ВходящийКонтекст.ИмяПрограммы);
МассивСтрок.Добавить(НСтр("ru = 'Не был завершен штатно.'"));
- РезультатВыполнения.Вставить("ОписаниеОшибки", СтрСоединить(МассивСтрок, " "));
+ РезультатВыполнения.ОписаниеОшибки = СтрСоединить(МассивСтрок, " ");
ВыполнитьОбработкуОповещения(ВходящийКонтекст.ОповещениеОЗавершении, РезультатВыполнения);
Возврат;
КонецЕсли;
@@ -1034,15 +1037,14 @@
ПараметрыОбработкиОшибок.ОбработчикПовторенияДействия = ОбработчикПовторенияДействия;
ОбработкаНеисправностейБЭДКлиент.ОбработатьОшибки(РезультатПолученияДистрибутива.КонтекстДиагностики,
ПараметрыОбработкиОшибок);
- ВыполнитьОбработкуОповещения(ВходящийКонтекст.ОповещениеОЗавершении, Ложь);
+ ВыполнитьОбработкуОповещения(ВходящийКонтекст.ОповещениеОЗавершении, РезультатВыполнения);
Возврат;
КонецЕсли;
ОбщегоНазначенияКлиентСервер.ДополнитьСтруктуру(ВходящийКонтекст,
РезультатПолученияДистрибутива.ДанныеДистрибутива);
ФайловаяСистемаКлиент.СоздатьВременныйКаталог(ВходящийКонтекст.ПослеСозданияВременногоКаталога);
Иначе
- РезультатВыполнения = Новый Структура("Выполнено", Ложь);
- РезультатВыполнения.Вставить("ОписаниеОшибки", ДлительнаяОперация.КраткоеПредставлениеОшибки);
+ РезультатВыполнения.ОписаниеОшибки = ДлительнаяОперация.КраткоеПредставлениеОшибки;
ВыполнитьОбработкуОповещения(ВходящийКонтекст.ОповещениеОЗавершении, РезультатВыполнения);
Возврат;
КонецЕсли;
diff --git a/src/CommonModules/ЛегкийИнтерфейсДокументовЭДО/Ext/Module.bsl b/src/CommonModules/ЛегкийИнтерфейсДокументовЭДО/Ext/Module.bsl
index 324032c51..35df115a8 100644
--- a/src/CommonModules/ЛегкийИнтерфейсДокументовЭДО/Ext/Module.bsl
+++ b/src/CommonModules/ЛегкийИнтерфейсДокументовЭДО/Ext/Module.bsl
@@ -542,7 +542,7 @@
// * Направление - ПеречислениеСсылка.НаправленияЭДО
// * Дата - Дата
// * ДополнительнаяИнформация - Строка
-// * СвойстваДокумента - См. НовыеСвойстваДокументаДляПолученияДанныхКомпонентовПросмотра
+// СвойстваДокумента - См. НовыеСвойстваДокументаДляПолученияДанныхКомпонентовПросмотра
Процедура ЗаполнитьДанныеКомпонентаПанельЗакладокВходящегоДокумента(ДанныеКомпонента, ОписанияПодписей,
СопроводительныеЗаписи, СвойстваДокумента) Экспорт
@@ -3271,6 +3271,8 @@
Перечисления.СостоянияДокументовЭДО.ТребуетсяУточнение, ВариантыПредставлений.Исправить);
ПредставленияПоСостояниямЭДО.Вставить(
Перечисления.СостоянияДокументовЭДО.НеСформирован, ВариантыПредставлений.Подписать);
+ ПредставленияПоСостояниямЭДО.Вставить(
+ Перечисления.СостоянияДокументовЭДО.ЗакрытСОтклонениемПриглашения, ВариантыПредставлений.ПриглашениеОтклонено);
Возврат ПредставленияПоСостояниямЭДО[СостояниеЭДО];
@@ -3382,6 +3384,8 @@
ВариантыЦвета.Красный);
ЦветаПоСостояниямЭДО.Вставить(ВариантыПредставленийПоСостояниямЭДО.ЗавершенОшибка,
ВариантыЦвета.Красный);
+ ЦветаПоСостояниямЭДО.Вставить(ВариантыПредставленийПоСостояниямЭДО.ПриглашениеОтклонено,
+ ВариантыЦвета.Красный);
ЦветаПоСостояниямЭДО.Вставить(ВариантыПредставленийПоСостояниямЭДО.ЖдатьОтветНаПриглашение,
ВариантыЦвета.Желтый);
ЦветаПоСостояниямЭДО.Вставить(ВариантыПредставленийПоСостояниямЭДО.Отправлен,
@@ -3513,31 +3517,36 @@
// * Аннулировать - Строка
// * ПодтвердитьАннулирование - Строка
// * Создать - Строка
+// * КонтрагентОтказалВПодписи - Строка
+// * ОтказаноВПодписиКонтрагенту - Строка
+// * ПриглашениеОтклонено - Строка
+//
Функция ПредставленияСостоянияПоДаннымСостоянияЭДО()
Представления = Новый Структура;
- Представления.Вставить("Аннулирован", НСтр("ru = 'Аннулирован'"));
- Представления.Вставить("Завершен", НСтр("ru = 'Документооборот завершен'"));
- Представления.Вставить("Отменен", НСтр("ru = 'Закрыт принудительно'"));
- Представления.Вставить("Отклонен", НСтр("ru = 'Отклонен'"));
- Представления.Вставить("ЗавершенОшибка", НСтр("ru = 'Завершен (не удалось отправить)'"));
- Представления.Вставить("ЖдатьОтветНаПриглашение", НСтр("ru = 'Ожидать ответ на приглашение от контрагента'"));
- Представления.Вставить("Отправлен", НСтр("ru = 'Отправлен контрагенту, ожидать ответ'"));
- Представления.Вставить("ОтправленДляИсправления",
+ Представления.Вставить("Аннулирован", НСтр("ru = 'Аннулирован'"));
+ Представления.Вставить("Завершен", НСтр("ru = 'Документооборот завершен'"));
+ Представления.Вставить("Отменен", НСтр("ru = 'Закрыт принудительно'"));
+ Представления.Вставить("Отклонен", НСтр("ru = 'Отклонен'"));
+ Представления.Вставить("ЗавершенОшибка", НСтр("ru = 'Завершен (не удалось отправить)'"));
+ Представления.Вставить("ЖдатьОтветНаПриглашение", НСтр("ru = 'Ожидать ответ на приглашение от контрагента'"));
+ Представления.Вставить("Отправлен", НСтр("ru = 'Отправлен контрагенту, ожидать ответ'"));
+ Представления.Вставить("ОтправленДляИсправления",
НСтр("ru = 'Отправлен контрагенту для исправления, ожидать ответ'"));
- Представления.Вставить("ОтправленДляАннулирования",
+ Представления.Вставить("ОтправленДляАннулирования",
НСтр("ru = 'Отправлен контрагенту для аннулирования, ожидать ответ'"));
- Представления.Вставить("Отправить", НСтр("ru = 'Отправить документ'"));
- Представления.Вставить("ОтправитьПовторно", НСтр("ru = 'Оправить документ повторно'"));
- Представления.Вставить("Подписать", НСтр("ru = 'Подписать'"));
- Представления.Вставить("Утвердить", НСтр("ru = 'Утвердить'"));
- Представления.Вставить("Отклонить", НСтр("ru = 'Отклонить'"));
- Представления.Вставить("Исправить", НСтр("ru = 'Исправить'"));
- Представления.Вставить("Аннулировать", НСтр("ru = 'Аннулировать'"));
- Представления.Вставить("ПодтвердитьАннулирование", НСтр("ru = 'Подтвердить аннулирование'"));
- Представления.Вставить("Создать", НСтр("ru = 'Сохранить документ'"));
+ Представления.Вставить("Отправить", НСтр("ru = 'Отправить документ'"));
+ Представления.Вставить("ОтправитьПовторно", НСтр("ru = 'Оправить документ повторно'"));
+ Представления.Вставить("Подписать", НСтр("ru = 'Подписать'"));
+ Представления.Вставить("Утвердить", НСтр("ru = 'Утвердить'"));
+ Представления.Вставить("Отклонить", НСтр("ru = 'Отклонить'"));
+ Представления.Вставить("Исправить", НСтр("ru = 'Исправить'"));
+ Представления.Вставить("Аннулировать", НСтр("ru = 'Аннулировать'"));
+ Представления.Вставить("ПодтвердитьАннулирование", НСтр("ru = 'Подтвердить аннулирование'"));
+ Представления.Вставить("Создать", НСтр("ru = 'Сохранить документ'"));
Представления.Вставить("КонтрагентОтказалВПодписи", НСтр("ru = 'Контрагент отказал в подписи'"));
Представления.Вставить("ОтказаноВПодписиКонтрагенту", НСтр("ru = 'Отказано в подписи контрагенту'"));
+ Представления.Вставить("ПриглашениеОтклонено", НСтр("ru = 'Контрагент отклонил приглашение'"));
Возврат Представления;
КонецФункции
@@ -4073,14 +4082,13 @@
Форма.Элементы.СтраницаСопроводительнаяЗаписка.Видимость = ЕстьСопроводительныеЗаписки;
КонецЕсли;
+ Форма.Элементы.СтраницаСопроводительнаяЗаписка.Заголовок = ?(ЕстьСопроводительныеЗаписки,
+ НСтр("ru='Сопроводительная записка (есть)'"), НСтр("ru='Сопроводительная записка (нет)'"));
+
Если ДанныеКомпонента.ИспользоватьУниверсальныеСообщения Тогда
Форма.Элементы.СтраницаСопроводительнаяЗаписка.Видимость = Ложь;
Форма.Элементы.СтраницаСообщения.Видимость = Истина;
Иначе
- Форма.Элементы.СтраницаСопроводительнаяЗаписка.Видимость = ЕстьСопроводительныеЗаписки;
- Форма.Элементы.СтраницаСопроводительнаяЗаписка.Заголовок = ?(ЕстьСопроводительныеЗаписки,
- НСтр("ru='Сопроводительная записка (есть)'"), НСтр("ru='Сопроводительная записка (нет)'"));
-
Форма.Элементы.СтраницаСообщения.Видимость = Ложь;
КонецЕсли;
diff --git a/src/CommonModules/ЛегкийИнтерфейсДокументовЭДОКлиент/Ext/Module.bsl b/src/CommonModules/ЛегкийИнтерфейсДокументовЭДОКлиент/Ext/Module.bsl
index 1e9d73aca..8d50e95bb 100644
--- a/src/CommonModules/ЛегкийИнтерфейсДокументовЭДОКлиент/Ext/Module.bsl
+++ b/src/CommonModules/ЛегкийИнтерфейсДокументовЭДОКлиент/Ext/Module.bsl
@@ -1035,20 +1035,6 @@
КонецПроцедуры
-// Возвращаемое значение:
-// См. ОбщегоНазначенияБЭДКлиент.ПараметрыВводаСтроки
-Функция ПараметрыВводаСтрокиДляЗапросаУточнения()
-
- ПараметрыВводаСтроки = ОбщегоНазначенияБЭДКлиент.ПараметрыВводаСтроки();
- ПараметрыВводаСтроки.ЗаголовокФормы = НСтр("ru = 'Укажите причины запроса уточнения документа'");
- ПараметрыВводаСтроки.НазваниеКнопкиПоУмолчанию = НСтр("ru = 'Запросить уточнение'");
- ПараметрыВводаСтроки.Строка = НСтр("ru = 'Причина уточнения: '");
- ПараметрыВводаСтроки.КомментарийОбязательностиВвода =
- НСтр("ru = 'Для запроса уточнения по документу необходимо указать причину.'");
- Возврат ПараметрыВводаСтроки;
-
-КонецФункции
-
// Параметры:
// Форма - ФормаКлиентскогоПриложения - форма просмотра входящего/исходящего электронного документа легкого интерфейса:
// * Объект - ДанныеФормыСтруктура:
@@ -1095,20 +1081,6 @@
КонецПроцедуры
-// Возвращаемое значение:
-// См. ОбщегоНазначенияБЭДКлиент.ПараметрыВводаСтроки
-Функция ПараметрыВводаСтрокиДляОтказаОтПодписанияДокумента()
-
- ПараметрыВводаСтроки = ОбщегоНазначенияБЭДКлиент.ПараметрыВводаСтроки();
- ПараметрыВводаСтроки.ЗаголовокФормы = НСтр("ru = 'Укажите причины отказа от подписания документа'");
- ПараметрыВводаСтроки.НазваниеКнопкиПоУмолчанию = НСтр("ru = 'Отказать'");
- ПараметрыВводаСтроки.Строка = НСтр("ru = 'Причина отказа: '");
- ПараметрыВводаСтроки.КомментарийОбязательностиВвода =
- НСтр("ru = 'Для отказа от подписания документа необходимо указать причину.'");
- Возврат ПараметрыВводаСтроки;
-
-КонецФункции
-
// Параметры:
// Форма - ФормаКлиентскогоПриложения - форма просмотра исходящего электронного документа легкого интерфейса:
// * Объект - ДанныеФормыСтруктура:
@@ -2070,6 +2042,34 @@
КонецФункции
+// Возвращаемое значение:
+// См. ОбщегоНазначенияБЭДКлиент.ПараметрыВводаСтроки
+Функция ПараметрыВводаСтрокиДляЗапросаУточнения()
+
+ ПараметрыВводаСтроки = ОбщегоНазначенияБЭДКлиент.ПараметрыВводаСтроки();
+ ПараметрыВводаСтроки.ЗаголовокФормы = НСтр("ru = 'Укажите причины запроса уточнения документа'");
+ ПараметрыВводаСтроки.НазваниеКнопкиПоУмолчанию = НСтр("ru = 'Запросить уточнение'");
+ ПараметрыВводаСтроки.Строка = НСтр("ru = 'Причина уточнения: '");
+ ПараметрыВводаСтроки.КомментарийОбязательностиВвода =
+ НСтр("ru = 'Для запроса уточнения по документу необходимо указать причину.'");
+ Возврат ПараметрыВводаСтроки;
+
+КонецФункции
+
+// Возвращаемое значение:
+// См. ОбщегоНазначенияБЭДКлиент.ПараметрыВводаСтроки
+Функция ПараметрыВводаСтрокиДляОтказаОтПодписанияДокумента()
+
+ ПараметрыВводаСтроки = ОбщегоНазначенияБЭДКлиент.ПараметрыВводаСтроки();
+ ПараметрыВводаСтроки.ЗаголовокФормы = НСтр("ru = 'Укажите причины отказа от подписания документа'");
+ ПараметрыВводаСтроки.НазваниеКнопкиПоУмолчанию = НСтр("ru = 'Отказать'");
+ ПараметрыВводаСтроки.Строка = НСтр("ru = 'Причина отказа: '");
+ ПараметрыВводаСтроки.КомментарийОбязательностиВвода =
+ НСтр("ru = 'Для отказа от подписания документа необходимо указать причину.'");
+ Возврат ПараметрыВводаСтроки;
+
+КонецФункции
+
#Область ОбработкаКоманд
#Область ДополнительныеКоманды
diff --git a/src/CommonModules/ЛегкийИнтерфейсДокументовЭДОСлужебный/Ext/Module.bsl b/src/CommonModules/ЛегкийИнтерфейсДокументовЭДОСлужебный/Ext/Module.bsl
index d85dec97f..5a47114b5 100644
--- a/src/CommonModules/ЛегкийИнтерфейсДокументовЭДОСлужебный/Ext/Module.bsl
+++ b/src/CommonModules/ЛегкийИнтерфейсДокументовЭДОСлужебный/Ext/Module.bsl
@@ -2934,7 +2934,7 @@
ВысотаТаблицы = Область.Верх - ОтступГраницыШтампа;
КонецЕсли;
КонецЦикла;
- ОбластьДокумента = СтрШаблон("R1:R%1", ВысотаТаблицы);
+ ОбластьДокумента = СтрШаблон("R1:R%1", Формат(ВысотаТаблицы, "ЧГ=0"));
ПредставлениеДокумента.Область(ОбластьДокумента).ЦветРамки =
Метаданные.ЭлементыСтиля.ЦветРамкиПредпросмотраЭлектронногоДокумента.Значение;
@@ -3259,7 +3259,7 @@
// ВизуализацияДокумента - См. ЭлектронныеДокументыЭДО.ВизуализацияДокумента
// НастройкиФормы - См. ЛегкийИнтерфейсДокументовЭДО.НовыеНастройкиФормыДляПолученияДанныхКомпонентовПросмотра
Процедура ЗаполнитьДанныеКомпонентаПанельКомандНастроекВизуализацииЛегкийКлиентЭДО(ДанныеКомпонента,
- ВизуализацияДокумента, НастройкиФормы) Экспорт
+ ВизуализацияДокумента, НастройкиФормы)
ДанныеКомпонента.АсинхронноеПолучение = Ложь;
diff --git a/src/CommonModules/ЛогированиеЗапросовИС/Ext/Module.bsl b/src/CommonModules/ЛогированиеЗапросовИС/Ext/Module.bsl
index d3b86fe4d..74d625a9f 100644
--- a/src/CommonModules/ЛогированиеЗапросовИС/Ext/Module.bsl
+++ b/src/CommonModules/ЛогированиеЗапросовИС/Ext/Module.bsl
@@ -89,7 +89,7 @@
// * АдресРесурса - Неопределено, Структура - Параметры отправки запроса.
// * HTTPМетод - Строка, Неопределено - HTTP-метод отправки запроса.
// * Штрихкод - Строка, Неопределено - Сканируемый штрихкод
-// * РезультатРазбораШтрихКода - Структура, Неопределено - Структура разбора запроса, см. ШтрихкодированиеОбщегоНазначенияИС.ОбработатьШтрихкоды()
+// * РезультатРазбораШтрихкода - Структура, Неопределено - Структура разбора запроса, см. ШтрихкодированиеОбщегоНазначенияИС.ОбработатьШтрихкоды()
// * ЛогироватьHTTPЗапрос - Булево - Истина, если фиксируются данные HTTP-запроса
// * ЛогироватьHTTPОтвет - Булево - Истина, если фиксируются данные HTTP-ответа
// * ЭмуляцияЗапроса - Булево - Истина, если это эмуляция
@@ -105,7 +105,7 @@
ПараметрыЗаписиЛога.Вставить("АдресРесурса", Неопределено);
ПараметрыЗаписиЛога.Вставить("HTTPМетод", Неопределено);
ПараметрыЗаписиЛога.Вставить("Штрихкод", Неопределено);
- ПараметрыЗаписиЛога.Вставить("РезультатРазбораШтрихКода", Неопределено);
+ ПараметрыЗаписиЛога.Вставить("РезультатРазбораШтрихкода", Неопределено);
ПараметрыЗаписиЛога.Вставить("ВнутреннийТСПИоТККТ", Неопределено);
ПараметрыЗаписиЛога.Вставить("ЛогироватьHTTPЗапрос", Ложь);
ПараметрыЗаписиЛога.Вставить("ЛогироватьHTTPОтвет", Ложь);
@@ -126,7 +126,7 @@
HTTPЗапросОтвет = ДанныеЗаписи.HTTPЗапросОтвет;
АдресРесурса = ДанныеЗаписи.АдресРесурса;
Штрихкод = ДанныеЗаписи.Штрихкод;
- РезультатРазбораШтрихКода = ДанныеЗаписи.РезультатРазбораШтрихКода;
+ РезультатРазбораШтрихкода = ДанныеЗаписи.РезультатРазбораШтрихкода;
ТекстОшибки = ДанныеЗаписи.ТекстОшибки;
ВнутреннийТСПИоТККТ = ДанныеЗаписи.ВнутреннийТСПИоТККТ;
@@ -243,9 +243,9 @@
ЗаписьТекста.ЗаписатьСтроку(НСтр("ru = 'Входящие данные с торгового оборудования:'"));
ЗаписьТекста.ЗаписатьСтроку(СтрокаJSON);
- ИначеЕсли РезультатРазбораШтрихКода <> Неопределено Тогда
+ ИначеЕсли РезультатРазбораШтрихкода <> Неопределено Тогда
- ДанныеДляЛогирования = ОбщегоНазначения.СкопироватьРекурсивно(РезультатРазбораШтрихКода);
+ ДанныеДляЛогирования = ОбщегоНазначения.СкопироватьРекурсивно(РезультатРазбораШтрихкода);
ПреобразоватьРекурсивноСоответствияДляПреобразованияВJSON(ДанныеДляЛогирования);
ПараметрыЗаписи = Новый ПараметрыЗаписиJSON(ПереносСтрокJSON.Нет);
diff --git a/src/CommonModules/ЛогированиеЗапросовИСМПВызовСервера/Ext/Module.bsl b/src/CommonModules/ЛогированиеЗапросовИСМПВызовСервера/Ext/Module.bsl
index 2a61d2147..2dfd3778c 100644
--- a/src/CommonModules/ЛогированиеЗапросовИСМПВызовСервера/Ext/Module.bsl
+++ b/src/CommonModules/ЛогированиеЗапросовИСМПВызовСервера/Ext/Module.bsl
@@ -40,13 +40,13 @@
// Параметры:
// ТекстДляВывода - Строка - Текст для вывода в лог
// Штрихкод - Неопределено, Массив из Структура - список данных штрихкодов для вывода в лог
-// РезультатРазбораШтрихКода - Неопределено, Массив Из Структура - даннные разбора штрихкода для вывода в лог
-Процедура Вывести(ТекстДляВывода, Штрихкод = Неопределено, РезультатРазбораШтрихКода = Неопределено) Экспорт
+// РезультатРазбораШтрихкода - Неопределено, Массив Из Структура - даннные разбора штрихкода для вывода в лог
+Процедура Вывести(ТекстДляВывода, Штрихкод = Неопределено, РезультатРазбораШтрихкода = Неопределено) Экспорт
ДанныеЗаписи = ЛогированиеЗапросовИС.НоваяСтруктураДанныхЗаписи();
ДанныеЗаписи.ТекстОшибки = ТекстДляВывода;
ДанныеЗаписи.Штрихкод = Штрихкод;
- ДанныеЗаписи.РезультатРазбораШтрихКода = РезультатРазбораШтрихКода;
+ ДанныеЗаписи.РезультатРазбораШтрихкода = РезультатРазбораШтрихкода;
ПараметрыЛогированияЗапросов = ЛогированиеЗапросовИСМП.ПараметрыЛогированияЗапросов();
ЛогированиеЗапросовИС.Вывести(ДанныеЗаписи, ПараметрыЛогированияЗапросов);
diff --git a/src/CommonModules/МаршрутыПодписанияБЭД/Ext/Module.bsl b/src/CommonModules/МаршрутыПодписанияБЭД/Ext/Module.bsl
index b9bc54655..e6451f29b 100644
--- a/src/CommonModules/МаршрутыПодписанияБЭД/Ext/Module.bsl
+++ b/src/CommonModules/МаршрутыПодписанияБЭД/Ext/Module.bsl
@@ -618,7 +618,7 @@
// Сертификат - СправочникСсылка.СертификатыКлючейЭлектроннойПодписиИШифрования - сертификат, по которому
// установлена подпись.
// ВесМаршрута - Число - в данную переменную будет возвращено максимально возможное количество подписей.
-// ОрганизацияДляПодписания - СправочникСсылка.Организации - организация, использумая при отсутствии организации
+// ОрганизацияДляПодписания - СправочникСсылка.Организации - организация, используемая при отсутствии организации
// в сертификате. Необязательный: если не указана, то будет использована организация из переданного сертификата.
// Пользователь - СправочникСсылка.Пользователи - пользователь, установивший подпись. Необязательный: если не
// указан, будет использован текущий пользователь.
diff --git a/src/CommonModules/МашиночитаемыеДоверенности/Ext/Module.bsl b/src/CommonModules/МашиночитаемыеДоверенности/Ext/Module.bsl
index 1b58b39b8..3f3a04ad7 100644
--- a/src/CommonModules/МашиночитаемыеДоверенности/Ext/Module.bsl
+++ b/src/CommonModules/МашиночитаемыеДоверенности/Ext/Module.bsl
@@ -40,6 +40,7 @@
|ГДЕ
| МЧД003.Ссылка > &МЧД003
| И МЧД003.Подписана = ИСТИНА
+ | И МЧД003.ХешФайла <> """"
|
|УПОРЯДОЧИТЬ ПО
| Ссылка
@@ -53,6 +54,7 @@
|ГДЕ
| МашиночитаемыеДоверенностиОрганизаций.Ссылка > &МЧДОрганизаций
| И МашиночитаемыеДоверенностиОрганизаций.Подписана = ИСТИНА
+ | И МашиночитаемыеДоверенностиОрганизаций.ХешФайла <> """"
|
|УПОРЯДОЧИТЬ ПО
| Ссылка
@@ -66,6 +68,7 @@
|ГДЕ
| МашиночитаемыеДоверенностиКонтрагентов.Ссылка > &МЧДКонтрагентов
| И МашиночитаемыеДоверенностиКонтрагентов.Подписана = ИСТИНА
+ | И МашиночитаемыеДоверенностиКонтрагентов.ХешФайла <> """"
|
|УПОРЯДОЧИТЬ ПО
| Ссылка";
@@ -169,16 +172,10 @@
Если Объект <> Неопределено Тогда
- Если Объект.ХешФайла = "" Тогда
- ОбновлениеИнформационнойБазы.ОтметитьВыполнениеОбработки(Объект, ПараметрыОтметкиВыполнения);
- Иначе
+ НаборСсылок = ОбщегоНазначенияКлиентСервер.ЗначениеВМассиве(СтрокаДанных.Ссылка);
- НаборСсылок = ОбщегоНазначенияКлиентСервер.ЗначениеВМассиве(СтрокаДанных.Ссылка);
-
- Справочники.ПравилаПроверкиПолномочийМЧД.СконвертироватьПравило(НаборСсылок);
- ОбновлениеИнформационнойБазы.ОтметитьВыполнениеОбработки(Объект, ПараметрыОтметкиВыполнения);
-
- КонецЕсли;
+ Справочники.ПравилаПроверкиПолномочийМЧД.СконвертироватьПравило(НаборСсылок);
+ ОбновлениеИнформационнойБазы.ОтметитьВыполнениеОбработки(Объект, ПараметрыОтметкиВыполнения);
КонецЕсли;
@@ -219,7 +216,7 @@
Параметры.ПрогрессВыполнения.ОбработаноОбъектов = Параметры.ПрогрессВыполнения.ОбработаноОбъектов
+ ОбъектовОбработано;
Параметры.ОбработкаЗавершена = ОбновлениеИнформационнойБазы.ОбработкаДанныхЗавершена(
- Параметры.Очередь, ИменаМетаданных);
+ Параметры.Очередь, ИменаМетаданных);
КонецПроцедуры
@@ -970,7 +967,9 @@
Для Каждого ПолеВвода Из ЭлементыВыбораВидаДокумента Цикл
ПолеВвода.СписокВыбора.Очистить();
Для Каждого ВидДок Из ВидыДокументов Цикл
- ПолеВвода.СписокВыбора.Добавить(ВидДок.Ключ, ВидДок.Значение);
+ Если РаспределенныйРеестрФНСПоддерживаетИспользованиеКодаВидаДУЛФЛ(ВидДок.Ключ) Тогда
+ ПолеВвода.СписокВыбора.Добавить(ВидДок.Ключ, ВидДок.Значение);
+ КонецЕсли;
КонецЦикла;
КонецЦикла;
КонецПроцедуры
@@ -1631,7 +1630,7 @@
// Возвращаемое значение:
// Булево
//
-Функция ЭтоМЧДКонтрагента(МЧД) Экспорт
+Функция ЭтоМЧДКонтрагента(МЧД)
Возврат ТипЗнч(МЧД) = Тип("СправочникСсылка.МашиночитаемыеДоверенностиКонтрагентов");
КонецФункции
@@ -3278,7 +3277,8 @@
// * ДанныеПодписи - ДвоичныеДанные
// * ИмяФайлаЗаявленияНаОтзыв - Строка
// * ДанныеФайлаЗаявленияНаОтзыв - ДвоичныеДанные
-// * ДанныеПодписиЗаявленияНаОтзыв - ДвоичныеДанные
+// * ДанныеПодписиЗаявленияНаОтзыв - ДвоичныеДанные
+// * ПометкаУдаления - Булево
//
Функция НовыеСведенияМЧД() Экспорт
@@ -3316,6 +3316,7 @@
Сведения.Вставить("ИмяФайлаЗаявленияНаОтзыв", "");
Сведения.Вставить("ДанныеФайлаЗаявленияНаОтзыв", ОбщегоНазначенияБЭДКлиентСервер.ПустыеДвоичныеДанные());
Сведения.Вставить("ДанныеПодписиЗаявленияНаОтзыв", ОбщегоНазначенияБЭДКлиентСервер.ПустыеДвоичныеДанные());
+ Сведения.Вставить("ПометкаУдаления", Ложь);
Возврат Сведения;
@@ -4784,7 +4785,7 @@
#Область Справочники_КлассификаторПолномочийФНСМЧД002_ОбработатьДанныеДляПереходаНаНовуюВерсию
Обработчик = Обработчики.Добавить();
- Обработчик.Версия = "1.9.16.21";
+ Обработчик.Версия = "1.9.16.36";
Обработчик.РежимВыполнения = "Отложенно";
Обработчик.ЗапускатьИВПодчиненномУзлеРИБСФильтрами = Истина;
Обработчик.Процедура = "Справочники.КлассификаторПолномочийФНСМЧД002.ОбработатьДанныеДляПереходаНаНовуюВерсию";
@@ -4845,7 +4846,7 @@
#Область Справочники_КлассификаторПолномочийМЧД003_ОбработатьДанныеДляПереходаНаНовуюВерсию
Обработчик = Обработчики.Добавить();
- Обработчик.Версия = "1.9.16.21";
+ Обработчик.Версия = "1.9.16.36";
Обработчик.РежимВыполнения = "Отложенно";
Обработчик.ЗапускатьИВПодчиненномУзлеРИБСФильтрами = Истина;
Обработчик.Процедура = "Справочники.КлассификаторПолномочийМЧД003.ОбработатьДанныеДляПереходаНаНовуюВерсию";
@@ -5480,8 +5481,8 @@
ТабличныйДокумент.Вывести(ОбластьЗаголовокПолномочия);
Для Каждого СтрокаПолномочий Из Полномочия Цикл
- ОбластьПереченьПолномочий.Параметры.ПереченьПолномочий = СтрокаПолномочий;
- ТабличныйДокумент.Вывести(ОбластьПереченьПолномочий);
+ ВывестиТекстовыеПолномочия(СтрокаПолномочий, ТабличныйДокумент, ОбластьПереченьПолномочий,
+ "ПереченьПолномочий");
КонецЦикла;
ТабличныйДокумент.Вывести(ОбластьОтступЗаполнение);
@@ -5513,6 +5514,211 @@
Возврат РезультатФормирования;
КонецФункции
+
+// Вывести текстовые полномочия.
+//
+// Параметры:
+// ИсходныйТекст - Строка
+// ТабличныйДокумент - ТабличныйДокумент
+// Область - ТабличныйДокумент
+// ИмяОбласти - Строка
+// ИмяПараметра - Строка
+Процедура ВывестиТекстовыеПолномочия(Знач ИсходныйТекст, ТабличныйДокумент, Знач Область, Знач ИмяПараметра) Экспорт
+
+ Если ПустаяСтрока(ИсходныйТекст) Тогда
+ Возврат;
+ КонецЕсли;
+
+ МаксимальноеКоличествоСимволовВЯчейке = 770;
+ ОптимальноеКоличествоСимволовВЯчейке = 500;
+
+ Если ОптимальноеКоличествоСимволовВЯчейке >= СтрДлина(ИсходныйТекст) Тогда
+ Область.Параметры[ИмяПараметра] = ИсходныйТекст;
+ ТабличныйДокумент.Вывести(Область);
+ Возврат;
+ КонецЕсли;
+
+ РазделителиСтрок = РазделителиСтрокСтрокой();
+ СтрокиПоРазделителюСтрок = СтрРазделить(ИсходныйТекст, РазделителиСтрок, Ложь);
+
+ Для Каждого ТекущаяСтрока Из СтрокиПоРазделителюСтрок Цикл
+
+ Если ПустаяСтрока(ТекущаяСтрока) Тогда
+ Продолжить;
+ КонецЕсли;
+
+ ДлинаТекста = СтрДлина(ТекущаяСтрока);
+
+ Если ОптимальноеКоличествоСимволовВЯчейке >= ДлинаТекста Тогда
+ Область.Параметры[ИмяПараметра] = ТекущаяСтрока;
+ ТабличныйДокумент.Вывести(Область);
+ Продолжить;
+ КонецЕсли;
+
+ ТекущийТекст = "";
+ СледующийСимвол = "";
+ ДваПоследовательныхСимвола = "";
+
+ Для i = 1 По ДлинаТекста Цикл
+
+ ТекущийСимвол = Сред(ТекущаяСтрока, i, 1);
+ Если i < ДлинаТекста Тогда
+ СледующийСимвол = Сред(ТекущаяСтрока, i + 1, 1);
+ Иначе
+ СледующийСимвол = "";
+ КонецЕсли;
+
+ ДваПоследовательныхСимвола = ТекущийСимвол + СледующийСимвол;
+ Если ЭтоПовторяющиесяРазделители(ДваПоследовательныхСимвола) Тогда
+ ТекущийТекст = ТекущийТекст + ТекущийСимвол;
+ Продолжить;
+ КонецЕсли;
+
+ ТекущийТекст = ТекущийТекст + ТекущийСимвол;
+
+ ДлинаТекущегоТекста = СтрДлина(ТекущийТекст);
+
+ Если ОптимальноеКоличествоСимволовВЯчейке <= ДлинаТекущегоТекста Тогда
+
+ Если ЭтоКонецПредложенияИлиРаздела(ТекущийСимвол)
+ И Не ЭтоРазделительСлов(СледующийСимвол) Тогда
+ Область.Параметры[ИмяПараметра] = ТекущийТекст;
+ ТабличныйДокумент.Вывести(Область);
+ ТекущийТекст = "";
+ Продолжить;
+ КонецЕсли;
+
+ КонецЕсли;
+
+ Если МаксимальноеКоличествоСимволовВЯчейке = ДлинаТекущегоТекста Тогда
+
+ Если Не ЭтоРазделительСлов(СледующийСимвол) Тогда
+
+ ПозицияРазделителяСлов = НайтиПредыдущийРазделительСлов(ТекущийТекст);
+ Если ПозицияРазделителяСлов > 0 Тогда
+ ТекущийТекстДоПозицииРазрыва = Лев(ТекущийТекст, ПозицияРазделителяСлов);
+ Область.Параметры[ИмяПараметра] = ТекущийТекстДоПозицииРазрыва;
+ ТабличныйДокумент.Вывести(Область);
+ ТекущийТекст = Прав(ТекущийТекст, СтрДлина(ТекущийТекст) - ПозицияРазделителяСлов);
+ Иначе
+ Область.Параметры[ИмяПараметра] = ТекущийТекст;
+ ТабличныйДокумент.Вывести(Область);
+ ТекущийТекст = "";
+ КонецЕсли;
+
+ Иначе
+ Область.Параметры[ИмяПараметра] = ТекущийТекст;
+ ТабличныйДокумент.Вывести(Область);
+ ТекущийТекст = "";
+ КонецЕсли;
+
+ КонецЕсли;
+
+ КонецЦикла;
+
+ Если Не ПустаяСтрока(ТекущийТекст) Тогда
+ Область.Параметры[ИмяПараметра] = ТекущийТекст;
+ ТабличныйДокумент.Вывести(Область);
+ КонецЕсли;
+
+ КонецЦикла;
+
+КонецПроцедуры
+
+// Параметры:
+// ИсходныйТекст - Строка
+//
+// Возвращаемое значение:
+// Число
+Функция НайтиПредыдущийРазделительСлов(Знач ИсходныйТекст)
+
+ ПозицияРазделителя = 0;
+ ДлинаСтроки = СтрДлина(ИсходныйТекст);
+
+ Для Счетчик = 1 по ДлинаСтроки Цикл
+
+ ОбратныйСчетчик = ДлинаСтроки - Счетчик;
+
+ ТекущийСимвол = Сред(ИсходныйТекст, ОбратныйСчетчик, 1);
+
+ Если ЭтоРазделительСлов(ТекущийСимвол) Тогда
+ ПозицияРазделителя = ОбратныйСчетчик;
+ Прервать;
+ КонецЕсли;
+
+ КонецЦикла;
+
+ Возврат ПозицияРазделителя;
+
+КонецФункции
+
+// Параметры:
+// Текст - Строка
+//
+// Возвращаемое значение:
+// Булево
+Функция ЭтоПовторяющиесяРазделители(Знач Текст)
+
+ Возврат ПовторяющиесяРазделителиСловИСтрок().Найти(Текст) <> Неопределено;
+
+КонецФункции
+
+// Параметры:
+// Символ - Строка
+//
+// Возвращаемое значение:
+// Булево
+Функция ЭтоКонецПредложенияИлиРаздела(Знач Символ)
+
+ Возврат Символ = "." Или Символ = ";";
+
+КонецФункции
+
+// Возвращаемое значение:
+// Строка
+Функция РазделителиСтрокСтрокой()
+
+ Результат = Символы.ПС + Символы.ВТаб;
+ Возврат Результат;
+
+КонецФункции
+
+// Параметры:
+// Символ - Строка
+//
+// Возвращаемое значение:
+// Булево
+Функция ЭтоРазделительСлов(Знач Символ)
+
+ Возврат РазделителиСлов().Найти(Символ) <> Неопределено;
+
+КонецФункции
+
+// Возвращаемое значение:
+// Массив из Строка
+Функция РазделителиСлов()
+
+ Результат = Новый Массив; //Массив из Строка
+ Результат.Добавить(Символы.НПП);
+ Результат.Добавить(" ");
+
+ Возврат Результат;
+
+КонецФункции
+
+// Возвращаемое значение:
+// Массив из Строка
+Функция ПовторяющиесяРазделителиСловИСтрок()
+
+ Результат = Новый Массив; //Массив из Строка
+ Результат.Добавить(Символы.ПС + Символы.ПС);
+ Результат.Добавить(Символы.ВТаб + Символы.ВТаб);
+ Результат.Добавить(";;");
+ Результат.Добавить("..");
+
+ Возврат Результат;
+
+КонецФункции
#Область XDTO
@@ -7417,6 +7623,18 @@
КонецФункции
+// Возвращаемое значение:
+// Булево
+Функция РежимСтрогойПроверкиДоверенностейОтключен() Экспорт
+
+ УстановитьПривилегированныйРежим(Истина);
+ Результат = Константы.РежимСтрогойПроверкиДоверенностейОтключенЭДО.Получить();
+ УстановитьПривилегированныйРежим(Ложь);
+
+ Возврат Результат;
+
+КонецФункции
+
#КонецОбласти
#Область СлужебныеПроцедурыИФункции
@@ -15242,6 +15460,7 @@
| ПО ЭлектронныеПодписиПоМЧД.ПодписанныйОбъект = СообщениеЭДОПрисоединенныеФайлы.Ссылка
|ГДЕ
| &УсловиеПроверкаВыполненаВРучную
+ | И НЕ СообщениеЭДО.ПометкаУдаления
|
|ОБЪЕДИНИТЬ ВСЕ
|
@@ -15255,6 +15474,7 @@
| ПО ВТ_МашиночитаемыеДоверенностиСообщений.ПодписанныйОбъектВладелецФайла = СообщениеЭДО.Ссылка
|ГДЕ
| СообщениеЭДО.ТипЭлементаРегламента В (&ТипыЭлементовРегламентаЭДО)
+ | И НЕ СообщениеЭДО.ПометкаУдаления
|ИТОГИ
|ПО
| ЭлектронныйДокумент";
@@ -16882,6 +17102,91 @@
КонецФункции
+// Заполняет данные таблицы для типа представителя - физического лица в формах ЧерновикМЧД, ЧерновикПередоверияМЧД и
+// ДобавлениеПредставителя после выбора представителя в поле формы "Представитель".
+//
+// Параметры:
+// СведФЛ - ДанныеФормыЭлементКоллекции:
+// * АдрМЖ - ДанныеФормыКоллекция
+// * АдрЭлПочт - Строка
+// * Гражданство - Строка
+// * ДатаРожд - Дата
+// * КонтактТлф - Строка
+// * МестоРожд - Строка
+// * НомЕРН - Строка
+// * Пол - Строка
+// * ПрГражд - Строка
+// * УдЛичнФЛ - ДанныеФормыКоллекция из ДанныеФормыЭлементКоллекции:
+// ** СерНомДок - Строка
+// ** КодВыдДок - Строка
+// ** КодВидДок - Строка
+// ** ДатаДок - Дата
+// ** ВыдДок - Дата
+// ** expDate - Дата
+// * ФИО - ДанныеФормыКоллекция из ДанныеФормыЭлементКоллекции:
+// ** Фамилия - Строка
+// ** Имя - Строка
+// ** Отчество - Строка
+// СтруктураСведений - см. ДанныеФизЛица
+Процедура ЗаполнитьТаблицуТипаСведФЛ(СведФЛ, СтруктураСведений) Экспорт
+
+ СведФЛ.ФИО[0].Фамилия = СтруктураСведений.Фамилия;
+ СведФЛ.ФИО[0].Имя = СтруктураСведений.Имя;
+ СведФЛ.ФИО[0].Отчество = СтруктураСведений.Отчество;
+ СведФЛ.ДатаРожд = СтруктураСведений.ДатаРождения;
+ Ключи = "КемВыдан, ДатаВыдачи, КодФНС, КодПодразделения, Серия, Номер";
+ СведенияУдостоверения = Новый Структура(Ключи);
+ ЗаполнитьЗначенияСвойств(СведенияУдостоверения, СтруктураСведений);
+ Если РаспределенныйРеестрФНСПоддерживаетИспользованиеКодаВидаДУЛФЛ(СведенияУдостоверения.КодФНС) Тогда
+ СведФЛ.УдЛичнФЛ[0].ВыдДок = СведенияУдостоверения.КемВыдан;
+ СведФЛ.УдЛичнФЛ[0].ДатаДок = СведенияУдостоверения.ДатаВыдачи;
+ СведФЛ.УдЛичнФЛ[0].КодВидДок = СведенияУдостоверения.КодФНС;
+ СведФЛ.УдЛичнФЛ[0].КодВыдДок = СведенияУдостоверения.КодПодразделения;
+ СведФЛ.УдЛичнФЛ[0].СерНомДок = СтрШаблон("%1 %2", СведенияУдостоверения.Серия, СведенияУдостоверения.Номер);
+ Если МашиночитаемыеДоверенностиКлиентСервер.ЭтоВидДокументаЗагранпаспортГражданинаРФ(СведФЛ.УдЛичнФЛ[0].КодВидДок) Тогда
+ СведФЛ.УдЛичнФЛ[0].expDate = СтруктураСведений.СрокДействия;
+ КонецЕсли;
+ КонецЕсли;
+
+КонецПроцедуры
+
+// Определяет, является ли проверяемое значение кодом вида документа, удостоверяющего личность физического лица, который
+// поддерживается РР ФНС при регистрации доверенности.
+//
+// Параметры:
+// КодВидДок - Строка
+//
+// Возвращаемое значение:
+// Булево
+Функция РаспределенныйРеестрФНСПоддерживаетИспользованиеКодаВидаДУЛФЛ(КодВидДок) Экспорт
+
+ Возврат КодыВидовДокументовПоддерживаемыеРРМЧД().Найти(КодВидДок) <> Неопределено;
+
+КонецФункции
+
+// Возвращает список кодов видов документов, удостоверяющих личность физического лица - представителя, поддерживаемых
+// распределенным реестром ФНС МЧД при регистрации доверенности.
+//
+// Возвращаемое значение:
+// Массив из Строка
+Функция КодыВидовДокументовПоддерживаемыеРРМЧД() Экспорт
+
+ Результат = Новый Массив();
+ Результат.Добавить("03");
+ Результат.Добавить("07");
+ Результат.Добавить("10");
+ Результат.Добавить("11");
+ Результат.Добавить("12");
+ Результат.Добавить("13");
+ Результат.Добавить("15");
+ Результат.Добавить("19");
+ Результат.Добавить("21");
+ Результат.Добавить("24");
+
+ Возврат Результат;
+
+КонецФункции
+
Функция ДоверенностьНайденнаяПоДвоичнымДаннымПроверенаВручную(ДанныеДоверенности)
Запрос = Новый Запрос;
Запрос.Текст = "ВЫБРАТЬ
@@ -16919,18 +17224,6 @@
Возврат ПроверенаВручную;
КонецФункции
-// Возвращаемое значение:
-// Булево
-Функция РежимСтрогойПроверкиДоверенностейОтключен() Экспорт
-
- УстановитьПривилегированныйРежим(Истина);
- Результат = Константы.РежимСтрогойПроверкиДоверенностейОтключенЭДО.Получить();
- УстановитьПривилегированныйРежим(Ложь);
-
- Возврат Результат;
-
-КонецФункции
-
// Возвращает представление доверенности, содержащее основные данные доверенности, в виде многострочного текста
//
// Параметры:
@@ -17033,4 +17326,64 @@
КонецФункции
+// Устанавливает или снимает пометку удаления у доверенности, при интерактивной работе.
+//
+// Параметры:
+// Ссылка - СправочникСсылка.МашиночитаемыеДоверенностиОрганизаций
+// - СправочникСсылка.МашиночитаемыеДоверенностиКонтрагентов
+// - СправочникСсылка.МЧД003
+// УникальныйИдентификатор - УникальныйИдентификатор
+// ПометкаУдаления - Булево
+Процедура УстановитьСнятьПометкуУдаления(Знач Ссылка, Знач УникальныйИдентификатор) Экспорт
+
+ Попытка
+
+ ЗаблокироватьДанныеДляРедактирования(Ссылка,, УникальныйИдентификатор);
+
+ Объект = Ссылка.ПолучитьОбъект();
+ ПометкаУдаления = Не Объект.ПометкаУдаления;
+ Объект.УстановитьПометкуУдаления(ПометкаУдаления);
+
+ РазблокироватьДанныеДляРедактирования(Ссылка, УникальныйИдентификатор);
+
+ Исключение
+
+ ТекстОшибки = СтрШаблон(НСтр("ru='Не удалось изменить пометку удаления по причине:%1%2'"),
+ Символы.ПС, ОбработкаОшибок.КраткоеПредставлениеОшибки(ИнформацияОбОшибке()));
+
+ ВызватьИсключение ТекстОшибки;
+
+ КонецПопытки;
+
+КонецПроцедуры
+
+// Проверяет действительность доверенности по свойствам и по наличию у нее пометки удаления и возвращает логический
+// результат проверки.
+//
+// Параметры:
+// Доверенность - ОпределяемыйТип.МашиночитаемаяДоверенность
+//
+// Возвращаемое значение:
+// Булево
+Функция ПроверитьДоверенностьПоСвойствам(Доверенность) Экспорт
+
+ Результат = Ложь;
+
+ Если Не ЗначениеЗаполнено(Доверенность) Тогда
+ Возврат Результат;
+ КонецЕсли;
+
+ СведенияМЧД = СправочникМЧД(Доверенность).СведенияМЧД(Доверенность);
+
+ СвойстваДоверенности = НовыеСвойстваДоверенности();
+ ЗаполнитьЗначенияСвойств(СвойстваДоверенности, СведенияМЧД);
+
+ ДоверенностьДействует = ДоверенностьДействительнаПоСвойствам(СвойстваДоверенности, ТекущаяДатаСеанса());
+
+ Результат = Не СведенияМЧД.ПометкаУдаления И ДоверенностьДействует;
+
+ Возврат Результат;
+
+КонецФункции
+
#КонецОбласти
diff --git a/src/CommonModules/МашиночитаемыеДоверенностиИнтеграцияЦентраЭДО/Ext/Module.bsl b/src/CommonModules/МашиночитаемыеДоверенностиИнтеграцияЦентраЭДО/Ext/Module.bsl
index 47db94069..b4e56a002 100644
--- a/src/CommonModules/МашиночитаемыеДоверенностиИнтеграцияЦентраЭДО/Ext/Module.bsl
+++ b/src/CommonModules/МашиночитаемыеДоверенностиИнтеграцияЦентраЭДО/Ext/Module.bsl
@@ -600,9 +600,9 @@
// КонтекстДиагностики - См. ОбработкаНеисправностейБЭД.НовыйКонтекстДиагностики
//
// Возвращаемое значение:
-// Структура:
+// Неопределено,Структура:
// * Данные - Неопределено, Строка - двоичные данные в формате base64
-// * Статус - см. МашиночитаемыеДоверенностиЦентрЭДО.НовыйСтатусДоверенности
+// * Статус - см. СтатусДоверенности
Функция ДанныеДоверенностиВФорматеСервиса(Доверенность, КонтекстДиагностики = Неопределено) Экспорт
РезультатВыгрузки = МашиночитаемыеДоверенности.ВыгрузитьДанныеДоверенности(Доверенность);
@@ -617,10 +617,10 @@
Возврат Неопределено;
КонецЕсли;
- СтатусДовернности = СтатусДовернности(Доверенность);
+ СтатусДоверенности = СтатусДоверенности(Доверенность);
ДанныеВФорматеСервиса = Новый Структура("Данные, Статус",
- Base64Строка(РезультатВыгрузки.ОписаниеФайла.ДвоичныеДанные), СтатусДовернности);
+ Base64Строка(РезультатВыгрузки.ОписаниеФайла.ДвоичныеДанные), СтатусДоверенности);
Возврат ДанныеВФорматеСервиса;
@@ -880,7 +880,7 @@
//
// Возвращаемое значение:
// СправочникСсылка.УчетныеЗаписиЦентровЭДО
-Функция УчетнаяЗаписьЦентраЭДОПоДаннымФайлаМЧД(ДанныеФайлаМЧД) Экспорт
+Функция УчетнаяЗаписьЦентраЭДОПоДаннымФайлаМЧД(ДанныеФайлаМЧД)
УчетныеЗаписиЦентровЭДО = УчетныеЗаписиЦентровЭДОПоДаннымФайлаМЧД(ДанныеФайлаМЧД);
Если ЗначениеЗаполнено(УчетныеЗаписиЦентровЭДО) Тогда
@@ -1543,18 +1543,18 @@
КонецПроцедуры
// Параметры:
-// НаборДаных - См. ПрограммныйИнтерфейсЦентраЭДОВерсия3.ДанныеСинхронизацииСтатусовДоверенностей
+// НаборДанных - См. ПрограммныйИнтерфейсЦентраЭДОВерсия3.ДанныеСинхронизацииСтатусовДоверенностей
// РезультатДействий - см. ЭлектронныеДокументыЭДОИнтеграцияЦентраЭДО.НовыйРезультатДействийЭДО
// КонтекстДиагностики - см. ОбработкаНеисправностейБЭД.НовыйКонтекстДиагностики
// УчетнаяЗаписьЦентраЭДО - см. СправочникСсылка.УчетныеЗаписиЦентровЭДО
-Процедура ОбработатьРезультатМетодаСтатусыДоверенностей(НаборДаных, РезультатДействий, КонтекстДиагностики,
+Процедура ОбработатьРезультатМетодаСтатусыДоверенностей(НаборДанных, РезультатДействий, КонтекстДиагностики,
УчетнаяЗаписьЦентраЭДО)
- Если Не ЗначениеЗаполнено(НаборДаных) Тогда
+ Если Не ЗначениеЗаполнено(НаборДанных) Тогда
Возврат;
КонецЕсли;
- ОбновитьСтатусыДоверенностейПоДаннымСинхронизации(НаборДаных, КонтекстДиагностики, УчетнаяЗаписьЦентраЭДО);
+ ОбновитьСтатусыДоверенностейПоДаннымСинхронизации(НаборДанных, КонтекстДиагностики, УчетнаяЗаписьЦентраЭДО);
КонецПроцедуры
@@ -1631,7 +1631,7 @@
// Возвращаемое значение:
// - Неопределено
// - См. НовыйСтатусДоверенности
-Функция СтатусДовернности(Доверенность)
+Функция СтатусДоверенности(Доверенность)
СтатусДоверенности = НовыйСтатусДоверенности();
diff --git a/src/CommonModules/МашиночитаемыеДоверенностиКлиент/Ext/Module.bsl b/src/CommonModules/МашиночитаемыеДоверенностиКлиент/Ext/Module.bsl
index 50f726181..d45479b00 100644
--- a/src/CommonModules/МашиночитаемыеДоверенностиКлиент/Ext/Module.bsl
+++ b/src/CommonModules/МашиночитаемыеДоверенностиКлиент/Ext/Module.bsl
@@ -571,6 +571,20 @@
КонецПроцедуры
+// Оповестить об изменении пометки удаления МЧД.
+//
+// Параметры:
+// Доверенности - Массив Из ОпределяемыйТип.МашиночитаемаяДоверенность
+//
+Процедура ОповеститьОбИзмененииПометкиУдаленияМЧД(Доверенности) Экспорт
+
+ ПараметрыОповещения = Новый Структура;
+ ПараметрыОповещения.Вставить("Доверенности", Доверенности);
+
+ Оповестить(ИмяОповещенияИзмененаПометкаУдаленияМЧД(), ПараметрыОповещения);
+
+КонецПроцедуры
+
// Имя оповещения о изменении МЧД.
//
// Возвращаемое значение:
@@ -581,6 +595,16 @@
КонецФункции
+// Имя оповещения об установке или снятии пометки удаления МЧД.
+//
+// Возвращаемое значение:
+// Строка
+Функция ИмяОповещенияИзмененаПометкаУдаленияМЧД() Экспорт
+
+ Возврат "ИзмененаПометкаУдаленияМЧД";
+
+КонецФункции
+
// Возвращаемое значение:
// Строка
Функция ИмяОповещенияПоказатьДоверенностиОрганизации() Экспорт
@@ -1538,6 +1562,29 @@
КонецПроцедуры
+// Возвращает текст вопроса для пользователя при попытке установить или снять пометку удаления при интерактивной работе.
+//
+// Параметры:
+// Объект - ДанныеФормыСтруктура:
+// * ПометкаУдаления - Булево
+// * Наименование - Строка
+//
+// Возвращаемое значение:
+// Строка
+Функция ПолучитьТекстВопросаУстановитьСнятьПометкуУдаления(Объект) Экспорт
+
+ ТекстВопроса = "";
+ Если Объект.ПометкаУдаления Тогда
+ ТекстВопроса = НСтр("ru = 'Снять с ""%1"" пометку на удаление?'");
+ Иначе
+ ТекстВопроса = НСтр("ru = 'Пометить ""%1"" на удаление?'");
+ КонецЕсли;
+ ТекстВопроса = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ТекстВопроса, Объект.Наименование);
+
+ Возврат ТекстВопроса;
+
+КонецФункции
+
#Область ПроверкаДоверенности
// Обрабатывает результат ручной проверки полномочий МЧД.
@@ -1778,7 +1825,11 @@
ПараметрыОжидания = ДлительныеОперацииКлиент.ПараметрыОжидания(Неопределено);
ПараметрыОжидания.ВыводитьОкноОжидания = Ложь;
ПараметрыОжидания.ВыводитьПрогрессВыполнения = Истина;
- ПараметрыОжидания.ОповещениеОПрогрессеВыполнения = КонтекстОжиданияОперации.ОбработчикОбновленияПрогресса;
+
+ ОповещениеОПрогрессеВыполнения =
+ Новый ОписаниеОповещения("ОбработатьОповещениеОПрогрессеВыполненияПроверкиПодписей",
+ МашиночитаемыеДоверенностиКлиент, КонтекстОжиданияОперации);
+ ПараметрыОжидания.ОповещениеОПрогрессеВыполнения = ОповещениеОПрогрессеВыполнения;
ДлительныеОперацииКлиент.ОжидатьЗавершение(ДлительнаяОперация, ОповещениеПослеПроверкиНаСервере, ПараметрыОжидания);
@@ -1862,6 +1913,21 @@
КонецПроцедуры
+// Параметры:
+// Результат - См. ДлительныеОперацииКлиент.НовоеСостояниеДлительнойОперации
+// КонтекстОжиданияОперации - См. ОжиданиеОперацийБЭДКлиент.НовыйКонтекст
+Процедура ОбработатьОповещениеОПрогрессеВыполненияПроверкиПодписей(Результат, КонтекстОжиданияОперации) Экспорт
+
+ Если Результат.Статус = "Выполнено" Или Результат.Статус = "Ошибка" Или Результат.Прогресс = Неопределено Тогда
+ Возврат;
+ КонецЕсли;
+
+ ПараметрыОжидания = КонтекстОжиданияОперации.ПараметрыОжиданияОперации;
+ ПараметрыОжидания.ПроцентПрогресса = Результат.Прогресс.Процент;
+ ОжиданиеОперацийБЭДКлиент.ОбновитьПрогресс(ПараметрыОжидания, КонтекстОжиданияОперации);
+
+КонецПроцедуры
+
#КонецОбласти
#Область ПроверкаВводаТекстовогоОписанияПолномочия
@@ -2731,20 +2797,37 @@
КонецЕсли;
КонецПроцедуры
-// Сбрасывает оформление и очищает поля ввода документа удостоверяющего личность физического лица.
+// Сбрасывает оформление и очищает поля ввода документа, удостоверяющего личность физического лица.
//
// Параметры:
-// Элемент - ПолеФормы
-// Поля - ДанныеФормыЭлементКоллекции
-Процедура СброситьОформлениеИОчистититьПоляДокументаУдостоверяющегоЛичность(Элемент, Поля) Экспорт
+// ГруппаФормы - ГруппаФормы - Группа формы, содержащая элементы формы документа, удостоверяющего личность физического
+// лица.
+// ПоляУдостоверяющиеЛичностьФизическогоЛица - ДанныеФормыЭлементКоллекции:
+// * СерНомДок - Строка
+// * КодВыдДок - Строка
+// * КодВидДок - Строка
+// * ДатаДок - Дата
+// * ВыдДок - Строка
+// * expDate - Дата
+// ПолеФормыДатаСрокДействия - ПолеФормы - Поле, связанное с реквизитом формы, содержащим значение срока действия
+// документа, удостоверяющего личность физического лица.
+Процедура УстановитьОформлениеНастройкиОтображенияИЗначенияПолейДУЛФЛПоУмолчанию(ГруппаФормы,
+ ПоляУдостоверяющиеЛичностьФизическогоЛица, ПолеФормыДатаСрокДействия) Экспорт
- МашиночитаемыеДоверенностиКлиентСервер.СброситьОформлениеЭлементовФормы(Элемент.Родитель, Истина);
+ ЗначениеПоляКодВидДок = ПоляУдостоверяющиеЛичностьФизическогоЛица.КодВидДок;
- Если Не ЗначениеЗаполнено(Поля.КодВидДок) Тогда
- ОписаниеПолейПоУмолчанию = НовыйОписаниеПолейДокументаУдостоверяющегоЛичностьФизическогоЛица();
- ЗаполнитьЗначенияСвойств(Поля, ОписаниеПолейПоУмолчанию);
+ МашиночитаемыеДоверенностиКлиентСервер.СброситьОформлениеЭлементовФормы(ГруппаФормы, Истина);
+
+ ОписаниеПолейПоУмолчанию = НовыйОписаниеПолейДокументаУдостоверяющегоЛичностьФизическогоЛица();
+ Если Не ЗначениеЗаполнено(ЗначениеПоляКодВидДок) Тогда
+ ЗаполнитьЗначенияСвойств(ПоляУдостоверяющиеЛичностьФизическогоЛица, ОписаниеПолейПоУмолчанию);
+ ИначеЕсли Не МашиночитаемыеДоверенностиКлиентСервер.ЭтоВидДокументаЗагранпаспортГражданинаРФ(ЗначениеПоляКодВидДок) Тогда
+ ЗаполнитьЗначенияСвойств(ПоляУдостоверяющиеЛичностьФизическогоЛица, ОписаниеПолейПоУмолчанию, "expDate");
КонецЕсли;
+ МашиночитаемыеДоверенностиКлиентСервер.УстановитьВидимостьПоляСрокДействия(ПолеФормыДатаСрокДействия,
+ ЗначениеПоляКодВидДок);
+
КонецПроцедуры
#КонецОбласти
diff --git a/src/CommonModules/МашиночитаемыеДоверенностиКлиентСервер/Ext/Module.bsl b/src/CommonModules/МашиночитаемыеДоверенностиКлиентСервер/Ext/Module.bsl
index 1f43de702..4c05906dd 100644
--- a/src/CommonModules/МашиночитаемыеДоверенностиКлиентСервер/Ext/Module.bsl
+++ b/src/CommonModules/МашиночитаемыеДоверенностиКлиентСервер/Ext/Module.bsl
@@ -73,7 +73,7 @@
КонецФункции
-// Возвращает вид ошибки, для документа имеющего подписи с невалидными МЧД
+// Возвращает вид ошибки, для документа имеющего подписи с недостоверными МЧД
//
// Возвращаемое значение:
// См. ОбработкаНеисправностейБЭДКлиентСервер.НовоеОписаниеВидаОшибки
@@ -1123,4 +1123,36 @@
КонецФункции
+// Устанавливает видимость поля Срок действия для документа, удостоверяющего личность
+// физического лица в разделе Представитель в формах ЧерновикМЧД, ЧерновикПередоверияМЧД, ДобавлениеПредставителя.
+// Согласно формату Единой формы доверенности в электронной форме в машиночитаемом виде элемент "expDate" включается
+// в состав XML-файла доверенности, если выборано значение вида документа "Загранпаспорт гражданина Российской Федерации".
+// Только в этом случае пользователю поле, связанное с реквизитом формы, содержащим значение срока действия документа,
+// удостоверяющего личность физического лица, становится доступным для редактирования.
+//
+// Параметры:
+// ПолеФормыДатаСрокДействия - ПолеФормы - Поле, связанное с реквизитом формы, содержащим значение срока действия
+// документа, удостоверяющего личность физического лица.
+// ЗначениеПоляКодВидДок - Строка
+Процедура УстановитьВидимостьПоляСрокДействия(ПолеФормыДатаСрокДействия,
+ ЗначениеПоляКодВидДок) Экспорт
+
+ ПолеФормыДатаСрокДействия.Видимость = ЭтоВидДокументаЗагранпаспортГражданинаРФ(ЗначениеПоляКодВидДок);
+
+КонецПроцедуры
+
+// Определяет, является ли проверяемое значение кодом соответствующим значению "Загранпаспорт гражданина Российской Федерации"
+// в соответствии со Справочником «Виды документов, удостоверяющих личность налогоплательщика».
+//
+// Параметры:
+// КодВидДок - Строка
+//
+// Возвращаемое значение:
+// Булево
+Функция ЭтоВидДокументаЗагранпаспортГражданинаРФ(КодВидДок) Экспорт
+
+ Возврат КодВидДок = "22";
+
+КонецФункции
+
#КонецОбласти
diff --git a/src/CommonModules/МашиночитаемыеДоверенностиЦентрЭДО/Ext/Module.bsl b/src/CommonModules/МашиночитаемыеДоверенностиЦентрЭДО/Ext/Module.bsl
index 18eca3a12..3f5d3beba 100644
--- a/src/CommonModules/МашиночитаемыеДоверенностиЦентрЭДО/Ext/Module.bsl
+++ b/src/CommonModules/МашиночитаемыеДоверенностиЦентрЭДО/Ext/Module.bsl
@@ -2,78 +2,6 @@
#Область СлужебныйПрограммныйИнтерфейс
-// Возвращаемое значение:
-// Структура:
-// * Подписана - Булево
-// * Верна - Булево
-// * ОшибкаПроверки - Неопределено,Строка
-// * СтатусВРеестреФНС - Строка
-// * ОшибкаРеестраФНС - Неопределено,Строка
-// * ДатаОтзыва - см. ОбщегоНазначенияБЭД.ДатаВФорматеISO
-// * ДатаПолученияСтатуса - см. ОбщегоНазначенияБЭД.ДатаВФорматеISO
-// * СтатусыОтложенныхЗапросов - Массив из см. НовыйСтатусОтложенногоЗапроса
-Функция НовыйСтатусДоверенности() Экспорт
-
- Свойства = Новый Структура;
- Свойства.Вставить("Подписана", Ложь);
- Свойства.Вставить("Верна", Ложь);
- Свойства.Вставить("ОшибкаПроверки", Неопределено);
- Свойства.Вставить("СтатусВРеестреФНС", "");
- Свойства.Вставить("ОшибкаРеестраФНС", Неопределено);
- Свойства.Вставить("ДатаОтзыва", "");
- Свойства.Вставить("ДатаПолученияСтатуса", "");
- Свойства.Вставить("СтатусыОтложенныхЗапросов", Новый Массив);
- Возврат Свойства;
-
-КонецФункции
-
-// Параметры:
-// Доверенность - ОпределяемыйТип.МашиночитаемаяДоверенность
-//
-// Возвращаемое значение:
-// - Неопределено
-// - См. НовыйСтатусДоверенности
-Функция СтатусДовернности(Доверенность) Экспорт
-
- СтатусДоверенности = НовыйСтатусДоверенности();
-
- ВыборкиДанных = ВыбратьДанныеСтатусаДоверенности(Доверенность);
- ВыборкаРеквизитов = ВыборкиДанных.ВыборкаРеквизитов;
- ВыборкаСтатусовЗапросов = ВыборкиДанных.ВыборкаСтатусовЗапросов;
-
- Если ВыборкаРеквизитов.Следующий() Тогда
- СтатусДоверенности.Подписана = ВыборкаРеквизитов.Подписана;
- СтатусДоверенности.Верна = ВыборкаРеквизитов.Верна;
- Если ЗначениеЗаполнено(ВыборкаРеквизитов.ТекстОшибкиПроверкиМЧД) Тогда
- СтатусДоверенности.ОшибкаПроверки = ВыборкаРеквизитов.ТекстОшибкиПроверкиМЧД;
- КонецЕсли;
- Если ЗначениеЗаполнено(ВыборкаРеквизитов.СтатусВРеестреФНС) Тогда
- СтатусДоверенности.СтатусВРеестреФНС = ОбщегоНазначения.ИмяЗначенияПеречисления(ВыборкаРеквизитов.СтатусВРеестреФНС);
- КонецЕсли;
- Если ЗначениеЗаполнено(ВыборкаРеквизитов.ОписаниеОшибкиРегистрации) Тогда
- СтатусДоверенности.ОшибкаРеестраФНС = ВыборкаРеквизитов.ОписаниеОшибкиРегистрации;
- КонецЕсли;
- СтатусДоверенности.ДатаОтзыва = ОбщегоНазначенияБЭД.ДатаВФорматеISO(ВыборкаРеквизитов.ДатаОтзыва);
- СтатусДоверенности.ДатаПолученияСтатуса = ОбщегоНазначенияБЭД.ДатаВФорматеISO(ВыборкаРеквизитов.ДатаОбновленияСтатуса);
- Иначе
- Возврат Неопределено;
- КонецЕсли;
-
- Пока ВыборкаСтатусовЗапросов.Следующий() Цикл
- СтатусОтложенногоЗапроса = НовыйСтатусОтложенногоЗапроса();
- СтатусОтложенногоЗапроса.ВидЗапроса = ВыборкаСтатусовЗапросов.ВидЗапроса;
- СтатусОтложенногоЗапроса.ДатаСоздания = ОбщегоНазначенияБЭД.ДатаВФорматеISO(
- ВыборкаСтатусовЗапросов.ДатаСоздания);
- СтатусОтложенногоЗапроса.ДатаПоследнейПопытки = ОбщегоНазначенияБЭД.ДатаВФорматеISO(
- ВыборкаСтатусовЗапросов.ДатаПоследнейПопытки);
- СтатусОтложенногоЗапроса.НомерПопытки = ВыборкаСтатусовЗапросов.НомерПопытки;
- СтатусДоверенности.СтатусыОтложенныхЗапросов.Добавить(СтатусОтложенногоЗапроса);
- КонецЦикла;
-
- Возврат СтатусДоверенности;
-
-КонецФункции
-
// Параметры:
// ДанныеФайлаМЧД - Строка - двоичные данные в формате base64.
//
@@ -473,7 +401,7 @@
// Структура:
// * Ошибка - Неопределено,Строка
// * Данные - Неопределено,Строка - двоичные данные в формате base64.
-// * Статус - Неопределено,Структура: см. СтатусДовернности
+// * Статус - Неопределено,Структура: см. СтатусДоверенности
Функция ПолучитьДанныеДоверенности(ИдентификаторДоверенности) Экспорт
Результат = Новый Структура;
@@ -491,7 +419,7 @@
КонецЕсли;
Результат.Данные = Base64Строка(РезультатВыгрузки.ОписаниеФайла.ДвоичныеДанные);
- Результат.Статус = СтатусДовернности(Доверенность);
+ Результат.Статус = СтатусДоверенности(Доверенность);
Возврат Результат;
@@ -508,7 +436,7 @@
// * ИдентификаторДоверенности - Неопределено,Строка
// * Данные - Неопределено,Строка
// * Статус - Неопределено
-// - см. СтатусДовернности
+// - см. СтатусДоверенности
Функция ПолучитьДанныеДоверенностиИзРеестраФНС(НомерДоверенности, ИННДоверителя, ИННПредставителя) Экспорт
Результат = Новый Структура;
@@ -563,7 +491,7 @@
Результат.ИдентификаторДоверенности = ИдентификаторДоверенности(РезультатЗагрузки.МЧД);
Результат.Данные = Base64Строка(РезультатВыгрузки.ОписаниеФайла.ДвоичныеДанные);
- Результат.Статус = СтатусДовернности(РезультатЗагрузки.МЧД);
+ Результат.Статус = СтатусДоверенности(РезультатЗагрузки.МЧД);
Возврат Результат;
@@ -955,6 +883,78 @@
#КонецОбласти
+// Возвращаемое значение:
+// Структура:
+// * Подписана - Булево
+// * Верна - Булево
+// * ОшибкаПроверки - Неопределено,Строка
+// * СтатусВРеестреФНС - Строка
+// * ОшибкаРеестраФНС - Неопределено,Строка
+// * ДатаОтзыва - см. ОбщегоНазначенияБЭД.ДатаВФорматеISO
+// * ДатаПолученияСтатуса - см. ОбщегоНазначенияБЭД.ДатаВФорматеISO
+// * СтатусыОтложенныхЗапросов - Массив из см. НовыйСтатусОтложенногоЗапроса
+Функция НовыйСтатусДоверенности()
+
+ Свойства = Новый Структура;
+ Свойства.Вставить("Подписана", Ложь);
+ Свойства.Вставить("Верна", Ложь);
+ Свойства.Вставить("ОшибкаПроверки", Неопределено);
+ Свойства.Вставить("СтатусВРеестреФНС", "");
+ Свойства.Вставить("ОшибкаРеестраФНС", Неопределено);
+ Свойства.Вставить("ДатаОтзыва", "");
+ Свойства.Вставить("ДатаПолученияСтатуса", "");
+ Свойства.Вставить("СтатусыОтложенныхЗапросов", Новый Массив);
+ Возврат Свойства;
+
+КонецФункции
+
+// Параметры:
+// Доверенность - ОпределяемыйТип.МашиночитаемаяДоверенность
+//
+// Возвращаемое значение:
+// - Неопределено
+// - См. НовыйСтатусДоверенности
+Функция СтатусДоверенности(Доверенность)
+
+ СтатусДоверенности = НовыйСтатусДоверенности();
+
+ ВыборкиДанных = ВыбратьДанныеСтатусаДоверенности(Доверенность);
+ ВыборкаРеквизитов = ВыборкиДанных.ВыборкаРеквизитов;
+ ВыборкаСтатусовЗапросов = ВыборкиДанных.ВыборкаСтатусовЗапросов;
+
+ Если ВыборкаРеквизитов.Следующий() Тогда
+ СтатусДоверенности.Подписана = ВыборкаРеквизитов.Подписана;
+ СтатусДоверенности.Верна = ВыборкаРеквизитов.Верна;
+ Если ЗначениеЗаполнено(ВыборкаРеквизитов.ТекстОшибкиПроверкиМЧД) Тогда
+ СтатусДоверенности.ОшибкаПроверки = ВыборкаРеквизитов.ТекстОшибкиПроверкиМЧД;
+ КонецЕсли;
+ Если ЗначениеЗаполнено(ВыборкаРеквизитов.СтатусВРеестреФНС) Тогда
+ СтатусДоверенности.СтатусВРеестреФНС = ОбщегоНазначения.ИмяЗначенияПеречисления(ВыборкаРеквизитов.СтатусВРеестреФНС);
+ КонецЕсли;
+ Если ЗначениеЗаполнено(ВыборкаРеквизитов.ОписаниеОшибкиРегистрации) Тогда
+ СтатусДоверенности.ОшибкаРеестраФНС = ВыборкаРеквизитов.ОписаниеОшибкиРегистрации;
+ КонецЕсли;
+ СтатусДоверенности.ДатаОтзыва = ОбщегоНазначенияБЭД.ДатаВФорматеISO(ВыборкаРеквизитов.ДатаОтзыва);
+ СтатусДоверенности.ДатаПолученияСтатуса = ОбщегоНазначенияБЭД.ДатаВФорматеISO(ВыборкаРеквизитов.ДатаОбновленияСтатуса);
+ Иначе
+ Возврат Неопределено;
+ КонецЕсли;
+
+ Пока ВыборкаСтатусовЗапросов.Следующий() Цикл
+ СтатусОтложенногоЗапроса = НовыйСтатусОтложенногоЗапроса();
+ СтатусОтложенногоЗапроса.ВидЗапроса = ВыборкаСтатусовЗапросов.ВидЗапроса;
+ СтатусОтложенногоЗапроса.ДатаСоздания = ОбщегоНазначенияБЭД.ДатаВФорматеISO(
+ ВыборкаСтатусовЗапросов.ДатаСоздания);
+ СтатусОтложенногоЗапроса.ДатаПоследнейПопытки = ОбщегоНазначенияБЭД.ДатаВФорматеISO(
+ ВыборкаСтатусовЗапросов.ДатаПоследнейПопытки);
+ СтатусОтложенногоЗапроса.НомерПопытки = ВыборкаСтатусовЗапросов.НомерПопытки;
+ СтатусДоверенности.СтатусыОтложенныхЗапросов.Добавить(СтатусОтложенногоЗапроса);
+ КонецЦикла;
+
+ Возврат СтатусДоверенности;
+
+КонецФункции
+
// Параметры:
// Доверенность - СправочникСсылка.МЧД003,СправочникСсылка.МашиночитаемыеДоверенностиОрганизаций,СправочникСсылка.МашиночитаемыеДоверенностиКонтрагентов
//
@@ -1172,7 +1172,7 @@
// * Статус - Неопределено,Строка
// * ДатаОбновления - см. ОбщегоНазначенияБЭД.ДатаВФорматеISO
// * ДатаОтзыва - см. ОбщегоНазначенияБЭД.ДатаВФорматеISO
-Функция РезультатОбновленияСтатусаДоверенностиВФорматеСервиса(РезультатОбновления) Экспорт
+Функция РезультатОбновленияСтатусаДоверенностиВФорматеСервиса(РезультатОбновления)
РезультатВФорматеСервиса = Новый Структура;
РезультатВФорматеСервиса.Вставить("Ошибка", Неопределено);
diff --git a/src/CommonModules/МеткиВремениДанныхЭДО/Ext/Module.bsl b/src/CommonModules/МеткиВремениДанныхЭДО/Ext/Module.bsl
index 469a69f8a..72dfe5744 100644
--- a/src/CommonModules/МеткиВремениДанныхЭДО/Ext/Module.bsl
+++ b/src/CommonModules/МеткиВремениДанныхЭДО/Ext/Module.bsl
@@ -320,10 +320,6 @@
Возврат;
КонецЕсли;
- Если ПараметрыСеанса.РежимЗагрузкиДанныхВЦентрЭДО Тогда
- Возврат;
- КонецЕсли;
-
ДополнительныеСвойства = Источник.ДополнительныеСвойства;
ЭтоНовый = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(ДополнительныеСвойства, "ЭтоНовый", Ложь);
Если ЭтоНовый Тогда
@@ -350,10 +346,6 @@
Возврат;
КонецЕсли;
- Если ПараметрыСеанса.РежимЗагрузкиДанныхВЦентрЭДО Тогда
- Возврат;
- КонецЕсли;
-
РегистрыСведений.МеткиВремениДанныхЭДО.ЗафиксироватьПоНаборуЗаписей(Источник, Замещение);
КонецПроцедуры
@@ -373,10 +365,6 @@
Возврат;
КонецЕсли;
- Если ПараметрыСеанса.РежимЗагрузкиДанныхВЦентрЭДО Тогда
- Возврат;
- КонецЕсли;
-
РегистрыСведений.МеткиВремениДанныхДокументовЭДО.ЗафиксироватьПоОбъекту(Источник);
КонецПроцедуры
@@ -397,10 +385,6 @@
Возврат;
КонецЕсли;
- Если ПараметрыСеанса.РежимЗагрузкиДанныхВЦентрЭДО Тогда
- Возврат;
- КонецЕсли;
-
РегистрыСведений.МеткиВремениДанныхДокументовЭДО.ЗафиксироватьПоНаборуЗаписей(Источник, Замещение);
КонецПроцедуры
@@ -415,10 +399,6 @@
Возврат;
КонецЕсли;
- Если ПараметрыСеанса.РежимЗагрузкиДанныхВЦентрЭДО Тогда
- Возврат;
- КонецЕсли;
-
ЗначенияРеквизитов = Новый Структура("ДатаОбновленияСтатуса, Подписана", '00010101', Ложь);
ЗаполнитьЗначенияСвойств(ЗначенияРеквизитов, Источник);
diff --git a/src/CommonModules/МобильныйЭДО.xml b/src/CommonModules/МобильныйЭДО.xml
index 26f455cae..098910455 100644
--- a/src/CommonModules/МобильныйЭДО.xml
+++ b/src/CommonModules/МобильныйЭДО.xml
@@ -1,6 +1,6 @@
-
+
МобильныйЭДО
diff --git a/src/CommonModules/НастройкаПараметровСканированияИСМПСлужебныйВызовСервера.xml b/src/CommonModules/НастройкаПараметровСканированияИСМПСлужебныйВызовСервера.xml
index 7246d21ce..395553a4c 100644
--- a/src/CommonModules/НастройкаПараметровСканированияИСМПСлужебныйВызовСервера.xml
+++ b/src/CommonModules/НастройкаПараметровСканированияИСМПСлужебныйВызовСервера.xml
@@ -13,8 +13,8 @@
false
false
true
- true
- true
+ false
+ false
true
false
DontUse
diff --git a/src/CommonModules/НастройкиОтправкиЭДО/Ext/Module.bsl b/src/CommonModules/НастройкиОтправкиЭДО/Ext/Module.bsl
index ff9136bd7..856a48d8c 100644
--- a/src/CommonModules/НастройкиОтправкиЭДО/Ext/Module.bsl
+++ b/src/CommonModules/НастройкиОтправкиЭДО/Ext/Module.bsl
@@ -1,5 +1,26 @@
#Область СлужебныйПрограммныйИнтерфейс
+// Описывает настройку заполнения дополнительных полей.
+//
+// Параметры:
+// СтруктураДанных - Неопределено, Массив из Структура -
+//
+// Возвращаемое значение:
+// ТаблицаЗначений:
+// * Идентификатор - Строка, Неопределено -
+// * Имя - Строка, Неопределено -
+// * Представление - Строка, Неопределено -
+// * Описание - Строка, Неопределено -
+// * Правило - Строка, Неопределено -
+// * Заполнение - Строка, Неопределено -
+// * Значение - Строка, Неопределено -
+// * Версия - Строка, Неопределено -
+// * Раздел - Строка, Неопределено -
+//
+Функция НоваяНастройкаЗаполненияДополнительныхПолей(СтруктураДанных = Неопределено) Экспорт
+ Возврат НастройкиОтправкиЭДОСлужебный.НоваяНастройкаЗаполненияДополнительныхПолей(СтруктураДанных);
+КонецФункции
+
// Получает идентификаторы отправителей
//
// Возвращаемое значение:
@@ -727,7 +748,7 @@
Обработчик = Обработчики.Добавить();
Обработчик.Процедура =
"РегистрыСведений.НастройкиОтправкиЭлектронныхДокументовПоВидам.ОбработатьДанныеДляПереходаНаНовуюВерсию";
- Обработчик.Версия = "1.9.12.23";
+ Обработчик.Версия = "1.9.16.32";
Обработчик.РежимВыполнения = "Отложенно";
Обработчик.ЗапускатьИВПодчиненномУзлеРИБСФильтрами = Истина;
Обработчик.Идентификатор = Новый УникальныйИдентификатор("01a5b9aa-f723-4e52-b116-4953b518bf70");
@@ -1162,6 +1183,9 @@
КоличествоНастроек = Выборка.Количество();
СчетчикНастроек = 1;
+ ЭтоФормализованныйФорматБезОтветногоТитула =
+ ЭлектронныеДокументыЭДО.ЭтоФормализованныйФорматБезОтветногоТитула(НовыйФормат);
+
Пока Выборка.Следующий() Цикл
ПереходНаНовыйФорматВыполнен = Ложь;
@@ -1182,6 +1206,9 @@
Запись.ВерсияФормата = НовыйФормат;
Запись.ВерсияФорматаУстановленаВручную = Истина;
+ Если ЭтоФормализованныйФорматБезОтветногоТитула Тогда
+ Запись.ТребуетсяОтветнаяПодпись = Ложь;
+ КонецЕсли;
Если СчетчикНастроек % 10 = 0 Тогда
ДлительныеОперации.СообщитьПрогресс(, СтрШаблон(СообщениеПрогресс, СчетчикНастроек,
diff --git a/src/CommonModules/НастройкиОтправкиЭДОСлужебный/Ext/Module.bsl b/src/CommonModules/НастройкиОтправкиЭДОСлужебный/Ext/Module.bsl
index dc9159d07..d3f9f1a10 100644
--- a/src/CommonModules/НастройкиОтправкиЭДОСлужебный/Ext/Module.bsl
+++ b/src/CommonModules/НастройкиОтправкиЭДОСлужебный/Ext/Module.bsl
@@ -1246,6 +1246,7 @@
КонецФункции
+// см. НастройкиОтправкиЭДО.НоваяНастройкаЗаполненияДополнительныхПолей
Функция НоваяНастройкаЗаполненияДополнительныхПолей(СтруктураДанных = Неопределено) Экспорт
ТаблицаНастроек = Новый ТаблицаЗначений;
diff --git a/src/CommonModules/НастройкиЭДО/Ext/Module.bsl b/src/CommonModules/НастройкиЭДО/Ext/Module.bsl
index 20caa3a1a..fb148839c 100644
--- a/src/CommonModules/НастройкиЭДО/Ext/Module.bsl
+++ b/src/CommonModules/НастройкиЭДО/Ext/Module.bsl
@@ -784,16 +784,17 @@
// Формат - Строка
// ТекстОшибки - Строка
// Возвращаемое значение:
-// - Неопределено -.
-// - ТаблицаЗначений - с колонками:
-// * Идентификатор - Строка
-// * Имя - Строка
-// * Представление - Строка
-// * Описание - Строка
-// * Правило - Строка
-// * Заполнение - Строка
-// * Значение - Строка
-// * Раздел - Строка
+// ТаблицаЗначений:
+// * Идентификатор - Строка
+// * Имя - Строка
+// * Представление - Строка
+// * Описание - Строка
+// * Правило - Строка
+// * Заполнение -Строка
+// * Значение - Строка
+// * Версия - Строка
+// * Раздел - Строка
+//
Функция НастройкаЗаполненияДополнительныхПолей(КлючНастроек, Формат = "", ТекстОшибки = Неопределено) Экспорт
Возврат НастройкиОтправкиЭДО.НастройкаЗаполненияДополнительныхПолей(КлючНастроек, Формат, ТекстОшибки);
@@ -1098,6 +1099,7 @@
ТипДокументаМожноЗавершитьБезИзвещения.Добавить(Перечисления.ТипыДокументовЭДО.ПрайсЛист);
ТипДокументаМожноЗавершитьБезИзвещения.Добавить(Перечисления.ТипыДокументовЭДО.СоглашениеОбИзмененииСтоимости);
ТипДокументаМожноЗавершитьБезИзвещения.Добавить(Перечисления.ТипыДокументовЭДО.СчетНаОплату);
+ ТипДокументаМожноЗавершитьБезИзвещения.Добавить(Перечисления.ТипыДокументовЭДО.СчетОферта);
ТипДокументаМожноЗавершитьБезИзвещения.Добавить(Перечисления.ТипыДокументовЭДО.СчетФактура);
ТипДокументаМожноЗавершитьБезИзвещения.Добавить(Перечисления.ТипыДокументовЭДО.ТоварнаяНакладная);
ТипДокументаМожноЗавершитьБезИзвещения.Добавить(Перечисления.ТипыДокументовЭДО.РеквизитыОрганизации);
diff --git a/src/CommonModules/НеоперативнаяОчередьЗаданий/Ext/Module.bsl b/src/CommonModules/НеоперативнаяОчередьЗаданий/Ext/Module.bsl
index 19e3def65..213bb8408 100644
--- a/src/CommonModules/НеоперативнаяОчередьЗаданий/Ext/Module.bsl
+++ b/src/CommonModules/НеоперативнаяОчередьЗаданий/Ext/Module.bsl
@@ -1780,7 +1780,7 @@
Если Не ТекущаяОчередь = Неопределено Тогда
- Если ФоновоеЗадание.Состояние = СостояниеФоновогоЗадания.ЗавершеноАварийно Тогда
+ Если ФоновоеЗадание <> Неопределено И ФоновоеЗадание.Состояние = СостояниеФоновогоЗадания.ЗавершеноАварийно Тогда
ЗафиксироватьОшибкиПоГрануламРасчетаПриАварийномЗавершенииОбработкиДанных(
ТекущаяОчередь.ГранулыРасчета.Скопировать(СтруктураОтбора),
ТекущаяОчередь.ПолноеИмяОчереди, РабочийПоток.ВидЗадания);
diff --git a/src/CommonModules/ОбменДаннымиИСКлиент/Ext/Module.bsl b/src/CommonModules/ОбменДаннымиИСКлиент/Ext/Module.bsl
index a22c6fb9a..3068a9cda 100644
--- a/src/CommonModules/ОбменДаннымиИСКлиент/Ext/Module.bsl
+++ b/src/CommonModules/ОбменДаннымиИСКлиент/Ext/Module.bsl
@@ -216,9 +216,9 @@
// Параметры:
// Контекст - (См. СтруктураПодготовкиСообщенийКПередаче).
// ИменаКолонокДальнейшиеДействия - Массив Из Строка - Имена колонок с дальнейшими действиями.
-// ИменаРеквизитов - Структура,Строка,Неопределено - Имена реквизитов для сохранения в РеквизитыДокументов.
+// ПараметрыОпределения - см. ОбменДаннымиИСКлиентСервер.ПараметрыОпределенияДоступностиДействий
//
-Процедура ОпределитьДоступностьДействий(Контекст, ИменаКолонокДальнейшиеДействия, ИменаРеквизитов = Неопределено) Экспорт
+Процедура ОпределитьДоступностьДействий(Контекст, ИменаКолонокДальнейшиеДействия, ПараметрыОпределения = Неопределено) Экспорт
ТипГруппировка = Тип("СтрокаГруппировкиДинамическогоСписка");
ИмяПоляСсылка = "Ссылка";
@@ -238,6 +238,20 @@
ВыделенныеСтроки = Контекст.ПараметрыПередачи.ВыделенныеСтроки;
КонецЕсли;
+ Если ПараметрыОпределения <> Неопределено Тогда
+ Если ПараметрыОпределения.Подсистема = "ЗЕРНО" Тогда
+ МодульИнтеграцияЗЕРНОКлиентСервер = ОбщегоНазначенияКлиент.ОбщийМодуль("ИнтеграцияЗЕРНОКлиентСервер");
+ ИменаРеквизитов = МодульИнтеграцияЗЕРНОКлиентСервер.ИменаРеквизитовОпределенияДоступностиДействий();
+ ИначеЕсли ПараметрыОпределения.Подсистема = "ИСМП" Тогда
+ МодульОбменДаннымиИСМПКлиентСервер = ОбщегоНазначенияКлиент.ОбщийМодуль("ОбменДаннымиИСМПКлиентСервер");
+ ИменаРеквизитов = МодульОбменДаннымиИСМПКлиентСервер.ИменаРеквизитовОпределенияДоступностиДействий();
+ ИначеЕсли ПараметрыОпределения.Подсистема = "САТУРН" Тогда
+ МодульИнтеграцияСАТУРНСлужебныйКлиентСервер = ОбщегоНазначенияКлиент.ОбщийМодуль("ИнтеграцияСАТУРНСлужебныйКлиентСервер");
+ ИменаРеквизитов = МодульИнтеграцияСАТУРНСлужебныйКлиентСервер.ИменаРеквизитовОпределенияДоступностиДействий(
+ ПараметрыОпределения.Префикс);
+ КонецЕсли;
+ КонецЕсли;
+
ДокументыДляПолученияРеквизитов = Новый Массив;
Для Каждого ВыделеннаяСтрока Из ВыделенныеСтроки Цикл
@@ -281,16 +295,16 @@
Если ДокументыДляПолученияРеквизитов.Количество() Тогда
- Реквизиты = Новый Массив;
- Если ТипЗнч(ИменаРеквизитов) = Тип("Структура") Тогда
- Для Каждого КлючИЗначение Из ИменаРеквизитов Цикл
- Реквизиты.Добавить(КлючИЗначение.Ключ);
- КонецЦикла;
- Иначе
- Реквизиты.Добавить(ИменаРеквизитов);
+ Если ПараметрыОпределения.Подсистема = "ЗЕРНО" Тогда
+ МодульВызовСервера = ОбщегоНазначенияКлиент.ОбщийМодуль("ИнтеграцияЗЕРНОВызовСервера");
+ ИначеЕсли ПараметрыОпределения.Подсистема = "ИСМП" Тогда
+ МодульВызовСервера = ОбщегоНазначенияКлиент.ОбщийМодуль("ОбменДаннымиИСМПВызовСервера");
+ ИначеЕсли ПараметрыОпределения.Подсистема = "САТУРН" Тогда
+ МодульВызовСервера = ОбщегоНазначенияКлиент.ОбщийМодуль("ИнтеграцияСАТУРНВызовСервера");
КонецЕсли;
- ЗначенияРеквизитов = ОбщегоНазначенияИСВызовСервера.ЗначенияРеквизитовОбъектов(ДокументыДляПолученияРеквизитов, Реквизиты);
+ ЗначенияРеквизитов = МодульВызовСервера.ЗначенияРеквизитовДляОпределенияДоступностиДействий(
+ ДокументыДляПолученияРеквизитов, ПараметрыОпределения);
Для Каждого ДокументСсылка Из ДокументыДляПолученияРеквизитов Цикл
Контекст.РеквизитыДокументов.Вставить(ДокументСсылка, ЗначенияРеквизитов[ДокументСсылка]);
diff --git a/src/CommonModules/ОбменДаннымиИСКлиентСервер/Ext/Module.bsl b/src/CommonModules/ОбменДаннымиИСКлиентСервер/Ext/Module.bsl
index 347d9e996..2c946e802 100644
--- a/src/CommonModules/ОбменДаннымиИСКлиентСервер/Ext/Module.bsl
+++ b/src/CommonModules/ОбменДаннымиИСКлиентСервер/Ext/Module.bsl
@@ -133,4 +133,20 @@
КонецФункции
+// Возвращает параметры определения доступности действий.
+//
+// Возвращаемое значение:
+// Структура - Параметры определения доступности действий:
+// * Подсистема - Строка - Подсистема, для которой определяется доступность действий.
+// * Префикс - Строка - Префикс реквизитов
+Функция ПараметрыОпределенияДоступностиДействий() Экспорт
+
+ ВозвращаемоеЗначение = Новый Структура;
+ ВозвращаемоеЗначение.Вставить("Подсистема", "");
+ ВозвращаемоеЗначение.Вставить("Префикс" , "");
+
+ Возврат ВозвращаемоеЗначение;
+
+КонецФункции
+
#КонецОбласти
\ No newline at end of file
diff --git a/src/CommonModules/ОбменДаннымиИСМП/Ext/Module.bsl b/src/CommonModules/ОбменДаннымиИСМП/Ext/Module.bsl
index 648821bee..c2102e4aa 100644
--- a/src/CommonModules/ОбменДаннымиИСМП/Ext/Module.bsl
+++ b/src/CommonModules/ОбменДаннымиИСМП/Ext/Module.bsl
@@ -10,6 +10,7 @@
КонецПроцедуры
#КонецОбласти
+
#Область СлужебныеПроцедурыИФункции
#Область ПодготовкаСообщений
@@ -93,10 +94,12 @@
И ПараметрыОбмена.КОбновлениюКлючейСессии.Количество());
ТребуетсяОпределениеВидаУпаковки = ПараметрыОбмена.КОпределениюВидаУпаковки <> Неопределено;
+ ТребуетсяПроверкаНаличияМОД = ПараметрыОбмена.МОДКПроверкеРегистрации <> Неопределено;
ДоступныеСертификаты = Неопределено;
АдресКОпределениюВидаУпаковки = "";
-
+ СписокМОДКПроверкеРегистрации = Неопределено;
+
Если ТребуетсяОпределениеВидаУпаковки
И ОбщегоНазначенияИСМП.ЭтоРасширеннаяВерсияГосИС() Тогда
@@ -117,8 +120,29 @@
КонецЕсли;
КонецЕсли;
-
- Если ТребуетсяОжидание И Не ТребуетсяПодписание И Не ТребуетсяОпределениеВидаУпаковки Тогда
+
+ Если ТребуетсяПроверкаНаличияМОД И ОбщегоНазначенияИСМП.ЭтоРасширеннаяВерсияГосИС() Тогда
+ СообщенияКПроверкеНаличияМОД = СообщенияКПроверкеНаличияМОДВСервисе(ПараметрыОбмена);
+
+ ПроверитьКлючиСессии(СообщенияКПроверкеНаличияМОД, СертификатыДляПодписанияНаСервере, ПараметрыОбмена);
+ ДоступныеСертификаты(СообщенияКПроверкеНаличияМОД, ДоступныеСертификаты);
+
+ МодульПроверкиМОД = ОбщегоНазначенияИСПовтИсп.ОбщийМодуль("ИнтеграцияИСМПСлужебный");
+ РезультатыПроверкиМОДВГИСМТ = МодульПроверкиМОД.МОДКРегистрацииВГИСМТПоСпискуДокументов(
+ ПараметрыОбмена.МОДКПроверкеРегистрации);
+
+ Если РезультатыПроверкиМОДВГИСМТ.ТребуетсяОбновлениеКлючаСессии
+ Или РезультатыПроверкиМОДВГИСМТ.МОДКРегистрации.Количество() = 0 Тогда
+ ТребуетсяПроверкаНаличияМОД = Ложь;
+ ПараметрыОбмена.МОДКПроверкеРегистрации = Неопределено;
+ ИначеЕсли РезультатыПроверкиМОДВГИСМТ.МОДКРегистрации.Количество() > 0 Тогда
+ СписокМОДКПроверкеРегистрации = РезультатыПроверкиМОДВГИСМТ.МОДКРегистрации;
+ КонецЕсли;
+
+ КонецЕсли;
+
+ Если ТребуетсяОжидание И Не ТребуетсяПодписание И Не ТребуетсяОпределениеВидаУпаковки
+ И Не ТребуетсяПроверкаНаличияМОД Тогда
Если ДатаСледующейИтерации <> Неопределено Тогда
ВремяОжидания = Окр(ДатаСледующейИтерации - ТекущаяДатаСеанса(), 0, РежимОкругления.Окр15как20);
@@ -139,7 +163,7 @@
КонецЕсли;
- Если (ТребуетсяОжидание Или ТребуетсяПодписание Или ТребуетсяОпределениеВидаУпаковки)
+ Если (ТребуетсяОжидание Или ТребуетсяПодписание Или ТребуетсяОпределениеВидаУпаковки Или ТребуетсяПроверкаНаличияМОД)
И ПараметрыОбмена.АдресВоВременномХранилище <> Неопределено Тогда
Если ТребуетсяПодписание Тогда
@@ -158,6 +182,7 @@
ВозвращаемоеЗначение.ТребуетсяПодписание = ПараметрыОбмена.СообщенияКПодписанию;
ВозвращаемоеЗначение.СообщенияПослеПодписания = ПараметрыОбмена.СообщенияПослеПодписания;
ВозвращаемоеЗначение.КОпределениюВидаУпаковки = АдресКОпределениюВидаУпаковки;
+ ВозвращаемоеЗначение.МОДКПроверкеРегистрации = СписокМОДКПроверкеРегистрации;
// Параметры не сериализуются => не могут быть размещены во временном хранилище.
ПараметрыОбмена.ФоновоеЗадание = Неопределено;
@@ -1237,6 +1262,7 @@
ПараметрыОбмена.Вставить("СообщенияКПодписанию", Неопределено);
ПараметрыОбмена.Вставить("КОпределениюВидаУпаковки", Неопределено);
ПараметрыОбмена.Вставить("СообщенияПослеПодписания", Неопределено);
+ ПараметрыОбмена.Вставить("МОДКПроверкеРегистрации", Неопределено);
ПараметрыОбмена.Вставить("ОжидатьНаСервере", Истина);
ПараметрыОбмена.Вставить("ОжидатьНаКлиенте", Ложь);
@@ -2088,6 +2114,7 @@
// * АдресВоВременномХранилище - Неопределено, Строка -
// * АдресДанныхЛогаЗапроса - Неопределено, Строка -
// * ИзвлекатьДанныеЛогаЗапросов - Булево -
+// * МОДКПроверкеРегистрации - Неопределено, Соответствие из КлючИЗначение -
Функция РезультатВыполненияОбменаДанными() Экспорт
ВозвращаемоеЗначение = Новый Структура;
@@ -2101,9 +2128,9 @@
ВозвращаемоеЗначение.Вставить("Ожидать", Неопределено);
ВозвращаемоеЗначение.Вставить("АдресВоВременномХранилище", Неопределено);
ВозвращаемоеЗначение.Вставить("АдресДанныхЛогаЗапроса", Неопределено);
- ВозвращаемоеЗначение.Вставить(
- "ИзвлекатьДанныеЛогаЗапросов",
+ ВозвращаемоеЗначение.Вставить("ИзвлекатьДанныеЛогаЗапросов",
ОбщегоНазначенияИСВызовСервера.ЭтоФоновоеЗаданиеНаСервере());
+ ВозвращаемоеЗначение.Вставить("МОДКПроверкеРегистрации", Неопределено);
Возврат ВозвращаемоеЗначение;
@@ -2128,6 +2155,25 @@
КонецФункции
+Функция СообщенияКПроверкеНаличияМОДВСервисе(ПараметрыОбмена)
+
+ СообщенияКОпределениюВидаУпаковки = Новый Соответствие;
+
+ Для Каждого ЭлементОчереди Из ПараметрыОбмена.ОчередьСообщений Цикл
+ Если ЭлементОчереди.Операция = Перечисления.ВидыОперацийИСМП.ПовторноеФормированиеСообщений Тогда
+ СообщенияПоОрганизации = СообщенияКОпределениюВидаУпаковки[ЭлементОчереди.Организация];
+ Если СообщенияПоОрганизации = Неопределено Тогда
+ СообщенияПоОрганизации = Новый Массив;
+ СообщенияКОпределениюВидаУпаковки.Вставить(ЭлементОчереди.Организация, СообщенияПоОрганизации);
+ КонецЕсли;
+ СообщенияПоОрганизации.Добавить(ЭлементОчереди.РеквизитыИсходящегоСообщения);
+ КонецЕсли;
+ КонецЦикла;
+
+ Возврат СообщенияКОпределениюВидаУпаковки;
+
+КонецФункции
+
// Соответствие зависимых операций.
//
// Возвращаемое значение:
@@ -2590,7 +2636,8 @@
Или ЭлементОчереди.Операция = Перечисления.ВидыОперацийИСМП.ПеремещениеМеждуМОДПредварительноеФормированиеТитулаПродавцаИПокупателя
Или ЭлементОчереди.Операция = Перечисления.ВидыОперацийИСМП.ПеремещениеМеждуМОДФормированиеИПодписаниеТитулаПродавца);
- Если ПовторноеФормирование И ПараметрыОбмена.КОпределениюВидаУпаковки <> Неопределено Тогда
+ Если ПовторноеФормирование И (ПараметрыОбмена.КОпределениюВидаУпаковки <> Неопределено
+ Или ПараметрыОбмена.МОДКПроверкеРегистрации <> Неопределено) Тогда
Возврат Ложь;
КонецЕсли;
@@ -2831,6 +2878,7 @@
ВозвращаемоеЗначение = РезультатВыполненияОбменаДанными();
ПараметрыОбмена.КОпределениюВидаУпаковки = Неопределено;
+ ПараметрыОбмена.МОДКПроверкеРегистрации = Неопределено;
ПодготовитьПодписанныеСообщенияКПередаче(
ПодписанныеСообщенияПоОрганизациям,
@@ -2859,9 +2907,12 @@
И ПараметрыОбмена.КОбновлениюКлючейСессии.Количество());
ТребуетсяОпределениеВидаУпаковки = ПараметрыОбмена.КОпределениюВидаУпаковки <> Неопределено;
+ ТребуетсяПроверкаНаличияМОД = ПараметрыОбмена.МОДКПроверкеРегистрации <> Неопределено;
ДоступныеСертификаты = Неопределено;
АдресКОпределениюВидаУпаковки = "";
+ СписокМОДКПроверкеРегистрации = Неопределено;
+
Если ТребуетсяОпределениеВидаУпаковки
И ОбщегоНазначенияИСМП.ЭтоРасширеннаяВерсияГосИС() Тогда
@@ -2883,30 +2934,51 @@
КонецЕсли;
КонецЕсли;
+
+ Если ТребуетсяПроверкаНаличияМОД И ОбщегоНазначенияИСМП.ЭтоРасширеннаяВерсияГосИС() Тогда
+ СообщенияКПроверкеНаличияМОД = СообщенияКПроверкеНаличияМОДВСервисе(ПараметрыОбмена);
+
+ ПроверитьКлючиСессии(СообщенияКПроверкеНаличияМОД, Неопределено, ПараметрыОбмена);
+ ДоступныеСертификаты(СообщенияКПроверкеНаличияМОД, ДоступныеСертификаты);
+
+ МодульПроверкиМОД = ОбщегоНазначенияИСПовтИсп.ОбщийМодуль("ИнтеграцияИСМПСлужебный");
+ РезультатыПроверкиМОДВГИСМТ = МодульПроверкиМОД.МОДКРегистрацииВГИСМТПоСпискуДокументов(
+ ПараметрыОбмена.МОДКПроверкеРегистрации);
+
+ Если РезультатыПроверкиМОДВГИСМТ.ТребуетсяОбновлениеКлючаСессии
+ Или РезультатыПроверкиМОДВГИСМТ.МОДКРегистрации.Количество() = 0 Тогда
+ ТребуетсяПроверкаНаличияМОД = Ложь;
+ ПараметрыОбмена.МОДКПроверкеРегистрации = Неопределено;
+ ИначеЕсли РезультатыПроверкиМОДВГИСМТ.МОДКРегистрации.Количество() > 0 Тогда
+ СписокМОДКПроверкеРегистрации = РезультатыПроверкиМОДВГИСМТ.МОДКРегистрации;
+ КонецЕсли;
+
+ КонецЕсли;
+
+ Если ТребуетсяОжидание И Не ТребуетсяПодписание И Не ТребуетсяОпределениеВидаУпаковки
+ И Не ТребуетсяПроверкаНаличияМОД Тогда
- Если ТребуетсяОжидание И Не ТребуетсяПодписание И Не ТребуетсяОпределениеВидаУпаковки Тогда
-
Если ДатаСледующейИтерации <> Неопределено Тогда
ВремяОжидания = Окр(ДатаСледующейИтерации - ТекущаяДатаСеанса(), 0, РежимОкругления.Окр15как20);
Иначе
ВремяОжидания = 0;
КонецЕсли;
-
+
Если ПараметрыОбмена.ОжидатьНаСервере Тогда
ОбщегоНазначенияИС.Ожидать(ВремяОжидания, ПараметрыОбмена);
ИначеЕсли ПараметрыОбмена.ОжидатьНаКлиенте И ВремяОжидания <> 0 Тогда
ВыполнитьИтерацию = Ложь;
КонецЕсли;
-
+
Иначе
-
+
ВыполнитьИтерацию = Ложь;
-
+
КонецЕсли;
КонецЦикла;
- Если (ТребуетсяОжидание Или ТребуетсяПодписание Или ТребуетсяОпределениеВидаУпаковки)
+ Если (ТребуетсяОжидание Или ТребуетсяПодписание Или ТребуетсяОпределениеВидаУпаковки Или ТребуетсяПроверкаНаличияМОД)
И ПараметрыОбмена.АдресВоВременномХранилище <> Неопределено Тогда
Если ТребуетсяПодписание Тогда
@@ -2925,6 +2997,7 @@
ВозвращаемоеЗначение.ТребуетсяПодписание = ПараметрыОбмена.СообщенияКПодписанию;
ВозвращаемоеЗначение.СообщенияПослеПодписания = ПараметрыОбмена.СообщенияПослеПодписания;
ВозвращаемоеЗначение.КОпределениюВидаУпаковки = АдресКОпределениюВидаУпаковки;
+ ВозвращаемоеЗначение.МОДКПроверкеРегистрации = СписокМОДКПроверкеРегистрации;
// Параметры не сериализуются => не могут быть размещены во временном хранилище.
ПараметрыОбмена.ФоновоеЗадание = Неопределено;
diff --git a/src/CommonModules/ОбменДаннымиИСМПВызовСервера/Ext/Module.bsl b/src/CommonModules/ОбменДаннымиИСМПВызовСервера/Ext/Module.bsl
index 920336fa1..686abfe6d 100644
--- a/src/CommonModules/ОбменДаннымиИСМПВызовСервера/Ext/Module.bsl
+++ b/src/CommonModules/ОбменДаннымиИСМПВызовСервера/Ext/Module.bsl
@@ -25,6 +25,7 @@
ВозвращаемоеЗначение.Вставить("ДлительнаяОперация", Неопределено);
ВозвращаемоеЗначение.Вставить("Ожидать", Неопределено);
ВозвращаемоеЗначение.Вставить("АдресВоВременномХранилище", Неопределено);
+ ВозвращаемоеЗначение.Вставить("МОДКПроверкеРегистрации", Неопределено);
ПараметрыВыполнения = ДлительныеОперации.ПараметрыВыполненияВФоне(УникальныйИдентификатор);
ПараметрыВыполнения.НаименованиеФоновогоЗадания = НСтр("ru = 'Выполнение обмена с ИС МП'");
@@ -70,6 +71,7 @@
ВозвращаемоеЗначение.Вставить("ДлительнаяОперация", Неопределено);
ВозвращаемоеЗначение.Вставить("Ожидать", Неопределено);
ВозвращаемоеЗначение.Вставить("АдресВоВременномХранилище", Неопределено);
+ ВозвращаемоеЗначение.Вставить("МОДКПроверкеРегистрации", Неопределено);
ПараметрыВыполнения = ДлительныеОперации.ПараметрыВыполненияВФоне(УникальныйИдентификатор);
ПараметрыВыполнения.НаименованиеФоновогоЗадания = НСтр("ru = 'Выполнение обмена с ИС МП'");
@@ -167,6 +169,7 @@
ВозвращаемоеЗначение.Вставить("ДлительнаяОперация", Неопределено);
ВозвращаемоеЗначение.Вставить("Ожидать", Неопределено);
ВозвращаемоеЗначение.Вставить("АдресВоВременномХранилище", Неопределено);
+ ВозвращаемоеЗначение.Вставить("МОДКПроверкеРегистрации", Неопределено);
ПараметрыВыполнения = ДлительныеОперации.ПараметрыВыполненияВФоне(ПараметрыОбмена.УникальныйИдентификатор);
ПараметрыВыполнения.НаименованиеФоновогоЗадания = НСтр("ru = 'Выполнение обмена с ИС МП'");
@@ -348,4 +351,12 @@
КонецФункции
+Функция ЗначенияРеквизитовДляОпределенияДоступностиДействий(СсылкиНаДокументы, ПараметрыОпределения) Экспорт
+
+ ИменаРеквизитов = ОбменДаннымиИСМПКлиентСервер.ИменаРеквизитовОпределенияДоступностиДействий();
+
+ Возврат ОбщегоНазначения.ЗначенияРеквизитовОбъектов(СсылкиНаДокументы, ИменаРеквизитов);
+
+КонецФункции
+
#КонецОбласти
\ No newline at end of file
diff --git a/src/CommonModules/ОбменДаннымиИСМПКлиент/Ext/Module.bsl b/src/CommonModules/ОбменДаннымиИСМПКлиент/Ext/Module.bsl
index b00fc57c6..bf4c8a219 100644
--- a/src/CommonModules/ОбменДаннымиИСМПКлиент/Ext/Module.bsl
+++ b/src/CommonModules/ОбменДаннымиИСМПКлиент/Ext/Module.bsl
@@ -123,8 +123,11 @@
ИменаКолонокДальнейшиеДействия.Добавить("ДальнейшееДействиеИСМП3");
КонецЕсли;
+ ПараметрыОпределенияДоступности = ОбменДаннымиИСКлиентСервер.ПараметрыОпределенияДоступностиДействий();
+ ПараметрыОпределенияДоступности.Подсистема = ОбщегоНазначенияИСМПКлиентСервер.ИмяПодсистемы();
+
ОбменДаннымиИСКлиент.ОпределитьДоступностьДействий(
- Контекст, ИменаКолонокДальнейшиеДействия, "Организация");
+ Контекст, ИменаКолонокДальнейшиеДействия, ПараметрыОпределенияДоступности);
ОбменДаннымиИСКлиент.ПодготовитьСообщенияКПередаче(Контекст);
@@ -521,6 +524,28 @@
КонецЕсли;
+ ИначеЕсли РезультатОбмена.МОДКПроверкеРегистрации <> Неопределено Тогда
+ Контекст = Новый Структура;
+ Контекст.Вставить("Форма", Форма);
+ Контекст.Вставить("Организация", Организация);
+ Контекст.Вставить("ОповещениеПриЗавершении", ОповещениеПриЗавершении);
+
+ Контекст.Вставить("НаборДанныхДляПодписанияПоОрганизациям", Новый Соответствие);
+ Контекст.Вставить("ПодписанныеСообщенияПоОрганизациям", Новый Соответствие);
+ Контекст.Вставить("ДоступныеСертификаты", РезультатОбмена.ДоступныеСертификаты);
+ Контекст.Вставить("АдресРезультатаОбменаВоВременномХранилище", АдресРезультатаОбменаВоВременномХранилище);
+
+ ИмяПроцедурыОповещения = "ПродолжитьВыполнениеОбменаПослеУточненияПараметровРегистрацииМОД";
+
+ //@skip-check notify-description-to-server-procedure
+ СогласиеНаРегистрациюМОДЗавершение = Новый ОписаниеОповещения(ИмяПроцедурыОповещения,
+ ОбщегоНазначенияКлиент.ОбщийМодуль("ИнтеграцияИСМПСлужебныйКлиент"),
+ Контекст);
+
+ МодульИнтеграцияИСМПКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("ИнтеграцияИСМПКлиент");
+ МодульИнтеграцияИСМПКлиент.ОткрытьФормуРегистрацииМестаОсуществленияДеятельностиГИСМТ(РезультатОбмена.МОДКПроверкеРегистрации,
+ ЭтотОбъект, СогласиеНаРегистрациюМОДЗавершение);
+
Иначе
ДополнительныеПараметры = Новый Структура;
diff --git a/src/CommonModules/ОбменДаннымиИСМПКлиентСервер/Ext/Module.bsl b/src/CommonModules/ОбменДаннымиИСМПКлиентСервер/Ext/Module.bsl
index 5b10bbec3..6c986e3fe 100644
--- a/src/CommonModules/ОбменДаннымиИСМПКлиентСервер/Ext/Module.bsl
+++ b/src/CommonModules/ОбменДаннымиИСМПКлиентСервер/Ext/Module.bsl
@@ -475,4 +475,14 @@
КонецФункции
+// Возвращает структуру с именами реквизитов, используемых для определения доступности действий.
+//
+// Возвращаемое значение:
+// Строка, Неопределено - имя реквизита организации
+Функция ИменаРеквизитовОпределенияДоступностиДействий() Экспорт
+
+ Возврат "Организация";
+
+КонецФункции
+
#КонецОбласти
\ No newline at end of file
diff --git a/src/CommonModules/ОбменСБанкамиHttpBridgeКлиент/Ext/Module.bsl b/src/CommonModules/ОбменСБанкамиHttpBridgeКлиент/Ext/Module.bsl
index b60624257..92820ba99 100644
--- a/src/CommonModules/ОбменСБанкамиHttpBridgeКлиент/Ext/Module.bsl
+++ b/src/CommonModules/ОбменСБанкамиHttpBridgeКлиент/Ext/Module.bsl
@@ -243,8 +243,11 @@
КонецЕсли;
+ #Если Не ВебКлиент Тогда
+
ЛогФайлHttpBridge = Неопределено;
- Если ДополнительныеПараметры.Свойство("ЛогФайлHttpBridge", ЛогФайлHttpBridge) И ЗначениеЗаполнено(ЛогФайлHttpBridge) Тогда
+ Если ДополнительныеПараметры.Свойство("ЛогФайлHttpBridge", ЛогФайлHttpBridge)
+ И ЗначениеЗаполнено(ЛогФайлHttpBridge) Тогда
Попытка
@@ -267,6 +270,8 @@
КонецЕсли;
+ #КонецЕсли
+
ВыполнитьОбработкуОповещения(
ДополнительныеПараметры.ПослеВыполненияЗапросаСКлиента,
РезультатЗапроса);
@@ -291,8 +296,11 @@
КонецЕсли;
+ #Если Не ВебКлиент Тогда
+
ЛогФайлHttpBridge = Неопределено;
- Если ДополнительныеПараметры.Свойство("ЛогФайлHttpBridge", ЛогФайлHttpBridge) И ЗначениеЗаполнено(ЛогФайлHttpBridge) Тогда
+ Если ДополнительныеПараметры.Свойство("ЛогФайлHttpBridge", ЛогФайлHttpBridge)
+ И ЗначениеЗаполнено(ЛогФайлHttpBridge) Тогда
Попытка
@@ -315,6 +323,8 @@
КонецЕсли;
+ #КонецЕсли
+
ВыполнитьОбработкуОповещения(
ДополнительныеПараметры.ПослеВыполненияЗапросаСКлиента,
ДополнительныеПараметры.РезультатЗапроса);
diff --git a/src/CommonModules/ОбменСБанкамиSberAPIСлужебный/Ext/Module.bsl b/src/CommonModules/ОбменСБанкамиSberAPIСлужебный/Ext/Module.bsl
index 9a8dc0230..263499191 100644
--- a/src/CommonModules/ОбменСБанкамиSberAPIСлужебный/Ext/Module.bsl
+++ b/src/CommonModules/ОбменСБанкамиSberAPIСлужебный/Ext/Module.bsl
@@ -1365,15 +1365,21 @@
#Область СлужебныеПроцедурыИФункции
+// Выполняет попытку отзыва токена доступа.
+//
// Параметры:
-// НастройкаОбмена - СправочникСсылка.НастройкиОбменСБанками - текущая настройка обмена с банком
-// ПараметрыСессии - Структура - может содержать следующие поля:
-// * ИдентификаторСессии - Строка - идентификатор установленной сессии
-// * ФродПараметры - Структура - фрод
-// * Логин - Строка - логин пользователя
-// * ТокенДоступа - Строка - токен доступа, выданный сервисом
+// Параметры - Структура - содержит следующие поля:
+// НастройкаОбмена - СправочникСсылка.НастройкиОбменСБанками - текущая настройка обмена с банком
+// ПараметрыСессии - Структура - может содержать следующие поля.
+// * ИдентификаторСессии - Строка - идентификатор установленной сессии.
+// * ФродПараметры - Структура - фрод.
+// * Логин - Строка - логин пользователя.
+// * ТокенДоступа - Строка - токен доступа, выданный сервисом.
// * ДоступныеСчета - Массив из Строка - доступные счета в банке для текущего идентификатора сессии.
-// ТокенаДоступа - Строка - токен доступа выданный банком
+// ТокенДоступа - Строка - токен доступа выданный банком.
+//
+// Возвращаемое значение:
+// Булево - Истина, если токен успешно отозван, иначе Ложь.
//
Функция ОтозватьТокенДоступа(Параметры) Экспорт
diff --git a/src/CommonModules/ОбменСБанкамиSberAPIСлужебныйКлиент/Ext/Module.bsl b/src/CommonModules/ОбменСБанкамиSberAPIСлужебныйКлиент/Ext/Module.bsl
index 5fab064f7..0028fc95e 100644
--- a/src/CommonModules/ОбменСБанкамиSberAPIСлужебныйКлиент/Ext/Module.bsl
+++ b/src/CommonModules/ОбменСБанкамиSberAPIСлужебныйКлиент/Ext/Module.bsl
@@ -8,7 +8,25 @@
#Область АутентификациюПоЛогину
// Создает структуру параметров для аутентификации по логину
-// Подробнее см. ВыполнитьАутентификациюПоЛогину()
+//
+// Возвращаемое значение:
+// Структура:
+// * Оповещение - ОписаниеОповещения - оповещение, вызываемое после выполнения метода
+// ** Результат - Структура - результат аутентификации, содержит поля:
+// *** Успех - Булево - результат аутентификации.
+// *** ТребуетсяТокен - Булево - возвращает Истина, если Успех = Ложь и требуется токен.
+// ** ДополнительныеПараметры - Структура - контекст выполнения метода
+// * ИмяВнешнегоМодуля - Строка - название внешней компоненты банка.
+// * НастройкаОбмена - СправочникСсылка.НастройкиОбменСБанками, Неопределено - текущая настройка обмена с банком.
+// * ЛогинПароль - Структура - логин и пароль для аутентификации, содержит поля:
+// ** Логин - Строка - имя пользователя
+// ** Пароль - Строка - пароль пользователя.
+// * ТекстПояснения - Строка - текст пояснения перед установкой внешней компоненты.
+// * Организация - ОпределяемыйТип.Организация, Неопределено - ссылка на организацию.
+// * Банк - ОпределяемыйТип.БанкОбменСБанками, Неопределено - ссылка на банк.
+// * НомерСчета - Строка, Неопределено - номер счета к которому требуется получение доступа.
+// * ЭтоТест - Булево - признак тестового режима.
+// * НовыйИдентификаторОрганизации - Строка - новый идентификатор организации, который нужно использовать.
//
Функция ПараметрыАутентификацииПоЛогину() Экспорт
@@ -46,6 +64,8 @@
// * Организация - ОпределяемыйТип.Организация, Неопределено - ссылка на организацию
// * Банк - ОпределяемыйТип.БанкОбменСБанками, Неопределено - ссылка на банк.
// * НомерСчета - Строка, Неопределено - номер счета к которому требуется получение доступа
+// * ЭтоТест - Булево - признак тестового режима.
+// * НовыйИдентификаторОрганизации - Строка - новый идентификатор организации, который нужно использовать.
//
Процедура ВыполнитьАутентификациюПоЛогину(ПараметрыАутентификацииПоЛогину) Экспорт
diff --git a/src/CommonModules/ОбменСБанкамиSberAPIСлужебныйКлиентСервер/Ext/Module.bsl b/src/CommonModules/ОбменСБанкамиSberAPIСлужебныйКлиентСервер/Ext/Module.bsl
index ee80a8e8c..faf311421 100644
--- a/src/CommonModules/ОбменСБанкамиSberAPIСлужебныйКлиентСервер/Ext/Module.bsl
+++ b/src/CommonModules/ОбменСБанкамиSberAPIСлужебныйКлиентСервер/Ext/Module.bsl
@@ -620,6 +620,13 @@
// Функции исключают типовые ошибки, могущие возникнут в результате подобных преобразований
//
+// Параметры:
+// СтрокаBase64 - Строка - строка в формате Base64 для преобразования
+//
+// Возвращаемое значение:
+// ДвоичныеДанные - декодированные двоичные данные.
+// Неопределено - если преобразование не удалось.
+//
Функция ДвоичныеДанныеИзBase64Строки(СтрокаBase64) Экспорт
ДвоичныеДанныеИзBase64 = ДвоичныеДанныеИзBase64СтрокиПерваяИтерация(СтрокаBase64);
diff --git a/src/CommonModules/ОбменСБанкамиВыплатыСамозанятымСлужебный/Ext/Module.bsl b/src/CommonModules/ОбменСБанкамиВыплатыСамозанятымСлужебный/Ext/Module.bsl
index 7111fc43e..93921a5da 100644
--- a/src/CommonModules/ОбменСБанкамиВыплатыСамозанятымСлужебный/Ext/Module.bsl
+++ b/src/CommonModules/ОбменСБанкамиВыплатыСамозанятымСлужебный/Ext/Module.bsl
@@ -49,12 +49,20 @@
ПечатныйНомерДокумента = "";
ЭлектронноеВзаимодействиеПереопределяемый.ПолучитьПечатныйНомерДокумента(СсылкаНаОбъект, ПечатныйНомерДокумента);
+ РеквизитыДокумента = "Дата";
+ Если ОбщегоНазначения.ЕстьРеквизитОбъекта("СуммаДокумента", СсылкаНаОбъект.Метаданные()) Тогда
+ РеквизитыДокумента = РеквизитыДокумента + ", СуммаДокумента";
+ КонецЕсли;
+
+ ЗначенияРеквизитовДокумента = ОбщегоНазначения.ЗначенияРеквизитовОбъекта(СсылкаНаОбъект, РеквизитыДокумента);
+
СтруктураЭД.Вставить("НомерДокументаОтправителя", ПечатныйНомерДокумента);
- СтруктураЭД.Вставить("ДатаДокументаОтправителя", СсылкаНаОбъект.Дата);
+ СтруктураЭД.Вставить("ДатаДокументаОтправителя", ЗначенияРеквизитовДокумента.Дата);
СтруктураЭД.Вставить("НастройкаОбмена", НастройкиОбменаЭД.НастройкаОбмена);
СтруктураЭД.Вставить("ПрограммаБанка", НастройкиОбменаЭД.ПрограммаБанка);
Если ОбщегоНазначения.ЕстьРеквизитОбъекта("СуммаДокумента", СсылкаНаОбъект.Метаданные()) Тогда
- СтруктураЭД.Вставить("СуммаДокумента", СсылкаНаОбъект.СуммаДокумента);
+ СтруктураЭД.Вставить(
+ "СуммаДокумента", ЗначенияРеквизитовДокумента.СуммаДокумента);
КонецЕсли;
АдресФайла = "";
diff --git a/src/CommonModules/ОбменСБанкамиДепозитыВызовСервера/Ext/Module.bsl b/src/CommonModules/ОбменСБанкамиДепозитыВызовСервера/Ext/Module.bsl
index aa254278f..d8d068199 100644
--- a/src/CommonModules/ОбменСБанкамиДепозитыВызовСервера/Ext/Module.bsl
+++ b/src/CommonModules/ОбменСБанкамиДепозитыВызовСервера/Ext/Module.bsl
@@ -3,6 +3,21 @@
//
////////////////////////////////////////////////////////////////////////////////
+#Область ПрограммныйИнтерфейс
+
+// Сохраняет решение пользователя закрыть панель расчета депозита в хранилище
+// общих настроек.
+// см. ОбменСБанкамиДепозиты.СохранитьЗакрытиеПанелиРасчетаДепозитов.
+//
+Процедура ОбработатьЗакрытиеПанелиРасчетаДепозитов() Экспорт
+
+ ИмяПользователя = ИмяПользователя();
+ ОбменСБанкамиДепозиты.СохранитьЗакрытиеПанелиРасчетаДепозитов(ИмяПользователя);
+
+КонецПроцедуры
+
+#КонецОбласти
+
#Область СлужебныйПрограммныйИнтерфейс
// Запускает длительную операцию по получению новых предложений по депозитам из банков
@@ -36,6 +51,29 @@
КонецФункции
+// Запускает фоновое задание для получения остатков по счетам банковских выписок.
+//
+// Параметры:
+// Организация - ОпределяемыйТип.Организация - организация, для которой выполняется операция
+// УникальныйИдентификатор - УникальныйИдентификатор - см. ДлительныеОперации.ПараметрыВыполненияФункции
+//
+// Возвращаемое значение:
+// Структура - параметры запущенной длительной операции см. ДлительныеОперации.ВыполнитьФункцию
+//
+Функция ЗапускЗаданияПолучитьОстаткиПоСчетамВыписки(Организация, УникальныйИдентификатор) Экспорт
+
+ ПараметрыВыполнения = ДлительныеОперации.ПараметрыВыполненияФункции(УникальныйИдентификатор);
+ ПараметрыВыполнения.ОжидатьЗавершения = 0;
+ ПараметрыВыполнения.НаименованиеФоновогоЗадания =
+ НСтр("ru = '1С:ДиректБанк. Получение остатков по счетам банковских выписок'");
+ ПараметрыВыполнения.ЗапуститьВФоне = Истина;
+
+ ДлительнаяОперация = ДлительныеОперации.ВыполнитьФункцию(ПараметрыВыполнения,
+ "ОбменСБанкамиДепозитыСлужебный.ОстаткиПоСчетамВыписки", Организация);
+ Возврат ДлительнаяОперация;
+
+КонецФункции
+
// Проверяет доступные продукты и формирует данные предложений банков для расчета.
//
// Параметры:
@@ -105,17 +143,6 @@
КонецФункции
-// Сохраняет решение пользователя закрыть панель расчета депозита в хранилище
-// общих настроек.
-// см. ОбменСБанкамиДепозиты.СохранитьЗакрытиеПанелиРасчетаДепозитов.
-//
-Процедура ОбработатьЗакрытиеПанелиРасчетаДепозитов() Экспорт
-
- ИмяПользователя = ИмяПользователя();
- ОбменСБанкамиДепозиты.СохранитьЗакрытиеПанелиРасчетаДепозитов(ИмяПользователя);
-
-КонецПроцедуры
-
// Проверяет отображение панели депозитов, и удаляет сохраненные данные о закрытии панели депозитного калькулятора.
//
// Параметры:
diff --git a/src/CommonModules/ОбменСБанкамиДепозитыКлиент/Ext/Module.bsl b/src/CommonModules/ОбменСБанкамиДепозитыКлиент/Ext/Module.bsl
index ec09b3807..cc5276ab2 100644
--- a/src/CommonModules/ОбменСБанкамиДепозитыКлиент/Ext/Module.bsl
+++ b/src/CommonModules/ОбменСБанкамиДепозитыКлиент/Ext/Module.bsl
@@ -385,6 +385,11 @@
ИмяПараметра = ОбменСБанкамиДепозитыСлужебныйКлиентСервер.ИмяПараметра("Срок");
Форма[ИмяПараметра] = ВыбранноеЗначение.Срок;
+ ДлинаСуток = 24 * 60 * 60;
+ ИмяПараметра = ОбменСБанкамиДепозитыСлужебныйКлиентСервер.ИмяПараметра("ДатаЗакрытия");
+ Форма[ИмяПараметра] =
+ ДополнительныеПараметрыДепозитов.ДатаОбновленияПредложений + ВыбранноеЗначение.Срок * ДлинаСуток;
+
Если ПараметрыПредложений.ОдинБанк Тогда
НаименованиеПродукта = СтрШаблон("%1%% %2", ДополнительныеДанные.Ставка, ДополнительныеДанные.Наименование);
Иначе
@@ -450,33 +455,6 @@
КонецПроцедуры
-#КонецОбласти
-
-#Область СлужебныйПрограммныйИнтерфейс
-
-Процедура ПослеОбновленияДанныхДепозитныхПродуктов(Результат, ДополнительныеПараметры) Экспорт
-
- Форма = ДополнительныеПараметры.Форма;
- ТекстСообщения = "";
-
- Если Не ТипЗнч(Результат) = Тип("Структура") Тогда // задание было отменено
- ТекстСообщения = НСтр("ru = 'Не удалось отправить запрос в банк.'");
- ИначеЕсли Результат.Статус = "Ошибка" Тогда
- ТекстСообщения = Результат.КраткоеПредставлениеОшибки;
- КонецЕсли;
-
- ДополнительныеПараметрыДепозитов =
- ОбменСБанкамиДепозитыСлужебныйКлиентСервер.ДополнительныеПараметрыДепозитов(Форма);
- ДополнительныеПараметрыДепозитов.ВыполняетсяАктуализация = Ложь;
- Если Не ПустаяСтрока(ТекстСообщения) Тогда
- ДополнительныеПараметрыДепозитов.ДатаОбновленияПредложений = Дата(1, 1, 1);
- НастроитьОтображениеСтраницыИнформации(ДополнительныеПараметры.Форма, ТекстСообщения, Истина, Ложь, Истина);
- Иначе
- ПоказатьРасчетДепозитов(ДополнительныеПараметры.Форма, Неопределено);
- КонецЕсли;
-
-КонецПроцедуры
-
// Настраивает отображение и заполняет доп параметры депозитов на форме
//
// Параметры:
@@ -529,6 +507,33 @@
КонецПроцедуры
+#КонецОбласти
+
+#Область СлужебныйПрограммныйИнтерфейс
+
+Процедура ПослеОбновленияДанныхДепозитныхПродуктов(Результат, ДополнительныеПараметры) Экспорт
+
+ Форма = ДополнительныеПараметры.Форма;
+ ТекстСообщения = "";
+
+ Если Не ТипЗнч(Результат) = Тип("Структура") Тогда // задание было отменено
+ ТекстСообщения = НСтр("ru = 'Не удалось отправить запрос в банк.'");
+ ИначеЕсли Результат.Статус = "Ошибка" Тогда
+ ТекстСообщения = Результат.КраткоеПредставлениеОшибки;
+ КонецЕсли;
+
+ ДополнительныеПараметрыДепозитов =
+ ОбменСБанкамиДепозитыСлужебныйКлиентСервер.ДополнительныеПараметрыДепозитов(Форма);
+ ДополнительныеПараметрыДепозитов.ВыполняетсяАктуализация = Ложь;
+ Если Не ПустаяСтрока(ТекстСообщения) Тогда
+ ДополнительныеПараметрыДепозитов.ДатаОбновленияПредложений = Дата(1, 1, 1);
+ НастроитьОтображениеСтраницыИнформации(ДополнительныеПараметры.Форма, ТекстСообщения, Истина, Ложь, Истина);
+ Иначе
+ ПоказатьРасчетДепозитов(ДополнительныеПараметры.Форма, Неопределено);
+ КонецЕсли;
+
+КонецПроцедуры
+
// Выполняет поиск подходящих условий по сроку и сумме депозита, обновляет расчет дохода и данные на форме.
//
// Параметры:
diff --git a/src/CommonModules/ОбменСБанкамиДепозитыСлужебный/Ext/Module.bsl b/src/CommonModules/ОбменСБанкамиДепозитыСлужебный/Ext/Module.bsl
index e7f2f32c2..29d2994c4 100644
--- a/src/CommonModules/ОбменСБанкамиДепозитыСлужебный/Ext/Module.bsl
+++ b/src/CommonModules/ОбменСБанкамиДепозитыСлужебный/Ext/Module.bsl
@@ -1531,6 +1531,133 @@
#КонецОбласти
+#Область ОстаткиПоСчетамДиректБанка
+
+Функция ОстаткиПоСчетамВыписки(Организация) Экспорт
+
+ Запрос = Новый Запрос;
+ ПериодВыпискиВСекундах = 30 * 24 * 60 * 60;
+ Запрос.УстановитьПараметр("Организация", Организация);
+ Запрос.УстановитьПараметр("ДатаНачала", НачалоДня(ТекущаяДатаСеанса()) - ПериодВыпискиВСекундах);
+
+ Запрос.Текст =
+ "ВЫБРАТЬ РАЗРЕШЕННЫЕ
+ | ПараметрыОбменСБанками.ДатаПолученияВыписки КАК ДатаПолученияВыписки,
+ | НастройкиОбменСБанками.Ссылка КАК Ссылка,
+ | НастройкиОбменСБанками.Банк КАК Банк
+ |ПОМЕСТИТЬ ВТ_НастройкиОбмена
+ |ИЗ
+ | Справочник.НастройкиОбменСБанками.ИсходящиеДокументы КАК НастройкиОбменСБанкамиИсходящиеДокументы
+ | ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.ПараметрыОбменСБанками КАК ПараметрыОбменСБанками
+ | ПО НастройкиОбменСБанкамиИсходящиеДокументы.Ссылка = ПараметрыОбменСБанками.НастройкаОбмена
+ | И ПараметрыОбменСБанками.ДатаПолученияВыписки >= &ДатаНачала
+ | ВНУТРЕННЕЕ СОЕДИНЕНИЕ Справочник.НастройкиОбменСБанками КАК НастройкиОбменСБанками
+ | ПО НастройкиОбменСБанками.Ссылка = НастройкиОбменСБанкамиИсходящиеДокументы.Ссылка
+ | И НастройкиОбменСБанками.Организация = &Организация
+ | И НастройкиОбменСБанкамиИсходящиеДокументы.ИсходящийДокумент = ЗНАЧЕНИЕ(Перечисление.ВидыЭДОбменСБанками.ЗаявкаНаОткрытиеДепозита)
+ |
+ |ГДЕ
+ | НЕ НастройкиОбменСБанками.ПометкаУдаления
+ | И НЕ НастройкиОбменСБанками.Недействительна
+ |;
+ |
+ |////////////////////////////////////////////////////////////////////////////////
+ |ВЫБРАТЬ
+ | СообщениеОбменСБанками.Организация КАК Организация,
+ | СообщениеОбменСБанками.Банк КАК Банк,
+ | СообщениеОбменСБанками.Ссылка КАК Ссылка,
+ | СообщениеОбменСБанками.ДатаИзмененияСтатуса КАК ДатаИзмененияСтатуса,
+ | СообщениеОбменСБанками.ДатаОкончания КАК ДатаОкончания,
+ | СообщениеОбменСБанками.НомерСчета КАК НомерСчета
+ |ПОМЕСТИТЬ ВТ_ВыпискиБанка
+ |ИЗ
+ | Документ.СообщениеОбменСБанками КАК СообщениеОбменСБанками
+ | ВНУТРЕННЕЕ СОЕДИНЕНИЕ ВТ_НастройкиОбмена КАК ВТ_НастройкиОбмена
+ | ПО СообщениеОбменСБанками.Банк = ВТ_НастройкиОбмена.Банк
+ | И СообщениеОбменСБанками.Дата >= &ДатаНачала
+ | И СообщениеОбменСБанками.ВидЭД = ЗНАЧЕНИЕ(Перечисление.ВидыЭДОбменСБанками.ВыпискаБанка)
+ | И НЕ СообщениеОбменСБанками.ПометкаУдаления
+ |;
+ |
+ |////////////////////////////////////////////////////////////////////////////////
+ |ВЫБРАТЬ
+ | ВТ_ВыпискиБанка.НомерСчета КАК НомерСчета,
+ | МАКСИМУМ(ВТ_ВыпискиБанка.ДатаОкончания) КАК ДатаОкончания,
+ | ВТ_ВыпискиБанка.Банк КАК Банк
+ |ПОМЕСТИТЬ ВТ_ВыпискаДатыОкончания
+ |ИЗ
+ | ВТ_ВыпискиБанка КАК ВТ_ВыпискиБанка
+ |СГРУППИРОВАТЬ ПО
+ | ВТ_ВыпискиБанка.НомерСчета,
+ | ВТ_ВыпискиБанка.Банк
+ |;
+ |
+ |////////////////////////////////////////////////////////////////////////////////
+ |ВЫБРАТЬ
+ | ВТ_ВыпискиБанка.НомерСчета КАК НомерСчета,
+ | МАКСИМУМ(ВТ_ВыпискиБанка.ДатаИзмененияСтатуса) КАК ДатаИзмененияСтатуса,
+ | ВТ_ВыпискаДатыОкончания.ДатаОкончания КАК ДатаОкончания,
+ | ВТ_ВыпискаДатыОкончания.Банк КАК Банк
+ |ПОМЕСТИТЬ ВТ_ВыпискиСрезПоследних
+ |ИЗ
+ | ВТ_ВыпискиБанка КАК ВТ_ВыпискиБанка
+ | ВНУТРЕННЕЕ СОЕДИНЕНИЕ ВТ_ВыпискаДатыОкончания КАК ВТ_ВыпискаДатыОкончания
+ | ПО ВТ_ВыпискаДатыОкончания.НомерСчета = ВТ_ВыпискиБанка.НомерСчета
+ | И ВТ_ВыпискаДатыОкончания.ДатаОкончания = ВТ_ВыпискиБанка.ДатаОкончания
+ | И ВТ_ВыпискаДатыОкончания.Банк = ВТ_ВыпискиБанка.Банк
+ |СГРУППИРОВАТЬ ПО
+ | ВТ_ВыпискиБанка.НомерСчета,
+ | ВТ_ВыпискаДатыОкончания.ДатаОкончания,
+ | ВТ_ВыпискаДатыОкончания.Банк
+ |;
+ |
+ |////////////////////////////////////////////////////////////////////////////////
+ |ВЫБРАТЬ
+ | ВТ_ВыпискиБанка.Банк КАК Банк,
+ | ВТ_ВыпискиБанка.Ссылка КАК Ссылка,
+ | ВТ_ВыпискиБанка.ДатаИзмененияСтатуса КАК ДатаИзмененияСтатуса,
+ | ВТ_ВыпискиБанка.ДатаОкончания КАК ДатаОкончания,
+ | ВТ_ВыпискиБанка.НомерСчета КАК НомерСчета
+ |ИЗ
+ | ВТ_ВыпискиБанка КАК ВТ_ВыпискиБанка
+ | ВНУТРЕННЕЕ СОЕДИНЕНИЕ ВТ_ВыпискиСрезПоследних КАК ВТ_ВыпискиСрезПоследних
+ | ПО ВТ_ВыпискиБанка.НомерСчета = ВТ_ВыпискиСрезПоследних.НомерСчета
+ | И ВТ_ВыпискиБанка.ДатаИзмененияСтатуса = ВТ_ВыпискиСрезПоследних.ДатаИзмененияСтатуса
+ | И ВТ_ВыпискиБанка.ДатаОкончания = ВТ_ВыпискиСрезПоследних.ДатаОкончания
+ | И ВТ_ВыпискиБанка.Банк = ВТ_ВыпискиСрезПоследних.Банк
+ |
+ |УПОРЯДОЧИТЬ ПО
+ | Банк,
+ | НомерСчета";
+
+ РезультатВыборка = Запрос.Выполнить().Выбрать();
+ ОстаткиПоСчетамОрганизации = НовыйТаблицаОстатковПоСчетамОрганизацииДиректБанка();
+
+ Пока РезультатВыборка.Следующий() Цикл
+
+ ДанныеВыпискиБанка = ДанныеВыпискиБанкаИзСообщенияОбмена(РезультатВыборка.Ссылка);
+
+ Если Не ЗначениеЗаполнено(ДанныеВыпискиБанка) Тогда
+ Продолжить;
+ КонецЕсли;
+
+ СтрокаОстатка = ОстаткиПоСчетамОрганизации.Добавить();
+ СтрокаОстатка.Организация = Организация;
+ СтрокаОстатка.Банк = РезультатВыборка.Банк;
+ СтрокаОстатка.ВыпискаБанка = РезультатВыборка.Ссылка;
+ СтрокаОстатка.НомерСчета = РезультатВыборка.НомерСчета;
+ СтрокаОстатка.ДатаФормирования = ДанныеВыпискиБанка.ДатаФормирования;
+ СтрокаОстатка.ДатаОстатка = ДанныеВыпискиБанка.ДатаОстатка;
+ СтрокаОстатка.Остаток = ДанныеВыпискиБанка.Остаток;
+
+ КонецЦикла;
+
+ Возврат ОстаткиПоСчетамОрганизации;
+
+КонецФункции
+
+#КонецОбласти
+
#КонецОбласти
#Область СлужебныеПроцедурыИФункции
@@ -2703,6 +2830,101 @@
#конецОбласти
+#Область ОстаткиПоСчетамДиректБанка
+
+// Извлекает данные о банковской выписке из сообщения обмена и возвращает информацию об остатке на счете.
+//
+// Параметры:
+// СообщениеОбмена - ДокументСсылка.СообщениеОбменСБанками - Сообщение обмена, содержащее данные выписки.
+//
+// Возвращаемое значение:
+// Структура - Данные об остатке на счете см. ПараметрыДанныхОстаткаНаСчете
+//
+Функция ДанныеВыпискиБанкаИзСообщенияОбмена(СообщениеОбмена)
+
+ Результат = ПараметрыДанныхОбОстаткеНаСчете();
+
+ ТаблицаВыписок = ОбменСБанкамиСлужебный.ТаблицаВыписок();
+ ПрисоединенныйФайл = ОбменСБанкамиСлужебный.ПрисоединенныйФайл(СообщениеОбмена);
+ ДанныеЭД = РаботаСФайлами.ДанныеФайла(ПрисоединенныйФайл);
+
+ Если Не ЗначениеЗаполнено(ДанныеЭД) Тогда
+ Возврат Результат;
+ КонецЕсли;
+
+ ДвоичныеДанныеФайла = ПолучитьИзВременногоХранилища(ДанныеЭД.СсылкаНаДвоичныеДанныеФайла);
+
+ Если ДанныеЭД.Расширение = "xml" Тогда
+ ОбменСБанкамиСлужебный.ДобавитьВыпискуXML(
+ ДвоичныеДанныеФайла, ТаблицаВыписок, СообщениеОбмена, ПрисоединенныйФайл);
+ Иначе
+ ОбменСБанкамиСлужебный.ДобавитьВыпискуJSON(СообщениеОбмена, ДвоичныеДанныеФайла, ТаблицаВыписок);
+ КонецЕсли;
+
+ Если ТаблицаВыписок.Количество() = 0 Тогда
+ Возврат Результат;
+ КонецЕсли;
+
+ СтрокаВыписки = ТаблицаВыписок[0];
+
+ Результат.ДатаОстатка = СтрокаВыписки.КонецПериода;
+ Результат.ДатаФормирования = ОбщегоНазначенияКлиентСервер.СтрокаВДату(СтрокаВыписки.ДатаФормирования);
+ Результат.Остаток = СтрокаВыписки.КонечныйОстаток;
+
+ Возврат Результат;
+
+КонецФункции
+
+// Создает и возвращает структуру с набором ключей для хранения данных об остатке на банковском счете.
+//
+// Возвращаемое значение:
+// Структура - Структура с ключами:
+// * ДатаОстатка - Дата - Дата, на которую актуален остаток
+// * ДатаФормирования - Дата - Дата формирования выписки банком
+// * Остаток - Число - Сумма остатка на счете
+//
+Функция ПараметрыДанныхОбОстаткеНаСчете()
+
+ Результат = Новый Структура();
+ Результат.Вставить("ДатаОстатка", Дата(1,1,1));
+ Результат.Вставить("ДатаФормирования", Дата(1,1,1));
+ Результат.Вставить("Остаток", 0);
+
+ Возврат Результат;
+
+КонецФункции
+
+// Функция создает и возвращает таблицу значений для хранения остатков по счетам организации.
+//
+// Возвращаемое значение:
+// ТаблицаЗначений:
+// * Организация - ОпределяемыйТип.Организация - организация, владеющая счетом.
+// * Банк - ОпределяемыйТип.БанкОбменСБанками - банк, в котором открыт счет.
+// * ВыпискаБанка - ДокументСсылка.СообщениеОбменСБанками - ссылка на документ выписки.
+// * ДатаОстатка - Дата - дата остатка на счете.
+// * ДатаФормирования - Дата - дата формирования выписки.
+// * НомерСчета - Строка - номер банковского счета.
+// * Остаток - Число - сумма остатка на счете.
+//
+Функция НовыйТаблицаОстатковПоСчетамОрганизацииДиректБанка()
+
+ Результат = Новый ТаблицаЗначений;
+
+ МетаданныеРеквизитыСообщенияОбмена = Метаданные.Документы.СообщениеОбменСБанками.Реквизиты;
+ Результат.Колонки.Добавить("Организация", МетаданныеРеквизитыСообщенияОбмена.Организация.Тип);
+ Результат.Колонки.Добавить("Банк", МетаданныеРеквизитыСообщенияОбмена.Банк.Тип);
+ Результат.Колонки.Добавить("ВыпискаБанка", Новый ОписаниеТипов("ДокументСсылка.СообщениеОбменСБанками"));
+ Результат.Колонки.Добавить("ДатаОстатка", Новый ОписаниеТипов("Дата"));
+ Результат.Колонки.Добавить("ДатаФормирования", Новый ОписаниеТипов("Дата"));
+ Результат.Колонки.Добавить("НомерСчета", Новый ОписаниеТипов("Строка", Новый КвалификаторыСтроки(40)));
+ Результат.Колонки.Добавить("Остаток", Новый ОписаниеТипов("Число", Новый КвалификаторыЧисла(15, 2)));
+
+ Возврат Результат;
+
+КонецФункции
+
+#КонецОбласти
+
#Область Прочее
// Отправляет в банк информацию переданную в Данных, помещая результат отправки в Результат
diff --git a/src/CommonModules/ОбменСБанкамиСлужебный/Ext/Module.bsl b/src/CommonModules/ОбменСБанкамиСлужебный/Ext/Module.bsl
index 7e8741bce..c03b9d544 100644
--- a/src/CommonModules/ОбменСБанкамиСлужебный/Ext/Module.bsl
+++ b/src/CommonModules/ОбменСБанкамиСлужебный/Ext/Module.bsl
@@ -399,7 +399,7 @@
// Организация - ОпределяемыйТип.Организация - отбор по организации.
// НомерСчета - Строка - Номер банковского счета.
//
-// Результат:
+// Возвращаемое значение:
// ОпределяемыйТип.СчетОрганизацииОбменСБанками, Неопределено - ссылка на счет организации.
// Если Неопределено, то счет ненайден.
//
@@ -2837,7 +2837,102 @@
Возврат МассивПлановССинхронизацией;
КонецФункции
+
+// Определяет организацию по данным электронного документа. Если ИНН и КПП совпадают с переданной организацией,
+// возвращает ее. В противном случае выполняет поиск по реквизитам из файла.
+// Вызывает исключение, если в файле настроек нет информации об организации или если организация не найдена
+// в информационной базе.
+//
+// Параметры:
+// ЭД - ОбъектXDTO - электронный документ с данными для настройки обмена.
+// Организация - СправочникСсылка.Организации - организация, с которой сравниваются данные из электронного документа.
+//
+// Возвращаемое значение:
+// СправочникСсылка.Организации - найденная организация, соответствующая данным из файла
+//
+Функция ОпределитьОрганизациюНастройкиОбмена(ЭД, Организация) Экспорт
+ ЭтоНастройкиСбербанка = ЭД.Свойства().Получить("Data") = Неопределено;
+
+ ИННОрганизацииФайла = ?(ЭтоНастройкиСбербанка, ЗначениеСвойстваXDTO(ЭД, "Customer.INN"),
+ ЗначениеСвойстваXDTO(ЭД, "Recipient.inn"));
+
+ ИННОрганизацииБазы = ОбщегоНазначения.ЗначениеРеквизитаОбъекта(Организация,
+ ИмяПрикладногоРеквизита("ИННОрганизации"));
+
+ Если ЗначениеЗаполнено(ИННОрганизацииБазы) И ИННОрганизацииБазы = ИННОрганизацииФайла Тогда
+ Возврат Организация;
+ КонецЕсли;
+
+ СтруктураПоискаОрганизации = Новый Структура;
+
+ Если ЗначениеЗаполнено(ИННОрганизацииФайла) Тогда
+ СтруктураПоискаОрганизации.Вставить("ИНН", ИННОрганизацииФайла);
+ КонецЕсли;
+
+ Если ЭтоНастройкиСбербанка Тогда
+ КППОрганизации = ЗначениеСвойстваXDTO(ЭД, "Customer.KPP");
+ НаименованиеОрганизации = ЗначениеСвойстваXDTO(ЭД, "Customer.Name");
+ Иначе
+ КППОрганизации = ЗначениеСвойстваXDTO(ЭД, "Recipient.kpp");
+ НаименованиеОрганизации = ЗначениеСвойстваXDTO(ЭД, "Recipient.name");
+ КонецЕсли;
+
+ Если КППОрганизации = "000000000" Тогда // Для Сбербанка
+ КППОрганизации = "0";
+ КонецЕсли;
+
+ Если ЗначениеЗаполнено(КППОрганизации) Тогда
+ СтруктураПоискаОрганизации.Вставить("КПП", КППОрганизации);
+ КонецЕсли;
+
+ Если ЗначениеЗаполнено(НаименованиеОрганизации) Тогда
+ СтруктураПоискаОрганизации.Вставить("Наименование", НаименованиеОрганизации);
+ КонецЕсли;
+
+ Если СтруктураПоискаОрганизации.Количество() > 0 Тогда
+ СсылкаНаОрганизацию = ОбщегоНазначенияБЭД.НайтиСсылку("Организации", , СтруктураПоискаОрганизации);
+ Если Не ЗначениеЗаполнено(СсылкаНаОрганизацию) И СтруктураПоискаОрганизации.Свойство("ИНН") Тогда
+ ПоискПоИНН = Новый Структура("ИНН", СтруктураПоискаОрганизации.ИНН);
+ СсылкаНаОрганизацию = ОбщегоНазначенияБЭД.НайтиСсылку("Организации", , ПоискПоИНН);
+ КонецЕсли;
+ ИначеЕсли НЕ ЗначениеЗаполнено(Организация) Тогда
+ ТекстСообщения = НСтр("ru = 'В файле настроек нет информации об организации.
+ |Обратитесь в свой банк.'");
+ ВызватьИсключение ТекстСообщения;
+ Иначе
+ СсылкаНаОрганизацию = Организация;
+ КонецЕсли;
+
+ Если Не ЗначениеЗаполнено(СсылкаНаОрганизацию) Тогда
+ МассивЧастейСообщения = Новый Массив;
+ Если СтруктураПоискаОрганизации.Свойство("ИНН") Тогда
+ ЧастьСообщения = СтрШаблон(НСтр("ru = 'ИНН: %1'"), СтруктураПоискаОрганизации.ИНН);
+ МассивЧастейСообщения.Добавить(ЧастьСообщения);
+ КонецЕсли;
+
+ Если СтруктураПоискаОрганизации.Свойство("КПП") Тогда
+ ЧастьСообщения = СтрШаблон(НСтр("ru = 'КПП: %1'"), СтруктураПоискаОрганизации.КПП);
+ МассивЧастейСообщения.Добавить(ЧастьСообщения);
+ КонецЕсли;
+
+ Если СтруктураПоискаОрганизации.Свойство("Наименование") Тогда
+ ЧастьСообщения = СтрШаблон(НСтр("ru = 'Наименование: %1'"), СтруктураПоискаОрганизации.Наименование);
+ МассивЧастейСообщения.Добавить(ЧастьСообщения);
+ КонецЕсли;
+
+ ШаблонСообщения = НСтр("ru = 'Файл содержит настройки для неизвестной организации:
+ |%1'");
+ ТекстПоиска = СтрСоединить(МассивЧастейСообщения, Символы.ПС);
+ ТекстСообщения = СтрШаблон(ШаблонСообщения, ТекстПоиска);
+
+ ВызватьИсключение ТекстСообщения;
+ КонецЕсли;
+
+ Возврат СсылкаНаОрганизацию;
+
+КонецФункции
+
#КонецОбласти
#Область СтроковыеКонстанты
@@ -10114,17 +10209,19 @@
ИначеЕсли ОбъектМетаданных = Метаданные.Справочники.НастройкиОбменСБанками Тогда
- Если Артефакты.Количество() <> 1 Тогда
- Возврат;
- КонецЕсли;
-
- Артефакт = Артефакты[0].Data.Получить();
- Если Артефакт.Свойство("ПарольАвтовыписка") Тогда
- ПарольАвтовыписка = Артефакт.ПарольАвтовыписка;
- Если ЗначениеЗаполнено(ПарольАвтовыписка) И ТипЗнч(ПарольАвтовыписка) = Тип("Строка") Тогда
- ОбщегоНазначения.ЗаписатьДанныеВБезопасноеХранилище(Объект.Ссылка, ПарольАвтовыписка);
+ Для Каждого Артефакт Из Артефакты Цикл
+ Если ТипЗнч(Артефакт.Data) = Тип("ХранилищеЗначения") Тогда
+ ЗначениеАртефакта = Артефакт.Data.Получить();
+ Если ТипЗнч(ЗначениеАртефакта) = Тип("Структура")
+ И ЗначениеАртефакта.Свойство("ПарольАвтовыписка") Тогда
+
+ ПарольАвтовыписка = ЗначениеАртефакта.ПарольАвтовыписка;
+ Если ЗначениеЗаполнено(ПарольАвтовыписка) И ТипЗнч(ПарольАвтовыписка) = Тип("Строка") Тогда
+ ОбщегоНазначения.ЗаписатьДанныеВБезопасноеХранилище(Объект.Ссылка, ПарольАвтовыписка);
+ КонецЕсли;
+ КонецЕсли;
КонецЕсли;
- КонецЕсли;
+ КонецЦикла;
КонецЕсли;
КонецПроцедуры
@@ -14757,7 +14854,7 @@
|Внешний идентификатор: %2'");
ТекстСообщения = СтрШаблон(ТекстСообщения, Выборка.Ссылка, ПараметрыСообщения.ВнешнийИдентификатор);
ВидОперации = НСтр("ru = 'Сохранение сообщения обмена в информационной базе.'");
- ОбработатьОшибку(ВидОперации, ТекстСообщения, ТекстСообщения, Выборка.Ссылка);
+ ОбработатьОшибку(ВидОперации, ТекстСообщения, "", Выборка.Ссылка);
Возврат Истина;
КонецЕсли;
КонецЕсли;
@@ -15827,22 +15924,19 @@
КонецЕсли;
ИначеЕсли StatusDocNotice.Result.Error.Code = "2207" Тогда
ДатаИзмененияСтатуса = StatusDocNotice.creationDate;
- ТекстОшибки = ТекстСообщенияОбОшибкеОтветаБанка(StatusDocNotice.Result.Error);
РеквизитыДляИзменения = Новый Структура;
РеквизитыДляИзменения.Вставить("ДатаИзмененияВнешнегоСтатуса", ДатаИзмененияСтатуса);
РеквизитыДляИзменения.Вставить("Статус", Перечисления.СтатусыОбменСБанками.ОтклоненБанком);
- РеквизитыДляИзменения.Вставить(
- "ПричинаОтклонения", НСтр("ru = 'Документ отсутствует в информационной базе банка.'"));
+ ТекстОшибки = ТекстСообщенияОбОшибкеОтветаБанка(StatusDocNotice.Result.Error);
+ РеквизитыДляИзменения.Вставить("ПричинаОтклонения", ТекстОшибки);
+
РеквизитыСообщения = ОбщегоНазначения.ЗначенияРеквизитовОбъекта(
СообщениеЭДО, "СообщениеРодитель, ВидЭД");
- Если РеквизитыСообщения.ВидЭД = Перечисления.ВидыЭДОбменСБанками.ПлатежноеПоручение Тогда
- ОбменСБанкамиСлужебныйВызовСервера.ИзменитьСообщениеОбмена(СообщениеЭДО, РеквизитыДляИзменения);
- Иначе // запрос состояния
+ Если ЗначениеЗаполнено(РеквизитыСообщения.СообщениеРодитель) Тогда
ОбменСБанкамиСлужебныйВызовСервера.ИзменитьСообщениеОбмена(
РеквизитыСообщения.СообщениеРодитель, РеквизитыДляИзменения);
- РеквизитыДляИзменения.Вставить("ПричинаОтклонения", ТекстОшибки);
- ОбменСБанкамиСлужебныйВызовСервера.ИзменитьСообщениеОбмена(СообщениеЭДО, РеквизитыДляИзменения);
КонецЕсли;
+ ОбменСБанкамиСлужебныйВызовСервера.ИзменитьСообщениеОбмена(СообщениеЭДО, РеквизитыДляИзменения);
Иначе
ДатаИзмененияСтатуса = StatusDocNotice.creationDate;
ТекстОшибки = ТекстСообщенияОбОшибкеОтветаБанка(StatusDocNotice.Result.Error);
@@ -16255,62 +16349,6 @@
КонецПроцедуры
-Функция ОпределитьОрганизациюНастройкиОбмена(ЭД, Организация)
-
- СтруктураПоискаОрганизации = Новый Структура;
- ИННОрганизации = ЗначениеСвойстваXDTO(ЭД, "Recipient.inn");
- Если ЗначениеЗаполнено(ИННОрганизации) Тогда
- СтруктураПоискаОрганизации.Вставить("ИНН", ИННОрганизации);
- КонецЕсли;
-
- КППОрганизации = ЗначениеСвойстваXDTO(ЭД, "Recipient.kpp");
- Если ЗначениеЗаполнено(КППОрганизации) Тогда
- СтруктураПоискаОрганизации.Вставить("КПП", КППОрганизации);
- КонецЕсли;
-
- НаименованиеОрганизации = ЗначениеСвойстваXDTO(ЭД, "Recipient.orgName");
- Если ЗначениеЗаполнено(НаименованиеОрганизации) Тогда
- СтруктураПоискаОрганизации.Вставить("Наименование", НаименованиеОрганизации);
- КонецЕсли;
-
- Если СтруктураПоискаОрганизации.Количество() > 0 Тогда
- СсылкаНаОрганизацию = ОбщегоНазначенияБЭД.НайтиСсылку("Организации", , СтруктураПоискаОрганизации);
- ИначеЕсли НЕ ЗначениеЗаполнено(Организация) Тогда
- ТекстСообщения = НСтр("ru = 'В файле настроек нет информации об организации.
- |Обратитесь в свой банк.'");
- ВызватьИсключение ТекстСообщения;
- Иначе
- СсылкаНаОрганизацию = Организация;
- КонецЕсли;
-
- Если Не ЗначениеЗаполнено(СсылкаНаОрганизацию) Тогда
- ТекстСообщения = НСтр("ru = 'Не найдена организация по реквизитам: %1%2%3'");
- Если СтруктураПоискаОрганизации.Свойство("ИНН") Тогда
- ТекстИНН = Символы.ПС + НСтр("ru = 'ИНН: %1'");
- ТекстИНН = СтрШаблон(ТекстИНН, СтруктураПоискаОрганизации.ИНН);
- Иначе
- ТекстИНН = "";
- КонецЕсли;
- Если СтруктураПоискаОрганизации.Свойство("КПП") Тогда
- ТекстКПП = Символы.ПС + НСтр("ru = 'КПП: %1'");
- ТекстКПП = СтрШаблон(ТекстКПП, СтруктураПоискаОрганизации.КПП);
- Иначе
- ТекстКПП = "";
- КонецЕсли;
- Если СтруктураПоискаОрганизации.Свойство("Наименование") Тогда
- ТекстНаименование = Символы.ПС + НСтр("ru = 'Наименование: %1'");
- ТекстНаименование = СтрШаблон(ТекстНаименование, СтруктураПоискаОрганизации.Наименование);
- Иначе
- ТекстНаименование = "";
- КонецЕсли;
- ТекстСообщения = СтрШаблон(ТекстСообщения, ТекстИНН, ТекстКПП, ТекстНаименование);
- ВызватьИсключение ТекстСообщения;
- КонецЕсли;
-
- Возврат СсылкаНаОрганизацию;
-
-КонецФункции
-
Функция ОпределитьБанкНастройкиОбмена(ЭД)
СтруктураПоискаБанка = Новый Структура;
@@ -16632,6 +16670,8 @@
Если ВидыДокументовСНесколькимиПодписями.Найти(ТекущийВидЭД) = Неопределено
ИЛИ Объект.ПрограммаБанка = Перечисления.ПрограммыБанка.ОбменЧерезВК Тогда
НовЗапись.МаршрутПодписания = Справочники.МаршрутыПодписания.ОднойДоступнойПодписью;
+ ИначеЕсли Объект.СертификатыПодписейОрганизации.Количество() = 1 Тогда
+ НовЗапись.МаршрутПодписания = Справочники.МаршрутыПодписания.ОднойДоступнойПодписью;
ИначеЕсли Документ.Signed.RuleSignatures = "(0)" Тогда
ДеревоТребований = МаршрутыПодписанияБЭД.ПустоеДеревоТребованийКПодписанию();
КорневаяСтрока = ДеревоТребований.Строки.Добавить();
@@ -17758,12 +17798,16 @@
// НастройкаОбмена - СправочникСсылка.НастройкиОбменСБанками - ссылка на настройку обмена с банками.
//
// Возвращаемое значение:
-// Структура с данными по авторизации для НастройкаОбмена, содержит поля:
-// * ДанныеАвторизации - данные для авторизации, которые необходимо получить для указанной НастройкаОбмена с отбором
-// по текущему пользователю.
+// Структура - с данными по авторизации для НастройкаОбмена, содержит поля:
+// * ДанныеАвторизации - Структура - данные для авторизации, которые необходимо получить для указанной
+// НастройкаОбмена с отбором по текущему пользователю:
+// ** Логин - Строка - логин.
+// ** Пароль - Строка - пароль.
// * ПарольАвтовыписка - Строка - пароль для получения автовыписки для указанной НастройкаОбмена.
-// * ДанныеАвторизацииSberAPI - данные для авторизации, которые необходимо получить для указанной НастройкаОбмена
-// по технологии SberAPI с отбором по текущему пользователю.
+// * ДанныеАвторизацииSberAPI - Структура - данные для авторизации, которые необходимо получить для указанной
+// НастройкаОбмена по технологии SberAPI с отбором по текущему пользователю:
+// ** КлиентскийСекрет - Строка - клиентский секрет настройки SberAPI.
+// ** СертификатПодключенияПароль - Строка - пароль от TLS сертификата.
//
Функция ДанныеАвторизацииНастройкаОбмена(НастройкаОбмена) Экспорт
diff --git a/src/CommonModules/ОбменСБанкамиСлужебныйВызовСервера/Ext/Module.bsl b/src/CommonModules/ОбменСБанкамиСлужебныйВызовСервера/Ext/Module.bsl
index 3e5677472..69d272e57 100644
--- a/src/CommonModules/ОбменСБанкамиСлужебныйВызовСервера/Ext/Module.bsl
+++ b/src/CommonModules/ОбменСБанкамиСлужебныйВызовСервера/Ext/Module.bsl
@@ -5934,36 +5934,62 @@
// Определяет необходимость стандартной криптографии для обработки документов.
//
// Параметры:
-// МассивОбъектов - Массив - содержит ссылки на документы информационной базы.
+// МассивОбъектов - Массив из ОпределяемыйТип.ВладелецОбменСБанками - содержит ссылки на документы информационной базы.
//
// Возвращаемое значение:
-// Булево - если требуется криптография, то возвращается Истина.
+// Булево - Истина, если хотя бы для одного из документов требуется электронная подпись
+// по настройкам обмена с банками.
//
Функция ТребуетсяКриптографияДляОбработкиДокументов(Знач МассивОбъектов)
УстановитьПривилегированныйРежим(Истина);
- Запрос = Новый Запрос;
- Запрос.Текст = ТекстЗапросаНастроекКриптографии();
+ ИмяПрикладногоРеквизитаБИК = ОбменСБанкамиСлужебный.ИмяПрикладногоРеквизита("Банк.БИК");
+ ТекстЗапросаНастроекКриптографии = СтрЗаменить(ТекстЗапросаНастроекКриптографии(),
+ "ТЧ_НастройкиОбмена.Ссылка.Банк.Код",
+ "ТЧ_НастройкиОбмена.Ссылка.Банк." + ИмяПрикладногоРеквизитаБИК);
+
+ ТаблицаКэшаПараметровЭД = Новый ТаблицаЗначений;
+ ТаблицаКэшаПараметровЭД.Колонки.Добавить("Организация");
+ ТаблицаКэшаПараметровЭД.Колонки.Добавить("Банк");
+ ТаблицаКэшаПараметровЭД.Колонки.Добавить("ВидЭД");
Для Каждого СсылкаНаДокумент Из МассивОбъектов Цикл
ПараметрыЭД = ОбменСБанкамиСлужебный.ЗаполнитьПараметрыЭДПоИсточнику(СсылкаНаДокумент);
- ИмяПрикладногоРеквизитаБИК = ОбменСБанкамиСлужебный.ИмяПрикладногоРеквизита("Банк.БИК");
+
+ Если Не ЗначениеЗаполнено(ПараметрыЭД.Банк) Тогда
+ Продолжить;
+ КонецЕсли;
+
+ ОтборКэша = Новый Структура("Организация, Банк, ВидЭД",
+ ПараметрыЭД.Организация, ПараметрыЭД.Банк, ПараметрыЭД.ВидЭД);
+
+ НайденныеСтрокиКэша = ТаблицаКэшаПараметровЭД.НайтиСтроки(ОтборКэша);
+
+ Если НайденныеСтрокиКэша.Количество() > 0 Тогда
+ Продолжить;
+ КонецЕсли;
+
БИК = ОбменСБанкамиСлужебный.БИК(ПараметрыЭД.Банк);
- Запрос.Текст = СтрЗаменить(
- Запрос.Текст,
- "ТЧ_НастройкиОбмена.Ссылка.Банк.Код",
- "ТЧ_НастройкиОбмена.Ссылка.Банк." + ИмяПрикладногоРеквизитаБИК);
- Запрос.УстановитьПараметр("ВидЭД", ПараметрыЭД.ВидЭД);
+
+ Запрос = Новый Запрос;
+ Запрос.Текст = ТекстЗапросаНастроекКриптографии;
Запрос.УстановитьПараметр("Организация", ПараметрыЭД.Организация);
Запрос.УстановитьПараметр("Банк", ПараметрыЭД.Банк);
Запрос.УстановитьПараметр("БИК", БИК);
+ Запрос.УстановитьПараметр("ВидЭД", ПараметрыЭД.ВидЭД);
+
Результат = Запрос.Выполнить();
Если Не Результат.Пустой() Тогда
Возврат Истина;
КонецЕсли;
+ НоваяСтрокаКэша = ТаблицаКэшаПараметровЭД.Добавить();
+ НоваяСтрокаКэша.Организация = ПараметрыЭД.Организация;
+ НоваяСтрокаКэша.Банк = ПараметрыЭД.Банк;
+ НоваяСтрокаКэша.ВидЭД = ПараметрыЭД.ВидЭД;
+
КонецЦикла;
Возврат Ложь;
diff --git a/src/CommonModules/ОбменСБанкамиСлужебныйКлиент/Ext/Module.bsl b/src/CommonModules/ОбменСБанкамиСлужебныйКлиент/Ext/Module.bsl
index 2c33d3fa7..c53595491 100644
--- a/src/CommonModules/ОбменСБанкамиСлужебныйКлиент/Ext/Module.bsl
+++ b/src/CommonModules/ОбменСБанкамиСлужебныйКлиент/Ext/Module.bsl
@@ -8886,6 +8886,7 @@
ДополнительныеПараметры.Вставить("ПараметрыОткрытия", ПараметрыОткрытия);
ДополнительныеПараметры.Вставить("ВладелецФормы", ВладелецФормы);
ДополнительныеПараметры.Вставить("ТолькоЧтение", ТолькоЧтение);
+
Если ПараметрыЭД.ИспользуетсяКриптография Тогда
Описание = Новый ОписаниеОповещения(
"ОткрытьФормуЭлектронногоДокументаПослеПолученияОтпечатков", ЭтотОбъект, ДополнительныеПараметры);
@@ -8946,6 +8947,11 @@
ПараметрыОткрытия = ДополнительныеПараметры.ПараметрыОткрытия;
ВладелецФормы = ДополнительныеПараметры.ВладелецФормы;
ТолькоЧтение = ДополнительныеПараметры.ТолькоЧтение;
+ ДополнительныеПараметрыФормы = Неопределено;
+
+ Если ТипЗнч(ПараметрыОткрытия) = Тип("Структура") И ПараметрыОткрытия.Свойство("ПараметрыФормы") Тогда
+ ДополнительныеПараметрыФормы = ПараметрыОткрытия.ПараметрыФормы;
+ КонецЕсли;
МассивОтпечатков = Новый Массив;
Если ТипЗнч(Отпечатки) = Тип("Соответствие") Тогда
@@ -8958,6 +8964,13 @@
ПараметрыФормы.Вставить("Ключ", СообщениеОбмена);
ПараметрыФормы.Вставить("ТолькоЧтение", ТолькоЧтение);
ПараметрыФормы.Вставить("МассивОтпечатков", МассивОтпечатков);
+
+ Если Не ДополнительныеПараметрыФормы = Неопределено Тогда
+
+ ОбщегоНазначенияКлиентСервер.ДополнитьСтруктуру(ПараметрыФормы, ДополнительныеПараметрыФормы, Истина);
+
+ КонецЕсли;
+
Если ВладелецФормы = Неопределено Тогда
ОткрытьФорму("Документ.СообщениеОбменСБанками.Форма.ЭлектронныйДокумент", ПараметрыФормы);
Иначе
diff --git a/src/CommonModules/ОбменСБанкамиСлужебныйКлиентСервер/Ext/Module.bsl b/src/CommonModules/ОбменСБанкамиСлужебныйКлиентСервер/Ext/Module.bsl
index 7ab3d1d8e..39042a689 100644
--- a/src/CommonModules/ОбменСБанкамиСлужебныйКлиентСервер/Ext/Module.bsl
+++ b/src/CommonModules/ОбменСБанкамиСлужебныйКлиентСервер/Ext/Module.bsl
@@ -326,11 +326,19 @@
КонецФункции
// Возвращает шаблон структуры возврата Http запроса
+//
+// Возвращаемое значение:
+// Структура:
+// * Статус - Булево - Истина, если запрос выполнен успешно, иначе Ложь.
+// * Тело - Строка, Неопределено - Тело ответа сервера.
+// * СообщениеОбОшибке - Строка - Сообщение об ошибке.
+// * КодСостояния - Число - Код состояния ответа сервера.
+// * ТребуетсяПовторнаяАутентификация - Булево - Истина, если требуется повторная аутентификация.
//
Функция СтруктураВозвратаHttpЗапроса() Экспорт
СтруктураВозврата = Новый Структура();
- СтруктураВозврата.Вставить("Статус", "");
+ СтруктураВозврата.Вставить("Статус", Ложь);
СтруктураВозврата.Вставить("Тело", Неопределено);
СтруктураВозврата.Вставить("СообщениеОбОшибке", "");
СтруктураВозврата.Вставить("КодСостояния", 0);
@@ -340,6 +348,15 @@
КонецФункции
+// Возвращает текст предупреждения о недоступности работы мобильного клиента, в зависимости от программы банка и банка.
+//
+// Параметры:
+// ПрограммаБанка - ПеречислениеСсылка.ПрограммыБанка - Программа банка.
+// Банк - ОпределяемыйТип.БанкОбменСБанками - ссылка на банк.
+//
+// Возвращаемое значение:
+// Строка - Текст предупреждения о недоступности работы мобильного клиента.
+//
Функция ТекстПредупрежденияМобильныйКлиентНедоступнаРабота(ПрограммаБанка, Банк = Неопределено) Экспорт
Шаблон = НСтр("ru = 'Работа 1С:ДиректБанк для %1 возможна только в приложении для компьютера.'");
diff --git a/src/CommonModules/ОбменСГИСЭПД/Ext/Module.bsl b/src/CommonModules/ОбменСГИСЭПД/Ext/Module.bsl
index 67fc486f6..237bcba87 100644
--- a/src/CommonModules/ОбменСГИСЭПД/Ext/Module.bsl
+++ b/src/CommonModules/ОбменСГИСЭПД/Ext/Module.bsl
@@ -493,6 +493,54 @@
КонецПроцедуры
+// Добавить данные в состояния элементов регламента.
+//
+// Параметры:
+// ПараметрыДокумента - См. РегламентыЭДО.НовыеПараметрыДокументаДляОпределенияСостояния
+// СостоянияЭлементовРегламента - См. РегламентыЭДО.НовыеСостоянияЭлементовРегламента
+Процедура ДобавитьДанныеВСостоянияЭлементовРегламента(ПараметрыДокумента, СостоянияЭлементовРегламента) Экспорт
+
+ Если ТипЗнч(СостоянияЭлементовРегламента) <> Тип("ТаблицаЗначений")
+ Или СостоянияЭлементовРегламента.Колонки.Найти("Ссылка") <> Неопределено Тогда
+ Возврат;
+ КонецЕсли;
+
+ СостоянияЭлементовРегламента.Колонки.Добавить("Ссылка",
+ Новый ОписаниеТипов("ДокументСсылка.СообщениеЭДО"));
+
+ Запрос = Новый Запрос;
+ Запрос.Текст =
+ "ВЫБРАТЬ
+ | СообщениеЭДО.Ссылка КАК Ссылка,
+ | СообщениеЭДО.Дата КАК Дата,
+ | СообщениеЭДО.ТипЭлементаРегламента КАК ТипЭлементаРегламента,
+ | СообщениеЭДО.Направление КАК Направление
+ |ИЗ
+ | Документ.СообщениеЭДО КАК СообщениеЭДО
+ |ГДЕ
+ | СообщениеЭДО.ЭлектронныйДокумент = &ЭлектронныйДокумент";
+
+ Запрос.УстановитьПараметр("ЭлектронныйДокумент", ПараметрыДокумента.Ссылка);
+ РезультатЗапроса = Запрос.Выполнить();
+ Выборка = РезультатЗапроса.Выбрать();
+
+ Пока Выборка.Следующий() Цикл
+
+ Отбор = Новый Структура();
+ Отбор.Вставить("ТипЭлементаРегламента", Выборка.ТипЭлементаРегламента);
+ Отбор.Вставить("Направление", Выборка.Направление);
+ Отбор.Вставить("Дата", Выборка.Дата);
+
+ Строки = СостоянияЭлементовРегламента.НайтиСтроки(Отбор);
+
+ Для Каждого Строка Из Строки Цикл
+ Строка.Ссылка = Выборка.Ссылка;
+ КонецЦикла;
+
+ КонецЦикла;
+
+КонецПроцедуры
+
// Данные реквизитов ЭПД.
//
// Параметры:
@@ -1273,7 +1321,7 @@
КлючКонтрагента.ИНН = Карточка.ИННКонтрагента;
КлючКонтрагента.КПП = КПП;
КлючКонтрагента.ДатаСведений = Карточка.Дата;
- СтруктураУчастникаЭДО = ПриглашенияЭДОПовтИсп.УчастникЭДОПоКлючуИПриглашению(ПараметрыПриглашения, КлючКонтрагента);
+ СтруктураУчастникаЭДО = ПриглашенияЭДО.УчастникЭДОПоКлючуИПриглашению(ПараметрыПриглашения, КлючКонтрагента);
Контрагент = СтруктураУчастникаЭДО.Ссылка;
// Если контрагент не найден по приглашению
@@ -4197,6 +4245,7 @@
ДеревоУзлов.Колонки.Добавить("УзелЧистый", Новый ОписаниеТипов("Строка", , Новый КвалификаторыСтроки(250)));
ДеревоУзлов.Колонки.Добавить("ТребуетсяЗаполнить", Новый ОписаниеТипов("Булево"));
ДеревоУзлов.Колонки.Добавить("Обязательный", Новый ОписаниеТипов("Булево"));
+ ДеревоУзлов.Колонки.Добавить("УсловноОбязательный", Новый ОписаниеТипов("Булево"));
ДеревоУзлов.Колонки.Добавить("Заполнено", Новый ОписаниеТипов("Булево"));
ДеревоУзлов.Колонки.Добавить("ЭтоТаблица", Новый ОписаниеТипов("Булево"));
ДеревоУзлов.Колонки.Добавить("Описание", Новый ОписаниеТипов("Строка", , Новый КвалификаторыСтроки(800)));
@@ -8114,10 +8163,10 @@
КонецЕсли;
КонецЦикла;
- СсылкаВидТары = Неопределено;
+ ВидТары = Неопределено;
ИтераторЦикла = 1;
- Пока ПоследняяВерсия.Свойство("ТитулГрузоотправителяГрузы__" + ИтераторЦикла + "__СсылкаВидТары", СсылкаВидТары) Цикл
- СтруктураРеквизитовТитулаЗаполнение.Вставить("ТитулГрузоотправителяГрузы__" + ИтераторЦикла + "__СпособУпаковки", СсылкаВидТары.Наименование);
+ Пока ПоследняяВерсия.Свойство("ТитулГрузоотправителяГрузы__" + ИтераторЦикла + "__ВидТары", ВидТары) Цикл
+ СтруктураРеквизитовТитулаЗаполнение.Вставить("ТитулГрузоотправителяГрузы__" + ИтераторЦикла + "__СпособУпаковки", ВидТары);
Если СтруктураРеквизитовТитулаЗаполнение.Свойство("ТитулГрузоотправителяГрузы__" + ИтераторЦикла + "__ИдентификаторСтроки") = Ложь Тогда
СтруктураРеквизитовТитулаЗаполнение.Вставить("ТитулГрузоотправителяГрузы__" + ИтераторЦикла + "__ИдентификаторСтроки",
Строка(Новый УникальныйИдентификатор()));
@@ -8139,7 +8188,7 @@
СтруктураРеквизитовТитулаЗаполнение.Вставить("ТитулГрузоотправителяЛицоИмеющееПолномочияПереадресовки", "Грузоотправитель");
СтруктураРеквизитовТитулаЗаполнение.Вставить("ТитулГрузоотправителяСпособПередачиУказанияНаПереадресовку", "Электронное уведомление перевозчика о переадресовке");
Телефон = Неопределено;
- СтруктураРеквизитовТитулаЗаполнение.Свойство("ТитулГрузоотправителяГрузоотправительНомераТелефонов__0__Телефон", Телефон);
+ СтруктураРеквизитовТитулаЗаполнение.Свойство("ТитулГрузоотправителяГрузоотправительНомераТелефонов__1__Телефон", Телефон);
Если Телефон <> Неопределено Тогда
СтруктураРеквизитовТитулаЗаполнение.Вставить("ТитулГрузоотправителяОтветственныйЗаПереадресовкуНомераТелефонов__1__Телефон", Телефон);
КонецЕсли;
@@ -13202,7 +13251,8 @@
Иначе
СтрокаУзла.Обязательный = ПроверитьУсловие(СтруктураУзла.ПоляУсловий,
СтруктураУзла.Условие,
- ДанныеФормирования);
+ ДанныеФормирования);
+ СтрокаУзла.УсловноОбязательный = Истина;
КонецЕсли;
ОбязательностьУстановлена = Истина;
КонецЕсли;
@@ -13241,6 +13291,9 @@
Если ТипЗнч(Родитель) <> Тип("ДеревоЗначений") Тогда
Родитель.Заполнено = Родитель.Заполнено Или ПодчиненныйУзелЗаполнен;
Родитель.ТребуетсяЗаполнить = Родитель.ТребуетсяЗаполнить Или ПодчиненныйУзел.ТребуетсяЗаполнить;
+ Если СтрокаУзла.УсловноОбязательный И СтрокаУзла.Обязательный Тогда
+ Родитель.Обязательный = Истина;
+ КонецЕсли;
КонецЕсли;
КонецЕсли;
@@ -13952,7 +14005,7 @@
МассивУзлов.Добавить("//Файл/Документ/СодИнфПрв/СвЛицПрв/РеквДовер");
ИначеЕсли ИмяФормы = "ТитулПеревозчикаРазмерПлатыИПорядокРасчетов" Тогда
МассивУзлов.Добавить("//Файл/Документ/СодИнфПрв/РазмПлатРасчет");
- ИначеЕсли ИмяФормы = "ТитулПеревозчикаОснованиеВладенияТСРеквизитыСторон" Тогда
+ ИначеЕсли ИмяФормы = "ОснованиеВладенияТСРеквизитыСторон" Тогда
МассивУзлов.Добавить("//Файл/Документ/СодИнфПрв/СвТС/ТС/ОснАрЛиз/ИдРекСост");
ИначеЕсли ИмяФормы = "ОснованиеВладенияПрицепомРеквизитыСторон" Тогда
МассивУзлов.Добавить("//Файл/Документ/СодИнфПрв/СвТС/Прицеп/ОснАрЛиз/ИдРекСост");
@@ -14469,6 +14522,8 @@
Префикс = "ТитулФрахтовщика";
ИначеЕсли ИмяФормы = "Документ.ЭлектроннаяТранспортнаяНакладная.Форма.Прицеп" Тогда
Префикс = "ТитулГрузоотправителя";
+ ИначеЕсли ИмяФормы = "Документ.ЭлектронныйЗаказЗаявка.Форма.Прицеп" Тогда
+ Префикс = "ТитулПеревозчика";
Иначе
Возврат;
КонецЕсли;
@@ -15338,6 +15393,8 @@
РезультатТекущейВетки = НовыйРезультатОбработкиЗаполнения();
ЕстьОбязательныеНеЗаполненныеЭлементы = Ложь;
+ ЕстьПроверкаОбязательностиПодчиненныхЭлементов = Ложь;
+
Для Каждого СтрокаДерева Из ВеткаДерева.Строки Цикл
Если СтрокаДерева.ЭтоОбязательнаяСтруктура Тогда
@@ -15350,6 +15407,9 @@
СтруктураРеквизитов,
ТекущаяТабличнаяЧасть,
Индекс);
+
+ ЕстьПроверкаОбязательностиПодчиненныхЭлементов = Истина;
+
Иначе
ПодчиненныеЭлементыОбязательны = Истина;
КонецЕсли;
@@ -15438,6 +15498,12 @@
КонецЦикла;
Если Не РезультатТекущейВетки.ЕстьЗаполненныеЭлементы
+ И ЕстьПроверкаОбязательностиПодчиненныхЭлементов
+ И ЕстьОбязательныеНеЗаполненныеЭлементы Тогда
+
+ РезультатТекущейВетки.ОбязательныеЭлементыЗаполнены = Ложь;
+
+ ИначеЕсли Не РезультатТекущейВетки.ЕстьЗаполненныеЭлементы
И Не ОбязательныеЭлементыДолжныБытьЗаполнены Тогда
Если ВеткаДерева.ЭтоРеквизит
diff --git a/src/CommonModules/ОбменСГИСЭПДКлиент/Ext/Module.bsl b/src/CommonModules/ОбменСГИСЭПДКлиент/Ext/Module.bsl
index 0def4542c..0607aa648 100644
--- a/src/CommonModules/ОбменСГИСЭПДКлиент/Ext/Module.bsl
+++ b/src/CommonModules/ОбменСГИСЭПДКлиент/Ext/Module.bsl
@@ -103,7 +103,7 @@
Процедура ПоказатьХранимыеДанныеЭПД(ГруппаДанных, Отбор, ФормаВладелец, ОписаниеОповещения, Отказ, ИдентификаторСтрокиРодителя = Неопределено) Экспорт
- ИмяОбъекта = ИмяОбъектаФормы(ФормаВладелец.ИмяФормы);
+ ИмяОбъекта = ПолучитьИмяОбъектаФормы(ФормаВладелец);
ОписаниеГруппыДанных = ОбменСГИСЭПДКлиентСервер.ОписаниеГруппыДанных(ГруппаДанных, ИмяОбъекта);
diff --git a/src/CommonModules/ОбменСГИСЭПДКлиентСервер/Ext/Module.bsl b/src/CommonModules/ОбменСГИСЭПДКлиентСервер/Ext/Module.bsl
index 3324d019c..6f9efe950 100644
--- a/src/CommonModules/ОбменСГИСЭПДКлиентСервер/Ext/Module.bsl
+++ b/src/CommonModules/ОбменСГИСЭПДКлиентСервер/Ext/Module.bsl
@@ -87,6 +87,7 @@
СоответствиеТитулов.Вставить(ПредопределенноеЗначение("Перечисление.ТипыЭлементовРегламентаЭДО.ЭПЛ_Титул4"), НСтр("ru='Показания (выезд)'"));
СоответствиеТитулов.Вставить(ПредопределенноеЗначение("Перечисление.ТипыЭлементовРегламентаЭДО.ЭПЛ_Титул5"), НСтр("ru='Показания (заезд)'"));
СоответствиеТитулов.Вставить(ПредопределенноеЗначение("Перечисление.ТипыЭлементовРегламентаЭДО.ЭПЛ_Титул6"), НСтр("ru='Медосмотр (после рейса)'"));
+ СоответствиеТитулов.Вставить(ПредопределенноеЗначение("Перечисление.ТипыЭлементовРегламентаЭДО.ЭПЛ_ОткМ"), НСтр("ru='Отклонено при медосмотре'"));
КонецЕсли;
Если ТипЗнч(Документ) = Тип("ДокументСсылка.ЭлектронныйДоговорФрахтования")
@@ -4911,29 +4912,45 @@
ПредставлениеАдреса = "";
Если КонтейнерРеквизитов = Неопределено Тогда
МассивОшибокАдреса.Добавить("Не заполнен адрес");
- Иначе
- КодРегиона = Неопределено;
+ Иначе
+
+ КодСтраны = Неопределено;
+ АдресВСвободнойФорме = Неопределено;
Если ТипЗнч(КонтейнерРеквизитов) = Тип("Структура") Тогда
- КонтейнерРеквизитов.Свойство(Префикс + "КодРегиона", КодРегиона);
- КонтейнерРеквизитов.Свойство(ИмяЭлемента, ПредставлениеАдреса);
+ КонтейнерРеквизитов.Свойство(Префикс + "КодСтраны", КодСтраны);
+ КонтейнерРеквизитов.Свойство(Префикс + "Представление", АдресВСвободнойФорме);
Иначе
- КодРегиона = КонтейнерРеквизитов[Префикс + "КодРегиона"];
- ПредставлениеАдреса = КонтейнерРеквизитов[ИмяЭлемента];
- КонецЕсли;
-
- Если ЗначениеЗаполнено(КодРегиона) = Ложь Тогда
- МассивОшибокАдреса.Добавить("Не заполнен регион");
+ КодСтраны = КонтейнерРеквизитов[Префикс + "КодСтраны"];
+ АдресВСвободнойФорме = КонтейнерРеквизитов[Префикс + "Представление"];
КонецЕсли;
- Индекс = Неопределено;
- Если ТипЗнч(КонтейнерРеквизитов) = Тип("Структура") Тогда
- КонтейнерРеквизитов.Свойство(Префикс + "Индекс", Индекс);
- Иначе
- Индекс = КонтейнерРеквизитов[Префикс + "Индекс"];
- КонецЕсли;
- Если ЗначениеЗаполнено(Индекс) = Ложь Тогда
- МассивОшибокАдреса.Добавить("Не заполнен индекс");
+ Если Не ЗначениеЗаполнено(КодСтраны) И Не ЗначениеЗаполнено(АдресВСвободнойФорме) Тогда
+
+ КодРегиона = Неопределено;
+ Если ТипЗнч(КонтейнерРеквизитов) = Тип("Структура") Тогда
+ КонтейнерРеквизитов.Свойство(Префикс + "КодРегиона", КодРегиона);
+ КонтейнерРеквизитов.Свойство(ИмяЭлемента, ПредставлениеАдреса);
+ Иначе
+ КодРегиона = КонтейнерРеквизитов[Префикс + "КодРегиона"];
+ ПредставлениеАдреса = КонтейнерРеквизитов[ИмяЭлемента];
+ КонецЕсли;
+
+ Если ЗначениеЗаполнено(КодРегиона) = Ложь Тогда
+ МассивОшибокАдреса.Добавить("Не заполнен регион");
+ КонецЕсли;
+
+ Индекс = Неопределено;
+ Если ТипЗнч(КонтейнерРеквизитов) = Тип("Структура") Тогда
+ КонтейнерРеквизитов.Свойство(Префикс + "Индекс", Индекс);
+ Иначе
+ Индекс = КонтейнерРеквизитов[Префикс + "Индекс"];
+ КонецЕсли;
+ Если ЗначениеЗаполнено(Индекс) = Ложь Тогда
+ МассивОшибокАдреса.Добавить("Не заполнен индекс");
+ КонецЕсли;
+
КонецЕсли;
+
КонецЕсли;
Если ПустаяСтрока(ПредставлениеАдреса)
diff --git a/src/CommonModules/ОбменСКонтрагентамиИнтеграцияСобытия/Ext/Module.bsl b/src/CommonModules/ОбменСКонтрагентамиИнтеграцияСобытия/Ext/Module.bsl
index 41c73c689..199435a79 100644
--- a/src/CommonModules/ОбменСКонтрагентамиИнтеграцияСобытия/Ext/Module.bsl
+++ b/src/CommonModules/ОбменСКонтрагентамиИнтеграцияСобытия/Ext/Module.bsl
@@ -338,6 +338,11 @@
МодульПодсистемы.ПриЗаполненииТиповИсключаемыхИзВыгрузкиЗагрузки(Типы);
КонецЕсли;
+ Если ОбщегоНазначения.ПодсистемаСуществует("ЭлектронноеВзаимодействие.ЦентрЭДО") Тогда
+ МодульПодсистемы = ОбщегоНазначения.ОбщийМодуль("ЦентрЭДО");
+ МодульПодсистемы.ПриЗаполненииТиповИсключаемыхИзВыгрузкиЗагрузки(Типы);
+ КонецЕсли;
+
КонецПроцедуры
#КонецОбласти
diff --git a/src/CommonModules/ОбменСКонтрагентамиПереопределяемый/Ext/Module.bsl b/src/CommonModules/ОбменСКонтрагентамиПереопределяемый/Ext/Module.bsl
index 44ab8a576..08b49fe79 100644
--- a/src/CommonModules/ОбменСКонтрагентамиПереопределяемый/Ext/Module.bsl
+++ b/src/CommonModules/ОбменСКонтрагентамиПереопределяемый/Ext/Module.bsl
@@ -2855,7 +2855,7 @@
// Если Ложь, то в табличном документе следует отображать дополнительную информацию, если она есть.
// * ВыводитьПостраничныйРазделитель - Булево - Признак необходимости выводить постраничный разделитель.
// Принимает значение Истина при выводе представления электронного документа на печать.
-// * ЭлектронныеПодписи - Массив Из см. ЭлектроннаяПодпись.УстановленныеПодписи - Список установленных подписей.
+// * ЭлектронныеПодписи - см. ЭлектроннаяПодпись.ПодписиОбъекта - Список установленных подписей.
// ** ОтветнаяПодпись - Булево - Признак ответной подписи.
//
Процедура ПриЗаполненииТабличногоДокументаИзФайлаПрикладногоЭлектронногоДокумента(ТабличныйДокумент, ДанныеФайла, ПараметрыЗаполнения) Экспорт
diff --git a/src/CommonModules/ОбменСКонтрагентамиУТ/Ext/Module.bsl b/src/CommonModules/ОбменСКонтрагентамиУТ/Ext/Module.bsl
index e3bba5ec4..6e3c86ac9 100644
--- a/src/CommonModules/ОбменСКонтрагентамиУТ/Ext/Module.bsl
+++ b/src/CommonModules/ОбменСКонтрагентамиУТ/Ext/Module.bsl
@@ -3403,7 +3403,7 @@
КонецФункции
-Функция НайтиСоздатьОтчетКомиссионера(СтрокаДляЗагрузки, ДеревоРазбора, СсылкаНаВладельца = Неопределено, Записывать = Истина) Экспорт
+Функция НайтиСоздатьОтчетКомиссионера(СтрокаДляЗагрузки, ДеревоРазбора, ДополнительныеДанные, СсылкаНаВладельца = Неопределено, Записывать = Истина) Экспорт
УстановитьПривилегированныйРежим(Истина);
@@ -3469,6 +3469,7 @@
// запись версии конец
ДокументОбъект.Записать(РежимЗаписи);
+ ЗаписатьПрисоединенныеФайлыКДокументуЧерезСервисShare(ДокументОбъект.Ссылка, ДополнительныеДанные);
ДокументОбъект.Разблокировать();
ВозвращаемоеЗначение = ДокументОбъект.Ссылка;
@@ -3492,7 +3493,7 @@
КонецФункции
-Функция НайтиСоздатьОтчетКомиссионераОСписании(СтрокаДляЗагрузки, ДеревоРазбора, СсылкаНаВладельца = Неопределено, Записывать = Истина) Экспорт
+Функция НайтиСоздатьОтчетКомиссионераОСписании(СтрокаДляЗагрузки, ДеревоРазбора, ДополнительныеДанные, СсылкаНаВладельца = Неопределено, Записывать = Истина) Экспорт
УстановитьПривилегированныйРежим(Истина);
@@ -3555,6 +3556,7 @@
// запись версии конец
ДокументОбъект.Записать(РежимЗаписи);
+ ЗаписатьПрисоединенныеФайлыКДокументуЧерезСервисShare(ДокументОбъект.Ссылка, ДополнительныеДанные);
ДокументОбъект.Разблокировать();
ВозвращаемоеЗначение = ДокументОбъект.Ссылка;
@@ -7747,6 +7749,19 @@
КонецЕсли;
КонецЦикла;
КонецЕсли;
+ ИначеЕсли ТипЗнч(Основание) = Тип("ДокументСсылка.КорректировкаПриобретения") Тогда
+ ДокументОснование = ОбщегоНазначения.ЗначениеРеквизитаОбъекта(Основание, "ДокументОснование");
+ ДанныеОбъекта.Вставить("ДокументОснование", ДокументОснование);
+ Если ЗначениеЗаполнено(ДокументОснование) Тогда
+ НаименованиеРеквизитовОснования = "НалогообложениеНДС, Договор";
+ Если ТипЗнч(ДокументОснование) <> Тип("ДокументСсылка.ПервичныйДокумент") Тогда
+ НаименованиеРеквизитовОснования = НаименованиеРеквизитовОснования + ", Соглашение";
+ КонецЕсли;
+ РеквизитыДокументОснования = ОбщегоНазначения.ЗначенияРеквизитовОбъекта(ДокументОснование, НаименованиеРеквизитовОснования);
+ Для Каждого ЭлементСтруктуры Из РеквизитыДокументОснования Цикл
+ ДанныеОбъекта.Вставить(ЭлементСтруктуры.Ключ, ЭлементСтруктуры.Значение);
+ КонецЦикла;
+ КонецЕсли;
Иначе
ДанныеОбъекта.Вставить("ДокументОснование", Документы.ПриобретениеТоваровУслуг.ПустаяСсылка());
КонецЕсли;
@@ -7893,7 +7908,10 @@
Упаковка = ЭлектронноеВзаимодействие.ЗначениеРеквизитаВДереве(СведенияОТоваре,
"СведенияОТоварах.НомерСтроки.Сопоставление.УпаковкаИБ");
Если ЗначениеЗаполнено(Упаковка) Тогда
- НоваяСтрока.Упаковка = Упаковка;
+ БазоваяЕдиницаИзмерения = ОбщегоНазначения.ЗначениеРеквизитаОбъекта(НоваяСтрока.Номенклатура, "ЕдиницаИзмерения");
+ Если Упаковка <> БазоваяЕдиницаИзмерения Тогда
+ НоваяСтрока.Упаковка = Упаковка;
+ КонецЕсли;
КонецЕсли;
КонецЕсли;
@@ -11506,7 +11524,12 @@
КонецЕсли;
РезультатОтраженияВУчете.ДокументыУчета = ДокументыУчета;
-
+
+ Для Каждого Документ Из ДокументыУчета Цикл
+ СсылкаНаВладельца = Документ.Ссылка;
+ ЗаписатьПрисоединенныеФайлыКДокументуЧерезСервисShare(СсылкаНаВладельца, ПараметрыДляОтраженияВУчете);
+ КонецЦикла;
+
ЗафиксироватьТранзакцию();
Исключение
@@ -14176,8 +14199,8 @@
Упаковка = ЭлектронноеВзаимодействие.ЗначениеРеквизитаВДереве(СведенияОТоваре,
ПолныйПуть + "Сопоставление.УпаковкаИБ");
Если ЗначениеЗаполнено(Упаковка) Тогда
- ИспользоватьУпаковки = ОбщегоНазначения.ЗначениеРеквизитаОбъекта(НоваяСтрока.Номенклатура, "ИспользоватьУпаковки");
- Если ИспользоватьУпаковки Тогда
+ БазоваяЕдиницаИзмерения = ОбщегоНазначения.ЗначениеРеквизитаОбъекта(НоваяСтрока.Номенклатура, "ЕдиницаИзмерения");
+ Если Упаковка <> БазоваяЕдиницаИзмерения Тогда
НоваяСтрока.Упаковка = Упаковка;
КонецЕсли;
КонецЕсли;
@@ -19062,7 +19085,7 @@
УстановитьПривилегированныйРежим(Истина);
ДанныеДляЗагрузки = ПодготовитьСтруктуруДляАктаСверкиВзаиморасчетовПоДаннымОтправителя(ДанныеЭлектронногоДокумента);
- ЗаполнитьДокументАктаСверкиВзаиморасчетовПоДаннымОтправителя(ДокументУчета, ДанныеДляЗагрузки);
+ ЗаполнитьДокументАктаСверкиВзаиморасчетовПоДаннымОтправителя(ДокументУчета, ДанныеДляЗагрузки, ПараметрыДляОтраженияВУчете);
РезультатОтраженияВУчете.ДокументыУчета = ОбщегоНазначенияКлиентСервер.ЗначениеВМассиве(ДокументУчета);
@@ -23127,10 +23150,10 @@
КонецЕсли;
ИначеЕсли ТипДокумента = ТипыДокументов.ОтчетОПродажахКомиссионногоТовара Тогда
- НайденныйОбъект = НайтиСоздатьОтчетКомиссионера(ДанныеЭлектронногоДокумента, ДеревоРазбора, СсылкаНаВладельца, Записывать);
+ НайденныйОбъект = НайтиСоздатьОтчетКомиссионера(ДанныеЭлектронногоДокумента, ДеревоРазбора, ПараметрыДляОтраженияВУчете, СсылкаНаВладельца, Записывать);
ИначеЕсли ТипДокумента = ТипыДокументов.ОтчетОСписанииКомиссионногоТовара Тогда
- НайденныйОбъект = НайтиСоздатьОтчетКомиссионераОСписании(ДанныеЭлектронногоДокумента, ДеревоРазбора, СсылкаНаВладельца, Записывать);
+ НайденныйОбъект = НайтиСоздатьОтчетКомиссионераОСписании(ДанныеЭлектронногоДокумента, ДеревоРазбора, ПараметрыДляОтраженияВУчете, СсылкаНаВладельца, Записывать);
ИначеЕсли ТипДокумента = ТипыДокументов.РеквизитыОрганизации Тогда
@@ -30489,9 +30512,14 @@
// ДокументУчета - ОпределяемыйТип.ОснованияЭлектронныхДокументовЭДО - ссылка на документ учета, если он уже
// прикреплен к электронному документу.
// ДанныеДляЗаполнения - см. ОписаниеДанныхДляЗаполненияАктаСверкиВзаиморасчетовПоДаннымЭД.
+// ПараметрыДляОтраженияВУчете - Структура - данные для заполнения электронного документа:
+// * ПараметрыЭлектронногоДокумента - см. ОтражениеВУчетеЭДО.НовыеПараметрыЭлектронногоДокумента
+// * ПараметрыСпособаОбмена - см. ОтражениеВУчетеЭДО.НовыеПараметрыСпособаОбмена
+// * ПараметрыПоФорматуДокумента - Структура - дополнительные параметры по формату документа для отражения в учете:
+// ** СпособОбработки - Строка - способ сохранения данных в информационной базе.
+// См. ОбменСКонтрагентамиПереопределяемый.ПриОпределенииСпособовОбработкиПрикладногоТипаЭлектронногоДокумента
//
-Процедура ЗаполнитьДокументАктаСверкиВзаиморасчетовПоДаннымОтправителя(ДокументУчета,
- ДанныеДляЗаполнения)
+Процедура ЗаполнитьДокументАктаСверкиВзаиморасчетовПоДаннымОтправителя(ДокументУчета, ДанныеДляЗаполнения, ПараметрыДляОтраженияВУчете)
// Инициализация реквизитов шапки документа.
Если ЗначениеЗаполнено(ДокументУчета) Тогда
@@ -30633,7 +30661,7 @@
НСтр("ru = 'Операция возможна только для непроведенных документов'"),
"");
- ЗаписатьАктСверкиВзаиморасчетов(ДокументОбъект, РежимЗаписи, ДокументУчета, ТекстСообщения);
+ ЗаписатьАктСверкиВзаиморасчетов(ДокументОбъект, РежимЗаписи, ДокументУчета, ПараметрыДляОтраженияВУчете, ТекстСообщения);
КонецПроцедуры
@@ -30910,9 +30938,15 @@
// РежимЗаписи - РежимЗаписиДокумента - позволяет определить выполняется запись, проведение или отмена проведения.
// Изменение значения параметра позволяет изменить режим записи.
// ДокументУчета - ДокументСсылка.СверкаВзаиморасчетов2_5_11 - ссылка записываемый документ в ИБ.
+// ПараметрыДляОтраженияВУчете - Структура - данные для заполнения электронного документа:
+// * ПараметрыЭлектронногоДокумента - см. ОтражениеВУчетеЭДО.НовыеПараметрыЭлектронногоДокумента
+// * ПараметрыСпособаОбмена - см. ОтражениеВУчетеЭДО.НовыеПараметрыСпособаОбмена
+// * ПараметрыПоФорматуДокумента - Структура - дополнительные параметры по формату документа для отражения в учете:
+// ** СпособОбработки - Строка - способ сохранения данных в информационной базе.
+// См. ОбменСКонтрагентамиПереопределяемый.ПриОпределенииСпособовОбработкиПрикладногоТипаЭлектронногоДокумента
// ТекстОшибки - ДокументСсылка.СверкаВзаиморасчетов2_5_11 - текст ошибки исключения.
//
-Процедура ЗаписатьАктСверкиВзаиморасчетов(ДокументОбъект, РежимЗаписи, ДокументУчета, ТекстОшибки = "")
+Процедура ЗаписатьАктСверкиВзаиморасчетов(ДокументОбъект, РежимЗаписи, ДокументУчета, ПараметрыДляОтраженияВУчете = Неопределено, ТекстОшибки = "")
// Документ записывается дважды:
// Первый раз запись происходит с установкой признака ОбменДанными.Загрузка = Истина
@@ -30944,6 +30978,8 @@
Попытка
ДокументОбъект.ОбменДанными.Загрузка = Ложь;
ДокументОбъект.Записать(РежимЗаписи);
+ ЗаписатьПрисоединенныеФайлыКДокументуЧерезСервисShare(ДокументОбъект.Ссылка, ПараметрыДляОтраженияВУчете);
+
ДокументОбъект.Разблокировать();
ДокументУчета = ДокументОбъект.Ссылка;
@@ -33462,6 +33498,63 @@
КонецЕсли;
КонецЦикла;
+ ИначеЕсли СчетФактура = Неопределено
+ И ТипЗнч(ДокументИсправления) = Тип("ДокументСсылка.КорректировкаРеализации")
+ И СтруктураДанных.Свойство("РезультатПоИсходнымДанным") Тогда
+
+ ВыборкаПоСсылкам = СтруктураДанных.РезультатПоИсходнымДанным.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);
+ Пока ВыборкаПоСсылкам.Следующий() Цикл
+ Выборка = ВыборкаПоСсылкам.Выбрать();
+ Пока Выборка.Следующий() Цикл
+ НомерИсходногоДокумента = НомерСчетаФактурыНаПечать(Выборка.НомерСчетаФактуры, ДанныеШапки.ИндексПодразделения);
+ ДатаИсходногоДокумента = Выборка.ДатаСчетаФактуры;
+
+ ПоискПоИсходномуДокументу = Новый Структура;
+ ПоискПоИсходномуДокументу.Вставить("НомерИсходногоДокумента", НомерИсходногоДокумента);
+ ПоискПоИсходномуДокументу.Вставить("ДатаИсходногоДокумента", ДатаИсходногоДокумента);
+ НайденныеСтроки = ИсходныеДокументы.НайтиСтроки(ПоискПоИсходномуДокументу);
+
+ Если НайденныеСтроки.Количество() = 0 Тогда
+ ИсходныйДокументСтрока = ИсходныеДокументы.Добавить();
+ ИсходныйДокументСтрока.НомерИсходногоДокумента = НомерСчетаФактурыНаПечать(Выборка.НомерСчетаФактуры, ДанныеШапки.ИндексПодразделения);
+ ИсходныйДокументСтрока.ДатаИсходногоДокумента = Выборка.ДатаСчетаФактуры;
+
+ ИсправленияИсходногоДокумента = Новый ТаблицаЗначений;
+ ИсправленияИсходногоДокумента.Колонки.Добавить("НомерИсправленияИсходногоДокумента");
+ ИсправленияИсходногоДокумента.Колонки.Добавить("ДатаИсправленияИсходногоДокумента");
+
+ Если ЗначениеЗаполнено(Выборка.НомерИсправленияСчетаФактуры) Тогда
+ ИсправлениеИсходногоДокумента = ИсправленияИсходногоДокумента.Добавить();
+ ИсправлениеИсходногоДокумента.НомерИсправленияИсходногоДокумента = Выборка.НомерИсправленияСчетаФактуры;
+ ИсправлениеИсходногоДокумента.ДатаИсправленияИсходногоДокумента = Выборка.ДатаИсправленияСчетаФактуры;
+ КонецЕсли;
+
+ Если ИсправленияИсходногоДокумента.Количество() > 0 Тогда
+ ИсходныйДокументСтрока.ИсправленияИсходногоДокумента = ИсправленияИсходногоДокумента;
+ КонецЕсли;
+
+ Иначе
+ ИсходныйДокументСтрока = НайденныеСтроки[0];
+ Если ЗначениеЗаполнено(Выборка.НомерИсправленияСчетаФактуры) Тогда
+ Если ЗначениеЗаполнено(ИсходныйДокументСтрока.ИсправленияИсходногоДокумента) Тогда
+ Если ИсходныйДокументСтрока.ИсправленияИсходногоДокумента[0].ДатаИсправленияИсходногоДокумента < Выборка.ДатаИсправленияСчетаФактуры Тогда
+ ИсправлениеИсходногоДокумента.НомерИсправленияИсходногоДокумента = Выборка.НомерИсправленияСчетаФактуры;
+ ИсправлениеИсходногоДокумента.ДатаИсправленияИсходногоДокумента = Выборка.ДатаИсправленияСчетаФактуры;
+ КонецЕсли;
+ Иначе
+ ИсправлениеИсходногоДокумента = ИсправленияИсходногоДокумента.Добавить();
+ ИсправлениеИсходногоДокумента.НомерИсправленияИсходногоДокумента = Выборка.НомерИсправленияСчетаФактуры;
+ ИсправлениеИсходногоДокумента.ДатаИсправленияИсходногоДокумента = Выборка.ДатаИсправленияСчетаФактуры;
+
+ Если ИсправленияИсходногоДокумента.Количество() > 0 Тогда
+ ИсходныйДокументСтрока.ИсправленияИсходногоДокумента = ИсправленияИсходногоДокумента;
+ КонецЕсли;
+
+ КонецЕсли;
+ КонецЕсли;
+ КонецЕсли;
+ КонецЦикла;
+ КонецЦикла;
Иначе
Основание = Неопределено;
@@ -33659,10 +33752,24 @@
Если ЗначениеЗаполнено(РезультатПоИсходнымДанным.НомерСчетаФактуры)
И ЗначениеЗаполнено(РезультатПоИсходнымДанным.ДатаСчетаФактуры) Тогда
- НоваяСтрока = ПередаточныйДокумент.Добавить();
- НоваяСтрока.ДокументНаименование = НСтр("ru = 'Универсальный передаточный документ'");
- НоваяСтрока.ДокументНомер = РезультатПоИсходнымДанным.НомерСчетаФактуры;
- НоваяСтрока.ДокументДата = РезультатПоИсходнымДанным.ДатаСчетаФактуры;
+ Если ОпцииПечати.НомерСформированВСчетеФактуре Тогда
+ ДокументНомер = РезультатПоИсходнымДанным.НомерСчетаФактуры;
+ Иначе
+ ДокументНомер = НомерСчетаФактурыНаПечать(РезультатПоИсходнымДанным.НомерСчетаФактуры, ДанныеШапки.ИндексПодразделения);
+ КонецЕсли;
+ ДокументДата = РезультатПоИсходнымДанным.ДатаСчетаФактуры;
+
+ ПоискПоИсходнымДанным = Новый Структура;
+ ПоискПоИсходнымДанным.Вставить("ДокументНомер", ДокументНомер);
+ ПоискПоИсходнымДанным.Вставить("ДокументДата", ДокументДата);
+ СтрокиДокумента = ПередаточныйДокумент.НайтиСтроки(ПоискПоИсходнымДанным);
+
+ Если СтрокиДокумента.Количество() = 0 Тогда
+ НоваяСтрока = ПередаточныйДокумент.Добавить();
+ НоваяСтрока.ДокументНаименование = НСтр("ru = 'Универсальный передаточный документ'");
+ НоваяСтрока.ДокументНомер = ДокументНомер;
+ НоваяСтрока.ДокументДата = ДокументДата;
+ КонецЕсли;
КонецЕсли;
КонецЦикла;
@@ -37261,18 +37368,39 @@
//
// Параметры:
// СсылкаНаДокумент - ОпределяемыйТип.ОснованияЭлектронныхДокументовЭДО - ссылка на объект учета.
-// ДополнительныеДанные - см. ИнтеграцияShare.НовыеПараметрыДляЗагрузкиДокументаВОбъектУчета.
+// ДополнительныеДанные - Структура - данные для заполнения электронного документа:
+// * ПараметрыЭлектронногоДокумента - см. ОтражениеВУчетеЭДО.НовыеПараметрыЭлектронногоДокумента
+// * ПараметрыСпособаОбмена - см. ОтражениеВУчетеЭДО.НовыеПараметрыСпособаОбмена
//
Процедура ЗаписатьПрисоединенныеФайлыКДокументуЧерезСервисShare(СсылкаНаДокумент, Знач ДополнительныеДанные)
+
+ Если ДополнительныеДанные = Неопределено Тогда
+ Возврат;
+ КонецЕсли;
+
+ ПараметрыСпособаОбмена = ДополнительныеДанные.ПараметрыСпособаОбмена;
- Если ДополнительныеДанные = Неопределено
- Или Не ДополнительныеДанные.Свойство("СпособОбмена")
- Или ДополнительныеДанные.СпособОбмена <> ИнтеграцияShare.СпособОбмена() Тогда
+ Если ПараметрыСпособаОбмена.СпособОбмена <> ИнтеграцияShare.СпособОбмена() Тогда
Возврат;
КонецЕсли;
+ ПараметрыЭлектронногоДокумента = ДополнительныеДанные.ПараметрыЭлектронногоДокумента;
+
ДанныеОсновногоФайла = Неопределено;
- Если Не ДополнительныеДанные.Свойство("ДанныеОсновногоФайла", ДанныеОсновногоФайла) Тогда
+ Если Не ПараметрыЭлектронногоДокумента.Свойство("ДанныеОсновногоФайла", ДанныеОсновногоФайла) Тогда
+ Возврат;
+ КонецЕсли;
+
+ Если Не ПравоДоступа("Добавление", Метаданные.Справочники.Файлы)
+ Или (УправлениеДоступом.ОграничиватьДоступНаУровнеЗаписей()
+ И Не УправлениеДоступом.ИзменениеРазрешено(Справочники.ПапкиФайлов.Шаблоны)) Тогда
+
+ ТекстОшибки = СтрШаблон(
+ НСтр("ru = 'Недостаточно прав доступа для добавления файлов. Не удалось добавить файлы к документу %1'",
+ ОбщегоНазначения.КодОсновногоЯзыка()), СсылкаНаДокумент);
+ ОбщегоНазначения.СообщитьПользователю(ТекстОшибки);
+ ЗаписьЖурналаРегистрации(НСтр("ru = 'Добавление присоединенных файлов.'", ОбщегоНазначения.КодОсновногоЯзыка()),
+ УровеньЖурналаРегистрации.Предупреждение, СсылкаНаДокумент.Метаданные(), , ТекстОшибки);
Возврат;
КонецЕсли;
@@ -37295,50 +37423,43 @@
КонецЕсли;
- ДополнительныеФайлыДокумента = Неопределено;
- Если Не ДополнительныеДанные.Свойство("ДополнительныеФайлыДокумента", ДополнительныеФайлыДокумента) Тогда
+ Если ПараметрыСпособаОбмена.ДанныеСпособаОбмена = Неопределено Тогда
Возврат;
КонецЕсли;
- Для Каждого СтрокаФайл Из ДополнительныеФайлыДокумента Цикл
-
- ПараметрыФайла = РаботаСФайлами.ПараметрыДобавленияФайла();
- ПараметрыФайла.ВладелецФайлов = СсылкаНаДокумент;
- ПараметрыФайла.ВремяИзмененияУниверсальное = ТекущаяУниверсальнаяДата();
- ПараметрыФайла.Автор = Пользователи.АвторизованныйПользователь();
- ПараметрыФайла.ИмяБезРасширения = СтрокаФайл.ИмяБезРасширения;
- ПараметрыФайла.РасширениеБезТочки = СтрокаФайл.РасширениеБезТочки;
-
- АдресДанныхДокумента = ПоместитьВоВременноеХранилище(СтрокаФайл.ДвоичныеДанныеФайла);
- РаботаСФайлами.ДобавитьФайл(ПараметрыФайла, АдресДанныхДокумента);
-
+ ДанныеСпособаОбмена = ПараметрыСпособаОбмена.ДанныеСпособаОбмена;
+
+ Для Каждого СтрокаФайл Из ДанныеСпособаОбмена.ДополнительныеФайлыДокумента Цикл
+ ДобавитьФайлКДокументу(СсылкаНаДокумент, СтрокаФайл.ДвоичныеДанныеФайла, СтрокаФайл.ИмяБезРасширения,
+ СтрокаФайл.РасширениеБезТочки);
КонецЦикла;
- ФайлыВизуализации = Неопределено;
- Если Не ДополнительныеДанные.Свойство("ФайлыВизуализации", ФайлыВизуализации) Тогда
- Возврат;
- КонецЕсли;
-
- Для Каждого СтрокаФайл Из ФайлыВизуализации Цикл
-
- ПараметрыФайла = РаботаСФайлами.ПараметрыДобавленияФайла();
- ПараметрыФайла.ВладелецФайлов = СсылкаНаДокумент;
- ПараметрыФайла.ВремяИзмененияУниверсальное = ТекущаяУниверсальнаяДата();
- ПараметрыФайла.Автор = Пользователи.АвторизованныйПользователь();
- Если ЗначениеЗаполнено(СтрокаФайл.Представление) Тогда
- ПараметрыФайла.ИмяБезРасширения = СтрокаФайл.Представление;
- Иначе
- ПараметрыФайла.ИмяБезРасширения = СтрокаФайл.ИмяБезРасширения;
- КонецЕсли;
- ПараметрыФайла.РасширениеБезТочки = ОбщегоНазначенияКлиентСервер.РасширениеБезТочки(СтрокаФайл.Расширение);
-
- АдресДанныхДокумента = ПоместитьВоВременноеХранилище(СтрокаФайл.ДвоичныеДанныеФайла);
- РаботаСФайлами.ДобавитьФайл(ПараметрыФайла, АдресДанныхДокумента);
-
+ Для Каждого СтрокаФайл Из ДанныеСпособаОбмена.ФайлыВизуализации Цикл
+ ДобавитьФайлКДокументу(СсылкаНаДокумент, СтрокаФайл.ДвоичныеДанныеФайла, СтрокаФайл.ИмяБезРасширения,
+ СтрокаФайл.Расширение);
КонецЦикла;
КонецПроцедуры
+// Параметры:
+// СсылкаНаДокумент - ОпределяемыйТип.ВладелецПрисоединенныхФайлов
+// ДвоичныеДанныеФайла - ДвоичныеДанные
+// ИмяБезРасширения - Строка
+// РасширениеБезТочки - Строка
+Процедура ДобавитьФайлКДокументу(Знач СсылкаНаДокумент, Знач ДвоичныеДанныеФайла, Знач ИмяБезРасширения, Знач РасширениеБезТочки)
+
+ ПараметрыФайла = РаботаСФайлами.ПараметрыДобавленияФайла();
+ ПараметрыФайла.ВладелецФайлов = СсылкаНаДокумент;
+ ПараметрыФайла.ВремяИзмененияУниверсальное = ТекущаяУниверсальнаяДата();
+ ПараметрыФайла.Автор = Пользователи.АвторизованныйПользователь();
+ ПараметрыФайла.ИмяБезРасширения = ИмяБезРасширения;
+ ПараметрыФайла.РасширениеБезТочки = РасширениеБезТочки;
+
+ АдресДанныхДокумента = ПоместитьВоВременноеХранилище(ДвоичныеДанныеФайла);
+ РаботаСФайлами.ДобавитьФайл(ПараметрыФайла, АдресДанныхДокумента);
+
+КонецПроцедуры
+
#КонецОбласти
Функция ПоддерживаемыеФорматы() Экспорт
diff --git a/src/CommonModules/ОбновлениеИнформационнойБазыБЭД/Ext/Module.bsl b/src/CommonModules/ОбновлениеИнформационнойБазыБЭД/Ext/Module.bsl
index d162b2121..be0233a35 100644
--- a/src/CommonModules/ОбновлениеИнформационнойБазыБЭД/Ext/Module.bsl
+++ b/src/CommonModules/ОбновлениеИнформационнойБазыБЭД/Ext/Module.bsl
@@ -17,7 +17,7 @@
//
Функция ВерсияБиблиотеки() Экспорт
- Возврат "1.9.16.22";
+ Возврат "1.9.16.38";
КонецФункции
diff --git a/src/CommonModules/ОбновлениеИнформационнойБазыГосИС/Ext/Module.bsl b/src/CommonModules/ОбновлениеИнформационнойБазыГосИС/Ext/Module.bsl
index e8e0932cf..44569fb94 100644
--- a/src/CommonModules/ОбновлениеИнформационнойБазыГосИС/Ext/Module.bsl
+++ b/src/CommonModules/ОбновлениеИнформационнойБазыГосИС/Ext/Module.bsl
@@ -800,9 +800,9 @@
И Метаданные.Подсистемы.ГосИС.Подсистемы["ЗЕРНО"].Состав.Содержит(ОбъектМетаданных) Тогда
МодульПодсистемы = ОбщегоНазначенияИСПовтИсп.ОбщийМодуль("ОбновлениеИнформационнойБазыЗЕРНО");
НомерРедакции = МодульПодсистемы.РедакцияПодсистемы();
- ИначеЕсли ОбщегоНазначенияИСКлиентСерверПовтИсп.ЭтоРасширеннаяВерсияГосИС()
- И Метаданные.Подсистемы.ГосИС.Подсистемы.БазоваяФункциональность.Подсистемы.Расширенная.Состав.Содержит(ОбъектМетаданных) Тогда
- Иначе
+ ИначеЕсли Не (Метаданные.Подсистемы.ГосИС.Подсистемы.БазоваяФункциональность.Подсистемы.БРМК.Состав.Содержит(ОбъектМетаданных)
+ Или ОбщегоНазначенияИСКлиентСерверПовтИсп.ЭтоРасширеннаяВерсияГосИС()
+ И Метаданные.Подсистемы.ГосИС.Подсистемы.БазоваяФункциональность.Подсистемы.Расширенная.Состав.Содержит(ОбъектМетаданных)) Тогда
ТекстОшибки = СтрШаблон(
НСтр("ru = 'Внутренняя ошибка. Не удалось определить принадлежность к подсистеме при добавлении обработчика обновления %1'"),
Строка(ОбъектМетаданных.ПолноеИмя()));
diff --git a/src/CommonModules/ОбновлениеИнформационнойБазыЗЕРНО/Ext/Module.bsl b/src/CommonModules/ОбновлениеИнформационнойБазыЗЕРНО/Ext/Module.bsl
index 9f2a87493..1bb09e6ee 100644
--- a/src/CommonModules/ОбновлениеИнформационнойБазыЗЕРНО/Ext/Module.bsl
+++ b/src/CommonModules/ОбновлениеИнформационнойБазыЗЕРНО/Ext/Module.bsl
@@ -229,7 +229,7 @@
КонецПроцедуры
-// Обработка данных перехода на конструктор настроек видов продуции
+// Обработка данных перехода на конструктор настроек видов продукции
//
// Параметры:
// ОбъектМетаданных - ОбъектМетаданных
@@ -381,7 +381,7 @@
КонецПроцедуры
-// Обработка данных перехода на конструктор настроек видов продуции
+// Обработка данных перехода на конструктор настроек видов продукции
//
// Параметры:
// ОбъектМетаданных - ОбъектМетаданных
@@ -440,7 +440,7 @@
КонецЦикла;
Если МенеджерДополнительнойОбработки <> Неопределено Тогда
- МенеджерДополнительнойОбработки.ДополнтельнаяОбработкаДанныхПриПереходеНаКонструкторНастроек(
+ МенеджерДополнительнойОбработки.ДополнительнаяОбработкаДанныхПриПереходеНаКонструкторНастроек(
НаборЗаписей, ПроблемыСДанными, КешКонвертаций, ЕстьИзменения);
КонецЕсли;
diff --git a/src/CommonModules/ОбновлениеИнформационнойБазыИСМП/Ext/Module.bsl b/src/CommonModules/ОбновлениеИнформационнойБазыИСМП/Ext/Module.bsl
index 6b62075e4..5a2bdf3f2 100644
--- a/src/CommonModules/ОбновлениеИнформационнойБазыИСМП/Ext/Module.bsl
+++ b/src/CommonModules/ОбновлениеИнформационнойБазыИСМП/Ext/Module.bsl
@@ -258,7 +258,7 @@
КонецПроцедуры
-// Обработка данных перехода на конструктор настроек видов продуции
+// Обработка данных перехода на конструктор настроек видов продукции
//
// Параметры:
// ОбъектМетаданных - ОбъектМетаданных
@@ -318,7 +318,7 @@
КонецЕсли;
Если МенеджерДополнительнойОбработки <> Неопределено Тогда
- МенеджерДополнительнойОбработки.ДополнтельнаяОбработкаДанныхПриПереходеНаКонструкторНастроек(
+ МенеджерДополнительнойОбработки.ДополнительнаяОбработкаДанныхПриПереходеНаКонструкторНастроек(
ОбъектДанных, ПроблемыСДанными, КешКонвертаций);
КонецЕсли;
@@ -430,7 +430,7 @@
КонецПроцедуры
-// Обработка данных перехода на конструктор настроек видов продуции
+// Обработка данных перехода на конструктор настроек видов продукции
//
// Параметры:
// ОбъектМетаданных - ОбъектМетаданных
diff --git a/src/CommonModules/ОбновлениеИнформационнойБазыЛокализация/Ext/Module.bsl b/src/CommonModules/ОбновлениеИнформационнойБазыЛокализация/Ext/Module.bsl
index 57381b969..027b3c5bd 100644
--- a/src/CommonModules/ОбновлениеИнформационнойБазыЛокализация/Ext/Module.bsl
+++ b/src/CommonModules/ОбновлениеИнформационнойБазыЛокализация/Ext/Module.bsl
@@ -25,7 +25,7 @@
Процедура ПриДобавленииПодсистемы(Описание) Экспорт
Описание.Имя = "Локализация" + ?(СтандартныеПодсистемыСервер.ЭтоБазоваяВерсияКонфигурации(), "Базовая", "");
- Описание.Версия = "2.5.27.47";
+ Описание.Версия = "2.5.27.52";
Описание.РежимВыполненияОтложенныхОбработчиков = "Параллельно";
КонецПроцедуры
diff --git a/src/CommonModules/ОбновлениеИнформационнойБазыУТ/Ext/Module.bsl b/src/CommonModules/ОбновлениеИнформационнойБазыУТ/Ext/Module.bsl
index 202ddfb36..cea95c7c0 100644
--- a/src/CommonModules/ОбновлениеИнформационнойБазыУТ/Ext/Module.bsl
+++ b/src/CommonModules/ОбновлениеИнформационнойБазыУТ/Ext/Module.bsl
@@ -32,7 +32,7 @@
Процедура ПриДобавленииПодсистемы(Описание) Экспорт
Описание.Имя = "УправлениеТорговлей" + ?(СтандартныеПодсистемыСервер.ЭтоБазоваяВерсияКонфигурации(), "Базовая", "");
- Описание.Версия = "11.5.27.47";
+ Описание.Версия = "11.5.27.52";
Описание.РежимВыполненияОтложенныхОбработчиков = "Параллельно";
Описание.ИдентификаторИнтернетПоддержки = ?(СтандартныеПодсистемыСервер.ЭтоБазоваяВерсияКонфигурации(), "TradeBase", "Trade");
@@ -127,6 +127,7 @@
РегистрыНакопления.ВыручкаИСебестоимостьПродаж.ПриДобавленииОбработчиковОбновления(Обработчики);
РегистрыНакопления.ПрочиеАктивыПассивы.ПриДобавленииОбработчиковОбновления(Обработчики);
+ РегистрыНакопления.ДвиженияПоАкцизам.ПриДобавленииОбработчиковОбновления(Обработчики);
//++ Локализация
Справочники.Номенклатура.ПриДобавленииОбработчиковОбновления(Обработчики);
@@ -214,6 +215,11 @@
КонецЕсли;
КонецЕсли;
+ // После завершения монопольного обновления уведомляем пользователя, в случае использования устаревшего функционала.
+ Если МонопольныйРежим Тогда
+ Обработки.ГотовностьКПереходу26.УстановитьКонстантуУведомленияОбУстаревшейФункциональности(Истина);
+ КонецЕсли;
+
КонецПроцедуры
// Вызывается при подготовке табличного документа с описанием изменений в программе.
diff --git a/src/CommonModules/ОбщегоНазначенияБЭД/Ext/Module.bsl b/src/CommonModules/ОбщегоНазначенияБЭД/Ext/Module.bsl
index 08650639f..64bbbb9ae 100644
--- a/src/CommonModules/ОбщегоНазначенияБЭД/Ext/Module.bsl
+++ b/src/CommonModules/ОбщегоНазначенияБЭД/Ext/Module.bsl
@@ -678,7 +678,7 @@
// Текстовый формат (22 апреля 2025, 22_апреля_2025)
РегулярноеВыражение = "\d{1,2}[\s_]+(?:января|январь|янв|февраля|февраль|февр|марта|март|мар|апреля|апрель|апр|мая|май|"
+ "июня|июнь|июля|июль|августа|август|авг|сентября|сентябрь|сен|октября|октябрь|окт|ноября|ноябрь|ноя|декабря|декабрь|дек|"
- + "janvarja|janvarya|janv|fevralja|fevralya|fevr|marta|mart|mar|aprelja|aprelya|apr|maja|maya|may|ijunja|iyunya|ijun|iyun|"
+ + "janvarja|janvarya|janv|yanvarya|yanv|fevralja|fevralya|fevr|marta|mart|mar|aprelja|aprelya|apr|maja|maya|may|ijunja|iyunya|ijun|iyun|"
+ "ijulja|iyulya|ijul|iyul|avgusta|augusta|avg|aug|sentjabrja|sentyabrya|sent|oktjabrja|oktyabrya|okt|"
+ "nojahrja|noyabrya|noj|noy|dekabrja|dekabrya|dek)[\s_]+\d{4}";
РезультатПоискаДаты = СтрНайтиПоРегулярномуВыражению(ПредставлениеДаты, РегулярноеВыражение);
@@ -708,6 +708,8 @@
Месяцы.Вставить("janvarja", 1);
Месяцы.Вставить("janvarya", 1);
Месяцы.Вставить("janv", 1);
+ Месяцы.Вставить("yanvarya", 1);
+ Месяцы.Вставить("yanv", 1);
Месяцы.Вставить("февраля", 2);
Месяцы.Вставить("февраль", 2);
diff --git a/src/CommonModules/ОбщегоНазначенияБЭДКлиентСервер/Ext/Module.bsl b/src/CommonModules/ОбщегоНазначенияБЭДКлиентСервер/Ext/Module.bsl
index 01acaf156..686eb16fc 100644
--- a/src/CommonModules/ОбщегоНазначенияБЭДКлиентСервер/Ext/Module.bsl
+++ b/src/CommonModules/ОбщегоНазначенияБЭДКлиентСервер/Ext/Module.bsl
@@ -304,16 +304,11 @@
// Булево
Функция ЭтоКППФилиалаИностраннойОрганизации(КПП) Экспорт
- КодыПричин = Новый Массив;
- КодыПричин.Добавить("51"); // постановка на учет отделения иностранной организации
- КодыПричин.Добавить("52"); // постановка на учет отделения иностранной организации в Российской Федерации,
- // созданной филиалом этой иностранной организации в иностранном государстве
- КодыПричин.Добавить("53"); // постановка на учет отделения иностранной организации,
- // созданной филиалом этой иностранной организации в Российской Федерации
-
- КодПричиныПостановкиНаУчет = Сред(КПП, 5, 2);
-
- Возврат КодыПричин.Найти(КодПричиныПостановкиНаУчет) <> Неопределено;
+ ОписаниеТипаЧисло = Новый ОписаниеТипов("Число");
+ КодПричиныПостановкиНаУчет = ОписаниеТипаЧисло.ПривестиЗначение(Сред(КПП, 5, 2));
+ // Справочник причин постановки на учет налогоплательщиков-организаций в налоговых органах (СППУНО)
+ // с 51 по 99 - для иностранных организаций, как это предписано в МУ-901.
+ Возврат КодПричиныПостановкиНаУчет >= 51 И КодПричиныПостановкиНаУчет <= 99;
КонецФункции
@@ -597,6 +592,21 @@
Возврат Результат;
КонецФункции
+// Функция для поиска значения в структуре
+// Параметры:
+// Данные - Структура
+// ЗначениеДляПоиска - Произвольный
+// Возвращаемое значение:
+// Булево - Истина, если значение найдено
+Функция СтруктураСодержитЗначение(Данные, ЗначениеДляПоиска) Экспорт
+ Для Каждого Элемент Из Данные Цикл
+ Если Элемент.Значение = ЗначениеДляПоиска Тогда
+ Возврат Истина;
+ КонецЕсли;
+ КонецЦикла;
+ Возврат Ложь;
+КонецФункции
+
#КонецОбласти
#КонецОбласти
diff --git a/src/CommonModules/ОбщегоНазначенияИС/Ext/Module.bsl b/src/CommonModules/ОбщегоНазначенияИС/Ext/Module.bsl
index 88099fcde..70cc256d9 100644
--- a/src/CommonModules/ОбщегоНазначенияИС/Ext/Module.bsl
+++ b/src/CommonModules/ОбщегоНазначенияИС/Ext/Module.bsl
@@ -6,7 +6,7 @@
// Строка - Версия библиотеки
Функция ВерсияБиблиотеки() Экспорт
- Возврат "2.0.5.4";
+ Возврат "2.0.6.6";
КонецФункции
@@ -467,7 +467,7 @@
ДанныеДляРасчетаСерии.Вставить("Склад", ПараметрыСканирования.Склад);
ДанныеДляРасчетаСерии.Вставить("Операция", Операция);
ДанныеДляРасчетаСерии.Вставить("Номенклатура", Товар.Номенклатура);
-
+
ОбщегоНазначенияИСПереопределяемый.ПриОпределенииНеобходимостиВыбораСерии(
ДанныеДляРасчетаСерии, ПараметрыУказанияСерий, ТребуетсяВыбор, Неопределено, ПараметрыСканирования.КэшированныеЗначения);
@@ -503,12 +503,12 @@
Для Каждого СтрокаДанных Из ШтрихкодыУпаковок Цикл
КоличествоЧастичногоВыбытия = СтрокаДанных[ПараметрыСканирования.ИмяКолонкиЧастичноеВыбытиеКоличество];
- Если Не ЗначениеЗаполнено(КоличествоЧастичногоВыбытия) Тогда
+ ШтрихкодУпаковки = СтрокаДанных[ПараметрыСканирования.ИмяКолонкиШтрихкодУпаковки];
+ Если Не ЗначениеЗаполнено(КоличествоЧастичногоВыбытия)
+ Или Не ЗначениеЗаполнено(ШтрихкодУпаковки) Тогда
Продолжить;
КонецЕсли;
- ШтрихкодУпаковки = СтрокаДанных[ПараметрыСканирования.ИмяКолонкиШтрихкодУпаковки];
-
НоваяСтрока = КодыМаркировкиДляСписания.Добавить();
НоваяСтрока.ШтрихкодУпаковки = ШтрихкодУпаковки;
НоваяСтрока.Количество = КоличествоЧастичногоВыбытия;
@@ -674,45 +674,63 @@
Если ОбщегоНазначения.РазделениеВключено() Тогда
РегистрыСведений.ОписаниеНоменклатурыИС.ЗаполнитьОтсутствующиеКлючиПоИдентификаторамВидовПродукции();
- ИначеЕсли ВедетсяУчетПродукцииИС()
- И Не КлассификаторНастроекВидовПродукцийЗагружен() Тогда
-
- УстановитьПривилегированныйРежим(Истина);
-
- НачатьТранзакцию();
-
- Попытка
- РезультатОбновления = ПервоначальноеЗаполнениеКлассификаторовВидовПродукции(Истина);
- Если РезультатОбновления.УспешнаяЗагрузка Тогда
- ЗафиксироватьТранзакцию();
- Иначе
+
+ ИначеЕсли ВедетсяУчетПродукцииИС() Тогда
+ ТребуемаяВерсияБиблиотекиБИП = МинимальнаяВерсияБиблиотекиИнтернетПоддержки();
+ ТекущаяВерсияБиблиотекиБИП = ИнтернетПоддержкаПользователейКлиентСервер.ВерсияБиблиотеки();
+ СравнениеВерсийБиблиотекиБИП = ОбщегоНазначенияКлиентСервер.СравнитьВерсии(ТребуемаяВерсияБиблиотекиБИП,
+ ТекущаяВерсияБиблиотекиБИП);
+
+ ОписаниеКлассификаторов = Новый Массив;
+ ЗаполнитьОписаниеКлассификаторов(ОписаниеКлассификаторов, Истина, Истина);
+
+ Если СравнениеВерсийБиблиотекиБИП > 0 Тогда
+ ДобавитьКлассификаторы(ОписаниеКлассификаторов);
+ Иначе
+ МодульРаботаСКлассификаторами = ОбщегоНазначения.ОбщийМодуль("РаботаСКлассификаторами");
+ //@skip-check bsl-legacy-check-static-feature-access-for-unknown-left-part
+ МодульРаботаСКлассификаторами.ДобавитьКлассификаторы(ОписаниеКлассификаторов);
+ КонецЕсли;
+
+ Если Не КлассификаторНастроекВидовПродукцийЗагружен() Тогда
+
+ УстановитьПривилегированныйРежим(Истина);
+
+ НачатьТранзакцию();
+
+ Попытка
+ РезультатОбновления = ПервоначальноеЗаполнениеКлассификаторовВидовПродукции(Истина, Истина);
+ Если РезультатОбновления.УспешнаяЗагрузка Тогда
+ ЗафиксироватьТранзакцию();
+ Иначе
+ ОтменитьТранзакцию();
+ ЗаписьЖурналаРегистрации(
+ НСтр("ru = 'Обновление классификаторов'"), УровеньЖурналаРегистрации.Ошибка, , ,
+ РезультатОбновления.СообщениеОбОшибке);
+ КонецЕсли;
+ Исключение
ОтменитьТранзакцию();
ЗаписьЖурналаРегистрации(
+ НСтр("ru = 'Обновление классификаторов'"), УровеньЖурналаРегистрации.Ошибка, , ,
+ ОбработкаОшибок.ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()));
+ КонецПопытки;
+
+ Классификаторы = Новый Массив;
+ Классификаторы.Добавить(ИдентификаторКлассификатораВидовПродукцииИС());
+
+ РезультатОбновления = РаботаСКлассификаторами.ОбновитьКлассификаторы(Классификаторы);
+
+ Если РезультатОбновления.КодОшибки = "НеизвестнаяОшибка"
+ Или РезультатОбновления.КодОшибки = "НеОбработан"
+ Или РезультатОбновления.КодОшибки = "ФайлНеЗагружен"
+ Или РезультатОбновления.КодОшибки = "НеизвестныйКлассификаторИлиПрограмма" Тогда
+ ЗаписьЖурналаРегистрации(
НСтр("ru = 'Обновление классификаторов'"), УровеньЖурналаРегистрации.Ошибка, , ,
РезультатОбновления.СообщениеОбОшибке);
КонецЕсли;
- Исключение
- ОтменитьТранзакцию();
- ЗаписьЖурналаРегистрации(
- НСтр("ru = 'Обновление классификаторов'"), УровеньЖурналаРегистрации.Ошибка, , ,
- ОбработкаОшибок.ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()));
- КонецПопытки;
-
- Классификаторы = Новый Массив;
- Классификаторы.Добавить(ИдентификаторКлассификатораВидовПродукцииИС());
-
- РезультатОбновления = РаботаСКлассификаторами.ОбновитьКлассификаторы(Классификаторы);
-
- Если РезультатОбновления.КодОшибки = "НеизвестнаяОшибка"
- Или РезультатОбновления.КодОшибки = "НеОбработан"
- Или РезультатОбновления.КодОшибки = "ФайлНеЗагружен"
- Или РезультатОбновления.КодОшибки = "НеизвестныйКлассификаторИлиПрограмма" Тогда
- ЗаписьЖурналаРегистрации(
- НСтр("ru = 'Обновление классификаторов'"),
- УровеньЖурналаРегистрации.Ошибка,,,
- РезультатОбновления.СообщениеОбОшибке);
+
КонецЕсли;
-
+
КонецЕсли;
КонецПроцедуры
@@ -737,13 +755,42 @@
ИначеЕсли СтрНайти(Значение, "-") > 0 Тогда
Возврат ПрочитатьДатуJSON(Значение, ФорматДатыJSON.ISO);
ИначеЕсли СтрНайти(Значение, ".") > 0 Тогда
- Возврат ОбщегоНазначенияКлиентСервер.СтрокаВДату(Значение);
+ Возврат СтрокаВДату(Значение);
Иначе
Возврат ОбщегоНазначенияИСКлиентСервер.ДатаИзСтрокиUNIX(Значение, Делитель, ПриводитьКМестномуВремени);
КонецЕсли;
КонецФункции
+// Преобразует исходную строку в дату.
+// Если дату не удалось распознать, то возвращается пустая дата (01.01.01 00:00:00).
+//
+// Параметры:
+// Значение - Строка - строка, которую необходимо привести к дате.
+// Формат даты должен быть в виде "ДД.ММ.ГГГГ" или "ДД/ММ/ГГ" или "ДД-ММ-ГГ ЧЧ:ММ:CC",
+// Например, "23.02.1980" или "23/02/80 09:15:45".
+// Возвращаемое значение:
+// Дата
+//
+Функция СтрокаВДату(Значение) Экспорт
+
+ КешРезультатовФункции = Неопределено;
+ Результат = ОбщегоНазначенияИСКлиентСервер.ПрочитатьКеш(
+ ОбщегоНазначенияИСКлиентСерверПовтИсп.ГлобальныйКеш(), "Функция.СтрокаВДату", Значение, КешРезультатовФункции);
+ Если Результат <> Неопределено Тогда
+ Возврат Результат;
+ КонецЕсли;
+
+ Результат = СтроковыеФункцииКлиентСервер.СтрокаВДату(Значение);
+
+ Если КешРезультатовФункции <> Неопределено Тогда
+ КешРезультатовФункции.Вставить(Значение, Результат);
+ КонецЕсли;
+
+ Возврат Результат;
+
+КонецФункции
+
// Дата из строки ISO.
//
// Параметры:
@@ -753,12 +800,12 @@
// Дата - Дата из строки ISO
Функция ДатаИзСтрокиISO(Значение) Экспорт
- Конвертор = РаботаСXMLИС.ОбъектXDTOПоИмениСвойства("http://gosis.1c.ru/Convertor", "query");
- Конвертор.ХранилищеДаты = РаботаСXMLИС.ОбъектXDTOПоИмениТипа(Конвертор, "ХранилищеДаты");
+ Конвертер = РаботаСXMLИС.ОбъектXDTOПоИмениСвойства("http://gosis.1c.ru/Convertor", "query");
+ Конвертер.ХранилищеДаты = РаботаСXMLИС.ОбъектXDTOПоИмениТипа(Конвертер, "ХранилищеДаты");
Попытка
- Конвертор.ХранилищеДаты.Значение = Значение;
- Возврат Конвертор.ХранилищеДаты.Значение;
+ Конвертер.ХранилищеДаты.Значение = Значение;
+ Возврат Конвертер.ХранилищеДаты.Значение;
Исключение
Возврат Дата(1, 1, 1);
КонецПопытки;
@@ -791,7 +838,7 @@
// Структура - Инициализировать данные описания:
// * Номенклатура - Неопределено, ОпределяемыйТип.Номенклатура - Номенклатура.
// * КлючВидовПродукции - СправочникСсылка.КлючиВидовПродукцииИС - Ключ видов продукции.
-// * ЕмкостьПотребительскойУпаковки - Число - Емкость потребительской упаковки для часчтиного выбытия.
+// * ЕмкостьПотребительскойУпаковки - Число - Емкость потребительской упаковки для частичного выбытия.
// * КоличествоВПотребительскойУпаковке - Число - Количество учетных единиц товара в потребительской упаковке.
// * ВариантЧастичногоВыбытия - ПеречислениеСсылка.ВариантыУчетаЧастичногоВыбытияИС - Вариант частичного выбытия.
// * ВариантИспользованияЕдиницыХранения - ПеречислениеСсылка.ВариантыИспользованияЕдиницыХраненияИС - Вариант использования единицы измерения.
@@ -1347,10 +1394,8 @@
// см. ПользователиПереопределяемый.ПриОпределенииНазначенияРолей
Процедура ПриОпределенииНазначенияРолей(НазначениеРолей) Экспорт
-
- НазначениеРолей.ТолькоДляВнешнихПользователей.Добавить(
- Метаданные.Роли.БазовыеПраваВнешнегоПользователяИС.Имя);
-
+
+ НазначениеРолей.ТолькоДляВнешнихПользователей.Добавить("БазовыеПраваВнешнегоПользователяИС");
НазначениеРолей.ТолькоДляПользователейСистемы.Добавить("ДобавлениеИзменениеЭлементовКонструктораВидовПродукцииИС");
Если ПодсистемаСуществует("ИСМП") Тогда
@@ -1381,7 +1426,7 @@
ТипыОборудования = МодульМенеджерОборудованияКлиентСервер.ПараметрыТипыОборудования();
ТипыОборудования.СканерШтрихкода = (СтрНайти(ПоддерживаемыеТипыПодключаемогоОборудования, "СканерШтрихкода") > 0);
ТипыОборудования.СчитывательRFID = (СтрНайти(ПоддерживаемыеТипыПодключаемогоОборудования, "СчитывательRFID") > 0);
-
+
МодульМенеджерОборудования.ПриСозданииНаСервере(Форма, ТипыОборудования);
КонецЕсли;
@@ -1459,8 +1504,39 @@
Возврат Результат;
КонецЕсли;
+ ИдентификаторКлассификатора = ИдентификаторКлассификатораВидовПродукцииИС();
+ ВерсияКлассификатора = РаботаСКлассификаторами.ВерсияКлассификатора(ИдентификаторКлассификатора);
+
+ Если ВерсияКлассификатора = Неопределено Тогда
+ ТребуемаяВерсияБиблиотекиБИП = МинимальнаяВерсияБиблиотекиИнтернетПоддержки();
+ ТекущаяВерсияБиблиотекиБИП = ИнтернетПоддержкаПользователейКлиентСервер.ВерсияБиблиотеки();
+ СравнениеВерсийБиблиотекиБИП = ОбщегоНазначенияКлиентСервер.СравнитьВерсии(ТребуемаяВерсияБиблиотекиБИП,
+ ТекущаяВерсияБиблиотекиБИП);
+
+ ОписаниеКлассификаторовИС = Новый Массив;
+ КлассификаторыКДобавлению = Новый Массив;
+
+ ЗаполнитьОписаниеКлассификаторов(ОписаниеКлассификаторовИС, Истина, Ложь);
+
+ Для Каждого ОписаниеКлассификатора Из ОписаниеКлассификаторовИС Цикл
+ Если ОписаниеКлассификатора.Идентификатор = ИдентификаторКлассификатора Тогда
+ КлассификаторыКДобавлению.Добавить(ОписаниеКлассификатора);
+ Прервать;
+ КонецЕсли;
+ КонецЦикла;
+
+ Если СравнениеВерсийБиблиотекиБИП > 0 Тогда
+ ДобавитьКлассификаторы(КлассификаторыКДобавлению);
+ Иначе
+ МодульРаботаСКлассификаторами = ОбщегоНазначения.ОбщийМодуль("РаботаСКлассификаторами");
+ //@skip-check bsl-legacy-check-static-feature-access-for-unknown-left-part
+ МодульРаботаСКлассификаторами.ДобавитьКлассификаторы(КлассификаторыКДобавлению);
+ КонецЕсли;
+
+ КонецЕсли;
+
Классификаторы = Новый Массив;
- Классификаторы.Добавить(ИдентификаторКлассификатораВидовПродукцииИС());
+ Классификаторы.Добавить(ИдентификаторКлассификатора);
УстановитьПривилегированныйРежим(Истина);
РезультатОбновления = РаботаСКлассификаторами.ОбновитьКлассификаторы(Классификаторы);
@@ -1735,7 +1811,7 @@
КонецПроцедуры
-Функция ПервоначальноеЗаполнениеКлассификаторовВидовПродукции(БезусловноеЗаполнение=Ложь) Экспорт
+Функция ПервоначальноеЗаполнениеКлассификаторовВидовПродукции(БезусловноеЗаполнение=Ложь, ПолнаяЗагрузка=Ложь) Экспорт
РезультатОбновления = ИнициализироватьРезультатыОбновленияКлассификаторовВидовПродукцииИС();
РазделениеВключено = ОбщегоНазначения.РазделениеВключено();
@@ -1746,8 +1822,7 @@
КонецЕсли;
КонецЕсли;
- Идентификатор = ИдентификаторКлассификатораВидовПродукцииИС();
-
+ Идентификатор = ИдентификаторКлассификатораВидовПродукцииИС();
СохраненнаяВерсияКлассификатора = РегистрыСведений.ПоставляемыеДанныеКлассификаторовВидовПродукцииИС.СохраненныеДанныеКлассификаторовВидовПродукцииИС(
Идентификатор);
@@ -1758,8 +1833,15 @@
АдресКлассификаторов = ПоместитьВоВременноеХранилище(ДвоичныеДанныеКлассификаторов);
КонецЕсли;
+ АдресДополнительногоКлассификатора = ДополнительныйМакетОбновленияКлассификатораВидовПродукцииИС();
+ Если АдресДополнительногоКлассификатора <> Неопределено Тогда
+ АдресКлассификаторов = АдресДополнительногоКлассификатора;
+ КонецЕсли;
+
ПараметрыЗагрузки = ПараметрыЗагрузкиКлассификаторовИС();
+ ПараметрыЗагрузки.ПолнаяЗагрузка = ПолнаяЗагрузка;
+
ОбновлениеКлассификаторовВидовПродукцииИС(АдресКлассификаторов, ПараметрыЗагрузки, РезультатОбновления);
Если СохраненнаяВерсияКлассификатора <> Неопределено Тогда
@@ -1824,7 +1906,6 @@
#Область КлассификаторыИС
-
// Идентификаторы классификаторов.
//
// Параметры:
@@ -2188,9 +2269,9 @@
РезультатОбновления);
КонецЕсли;
- ДаннныеОбновленияТоварныхГрупп = ДанныеДляЗагрузки["ProductGroups"];
- Если ДаннныеОбновленияТоварныхГрупп <> Неопределено Тогда
- Справочники.ТоварныеГруппыГИСМТ.ПриЗагрузкеКлассификатора(ДаннныеОбновленияТоварныхГрупп, ПараметрыЗагрузки,
+ ДанныеОбновленияТоварныхГрупп = ДанныеДляЗагрузки["ProductGroups"];
+ Если ДанныеОбновленияТоварныхГрупп <> Неопределено Тогда
+ Справочники.ТоварныеГруппыГИСМТ.ПриЗагрузкеКлассификатора(ДанныеОбновленияТоварныхГрупп, ПараметрыЗагрузки,
РезультатОбновления);
КонецЕсли;
@@ -2311,7 +2392,7 @@
Возврат ОбщегоНазначенияИСКлиентСервер.ИдентификаторКлассификатораВидовПродукцииИС();
-Конецфункции
+КонецФункции
// Параметры загрузки классификаторов ИС.
//
@@ -2327,6 +2408,7 @@
// * ЗагрузкаИзменений - Булево - Признак загрузки изменений
// * КонфликтыОбновления - Соответствие - Соответствие конфликтов обновления
// * РежимОтладки - Булево - Признак режима отладки
+// * ПолнаяЗагрузка - Булево - Обязательное обновление всех элементов справочников
Функция ПараметрыЗагрузкиКлассификаторовИС() Экспорт
ПараметрыЗагрузки = Новый Структура;
@@ -2363,6 +2445,7 @@
ПараметрыЗагрузки.Вставить("Идентификаторы", Идентификаторы);
ПараметрыЗагрузки.Вставить("ЗагрузкаИзменений", Ложь);
+ ПараметрыЗагрузки.Вставить("ПолнаяЗагрузка", Ложь);
ПараметрыЗагрузки.Вставить("КонфликтыОбновления", Новый Соответствие);
ПараметрыЗагрузки.Вставить("РежимОтладки", Ложь );
@@ -2415,7 +2498,10 @@
Если СуществующийОбъектСсылка = Неопределено Тогда
ДальнейшиеДействия.СоздатьЭлемент = Истина;
Иначе
- Если ПараметрыЗагрузки.ЗагрузкаИзменений Тогда
+ Если ПараметрыЗагрузки.ПолнаяЗагрузка Тогда
+ ДальнейшиеДействия.ТребуетсяОбновление = Истина;
+
+ ИначеЕсли ПараметрыЗагрузки.ЗагрузкаИзменений Тогда
Если ХешСумма <> ХешСуммаЗагружаемыхДанных Тогда
Если ХешСумма <> ХешСуммаПоставляемыхДанных Тогда
ДальнейшиеДействия.КоллизияИзменений = Истина;
@@ -2525,6 +2611,10 @@
#КонецОбласти
+Функция ДополнительныйМакетОбновленияКлассификатораВидовПродукцииИС()
+ Возврат Неопределено;
+КонецФункции
+
#КонецОбласти
#Область Блокировки
@@ -3056,7 +3146,7 @@
КонецФункции
-// Записыват вскрытие потребительской упаковки и, при необхоидмости, готовит документ для передачи в ГИС МТ
+// Записывает вскрытие потребительской упаковки и, при необходимости, готовит документ для передачи в ГИС МТ
//
// Параметры:
// ДанныеПодключения - см. РегистрыСведений.ВскрытыеПотребительскиеУпаковкиИС.ИнициализироватьДанныеВскрытияПотребительскойУпаковки
@@ -3214,7 +3304,7 @@
#Область Обмен
-// Получает сертификаты организаций, для предназначены для подписания на сервере.
+// Получает сертификаты организаций, предназначенных для подписания на сервере.
//
// Возвращаемое значение:
// Структура - Структура со свойствами:
@@ -3607,7 +3697,7 @@
КонецФункции
-// Определяет использование в инофрмационной базе обособленных подразделений выделенных на отдельный баланс
+// Определяет использование в информационной базе обособленных подразделений выделенных на отдельный баланс
//
// Возвращаемое значение:
// Булево - Используются подразделения, выделенных на обособленный баланс
diff --git a/src/CommonModules/ОбщегоНазначенияИСВызовСервера/Ext/Module.bsl b/src/CommonModules/ОбщегоНазначенияИСВызовСервера/Ext/Module.bsl
index fd2a918ee..aff3fff30 100644
--- a/src/CommonModules/ОбщегоНазначенияИСВызовСервера/Ext/Module.bsl
+++ b/src/CommonModules/ОбщегоНазначенияИСВызовСервера/Ext/Module.bsl
@@ -292,6 +292,8 @@
ДанныеЭлемента = ОбщегоНазначения.СкопироватьРекурсивно(ДанныеЭлемента);
ДанныеЭлемента.ВидыПродукции.Вставить(Справочники.ВидыПродукцииИС.ПустаяСсылка(), Новый Соответствие());
+ Кеш = Новый Соответствие;
+
Для Каждого КлючИЗначение Из ДанныеЭлемента.ВидыПродукции Цикл
ВидПродукции = КлючИЗначение.Ключ;
@@ -319,10 +321,19 @@
ПараметрыАтрибута.ЭтоОписаниеКоличества);
КонецЕсли;
- ФорматнаяСтрока = СтрШаблон("ПД=%1", ПараметрыАтрибута.Падеж);
- ЗначенияСслонений = ПолучитьСклоненияСтроки(ПредставлениеВидаУпаковки, "Л=ru_RU", ФорматнаяСтрока);
- Если ЗначенияСслонений.Количество() Тогда
- ПредставлениеВидаУпаковки = ЗначенияСслонений[0];
+ КлючКеша = ПредставлениеВидаУпаковки + "|" + ПараметрыАтрибута.Падеж;
+ ЗначениеИзКеша = Кеш[КлючКеша];
+ Если ЗначениеИзКеша <> Неопределено Тогда
+ ПредставлениеВидаУпаковки = ЗначениеИзКеша;
+ Иначе
+ ЗначенияСклонений = ПолучитьСклоненияСтроки(
+ ПредставлениеВидаУпаковки,
+ "Л=ru_RU",
+ СтрШаблон("ПД=%1", ПараметрыАтрибута.Падеж));
+ Если ЗначенияСклонений.Количество() Тогда
+ ПредставлениеВидаУпаковки = ЗначенияСклонений[0];
+ КонецЕсли;
+ Кеш.Вставить(КлючКеша, ПредставлениеВидаУпаковки);
КонецЕсли;
ЗначенияПути = Новый Массив;
@@ -347,29 +358,14 @@
#КонецОбласти
-// см. ОбщегоНазначения.ЗначенияРеквизитовОбъектов
-Функция ЗначенияРеквизитовОбъектов(Ссылки, Знач Реквизиты, ВыбратьРазрешенные = Ложь, Знач КодЯзыка = Неопределено) Экспорт
- Возврат ОбщегоНазначения.ЗначенияРеквизитовОбъектов(Ссылки, Реквизиты, ВыбратьРазрешенные, КодЯзыка);
-КонецФункции
-
-// см. ОбщегоНазначения.ЗначениеРеквизитаОбъектов
-//
-Функция ЗначениеРеквизитаОбъектов(МассивСсылок, ИмяРеквизита, ВыбратьРазрешенные = Ложь) Экспорт
-
- Возврат ОбщегоНазначения.ЗначениеРеквизитаОбъектов(МассивСсылок, ИмяРеквизита, ВыбратьРазрешенные);
-
-КонецФункции
-
-// см. ОбщегоНазначения.ЗначенияРеквизитовОбъекта
-//
-Функция ЗначенияРеквизитовОбъекта(Ссылка, Знач Реквизиты) Экспорт
-
- Возврат ОбщегоНазначения.ЗначенияРеквизитовОбъекта(Ссылка, Реквизиты);
-
-КонецФункции
-
Функция ТребуетсяДоверенностьДляИспользованияСертификата(Сертификат, Организация, ИНН) Экспорт
Возврат ОбщегоНазначенияИС.ТребуетсяДоверенностьДляИспользованияСертификата(Сертификат, Организация, ИНН);
КонецФункции
+// см. РегистрыСведений.МестаОсуществленияДеятельностиИСМП.ИмеютсяПодконтрольныеОбъектыВЕТИС
+//
+Функция ОрганизацияИмеетПодконтрольныеОбъектыВЕТИС(Организация) Экспорт
+ Возврат РегистрыСведений.МестаОсуществленияДеятельностиИСМП.ИмеютсяПодконтрольныеОбъектыВЕТИС(Организация);
+КонецФункции
+
#КонецОбласти
\ No newline at end of file
diff --git a/src/CommonModules/ОбщегоНазначенияИСКлиент/Ext/Module.bsl b/src/CommonModules/ОбщегоНазначенияИСКлиент/Ext/Module.bsl
index 4bfd14fca..b9838c0eb 100644
--- a/src/CommonModules/ОбщегоНазначенияИСКлиент/Ext/Module.bsl
+++ b/src/CommonModules/ОбщегоНазначенияИСКлиент/Ext/Module.bsl
@@ -370,7 +370,7 @@
КонецПроцедуры
-Процедура СкопироватьШтрихКодВБуферОбмена(ЭлементФормы, Знач Штрихкод) Экспорт
+Процедура СкопироватьШтрихкодВБуферОбмена(ЭлементФормы, Знач Штрихкод) Экспорт
Попытка
HTMLДокумент = ЭлементФормы.document;
diff --git a/src/CommonModules/ОбщегоНазначенияИСКлиентСервер/Ext/Module.bsl b/src/CommonModules/ОбщегоНазначенияИСКлиентСервер/Ext/Module.bsl
index 5266ab8b4..79905640d 100644
--- a/src/CommonModules/ОбщегоНазначенияИСКлиентСервер/Ext/Module.bsl
+++ b/src/CommonModules/ОбщегоНазначенияИСКлиентСервер/Ext/Module.bsl
@@ -224,7 +224,7 @@
Возврат "ClassifierOfProductTypeSettingsBGosIS";
-Конецфункции
+КонецФункции
// Конвертирует двоичные данные в Base64
//
@@ -360,6 +360,43 @@
#Область СлужебныйПрограммныйИнтерфейс
+// Возвращает значение из двухуровневого кэша или Неопределено, если значение отсутствует.
+//
+// Параметры:
+// ГлобальныйКеш - Соответствие из Произвольный - хранилище локальных кэшей
+// Имя - Строка - ключ для получения локального кэша
+// Значение - Произвольный - ключ для поиска значения в локальном кэше
+// ЛокальныйКеш - Соответствие из Произвольный - выходной параметр, содержит локальный кэш для указанного имени
+//
+// Возвращаемое значение:
+// Произвольный - найденное значение из кэша
+// - Неопределено - если значение или глобальный кэш отсутствуют
+Функция ПрочитатьКеш(ГлобальныйКеш, Имя, Значение, ЛокальныйКеш) Экспорт
+
+ Если ГлобальныйКеш <> Неопределено Тогда
+
+ Если ТипЗнч(Значение) = Тип("Массив")
+ Или ТипЗнч(Значение) = Тип("ФиксированныйМассив") Тогда
+ Возврат Неопределено;
+ КонецЕсли;
+
+ ЛокальныйКеш = ГлобальныйКеш[Имя];
+ Если ЛокальныйКеш = Неопределено Тогда
+ ЛокальныйКеш = Новый Соответствие;
+ ГлобальныйКеш.Вставить(Имя, ЛокальныйКеш);
+ КонецЕсли;
+
+ Результат = ЛокальныйКеш[Значение];
+ Если Результат <> Неопределено Тогда
+ Возврат Результат;
+ КонецЕсли;
+
+ КонецЕсли;
+
+ Возврат Неопределено;
+
+КонецФункции
+
#Область РаботаСДатами
Функция ДатаИзСтрокиUNIX(Знач Значение, Делитель = 1000, ПриводитьКМестномуВремени = Истина) Экспорт
diff --git a/src/CommonModules/ОбщегоНазначенияИСКлиентСерверПовтИсп/Ext/Module.bsl b/src/CommonModules/ОбщегоНазначенияИСКлиентСерверПовтИсп/Ext/Module.bsl
index 0cf6028a3..e79740bf1 100644
--- a/src/CommonModules/ОбщегоНазначенияИСКлиентСерверПовтИсп/Ext/Module.bsl
+++ b/src/CommonModules/ОбщегоНазначенияИСКлиентСерверПовтИсп/Ext/Module.bsl
@@ -74,6 +74,16 @@
КонецФункции
+// Создает и возвращает новый глобальный кэш на основе соответствия.
+//
+// Возвращаемое значение:
+// Соответствие из Произвольный - созданный пустой объект для хранения данных в глобальном кэше
+Функция ГлобальныйКеш() Экспорт
+
+ Возврат Новый Соответствие;
+
+КонецФункции
+
#Область ЧастичноеВыбытие
// Возвращает признак возможности для вида продукции участвовать в частичном выбытии.
@@ -188,4 +198,8 @@
#КонецОбласти
+Функция ОрганизацияИмеетПодконтрольныеОбъектыВЕТИС(Организация) Экспорт
+ Возврат ОбщегоНазначенияИСВызовСервера.ОрганизацияИмеетПодконтрольныеОбъектыВЕТИС(Организация);
+КонецФункции
+
#КонецОбласти
\ No newline at end of file
diff --git a/src/CommonModules/ОбщегоНазначенияИСМП/Ext/Module.bsl b/src/CommonModules/ОбщегоНазначенияИСМП/Ext/Module.bsl
index a62a8edce..f273adb12 100644
--- a/src/CommonModules/ОбщегоНазначенияИСМП/Ext/Module.bsl
+++ b/src/CommonModules/ОбщегоНазначенияИСМП/Ext/Module.bsl
@@ -1344,7 +1344,7 @@
КонецФункции
-// Длительная операция получения товарных групп по организации. При необхоидмости загружает классификатор видов продукции ИС.
+// Длительная операция получения товарных групп по организации. При необходимости загружает классификатор видов продукции ИС.
//
// Параметры:
// ПараметрыФоновогоЗадания - Структура - Параметры запуска фонового задания
diff --git a/src/CommonModules/ОбщегоНазначенияИСМПКлиентСервер/Ext/Module.bsl b/src/CommonModules/ОбщегоНазначенияИСМПКлиентСервер/Ext/Module.bsl
index 7953c9dd3..e9121c5a1 100644
--- a/src/CommonModules/ОбщегоНазначенияИСМПКлиентСервер/Ext/Module.bsl
+++ b/src/CommonModules/ОбщегоНазначенияИСМПКлиентСервер/Ext/Module.bsl
@@ -55,7 +55,8 @@
// Булево - Продукция подлежит обязательной онлайн проверке перед розничной продажей
Функция ИспользуетсяОнлайнПроверкаПередРозничнойПродажей(ПараметрыСканирования) Экспорт
- Если Не ПараметрыСканирования.ТребуетсяПроверкаСредствамиККТ Тогда
+ Если Не ПараметрыСканирования.ТребуетсяПроверкаСредствамиККТ
+ И Не ПараметрыСканирования.ЭтоОблачнаяККТИСМП Тогда
Возврат Ложь;
КонецЕсли;
ВидОперации = ПараметрыСканирования.ВидОперацииИСМП;
diff --git a/src/CommonModules/ОбщегоНазначенияИСМПКлиентСерверПовтИсп/Ext/Module.bsl b/src/CommonModules/ОбщегоНазначенияИСМПКлиентСерверПовтИсп/Ext/Module.bsl
index d7a86ba5f..30e36cc94 100644
--- a/src/CommonModules/ОбщегоНазначенияИСМПКлиентСерверПовтИсп/Ext/Module.bsl
+++ b/src/CommonModules/ОбщегоНазначенияИСМПКлиентСерверПовтИсп/Ext/Module.bsl
@@ -40,6 +40,20 @@
КонецФункции
+// Преобразовывает текстовое представление товарной группы в значение вида продукции и наоборот.
+//
+// Параметры:
+// ЗначениеПоиска - СправочникСсылка.ТоварныеГруппыГИСМТ, СправочникСсылка.ВидыПродукцииИС, Строка - значение для перекодировки
+// ДанныеДляУточнения - см. ДанныеДляУточненияТоварнойГруппы
+//
+// Возвращаемое значение:
+// СправочникСсылка.ВидыПродукцииИС, Строка - Имя товарной группы.
+Функция ТоварнаяГруппа(ЗначениеПоиска, ДанныеДляУточнения = Неопределено) Экспорт
+
+ Возврат ИнтерфейсИСМПОбщегоНазначенияКлиентСервер.ТоварнаяГруппа(ЗначениеПоиска, ДанныеДляУточнения);
+
+КонецФункции
+
#КонецОбласти
#Область СлужебныйПрограммныйИнтерфейс
diff --git a/src/CommonModules/ОбщегоНазначенияИСМППовтИсп/Ext/Module.bsl b/src/CommonModules/ОбщегоНазначенияИСМППовтИсп/Ext/Module.bsl
index 673d88631..b881dd0e6 100644
--- a/src/CommonModules/ОбщегоНазначенияИСМППовтИсп/Ext/Module.bsl
+++ b/src/CommonModules/ОбщегоНазначенияИСМППовтИсп/Ext/Module.bsl
@@ -136,7 +136,8 @@
Или ВидОперации = Перечисления.ВидыОперацийИСМП.ВозвратВОборотПриРозничнойРеализации Тогда
ДействуетКонтроль = ДействуетУведомительныйРежимПоВидуПродукции(ВидПродукции, НаДату);
ИначеЕсли ВидОперации = Перечисления.ВидыОперацийИСМП.ОтгрузкаПродажа
- Или ВидОперации = Перечисления.ВидыОперацийИСМП.ВозвратВОборот Тогда
+ Или ВидОперации = Перечисления.ВидыОперацийИСМП.ВозвратВОборот
+ Или ВидОперации = Перечисления.ВидыОперацийИСМП.Приемка Тогда
ДействуетКонтроль = ДействуетКонтрольПриПродажеОптомПоштучно(ВидПродукции, НаДату) Или ДействуетКонтрольПриПродажеОптомПоОСУ(ВидПродукции, НаДату);
Иначе
ДействуетКонтроль = Истина;
diff --git a/src/CommonModules/ОбщегоНазначенияУТВызовСервера/Ext/Module.bsl b/src/CommonModules/ОбщегоНазначенияУТВызовСервера/Ext/Module.bsl
index 5306bf41e..15d56ce7a 100644
--- a/src/CommonModules/ОбщегоНазначенияУТВызовСервера/Ext/Module.bsl
+++ b/src/CommonModules/ОбщегоНазначенияУТВызовСервера/Ext/Module.bsl
@@ -893,6 +893,7 @@
Параметры.Вставить("ВерсияДанных", ОбновлениеИнформационнойБазыСлужебный.ВерсияИБ(Метаданные.Имя, Истина));
Параметры.Вставить("ВерсияМетаданных", СокрЛП(Метаданные.Версия));
Параметры.Вставить("ЗадатьВопросОПереходеНаОнлайнВзаиморасчеты", Ложь);
+ Параметры.Вставить("ОткрытьУведомлениеОбУстаревшейФункциональности", Ложь);
Если ОбщегоНазначения.РазделениеВключено()
И НЕ ОбщегоНазначения.ДоступноИспользованиеРазделенныхДанных() Тогда
@@ -906,6 +907,13 @@
И МожноСпрашиватьОПереходе;
КонецЕсли;
+ Если НЕ ОбщегоНазначения.РазделениеВключено() Тогда
+ Параметры.ОткрытьУведомлениеОбУстаревшейФункциональности =
+ Пользователи.ЭтоПолноправныйПользователь()
+ И Константы.УведомитьОбУстаревшейФункциональности.Получить()
+ И Обработки.ГотовностьКПереходу26.ПроверитьИспользованиеУстаревшейФункциональности();
+ КонецЕсли;
+
Параметры.Вставить("СлужебныеПодсистемы_ОбъектыУТКАУП_ФормаНачальнойНастройкиПрограммы",
ОткрытиеФормПриНачалеРаботыСистемыВызовСервера.ФормаНачальнойНастройкиПрограммы());
diff --git a/src/CommonModules/ОбщегоНазначенияУТКлиент/Ext/Module.bsl b/src/CommonModules/ОбщегоНазначенияУТКлиент/Ext/Module.bsl
index 61323268f..8be2febb2 100644
--- a/src/CommonModules/ОбщегоНазначенияУТКлиент/Ext/Module.bsl
+++ b/src/CommonModules/ОбщегоНазначенияУТКлиент/Ext/Module.bsl
@@ -1201,6 +1201,11 @@
Процедура ПриНачалеРаботыСистемы(Параметры) Экспорт
ПараметрыРаботыКлиента = СтандартныеПодсистемыКлиент.ПараметрыРаботыКлиентаПриЗапуске();
+
+ Если ПараметрыРаботыКлиента.ОткрытьУведомлениеОбУстаревшейФункциональности Тогда
+ ОткрытьФорму("Обработка.ГотовностьКПереходу26.Форма.ФормаУведомления26",,,,,,, РежимОткрытияОкнаФормы.БлокироватьОкноВладельца);
+ КонецЕсли;
+
Если ПараметрыРаботыКлиента.ЗадатьВопросОПереходеНаОнлайнВзаиморасчеты Тогда
Кнопки = Новый СписокЗначений;
Кнопки.Добавить(КодВозвратаДиалога.Да, НСтр("ru = 'Да'"));
diff --git a/src/CommonModules/ОжиданиеОперацийБЭДКлиент/Ext/Module.bsl b/src/CommonModules/ОжиданиеОперацийБЭДКлиент/Ext/Module.bsl
index a86100200..0ddbebc68 100644
--- a/src/CommonModules/ОжиданиеОперацийБЭДКлиент/Ext/Module.bsl
+++ b/src/CommonModules/ОжиданиеОперацийБЭДКлиент/Ext/Module.bsl
@@ -10,7 +10,6 @@
// Структура:
// * ПараметрыОжиданияОперации - см. ОжиданиеОперацийБЭДСлужебныйКлиентСервер.НовыеПараметры
// * ФормаВладелец - Неопределено,ФормаКлиентскогоПриложения
-// * ОперацияВыполняется - Булево
// * ВыполняетсяИнтерактивноеДействие - Булево
// * ИдентификаторОперации - УникальныйИдентификатор
// * ОбработчикПрерывания - Неопределено,ОписаниеОповещения
@@ -24,18 +23,22 @@
Результат = Новый Структура;
Результат.Вставить("ПараметрыОжиданияОперации", ПараметрыОжиданияОперации);
Результат.Вставить("ФормаВладелец", Неопределено);
- Результат.Вставить("ОперацияВыполняется", Ложь);
Результат.Вставить("ВыполняетсяИнтерактивноеДействие", Ложь);
Результат.Вставить("ИдентификаторОперации", Новый УникальныйИдентификатор);
Результат.Вставить("ОбработчикПрерывания", Неопределено);
- Результат.Вставить("ОбработчикОбновленияПрогресса", Новый ОписаниеОповещения("ОбновлениеПрогресса",
- ОжиданиеОперацийБЭДСлужебныйКлиент, Результат));
- Результат.Вставить("ОбработчикПередИнтерактивнымДействием", Новый ОписаниеОповещения("ПередИнтерактивнымДействием",
- ОжиданиеОперацийБЭДСлужебныйКлиент, Результат));
- Результат.Вставить("ОбработчикПослеИнтерактивногоДействия", Новый ОписаниеОповещения("ПослеИнтерактивногоДействия",
- ОжиданиеОперацийБЭДСлужебныйКлиент, Результат));
Результат.Вставить("ЗавершениеРаботыПриложения", Ложь);
+ ОповещениеОбновлениеПрогресса = Новый ОписаниеОповещения("ОбновлениеПрогресса",
+ ОжиданиеОперацийБЭДСлужебныйКлиент);
+ ОповещениеПередИнтерактивнымДействием = Новый ОписаниеОповещения("ПередИнтерактивнымДействием",
+ ОжиданиеОперацийБЭДСлужебныйКлиент);
+ ОповещениеПослеИнтерактивногоДействия = Новый ОписаниеОповещения("ПослеИнтерактивногоДействия",
+ ОжиданиеОперацийБЭДСлужебныйКлиент);
+
+ Результат.Вставить("ОбработчикОбновленияПрогресса", ОповещениеОбновлениеПрогресса);
+ Результат.Вставить("ОбработчикПередИнтерактивнымДействием", ОповещениеПередИнтерактивнымДействием);
+ Результат.Вставить("ОбработчикПослеИнтерактивногоДействия", ОповещениеПослеИнтерактивногоДействия);
+
Возврат Результат;
КонецФункции
@@ -47,19 +50,6 @@
КонецФункции
-// Отмечает, что началось выполнение операции. Требуется для того, чтобы модуль, вызывающий асинхронную операцию, смог
-// принять решение, открывать форму ожидания или нет.
-//
-// Параметры:
-// КонтекстОжиданияОперации - см. НовыйКонтекст
-Процедура ОтметитьНачалоВыполнения(КонтекстОжиданияОперации) Экспорт
-
- Если КонтекстОжиданияОперации <> Неопределено Тогда
- КонтекстОжиданияОперации.ОперацияВыполняется = Истина;
- КонецЕсли;
-
-КонецПроцедуры
-
// Позволяет асинхронной операции установить обработчик, который будет вызван при отмене операции из интерфейса.
//
// Параметры:
@@ -107,18 +97,6 @@
КонецПроцедуры
-// Определяет, выполняется ли асинхронная операция.
-//
-// Параметры:
-// КонтекстОжиданияОперации - см. НовыйКонтекст.
-// Возвращаемое значение:
-// Булево - Истина, если операция выполняется.
-Функция ОперацияВыполняется(КонтекстОжиданияОперации) Экспорт
-
- Возврат КонтекстОжиданияОперации.ОперацияВыполняется;
-
-КонецФункции
-
#КонецОбласти
#Область Действия
@@ -151,34 +129,36 @@
// Для использования асинхронной операцией.
//
// Параметры:
-// ПараметрыОжиданияОперации - см. НовыеПараметры.
-// КонтекстОжиданияОперации - см. НовыйКонтекст.
+// ПараметрыОжиданияОперации - см. НовыеПараметры
+// КонтекстОжиданияОперации - см. НовыйКонтекст
Процедура ОбновитьПрогресс(ПараметрыОжиданияОперации, КонтекстОжиданияОперации) Экспорт
КонтекстОжиданияОперации.ПараметрыОжиданияОперации = ПараметрыОжиданияОперации;
- ВыполнитьОбработкуОповещения(КонтекстОжиданияОперации.ОбработчикОбновленияПрогресса, ПараметрыОжиданияОперации);
+ ВыполнитьОбработкуОповещения(КонтекстОжиданияОперации.ОбработчикОбновленияПрогресса, КонтекстОжиданияОперации);
КонецПроцедуры
// Оповещает интерфейс ожидания выполнения операции о начале выполнения интерактивных действий в асинхронной операции.
//
// Параметры:
-// КонтекстОжиданияОперации - см. НовыйКонтекст.
+// КонтекстОжиданияОперации - см. НовыйКонтекст
Процедура НачатьИнтерактивноеДействие(КонтекстОжиданияОперации) Экспорт
КонтекстОжиданияОперации.ВыполняетсяИнтерактивноеДействие = Истина;
- ВыполнитьОбработкуОповещения(КонтекстОжиданияОперации.ОбработчикПередИнтерактивнымДействием);
+ ВыполнитьОбработкуОповещения(КонтекстОжиданияОперации.ОбработчикПередИнтерактивнымДействием,
+ КонтекстОжиданияОперации);
КонецПроцедуры
// Оповещает интерфейс ожидания выполнения операции об окончании выполнения интерактивных действий в асинхронной операции.
//
// Параметры:
-// КонтекстОжиданияОперации - см. НовыйКонтекст.
+// КонтекстОжиданияОперации - см. НовыйКонтекст
Процедура ЗакончитьИнтерактивноеДействие(КонтекстОжиданияОперации) Экспорт
КонтекстОжиданияОперации.ВыполняетсяИнтерактивноеДействие = Ложь;
- ВыполнитьОбработкуОповещения(КонтекстОжиданияОперации.ОбработчикПослеИнтерактивногоДействия);
+ ВыполнитьОбработкуОповещения(КонтекстОжиданияОперации.ОбработчикПослеИнтерактивногоДействия,
+ КонтекстОжиданияОперации);
КонецПроцедуры
@@ -188,10 +168,22 @@
// КонтекстОжиданияОперации - см. НовыйКонтекст.
Процедура ЗакрытьФормуОжидания(КонтекстОжиданияОперации) Экспорт
- Оповестить(ОжиданиеОперацийБЭДСлужебныйКлиентСервер.ИмяСобытияЗакрытияФормы(), КонтекстОжиданияОперации);
+ ПараметрыОповещения = ОжиданиеОперацийБЭДСлужебныйКлиентСервер.НовыеПараметрыОповещенияСобытияЗакрытияФормы();
+ ПараметрыОповещения.ИдентификаторОперации = КонтекстОжиданияОперации.ИдентификаторОперации;
+ Оповестить(ОжиданиеОперацийБЭДСлужебныйКлиентСервер.ИмяСобытияЗакрытияФормы(), ПараметрыОповещения);
КонецПроцедуры
+// Параметры:
+// ИдентификаторОперации - УникальныйИдентификатор
+Процедура ЗакрытьФормуОжиданияПоИдентификаторуОперации(ИдентификаторОперации) Экспорт
+
+ ПараметрыОповещения = ОжиданиеОперацийБЭДСлужебныйКлиентСервер.НовыеПараметрыОповещенияСобытияЗакрытияФормы();
+ ПараметрыОповещения.ИдентификаторОперации = ИдентификаторОперации;
+ Оповестить(ОжиданиеОперацийБЭДСлужебныйКлиентСервер.ИмяСобытияЗакрытияФормы(), ПараметрыОповещения);
+
+КонецПроцедуры
+
#КонецОбласти
#Область СтарыйИнтерфейсОжидания
diff --git a/src/CommonModules/ОжиданиеОперацийБЭДСлужебныйКлиент/Ext/Module.bsl b/src/CommonModules/ОжиданиеОперацийБЭДСлужебныйКлиент/Ext/Module.bsl
index 6da03374b..aae0ed3c5 100644
--- a/src/CommonModules/ОжиданиеОперацийБЭДСлужебныйКлиент/Ext/Module.bsl
+++ b/src/CommonModules/ОжиданиеОперацийБЭДСлужебныйКлиент/Ext/Module.bsl
@@ -12,28 +12,29 @@
КонецПроцедуры
-Процедура ОбновлениеПрогресса(ПараметрыОжиданияОперации, КонтекстОжиданияОперации) Экспорт
-
- Прогресс = Неопределено;
- ПараметрыОжиданияОперации.Свойство("Прогресс", Прогресс);
-
- Если ТипЗнч(Прогресс) = Тип("Структура")
- И Прогресс.Свойство("Процент") Тогда
- КонтекстОжиданияОперации.ПараметрыОжиданияОперации.ПроцентПрогресса = Прогресс.Процент;
- КонецЕсли;
+// Параметры:
+// КонтекстОжиданияОперации - См. ОжиданиеОперацийБЭДКлиент.НовыйКонтекст
+// ДополнительныеПараметры - Неопределено
+Процедура ОбновлениеПрогресса(КонтекстОжиданияОперации, ДополнительныеПараметры) Экспорт
Оповестить(ОжиданиеОперацийБЭДСлужебныйКлиентСервер.ИмяСобытияОбновленияПрогресса(), КонтекстОжиданияОперации);
КонецПроцедуры
-Процедура ПередИнтерактивнымДействием(Результат, КонтекстОжиданияОперации) Экспорт
-
+// Параметры:
+// КонтекстОжиданияОперации - См. ОжиданиеОперацийБЭДКлиент.НовыйКонтекст
+// ДополнительныеПараметры - Неопределено
+Процедура ПередИнтерактивнымДействием(КонтекстОжиданияОперации, ДополнительныеПараметры) Экспорт
+
Оповестить(ОжиданиеОперацийБЭДСлужебныйКлиентСервер.ИмяСобытияПередИнтерактивнымДействием(),
КонтекстОжиданияОперации);
КонецПроцедуры
-Процедура ПослеИнтерактивногоДействия(Результат, КонтекстОжиданияОперации) Экспорт
+// Параметры:
+// КонтекстОжиданияОперации - См. ОжиданиеОперацийБЭДКлиент.НовыйКонтекст
+// ДополнительныеПараметры - Неопределено
+Процедура ПослеИнтерактивногоДействия(КонтекстОжиданияОперации, ДополнительныеПараметры) Экспорт
ОжиданиеОперацийБЭДКлиент.ОткрытьФормуОжидания(КонтекстОжиданияОперации.ФормаВладелец, КонтекстОжиданияОперации);
diff --git a/src/CommonModules/ОжиданиеОперацийБЭДСлужебныйКлиентСервер/Ext/Module.bsl b/src/CommonModules/ОжиданиеОперацийБЭДСлужебныйКлиентСервер/Ext/Module.bsl
index 692efa82d..a6b551f16 100644
--- a/src/CommonModules/ОжиданиеОперацийБЭДСлужебныйКлиентСервер/Ext/Module.bsl
+++ b/src/CommonModules/ОжиданиеОперацийБЭДСлужебныйКлиентСервер/Ext/Module.bsl
@@ -41,4 +41,15 @@
КонецФункции
+// Возвращаемое значение:
+// Структура:
+// * ИдентификаторОперации - Неопределено,УникальныйИдентификатор
+Функция НовыеПараметрыОповещенияСобытияЗакрытияФормы() Экспорт
+
+ Результат = Новый Структура;
+ Результат.Вставить("ИдентификаторОперации", Неопределено);
+ Возврат Результат;
+
+КонецФункции
+
#КонецОбласти
\ No newline at end of file
diff --git a/src/CommonModules/ОперативныеВзаиморасчетыСервер/Ext/Module.bsl b/src/CommonModules/ОперативныеВзаиморасчетыСервер/Ext/Module.bsl
index 40982d690..357899bf1 100644
--- a/src/CommonModules/ОперативныеВзаиморасчетыСервер/Ext/Module.bsl
+++ b/src/CommonModules/ОперативныеВзаиморасчетыСервер/Ext/Module.bsl
@@ -469,7 +469,9 @@
НовСтр.Просуммировано = ЛОЖЬ;
КонецЕсли;
Сальдо = Сальдо + СтрокаРасчетов.Сумма;
- ИначеЕсли НЕ СтрокаРасчетов.ЭтоОплата Тогда
+ ИначеЕсли НЕ СтрокаРасчетов.ЭтоОплата
+ // Реализация В пути не должна сторнировать нераспределенный аванс
+ И НЕ СтрокаРасчетов.ЭтоРеализацияВПути Тогда
Если Сальдо > 0 Тогда
СуммаДвижения = ?(Сальдо - СтрокаРасчетов.Сумма >= 0,СтрокаРасчетов.Сумма, Сальдо);
НовСтр = ДвиженияПредоплатыДляСуммирования.Добавить();
@@ -1576,7 +1578,7 @@
ТекущиеПеременные.ТаблицаРасчетовПоСрокам.Индексы.Добавить("Регистратор");
Если ГлобальныеПеременные.ЗаписыватьИзменения Тогда
- ТаблицаРегистраторов = ТаблицаСвободныхРегистраторовРасчета(ТекущиеПеременные);
+ ТаблицаРегистраторов = ТаблицаСвободныхРегистраторовРасчета(ТекущиеПеременные, ГлобальныеПеременные);
КонецЕсли;
Если НЕ ГлобальныеПеременные.ТолькоПлановыеРасчеты И ГлобальныеПеременные.ЗаписыватьИзменения Тогда
@@ -2258,6 +2260,7 @@
// * Валюта - СправочникСсылка.Валюты - Валюта взаиморасчетов.
// * ЭтоРасчетыСКлиентами - Булево - это расчеты с клиентами, а не с поставщиками.
// * Организация - Неопределено, СправочникСсылка.Организации - Организация расчета.
+// ГлобальныеПеременные - Структура - Может содержать информацию о полных регистраторах расчетов, если такие имеются.
//
// Возвращаемое значение:
// ТаблицаЗначений - таблица со следующими колонками:
@@ -2266,7 +2269,7 @@
// * ТребуетсяОчистка - Булево - У данного документа есть движения в переданной таблице.
//
//
-Функция ТаблицаСвободныхРегистраторовРасчета(ТекущиеПеременные)
+Функция ТаблицаСвободныхРегистраторовРасчета(ТекущиеПеременные, ГлобальныеПеременные)
Если ТекущиеПеременные.ЭтоРасчетыСКлиентами Тогда
ТаблицаРасчетыПоСрокам = "РасчетыСКлиентамиПоСрокам";
@@ -2288,8 +2291,8 @@
ПустойРегистраторРасчетов = Документы.РегистраторРасчетов.ПустаяСсылка();
- Если ОбщегоНазначенияКлиентСервер.ЕстьРеквизитИлиСвойствоОбъекта(ТекущиеПеременные,ТаблицаРасчетыПоСрокам + "Регистраторы") Тогда
- СписокПолныхРегистраторовРасчетыПоСрокам = ОбщегоНазначения.СкопироватьРекурсивно(ТекущиеПеременные[ТаблицаРасчетыПоСрокам + "Регистраторы"]);
+ Если ОбщегоНазначенияКлиентСервер.ЕстьРеквизитИлиСвойствоОбъекта(ГлобальныеПеременные,ТаблицаРасчетыПоСрокам + "Регистраторы") Тогда
+ СписокПолныхРегистраторовРасчетыПоСрокам = ОбщегоНазначения.СкопироватьРекурсивно(ГлобальныеПеременные[ТаблицаРасчетыПоСрокам + "Регистраторы"]);
Иначе
СписокПолныхРегистраторовРасчетыПоСрокам = Новый Массив;
КонецЕсли;
@@ -2299,15 +2302,15 @@
СписокПолныхРегистраторовПоТаблицам = Новый Массив;
- Если ОбщегоНазначенияКлиентСервер.ЕстьРеквизитИлиСвойствоОбъекта(ТекущиеПеременные, ТаблицаРасчетыПланОплат + "Регистраторы") Тогда
- СписокПолныхРегистраторовРасчетыПланОплат = ОбщегоНазначения.СкопироватьРекурсивно(ТекущиеПеременные[ТаблицаРасчетыПланОплат + "Регистраторы"]);
+ Если ОбщегоНазначенияКлиентСервер.ЕстьРеквизитИлиСвойствоОбъекта(ГлобальныеПеременные, ТаблицаРасчетыПланОплат + "Регистраторы") Тогда
+ СписокПолныхРегистраторовРасчетыПланОплат = ОбщегоНазначения.СкопироватьРекурсивно(ГлобальныеПеременные[ТаблицаРасчетыПланОплат + "Регистраторы"]);
Иначе
СписокПолныхРегистраторовРасчетыПланОплат = Новый Массив;
КонецЕсли;
СписокПолныхРегистраторовРасчетыПланОплат.Добавить(ПустойРегистраторРасчетов);
- Если ОбщегоНазначенияКлиентСервер.ЕстьРеквизитИлиСвойствоОбъекта(ТекущиеПеременные, ТаблицаРасчетыПланОтгрузокПоставок + "Регистраторы") Тогда
- СписокПолныхРегистраторовРасчетыПланОтгрузокПоставок = ОбщегоНазначения.СкопироватьРекурсивно(ТекущиеПеременные[ТаблицаРасчетыПланОтгрузокПоставок + "Регистраторы"]);
+ Если ОбщегоНазначенияКлиентСервер.ЕстьРеквизитИлиСвойствоОбъекта(ГлобальныеПеременные, ТаблицаРасчетыПланОтгрузокПоставок + "Регистраторы") Тогда
+ СписокПолныхРегистраторовРасчетыПланОтгрузокПоставок = ОбщегоНазначения.СкопироватьРекурсивно(ГлобальныеПеременные[ТаблицаРасчетыПланОтгрузокПоставок + "Регистраторы"]);
Иначе
СписокПолныхРегистраторовРасчетыПланОтгрузокПоставок = Новый Массив;
КонецЕсли;
@@ -4160,7 +4163,16 @@
| ИЛИ ВложенныйЗапрос.Регистратор ССЫЛКА Документ.ПриходныйКассовыйОрдер)
| ТОГДА ИСТИНА
| ИНАЧЕ ЛОЖЬ
- | КОНЕЦ КАК ЭтоВозвратАванса
+ | КОНЕЦ КАК ЭтоВозвратАванса,
+ | ВЫБОР
+ | КОГДА ВтПараметрыРасчета.ПараметрЭтоРасчетыСКлиентами И НЕ ВложенныйЗапрос.ЭтоОплата
+ | И ВложенныйЗапрос.Регистратор ССЫЛКА Документ.РеализацияТоваровУслуг
+ | ТОГДА ВЫРАЗИТЬ(ВложенныйЗапрос.Регистратор КАК Документ.РеализацияТоваровУслуг).Статус = ЗНАЧЕНИЕ(Перечисление.СтатусыРеализацийТоваровУслуг.ВПути)
+ | КОГДА ВтПараметрыРасчета.ПараметрЭтоРасчетыСКлиентами И НЕ ВложенныйЗапрос.ЭтоОплата
+ | И ВложенныйЗапрос.Регистратор ССЫЛКА Документ.РеализацияУслугПрочихАктивов
+ | ТОГДА ВЫРАЗИТЬ(ВложенныйЗапрос.Регистратор КАК Документ.РеализацияУслугПрочихАктивов).Статус = ЗНАЧЕНИЕ(Перечисление.СтатусыРеализацийТоваровУслуг.ВПути)
+ | ИНАЧЕ ЛОЖЬ
+ | КОНЕЦ КАК ЭтоРеализацияВПути
|ИЗ (
| //Отгрузки и оплаты без объекта расчетов источника
| ВЫБРАТЬ
@@ -4452,6 +4464,15 @@
| ИЛИ ВложенныйЗапрос.Регистратор ССЫЛКА Документ.ПриходныйКассовыйОрдер)
| ТОГДА ИСТИНА
| ИНАЧЕ ЛОЖЬ
+ | КОНЕЦ,
+ | ВЫБОР
+ | КОГДА ВтПараметрыРасчета.ПараметрЭтоРасчетыСКлиентами И НЕ ВложенныйЗапрос.ЭтоОплата
+ | И ВложенныйЗапрос.Регистратор ССЫЛКА Документ.РеализацияТоваровУслуг
+ | ТОГДА ВЫРАЗИТЬ(ВложенныйЗапрос.Регистратор КАК Документ.РеализацияТоваровУслуг).Статус = ЗНАЧЕНИЕ(Перечисление.СтатусыРеализацийТоваровУслуг.ВПути)
+ | КОГДА ВтПараметрыРасчета.ПараметрЭтоРасчетыСКлиентами И НЕ ВложенныйЗапрос.ЭтоОплата
+ | И ВложенныйЗапрос.Регистратор ССЫЛКА Документ.РеализацияУслугПрочихАктивов
+ | ТОГДА ВЫРАЗИТЬ(ВложенныйЗапрос.Регистратор КАК Документ.РеализацияУслугПрочихАктивов).Статус = ЗНАЧЕНИЕ(Перечисление.СтатусыРеализацийТоваровУслуг.ВПути)
+ | ИНАЧЕ ЛОЖЬ
| КОНЕЦ
|ИМЕЮЩИЕ
| СУММА(ВложенныйЗапрос.Сумма) > 0
@@ -7056,7 +7077,7 @@
СтруктураПараметровРегистраторов.Вставить("Организация", Отбор.Организация);
СтруктураПараметровРегистраторов.Вставить("ЭтоРасчетыСКлиентами", ЭтоРасчетыСКлиентами);
- ТаблицаРегистраторов = ТаблицаСвободныхРегистраторовРасчета(СтруктураПараметровРегистраторов);
+ ТаблицаРегистраторов = ТаблицаСвободныхРегистраторовРасчета(СтруктураПараметровРегистраторов, Новый Структура);
ПодготовитьДанныеДляЗаписи(СтруктураПараметровРегистраторов, ТаблицаДетальныхЗаписей, НаборЗаписей, ТаблицаРегистраторов);
ЗаписатьПорционно(СтруктураПараметровРегистраторов, ТаблицаДетальныхЗаписей, НаборЗаписей);
@@ -9397,6 +9418,7 @@
| ВложенныйЗапрос.АналитикаУчетаПоПартнерам КАК АналитикаУчетаПоПартнерам,
| ВложенныйЗапрос.ОбъектРасчетов КАК ОбъектРасчетов,
| ВложенныйЗапрос.Валюта КАК Валюта,
+ | МАКСИМУМ(ВложенныйЗапрос.ПоДаннымОбъектаРасчетовИсточника) КАК ПоДаннымОбъектаРасчетовИсточника,
| МИНИМУМ(ВложенныйЗапрос.ДатаНачалаПересчета) КАК ДатаНачалаПересчета,
| МИНИМУМ(ВложенныйЗапрос.ПериодКонтроляИзмененийИСозданияЗаданий) КАК ПериодКонтроляИзмененийИСозданияЗаданий
|ИЗ
@@ -9417,6 +9439,7 @@
| Изменения.АналитикаУчетаПоПартнерам КАК АналитикаУчетаПоПартнерам,
| Изменения.ОбъектРасчетов КАК ОбъектРасчетов,
| Изменения.Валюта КАК Валюта,
+ | Изменения.ПоДаннымОбъектаРасчетовИсточника КАК ПоДаннымОбъектаРасчетовИсточника,
| НАЧАЛОПЕРИОДА(
| ВЫБОР КОГДА Изменения.Сумма = 0
| И (Изменения.КОплате <> 0 ИЛИ Изменения.КОтгрузке <> 0)
@@ -9455,6 +9478,7 @@
| Изменения.АналитикаУчетаПоПартнерам КАК АналитикаУчетаПоПартнерам,
| Изменения.ОбъектРасчетов КАК ОбъектРасчетов,
| Изменения.Валюта КАК Валюта,
+ | Изменения.ПоДаннымОбъектаРасчетовИсточника КАК ПоДаннымОбъектаРасчетовИсточника,
| НАЧАЛОПЕРИОДА(
| ВЫБОР КОГДА Изменения.Сумма = 0
| И (Изменения.КОплате <> 0 ИЛИ Изменения.КПоступлению <> 0)
diff --git a/src/CommonModules/ОтражениеВУчетеЭДО/Ext/Module.bsl b/src/CommonModules/ОтражениеВУчетеЭДО/Ext/Module.bsl
index cadb1330d..3be4b4a75 100644
--- a/src/CommonModules/ОтражениеВУчетеЭДО/Ext/Module.bsl
+++ b/src/CommonModules/ОтражениеВУчетеЭДО/Ext/Module.bsl
@@ -686,6 +686,7 @@
ИЛИ ТипДокумента = Перечисления.ТипыДокументовЭДО.УПД
ИЛИ ТипДокумента = Перечисления.ТипыДокументовЭДО.УКД
ИЛИ ТипДокумента = Перечисления.ТипыДокументовЭДО.СчетНаОплату
+ ИЛИ ТипДокумента = Перечисления.ТипыДокументовЭДО.СчетОферта
ИЛИ ТипДокумента = Перечисления.ТипыДокументовЭДО.СоглашениеОбИзмененииСтоимости
ИЛИ ТипДокумента = Перечисления.ТипыДокументовЭДО.АктВыполненныхРабот
ИЛИ ТипДокумента = Перечисления.ТипыДокументовЭДО.АктНаПередачуПрав
@@ -1113,8 +1114,15 @@
// - Массив из ОпределяемыйТип.ОснованияЭлектронныхДокументовЭДО
// ДанныеРазбора - Неопределено
// - см. ЭлектронныеДокументыЭДО.ДанныеДокументаДляЗагрузкиПросмотра
-//
-Процедура ОтразитьДанныеЭлектронногоДокумента(ДанныеЭлектронногоДокумента, СпособОбработки, ОбъектыУчета = Неопределено, ДанныеРазбора = Неопределено) Экспорт
+//
+// Возвращаемое значение:
+// Структура:
+// * Успех - Булево
+// * Ошибка - Строка
+Функция ОтразитьДанныеЭлектронногоДокумента(ДанныеЭлектронногоДокумента, СпособОбработки, ОбъектыУчета = Неопределено,
+ ДанныеРазбора = Неопределено) Экспорт
+
+ Результат = Новый Структура("Успех, Ошибка", Ложь, "");
Если ОбъектыУчета = Неопределено Тогда
ОбъектыУчета = Новый Массив;
@@ -1141,11 +1149,15 @@
НачатьТранзакцию();
Попытка
+ Результат.Успех = Истина;
+
Если ЭтоПрикладнойТипЭлектронногоДокумента Тогда
ОтразитьДанныеПрикладногоЭлектронногоДокумента(ДанныеЭлектронногоДокумента, СпособОбработки, ОбъектыУчета);
Иначе
- ОтразитьДанныеФормализованногоЭлектронногоДокумента(ДанныеЭлектронногоДокумента, ДанныеРазбора,
+ РезультатОтражения = ОтразитьДанныеФормализованногоЭлектронногоДокумента(ДанныеЭлектронногоДокумента, ДанныеРазбора,
СпособОбработки, ОбъектыУчета);
+ Результат.Успех = РезультатОтражения.Успех;
+ Результат.Ошибка = РезультатОтражения.Ошибка;
КонецЕсли;
Если ЗначениеЗаполнено(ДанныеЭлектронногоДокумента.ЭлектронныйДокумент) Тогда
@@ -1171,7 +1183,9 @@
КонецЕсли;
-КонецПроцедуры
+ Возврат Результат;
+
+КонецФункции
// Параметры:
// ДанныеДокумента - см. НовыеДанныеЭлектронногоДокументаДляОтраженияВУчете
@@ -1826,7 +1840,15 @@
КонецЕсли;
ОбъектыУчета = Новый Массив; // Массив Из ОпределяемыйТип.ОснованияЭлектронныхДокументовЭДО
- ОтразитьДанныеЭлектронногоДокумента(ДанныеДокумента, СпособОбработки, ОбъектыУчета);
+ РезультатОтражения = ОтразитьДанныеЭлектронногоДокумента(ДанныеДокумента, СпособОбработки, ОбъектыУчета);
+ Если Не РезультатОтражения.Успех Тогда
+ ВидОшибки = ВидОшибкиНеУдалосьВыполнитьОтражениеВУчете();
+ ВидОшибки.ОписаниеПроблемы = РезультатОтражения.Ошибка;
+ Ошибка = ОбработкаНеисправностейБЭД.НоваяОшибка(ВидОперацииОтражениеВУчете(),
+ ВидОшибки, РезультатОтражения.Ошибка, РезультатОтражения.Ошибка);
+ ОбработкаНеисправностейБЭД.ДобавитьОшибку(Результат.КонтекстДиагностики, Ошибка,
+ ОбщегоНазначенияБЭДКлиентСервер.ПодсистемыБЭД().ОбменСКонтрагентами, Ложь);
+ КонецЕсли;
ВыполнитьКонтрольПроведенияУчетныхДокументов(ДанныеДокумента.ЭлектронныйДокумент);
@@ -2263,6 +2285,64 @@
КонецФункции
+// Снимает электронный документ с контроля сопоставления номенклатуры, отключает контроль отражения в учете
+// в части сопоставления номенклатуры.
+//
+// Параметры:
+// ЭлектронныйДокумент - ДокументСсылка.ЭлектронныйДокументВходящийЭДО
+Процедура ОтключитьКонтрольСопоставленияНоменклатурыПоДокументу(ЭлектронныйДокумент) Экспорт
+
+ Если Не ЭлектронныеДокументыЭДО.ЭтоВходящийЭДО(ЭлектронныйДокумент) Тогда
+ ВызватьИсключение НСтр("ru = 'Контроль сопоставления номенклатуры доступен только для входящих документов'");
+ КонецЕсли;
+
+ УстановитьПривилегированныйРежим(Истина);
+
+ ТребуетсяИзменениеКонтроляОтраженияВУчете = Ложь;
+
+ НачатьТранзакцию();
+ Попытка
+
+ Блокировка = Новый БлокировкаДанных;
+ ЭлементБлокировки = Блокировка.Добавить("РегистрСведений.КонтрольСопоставленияНоменклатурыЭДО");
+ ЭлементБлокировки.УстановитьЗначение("ЭлектронныйДокумент", ЭлектронныйДокумент);
+ ЭлементБлокировки.Режим = РежимБлокировкиДанных.Исключительный;
+ Блокировка.Заблокировать();
+
+ НаборЗаписей = РегистрыСведений.КонтрольСопоставленияНоменклатурыЭДО.СоздатьНаборЗаписей();
+ НаборЗаписей.Отбор.ЭлектронныйДокумент.Установить(ЭлектронныйДокумент);
+ НаборЗаписей.Прочитать();
+
+ ТребуетсяЗапись = Ложь;
+ Если НаборЗаписей.Количество() Тогда
+ ТребуетсяЗапись = Истина;
+ КонецЕсли;
+
+ Если ТребуетсяЗапись Тогда
+ НаборЗаписей.Очистить();
+ НаборЗаписей.Записать();
+ ТребуетсяИзменениеКонтроляОтраженияВУчете = Истина;
+ КонецЕсли;
+
+ ЗафиксироватьТранзакцию();
+ Исключение
+ ОтменитьТранзакцию();
+ ВидОперации = НСтр("ru = 'Отключение контроля сопоставления номенклатуры по документу'");
+ ИнформацияОбОшибке = ИнформацияОбОшибке();
+ ПодробныйТекстОшибки = ОбщегоНазначенияБЭД.ПодробноеПредставлениеИнформацииОбОшибке(ИнформацияОбОшибке);
+ КраткийТекстОшибки = ОбщегоНазначенияБЭД.КраткоеПредставлениеИнформацииОбОшибке(ИнформацияОбОшибке);
+ ЭлектронноеВзаимодействие.ОбработатьОшибку(ВидОперации, ПодробныйТекстОшибки, КраткийТекстОшибки,
+ "ОбменСКонтрагентами", ЭлектронныйДокумент);
+ КонецПопытки;
+
+ Если ТребуетсяИзменениеКонтроляОтраженияВУчете Тогда
+ НаборИзменений = Новый Соответствие;
+ НаборИзменений.Вставить("СопоставитьНоменклатуру", Ложь);
+ ИзменитьКонтрольОтраженияВУчете(ЭлектронныйДокумент, НаборИзменений);
+ КонецЕсли;
+
+КонецПроцедуры
+
// Параметры:
// ЭлектронныеДокументы - Массив из ДокументСсылка.ЭлектронныйДокументВходящийЭДО
// КонтекстДиагностики - См. ОбработкаНеисправностейБЭД.НовыйКонтекстДиагностики
@@ -2959,7 +3039,15 @@
// СпособОбработки - см. СпособОбработкиДокумента
// ДокументыУчета - Неопределено
// - Массив из ОпределяемыйТип.ОснованияЭлектронныхДокументовЭДО
-Процедура ОтразитьДанныеФормализованногоЭлектронногоДокумента(ДанныеЭлектронногоДокумента, ДанныеДляОтражения, СпособОбработки, ДокументыУчета = Неопределено)
+//
+// Возвращаемое значение:
+// Структура:
+// * Успех - Булево
+// * Ошибка - Строка
+Функция ОтразитьДанныеФормализованногоЭлектронногоДокумента(ДанныеЭлектронногоДокумента, ДанныеДляОтражения,
+ СпособОбработки, ДокументыУчета = Неопределено)
+
+ Результат = Новый Структура("Успех, Ошибка", Ложь, "");
Если НЕ ДанныеДляОтражения.Свойство("НовыйЭД") Тогда
ИдентификаторДокумента = Неопределено;
@@ -2968,7 +3056,8 @@
НСтр("ru = 'Не удалось прочитать данные электронного документа %1. Неизвестный формат обмена.'"),
ИдентификаторДокумента);
ОбщегоНазначения.СообщитьПользователю(ТекстСообщения);
- Возврат;
+ Результат.Ошибка = ТекстСообщения;
+ Возврат Результат;
КонецЕсли;
НовыйЭД = ДанныеДляОтражения.НовыйЭД;
@@ -2990,7 +3079,8 @@
Если ЗначениеЗаполнено(ОписаниеОшибки) Тогда
ОбщегоНазначения.СообщитьПользователю(ОписаниеОшибки);
КонецЕсли;
- Возврат;
+ Результат.Ошибка = ОписаниеОшибки;
+ Возврат Результат;
КонецЕсли;
ДополнитьДеревоДаннымиКомитента(ДеревоЭД, ДанныеЭлектронногоДокумента);
@@ -3371,6 +3461,9 @@
КонецЕсли;
+ Результат.Успех = Не ЗначениеЗаполнено(РезультатОтраженияВУчете.ОписаниеОшибки);
+ Результат.Ошибка = РезультатОтраженияВУчете.ОписаниеОшибки;
+
ЗафиксироватьТранзакцию();
Исключение
@@ -3426,7 +3519,9 @@
ОшибкаЗаписи = Истина;
КонецЕсли;
-КонецПроцедуры
+ Возврат Результат;
+
+КонецФункции
// Параметры:
// СостояниеДокумента - ПеречислениеСсылка.СостоянияДокументовЭДО
@@ -4448,6 +4543,26 @@
КонецФункции
+// Возвращаемое значение:
+// Строка
+Функция ВидОперацииОтражениеВУчете()
+
+ Возврат НСтр("ru = 'Отражение в учете'");
+
+КонецФункции
+
+// Возвращаемое значение:
+// См. ОбработкаНеисправностейБЭДКлиентСервер.НовоеОписаниеВидаОшибки
+Функция ВидОшибкиНеУдалосьВыполнитьОтражениеВУчете()
+
+ ВидОшибки = ОбработкаНеисправностейБЭДКлиентСервер.НовоеОписаниеВидаОшибки();
+ ВидОшибки.Идентификатор = "НеУдалосьВыполнитьОтражениеВУчете";
+ ВидОшибки.ЗаголовокПроблемы = НСтр("ru = 'Не удалось выполнить отражение в учете'");
+ ВидОшибки.ВыводитьСсылкуНаСписокОшибок = Ложь;
+ Возврат ВидОшибки;
+
+КонецФункции
+
#Область КонструкторыДляЗагрузкиЭД
// Описание конструктора результата отражения электронного документа в учете.
@@ -4542,33 +4657,6 @@
#КонецОбласти
-// Отражает в прикладном решение акт о расхождениях.
-//
-// Параметры:
-// ДеревоЭД - ДеревоЗначений - дерево учетных данных.
-// ДокументУчета - ОпределяемыйТип.ОснованияЭлектронныхДокументовЭДО
-// ДанныеДополнительногоТитула - см. ОтражениеВУчетеЭДОКлиентСервер.НовыеДанныеДополнительногоТитулаДляОтраженияВУчете
-// СпособОбработки - Строка
-// ОписаниеОшибки - Строка
-Процедура СохранитьДанныеОбъектаДляАктаОРасхождениях(ДеревоЭД, ДокументУчета, ДанныеДополнительногоТитула,
- СпособОбработки, ОписаниеОшибки)
- ОбменСКонтрагентамиПереопределяемый.НайтиСоздатьАктОРасхождениях_ФНС_2019(ДеревоЭД, ДокументУчета, СпособОбработки,
- ОписаниеОшибки);
-
- Если ЗначениеЗаполнено(ДанныеДополнительногоТитула.ОсновнойФайл.ИмяФайла) Тогда
- ПараметрыПолученияДополнительногоТитула = ЭлектронныеДокументыЭДО.НовыеПараметрыПолученияДанныхДокумента();
- ПараметрыПолученияДополнительногоТитула.ОсновнойФайл = ДанныеДополнительногоТитула.ОсновнойФайл;
- ПараметрыПолученияДополнительногоТитула.ДополнительныйФайл = ДанныеДополнительногоТитула.ДополнительныйФайл;
- ДанныеДокумента = ЭлектронныеДокументыЭДО.ДанныеДокументаДляЗагрузкиПросмотра(ПараметрыПолученияДополнительногоТитула);
- Если Не ЗначениеЗаполнено(ДанныеДокумента) Тогда
- Возврат;
- КонецЕсли;
- ДокументыУчета = ОбщегоНазначенияКлиентСервер.ЗначениеВМассиве(ДокументУчета);
- ОбменСКонтрагентамиПереопределяемый.ЗаполнитьАктОРасхожденияхПоДополнительнымСведениям(
- ДанныеДокумента, ДокументыУчета);
- КонецЕсли;
-КонецПроцедуры
-
#КонецОбласти
#Область СопоставлениеНоменклатуры
diff --git a/src/CommonModules/ПлатежиВБюджет/Ext/Module.bsl b/src/CommonModules/ПлатежиВБюджет/Ext/Module.bsl
index fd4629b5e..5d864fc55 100644
--- a/src/CommonModules/ПлатежиВБюджет/Ext/Module.bsl
+++ b/src/CommonModules/ПлатежиВБюджет/Ext/Module.bsl
@@ -14,7 +14,12 @@
//
Функция ПроверитьДублиУИН(ИдентификаторПлатежа, Ссылка) Экспорт
- Результат = Новый Массив;
+ Результат = Новый Массив;
+
+ Если ПлатежиВБюджетКлиентСервер.АдминистраторНачисленияФССП(ИдентификаторПлатежа) Тогда
+ Возврат Результат;
+ КонецЕсли;
+
Дубли = ДублиУИН(ИдентификаторПлатежа, Ссылка);
Если Дубли.Количество() = 0 Тогда
Возврат Результат;
diff --git a/src/CommonModules/ПлатежиВБюджетКлиентСервер/Ext/Module.bsl b/src/CommonModules/ПлатежиВБюджетКлиентСервер/Ext/Module.bsl
index fb605bfd8..a95cb3ee6 100644
--- a/src/CommonModules/ПлатежиВБюджетКлиентСервер/Ext/Module.bsl
+++ b/src/CommonModules/ПлатежиВБюджетКлиентСервер/Ext/Module.bsl
@@ -678,6 +678,24 @@
КонецФункции
+// Проверяет, является ли переданный код кодом администратора начисления ФССП.
+//
+// Параметры:
+// Код - Строка - проверяемый код (допустимая длина: 20 или 25 символов).
+//
+// Возвращаемое значение:
+// Булево - Истина, если код соответствует администратору начисления ФССП, иначе Ложь
+Функция АдминистраторНачисленияФССП(Код) Экспорт
+
+ Если СтрДлина(СокрЛП(Код)) <> 20
+ И СтрДлина(СокрЛП(Код)) <> 25 Тогда
+ Возврат Ложь;
+ КонецЕсли;
+
+ Возврат Лев(Код, 3) = КодАдминистрированияФССП();
+
+КонецФункции
+
#КонецОбласти
#Область КодыБюджетнойКлассификации
@@ -879,6 +897,17 @@
КонецФункции
+// Возвращает код Федеральной службы судебных приставов (ФССП).
+//
+// Возвращаемое значение:
+// Строка - код ФССП
+//
+Функция КодАдминистрированияФССП() Экспорт
+
+ Возврат "322";
+
+КонецФункции
+
Функция ЭтоНалоговыеДоходы(КБК) Экспорт
// Выделяем платежи в уплату налогов, взносов и т.п., учитываемого на счетах 68 и 69.
diff --git a/src/CommonModules/ПоискИЗаменаДублейНСИПереопределяемый/Ext/Module.bsl b/src/CommonModules/ПоискИЗаменаДублейНСИПереопределяемый/Ext/Module.bsl
index 2f267ef3a..d7b86a8ab 100644
--- a/src/CommonModules/ПоискИЗаменаДублейНСИПереопределяемый/Ext/Module.bsl
+++ b/src/CommonModules/ПоискИЗаменаДублейНСИПереопределяемый/Ext/Module.bsl
@@ -337,9 +337,8 @@
ТекстЗапроса = ТекстЗапросаПоставляемогоПравила(Объект.Ссылка);
Описание = ОписаниеПоставляемогоПравила(Объект.Ссылка);
Наименование = НаименованиеПоставляемогоПравила(Объект.Ссылка);
-
- ЧастиИмени = СтрРазделить(Объект.ИмяПредопределенныхДанных, "_");
- Идентификатор = ОбщегоНазначения.ИдентификаторОбъектаМетаданных(СтрШаблон("%1.%2",ЧастиИмени[0], ЧастиИмени[1]));
+ Идентификатор = ОбъектМетаданныхПоставляемогоПравила(Объект.ИмяПредопределенныхДанных);
+
СтруктураЗапроса = Новый Структура;
СтруктураЗапроса.Вставить("ТекстЗапроса", ТекстЗапроса);
Объект.Запрос = Новый ХранилищеЗначения(СтруктураЗапроса, Новый СжатиеДанных(9));
@@ -864,10 +863,15 @@
| ВНУТРЕННЕЕ СОЕДИНЕНИЕ Справочник.БанковскиеСчетаКонтрагентов КАК БанковскиеСчетаКонтрагентов1
| ПО БанковскиеСчетаКонтрагентов.Владелец <> БанковскиеСчетаКонтрагентов1.Владелец
|ГДЕ
- | БанковскиеСчетаКонтрагентов.Банк = БанковскиеСчетаКонтрагентов1.Банк
- | И БанковскиеСчетаКонтрагентов.НомерСчета = БанковскиеСчетаКонтрагентов1.НомерСчета
- | И БанковскиеСчетаКонтрагентов.Владелец ССЫЛКА Справочник.Контрагенты
- | И БанковскиеСчетаКонтрагентов1.Владелец ССЫЛКА Справочник.Контрагенты";
+ | ВЫБОР
+ | КОГДА НЕ БанковскиеСчетаКонтрагентов.Банк = ЗНАЧЕНИЕ(Справочник.КлассификаторБанков.ПустаяСсылка)
+ | ТОГДА БанковскиеСчетаКонтрагентов.Банк = БанковскиеСчетаКонтрагентов1.Банк
+ | ИНАЧЕ БанковскиеСчетаКонтрагентов.БИКБанка = БанковскиеСчетаКонтрагентов1.БИКБанка
+ | И БанковскиеСчетаКонтрагентов.СВИФТБанка = БанковскиеСчетаКонтрагентов1.СВИФТБанка
+ | КОНЕЦ
+ | И БанковскиеСчетаКонтрагентов.НомерСчета = БанковскиеСчетаКонтрагентов1.НомерСчета
+ | И БанковскиеСчетаКонтрагентов.Владелец ССЫЛКА Справочник.Контрагенты
+ | И БанковскиеСчетаКонтрагентов1.Владелец ССЫЛКА Справочник.Контрагенты";
Возврат ТекстЗапроса;
КонецФункции
@@ -894,4 +898,25 @@
#КонецОбласти
+Функция ОбъектМетаданныхПоставляемогоПравила(ИмяПредопределенныхДанных)
+ Соответствие = Новый Соответствие;
+ Соответствие.Вставить("Справочник_Номенклатура_ПоНастройкамУникальностиВидаНоменклатуры", "Справочник.Номенклатура");
+ Соответствие.Вставить("Справочник_ХарактеристикиНоменклатуры_ПоНастройкамУникальностиВидаНоменклатуры", "Справочник.ХарактеристикиНоменклатуры");
+ Соответствие.Вставить("Справочник_Контрагенты_СовпадаетИННКПП", "Справочник.Контрагенты");
+ Соответствие.Вставить("Справочник_Партнеры_СовпадаетКонтактнаяИнформация", "Справочник.Партнеры");
+ Соответствие.Вставить("Справочник_Контрагенты_СовпадаетКонтактнаяИнформацияИНеЗаполненИНН", "Справочник.Контрагенты");
+ Соответствие.Вставить("Справочник_Номенклатура_СовпадаетНаименование", "Справочник.Номенклатура");
+ Соответствие.Вставить("Справочник_Партнеры_СовпадаетНаименование", "Справочник.Партнеры");
+ Соответствие.Вставить("Справочник_ХарактеристикиНоменклатуры_СовпадаетНаименование", "Справочник.ХарактеристикиНоменклатуры");
+ Соответствие.Вставить("Справочник_Контрагенты_СовпадаетНаименованиеИКонтактнаяИнформация", "Справочник.Контрагенты");
+ Соответствие.Вставить("Справочник_Контрагенты_СовпадаетНомерБанковскогоСчета", "Справочник.Контрагенты");
+ Соответствие.Вставить("Справочник_Контрагенты_СовпадаетРегистрационныйИлиНалоговыйНомерНерезидента", "Справочник.Контрагенты");
+ ИмяТипа = Соответствие[ИмяПредопределенныхДанных];
+ Если ИмяТипа = Неопределено Тогда
+ Возврат Неопределено;
+ КонецЕсли;
+ Идентификатор = ОбщегоНазначения.ИдентификаторОбъектаМетаданных(ИмяТипа);
+ Возврат Идентификатор;
+КонецФункции
+
#КонецОбласти
diff --git a/src/CommonModules/ПриглашенияЭДОПовтИсп/Ext/Module.bsl b/src/CommonModules/ПриглашенияЭДОПовтИсп/Ext/Module.bsl
deleted file mode 100644
index 880588cf2..000000000
--- a/src/CommonModules/ПриглашенияЭДОПовтИсп/Ext/Module.bsl
+++ /dev/null
@@ -1,11 +0,0 @@
-
-#Область СлужебныйПрограммныйИнтерфейс
-
-//см. ПриглашенияЭДО.УчастникЭДОПоКлючуИПриглашению
-Функция УчастникЭДОПоКлючуИПриглашению(Знач ПараметрыПриглашения, Знач КлючУчастникаЭДО) Экспорт
-
- Возврат ПриглашенияЭДО.УчастникЭДОПоКлючуИПриглашению(ПараметрыПриглашения, КлючУчастникаЭДО);
-
-КонецФункции
-
-#КонецОбласти
\ No newline at end of file
diff --git a/src/CommonModules/ПриглашенияЭДОЦентрЭДО/Ext/Module.bsl b/src/CommonModules/ПриглашенияЭДОЦентрЭДО/Ext/Module.bsl
index 27dcb2374..a7db4bccb 100644
--- a/src/CommonModules/ПриглашенияЭДОЦентрЭДО/Ext/Module.bsl
+++ b/src/CommonModules/ПриглашенияЭДОЦентрЭДО/Ext/Module.bsl
@@ -1248,7 +1248,10 @@
Контрагенты.Добавить(НайденныеСтроки[0].Ссылка);
Иначе
ПараметрыСоздания = НовыеПараметрыСозданияКонтрагента();
- ЗаполнитьЗначенияСвойств(ПараметрыСоздания, ДанныеКонтрагента);
+ ПараметрыСоздания.Наименование = ДанныеКонтрагента.НаименованиеСокращенное;
+ ПараметрыСоздания.НаименованиеПолное = ДанныеКонтрагента.НаименованиеПолное;
+ ПараметрыСоздания.ИНН = ДанныеКонтрагента.ИНН;
+ ПараметрыСоздания.КПП = ДанныеКонтрагента.КПП;
Контрагент = СоздатьКонтрагента(ПараметрыСоздания);
ОбщегоНазначенияБЭД.ДобавитьЗаполненноеЗначение(Контрагенты, Контрагент);
КонецЕсли;
@@ -1287,6 +1290,6 @@
Параметры.Вставить("ИНН", "");
Параметры.Вставить("КПП", "");
Возврат Параметры;
-Конецфункции
+КонецФункции
#КонецОбласти
\ No newline at end of file
diff --git a/src/CommonModules/ПроведениеДокументов/Ext/Module.bsl b/src/CommonModules/ПроведениеДокументов/Ext/Module.bsl
index deca4112a..4ecc1beca 100644
--- a/src/CommonModules/ПроведениеДокументов/Ext/Module.bsl
+++ b/src/CommonModules/ПроведениеДокументов/Ext/Module.bsl
@@ -1742,6 +1742,7 @@
МеханизмыКонфигурации.Вставить("РасчетыСПодотчетниками", "РегистрыНакопления.ДенежныеСредстваУПодотчетныхЛиц");
МеханизмыКонфигурации.Вставить("РеестрДокументов", "РегистрыСведений.РеестрДокументов");
МеханизмыКонфигурации.Вставить("ИсправлениеДокументов", "ИсправлениеДокументов");
+
МеханизмыКонфигурации.Вставить("СебестоимостьИПартионныйУчет", "ПартионныйУчетСервер");
МеханизмыКонфигурации.Вставить("СерийныйУчет", "РегистрыНакопления.ДвиженияСерийТоваров");
МеханизмыКонфигурации.Вставить("СуммыДокументовВВалютахУчета", "РегистрыСведений.СуммыДокументовВВалютахУчета");
diff --git a/src/CommonModules/ПроверкаИПодборПродукцииИС/Ext/Module.bsl b/src/CommonModules/ПроверкаИПодборПродукцииИС/Ext/Module.bsl
index 31af337e7..f70c58f71 100644
--- a/src/CommonModules/ПроверкаИПодборПродукцииИС/Ext/Module.bsl
+++ b/src/CommonModules/ПроверкаИПодборПродукцииИС/Ext/Module.bsl
@@ -542,6 +542,9 @@
Если СтрокиКеша.Количество() Тогда
СтрокиКеша0 = СтрокиКеша[0];
СтрокиКеша0.Количество = СтрокиКеша0.Количество + СоставУпаковки.Количество;
+ Если ЕстьКоличествоПотребительскихКодов Тогда
+ СтрокиКеша0.КоличествоПотребительскихУпаковок = СтрокиКеша0.КоличествоПотребительскихУпаковок + 1;
+ КонецЕсли;
СтрокиКеша0.ШтрихкодыУпаковок.Вставить(СоставУпаковки.Штрихкод, Истина);
Иначе
НоваяСтрока = ДанныеШтрихкодовУпаковокГосИС.Добавить();
@@ -1847,7 +1850,6 @@
Таблица.Колонки.Добавить("РазрешительныйРежимДатаЗапросаГИСМТ", Новый ОписаниеТипов("Строка"));
Таблица.Колонки.Добавить("РазрешительныйРежимИдентификаторЭкземпляраПО", Метаданные.ОпределяемыеТипы.УникальныйИдентификаторИС.Тип);
Таблица.Колонки.Добавить("РазрешительныйРежимВерсияБазы", Метаданные.ОпределяемыеТипы.УникальныйИдентификаторИС.Тип);
- Таблица.Колонки.Добавить("РазрешительныйРежимМинимальнаяРозничнаяЦена", ОбщегоНазначения.ОписаниеТипаЧисло(15, 3));
// Специфика частичного выбытия
Таблица.Колонки.Добавить("ЧастичноеВыбытиеКоличество", ОбщегоНазначения.ОписаниеТипаЧисло(18, 8));
Таблица.Колонки.Добавить("ЧастичноеВыбытиеВариантУчета", Новый ОписаниеТипов("ПеречислениеСсылка.ВариантыУчетаЧастичногоВыбытияИС"));
@@ -2381,7 +2383,7 @@
КонецФункции
-Процедура ОбработататьТаблицуПеремаркировкиСУчетомДетализации(Форма, ТаблицаПеремаркировки, ШтрихкодИДанныеУпаковки) Экспорт
+Процедура ОбработатьТаблицуПеремаркировкиСУчетомДетализации(Форма, ТаблицаПеремаркировки, ШтрихкодИДанныеУпаковки) Экспорт
ШтрихкодыДляПерепроверки = Новый Массив;
Для Каждого СтрокаТЧ Из ТаблицаПеремаркировки Цикл
diff --git a/src/CommonModules/ПроверкаИПодборПродукцииИСВызовСервера/Ext/Module.bsl b/src/CommonModules/ПроверкаИПодборПродукцииИСВызовСервера/Ext/Module.bsl
index 607c96391..68c02b45d 100644
--- a/src/CommonModules/ПроверкаИПодборПродукцииИСВызовСервера/Ext/Module.bsl
+++ b/src/CommonModules/ПроверкаИПодборПродукцииИСВызовСервера/Ext/Module.bsl
@@ -100,7 +100,7 @@
Форма.Вставить("ПараметрыСканирования", ПараметрыСканирования);
Форма.Вставить("ДеревоМаркированнойПродукции", СтрокиДерева);
- ПроверкаИПодборПродукцииИС.ОбработататьТаблицуПеремаркировкиСУчетомДетализации(Форма, ТаблицаПеремаркировки, ШтрихкодИДанныеУпаковки);
+ ПроверкаИПодборПродукцииИС.ОбработатьТаблицуПеремаркировкиСУчетомДетализации(Форма, ТаблицаПеремаркировки, ШтрихкодИДанныеУпаковки);
Возврат ОбщегоНазначения.ТаблицаЗначенийВМассив(ТаблицаПеремаркировки);
diff --git a/src/CommonModules/ПроверкаИПодборПродукцииИСКлиент/Ext/Module.bsl b/src/CommonModules/ПроверкаИПодборПродукцииИСКлиент/Ext/Module.bsl
index 0ea159752..b3a32bbb8 100644
--- a/src/CommonModules/ПроверкаИПодборПродукцииИСКлиент/Ext/Module.bsl
+++ b/src/CommonModules/ПроверкаИПодборПродукцииИСКлиент/Ext/Module.bsl
@@ -341,7 +341,7 @@
// * Склад - Произвольный - явное указание склада если имя реквизита недоступно
// * ИмяРеквизитаДокументОснование - Строка - имя реквизита документа, содержащего его основание. Если основания нет, должен быть пустой строкой.
// * ПроверятьНеобходимостьПеремаркировки - Булево - признак необходимости контроля состава упаковок в форме проверки.
-// * РасчитыватьХешСуммуУпаковок - Булево - признак необходимости расчета хеш-сумм упаковок.
+// * РассчитыватьХешСуммуУпаковки - Булево - признак необходимости расчета хеш-сумм упаковок.
// * РедактированиеФормыНедоступно - Булево - признак недоступности редактирования формы, из которой открывается форма проверки
// * АдресПроверяемыхДанных - Строка - адрес данных для загрузки в форму проверки, если передача данных происходит не через ссылку на документ
// * ОписаниеОповещенияПриЗакрытии - ОписаниеОповещения - описание процедуры, которая будет вызвана после закрытия формы проверки
@@ -368,7 +368,7 @@
ПараметрыОткрытия.Вставить("Склад", Неопределено);
ПараметрыОткрытия.Вставить("ИмяРеквизитаДокументОснование", "ДокументОснование");
ПараметрыОткрытия.Вставить("ПроверятьНеобходимостьПеремаркировки", Истина);
- ПараметрыОткрытия.Вставить("РасчитыватьХешСуммуУпаковок", Истина);
+ ПараметрыОткрытия.Вставить("РассчитыватьХешСуммуУпаковки", Истина);
ПараметрыОткрытия.Вставить("РедактированиеФормыНедоступно", Ложь);
ПараметрыОткрытия.Вставить("АдресПроверяемыхДанных", "");
ПараметрыОткрытия.Вставить("ПроверятьМодифицированность", Истина);
@@ -436,7 +436,7 @@
ПараметрыФормы = Новый Структура;
ПараметрыФормы.Вставить("РедактированиеФормыНедоступно", ПараметрыОткрытияФормыПроверки.РедактированиеФормыНедоступно);
ПараметрыФормы.Вставить("ПроверятьНеобходимостьПеремаркировки", ПараметрыОткрытияФормыПроверки.ПроверятьНеобходимостьПеремаркировки);
- ПараметрыФормы.Вставить("РасчитыватьХешСуммуУпаковок", ПараметрыОткрытияФормыПроверки.РасчитыватьХешСуммуУпаковок);
+ ПараметрыФормы.Вставить("РассчитыватьХешСуммуУпаковки", ПараметрыОткрытияФормыПроверки.РассчитыватьХешСуммуУпаковки);
ПараметрыФормы.Вставить("АдресПроверяемыхДанных", ПараметрыОткрытияФормыПроверки.АдресПроверяемыхДанных);
ПараметрыФормы.Вставить("ДопустимыйСпособВводаВОборот", ПараметрыОткрытияФормыПроверки.ДопустимыйСпособВводаВОборот);
ПараметрыФормы.Вставить("ДанныеВыбораПоМаркируемойПродукции", ПараметрыОткрытияФормыПроверки.ДанныеВыбораПоМаркируемойПродукции);
diff --git a/src/CommonModules/ПроверкаИПодборПродукцииИСКлиентПереопределяемый/Ext/Module.bsl b/src/CommonModules/ПроверкаИПодборПродукцииИСКлиентПереопределяемый/Ext/Module.bsl
index 87ccfe6fa..114b97a0b 100644
--- a/src/CommonModules/ПроверкаИПодборПродукцииИСКлиентПереопределяемый/Ext/Module.bsl
+++ b/src/CommonModules/ПроверкаИПодборПродукцииИСКлиентПереопределяемый/Ext/Module.bsl
@@ -222,14 +222,27 @@
Если СерииИспользуются И Форма.СкладГруппа Тогда
ПараметрыФормыПроверки.Склад = ПроверкаИПодборПродукцииИСМПУТВызовСервера.СкладГруппыСОбщейПолитикойУчетаСерий(
ПараметрыФормыПроверки.Склад);
- Объект = Форма[ПараметрыОткрытияФормыПроверки.ИмяРеквизитаФормыОбъект];
- Если Объект.Товары.Количество() = 0 И Не ЗначениеЗаполнено(ПараметрыФормыПроверки.Склад) Тогда
- ОбщегоНазначенияКлиент.СообщитьПользователю(
- НСтр("ru = 'Для проверки и подбора маркируемой продукции укажите склад, а не группу'"),,
- ПараметрыОткрытияФормыПроверки.ИмяРеквизитаСклад,
- ПараметрыОткрытияФормыПроверки.ИмяРеквизитаФормыОбъект,
- Отказ);
- КонецЕсли;
+ Если Не ЗначениеЗаполнено(ПараметрыФормыПроверки.Склад) Тогда
+ Для Каждого СтрокаТабличнойЧасти Из Форма.Объект.Товары Цикл
+ Если ЗначениеЗаполнено(СтрокаТабличнойЧасти.Склад) Тогда
+ ПараметрыФормыПроверки.Склад = СтрокаТабличнойЧасти.Склад;
+ Прервать;
+ КонецЕсли;
+ КонецЦикла;
+ Если Не ЗначениеЗаполнено(ПараметрыФормыПроверки.Склад) Тогда
+ ОбщегоНазначенияКлиент.СообщитьПользователю(
+ НСтр("ru = 'Склады группы складов документа имеют различные политики учета серий.
+ |В форме проверки будет использована общая политика: Серии не используются.'"),,
+ ПараметрыОткрытияФормыПроверки.ИмяРеквизитаСклад,
+ ПараметрыОткрытияФормыПроверки.ИмяРеквизитаФормыОбъект);
+ Иначе
+ ОбщегоНазначенияКлиент.СообщитьПользователю(СтрШаблон(
+ НСтр("ru = 'Склады группы складов документа имеют различные политики учета серий.
+ |В форме проверки будет использована политика учета серий склада: %1'"),ПараметрыФормыПроверки.Склад),,
+ ПараметрыОткрытияФормыПроверки.ИмяРеквизитаСклад,
+ ПараметрыОткрытияФормыПроверки.ИмяРеквизитаФормыОбъект);
+ КонецЕсли;
+ КонецЕсли;
КонецЕсли;
КонецЕсли;
diff --git a/src/CommonModules/ПроверкаИПодборПродукцииИСКлиентСервер/Ext/Module.bsl b/src/CommonModules/ПроверкаИПодборПродукцииИСКлиентСервер/Ext/Module.bsl
index 016e30695..d2d37fb38 100644
--- a/src/CommonModules/ПроверкаИПодборПродукцииИСКлиентСервер/Ext/Module.bsl
+++ b/src/CommonModules/ПроверкаИПодборПродукцииИСКлиентСервер/Ext/Module.bsl
@@ -2081,7 +2081,7 @@
Функция РаспределитьПровереннуюПодобраннуюПродукциюПриДобавленииСтроки(СтрокаПерераспределения, СтрокаПодобраннойПродукции, КоличествоРаспределения)
- Количество = Мин(КоличествоРаспределения.КоличествоПодобрано - КоличествоРаспределения.Количество, СтрокаПерераспределения.Количество - СтрокаПерераспределения.КоличествоПодобрано);
+ Количество = Макс(0, Мин(КоличествоРаспределения.КоличествоПодобрано - КоличествоРаспределения.Количество, СтрокаПерераспределения.Количество - СтрокаПерераспределения.КоличествоПодобрано));
КоличествоРаспределения.КоличествоПодобрано = КоличествоРаспределения.КоличествоПодобрано - Количество;
СтрокаПерераспределения.Количество = СтрокаПерераспределения.Количество - Количество;
СтрокаПодобраннойПродукции.Количество = СтрокаПодобраннойПродукции.Количество + Количество;
@@ -2101,7 +2101,7 @@
Функция РаспределитьВходящуюПродукциюПриДобавленииСтроки(СтрокаПерераспределения, СтрокаПодобраннойПродукции, КоличествоРаспределения)
- Количество = Мин(КоличествоРаспределения.КоличествоИС, СтрокаПерераспределения.Количество - СтрокаПерераспределения.КоличествоИС);
+ Количество = Макс(0, Мин(КоличествоРаспределения.КоличествоИС, СтрокаПерераспределения.Количество - СтрокаПерераспределения.КоличествоИС));
КоличествоРаспределения.КоличествоИС = КоличествоРаспределения.КоличествоИС - Количество;
СтрокаПерераспределения.Количество = СтрокаПерераспределения.Количество - Количество;
СтрокаПодобраннойПродукции.Количество = СтрокаПодобраннойПродукции.Количество + Количество;
diff --git a/src/CommonModules/ПроверкаИПодборПродукцииИСМП/Ext/Module.bsl b/src/CommonModules/ПроверкаИПодборПродукцииИСМП/Ext/Module.bsl
index 0699e0138..73ae71b2d 100644
--- a/src/CommonModules/ПроверкаИПодборПродукцииИСМП/Ext/Module.bsl
+++ b/src/CommonModules/ПроверкаИПодборПродукцииИСМП/Ext/Module.bsl
@@ -547,6 +547,7 @@
Настройки.Серии = ПараметрыИнтеграцииФормыПроверки.ИмяТабличнойЧастиСерии;
Настройки.ЧастичноеВыбытие = ПараметрыИнтеграцииФормыПроверки.ДоступноЧастичноеВыбытие;
Настройки.ИспользоватьОСУ = ПараметрыИнтеграцииФормыПроверки.ДоступныОбъемноСортовыеКоды;
+ Настройки.Количество = ПараметрыИнтеграцииФормыПроверки.ИмяКолонкиКоличество;
ПроверкаИПодборПродукцииИС.ПрименитьКешШтрихкодовУпаковок(Форма, Настройки, ОбновлениеТаблицыТоваров);
diff --git a/src/CommonModules/ПроверкаИПодборПродукцииИСМПВызовСервера/Ext/Module.bsl b/src/CommonModules/ПроверкаИПодборПродукцииИСМПВызовСервера/Ext/Module.bsl
index a452e7642..7f613203a 100644
--- a/src/CommonModules/ПроверкаИПодборПродукцииИСМПВызовСервера/Ext/Module.bsl
+++ b/src/CommonModules/ПроверкаИПодборПродукцииИСМПВызовСервера/Ext/Module.bsl
@@ -248,6 +248,18 @@
КонецФункции
+Функция ОперацияДокументаМаркировкиТоваровов(Документ) Экспорт
+
+ Если Не ЗначениеЗаполнено(Документ) Тогда
+ Возврат Неопределено;
+ ИначеЕсли ТипЗнч(Документ) <> Тип("ДокументСсылка.МаркировкаТоваровИСМП") Тогда
+ ВызватьИсключение НСтр("ru = 'Не верный тип значения документа маркировки товаров для получения операции'");
+ КонецЕсли;
+
+ Возврат ОбщегоНазначения.ЗначениеРеквизитаОбъекта(Документ, "Операция");
+
+КонецФункции
+
#Область ФормаПроверкиИПодбора
Функция КодыМаркировкиПоОснованию(Документ) Экспорт
diff --git a/src/CommonModules/ПроверкаИПодборПродукцииИСМПКлиент/Ext/Module.bsl b/src/CommonModules/ПроверкаИПодборПродукцииИСМПКлиент/Ext/Module.bsl
index 0cf7f1edd..ad8803718 100644
--- a/src/CommonModules/ПроверкаИПодборПродукцииИСМПКлиент/Ext/Module.bsl
+++ b/src/CommonModules/ПроверкаИПодборПродукцииИСМПКлиент/Ext/Module.bsl
@@ -553,7 +553,8 @@
Если ЗначениеЗаполнено(Форма.ПроверяемыйДокумент)
И ТипЗнч(Форма.ПроверяемыйДокумент) = Тип("ДокументСсылка.МаркировкаТоваровИСМП") Тогда
СпособВводаВОборот = ШтрихкодированиеИСМПКлиентСервер.СпособВводаВОборотСУЗПоВидуОперации(
- ИнтеграцияИСВызовСервера.ЗначениеРеквизитаОбъекта(Форма.ПроверяемыйДокумент, "Операция"), ТоварныеГруппы);
+ ПроверкаИПодборПродукцииИСМПВызовСервера.ОперацияДокументаМаркировкиТоваровов(Форма.ПроверяемыйДокумент),
+ ТоварныеГруппы);
Если ЗначениеЗаполнено(СпособВводаВОборот) Тогда
СтруктураОтбора.Вставить("СпособВводаВОборот", СпособВводаВОборот);
КонецЕсли;
@@ -589,7 +590,8 @@
Если ЗначениеЗаполнено(Форма.ПроверяемыйДокумент)
И ТипЗнч(Форма.ПроверяемыйДокумент) = Тип("ДокументСсылка.МаркировкаТоваровИСМП") Тогда
СпособВводаВОборот = ШтрихкодированиеИСМПКлиентСервер.СпособВводаВОборотСУЗПоВидуОперации(
- ИнтеграцияИСВызовСервера.ЗначениеРеквизитаОбъекта(Форма.ПроверяемыйДокумент, "Операция"), ТоварныеГруппы);
+ ПроверкаИПодборПродукцииИСМПВызовСервера.ОперацияДокументаМаркировкиТоваровов(Форма.ПроверяемыйДокумент),
+ ТоварныеГруппы);
Если ЗначениеЗаполнено(СпособВводаВОборот) Тогда
СтруктураОтбора.Вставить("СпособВводаВОборот", СпособВводаВОборот);
КонецЕсли;
diff --git a/src/CommonModules/ПроверкаИПодборПродукцииИСМПУТВызовСервера/Ext/Module.bsl b/src/CommonModules/ПроверкаИПодборПродукцииИСМПУТВызовСервера/Ext/Module.bsl
index 493316574..2ac91fc22 100644
--- a/src/CommonModules/ПроверкаИПодборПродукцииИСМПУТВызовСервера/Ext/Module.bsl
+++ b/src/CommonModules/ПроверкаИПодборПродукцииИСМПУТВызовСервера/Ext/Module.bsl
@@ -238,7 +238,7 @@
ТоварыИсключенияОрдера = ?(ТоварыИсключения = Неопределено, Неопределено,
ТоварыИсключения.Скопировать(Новый Структура("Ссылка", Строка.Ордер)));
ЗаполнитьТаблицуШтрихКодовДляЗагрузки(
- Пропускаем, Штрихкоды, ШтрихкодыУпаковокПоДокументу.ВложенныеШтрихкоды.ДеревоУпаковок.Строки, ТоварыИсключенияОрдера, "");
+ Пропускаем, Штрихкоды, ШтрихкодыУпаковокПоДокументу.ВложенныеШтрихкоды.ДеревоУпаковок.Строки, ТоварыИсключенияОрдера);
КонецЦикла;
@@ -272,23 +272,28 @@
Запрос = Новый Запрос;
Запрос.УстановитьПараметр("ГруппаСкладов", ГруппаСкладов);
Запрос.Текст =
- "ВЫБРАТЬ ПЕРВЫЕ 1
- | ЗНАЧЕНИЕ(Справочник.Склады.ПустаяСсылка) КАК Склад
+ "ВЫБРАТЬ
+ | Ссылка КАК Ссылка,
+ | КОЛИЧЕСТВО(РАЗЛИЧНЫЕ ПолитикаУчетаСерий) КАК ПолитикиУчетаСерий
+ |ПОМЕСТИТЬ НастройкиСкладов
|ИЗ
| Справочник.ВидыНоменклатуры.ПолитикиУчетаСерий КАК ВидыНоменклатурыПолитикиУчетаСерий
|ГДЕ
| ВидыНоменклатурыПолитикиУчетаСерий.Склад В ИЕРАРХИИ (&ГруппаСкладов)
| И ВидыНоменклатурыПолитикиУчетаСерий.Склад <> (&ГруппаСкладов)
- |
- |ОБЪЕДИНИТЬ ВСЕ
+ | И ВидыНоменклатурыПолитикиУчетаСерий.Ссылка.ТипНоменклатуры = ЗНАЧЕНИЕ(Перечисление.ТипыНоменклатуры.Товар)
+ |СГРУППИРОВАТЬ ПО
+ | Ссылка
+ |;
|
|ВЫБРАТЬ ПЕРВЫЕ 1
- | Склады.Ссылка
+ | ВЫБОР КОГДА Склады.ПолитикиУчетаСерий = 1
+ | ТОГДА Склады.Ссылка ИНАЧЕ ЗНАЧЕНИЕ(Справочник.Склады.ПустаяСсылка)
+ | КОНЕЦ КАК Склад
|ИЗ
- | Справочник.Склады КАК Склады
- |ГДЕ
- | Склады.Ссылка В ИЕРАРХИИ (&ГруппаСкладов)
- | И Не Склады.ЭтоГруппа
+ | НастройкиСкладов КАК Склады
+ |УПОРЯДОЧИТЬ ПО
+ | Склады.ПолитикиУчетаСерий Убыв
|";
Выборка = Запрос.Выполнить().Выбрать();
@@ -303,8 +308,9 @@
#Область СлужебныеПроцедурыИФункции
+//Считаем, что упаковки добавляются по принципу "однородности" - если добавляется хоть один товар из упаковки
+//
// Параметры:
-// ВидПродукции - ПеречислениеСсылка.ВидыПродукцииИС - вид продукции формы проверки
// ИсключаяШтрихкоды - Соответствие из Строка
// Штрихкоды - Массив из Структура:
// *Штрихкод - Строка
@@ -313,39 +319,44 @@
// *ШтрихкодУпаковки - Строка
// СтрокиШК - Массив из СтрокаТаблицыЗначений
// ТоварыИсключения - Неопределено, ТаблицаЗначений -
-// УпаковкаВерхнегоУровня - Строка
-Процедура ЗаполнитьТаблицуШтрихКодовДляЗагрузки(ИсключаяШтрихкоды, Штрихкоды, СтрокиШК, ТоварыИсключения, Знач УпаковкаВерхнегоУровня)
+Процедура ЗаполнитьТаблицуШтрихКодовДляЗагрузки(ИсключаяШтрихкоды, Штрихкоды, СтрокиШК, ТоварыИсключения)
Для Каждого СтрокаШК Из СтрокиШК Цикл
Если ИсключаяШтрихкоды.Получить(СтрокаШК.Штрихкод) = Истина Тогда
Продолжить;
ИначеЕсли ТоварыИсключения <> Неопределено Тогда
- КлючПоиска = Новый Структура("Номенклатура, Характеристика, Серия");
- ЗаполнитьЗначенияСвойств(КлючПоиска, СтрокаШК);
- Если ТоварыИсключения.НайтиСтроки(КлючПоиска).Количество() > 0 Тогда
- Продолжить;
- КонецЕсли;
- КлючПоиска.Серия = Справочники.СерииНоменклатуры.ПустаяСсылка();
- Если ТоварыИсключения.НайтиСтроки(КлючПоиска).Количество() > 0 Тогда
+ ТоварИсключение = Ложь;
+ Элемент = СтрокаШК;
+ Пока Не ТоварИсключение И Элемент <> Неопределено Цикл
+ КлючПоиска = Новый Структура("Номенклатура, Характеристика, Серия");
+ ЗаполнитьЗначенияСвойств(КлючПоиска, Элемент);
+ Если ТоварыИсключения.НайтиСтроки(КлючПоиска).Количество() > 0 Тогда
+ ТоварИсключение = Истина;
+ КонецЕсли;
+ КлючПоиска.Серия = Справочники.СерииНоменклатуры.ПустаяСсылка();
+ Если ТоварыИсключения.НайтиСтроки(КлючПоиска).Количество() > 0 Тогда
+ ТоварИсключение = Истина;
+ КонецЕсли;
+ Если Элемент.Строки.Количество() > 0 Тогда
+ Элемент = Элемент.Строки[0];
+ Иначе
+ Элемент = Неопределено;
+ КонецЕсли;
+ КонецЦикла;
+ Если ТоварИсключение Тогда
Продолжить;
КонецЕсли;
КонецЕсли;
+ ИсключаяШтрихкоды.Вставить(СтрокаШК.Штрихкод, Истина);
ПоляСтроки = Новый Структура;
ПоляСтроки.Вставить("Штрихкод", СтрокаШК.Штрихкод);
- ПоляСтроки.Вставить("Количество", СтрокаШК.Количество);
+ ПоляСтроки.Вставить("Количество", 1);
ПоляСтроки.Вставить("ШтрихкодМаркиАлкогольнойПродукции", "");
- ПоляСтроки.Вставить("ШтрихкодУпаковки", УпаковкаВерхнегоУровня);
+ ПоляСтроки.Вставить("ШтрихкодУпаковки", "");
Штрихкоды.Добавить(ПоляСтроки);
- Если СтрокаШК.Строки.Количество() > 0
- И (Не ЗначениеЗаполнено(СтрокаШК.Номенклатура)
- Или СтрокаШК.Номенклатура = СтрокаШК.Строки[0].Номенклатура)
- Тогда
- ЗаполнитьТаблицуШтрихКодовДляЗагрузки(ИсключаяШтрихкоды, Штрихкоды, СтрокаШК.Строки, ТоварыИсключения, СтрокаШК.Штрихкод);
- КонецЕсли;
-
КонецЦикла;
КонецПроцедуры
diff --git a/src/CommonModules/ПродажиВызовСервера/Ext/Module.bsl b/src/CommonModules/ПродажиВызовСервера/Ext/Module.bsl
index e38bfbabf..09ce38d5c 100644
--- a/src/CommonModules/ПродажиВызовСервера/Ext/Module.bsl
+++ b/src/CommonModules/ПродажиВызовСервера/Ext/Module.bsl
@@ -132,6 +132,7 @@
| ЗаказКлиента.ПеревозчикПартнер КАК ПеревозчикПартнер,
| ЗаказКлиента.АдресДоставки КАК АдресДоставки,
| ЗаказКлиента.АдресДоставкиЗначенияПолей КАК АдресДоставкиЗначенияПолей,
+ | ЗаказКлиента.АдресДоставкиЗначение КАК АдресДоставкиЗначение,
| ЗаказКлиента.АдресДоставкиПеревозчика КАК АдресДоставкиПеревозчика,
| ЗаказКлиента.АдресДоставкиПеревозчикаЗначенияПолей КАК АдресДоставкиПеревозчикаЗначенияПолей,
| ЗаказКлиента.ЗонаДоставки КАК ЗонаДоставки,
@@ -213,6 +214,7 @@
| ЗаявкаНаВозврат.ПеревозчикПартнер КАК ПеревозчикПартнер,
| ЗаявкаНаВозврат.АдресДоставки КАК АдресДоставки,
| ЗаявкаНаВозврат.АдресДоставкиЗначенияПолей КАК АдресДоставкиЗначенияПолей,
+ | ЗаявкаНаВозврат.АдресДоставкиЗначение КАК АдресДоставкиЗначение,
| ЗаявкаНаВозврат.АдресДоставкиПеревозчика КАК АдресДоставкиПеревозчика,
| ЗаявкаНаВозврат.АдресДоставкиПеревозчикаЗначенияПолей КАК АдресДоставкиПеревозчикаЗначенияПолей,
| ЗаявкаНаВозврат.ЗонаДоставки КАК ЗонаДоставки,
@@ -352,6 +354,7 @@
| ШапкаДокумента.ПеревозчикПартнер КАК ПеревозчикПартнер,
| ШапкаДокумента.АдресДоставки КАК АдресДоставки,
| ШапкаДокумента.АдресДоставкиЗначенияПолей КАК АдресДоставкиЗначенияПолей,
+ | ШапкаДокумента.АдресДоставкиЗначение КАК АдресДоставкиЗначение,
| ШапкаДокумента.АдресДоставкиПеревозчика КАК АдресДоставкиПеревозчика,
| ШапкаДокумента.АдресДоставкиПеревозчикаЗначенияПолей КАК АдресДоставкиПеревозчикаЗначенияПолей,
| ШапкаДокумента.ЗонаДоставки КАК ЗонаДоставки,
@@ -462,6 +465,7 @@
| ДокЗаказКлиента.ПеревозчикПартнер КАК ПеревозчикПартнер,
| ДокЗаказКлиента.АдресДоставки КАК АдресДоставки,
| ДокЗаказКлиента.АдресДоставкиЗначенияПолей КАК АдресДоставкиЗначенияПолей,
+ | ДокЗаказКлиента.АдресДоставкиЗначение КАК АдресДоставкиЗначение,
| ДокЗаказКлиента.АдресДоставкиПеревозчика КАК АдресДоставкиПеревозчика,
| ДокЗаказКлиента.АдресДоставкиПеревозчикаЗначенияПолей КАК АдресДоставкиПеревозчикаЗначенияПолей,
| ДокЗаказКлиента.ЗонаДоставки КАК ЗонаДоставки,
@@ -525,6 +529,7 @@
| ДокОтгрузкаТоваров.ПеревозчикПартнер КАК ПеревозчикПартнер,
| ДокОтгрузкаТоваров.АдресДоставки КАК АдресДоставки,
| ДокОтгрузкаТоваров.АдресДоставкиЗначенияПолей КАК АдресДоставкиЗначенияПолей,
+ | ДокОтгрузкаТоваров.АдресДоставкиЗначение КАК АдресДоставкиЗначение,
| ДокОтгрузкаТоваров.АдресДоставкиПеревозчика КАК АдресДоставкиПеревозчика,
| ДокОтгрузкаТоваров.АдресДоставкиПеревозчикаЗначенияПолей КАК АдресДоставкиПеревозчикаЗначенияПолей,
| ДокОтгрузкаТоваров.ЗонаДоставки КАК ЗонаДоставки,
@@ -587,6 +592,7 @@
| ДокЗаявкаНаВозврат.ПеревозчикПартнер КАК ПеревозчикПартнер,
| ДокЗаявкаНаВозврат.АдресДоставки КАК АдресДоставки,
| ДокЗаявкаНаВозврат.АдресДоставкиЗначенияПолей КАК АдресДоставкиЗначенияПолей,
+ | ДокЗаявкаНаВозврат.АдресДоставкиЗначение КАК АдресДоставкиЗначение,
| ДокЗаявкаНаВозврат.АдресДоставкиПеревозчика КАК АдресДоставкиПеревозчика,
| ДокЗаявкаНаВозврат.АдресДоставкиПеревозчикаЗначенияПолей КАК АдресДоставкиПеревозчикаЗначенияПолей,
| ДокЗаявкаНаВозврат.ЗонаДоставки КАК ЗонаДоставки,
@@ -671,6 +677,7 @@
| НЕОПРЕДЕЛЕНО КАК ПеревозчикПартнер,
| Таблица.АдресДоставки КАК АдресДоставки,
| Таблица.АдресДоставкиЗначенияПолей КАК АдресДоставкиЗначенияПолей,
+ | Таблица.АдресДоставкиЗначение КАК АдресДоставкиЗначение,
| НЕОПРЕДЕЛЕНО КАК АдресДоставкиПеревозчика,
| """" КАК АдресДоставкиПеревозчикаЗначенияПолей,
| НЕОПРЕДЕЛЕНО КАК ЗонаДоставки,
@@ -1276,6 +1283,11 @@
| ИНАЧЕ ИСТИНА
| КОНЕЦ КАК АдресДоставкиЗначенияПолейПустой,
| ВЫБОР
+ | КОГДА КОЛИЧЕСТВО(РАЗЛИЧНЫЕ ЗаказыКлиента.АдресДоставки) = 1
+ | ТОГДА МИНИМУМ(ВЫРАЗИТЬ(ЗаказыКлиента.АдресДоставкиЗначение КАК СТРОКА(10))) = """"
+ | ИНАЧЕ ИСТИНА
+ | КОНЕЦ КАК АдресДоставкиЗначениеПустой,
+ | ВЫБОР
| КОГДА НЕ &ИспользоватьЗаданияНаПеревозкуДляУчетаДоставкиПеревозчиками
| И МИНИМУМ(ЗаказыКлиента.СпособДоставки) = ЗНАЧЕНИЕ(Перечисление.СпособыДоставки.СиламиПеревозчика)
| И КОЛИЧЕСТВО(РАЗЛИЧНЫЕ ВЫРАЗИТЬ(ЗаказыКлиента.ДополнительнаяИнформацияПоДоставке КАК СТРОКА(10))) = 1
@@ -1426,6 +1438,11 @@
| ИНАЧЕ ЕСТЬNULL(ШапкаЗаказа.АдресДоставкиЗначенияПолей, """")
| КОНЕЦ КАК АдресДоставкиЗначенияПолей,
| ВЫБОР
+ | КОГДА ШапкаДокумента.АдресДоставкиЗначениеПустой
+ | ТОГДА """"
+ | ИНАЧЕ ЕСТЬNULL(ШапкаЗаказа.АдресДоставкиЗначение, """")
+ | КОНЕЦ КАК АдресДоставкиЗначение,
+ | ВЫБОР
| КОГДА ШапкаДокумента.ДополнительнаяИнформацияПоДоставкеПустой
| ТОГДА """"
| ИНАЧЕ ЕСТЬNULL(ШапкаЗаказа.ДополнительнаяИнформацияПоДоставке, """")
diff --git a/src/CommonModules/ПродажиСервер/Ext/Module.bsl b/src/CommonModules/ПродажиСервер/Ext/Module.bsl
index 41e2b5380..347a3d3de 100644
--- a/src/CommonModules/ПродажиСервер/Ext/Module.bsl
+++ b/src/CommonModules/ПродажиСервер/Ext/Module.bsl
@@ -8671,6 +8671,7 @@
СтруктураПараметров.Вставить("ОбработатьНастройкиПечатиНаборов", Ложь);
СтруктураПараметров.Вставить("ВыводитьСерииНоменклатуры", Константы.ВыводитьСерииВПечатныхФормах.Получить());
СтруктураПараметров.Вставить("ВыводитьСклад", Ложь);
+ СтруктураПараметров.Вставить("НужныДанныеПоИсходнымДокументам", Ложь);
Возврат СтруктураПараметров;
diff --git a/src/CommonModules/РаботаВМоделиСервисаБТСПереопределяемый/Ext/Module.bsl b/src/CommonModules/РаботаВМоделиСервисаБТСПереопределяемый/Ext/Module.bsl
index d262413ec..4894aba4f 100644
--- a/src/CommonModules/РаботаВМоделиСервисаБТСПереопределяемый/Ext/Module.bsl
+++ b/src/CommonModules/РаботаВМоделиСервисаБТСПереопределяемый/Ext/Module.bsl
@@ -30,6 +30,9 @@
// Если Истина - доступ разрешается, если Ложь - доступ запрещается.
//
Процедура УстановитьДоступКAPIОбластиДанных(Пользователь, ДоступРазрешен = Истина) Экспорт
+
+ УправлениеДоступомУТ.УстановитьДоступКAPIОбластиДанных(Пользователь, ДоступРазрешен);
+
КонецПроцедуры
#КонецОбласти
diff --git a/src/CommonModules/РаботаСАбонентамиЭДОСлужебный/Ext/Module.bsl b/src/CommonModules/РаботаСАбонентамиЭДОСлужебный/Ext/Module.bsl
index 18f856762..243f500c8 100644
--- a/src/CommonModules/РаботаСАбонентамиЭДОСлужебный/Ext/Module.bsl
+++ b/src/CommonModules/РаботаСАбонентамиЭДОСлужебный/Ext/Module.bsl
@@ -750,6 +750,8 @@
КонецЦикла;
+ ТрансграничныйЭДО.ЗаполнитьПараметрыСвязиИдентификаторов(ПараметрыСвязи);
+
Если КонтрагентыПоЭлектроннойПочте.Количество() = 0 Тогда
Возврат ПараметрыСвязи;
КонецЕсли;
diff --git a/src/CommonModules/РаботаСТабличнымиЧастямиКлиент/Ext/Module.bsl b/src/CommonModules/РаботаСТабличнымиЧастямиКлиент/Ext/Module.bsl
index 5e4e730e8..470f90903 100644
--- a/src/CommonModules/РаботаСТабличнымиЧастямиКлиент/Ext/Module.bsl
+++ b/src/CommonModules/РаботаСТабличнымиЧастямиКлиент/Ext/Module.bsl
@@ -78,13 +78,27 @@
НужноОчиститьТЧ = ЗначениеЗаполнено(ПараметрыПроверкиЗаполнения.ТабличнаяЧасть);
ТекстВопроса = "";
- Если НужноРаспровести И НужноОчиститьТЧ Тогда
- ТекстВопроса = НСтр("ru = 'Заполнение ""%1"" возможно только в непроведенном документе.
- |Табличная часть будет очищена. Очистить и отменить проведение?'");
- ИначеЕсли НужноРаспровести И Не НужноОчиститьТЧ Тогда
- ТекстВопроса = НСтр("ru = 'Заполнение ""%1"" возможно только в непроведенном документе, отменить проведение?'");
- ИначеЕсли Не НужноРаспровести И НужноОчиститьТЧ Тогда
- ТекстВопроса = НСтр("ru = 'Табличная часть ""%1"" будет очищена, продолжить?'");
+ Если ПустаяСтрока(ПараметрыПроверкиЗаполнения.ЗаголовокТабличнойЧасти) Тогда
+ Если НужноРаспровести И НужноОчиститьТЧ Тогда
+ ТекстВопроса = НСтр("ru = 'Заполнение возможно только в непроведенном документе.
+ |Табличная часть будет очищена. Очистить и отменить проведение?'");
+ ИначеЕсли НужноРаспровести И Не НужноОчиститьТЧ Тогда
+ ТекстВопроса = НСтр("ru = 'Заполнение возможно только в непроведенном документе, отменить проведение?'");
+ ИначеЕсли Не НужноРаспровести И НужноОчиститьТЧ Тогда
+ ТекстВопроса = НСтр("ru = 'Табличная часть будет очищена, продолжить?'");
+ КонецЕсли;
+ Иначе
+ Если НужноРаспровести И НужноОчиститьТЧ Тогда
+ ТекстВопроса = НСтр("ru = 'Заполнение ""%1"" возможно только в непроведенном документе.
+ |Табличная часть будет очищена. Очистить и отменить проведение?'");
+ ИначеЕсли НужноРаспровести И Не НужноОчиститьТЧ Тогда
+ ТекстВопроса = НСтр("ru = 'Заполнение ""%1"" возможно только в непроведенном документе, отменить проведение?'");
+ ИначеЕсли Не НужноРаспровести И НужноОчиститьТЧ Тогда
+ ТекстВопроса = НСтр("ru = 'Табличная часть ""%1"" будет очищена, продолжить?'");
+ КонецЕсли;
+ Если НЕ ПустаяСтрока(ТекстВопроса) Тогда
+ ТекстВопроса = СтрШаблон(ТекстВопроса, ПараметрыПроверкиЗаполнения.ЗаголовокТабличнойЧасти);
+ КонецЕсли;
КонецЕсли;
ДополнительныеПараметры = Новый Структура;
@@ -93,11 +107,6 @@
ДополнительныеПараметры.Вставить("НужноРаспровести", НужноРаспровести);
ДополнительныеПараметры.Вставить("ТабличнаяЧасть", ПараметрыПроверкиЗаполнения.ТабличнаяЧасть);
Если НЕ ПустаяСтрока(ТекстВопроса) Тогда
- Если ПустаяСтрока(ПараметрыПроверкиЗаполнения.ЗаголовокТабличнойЧасти) Тогда
- ТекстВопроса = СтрЗаменить(ТекстВопроса, " ""%1"" ", " ");
- Иначе
- ТекстВопроса = СтрШаблон(ТекстВопроса, ПараметрыПроверкиЗаполнения.ЗаголовокТабличнойЧасти);
- КонецЕсли;
ОписаниеОповещения = Новый ОписаниеОповещения("ПроверитьВозможностьЗаполненияПослеВопроса",
ЭтотОбъект, ДополнительныеПараметры);
ПоказатьВопрос(ОписаниеОповещения, ТекстВопроса, РежимДиалогаВопрос.ДаНет);
diff --git a/src/CommonModules/РаботаСФайламиБЭДКлиент/Ext/Module.bsl b/src/CommonModules/РаботаСФайламиБЭДКлиент/Ext/Module.bsl
index a275aad51..4a9848fb3 100644
--- a/src/CommonModules/РаботаСФайламиБЭДКлиент/Ext/Module.bsl
+++ b/src/CommonModules/РаботаСФайламиБЭДКлиент/Ext/Module.bsl
@@ -105,7 +105,7 @@
ДополнительныеПараметры.ОповещениеОЗавершении, ИмяФайла, ДополнительныеПараметры.Кодировка);
КонецПроцедуры
-// Выполняет преобазование имени файла в латиницу, если это требуется
+// Выполняет преобразование имени файла в латиницу, если это требуется
//
// Параметры:
// ИмяФайла - Строка
diff --git a/src/CommonModules/РазборКодаМаркировкиИСМПСлужебныйКлиентСервер/Ext/Module.bsl b/src/CommonModules/РазборКодаМаркировкиИСМПСлужебныйКлиентСервер/Ext/Module.bsl
index 444deb850..30a181e21 100644
--- a/src/CommonModules/РазборКодаМаркировкиИСМПСлужебныйКлиентСервер/Ext/Module.bsl
+++ b/src/CommonModules/РазборКодаМаркировкиИСМПСлужебныйКлиентСервер/Ext/Module.bsl
@@ -14,7 +14,11 @@
КонтрольноеЧисло = РазборКодаМаркировкиИССлужебныйКлиентСервер.КонтрольноеЧислоSSCC(Лев(Значение, ОписаниеЭлементаКМ.Длина - 1));
- Возврат КонтрольноеЧисло = Число(Прав(Значение, 1));
+ Если КонтрольноеЧисло = Неопределено Тогда
+ Возврат Ложь;
+ КонецЕсли;
+
+ Возврат КонтрольноеЧисло = Число(Прав(Значение, 1));
ИначеЕсли ОписаниеЭлементаКМ.Имя = "МРЦСтрокой" Тогда
@@ -922,7 +926,7 @@
ВидыПродукции = Новый Массив;
Для Каждого ВидПродукции Из ФильтрПоВидуПродукции.ВидыПродукции Цикл
Если Не КонструкторИСОбщегоНазначенияКлиентСервер.ЭтоПродукцияИСМП(ВидПродукции, Истина) Тогда
- Возврат Ложь;
+ Продолжить;
КонецЕсли;
Если Настройки.ДоступныеВидыПродукции.Найти(ВидПродукции) <> Неопределено Тогда
ВидыПродукции.Добавить(ВидПродукции);
diff --git a/src/CommonModules/РазборКодаМаркировкиИССлужебныйВызовСервера/Ext/Module.bsl b/src/CommonModules/РазборКодаМаркировкиИССлужебныйВызовСервера/Ext/Module.bsl
index 7db7a0310..628684134 100644
--- a/src/CommonModules/РазборКодаМаркировкиИССлужебныйВызовСервера/Ext/Module.bsl
+++ b/src/CommonModules/РазборКодаМаркировкиИССлужебныйВызовСервера/Ext/Module.bsl
@@ -19,7 +19,7 @@
Если ТипЗнч(Значения) = Тип("СправочникСсылка.ВидыПродукцииИС") Тогда
Если Не Значения.Пустая() Тогда
- Список.Добавить(Значения);
+ Возврат Строка(Значения.УникальныйИдентификатор());
КонецЕсли;
ИначеЕсли ТипЗнч(Значения) = Тип("Массив") Тогда
Для Каждого Значение Из Значения Цикл
@@ -29,9 +29,15 @@
КонецЦикла;
КонецЕсли;
- Если Список.Количество() > 0 Тогда
- Список.СортироватьПоЗначению();
+ КоличествоЭлементов = Список.Количество();
+ Если КоличествоЭлементов > 0 Тогда
+
+ Если КоличествоЭлементов > 1 Тогда
+ Список.СортироватьПоЗначению();
+ КонецЕсли;
+
Результат = ОбщегоНазначенияИС.ХэшСуммаСтроки(ЗначениеВСтрокуВнутр(Список.ВыгрузитьЗначения()));
+
Иначе
Результат = "";
КонецЕсли;
diff --git a/src/CommonModules/РазборКодаМаркировкиИССлужебныйКлиентСервер/Ext/Module.bsl b/src/CommonModules/РазборКодаМаркировкиИССлужебныйКлиентСервер/Ext/Module.bsl
index 621b477b9..63806e7d3 100644
--- a/src/CommonModules/РазборКодаМаркировкиИССлужебныйКлиентСервер/Ext/Module.bsl
+++ b/src/CommonModules/РазборКодаМаркировкиИССлужебныйКлиентСервер/Ext/Module.bsl
@@ -19,6 +19,47 @@
#КонецОбласти
+// Возвращает рассчитанное контрольное число.
+//
+// Параметры:
+// Штрихкод - Строка - часть штрихкода SSCC, состоящая из цифр, без идентификатора применения SSCC
+// (00 или (00)) и без контрольной цифры
+//
+// Возвращаемое значение:
+// - Число - Цифра контрольного числа SSCC
+// - Неопределено - при ошибке разбора
+Функция КонтрольноеЧислоSSCC(Штрихкод) Экспорт
+ КонтрольноеЧисло = 0;
+
+ Цифры = Новый Массив;
+ Позиций = СтрДлина(Штрихкод);
+ Для НомерПозиции = 1 По Позиций Цикл
+ Число = СтроковыеФункцииКлиентСервер.СтрокаВЧисло(Сред(Штрихкод, НомерПозиции, 1));
+ Если Число = Неопределено Тогда
+ Возврат Неопределено;
+ КонецЕсли;
+ Цифры.Добавить(Число);
+ КонецЦикла;
+
+ СуммаЧетных = 0;
+ СуммаНечетных = 0;
+ Для НомерПозиции = 0 По Позиций-1 Цикл
+ Если НомерПозиции%2=0 Тогда
+ СуммаЧетных=СуммаЧетных+Цифры[НомерПозиции];
+ Иначе
+ СуммаНечетных=СуммаНечетных+Цифры[НомерПозиции];
+ КонецЕсли;
+ КонецЦикла;
+
+ СверяемоеЧисло = СуммаЧетных * 3 + СуммаНечетных;
+ КонтрольноеЧисло = 10 - СверяемоеЧисло%10;
+ Если КонтрольноеЧисло = 10 Тогда
+ КонтрольноеЧисло = 0;
+ КонецЕсли;
+
+ Возврат КонтрольноеЧисло;
+КонецФункции
+
#КонецОбласти
#Область СлужебныйПрограммныйИнтерфейс
@@ -1322,43 +1363,6 @@
Возврат "3353" + СтрЗаменить(Формат(Объем, "ЧЦ=6; ЧДЦ=3; ЧН=000000; ЧВН=; ЧГ=0;"), ",", "");
КонецФункции
-// Возвращает рассчитанное контрольное число.
-//
-// Параметры:
-// Штрихкод - Строка - часть штрихкода SSCC, состоящая из цифр, без идентификатора применения SSCC
-// (00 или (00)) и без контрольной цифры
-//
-// Возвращаемое значение:
-// Число - Цифра контрольного числа SSCC
-//
-Функция КонтрольноеЧислоSSCC(Штрихкод) Экспорт
- КонтрольноеЧисло = 0;
-
- Цифры = Новый Массив;
- Позиций = СтрДлина(Штрихкод);
- Для НомерПозиции = 1 По Позиций Цикл
- Цифры.Добавить(СтроковыеФункцииКлиентСервер.СтрокаВЧисло(Сред(Штрихкод, НомерПозиции, 1)));
- КонецЦикла;
-
- СуммаЧетных = 0;
- СуммаНечетных = 0;
- Для НомерПозиции = 0 По Позиций-1 Цикл
- Если НомерПозиции%2=0 Тогда
- СуммаЧетных=СуммаЧетных+Цифры[НомерПозиции];
- Иначе
- СуммаНечетных=СуммаНечетных+Цифры[НомерПозиции];
- КонецЕсли;
- КонецЦикла;
-
- СверяемоеЧисло = СуммаЧетных * 3 + СуммаНечетных;
- КонтрольноеЧисло = 10 - СверяемоеЧисло%10;
- Если КонтрольноеЧисло = 10 Тогда
- КонтрольноеЧисло = 0;
- КонецЕсли;
-
- Возврат КонтрольноеЧисло;
-КонецФункции
-
Функция ЗаводскойСерийныйНомерИзШтрихкода(Штрихкод, Base64 = Истина) Экспорт
Результат = "";
@@ -2470,7 +2474,7 @@
Значение = "";
Если ОписаниеКода.ФиксированнаяДлина > 0 Тогда
- Значение = Сред(ШтрихКод, НомерСимвола, ОписаниеКода.ФиксированнаяДлина);
+ Значение = Сред(Штрихкод, НомерСимвола, ОписаниеКода.ФиксированнаяДлина);
Если СтрДлина(Значение) <> ОписаниеКода.ФиксированнаяДлина Тогда
РезультатРазбора.ОшибкаРазбора = Истина;
РезультатРазбора.ОписаниеОшибки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
diff --git a/src/CommonModules/РазборКодаМаркировкиИССлужебныйПовтИсп/Ext/Module.bsl b/src/CommonModules/РазборКодаМаркировкиИССлужебныйПовтИсп/Ext/Module.bsl
index 171f7fd10..09a451449 100644
--- a/src/CommonModules/РазборКодаМаркировкиИССлужебныйПовтИсп/Ext/Module.bsl
+++ b/src/CommonModules/РазборКодаМаркировкиИССлужебныйПовтИсп/Ext/Module.bsl
@@ -3,8 +3,15 @@
#Область НастройкиРазбораКодаМаркировки
-Функция НастройкиРазбораКодаМаркировки() Экспорт
- Возврат РазборКодаМаркировкиИССлужебный.НастройкиРазбораКодаМаркировки();
+// Формирует настройки разбора кода маркировки по учитываемым видам продукции
+//
+// Параметры:
+// ВидПродукции - СправочникСсылка.ВидыПродукцииИС, Неопределено - Служебный параметр. Фильтр по виду продукции.
+// ТолькоУчитываемыеВидыПродукции - Булево - Служебный параметр. Настройки формируются исходя из видов продукции по которым ведется учет в системе.
+// Возвращаемое значение:
+// См. РазборКодаМаркировкиИССлужебный.ОбщиеНастройкиРазбораКодаМаркировки
+Функция НастройкиРазбораКодаМаркировки(ВидПродукции = Неопределено, ТолькоУчитываемыеВидыПродукции = Истина) Экспорт
+ Возврат РазборКодаМаркировкиИССлужебный.НастройкиРазбораКодаМаркировки(ВидПродукции, ТолькоУчитываемыеВидыПродукции);
КонецФункции
#КонецОбласти
diff --git a/src/CommonModules/РасхожденияСервер/Ext/Module.bsl b/src/CommonModules/РасхожденияСервер/Ext/Module.bsl
index 5ffc3f23f..fc00e2717 100644
--- a/src/CommonModules/РасхожденияСервер/Ext/Module.bsl
+++ b/src/CommonModules/РасхожденияСервер/Ext/Module.bsl
@@ -4891,7 +4891,8 @@
| ЗНАЧЕНИЕ(Перечисление.ВариантыДействийПоТоварамВАктеПослеОтгрузки.УчестьПриИнвентаризации),
| ЗНАЧЕНИЕ(Перечисление.ВариантыДействийПоТоварамВАктеПослеОтгрузки.Списать),
| ЗНАЧЕНИЕ(Перечисление.ВариантыДействийПоТоварамВАктеПослеОтгрузки.СписатьИзПути),
- | ЗНАЧЕНИЕ(Перечисление.ВариантыДействийПоТоварамВАктеПослеОтгрузки.Вернуть)
+ | ЗНАЧЕНИЕ(Перечисление.ВариантыДействийПоТоварамВАктеПослеОтгрузки.Вернуть),
+ | ЗНАЧЕНИЕ(Перечисление.ВариантыДействийПоТоварамВАктеПослеОтгрузки.ОприходоватьВПуть)
| )
| ТОГДА АктОРасхожденияхПослеОтгрузкиТовары.КоличествоУпаковок
| ИНАЧЕ АктОРасхожденияхПослеОтгрузкиТовары.КоличествоУпаковокПоДокументу
@@ -4935,7 +4936,8 @@
| ЗНАЧЕНИЕ(Перечисление.ВариантыДействийПоТоварамВАктеПослеОтгрузки.УчестьПриИнвентаризации),
| ЗНАЧЕНИЕ(Перечисление.ВариантыДействийПоТоварамВАктеПослеОтгрузки.Списать),
| ЗНАЧЕНИЕ(Перечисление.ВариантыДействийПоТоварамВАктеПослеОтгрузки.СписатьИзПути),
- | ЗНАЧЕНИЕ(Перечисление.ВариантыДействийПоТоварамВАктеПослеОтгрузки.Вернуть)
+ | ЗНАЧЕНИЕ(Перечисление.ВариантыДействийПоТоварамВАктеПослеОтгрузки.Вернуть),
+ | ЗНАЧЕНИЕ(Перечисление.ВариантыДействийПоТоварамВАктеПослеОтгрузки.ОприходоватьВПуть)
| )
| ТОГДА АктОРасхожденияхПослеОтгрузкиСерии.Количество
| ИНАЧЕ АктОРасхожденияхПослеОтгрузкиСерии.КоличествоПоДокументу
diff --git a/src/CommonModules/РасчетСебестоимостиКорректировкаСтоимости/Ext/Module.bsl b/src/CommonModules/РасчетСебестоимостиКорректировкаСтоимости/Ext/Module.bsl
index cc51efd14..8f62ac2ee 100644
--- a/src/CommonModules/РасчетСебестоимостиКорректировкаСтоимости/Ext/Module.bsl
+++ b/src/CommonModules/РасчетСебестоимостиКорректировкаСтоимости/Ext/Module.bsl
@@ -12941,7 +12941,9 @@
| Т.ОтклоненияВСтоимостиРегл + Т.ДопРасходыРегл + Т.НДСРегл КАК СуммаРегл,
| Т.ОтклоненияВСтоимостиУпр + Т.ДопРасходыУпр + Т.НДСУпр КАК СуммаУпр,
| 0 КАК ПостояннаяРазница,
- | Т.ОтклоненияВСтоимостиРегл + Т.ДопРасходыРегл + Т.НДСРегл КАК ВременнаяРазница,
+ // Сумма доп расходов в НУ отражается с пустым периодом отклонений.
+ // Сумма НУ = ДопРасходыРегл + НДСРегл, поэтому во временную разницу попадает только сумма отклонений
+ | Т.ОтклоненияВСтоимостиРегл КАК ВременнаяРазница,
| 0 КАК СуммаНДД
|
|ПОМЕСТИТЬ ВтДвиженияПрочиеРасходы
@@ -12999,10 +13001,10 @@
| 0 КАК СуммаУпр,
| (ВЫБОР
| КОГДА НЕ Т.КорСтатьяРасходов.ПринятиеКНалоговомуУчету
- | ТОГДА Т.ОтклоненияВСтоимостиРегл + Т.ДопРасходыРегл + Т.НДСРегл - Т.ВременнаяРазница
+ | ТОГДА Т.ОтклоненияВСтоимостиРегл - Т.ВременнаяРазница
| ИНАЧЕ Т.ПостояннаяРазница КОНЕЦ) КАК ПостояннаяРазница,
// Из суммы временной разницы вычтем временную разницу, отраженную в движении по регл. учету.
- | Т.ВременнаяРазница - (Т.ОтклоненияВСтоимостиРегл + Т.ДопРасходыРегл + Т.НДСРегл) КАК ВременнаяРазница,
+ | Т.ВременнаяРазница - Т.ОтклоненияВСтоимостиРегл КАК ВременнаяРазница,
| Т.НДД КАК СуммаНДД
|ИЗ
| ВтВыбытияДляОтклонений КАК Т
@@ -13058,10 +13060,10 @@
// Признак Сторно не заполняется, т.к. это расчетные движения, а не сторнированные движения исходного документа.
| ЛОЖЬ КАК Сторно,
|
- | Т.ОтклоненияВСтоимостиСНДС + Т.ДопРасходыСНДС КАК Сумма,
- | Т.ОтклоненияВСтоимостиБезНДС + Т.ДопРасходыБезНДС КАК СуммаБезНДС,
- | Т.ОтклоненияВСтоимостиРегл + Т.ДопРасходыРегл + Т.НДСРегл КАК СуммаРегл,
- | Т.ОтклоненияВСтоимостиУпр + Т.ДопРасходыУпр + Т.НДСУпр КАК СуммаУпр,
+ | Т.ОтклоненияВСтоимостиСНДС КАК Сумма,
+ | Т.ОтклоненияВСтоимостиБезНДС КАК СуммаБезНДС,
+ | Т.ОтклоненияВСтоимостиРегл + Т.НДСРегл КАК СуммаРегл,
+ | Т.ОтклоненияВСтоимостиУпр + Т.НДСУпр КАК СуммаУпр,
| Т.ПостояннаяРазница,
| Т.ВременнаяРазница,
| Т.НДД КАК СуммаНДД
@@ -13072,6 +13074,63 @@
| И Т.СтатьяРасходовСписания <> НЕОПРЕДЕЛЕНО
| И Т.СтатьяРасходовСписания <> ЗНАЧЕНИЕ(ПланВидовХарактеристик.СтатьиРасходов.ПустаяСсылка)
| И Т.Номенклатура = НЕОПРЕДЕЛЕНО
+ |
+ |ОБЪЕДИНИТЬ ВСЕ
+ |
+ // Движения Расход на суммы дополнительных расходов.
+ |ВЫБРАТЬ
+ | ""4"" КАК ЗапросИсточник,
+ | Т.Регистратор,
+ | Т.Регистратор КАК ДокументДвижения,
+ | ЗНАЧЕНИЕ(ВидДвиженияНакопления.Расход) КАК ВидДвижения,
+ | Т.Период,
+ | Т.НомерУзлаИсточник,
+ | Т.НомерУзлаПриемник,
+ |
+ | Т.Организация КАК Организация,
+ | Т.Подразделение КАК Подразделение,
+ | Т.НаправлениеДеятельности КАК НаправлениеДеятельности,
+ | Т.СтатьяРасходовСписания КАК СтатьяРасходов,
+ | Т.АналитикаРасходов КАК АналитикаРасходов,
+ |
+ | Т.КорНаправлениеДеятельности КАК КорНаправлениеДеятельности,
+ | Т.КорПодразделение КАК КорПодразделение,
+ | (ВЫБОР
+ | КОГДА Т.СтатьяРасходовСписания <> Т.КорСтатьяРасходов
+ | ИЛИ Т.АналитикаРасходов <> Т.КорАналитикаРасходов
+ | ТОГДА Т.КорСтатьяРасходов
+ | ИНАЧЕ ЗНАЧЕНИЕ(ПланВидовХарактеристик.СтатьиРасходов.ПустаяСсылка) КОНЕЦ) КАК КорСтатьяРасходов,
+ | (ВЫБОР
+ | КОГДА Т.СтатьяРасходовСписания <> Т.КорСтатьяРасходов
+ | ИЛИ Т.АналитикаРасходов <> Т.КорАналитикаРасходов
+ | ТОГДА Т.КорАналитикаРасходов
+ | ИНАЧЕ НЕОПРЕДЕЛЕНО КОНЕЦ) КАК КорАналитикаРасходов,
+ | Т.ХозяйственнаяОперация,
+ | Т.ИдентификаторФинЗаписи,
+ | Т.НастройкаХозяйственнойОперации,
+ // У движений с суммами дополнительных расходов по товарам не заполняется период отклонения,
+ // т.к. доп расходы всегда относятся к текущему периоду.
+ | (ВЫБОР
+ | КОГДА Т.ХозяйственнаяОперация = ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.СписаниеОтклоненийКРаспределению)
+ | ТОГДА Т.ПериодОтклоненияИсточник
+ | ИНАЧЕ ДАТАВРЕМЯ(1,1,1) КОНЕЦ) ПериодОтклонения,
+ // Признак Сторно не заполняется, т.к. это расчетные движения, а не сторнированные движения исходного документа.
+ | ЛОЖЬ КАК Сторно,
+ |
+ | Т.ДопРасходыСНДС КАК Сумма,
+ | Т.ДопРасходыБезНДС КАК СуммаБезНДС,
+ | Т.ДопРасходыРегл КАК СуммаРегл,
+ | Т.ДопРасходыУпр КАК СуммаУпр,
+ | 0 КАК ПостояннаяРазница,
+ | 0 КАК ВременнаяРазница,
+ | 0 КАК СуммаНДД
+ |ИЗ
+ | ВтВыбытияДляОтклонений КАК Т
+ |ГДЕ
+ | НЕ Т.ЭтоОстатки
+ | И Т.СтатьяРасходовСписания <> НЕОПРЕДЕЛЕНО
+ | И Т.СтатьяРасходовСписания <> ЗНАЧЕНИЕ(ПланВидовХарактеристик.СтатьиРасходов.ПустаяСсылка)
+ | И Т.Номенклатура = НЕОПРЕДЕЛЕНО
|";
КонецФункции
@@ -17928,7 +17987,9 @@
РасчетСебестоимостиПрикладныеАлгоритмы.ИзменитьПолеВОписанииПолейЗапроса(ТаблицаОписанияПолей,
"НастройкаХозяйственнойОперации", "ЗНАЧЕНИЕ(Справочник.НастройкиХозяйственныхОпераций.РаспределениеРасходовНаСебестоимость)");
РасчетСебестоимостиПрикладныеАлгоритмы.ИзменитьПолеВОписанииПолейЗапроса(ТаблицаОписанияПолей,
- "ПериодОтклонения", "ВЫБОР КОГДА ПериодПоступления < &НачалоПериода ТОГДА ПериодПоступления
+ "ПериодОтклонения", "ВЫБОР
+ | КОГДА Организация В (&ОрганизацииСРаспределениемОтклоненийВПрошлыхПериодах)
+ | И ПериодПоступления < &НачалоПериода ТОГДА ПериодПоступления
| ИНАЧЕ ДАТАВРЕМЯ(1,1,1) КОНЕЦ");
// ПеремещениеТоваровМеждуФилиалами, расход
@@ -18227,8 +18288,12 @@
| ДД.ИдентификаторСтроки,
| ДД.НастройкаХозяйственнойОперации,
| ДД.ИдентификаторФинЗаписи,
- | ЕСТЬNULL(РегистраторыРасчета.Ссылка,
- | ЗНАЧЕНИЕ(Документ.РегистраторРасчетаСебестоимости.ПустаяСсылка)) КАК ДокументРасчета,
+ | (ВЫБОР
+ | КОГДА &РежимЗакрытияМесяца = ЗНАЧЕНИЕ(Перечисление.РежимыЗакрытияМесяца.ПредварительноеЗакрытие)
+ | ИЛИ НЕ &ВыделятьОтклоненияСебестоимостиОкончательногоРасчета
+ | ТОГДА ЗНАЧЕНИЕ(Документ.РегистраторРасчетаСебестоимости.ПустаяСсылка)
+ | ИНАЧЕ ЕСТЬNULL(РегистраторыРасчета.Ссылка,
+ | ЗНАЧЕНИЕ(Документ.РегистраторРасчетаСебестоимости.ПустаяСсылка)) КОНЕЦ) КАК ДокументРасчета,
| &РежимЗакрытияМесяца КАК РежимЗакрытияМесяца
|
|ПОМЕСТИТЬ ВтДвиженияПрочиеДоходы
@@ -18307,8 +18372,12 @@
| ДД.ИдентификаторСтроки,
| ДД.НастройкаХозяйственнойОперации,
| ДД.ИдентификаторФинЗаписи,
- | ЕСТЬNULL(РегистраторыРасчета.Ссылка,
- | ЗНАЧЕНИЕ(Документ.РегистраторРасчетаСебестоимости.ПустаяСсылка)) КАК ДокументРасчета,
+ | (ВЫБОР
+ | КОГДА &РежимЗакрытияМесяца = ЗНАЧЕНИЕ(Перечисление.РежимыЗакрытияМесяца.ПредварительноеЗакрытие)
+ | ИЛИ НЕ &ВыделятьОтклоненияСебестоимостиОкончательногоРасчета
+ | ТОГДА ЗНАЧЕНИЕ(Документ.РегистраторРасчетаСебестоимости.ПустаяСсылка)
+ | ИНАЧЕ ЕСТЬNULL(РегистраторыРасчета.Ссылка,
+ | ЗНАЧЕНИЕ(Документ.РегистраторРасчетаСебестоимости.ПустаяСсылка)) КОНЕЦ) КАК ДокументРасчета,
| &РежимЗакрытияМесяца КАК РежимЗакрытияМесяца
|
|ПОМЕСТИТЬ ВтДвиженияПрочиеРасходы
diff --git a/src/CommonModules/РасчетСебестоимостиНДС/Ext/Module.bsl b/src/CommonModules/РасчетСебестоимостиНДС/Ext/Module.bsl
index ad6567caf..8ffebf120 100644
--- a/src/CommonModules/РасчетСебестоимостиНДС/Ext/Module.bsl
+++ b/src/CommonModules/РасчетСебестоимостиНДС/Ext/Module.bsl
@@ -8500,6 +8500,8 @@
| ТОГДА ДД.Партия
| ИНАЧЕ ДД.ДокументИсточник КОНЕЦ) КАК ДокументИсточник,
| (ВЫБОР
+ | КОГДА ДД.Организация В (&ОрганизацииСреднескользящая)
+ | ТОГДА ЗНАЧЕНИЕ(Документ.РегистраторРасчетаСебестоимости.ПустаяСсылка)
| КОГДА ДД.ТипЗаписи В (
| ЗНАЧЕНИЕ(Перечисление.ТипыЗаписейПартий.Партия),
| ЗНАЧЕНИЕ(Перечисление.ТипыЗаписейПартий.ОстатокСгруппированный),
@@ -8565,6 +8567,15 @@
| ЗНАЧЕНИЕ(Перечисление.ТипыЗаписейПартий.ПартияСгруппированная))
| ТОГДА ДД.Партия
| ИНАЧЕ ДД.ДокументИсточник КОНЕЦ), // ДокументИсточник
+ | (ВЫБОР
+ | КОГДА ДД.Организация В (&ОрганизацииСреднескользящая)
+ | ТОГДА ЗНАЧЕНИЕ(Документ.РегистраторРасчетаСебестоимости.ПустаяСсылка)
+ | КОГДА ДД.ТипЗаписи В (
+ | ЗНАЧЕНИЕ(Перечисление.ТипыЗаписейПартий.Партия),
+ | ЗНАЧЕНИЕ(Перечисление.ТипыЗаписейПартий.ОстатокСгруппированный),
+ | ЗНАЧЕНИЕ(Перечисление.ТипыЗаписейПартий.ПартияСгруппированная))
+ | ТОГДА ДД.Партия
+ | ИНАЧЕ ДД.ДокументИсточник КОНЕЦ), // ДокументИсточникСебестоимости
| ДД.СтатьяСписанияНДС,
| ДД.АналитикаСписанияНДС,
| ДД.КорНаправлениеДеятельности,
@@ -12863,40 +12874,70 @@
| Т.ДокументПоступления КАК ДокументПоступления,
| Т.АналитикаУчетаПартийДокументаПоступления КАК АналитикаУчетаПартийДокументаПоступления,
|
- | ВЫБОР КОГДА ВЫРАЗИТЬ(Т.СтоимостьСНДС КАК ЧИСЛО (31,2)) > Т.СтоимостьСНДС
- | И Т.СтоимостьСНДС > 0
- | И НЕ ОСНО.СистемаНалогообложения ЕСТЬ NULL
- | ТОГДА ВЫРАЗИТЬ(Т.СтоимостьСНДС КАК ЧИСЛО (31,2)) - 0.01
+ | ВЫБОР
+ | КОГДА ВЫРАЗИТЬ(Т.СтоимостьСНДС КАК ЧИСЛО (31,2)) > Т.СтоимостьСНДС
+ | И Т.СтоимостьСНДС > 0
+ | И ОСНО.СистемаНалогообложения ЕСТЬ НЕ NULL
+ | ТОГДА ВЫРАЗИТЬ(Т.СтоимостьСНДС КАК ЧИСЛО (31,2)) - 0.01
+ | КОГДА ВЫРАЗИТЬ(Т.СтоимостьСНДС КАК ЧИСЛО (31,2)) < Т.СтоимостьСНДС
+ | И Т.СтоимостьСНДС < 0
+ | И ОСНО.СистемаНалогообложения ЕСТЬ НЕ NULL
+ | ТОГДА ВЫРАЗИТЬ(Т.СтоимостьСНДС КАК ЧИСЛО (31,2)) + 0.01
| ИНАЧЕ ВЫРАЗИТЬ(Т.СтоимостьСНДС КАК ЧИСЛО (31,2))
| КОНЕЦ КАК СтоимостьСНДС,
- | ВЫБОР КОГДА ВЫРАЗИТЬ(Т.СтоимостьБезНДС КАК ЧИСЛО (31,2)) > Т.СтоимостьБезНДС
- | И Т.СтоимостьБезНДС > 0
- | И НЕ ОСНО.СистемаНалогообложения ЕСТЬ NULL
- | ТОГДА ВЫРАЗИТЬ(Т.СтоимостьБезНДС КАК ЧИСЛО (31,2)) - 0.01
+ | ВЫБОР
+ | КОГДА ВЫРАЗИТЬ(Т.СтоимостьБезНДС КАК ЧИСЛО (31,2)) > Т.СтоимостьБезНДС
+ | И Т.СтоимостьБезНДС > 0
+ | И ОСНО.СистемаНалогообложения ЕСТЬ НЕ NULL
+ | ТОГДА ВЫРАЗИТЬ(Т.СтоимостьБезНДС КАК ЧИСЛО (31,2)) - 0.01
+ | КОГДА ВЫРАЗИТЬ(Т.СтоимостьБезНДС КАК ЧИСЛО (31,2)) < Т.СтоимостьБезНДС
+ | И Т.СтоимостьБезНДС < 0
+ | И ОСНО.СистемаНалогообложения ЕСТЬ НЕ NULL
+ | ТОГДА ВЫРАЗИТЬ(Т.СтоимостьБезНДС КАК ЧИСЛО (31,2)) + 0.01
| ИНАЧЕ ВЫРАЗИТЬ(Т.СтоимостьБезНДС КАК ЧИСЛО (31,2))
| КОНЕЦ КАК СтоимостьБезНДС,
- | ВЫБОР КОГДА ВЫРАЗИТЬ(Т.СтоимостьБезНДСРегл КАК ЧИСЛО (31,2)) > Т.СтоимостьБезНДСРегл
- | И Т.СтоимостьБезНДСРегл > 0
- | И НЕ ОСНО.СистемаНалогообложения ЕСТЬ NULL
- | ТОГДА ВЫРАЗИТЬ(Т.СтоимостьБезНДСРегл КАК ЧИСЛО (31,2)) - 0.01
+ | ВЫБОР
+ | КОГДА ВЫРАЗИТЬ(Т.СтоимостьБезНДСРегл КАК ЧИСЛО (31,2)) > Т.СтоимостьБезНДСРегл
+ | И Т.СтоимостьБезНДСРегл > 0
+ | И ОСНО.СистемаНалогообложения ЕСТЬ НЕ NULL
+ | ТОГДА ВЫРАЗИТЬ(Т.СтоимостьБезНДСРегл КАК ЧИСЛО (31,2)) - 0.01
+ | КОГДА ВЫРАЗИТЬ(Т.СтоимостьБезНДСРегл КАК ЧИСЛО (31,2)) < Т.СтоимостьБезНДСРегл
+ | И Т.СтоимостьБезНДСРегл < 0
+ | И ОСНО.СистемаНалогообложения ЕСТЬ НЕ NULL
+ | ТОГДА ВЫРАЗИТЬ(Т.СтоимостьБезНДСРегл КАК ЧИСЛО (31,2)) + 0.01
| ИНАЧЕ ВЫРАЗИТЬ(Т.СтоимостьБезНДСРегл КАК ЧИСЛО (31,2))
| КОНЕЦ КАК СтоимостьБезНДСРегл,
- | ВЫБОР КОГДА ВЫРАЗИТЬ(Т.НДСРегл КАК ЧИСЛО (31,2)) > Т.НДСРегл
- | И Т.НДСРегл > 0
- | И НЕ ОСНО.СистемаНалогообложения ЕСТЬ NULL
- | ТОГДА ВЫРАЗИТЬ(Т.НДСРегл КАК ЧИСЛО (31,2)) - 0.01
+ | ВЫБОР
+ | КОГДА ВЫРАЗИТЬ(Т.НДСРегл КАК ЧИСЛО (31,2)) > Т.НДСРегл
+ | И Т.НДСРегл > 0
+ | И ОСНО.СистемаНалогообложения ЕСТЬ НЕ NULL
+ | ТОГДА ВЫРАЗИТЬ(Т.НДСРегл КАК ЧИСЛО (31,2)) - 0.01
+ | КОГДА ВЫРАЗИТЬ(Т.НДСРегл КАК ЧИСЛО (31,2)) < Т.НДСРегл
+ | И Т.НДСРегл < 0
+ | И ОСНО.СистемаНалогообложения ЕСТЬ НЕ NULL
+ | ТОГДА ВЫРАЗИТЬ(Т.НДСРегл КАК ЧИСЛО (31,2)) + 0.01
| ИНАЧЕ ВЫРАЗИТЬ(Т.НДСРегл КАК ЧИСЛО (31,2))
| КОНЕЦ КАК НДСРегл,
- | ВЫБОР КОГДА ВЫРАЗИТЬ(Т.СтоимостьБезНДСУпр КАК ЧИСЛО (31,2)) > Т.СтоимостьБезНДСУпр
- | И Т.СтоимостьБезНДСУпр > 0
- | И НЕ ОСНО.СистемаНалогообложения ЕСТЬ NULL
- | ТОГДА ВЫРАЗИТЬ(Т.СтоимостьБезНДСУпр КАК ЧИСЛО (31,2)) - 0.01
+ | ВЫБОР
+ | КОГДА ВЫРАЗИТЬ(Т.СтоимостьБезНДСУпр КАК ЧИСЛО (31,2)) > Т.СтоимостьБезНДСУпр
+ | И Т.СтоимостьБезНДСУпр > 0
+ | И ОСНО.СистемаНалогообложения ЕСТЬ НЕ NULL
+ | ТОГДА ВЫРАЗИТЬ(Т.СтоимостьБезНДСУпр КАК ЧИСЛО (31,2)) - 0.01
+ | КОГДА ВЫРАЗИТЬ(Т.СтоимостьБезНДСУпр КАК ЧИСЛО (31,2)) < Т.СтоимостьБезНДСУпр
+ | И Т.СтоимостьБезНДСУпр < 0
+ | И ОСНО.СистемаНалогообложения ЕСТЬ НЕ NULL
+ | ТОГДА ВЫРАЗИТЬ(Т.СтоимостьБезНДСУпр КАК ЧИСЛО (31,2)) + 0.01
| ИНАЧЕ ВЫРАЗИТЬ(Т.СтоимостьБезНДСУпр КАК ЧИСЛО (31,2))
| КОНЕЦ КАК СтоимостьБезНДСУпр,
- | ВЫБОР КОГДА ВЫРАЗИТЬ(Т.НДСУпр КАК ЧИСЛО (31,2)) > Т.НДСУпр
- | И Т.НДСУпр > 0
- | И НЕ ОСНО.СистемаНалогообложения ЕСТЬ NULL
- | ТОГДА ВЫРАЗИТЬ(Т.НДСУпр КАК ЧИСЛО (31,2)) - 0.01
+ | ВЫБОР
+ | КОГДА ВЫРАЗИТЬ(Т.НДСУпр КАК ЧИСЛО (31,2)) > Т.НДСУпр
+ | И Т.НДСУпр > 0
+ | И ОСНО.СистемаНалогообложения ЕСТЬ НЕ NULL
+ | ТОГДА ВЫРАЗИТЬ(Т.НДСУпр КАК ЧИСЛО (31,2)) - 0.01
+ | КОГДА ВЫРАЗИТЬ(Т.НДСУпр КАК ЧИСЛО (31,2)) < Т.НДСУпр
+ | И Т.НДСУпр < 0
+ | И ОСНО.СистемаНалогообложения ЕСТЬ НЕ NULL
+ | ТОГДА ВЫРАЗИТЬ(Т.НДСУпр КАК ЧИСЛО (31,2)) + 0.01
| ИНАЧЕ ВЫРАЗИТЬ(Т.НДСУпр КАК ЧИСЛО (31,2))
| КОНЕЦ КАК НДСУпр,
| Т.Количество КАК Количество
diff --git a/src/CommonModules/РасчетСебестоимостиПостатейныеЗатраты/Ext/Module.bsl b/src/CommonModules/РасчетСебестоимостиПостатейныеЗатраты/Ext/Module.bsl
index 8afd18e32..1772b9b2e 100644
--- a/src/CommonModules/РасчетСебестоимостиПостатейныеЗатраты/Ext/Module.bsl
+++ b/src/CommonModules/РасчетСебестоимостиПостатейныеЗатраты/Ext/Module.bsl
@@ -3997,7 +3997,11 @@
ТекстЗапроса =
"ВЫБРАТЬ
- | ТоварыОрганизаций.АналитикаУчетаНоменклатуры КАК АналитикаУчетаНоменклатуры,
+ | ВЫБОР
+ | КОГДА &УчитыватьСебестоимостьТоваровПоНазначениям
+ | ТОГДА ТоварыОрганизаций.АналитикаУчетаНоменклатуры
+ | ИНАЧЕ АналитикаБезНазначения.КлючАналитики
+ | КОНЕЦ КАК АналитикаУчетаНоменклатуры,
| ТоварыОрганизаций.Организация КАК Организация,
| ТоварыОрганизаций.ВидЗапасов КАК ВидЗапасов,
| ТоварыОрганизаций.Регистратор КАК Регистратор,
@@ -4007,11 +4011,24 @@
| РегистрНакопления.ТоварыОрганизаций КАК ТоварыОрганизаций
| ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.ТаможеннаяДекларацияИмпорт КАК Отбор
| ПО ТоварыОрганизаций.Регистратор = Отбор.Ссылка
+ | ВНУТРЕННЕЕ СОЕДИНЕНИЕ Справочник.КлючиАналитикиУчетаНоменклатуры КАК Аналитика
+ | ПО Аналитика.Ссылка = ТоварыОрганизаций.АналитикаУчетаНоменклатуры
+ | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.АналитикаУчетаНоменклатуры КАК АналитикаБезНазначения
+ | ПО Аналитика.Номенклатура = АналитикаБезНазначения.Номенклатура
+ | И Аналитика.Характеристика = АналитикаБезНазначения.Характеристика
+ | И Аналитика.Серия = АналитикаБезНазначения.Серия
+ | И Аналитика.МестоХранения = АналитикаБезНазначения.МестоХранения
+ | И ЗНАЧЕНИЕ(Справочник.Назначения.ПустаяСсылка) = АналитикаБезНазначения.Назначение
+ | И Аналитика.СтатьяКалькуляции = АналитикаБезНазначения.СтатьяКалькуляции
|ГДЕ
| ТоварыОрганизаций.Период <= &КонецПериода
| И ТоварыОрганизаций.Активность
|СГРУППИРОВАТЬ ПО
- | ТоварыОрганизаций.АналитикаУчетаНоменклатуры,
+ | ВЫБОР
+ | КОГДА &УчитыватьСебестоимостьТоваровПоНазначениям
+ | ТОГДА ТоварыОрганизаций.АналитикаУчетаНоменклатуры
+ | ИНАЧЕ АналитикаБезНазначения.КлючАналитики
+ | КОНЕЦ,
| ТоварыОрганизаций.Организация,
| ТоварыОрганизаций.ВидЗапасов,
| ТоварыОрганизаций.Регистратор
@@ -9947,7 +9964,11 @@
| Источник.Регистратор,
| Источник.Период,
| Источник.ТипЗаписи,
- | Источник.ПериодПоступления,
+ // При методе оценки "Средняя за месяц" период поступления заполняется началом текущего периода, т.к. при ФИФО база
+ // распределения включает направления выбытия в прошлых периодах.
+ // Поле ПериодПоступления используется при формировании движений по регистру "Отклонения в стоимости товаров"
+ // в процедуре СформироватьДвиженияОтклоненияВСтоимостиТоваровДополнительныеРасходыЗапросом().
+ | &НачалоПериода КАК ПериодПоступления,
// Аналитика распределения отклонения в стоимости, распределения по выбывшим товарам.
// Для дополнительных расходов не применимо, т.к. источником дополнительных расходов являются расходы.
| ВЫБОР
diff --git a/src/CommonModules/РасчетСебестоимостиПроведениеДокументов/Ext/Module.bsl b/src/CommonModules/РасчетСебестоимостиПроведениеДокументов/Ext/Module.bsl
index f08f32895..865a9dd80 100644
--- a/src/CommonModules/РасчетСебестоимостиПроведениеДокументов/Ext/Module.bsl
+++ b/src/CommonModules/РасчетСебестоимостиПроведениеДокументов/Ext/Module.bsl
@@ -777,6 +777,7 @@
ДобавитьОписаниеПоляОперации(МетаданныеРегистра, ОписаниеОперации.Поля, "АналитикаУчетаПартий",, Истина);
ДобавитьОписаниеПоляОперации(МетаданныеРегистра, ОписаниеОперации.Поля, "СпособОпределенияСебестоимости",, Истина);
ДобавитьОписаниеПоляОперации(МетаданныеРегистра, ОписаниеОперации.Поля, "ДокументДвижения",, Истина);
+ ДобавитьОписаниеПоляОперации(МетаданныеРегистра, ОписаниеОперации.Поля, "ПериодПродажи",, Истина);
Возврат ОписаниеОперации;
@@ -4085,7 +4086,11 @@
| ДанныеДокумента.АналитикаУчетаПоПартнерам КАК АналитикаУчетаПоПартнерам,
| ДанныеДокумента.Подразделение КАК Подразделение,
| ДанныеДокумента.ЗаказКлиента КАК ЗаказКлиента,
- | ДанныеДокумента.ПериодДокументаИсточника КАК ПериодПродажи,
+ | ВЫБОР
+ | КОГДА ДанныеДокумента.ЕстьПолеЗапроса_ПериодПродажи
+ | ТОГДА ДанныеДокумента.ПериодПродажи
+ | ИНАЧЕ ДанныеДокумента.ПериодДокументаИсточника
+ | КОНЕЦ КАК ПериодПродажи,
|
// Количественные и суммовые показатели
| ДанныеДокумента.Количество КАК Количество,
diff --git a/src/CommonModules/РасчетСтатусовОформленияИСУТ/Ext/Module.bsl b/src/CommonModules/РасчетСтатусовОформленияИСУТ/Ext/Module.bsl
index 9b860c583..43981fc93 100644
--- a/src/CommonModules/РасчетСтатусовОформленияИСУТ/Ext/Module.bsl
+++ b/src/CommonModules/РасчетСтатусовОформленияИСУТ/Ext/Module.bsl
@@ -357,9 +357,13 @@
КонецЕсли;
ДокументОснование = Источник.Отбор.ДокументОснование.Значение;
- Если ТипЗнч(ДокументОснование) = Тип("ДокументСсылка.ПриходныйКассовыйОрдер") И ЗначениеЗаполнено(ДокументОснование) Тогда
+ ТипОснования = ТипЗнч(ДокументОснование);
+ Если ЗначениеЗаполнено(ДокументОснование)
+ И (ТипОснования = Тип("ДокументСсылка.ПриходныйКассовыйОрдер")
+ Или ТипОснования = Тип("ДокументСсылка.ОперацияПоПлатежнойКарте")) Тогда
Реализация = ОбщегоНазначения.ЗначениеРеквизитаОбъекта(ДокументОснование, "ДокументОснование");
- Если ЗначениеЗаполнено(Реализация) Тогда
+ Если ЗначениеЗаполнено(Реализация)
+ И Метаданные.ОпределяемыеТипы.ОснованиеСтатусыОформленияДокументовИСМП.Тип.СодержитТип(ТипЗнч(Реализация)) Тогда
РасчетСтатусовОформленияИСМП.РассчитатьСтатусОформленияДокумента(Реализация);
КонецЕсли;
КонецЕсли;
diff --git a/src/CommonModules/РеализацияТоваровУслугЛокализация/Ext/Module.bsl b/src/CommonModules/РеализацияТоваровУслугЛокализация/Ext/Module.bsl
index 227124793..fa55c95e8 100644
--- a/src/CommonModules/РеализацияТоваровУслугЛокализация/Ext/Module.bsl
+++ b/src/CommonModules/РеализацияТоваровУслугЛокализация/Ext/Module.bsl
@@ -4595,27 +4595,31 @@
| ТаблицаТоваров.СуммаНДС КАК СуммаНДС,
| ТаблицаТоваров.СуммаБезНДС + ТаблицаТоваров.СуммаНДС КАК СуммаСНДС,
| ТаблицаТоваров.МассаНетто КАК МассаНетто,
- | ВЫБОР
- | КОГДА ДанныеУпаковок.КоличествоМестДробное = (ВЫРАЗИТЬ(ДанныеУпаковок.КоличествоМестДробное КАК ЧИСЛО(12, 0)))
- | ТОГДА ДанныеУпаковок.КоличествоМестДробное
- | ИНАЧЕ ВЫРАЗИТЬ(ДанныеУпаковок.КоличествоМестДробное + 0.5 КАК ЧИСЛО(12, 0))
- | КОНЕЦ * ЕСТЬNULL(ДанныеУпаковок.МассаБруттоОдногоМеста, 0) - (ВЫБОР
- | КОГДА ДанныеУпаковок.КоличествоМестДробное = (ВЫРАЗИТЬ(ДанныеУпаковок.КоличествоМестДробное КАК ЧИСЛО(12, 0)))
- | ТОГДА ДанныеУпаковок.КоличествоМестДробное
- | ИНАЧЕ ВЫРАЗИТЬ(ДанныеУпаковок.КоличествоМестДробное + 0.5 КАК ЧИСЛО(12, 0))
- | КОНЕЦ * ЕСТЬNULL(ДанныеУпаковок.КоличествоВОдномМесте, 1) - ВЫБОР
- | КОГДА &ВыводитьБазовыеЕдиницыИзмерения
- | ТОГДА ТаблицаТоваров.Количество
- | ИНАЧЕ
- | ВЫБОР
- | КОГДА ТаблицаТоваров.Упаковка = ЗНАЧЕНИЕ(Справочник.УпаковкиЕдиницыИзмерения.ПустаяСсылка)
- | ТОГДА ДанныеУпаковок.КоличествоМестДробное
- | ИНАЧЕ ТаблицаТоваров.КоличествоУпаковок
- | КОНЕЦ * ЕСТЬNULL(ДанныеУпаковок.КоличествоВОдномМесте, 1)
- | КОНЕЦ) * ДанныеУпаковок.МассаНеттоОднойУпаковки / ВЫБОР
- | КОГДА &ВыводитьБазовыеЕдиницыИзмерения
- | ТОГДА 1
- | ИНАЧЕ ЕСТЬNULL(ДанныеУпаковок.КоличествоВОдномМесте, 1)
+ | ВЫБОР КОГДА ЕСТЬNULL(ДанныеУпаковок.МассаБруттоОдногоМеста, 0) = 0
+ | ТОГДА 0
+ | ИНАЧЕ
+ | ВЫБОР
+ | КОГДА ДанныеУпаковок.КоличествоМестДробное = (ВЫРАЗИТЬ(ДанныеУпаковок.КоличествоМестДробное КАК ЧИСЛО(12, 0)))
+ | ТОГДА ДанныеУпаковок.КоличествоМестДробное
+ | ИНАЧЕ ВЫРАЗИТЬ(ДанныеУпаковок.КоличествоМестДробное + 0.5 КАК ЧИСЛО(12, 0))
+ | КОНЕЦ * ЕСТЬNULL(ДанныеУпаковок.МассаБруттоОдногоМеста, 0) - (ВЫБОР
+ | КОГДА ДанныеУпаковок.КоличествоМестДробное = (ВЫРАЗИТЬ(ДанныеУпаковок.КоличествоМестДробное КАК ЧИСЛО(12, 0)))
+ | ТОГДА ДанныеУпаковок.КоличествоМестДробное
+ | ИНАЧЕ ВЫРАЗИТЬ(ДанныеУпаковок.КоличествоМестДробное + 0.5 КАК ЧИСЛО(12, 0))
+ | КОНЕЦ * ЕСТЬNULL(ДанныеУпаковок.КоличествоВОдномМесте, 1) - ВЫБОР
+ | КОГДА &ВыводитьБазовыеЕдиницыИзмерения
+ | ТОГДА ТаблицаТоваров.Количество
+ | ИНАЧЕ
+ | ВЫБОР
+ | КОГДА ТаблицаТоваров.Упаковка = ЗНАЧЕНИЕ(Справочник.УпаковкиЕдиницыИзмерения.ПустаяСсылка)
+ | ТОГДА ДанныеУпаковок.КоличествоМестДробное
+ | ИНАЧЕ ТаблицаТоваров.КоличествоУпаковок
+ | КОНЕЦ * ЕСТЬNULL(ДанныеУпаковок.КоличествоВОдномМесте, 1)
+ | КОНЕЦ) * ДанныеУпаковок.МассаНеттоОднойУпаковки / ВЫБОР
+ | КОГДА &ВыводитьБазовыеЕдиницыИзмерения
+ | ТОГДА 1
+ | ИНАЧЕ ЕСТЬNULL(ДанныеУпаковок.КоличествоВОдномМесте, 1)
+ | КОНЕЦ
| КОНЕЦ КАК МассаБрутто,
| ТаблицаТоваров.НомерСтроки КАК НомерСтроки,
| ТаблицаТоваров.НомерСтрокиНаборы КАК НомерСтрокиНаборы,
diff --git a/src/CommonModules/РегламентыЭДО/Ext/Module.bsl b/src/CommonModules/РегламентыЭДО/Ext/Module.bsl
index 9b6b606a1..57a38e361 100644
--- a/src/CommonModules/РегламентыЭДО/Ext/Module.bsl
+++ b/src/CommonModules/РегламентыЭДО/Ext/Module.bsl
@@ -56,6 +56,7 @@
// * Состояние - ПеречислениеСсылка.СостоянияСообщенийЭДО - Состояние электронного документа.
// * Направление - ПеречислениеСсылка.НаправленияЭДО
// * Дата - Дата - дата сообщения.
+// * Ссылка - ДокументСсылка.СообщениеЭДО - Сообщение.
//
Функция НовыеСостоянияЭлементовРегламента() Экспорт
@@ -68,7 +69,10 @@
Новый ОписаниеТипов("ПеречислениеСсылка.СостоянияСообщенийЭДО"));
СостоянияЭлементовРегламента.Колонки.Добавить("Направление",
Новый ОписаниеТипов("ПеречислениеСсылка.НаправленияЭДО"));
- СостоянияЭлементовРегламента.Колонки.Добавить("Дата", ОбщегоНазначения.ОписаниеТипаДата(ЧастиДаты.ДатаВремя));
+ СостоянияЭлементовРегламента.Колонки.Добавить("Дата",
+ ОбщегоНазначения.ОписаниеТипаДата(ЧастиДаты.ДатаВремя));
+ СостоянияЭлементовРегламента.Колонки.Добавить("Ссылка",
+ Новый ОписаниеТипов("ДокументСсылка.СообщениеЭДО"));
Возврат СостоянияЭлементовРегламента;
КонецФункции
@@ -490,13 +494,19 @@
// * ТипРегламента - ПеречислениеСсылка.ТипыРегламентовЭДО
// * СпособОбмена - ПеречислениеСсылка.СпособыОбменаЭД
// * ТребуетсяИзвещение - Булево
+// * ИдентификаторОрганизации - Строка
+// * ИдентификаторКонтрагента - Строка
//
Функция НовыеПараметрыДокументаДляОпределенияПотребностиИзвещения() Экспорт
+
Параметры = Новый Структура;
Параметры.Вставить("ТипРегламента", Перечисления.ТипыРегламентовЭДО.ПустаяСсылка());
Параметры.Вставить("СпособОбмена", Перечисления.СпособыОбменаЭД.ПустаяСсылка());
Параметры.Вставить("ТребуетсяИзвещение", Ложь);
+ Параметры.Вставить("ИдентификаторОрганизации", "");
+ Параметры.Вставить("ИдентификаторКонтрагента", "");
Возврат Параметры;
+
КонецФункции
// Возвращает тип извещения для элемента регламента.
@@ -754,17 +764,27 @@
Возврат Ложь;
КонецЕсли;
- Возврат ДатаНачалаДействияУС <= ТекущаяДатаСеанса();
+ ЧасовойПоясМСК = "Europe/Moscow"; // Дата начала действия УС указана по МСК
+ Возврат УниверсальноеВремя(ДатаНачалаДействияУС, ЧасовойПоясМСК) <= ТекущаяУниверсальнаяДата();
КонецФункции
// Возвращаемое значение:
// Структура:
// * СпособОбмена - ПеречислениеСсылка.СпособыОбменаЭД
// * ТипРегламента - ПеречислениеСсылка.ТипыРегламентовЭДО
+// * ИдентификаторОрганизации - Строка
+// * ИдентификаторКонтрагента - Строка
+//
Функция НовыеПараметрыОпределенияИспользованияУС() Экспорт
- Возврат Новый Структура("СпособОбмена, ТипРегламента",
- Перечисления.СпособыОбменаЭД.ПустаяСсылка(),
- Перечисления.ТипыРегламентовЭДО.ПустаяСсылка())
+
+ Результат = Новый Структура();
+ Результат.Вставить("СпособОбмена", Перечисления.СпособыОбменаЭД.ПустаяСсылка());
+ Результат.Вставить("ТипРегламента", Перечисления.ТипыРегламентовЭДО.ПустаяСсылка());
+ Результат.Вставить("ИдентификаторОрганизации", "");
+ Результат.Вставить("ИдентификаторКонтрагента", "");
+
+ Возврат Результат;
+
КонецФункции
// Параметры:
@@ -788,10 +808,15 @@
// ПараметрыДокумента - См. НовыеПараметрыОпределенияИспользованияУС
// ИспользоватьУниверсальныеСообщения - Булево
Процедура ПриОпределенииИспользованияУниверсальныхСообщений(ПараметрыДокумента, ИспользоватьУниверсальныеСообщения)
+
Если ОбщегоНазначения.ПодсистемаСуществует("ЭлектронноеВзаимодействие.ОбменСГИСЭПД") Тогда
МодульОбменСГИСЭПД = ОбщегоНазначения.ОбщийМодуль("ОбменСГИСЭПД");
МодульОбменСГИСЭПД.ПриОпределенииИспользованияУниверсальныхСообщений(ПараметрыДокумента, ИспользоватьУниверсальныеСообщения);
КонецЕсли;
+
+ ТрансграничныйЭДО.ПриОпределенииИспользованияУниверсальныхСообщений(
+ ПараметрыДокумента, ИспользоватьУниверсальныеСообщения);
+
КонецПроцедуры
// Параметры:
@@ -999,17 +1024,28 @@
Статус = ПараметрыСообщения.Статус;
+ ФормализованныйОднотитульныйДокументСПодтверждением =
+ ПараметрыДокумента.ТребуетсяПодтверждение
+ И Не ПараметрыДокумента.ОбменБезПодписи
+ И РегламентыЭДО_Формализованный.ДокументБезОтветногоТитула(ПараметрыДокумента);
+
Если Статус = Перечисления.СтатусыСообщенийЭДО.Получен Тогда
Если ИспользоватьУтверждение Тогда
Состояние = Перечисления.СостоянияСообщенийЭДО.Утверждение;
+ ИначеЕсли ФормализованныйОднотитульныйДокументСПодтверждением Тогда
+ Состояние = Перечисления.СостоянияСообщенийЭДО.Подписание;
Иначе
Состояние = Перечисления.СостоянияСообщенийЭДО.Хранение;
КонецЕсли;
ИначеЕсли Статус = Перечисления.СтатусыСообщенийЭДО.Утвержден Тогда
- Состояние = Перечисления.СостоянияСообщенийЭДО.Хранение;
+ Если ФормализованныйОднотитульныйДокументСПодтверждением Тогда
+ Состояние = Перечисления.СостоянияСообщенийЭДО.Подписание;
+ Иначе
+ Состояние = Перечисления.СостоянияСообщенийЭДО.Хранение;
+ КонецЕсли;
ИначеЕсли Статус = Перечисления.СтатусыСообщенийЭДО.Сформирован Тогда
@@ -1037,12 +1073,23 @@
ИначеЕсли Статус = Перечисления.СтатусыСообщенийЭДО.Отправлен Тогда
- Состояние = Перечисления.СостоянияСообщенийЭДО.Хранение;
+ Если Не ПараметрыСообщения.Направление = Перечисления.НаправленияЭДО.Входящий
+ И ФормализованныйОднотитульныйДокументСПодтверждением Тогда
+ Состояние = Перечисления.СостоянияСообщенийЭДО.ОжидаетсяПодпись;
+ Иначе
+ Состояние = Перечисления.СостоянияСообщенийЭДО.Хранение;
+ КонецЕсли;
ИначеЕсли Статус = Перечисления.СтатусыСообщенийЭДО.НеСформирован Тогда
Состояние = Перечисления.СостоянияСообщенийЭДО.Формирование;
+ ИначеЕсли Статус = Перечисления.СтатусыСообщенийЭДО.Подтвержден
+ И Не ПараметрыСообщения.Направление = Перечисления.НаправленияЭДО.Входящий
+ И ФормализованныйОднотитульныйДокументСПодтверждением Тогда
+
+ Состояние = Перечисления.СостоянияСообщенийЭДО.Хранение;
+
Иначе
ВызватьИсключение ТекстОшибкиНекорректныйСтатусСообщения();
КонецЕсли;
diff --git a/src/CommonModules/РегламентыЭДО_Формализованный/Ext/Module.bsl b/src/CommonModules/РегламентыЭДО_Формализованный/Ext/Module.bsl
index 76daff67c..b142b1679 100644
--- a/src/CommonModules/РегламентыЭДО_Формализованный/Ext/Module.bsl
+++ b/src/CommonModules/РегламентыЭДО_Формализованный/Ext/Module.bsl
@@ -17,7 +17,11 @@
Состояние = Перечисления.СостоянияДокументовЭДО.ПустаяСсылка();
- Если ЗаполнитьСостояниеПоИсходящемуОтклонению(ПараметрыДокумента, СостоянияЭлементовРегламента, Состояние)
+ Если ТрансграничныйЭДО.ЗаполнитьСостояниеПоВходящемуОтклонению(
+ ПараметрыДокумента, СостоянияЭлементовРегламента, Состояние)
+
+ ИЛИ ЗаполнитьСостояниеПоИсходящемуОтклонению(ПараметрыДокумента, СостоянияЭлементовРегламента, Состояние)
+
ИЛИ ЗаполнитьСостояниеПоОтказуВПодписи(ПараметрыДокумента, СостоянияЭлементовРегламента, Состояние)
ИЛИ ЗаполнитьСостояниеПоПредложениюОбАннулировании(ПараметрыДокумента, СостоянияЭлементовРегламента, Состояние)
@@ -199,6 +203,40 @@
Возврат Истина;
КонецФункции
+// Возвращает признак однотитульного формализованного документа.
+//
+// Параметры:
+// ПараметрыДокумента - См. РегламентыЭДО.НовыеПараметрыДокументаДляОпределенияСостояния
+// - СтрокаТаблицыЗначений из см. СинхронизацияЭДО.НовыеДанныеОбъектов
+// - ВыборкаИзРезультатаЗапроса
+//
+// Возвращаемое значение:
+// Булево
+//
+Функция ДокументБезОтветногоТитула(ПараметрыДокумента) Экспорт
+
+ Если ПараметрыДокумента.ТипРегламента <> Перечисления.ТипыРегламентовЭДО.Формализованный Тогда
+ Возврат Ложь;
+ КонецЕсли;
+
+ ТипДокумента = Перечисления.ТипыДокументовЭДО.ПустаяСсылка();
+ ТипПараметровДокумента = ТипЗнч(ПараметрыДокумента);
+ ИмяПараметра = "ТипДокумента";
+
+ Если ТипПараметровДокумента = Тип("Структура") Тогда
+ ПараметрыДокумента.Свойство(ИмяПараметра, ТипДокумента);
+ ИначеЕсли ТипПараметровДокумента = Тип("СтрокаТаблицыЗначений") Тогда
+ ПараметрыДокументаСтруктурой = ОбщегоНазначения.СтрокаТаблицыЗначенийВСтруктуру(ПараметрыДокумента);
+ ПараметрыДокументаСтруктурой.Свойство(ИмяПараметра, ТипДокумента);
+ ИначеЕсли ТипПараметровДокумента = Тип("ВыборкаИзРезультатаЗапроса")
+ И ПараметрыДокумента.Владелец().Колонки.Найти(ИмяПараметра) <> Неопределено Тогда
+ ТипДокумента = ПараметрыДокумента[ИмяПараметра]; // ПеречислениеСсылка.ТипыДокументовЭДО
+ КонецЕсли;
+
+ Возврат ЭлектронныеДокументыЭДО.ЭтоТипБезОтветногоТитулаПриФормализованномОбмене(ТипДокумента);
+
+КонецФункции
+
#КонецОбласти
#Область СостояниеДокумента
@@ -420,6 +458,22 @@
Состояние = Перечисления.СостоянияДокументовЭДО.НеПолучен;
+ ИначеЕсли ЭлементРегламента.Состояние = Перечисления.СостоянияСообщенийЭДО.ПодготовкаКОтправке Тогда
+
+ ТипДокумента = ОбщегоНазначения.ЗначениеРеквизитаОбъекта(ЭлементРегламента.Ссылка,
+ "ВидСообщения.ТипДокумента", Истина);
+ Если ЭлектронныеДокументыЭДО.ЭтоТипБезОтветногоТитулаПриФормализованномОбмене(ТипДокумента) Тогда
+ Состояние = Перечисления.СостоянияДокументовЭДО.ТребуетсяОтправка;
+ КонецЕсли;
+
+ ИначеЕсли ЭлементРегламента.Состояние = Перечисления.СостоянияСообщенийЭДО.Отправка Тогда
+
+ ТипДокумента = ОбщегоНазначения.ЗначениеРеквизитаОбъекта(ЭлементРегламента.Ссылка,
+ "ВидСообщения.ТипДокумента", Истина);
+ Если ЭлектронныеДокументыЭДО.ЭтоТипБезОтветногоТитулаПриФормализованномОбмене(ТипДокумента) Тогда
+ Состояние = Перечисления.СостоянияДокументовЭДО.ОбменЗавершен;
+ КонецЕсли;
+
ИначеЕсли ЭлементРегламента.Состояние = Перечисления.СостоянияСообщенийЭДО.Утверждение Тогда
Состояние = Перечисления.СостоянияДокументовЭДО.ТребуетсяУтверждение;
@@ -453,6 +507,20 @@
Результат = Истина;
ЭлементРегламента = Неопределено; // Неопределено,СтрокаТаблицыЗначений: См. РегламентыЭДО.НовыеСостоянияЭлементовРегламента
+ Если ДокументБезОтветногоТитула(ПараметрыДокумента) Тогда
+ Если ПараметрыДокумента.ОбменБезПодписи Тогда
+ Возврат Ложь;
+ Иначе
+ Если РегламентыЭДО.ЕстьЭлементРегламента(СостоянияЭлементовРегламента,
+ Перечисления.ТипыЭлементовРегламентаЭДО.ИнформацияОтправителя, ЭлементРегламента)
+ И ЭлементРегламента.Состояние = Перечисления.СостоянияСообщенийЭДО.Хранение Тогда
+ Возврат Ложь;
+ КонецЕсли;
+ Состояние = Перечисления.СостоянияДокументовЭДО.ТребуетсяПодписание;
+ Возврат Истина;
+ КонецЕсли;
+ КонецЕсли;
+
Если Не РегламентыЭДО.ЕстьЭлементРегламента(СостоянияЭлементовРегламента,
Перечисления.ТипыЭлементовРегламентаЭДО.ИнформацияПолучателя, ЭлементРегламента) Тогда
@@ -752,6 +820,19 @@
//
Функция ЗаполнитьСостояниеПоВходящейИнформацииПолучателя(ПараметрыДокумента, СостоянияЭлементовРегламента, Состояние)
+ Если ДокументБезОтветногоТитула(ПараметрыДокумента) Тогда
+ Если ПараметрыДокумента.ТребуетсяПодтверждение Тогда
+ ЭлементРегламента = Неопределено;
+ Если РегламентыЭДО.ЕстьЭлементРегламента(СостоянияЭлементовРегламента,
+ Перечисления.ТипыЭлементовРегламентаЭДО.ИнформацияОтправителя, ЭлементРегламента)
+ И ЭлементРегламента.Состояние <> Перечисления.СостоянияСообщенийЭДО.Хранение Тогда
+ РегламентыЭДО.УстановитьПриоритетноеСостояние(Состояние, Перечисления.СостоянияДокументовЭДО.ОжидаетсяПодтверждение);
+ КонецЕсли;
+ КонецЕсли;
+
+ Возврат Ложь;
+ КонецЕсли;
+
Результат = Ложь;
Если ПараметрыДокумента.ТребуетсяПодтверждение
diff --git a/src/CommonModules/РегламентыЭПД_ЭДФ/Ext/Module.bsl b/src/CommonModules/РегламентыЭПД_ЭДФ/Ext/Module.bsl
index 90708081e..6addcf94e 100644
--- a/src/CommonModules/РегламентыЭПД_ЭДФ/Ext/Module.bsl
+++ b/src/CommonModules/РегламентыЭПД_ЭДФ/Ext/Module.bsl
@@ -15,6 +15,8 @@
//
Функция СостояниеВходящегоДокумента(ПараметрыДокумента, СостоянияЭлементовРегламента) Экспорт
+ ОбменСГИСЭПД.ДобавитьДанныеВСостоянияЭлементовРегламента(ПараметрыДокумента, СостоянияЭлементовРегламента);
+
Состояние = Перечисления.СостоянияДокументовЭДО.ПустаяСсылка();
Если ЗаполнитьСостояниеПоВходящейИнформацииОтправителя(ПараметрыДокумента, СостоянияЭлементовРегламента, Состояние)
@@ -43,6 +45,8 @@
//
Функция СостояниеИсходящегоДокумента(ПараметрыДокумента, СостоянияЭлементовРегламента) Экспорт
+ ОбменСГИСЭПД.ДобавитьДанныеВСостоянияЭлементовРегламента(ПараметрыДокумента, СостоянияЭлементовРегламента);
+
Состояние = Перечисления.СостоянияДокументовЭДО.ПустаяСсылка();
Если ЗаполнитьСостояниеПоИсходящейИнформацииОтправителя(ПараметрыДокумента, СостоянияЭлементовРегламента, Состояние)
diff --git a/src/CommonModules/РегламентыЭПД_ЭЗЗ/Ext/Module.bsl b/src/CommonModules/РегламентыЭПД_ЭЗЗ/Ext/Module.bsl
index a136cb774..9c9ad8efc 100644
--- a/src/CommonModules/РегламентыЭПД_ЭЗЗ/Ext/Module.bsl
+++ b/src/CommonModules/РегламентыЭПД_ЭЗЗ/Ext/Module.bsl
@@ -15,6 +15,8 @@
//
Функция СостояниеВходящегоДокумента(ПараметрыДокумента, СостоянияЭлементовРегламента) Экспорт
+ ОбменСГИСЭПД.ДобавитьДанныеВСостоянияЭлементовРегламента(ПараметрыДокумента, СостоянияЭлементовРегламента);
+
Состояние = Перечисления.СостоянияДокументовЭДО.ПустаяСсылка();
Если ЗаполнитьСостояниеПоВходящейИнформацииОтправителя(ПараметрыДокумента, СостоянияЭлементовРегламента, Состояние)
@@ -43,6 +45,8 @@
//
Функция СостояниеИсходящегоДокумента(ПараметрыДокумента, СостоянияЭлементовРегламента) Экспорт
+ ОбменСГИСЭПД.ДобавитьДанныеВСостоянияЭлементовРегламента(ПараметрыДокумента, СостоянияЭлементовРегламента);
+
Состояние = Перечисления.СостоянияДокументовЭДО.ПустаяСсылка();
Если ЗаполнитьСостояниеПоИсходящейИнформацииОтправителя(ПараметрыДокумента, СостоянияЭлементовРегламента, Состояние)
diff --git a/src/CommonModules/РегламентыЭПД_ЭЗН/Ext/Module.bsl b/src/CommonModules/РегламентыЭПД_ЭЗН/Ext/Module.bsl
index d40a17a66..97de4a9a6 100644
--- a/src/CommonModules/РегламентыЭПД_ЭЗН/Ext/Module.bsl
+++ b/src/CommonModules/РегламентыЭПД_ЭЗН/Ext/Module.bsl
@@ -15,6 +15,8 @@
//
Функция СостояниеВходящегоДокумента(ПараметрыДокумента, СостоянияЭлементовРегламента) Экспорт
+ ОбменСГИСЭПД.ДобавитьДанныеВСостоянияЭлементовРегламента(ПараметрыДокумента, СостоянияЭлементовРегламента);
+
Состояние = Перечисления.СостоянияДокументовЭДО.ПустаяСсылка();
Если ЗаполнитьСостояниеПоВходящейИнформацииОтправителя(ПараметрыДокумента, СостоянияЭлементовРегламента, Состояние)
@@ -43,6 +45,8 @@
//
Функция СостояниеИсходящегоДокумента(ПараметрыДокумента, СостоянияЭлементовРегламента) Экспорт
+ ОбменСГИСЭПД.ДобавитьДанныеВСостоянияЭлементовРегламента(ПараметрыДокумента, СостоянияЭлементовРегламента);
+
Состояние = Перечисления.СостоянияДокументовЭДО.ПустаяСсылка();
Если ЗаполнитьСостояниеПоИсходящейИнформацииОтправителя(ПараметрыДокумента, СостоянияЭлементовРегламента, Состояние)
diff --git a/src/CommonModules/РегламентыЭПД_ЭПЛ/Ext/Module.bsl b/src/CommonModules/РегламентыЭПД_ЭПЛ/Ext/Module.bsl
index b92419f6d..4485535d6 100644
--- a/src/CommonModules/РегламентыЭПД_ЭПЛ/Ext/Module.bsl
+++ b/src/CommonModules/РегламентыЭПД_ЭПЛ/Ext/Module.bsl
@@ -15,6 +15,8 @@
//
Функция СостояниеВходящегоДокумента(ПараметрыДокумента, СостоянияЭлементовРегламента) Экспорт
+ ОбменСГИСЭПД.ДобавитьДанныеВСостоянияЭлементовРегламента(ПараметрыДокумента, СостоянияЭлементовРегламента);
+
Состояние = Перечисления.СостоянияДокументовЭДО.ПустаяСсылка();
Если ЗаполнитьСостояниеПоВходящейИнформацииОтправителя(ПараметрыДокумента, СостоянияЭлементовРегламента, Состояние)
@@ -43,6 +45,8 @@
//
Функция СостояниеИсходящегоДокумента(ПараметрыДокумента, СостоянияЭлементовРегламента) Экспорт
+ ОбменСГИСЭПД.ДобавитьДанныеВСостоянияЭлементовРегламента(ПараметрыДокумента, СостоянияЭлементовРегламента);
+
Состояние = Перечисления.СостоянияДокументовЭДО.ПустаяСсылка();
Если ЗаполнитьСостояниеПоИсходящейИнформацииОтправителя(ПараметрыДокумента, СостоянияЭлементовРегламента, Состояние)
diff --git a/src/CommonModules/РегламентыЭПД_ЭСВ/Ext/Module.bsl b/src/CommonModules/РегламентыЭПД_ЭСВ/Ext/Module.bsl
index 8659247a7..e248301e8 100644
--- a/src/CommonModules/РегламентыЭПД_ЭСВ/Ext/Module.bsl
+++ b/src/CommonModules/РегламентыЭПД_ЭСВ/Ext/Module.bsl
@@ -15,6 +15,8 @@
//
Функция СостояниеВходящегоДокумента(ПараметрыДокумента, СостоянияЭлементовРегламента) Экспорт
+ ОбменСГИСЭПД.ДобавитьДанныеВСостоянияЭлементовРегламента(ПараметрыДокумента, СостоянияЭлементовРегламента);
+
Состояние = Перечисления.СостоянияДокументовЭДО.ПустаяСсылка();
Если ЗаполнитьСостояниеПоВходящейИнформацииОтправителя(ПараметрыДокумента, СостоянияЭлементовРегламента, Состояние)
@@ -43,6 +45,8 @@
//
Функция СостояниеИсходящегоДокумента(ПараметрыДокумента, СостоянияЭлементовРегламента) Экспорт
+ ОбменСГИСЭПД.ДобавитьДанныеВСостоянияЭлементовРегламента(ПараметрыДокумента, СостоянияЭлементовРегламента);
+
Состояние = Перечисления.СостоянияДокументовЭДО.ПустаяСсылка();
Если ЗаполнитьСостояниеПоИсходящейИнформацииОтправителя(ПараметрыДокумента, СостоянияЭлементовРегламента, Состояние)
diff --git a/src/CommonModules/РегламентыЭПД_ЭТрН/Ext/Module.bsl b/src/CommonModules/РегламентыЭПД_ЭТрН/Ext/Module.bsl
index 410c02ad6..99f5a8283 100644
--- a/src/CommonModules/РегламентыЭПД_ЭТрН/Ext/Module.bsl
+++ b/src/CommonModules/РегламентыЭПД_ЭТрН/Ext/Module.bsl
@@ -15,6 +15,8 @@
//
Функция СостояниеВходящегоДокумента(ПараметрыДокумента, СостоянияЭлементовРегламента) Экспорт
+ ОбменСГИСЭПД.ДобавитьДанныеВСостоянияЭлементовРегламента(ПараметрыДокумента, СостоянияЭлементовРегламента);
+
Состояние = Перечисления.СостоянияДокументовЭДО.ПустаяСсылка();
Если ЗаполнитьСостояниеПоВходящейИнформацииОтправителя(ПараметрыДокумента, СостоянияЭлементовРегламента, Состояние)
@@ -43,6 +45,8 @@
//
Функция СостояниеИсходящегоДокумента(ПараметрыДокумента, СостоянияЭлементовРегламента) Экспорт
+ ОбменСГИСЭПД.ДобавитьДанныеВСостоянияЭлементовРегламента(ПараметрыДокумента, СостоянияЭлементовРегламента);
+
Состояние = Перечисления.СостоянияДокументовЭДО.ПустаяСсылка();
Если ЗаполнитьСостояниеПоИсходящейИнформацииОтправителя(ПараметрыДокумента, СостоянияЭлементовРегламента, Состояние)
diff --git a/src/CommonModules/РозничныеПродажи/Ext/Module.bsl b/src/CommonModules/РозничныеПродажи/Ext/Module.bsl
index a8891f992..83d4da628 100644
--- a/src/CommonModules/РозничныеПродажи/Ext/Module.bsl
+++ b/src/CommonModules/РозничныеПродажи/Ext/Module.bsl
@@ -4903,7 +4903,7 @@
СостояниеКассовойСмены.Вставить("Подразделение");
СостояниеКассовойСмены.Вставить("АдресСклада", "");
СостояниеКассовойСмены.Вставить("ЦенаВключаетНДС");
- СостояниеКассовойСмены.Вставить("НалогообложениеНДС");
+ СостояниеКассовойСмены.Вставить("НалогообложениеНДС", Перечисления.ТипыНалогообложенияНДС.ПустаяСсылка());
СостояниеКассовойСмены.Вставить("РазъезднаяТорговля", Ложь);
СостояниеКассовойСмены.Вставить("АдресРасчетов", "");
СостояниеКассовойСмены.Вставить("МестоРасчетов", "");
diff --git a/src/CommonModules/СверкаКодовМаркировкиИСМП/Ext/Module.bsl b/src/CommonModules/СверкаКодовМаркировкиИСМП/Ext/Module.bsl
index 2fdb0bf72..f72303298 100644
--- a/src/CommonModules/СверкаКодовМаркировкиИСМП/Ext/Module.bsl
+++ b/src/CommonModules/СверкаКодовМаркировкиИСМП/Ext/Module.bsl
@@ -699,7 +699,7 @@
Возврат ТаблицаТовары;
-Конецфункции
+КонецФункции
// Инициализирует таблицу расхождений по кодам маркировки. Используется при загрузке и сохранении данных в форме результаты сверки по кодам маркировки.
//
diff --git a/src/CommonModules/СервисНастроекЭДО/Ext/Module.bsl b/src/CommonModules/СервисНастроекЭДО/Ext/Module.bsl
index 2d13ea512..ead672f20 100644
--- a/src/CommonModules/СервисНастроекЭДО/Ext/Module.bsl
+++ b/src/CommonModules/СервисНастроекЭДО/Ext/Module.bsl
@@ -1858,6 +1858,7 @@
ТипыДокументов.Вставить("СоглашениеОбИзмененииСтоимостиОтправитель",
Перечисления.ТипыДокументовЭДО.СоглашениеОбИзмененииСтоимости);
ТипыДокументов.Вставить("СчетНаОплату", Перечисления.ТипыДокументовЭДО.СчетНаОплату);
+ ТипыДокументов.Вставить("СчетОферта", Перечисления.ТипыДокументовЭДО.СчетОферта);
ТипыДокументов.Вставить("СчетФактура", Перечисления.ТипыДокументовЭДО.СчетФактура);
ТипыДокументов.Вставить("ТОРГ12Продавец", Перечисления.ТипыДокументовЭДО.ТоварнаяНакладная);
ТипыДокументов.Вставить("ТОРГ12Покупатель", Перечисления.ТипыДокументовЭДО.ТоварнаяНакладная);
@@ -1986,7 +1987,7 @@
#Область Версия_1_9_1
Обработчик = Обработчики.Добавить();
- Обработчик.Версия = "1.9.16.21";
+ Обработчик.Версия = "1.9.16.36";
Обработчик.РежимВыполнения = "Отложенно";
Обработчик.ЗапускатьИВПодчиненномУзлеРИБСФильтрами = Истина;
Обработчик.Процедура = "РегистрыСведений.ОператорыЭДО.ОбработатьДанныеДляПереходаНаНовуюВерсию";
@@ -2014,7 +2015,7 @@
Обработчик.Комментарий = НСтр("ru = '1С:Обмен с контрагентами: обновление операторов ЭДО (начальное заполнение).'");
Обработчик = Обработчики.Добавить();
- Обработчик.Версия = "1.9.16.21";
+ Обработчик.Версия = "1.9.16.36";
Обработчик.РежимВыполнения = "Отложенно";
Обработчик.ЗапускатьИВПодчиненномУзлеРИБСФильтрами = Истина;
Обработчик.Процедура = "РегистрыСведений.СовместимостьОператоровЭДО.ОбработатьДанныеДляПереходаНаНовуюВерсию";
diff --git a/src/CommonModules/СервисЭДО/Ext/Module.bsl b/src/CommonModules/СервисЭДО/Ext/Module.bsl
index dfdd84a28..280dedfd3 100644
--- a/src/CommonModules/СервисЭДО/Ext/Module.bsl
+++ b/src/CommonModules/СервисЭДО/Ext/Module.bsl
@@ -148,6 +148,9 @@
// Если возникла ошибка по причине истечения времени действия маркера или его некорректности,
// то пробуем получить новый маркер и повторить попытку получения ЭД.
+ УдалитьМаркерИзБезопасногоХранилища(КлючСинхронизации.ИдентификаторУчетнойЗаписи,
+ КлючСинхронизации.ВыбранныйСертификат);
+
ОбщегоНазначенияБЭД.ЗаписатьВЖурналРегистрации(ОшибкаОператора.Текст,
ОбщегоНазначенияБЭДКлиентСервер.ПодсистемыБЭД().ОбменСКонтрагентами,
УровеньЖурналаРегистрации.Предупреждение);
@@ -204,7 +207,7 @@
СертификатДляПолученияМаркера = ЭлектроннаяПодпись.СсылкаНаСертификат(ДвоичныеДанныеСертификата);
КонецЕсли;
- КэшированиеМаркераПоддерживается = КэшированиеМаркераПоддерживается(КлючСинхронизации.СпособОбмена);
+ КэшированиеМаркераПоддерживается = КэшированиеМаркераПоддерживается(КлючСинхронизации);
МаркерИзБезопасногоХранилища = Неопределено;
Если КэшированиеМаркераПоддерживается Тогда
@@ -267,8 +270,8 @@
ДатаОкончанияДействияМаркера = Результат.Ответ.Заголовки["Expires"];
Если КэшированиеМаркераПоддерживается И ДатаОкончанияДействияМаркера <> Неопределено Тогда
- КлючСинхронизации.ДатаОкончанияДействияМаркера =
- ОбщегоНазначенияКлиентСервер.ДатаRFC1123(ДатаОкончанияДействияМаркера);
+ КлючСинхронизации.ДатаОкончанияДействияМаркера =
+ ДатаОкончанияДействияМаркераПослеСверкиСТекущимВременемНаСервере1С(ДатаОкончанияДействияМаркера);
КонецЕсли;
Маркер = Результат.Ответ.ПолучитьТелоКакДвоичныеДанные();
@@ -1427,41 +1430,6 @@
КонецФункции
-// Параметры:
-// ИдентификаторУчетнойЗаписи - Строка
-// ТокенОбновления - Строка
-// КонтекстДиагностики - см. ОбработкаНеисправностейБЭД.НовыйКонтекстДиагностики
-//
-// Возвращаемое значение:
-// - Неопределено
-// - См. НовыйТокенАвторизации
-Функция ОбновитьТокенАвторизации(ИдентификаторУчетнойЗаписи, ТокенОбновления, КонтекстДиагностики) Экспорт
-
- ПараметрыВыполнения = НовыеПараметрыВыполненияОперацииСервиса();
- ПараметрыВыполнения.СпособОбмена = Перечисления.СпособыОбменаЭД.ЧерезСервис1СЭДО;
- ПараметрыВыполнения.ТребуетсяМаркер = Ложь;
- ПараметрыВыполнения.ИдентификаторУчетнойЗаписи = ИдентификаторУчетнойЗаписи;
- ПараметрыВыполнения.ПредставлениеОперации = НСтр("ru = 'Обновление токена доступа к сервису ЭДО.'");
- ПараметрыВыполнения.АдресРесурса = "/auth/token/refresh";
- ПараметрыВыполнения.Метод = ИнтернетСоединениеБЭД.HTTPМетоды().POST;
- ПараметрыВыполнения.Таймаут = 10;
- ПараметрыВыполнения.ТелоЗапроса = СтрШаблон("{ ""refresh_token"":""%1"" }", ТокенОбновления);
-
- Результат = ВыполнитьОперацию(ПараметрыВыполнения, КонтекстДиагностики);
-
- ТокенАвторизации = ТокенАвторизацииИзРезультатаОперации(Результат,
- ПараметрыВыполнения.ПредставлениеОперации, КонтекстДиагностики);
-
- Если ТокенАвторизации = Неопределено Тогда
- УдалитьТокенАвторизацииИзБезопасногоХранилища(ИдентификаторУчетнойЗаписи);
- Иначе
- ЗаписатьТокенАвторизацииВБезопасноеХранилище(ИдентификаторУчетнойЗаписи, ТокенАвторизации);
- КонецЕсли;
-
- Возврат ТокенАвторизации;
-
-КонецФункции
-
// Параметры:
// ИдентификаторыУчетныхЗаписей - Массив из Строка
//
@@ -3819,6 +3787,41 @@
КонецФункции
+// Параметры:
+// ИдентификаторУчетнойЗаписи - Строка
+// ТокенОбновления - Строка
+// КонтекстДиагностики - см. ОбработкаНеисправностейБЭД.НовыйКонтекстДиагностики
+//
+// Возвращаемое значение:
+// - Неопределено
+// - См. НовыйТокенАвторизации
+Функция ОбновитьТокенАвторизации(ИдентификаторУчетнойЗаписи, ТокенОбновления, КонтекстДиагностики)
+
+ ПараметрыВыполнения = НовыеПараметрыВыполненияОперацииСервиса();
+ ПараметрыВыполнения.СпособОбмена = Перечисления.СпособыОбменаЭД.ЧерезСервис1СЭДО;
+ ПараметрыВыполнения.ТребуетсяМаркер = Ложь;
+ ПараметрыВыполнения.ИдентификаторУчетнойЗаписи = ИдентификаторУчетнойЗаписи;
+ ПараметрыВыполнения.ПредставлениеОперации = НСтр("ru = 'Обновление токена доступа к сервису ЭДО.'");
+ ПараметрыВыполнения.АдресРесурса = "/auth/token/refresh";
+ ПараметрыВыполнения.Метод = ИнтернетСоединениеБЭД.HTTPМетоды().POST;
+ ПараметрыВыполнения.Таймаут = 10;
+ ПараметрыВыполнения.ТелоЗапроса = СтрШаблон("{ ""refresh_token"":""%1"" }", ТокенОбновления);
+
+ Результат = ВыполнитьОперацию(ПараметрыВыполнения, КонтекстДиагностики);
+
+ ТокенАвторизации = ТокенАвторизацииИзРезультатаОперации(Результат,
+ ПараметрыВыполнения.ПредставлениеОперации, КонтекстДиагностики);
+
+ Если ТокенАвторизации = Неопределено Тогда
+ УдалитьТокенАвторизацииИзБезопасногоХранилища(ИдентификаторУчетнойЗаписи);
+ Иначе
+ ЗаписатьТокенАвторизацииВБезопасноеХранилище(ИдентификаторУчетнойЗаписи, ТокенАвторизации);
+ КонецЕсли;
+
+ Возврат ТокенАвторизации;
+
+КонецФункции
+
// Параметры:
// Заголовки - Соответствие из КлючИЗначение:
// * Ключ - Строка
@@ -3864,13 +3867,14 @@
#Область Маркеры
// Параметры:
-// СпособОбмена - ПеречислениеСсылка.СпособыОбменаЭД
+// КлючСинхронизации - См. СинхронизацияЭДОКлиентСервер.НовыйКлючСинхронизации
//
// Возвращаемое значение:
// Булево
-Функция КэшированиеМаркераПоддерживается(СпособОбмена)
+Функция КэшированиеМаркераПоддерживается(КлючСинхронизации)
- Возврат СпособОбмена = Перечисления.СпособыОбменаЭД.ЧерезСервис1СЭДО;
+ Возврат КлючСинхронизации.СпособОбмена = Перечисления.СпособыОбменаЭД.ЧерезСервис1СЭДО
+ И Не ЗначениеЗаполнено(КлючСинхронизации.КлючДоступаКСервисуЭДО);
КонецФункции
@@ -3886,7 +3890,7 @@
Возврат Ложь;
КонецЕсли;
- Если Не КэшированиеМаркераПоддерживается(КлючСинхронизации.СпособОбмена) Тогда
+ Если Не КэшированиеМаркераПоддерживается(КлючСинхронизации) Тогда
Возврат Ложь;
КонецЕсли;
@@ -3950,6 +3954,11 @@
Для Каждого ДанныеМаркераПоСертификату Из ДанныеМаркеровПоСертификатам Цикл
СертификатМаркера = ДанныеМаркераПоСертификату.Ключ;
ДанныеМаркера = ДанныеМаркераПоСертификату.Значение;
+
+ Если ДанныеМаркера.ДатаОкончанияДействияМаркера = Неопределено Тогда
+ Продолжить; // при авторизации не удалось гарантированно установить срок действия маркера
+ КонецЕсли;
+
Если Не ЗначениеЗаполнено(ДанныеМаркера.ДатаОкончанияДействияМаркера)
Или ДанныеМаркера.ДатаОкончанияДействияМаркера <= ТекущаяУниверсальнаяДата Тогда
ЕстьПросроченныеМаркеры = Истина;
@@ -3970,7 +3979,7 @@
ИдентификаторУчетнойЗаписи, ДанныеМаркеровПоСертификатам, КлючЗашифрованногоМаркераВБезопасномХранилище());
КонецПроцедуры
-
+
// Параметры:
// ИдентификаторУчетнойЗаписи - Строка
// Сертификат - СправочникСсылка.СертификатыКлючейЭлектроннойПодписиИШифрования
@@ -3993,15 +4002,36 @@
КонецПроцедуры
+// Параметры:
+// ИдентификаторУчетнойЗаписи - Строка
+// Сертификат - СправочникСсылка.СертификатыКлючейЭлектроннойПодписиИШифрования
+Процедура УдалитьМаркерИзБезопасногоХранилища(ИдентификаторУчетнойЗаписи, Сертификат)
+
+ УстановитьПривилегированныйРежим(Истина);
+ ДанныеМаркеровПоСертификатам = ОбщегоНазначения.ПрочитатьДанныеИзБезопасногоХранилища(
+ ИдентификаторУчетнойЗаписи, КлючЗашифрованногоМаркераВБезопасномХранилище());
+
+ Если ДанныеМаркеровПоСертификатам = Неопределено Тогда
+ Возврат;
+ КонецЕсли;
+
+ ДанныеМаркеровПоСертификатам.Удалить(Сертификат);
+
+ ОбщегоНазначения.ЗаписатьДанныеВБезопасноеХранилище(ИдентификаторУчетнойЗаписи,
+ ДанныеМаркеровПоСертификатам, КлючЗашифрованногоМаркераВБезопасномХранилище());
+
+КонецПроцедуры
+
// Возвращаемое значение:
// Структура:
// * ЗашифрованныйМаркер - Неопределено,ДвоичныеДанные
-// * ДатаОкончанияДействияМаркера - Дата
+// * ДатаОкончанияДействияМаркера - Неопределено - дату окончания действия маркера не удалось определить.
+// - Дата
Функция НовыеДанныеЗашифрованногоМаркера()
Результат = Новый Структура;
Результат.Вставить("ЗашифрованныйМаркер", Неопределено);
- Результат.Вставить("ДатаОкончанияДействияМаркера", Дата(1, 1, 1));
+ Результат.Вставить("ДатаОкончанияДействияМаркера", Неопределено);
Возврат Результат;
КонецФункции
@@ -4014,6 +4044,36 @@
КонецФункции
+// Параметры:
+// ДатаОкончанияДействияМаркера - Строка - дата в формате RFC1123
+//
+// Возвращаемое значение:
+// Неопределено,Дата
+Функция ДатаОкончанияДействияМаркераПослеСверкиСТекущимВременемНаСервере1С(ДатаОкончанияДействияМаркера)
+
+ НормализованнаяДатаОкончанияДействияМаркера =
+ ОбщегоНазначенияКлиентСервер.ДатаRFC1123(ДатаОкончанияДействияМаркера);
+ ТекущаяУниверсальнаяДатаСервера = ТекущаяУниверсальнаяДата();
+
+ МаркерУжеПросрочен = НормализованнаяДатаОкончанияДействияМаркера <= ТекущаяУниверсальнаяДатаСервера;
+ Если МаркерУжеПросрочен Тогда
+ Возврат Неопределено;
+ КонецЕсли;
+
+ РазницаВСекундах = НормализованнаяДатаОкончанияДействияМаркера - ТекущаяУниверсальнаяДатаСервера;
+ РазницаВЧасах = РазницаВСекундах / 3600;
+ МодульРазницыВЧасах = ?(РазницаВЧасах >= 0, РазницаВЧасах, -РазницаВЧасах);
+
+ МаксимальнаяДопустимаяПогрешностьВЧасах = 1;
+
+ Если МодульРазницыВЧасах > МаксимальнаяДопустимаяПогрешностьВЧасах Тогда
+ Возврат Неопределено;
+ КонецЕсли;
+
+ Возврат НормализованнаяДатаОкончанияДействияМаркера;
+
+КонецФункции
+
#КонецОбласти // Маркеры
#КонецОбласти
diff --git a/src/CommonModules/СинхронизацияЭДО/Ext/Module.bsl b/src/CommonModules/СинхронизацияЭДО/Ext/Module.bsl
index e69c0d730..4ce070efe 100644
--- a/src/CommonModules/СинхронизацияЭДО/Ext/Module.bsl
+++ b/src/CommonModules/СинхронизацияЭДО/Ext/Module.bsl
@@ -291,12 +291,14 @@
// Возвращаемое значение:
// Структура - Описание:
// * Номер - Строка
-// * Дата - Дата
+// * ДатаДокумента - Дата - дата документа
+// * Дата - Дата - дата создания документа
// * Сумма - Число
Функция НовоеОписаниеДокумента() Экспорт
ОписаниеДокумента = Новый Структура;
ОписаниеДокумента.Вставить("Номер", "");
+ ОписаниеДокумента.Вставить("ДатаДокумента", Дата(1, 1, 1));
ОписаниеДокумента.Вставить("Дата", Дата(1, 1, 1));
ОписаниеДокумента.Вставить("Сумма", 0);
diff --git a/src/CommonModules/СинхронизацияЭДОСлужебныйКлиент/Ext/Module.bsl b/src/CommonModules/СинхронизацияЭДОСлужебныйКлиент/Ext/Module.bsl
index 7a33fbcae..8619da2f7 100644
--- a/src/CommonModules/СинхронизацияЭДОСлужебныйКлиент/Ext/Module.bsl
+++ b/src/CommonModules/СинхронизацияЭДОСлужебныйКлиент/Ext/Module.bsl
@@ -135,6 +135,8 @@
КонецПроцедуры
+// Параметры:
+// ПроцессВыполнения - см. НовыйПроцессВыполненияОперацииЭДО
Процедура ЗавершитьВыполнениеОперацииЭДО(Знач ПроцессВыполнения)
Результат = Новый Структура;
@@ -148,11 +150,32 @@
КонецЕсли;
ОперацияПодключенияЭДО = СинхронизацияЭДОКлиентСервер.НоваяОперацияПодключенияЭДО();
- Если Результат.ОперацияЭДО.Действие = ОперацияПодключенияЭДО.Действие Тогда
- Результат.ОперацияЭДО.СлужебныеПараметры.ПаролиСертификатов = ОперацияПодключенияЭДО.СлужебныеПараметры.ПаролиСертификатов;
+ Если Результат.ОперацияЭДО.Действие <> ОперацияПодключенияЭДО.Действие Тогда
+ ВыполнитьОбработкуОповещения(ПроцессВыполнения.ОбработкаЗавершения, Результат);
+ Возврат;
КонецЕсли;
- ВыполнитьОбработкуОповещения(ПроцессВыполнения.ОбработкаЗавершения, Результат);
+ ПаролиСертификатов = ПроцессВыполнения.РезультатВыполнения.ОперацияЭДО.СлужебныеПараметры.ПаролиСертификатов;
+ Результат.ОперацияЭДО.СлужебныеПараметры.ПаролиСертификатов = ПаролиСертификатов;
+ Если Не ЗначениеЗаполнено(ПроцессВыполнения.ОперацияЭДО.Результат.УчетнаяЗапись)
+ Или Не ЗначениеЗаполнено(ПаролиСертификатов) Тогда
+ ВыполнитьОбработкуОповещения(ПроцессВыполнения.ОбработкаЗавершения, Результат);
+ Возврат;
+ КонецЕсли;
+
+ Контекст = Новый Структура;
+ Контекст.Вставить("ОбработкаЗавершения", ПроцессВыполнения.ОбработкаЗавершения);
+ Контекст.Вставить("РезультатПодключенияЭДО", Результат);
+
+ Оповещение = Новый ОписаниеОповещения(
+ "ЗавершитьВыполнениеОперацииПодключенияЭДОПослеВключенияАвтоматическогоПолученияЭДО", ЭтотОбъект, Контекст);
+
+ ПараметрыАвторизации = УчетныеЗаписиЭДОКлиент.НовыеПараметрыАвторизацииВСервисеЭДО();
+ ПараметрыАвторизации.ИдентификаторыЭДО = ОбщегоНазначенияКлиентСервер.ЗначениеВМассиве(
+ ПроцессВыполнения.ОперацияЭДО.Результат.УчетнаяЗапись);
+ ПараметрыАвторизации.ПаролиСертификатов = ПаролиСертификатов;
+
+ АвтоматическоеПолучениеЭДОКлиент.ВключитьПоУчетнымЗаписямЭДО(Оповещение, ПараметрыАвторизации);
КонецПроцедуры
@@ -178,6 +201,19 @@
КонецПроцедуры
+// Параметры:
+// РезультатВключения - см. АвтоматическоеПолучениеЭДОКлиент.ВключитьПоУчетнымЗаписямЭДОЗавершение
+// Контекст - Структура:
+// * ОбработкаЗавершения - см. СинхронизацияЭДОКлиент.НачатьВыполнениеОперацииЭДО.ОбработкаЗавершения
+// * РезультатПодключенияЭДО - Структура:
+// ** Выполнено - Булево
+// ** ОперацияЭДО - см. СинхронизацияЭДОКлиентСервер.НоваяОперацияПодключенияЭДО
+Процедура ЗавершитьВыполнениеОперацииПодключенияЭДОПослеВключенияАвтоматическогоПолученияЭДО(РезультатВключения, Контекст) Экспорт
+
+ ВыполнитьОбработкуОповещения(Контекст.ОбработкаЗавершения, Контекст.РезультатПодключенияЭДО);
+
+КонецПроцедуры
+
#КонецОбласти
#Область Проверка
diff --git a/src/CommonModules/СкладыСервер/Ext/Module.bsl b/src/CommonModules/СкладыСервер/Ext/Module.bsl
index 0d79b0616..92172bbd1 100644
--- a/src/CommonModules/СкладыСервер/Ext/Module.bsl
+++ b/src/CommonModules/СкладыСервер/Ext/Module.bsl
@@ -4970,7 +4970,7 @@
| ТаблицаЯчеекДляЗапроса.Ячейка.ОбластьХранения.ПриоритетРазмещенияВЯчейкиСДругимТоваром КАК ПриоритетРазмещенияВЯчейкиСДругимТоваром,
| ТаблицаЯчеекДляЗапроса.Ячейка.ОбластьХранения.ОписаниеМонотоварности КАК ОписаниеМонотоварности,
| ТаблицаЯчеекДляЗапроса.Ячейка.ОбластьХранения.СтрогаяМонотоварность КАК СтрогаяМонотоварность,
- | СостоянияПересчетовЯчеек.Состояние КАК СостояниеПересчета
+ | ЕСТЬNULL(СостоянияПересчетовЯчеек.Состояние, ЗНАЧЕНИЕ(Перечисление.СостоянияПересчетовЯчеек.ПустаяСсылка)) КАК СостояниеПересчета
|ПОМЕСТИТЬ ТаблицаЯчеек
|ИЗ
| ТаблицаЯчеекДляЗапроса КАК ТаблицаЯчеекДляЗапроса
@@ -18123,7 +18123,7 @@
| Характеристика,
| Назначение,
| Серия,
- | СостоянияПересчетовЯчеек.Состояние,
+ | ЕСТЬNULL(СостоянияПересчетовЯчеек.Состояние, ЗНАЧЕНИЕ(Перечисление.СостоянияПересчетовЯчеек.ПустаяСсылка)),
| ПриоритетОбласти УБЫВ,
| КоличествоВУпаковке УБЫВ,
| ПриоритетСтратегии,
@@ -18671,7 +18671,7 @@
| И (СостоянияПересчетовЯчеек.Состояние = ЗНАЧЕНИЕ(Перечисление.СостоянияПересчетовЯчеек.ТребуетсяПересчет))
|
|УПОРЯДОЧИТЬ ПО
- | СостоянияПересчетовЯчеек.Состояние,
+ | ЕСТЬNULL(СостоянияПересчетовЯчеек.Состояние, ЗНАЧЕНИЕ(Перечисление.СостоянияПересчетовЯчеек.ПустаяСсылка)),
| Номенклатура,
| Характеристика,
| Назначение,
diff --git a/src/CommonModules/СогласиеОПредоставленииИнформацииГИСМТ/Ext/Module.bsl b/src/CommonModules/СогласиеОПредоставленииИнформацииГИСМТ/Ext/Module.bsl
index d714600b3..a2ab4f25c 100644
--- a/src/CommonModules/СогласиеОПредоставленииИнформацииГИСМТ/Ext/Module.bsl
+++ b/src/CommonModules/СогласиеОПредоставленииИнформацииГИСМТ/Ext/Module.bsl
@@ -4,11 +4,9 @@
Функция ОбновитьИнформацииПоДействующемуДокументуСогласияОПредоставленииИнформации(ПараметрыВыполнения) Экспорт
- НаименованиеФоновогоЗадания = НСтр("ru = 'Получение информации по действующему документу ""Согласие о предоставлении информации""'");
-
Если ПараметрыВыполнения.Свойство("ВыполнитьВФоне") И ПараметрыВыполнения.ВыполнитьВФоне Тогда
- Результат = ВыполнитьМетодВФоне(ПараметрыВыполнения, НаименованиеФоновогоЗадания);
+ Результат = ВыполнитьМетодВФоне(ПараметрыВыполнения);
ИначеЕсли ОбщегоНазначенияИС.РежимРаботыБезФоновыхЗаданий() Или ОбщегоНазначения.РежимОтладки() Тогда
@@ -16,7 +14,7 @@
Иначе
- Результат = ВыполнитьМетодВФоне(ПараметрыВыполнения, НаименованиеФоновогоЗадания);
+ Результат = ВыполнитьМетодВФоне(ПараметрыВыполнения);
КонецЕсли;
@@ -1608,7 +1606,9 @@
КонецФункции
-Функция ВыполнитьМетодВФоне(ПараметрыВыполнения, НаименованиеФоновогоЗадания)
+Функция ВыполнитьМетодВФоне(ПараметрыВыполнения)
+
+ НаименованиеФоновогоЗадания = НСтр("ru = 'Получение информации по действующему документу ""Согласие о предоставлении информации""'");
ВозвращаемоеЗначение = Новый Структура;
ВозвращаемоеЗначение.Вставить("ТребуетсяОбновлениеКлючаСессии", Ложь);
diff --git a/src/CommonModules/СоответствиеТребованиямГИСМТ/Ext/Module.bsl b/src/CommonModules/СоответствиеТребованиямГИСМТ/Ext/Module.bsl
index d46c2aa22..c4866de11 100644
--- a/src/CommonModules/СоответствиеТребованиямГИСМТ/Ext/Module.bsl
+++ b/src/CommonModules/СоответствиеТребованиямГИСМТ/Ext/Module.bsl
@@ -884,7 +884,8 @@
КонецПроцедуры
Функция ФоноваяПроверкаДокументовГИСМТРазрешена() Экспорт
- Возврат ПолучитьФункциональнуюОпцию("ИспользоватьФоновуюПроверкуДокументовГИСМТ");
+ Возврат Не ОбщегоНазначения.ИнформационнаяБазаФайловая()
+ Или ПолучитьФункциональнуюОпцию("ИспользоватьФоновуюПроверкуДокументовГИСМТ");
КонецФункции
// Результат проверки по документу.
diff --git a/src/CommonModules/СопоставлениеНоменклатурыКонтрагентов/Ext/Module.bsl b/src/CommonModules/СопоставлениеНоменклатурыКонтрагентов/Ext/Module.bsl
index 79ebecea7..ea06a6daf 100644
--- a/src/CommonModules/СопоставлениеНоменклатурыКонтрагентов/Ext/Module.bsl
+++ b/src/CommonModules/СопоставлениеНоменклатурыКонтрагентов/Ext/Module.bsl
@@ -233,7 +233,6 @@
ДанныеОбъекта.ВладелецНоменклатуры = ДанныеНоменклатурыКонтрагента.Владелец;
ДанныеОбъекта.НаименованиеХарактеристики = ДанныеНоменклатурыКонтрагента.Характеристика;
ДанныеОбъекта.НаименованиеНоменклатуры = ДанныеНоменклатурыКонтрагента.Наименование;
- ДанныеОбъекта.НаименованиеПолное = ДанныеНоменклатурыКонтрагента.Наименование;
ДанныеОбъекта.Штрихкод = ДанныеНоменклатурыКонтрагента.ШтрихкодКомбинации;
ДанныеОбъекта.ДругиеШтрихкодыНоменклатурыСтрокой = ДанныеНоменклатурыКонтрагента.ШтрихкодыНоменклатуры;
@@ -261,7 +260,11 @@
ДанныеОбъекта.НаименованиеУпаковки);
КонецЕсли;
+ Если ПустаяСтрока(ОбъектНоменклатураКонтрагента.Наименование) Тогда
ДанныеОбъекта.Наименование = ДанныеОбъекта.НаименованиеПолное;
+ Иначе
+ ДанныеОбъекта.Наименование = ОбъектНоменклатураКонтрагента.Наименование;
+ КонецЕсли;
Если ЗначениеЗаполнено(НоменклатураИБ) Тогда
Если ЗначениеЗаполнено(НоменклатураИБ.Номенклатура) Тогда
@@ -1103,13 +1106,16 @@
//
Процедура УдалитьСоответствиеНоменклатуры(Знач НоменклатураКонтрагента) Экспорт
+ ДанныеНоменклатурыКонтрагента = СопоставлениеНоменклатурыКонтрагентовКлиентСервер.НоваяНоменклатураКонтрагента();
+ ЗаполнитьЗначенияСвойств(ДанныеНоменклатурыКонтрагента, НоменклатураКонтрагента);
+
ДополнительныеПараметры = НовыеДополнительныеПараметрыПриЗаписиНоменклатурыКонтрагентов();
ДополнительныеПараметры.ТребуетсяЗаписьВРегистр = Истина;
ДополнительныеПараметры.ТребуетсяПоискСсылки = Истина;
ДополнительныеПараметры.ТребуетсяПоискЕдиницыИзмеренияПоОКЕИ = Ложь;
ДополнительныеПараметры.ДанныеРегистраНоменклатурыКонтрагентов = Ложь;
Отказ = Ложь;
- СоздатьОбновитьНоменклатуруКонтрагента(НоменклатураКонтрагента,
+ СоздатьОбновитьНоменклатуруКонтрагента(ДанныеНоменклатурыКонтрагента,
СопоставлениеНоменклатурыКонтрагентовКлиентСервер.НоваяНоменклатураИнформационнойБазы(),
Отказ,
"",
@@ -1659,6 +1665,14 @@
КонецПроцедуры
+// См. СтандартныеПодсистемыСервер.ПриОпределенииМетодовРазрешенныхДляВызоваКакПроизвольныйКод
+Процедура ПриОпределенииМетодовРазрешенныхДляВызоваКакПроизвольныйКод(Методы) Экспорт
+
+ Методы.Вставить("ВключитьИспользованиеФОСловаряСопоставленияНоменклатурыБЭД", Истина);
+ Методы.Вставить("ОбновлениеСловаряСопоставленияНоменклатурыБЭД", Истина);
+
+КонецПроцедуры
+
//-- Локализация
#КонецОбласти
@@ -1727,6 +1741,7 @@
Обработчик.ОчередьОтложеннойОбработки = 1;
Обработчик.ПроцедураПроверки = "ОбновлениеИнформационнойБазы.ДанныеОбновленыНаНовуюВерсиюПрограммы";
Обработчик.ЧитаемыеОбъекты = "РегистрСведений.СловарьСопоставленияНоменклатурыБЭД";
+ Обработчик.Порядок = Перечисления.ПорядокОбработчиковОбновления.Некритичный;
ТипыДанныхСопоставления = Метаданные.ОпределяемыеТипы.ОбъектДанныхСопоставленияБЭД.Тип.Типы();
Для Каждого ТипДанных Из ТипыДанныхСопоставления Цикл
@@ -1740,8 +1755,7 @@
Обработчик.БлокируемыеОбъекты = "РегистрСведений.СловарьСопоставленияНоменклатурыБЭД";
Обработчик.Комментарий = НСтр("ru = 'Заполняются данные служебного регистра словарь номенклатуры сопоставления.'");
Обработчик.ПриоритетыВыполнения = ОбновлениеИнформационнойБазы.ПриоритетыВыполненияОбработчика();
- Обработчик.Порядок = Перечисления.ПорядокОбработчиковОбновления.Некритичный;
-
+
НоваяСтрока = Обработчик.ПриоритетыВыполнения.Добавить();
НоваяСтрока.Процедура = "РегистрыСведений.СтатистикаСловСловаряСопоставленияНоменклатурыБЭД.ОбработатьДанныеДляПереходаНаНовуюВерсию";
НоваяСтрока.Порядок = "До";
@@ -1765,7 +1779,7 @@
Обработчик.Комментарий = НСтр("ru = 'Заполняются данные служебного регистра статистики слов словаря сопоставления.'");
Обработчик.ПриоритетыВыполнения = ОбновлениеИнформационнойБазы.ПриоритетыВыполненияОбработчика();
Обработчик.Порядок = Перечисления.ПорядокОбработчиковОбновления.Некритичный;
-
+
НоваяСтрока = Обработчик.ПриоритетыВыполнения.Добавить();
НоваяСтрока.Процедура = "РегистрыСведений.СловарьСопоставленияНоменклатурыБЭД.ОбработатьДанныеДляПереходаНаНовуюВерсию";
НоваяСтрока.Порядок = "После";
@@ -1900,9 +1914,7 @@
| Справочник.НоменклатураКонтрагентов КАК НоменклатураКонтрагентов
|ГДЕ
| НоменклатураКонтрагентов.ВладелецНоменклатуры = &ВладелецНоменклатуры
- | И НоменклатураКонтрагентов.Идентификатор = &Идентификатор
- | И НЕ НоменклатураКонтрагентов.Недействителен
- | И НЕ НоменклатураКонтрагентов.ПометкаУдаления";
+ | И НоменклатураКонтрагентов.Идентификатор = &Идентификатор";
Запрос.УстановитьПараметр("ВладелецНоменклатуры" , ДанныеКонтрагента.Владелец);
Запрос.УстановитьПараметр("Идентификатор" , ДанныеКонтрагента.Идентификатор);
@@ -2251,7 +2263,7 @@
Возврат "ВЫБРАТЬ
| НоменклатураКонтрагентовБЭД.ВладелецНоменклатуры КАК Владелец,
| НоменклатураКонтрагентовБЭД.Идентификатор,
- | НоменклатураКонтрагентовБЭД.Наименование,
+ | НоменклатураКонтрагентовБЭД.НаименованиеНоменклатуры КАК Наименование,
| НоменклатураКонтрагентовБЭД.НаименованиеХарактеристики КАК Характеристика,
| НоменклатураКонтрагентовБЭД.НаименованиеБазовойЕдиницыИзмерения КАК ЕдиницаИзмерения,
| НоменклатураКонтрагентовБЭД.КодОКЕИБазовойЕдиницыИзмерения КАК ЕдиницаИзмеренияКод,
diff --git a/src/CommonModules/СопоставлениеНоменклатурыКонтрагентовКлиентПереопределяемый/Ext/Module.bsl b/src/CommonModules/СопоставлениеНоменклатурыКонтрагентовКлиентПереопределяемый/Ext/Module.bsl
index 71cd72f1a..07220c043 100644
--- a/src/CommonModules/СопоставлениеНоменклатурыКонтрагентовКлиентПереопределяемый/Ext/Module.bsl
+++ b/src/CommonModules/СопоставлениеНоменклатурыКонтрагентовКлиентПереопределяемый/Ext/Module.bsl
@@ -11,7 +11,7 @@
// Позволяет переопределить настройки по умолчанию сопоставления номенклатуры
//
// Параметры:
-// НастройкиСопоставления - см. СопоставлениеНоменклатурыКонтрагентовКлиент.НовыеНастройкиСопоставленияНоменклатуры
+// НастройкиСопоставления - Структура
//
Процедура ПриОпределенииНастроекСопоставленияНоменклатуры(НастройкиСопоставления) Экспорт
diff --git a/src/CommonModules/СопоставлениеНоменклатурыКонтрагентовСлужебный/Ext/Module.bsl b/src/CommonModules/СопоставлениеНоменклатурыКонтрагентовСлужебный/Ext/Module.bsl
index a313f66a9..04d3c8054 100644
--- a/src/CommonModules/СопоставлениеНоменклатурыКонтрагентовСлужебный/Ext/Module.bsl
+++ b/src/CommonModules/СопоставлениеНоменклатурыКонтрагентовСлужебный/Ext/Module.bsl
@@ -319,7 +319,7 @@
НоменклатураКонтрагента = СопоставлениеНоменклатурыКонтрагентовКлиентСервер.НоваяНоменклатураКонтрагента(
Источник.Отбор.Владелец.Значение, Источник.Отбор.Идентификатор.Значение);
ПометкаНаУдаление = Истина;
- НоменклатураИБ = Неопределено;
+ НоменклатураИБ = СопоставлениеНоменклатурыКонтрагентовКлиентСервер.НоваяНоменклатураИнформационнойБазы();
ИначеЕсли Источник.Количество() > 0 Тогда
НоменклатураКонтрагента = СопоставлениеНоменклатурыКонтрагентовКлиентСервер.НоваяНоменклатураКонтрагента();
ЗаполнитьЗначенияСвойств(НоменклатураКонтрагента, Источник[0], , "Характеристика");
@@ -700,6 +700,17 @@
#КонецОбласти
+#Область ДляВызоваИзДругихПодсистем
+
+// См. СтандартныеПодсистемыСервер.ПриОпределенииМетодовРазрешенныхДляВызоваКакПроизвольныйКод
+Процедура ПриОпределенииМетодовРазрешенныхДляВызоваКакПроизвольныйКод(Методы) Экспорт
+
+ Методы.Вставить("ОбновитьСловарьИСтатистикуПоИзменениям", Истина);
+
+КонецПроцедуры
+
+#КонецОбласти
+
//-- Локализация
#Область ПоискПоНатуральнымКлючамНоменклатурыКонтрагента
@@ -1018,32 +1029,6 @@
КонецФункции
-// Возвращает таблицу сопоставлений номенклатуры.
-//
-// Возвращаемое значение:
-// ТаблицаЗначений - содержит сопоставленные номенклатуры из НаборНоменклатуры:
-// * Идентификатор - Строка - идентификатор записи.
-// * Владелец - ОпределяемыйТип.ВладелецНоменклатурыБЭД, ОпределяемыйТип.Организация - владелец номенклатуры ИБ.
-// * НоменклатураКонтрагента - СправочникСсылка.НоменклатураКонтрагентов - ссылка номенклатуры контрагента.
-// Заполняется, если номенклатура в терминах контрагента, иначе пустая.
-// * НоменклатураИБ - ОпределяемыйТип.НоменклатураБЭД - ссылка номенклатура ИБ.
-// * ХарактеристикаИБ - ОпределяемыйТип.ХарактеристикаНоменклатурыБЭД - ссылка характеристики номенклатуры ИБ.
-// * УпаковкаИБ - ОпределяемыйТип.УпаковкаНоменклатурыБЭД - ссылка упаковки номенклатуры ИБ.
-//
-Функция НоваяТаблицаСопоставленнойНоменклатуры()
-
- ТаблицаСопоставлений = Новый ТаблицаЗначений;
- ТаблицаСопоставлений.Колонки.Добавить("Владелец", ОписаниеТиповВладельцаНоменклатурыСопоставленияБЭД());
- ТаблицаСопоставлений.Колонки.Добавить("Идентификатор", Новый ОписаниеТипов("Строка", , Новый КвалификаторыСтроки(300)));
- ТаблицаСопоставлений.Колонки.Добавить("НоменклатураИБ", Метаданные.ОпределяемыеТипы.НоменклатураБЭД.Тип);
- ТаблицаСопоставлений.Колонки.Добавить("ХарактеристикаИБ", Метаданные.ОпределяемыеТипы.ХарактеристикаНоменклатурыБЭД.Тип);
- ТаблицаСопоставлений.Колонки.Добавить("УпаковкаИБ", Метаданные.ОпределяемыеТипы.УпаковкаНоменклатурыБЭД.Тип);
- ТаблицаСопоставлений.Колонки.Добавить("НоменклатураКонтрагента", Новый ОписаниеТипов("СправочникСсылка.НоменклатураКонтрагентов"));
-
- Возврат ТаблицаСопоставлений;
-
-КонецФункции
-
Функция НовоеСопоставлениеНоменклатурыКонтрагентов()
СопоставлениеНоменклатуры = Новый Структура;
@@ -4669,235 +4654,6 @@
#Область КонтрольСопоставленияНоменклатурыВДокументах
-Функция ПоискНашейНоменклатурыПоВнутреннимИдентификаторам(Знач НаборНоменклатурыКонтрагентов, ТаблицаСопоставленнойНоменклатуры = Неопределено)
-
- НоменклатураКонтрагентовНаСопоставление = Новый Массив;
- Для Каждого СтрокаНоменклатурыКонтрагента Из НаборНоменклатурыКонтрагентов Цикл
-
- НоменклатураИБ = НайтиНоменклатуруИБПоИдентификатору(СтрокаНоменклатурыКонтрагента.Идентификатор,
- СтрокаНоменклатурыКонтрагента.ИдентификаторНоменклатуры,
- СтрокаНоменклатурыКонтрагента.ИдентификаторХарактеристики,
- СтрокаНоменклатурыКонтрагента.ИдентификаторУпаковки);
-
- Если Не ЗначениеЗаполнено(НоменклатураИБ.Номенклатура)
- Или Не ЗначениеЗаполнено(НоменклатураИБ.Характеристика) И ЗначениеЗаполнено(СтрокаНоменклатурыКонтрагента.ИдентификаторХарактеристики)
- Или Не ЗначениеЗаполнено(НоменклатураИБ.Упаковка) И ЗначениеЗаполнено(СтрокаНоменклатурыКонтрагента.ИдентификаторУпаковки) Тогда
- НоменклатураКонтрагентовНаСопоставление.Добавить(СтрокаНоменклатурыКонтрагента);
- Иначе
- НоваяСтрока = ТаблицаСопоставленнойНоменклатуры.Добавить();
- НоваяСтрока.Владелец = СтрокаНоменклатурыКонтрагента.Владелец;
- НоваяСтрока.Идентификатор = СтрокаНоменклатурыКонтрагента.Идентификатор;
- НоваяСтрока.НоменклатураИБ = НоменклатураИБ.Номенклатура;
- НоваяСтрока.ХарактеристикаИБ = НоменклатураИБ.Характеристика;
- НоваяСтрока.УпаковкаИБ = НоменклатураИБ.Упаковка;
- КонецЕсли;
- КонецЦикла;
-
- Возврат НоменклатураКонтрагентовНаСопоставление;
-
-КонецФункции
-
-// Выполняет проверку электронного документа на наличие не сопоставленной номенклатуры контрагента с номенклатурой информационной базы.
-// Присланные изменения по номенклатуре контрагента перезаполняются без подтверждения пользователя.
-//
-// Параметры:
-// НаборНоменклатурыКонтрагентов - Массив из см. СопоставлениеНоменклатурыКонтрагентовКлиентСервер.НоваяНоменклатураКонтрагента - номенклатура контрагентов.
-// ОграничениеТипаНоменклатуры - ОписаниеТипов
-// ТаблицаСопоставленнойНоменклатуры - ТаблицаЗначений из см. НоваяТаблицаСопоставленнойНоменклатуры, Неопределено - таблица сопоставленной
-// номенклатуры контрагента.
-//
-// Возвращаемое значение:
-// Массив из см. СопоставлениеНоменклатурыКонтрагентовКлиентСервер.НоваяНоменклатураКонтрагента - несопоставленная номенклатура контрагентов.
-//
-Функция КонтрольСопоставленияНоменклатурыКонтрагентовДляДокументов(Знач НаборНоменклатурыКонтрагентов,
- ОграничениеТипаНоменклатуры,
- ТаблицаСопоставленнойНоменклатуры = Неопределено, Отказ = Ложь, ТекстОшибки = "")
-
- ТаблицаНоменклатурыКонтрагентов = ПреобразоватьНаборНоменклатурыКонтрагентовВТаблицу(НаборНоменклатурыКонтрагентов);
-
- РезультатЗапроса = РезультатПоискаИСравненияИзмененийНоменклатурыКонтрагентов(ТаблицаНоменклатурыКонтрагентов,
- ОграничениеТипаНоменклатуры);
-
- Если РезультатЗапроса.Пустой() Тогда
- НоменклатураКонтрагентовНеНайдена = Истина;
- Иначе
- НоменклатураКонтрагентовНеНайдена = Ложь;
- Выборка = РезультатЗапроса.Выбрать();
- КонецЕсли;
-
- ДополнительныеПараметры =
- СопоставлениеНоменклатурыКонтрагентов.НовыеДополнительныеПараметрыПриЗаписиНоменклатурыКонтрагентов();
- ДополнительныеПараметры.ТребуетсяПоискЕдиницыИзмеренияПоОКЕИ = Ложь;
- ДополнительныеПараметры.ТребуетсяПоискСсылки = Ложь;
-
- НоменклатураНаСопоставление = Новый Массив;
- Для Каждого СтрокаНоменклатурыКонтрагента Из НаборНоменклатурыКонтрагентов Цикл
-
- Если НоменклатураКонтрагентовНеНайдена Тогда
- НоменклатураНаСопоставление.Добавить(СтрокаНоменклатурыКонтрагента);
- Продолжить;
- КонецЕсли;
-
- ПараметрыПоиска = Новый Структура;
- ПараметрыПоиска.Вставить("Владелец" , СтрокаНоменклатурыКонтрагента.Владелец);
- ПараметрыПоиска.Вставить("Идентификатор", СтрокаНоменклатурыКонтрагента.Идентификатор);
- Если Выборка.НайтиСледующий(ПараметрыПоиска) Тогда
-
- Если Выборка.ТребуетсяПерезаполнение Тогда
-
- НоменклатураИБ = Неопределено;
- Если Не Выборка.ТребуетсяСопоставление Тогда
- НоменклатураИБ = СопоставлениеНоменклатурыКонтрагентовКлиентСервер.НоваяНоменклатураИнформационнойБазы(
- Выборка.Номенклатура, Выборка.Характеристика, Выборка.Упаковка);
- КонецЕсли;
-
- СтрокаНоменклатурыКонтрагента.НоменклатураКонтрагента = Выборка.НоменклатураКонтрагента;
- СопоставлениеНоменклатурыКонтрагентов.СоздатьОбновитьНоменклатуруКонтрагента(
- СтрокаНоменклатурыКонтрагента, НоменклатураИБ, Отказ, ТекстОшибки, ДополнительныеПараметры);
- КонецЕсли;
-
- Если Выборка.ТребуетсяСопоставление Тогда
- СтрокаНоменклатурыКонтрагента.НоменклатураКонтрагента = Выборка.НоменклатураКонтрагента;
- НоменклатураНаСопоставление.Добавить(СтрокаНоменклатурыКонтрагента);
- ИначеЕсли ТаблицаСопоставленнойНоменклатуры <> Неопределено Тогда
- НоваяСтрока = ТаблицаСопоставленнойНоменклатуры.Добавить();
- ЗаполнитьЗначенияСвойств(НоваяСтрока, Выборка);
- НоваяСтрока.НоменклатураИБ = Выборка.Номенклатура;
- НоваяСтрока.ХарактеристикаИБ = Выборка.Характеристика;
- НоваяСтрока.УпаковкаИБ = Выборка.Упаковка;
- КонецЕсли;
- Иначе
- НоменклатураНаСопоставление.Добавить(СтрокаНоменклатурыКонтрагента);
- КонецЕсли;
-
- КонецЦикла;
-
- Возврат НоменклатураНаСопоставление;
-
-КонецФункции
-
-Функция РезультатПоискаИСравненияИзмененийНоменклатурыКонтрагентов(ТаблицаНоменклатурыКонтрагентов,
- ОграничениеТипаНоменклатуры)
-
- Запрос = Новый Запрос;
- Запрос.УстановитьПараметр("ТаблицаНоменклатурыКонтрагентов", ТаблицаНоменклатурыКонтрагентов);
- Запрос.УстановитьПараметр("ПустаяНоменклатура", ПустаяСсылкаНоменклатурыБЭД());
- Запрос.Текст =
- "ВЫБРАТЬ
- | ТаблицаНоменклатурыКонтрагентов.Владелец КАК Владелец,
- | ТаблицаНоменклатурыКонтрагентов.Идентификатор КАК Идентификатор,
- | ТаблицаНоменклатурыКонтрагентов.Артикул КАК Артикул,
- | ТаблицаНоменклатурыКонтрагентов.СтавкаНДС КАК СтавкаНДС,
- | ТаблицаНоменклатурыКонтрагентов.ШтрихкодКомбинации КАК Штрихкод,
- | ВЫРАЗИТЬ(ТаблицаНоменклатурыКонтрагентов.ШтрихкодыНоменклатуры КАК СТРОКА(1000)) КАК ШтрихкодыНоменклатуры,
- | ТаблицаНоменклатурыКонтрагентов.ЕдиницаИзмерения КАК ЕдиницаИзмерения,
- | ТаблицаНоменклатурыКонтрагентов.ЕдиницаИзмеренияКод КАК ЕдиницаИзмеренияКод,
- | ТаблицаНоменклатурыКонтрагентов.НаименованиеУпаковки КАК НаименованиеУпаковки,
- | ТаблицаНоменклатурыКонтрагентов.Наименование КАК НаименованиеНоменклатуры,
- | ТаблицаНоменклатурыКонтрагентов.Характеристика КАК НаименованиеХарактеристики,
- | ТаблицаНоменклатурыКонтрагентов.ИдентификаторНоменклатурыСервиса КАК ИдентификаторНоменклатурыСервиса,
- | ТаблицаНоменклатурыКонтрагентов.ИдентификаторХарактеристикиСервиса КАК ИдентификаторХарактеристикиСервиса
- |ПОМЕСТИТЬ ТаблицаНоменклатурыКонтрагентов
- |ИЗ
- | &ТаблицаНоменклатурыКонтрагентов КАК ТаблицаНоменклатурыКонтрагентов
- |;
- |////////////////////////////////////////////////////////////////////////////////
- |ВЫБРАТЬ
- | НоменклатураКонтрагентов.Ссылка КАК НоменклатураКонтрагента,
- | ВЫБОР
- | КОГДА ТаблицаНоменклатурыКонтрагентов.Артикул <> НоменклатураКонтрагентов.Артикул
- | ИЛИ НоменклатураКонтрагентов.НаименованиеНоменклатуры <> ТаблицаНоменклатурыКонтрагентов.НаименованиеНоменклатуры
- | ИЛИ
- | НоменклатураКонтрагентов.НаименованиеХарактеристики <> ТаблицаНоменклатурыКонтрагентов.НаименованиеХарактеристики
- | ИЛИ НоменклатураКонтрагентов.НаименованиеУпаковки <> ТаблицаНоменклатурыКонтрагентов.НаименованиеУпаковки
- | ИЛИ НоменклатураКонтрагентов.СтавкаНДС <> ТаблицаНоменклатурыКонтрагентов.СтавкаНДС
- | ИЛИ НоменклатураКонтрагентов.Штрихкод <> ТаблицаНоменклатурыКонтрагентов.Штрихкод
- | ИЛИ (ВЫРАЗИТЬ(НоменклатураКонтрагентов.ДругиеШтрихкодыНоменклатурыСтрокой КАК
- | СТРОКА(1000))) <> ТаблицаНоменклатурыКонтрагентов.ШтрихкодыНоменклатуры
- | ИЛИ
- | НоменклатураКонтрагентов.ИдентификаторНоменклатурыСервиса <> ТаблицаНоменклатурыКонтрагентов.ИдентификаторНоменклатурыСервиса
- | ИЛИ
- | НоменклатураКонтрагентов.ИдентификаторХарактеристикиСервиса <> ТаблицаНоменклатурыКонтрагентов.ИдентификаторХарактеристикиСервиса
- | ИЛИ НоменклатураКонтрагентов.КодОКЕИБазовойЕдиницыИзмерения <> ТаблицаНоменклатурыКонтрагентов.ЕдиницаИзмеренияКод
- | ИЛИ НоменклатураКонтрагентов.НаименованиеБазовойЕдиницыИзмерения <> ТаблицаНоменклатурыКонтрагентов.ЕдиницаИзмерения
- | ТОГДА ИСТИНА
- | ИНАЧЕ ЛОЖЬ
- | КОНЕЦ КАК ТребуетсяПерезаполнение,
- | ВЫБОР
- | КОГДА НоменклатураКонтрагентов.Номенклатура = &ПустаяНоменклатура
- | ТОГДА ИСТИНА
- | ИНАЧЕ ЛОЖЬ
- | КОНЕЦ КАК ТребуетсяСопоставление,
- | НоменклатураКонтрагентов.Номенклатура КАК Номенклатура,
- | НоменклатураКонтрагентов.Характеристика КАК Характеристика,
- | НоменклатураКонтрагентов.Упаковка КАК Упаковка,
- | ТаблицаНоменклатурыКонтрагентов.Владелец КАК Владелец,
- | ТаблицаНоменклатурыКонтрагентов.Идентификатор КАК Идентификатор
- |ИЗ
- | ТаблицаНоменклатурыКонтрагентов КАК ТаблицаНоменклатурыКонтрагентов
- | ВНУТРЕННЕЕ СОЕДИНЕНИЕ Справочник.НоменклатураКонтрагентов КАК НоменклатураКонтрагентов
- | ПО ТаблицаНоменклатурыКонтрагентов.Владелец = НоменклатураКонтрагентов.ВладелецНоменклатуры
- | И ТаблицаНоменклатурыКонтрагентов.Идентификатор = НоменклатураКонтрагентов.Идентификатор
- | И &УсловиеПоТипуНоменклатуры
- |ГДЕ
- | НЕ НоменклатураКонтрагентов.ПометкаУдаления
- | И
- | НЕ НоменклатураКонтрагентов.Недействителен
- |
- |ОБЪЕДИНИТЬ
- |
- |ВЫБРАТЬ
- | НоменклатураКонтрагентов.Ссылка КАК НоменклатураКонтрагента,
- | ВЫБОР
- | КОГДА ТаблицаНоменклатурыКонтрагентов.Артикул <> НоменклатураКонтрагентов.Артикул
- | ИЛИ НоменклатураКонтрагентов.НаименованиеНоменклатуры <> ТаблицаНоменклатурыКонтрагентов.НаименованиеНоменклатуры
- | ИЛИ
- | НоменклатураКонтрагентов.НаименованиеХарактеристики <> ТаблицаНоменклатурыКонтрагентов.НаименованиеХарактеристики
- | ИЛИ НоменклатураКонтрагентов.НаименованиеУпаковки <> ТаблицаНоменклатурыКонтрагентов.НаименованиеУпаковки
- | ИЛИ НоменклатураКонтрагентов.СтавкаНДС <> ТаблицаНоменклатурыКонтрагентов.СтавкаНДС
- | ИЛИ НоменклатураКонтрагентов.Штрихкод <> ТаблицаНоменклатурыКонтрагентов.Штрихкод
- | ИЛИ ВЫРАЗИТЬ(НоменклатураКонтрагентов.ДругиеШтрихкодыНоменклатурыСтрокой КАК
- | СТРОКА(1000)) <> ТаблицаНоменклатурыКонтрагентов.ШтрихкодыНоменклатуры
- | ИЛИ
- | НоменклатураКонтрагентов.ИдентификаторНоменклатурыСервиса <> ТаблицаНоменклатурыКонтрагентов.ИдентификаторНоменклатурыСервиса
- | ИЛИ
- | НоменклатураКонтрагентов.ИдентификаторХарактеристикиСервиса <> ТаблицаНоменклатурыКонтрагентов.ИдентификаторХарактеристикиСервиса
- | ИЛИ НоменклатураКонтрагентов.КодОКЕИБазовойЕдиницыИзмерения <> ТаблицаНоменклатурыКонтрагентов.ЕдиницаИзмеренияКод
- | ИЛИ НоменклатураКонтрагентов.НаименованиеБазовойЕдиницыИзмерения <> ТаблицаНоменклатурыКонтрагентов.ЕдиницаИзмерения
- | ИЛИ НоменклатураКонтрагентов.Идентификатор <> ТаблицаНоменклатурыКонтрагентов.Идентификатор
- | ТОГДА ИСТИНА
- | ИНАЧЕ ЛОЖЬ
- | КОНЕЦ КАК ТребуетсяПерезаполнение,
- | ВЫБОР
- | КОГДА НоменклатураКонтрагентов.Номенклатура = &ПустаяНоменклатура
- | ТОГДА ИСТИНА
- | ИНАЧЕ ЛОЖЬ
- | КОНЕЦ КАК ТребуетсяСопоставление,
- | НоменклатураКонтрагентов.Номенклатура КАК Номенклатура,
- | НоменклатураКонтрагентов.Характеристика КАК Характеристика,
- | НоменклатураКонтрагентов.Упаковка КАК Упаковка,
- | ТаблицаНоменклатурыКонтрагентов.Владелец КАК Владелец,
- | ТаблицаНоменклатурыКонтрагентов.Идентификатор КАК Идентификатор
- |ИЗ
- | ТаблицаНоменклатурыКонтрагентов КАК ТаблицаНоменклатурыКонтрагентов
- | ВНУТРЕННЕЕ СОЕДИНЕНИЕ Справочник.НоменклатураКонтрагентов КАК НоменклатураКонтрагентов
- | ПО ТаблицаНоменклатурыКонтрагентов.Владелец = НоменклатураКонтрагентов.ВладелецНоменклатуры
- | И ТаблицаНоменклатурыКонтрагентов.НаименованиеНоменклатуры = НоменклатураКонтрагентов.НаименованиеНоменклатуры
- | И ТаблицаНоменклатурыКонтрагентов.НаименованиеХарактеристики = НоменклатураКонтрагентов.НаименованиеХарактеристики
- | И ТаблицаНоменклатурыКонтрагентов.НаименованиеУпаковки = НоменклатураКонтрагентов.НаименованиеУпаковки
- | И &УсловиеПоТипуНоменклатуры
- |ГДЕ
- | НЕ НоменклатураКонтрагентов.ПометкаУдаления
- | И
- | НЕ НоменклатураКонтрагентов.Недействителен";
-
- УсловиеПоТипу = УсловиеПоТипуНоменклатуры("НоменклатураКонтрагентов.Номенклатура", ОграничениеТипаНоменклатуры);
- Запрос.Текст = СтрЗаменить(Запрос.Текст, "&УсловиеПоТипуНоменклатуры", УсловиеПоТипу);
-
- Возврат Запрос.Выполнить();
-
-КонецФункции
-
Процедура ПроверитьКорректностьСопоставленияНоменклатурыКонтрагентовВДокументах(ТаблицаСопоставлений, ЕстьОшибкиСопоставления, НаборСопоставлений)
Если ТаблицаСопоставлений.Количество() = 0 Тогда
@@ -5049,85 +4805,6 @@
КонецПроцедуры
-// Возвращает найденную номенклатуру ИБ по переданному идентификатору.
-//
-// Параметры:
-// Идентификатор - Строка - идентификатор, по которому требуется найти номенклатуру ИБ.
-// ИдентификаторНоменклатуры - Строка - идентификатор номенклатуры, по которому требуется найти номенклатуру.
-// ИдентификаторХарактеристики - Строка - идентификатор характеристики, по которому требуется найти характеристику.
-// ИдентификаторУпаковки - Строка - идентификатор упаковки, по которому требуется найти упаковку.
-//
-// Возвращаемое значение:
-// Структура - См. СопоставлениеНоменклатурыКонтрагентовКлиентСервер.НоваяНоменклатураИнформационнойБазы.
-//
-Функция НайтиНоменклатуруИБПоИдентификатору(Знач Идентификатор, Знач ИдентификаторНоменклатуры, Знач ИдентификаторХарактеристики, Знач ИдентификаторУпаковки)
-
- НоменклатураИБ = СопоставлениеНоменклатурыКонтрагентовКлиентСервер.НоваяНоменклатураИнформационнойБазы();
- СопоставлениеНоменклатурыКонтрагентовПереопределяемый.ПриПоискеНоменклатурыПоИдентификатору(Идентификатор, НоменклатураИБ);
-
- Если ЗначениеЗаполнено(НоменклатураИБ.Номенклатура) Тогда
- Возврат НоменклатураИБ;
- КонецЕсли;
-
- Номенклатура = Неопределено;
- Характеристика = Неопределено;
- Упаковка = Неопределено;
- ЕстьОшибка = Ложь;
-
- Попытка
-
- // Номенклатура
- Если ЗначениеЗаполнено(ИдентификаторНоменклатуры) Тогда
- Ссылка = ОбщегоНазначенияБЭД.НайтиСсылкуПоИдентификатору(ИдентификаторНоменклатуры, Метаданные.ОпределяемыеТипы.НоменклатураБЭД.Тип);
- Если ЗначениеЗаполнено(Ссылка) Тогда
- Номенклатура = Ссылка;
- Иначе
- ЕстьОшибка = Истина;
- КонецЕсли;
- КонецЕсли;
- // Характеристика
- Если ЗначениеЗаполнено(ИдентификаторХарактеристики) Тогда
- Ссылка = ОбщегоНазначенияБЭД.НайтиСсылкуПоИдентификатору(ИдентификаторХарактеристики, Метаданные.ОпределяемыеТипы.ХарактеристикаНоменклатурыБЭД.Тип);
- Если ЗначениеЗаполнено(Ссылка) Тогда
- Характеристика = Ссылка;
- Иначе
- ЕстьОшибка = Истина;
- КонецЕсли;
- КонецЕсли;
- // Упаковка
- Если ЗначениеЗаполнено(ИдентификаторУпаковки) Тогда
- Ссылка = ОбщегоНазначенияБЭД.НайтиСсылкуПоИдентификатору(ИдентификаторУпаковки, Метаданные.ОпределяемыеТипы.УпаковкаНоменклатурыБЭД.Тип);
- Если ЗначениеЗаполнено(Ссылка) Тогда
- Упаковка = Ссылка;
- Иначе
- ЕстьОшибка = Истина;
- КонецЕсли;
- КонецЕсли;
-
- Исключение
- ЕстьОшибка = Истина;
- КонецПопытки;
-
- Если ЕстьОшибка Тогда
- Возврат НоменклатураИБ;
- КонецЕсли;
-
- Если ЗначениеЗаполнено(Номенклатура) Тогда
- НоменклатураИБ.Номенклатура = Номенклатура;
- Иначе
- Возврат НоменклатураИБ;
- КонецЕсли;
- Если ЗначениеЗаполнено(Характеристика) Тогда
- НоменклатураИБ.Характеристика = Характеристика;
- КонецЕсли;
- Если ЗначениеЗаполнено(Упаковка) Тогда
- НоменклатураИБ.Упаковка = Упаковка;
- КонецЕсли;
-
- Возврат НоменклатураИБ;
-
-КонецФункции
-
#КонецОбласти
#Область СинхронизацияНоменклатурыКонтрагентов
diff --git a/src/CommonModules/ТрансграничныйЭДО/Ext/Module.bsl b/src/CommonModules/ТрансграничныйЭДО/Ext/Module.bsl
index b8611de7f..14e58b92c 100644
--- a/src/CommonModules/ТрансграничныйЭДО/Ext/Module.bsl
+++ b/src/CommonModules/ТрансграничныйЭДО/Ext/Module.bsl
@@ -2,23 +2,26 @@
#Область ПрограммныйИнтерфейс
-// Определяет валюту по коду.
+#Область УстаревшиеПроцедурыИФункции
+
+// Устарела. Определяет валюту по коду.
//
// Параметры:
// КодВалюты - Строка - код валюты по классификатору
// ЗначениеПоУмолчанию - СправочникСсылка.Валюты
//
// Возвращаемое значение:
-// СправочникСсылка.Валюты
+// - СправочникСсылка.Валюты
+// - Неопределено
//
Функция ВалютаПоКоду(КодВалюты, ЗначениеПоУмолчанию = Неопределено) Экспорт
- Валюта = Справочники.Валюты.НайтиПоКоду(КодВалюты);
- Если ЗначениеЗаполнено(Валюта) Тогда
- Возврат Валюта;
+ Если НЕ ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.Валюты") Тогда
+ Возврат ЗначениеПоУмолчанию;
КонецЕсли;
- Валюты = РаботаСКурсамиВалют.ДобавитьВалютыПоКоду(ОбщегоНазначенияКлиентСервер.ЗначениеВМассиве(КодВалюты));
+ МодульРаботаСКурсамиВалют = ОбщегоНазначения.ОбщийМодуль("РаботаСКурсамиВалют");
+ Валюты = МодульРаботаСКурсамиВалют.ДобавитьВалютыПоКоду(ОбщегоНазначенияКлиентСервер.ЗначениеВМассиве(КодВалюты));
Если ЗначениеЗаполнено(Валюты) Тогда
Возврат Валюты[0];
КонецЕсли;
@@ -27,10 +30,17 @@
Возврат ЗначениеПоУмолчанию;
КонецЕсли;
- Возврат Справочники.Валюты.ПустаяСсылка();
+ ИмяСправочника = ОбщегоНазначенияБЭД.ИмяПрикладногоСправочника("Валюты");
+ Если ЗначениеЗаполнено(ИмяСправочника) И Метаданные.Справочники.Найти(ИмяСправочника) <> Неопределено Тогда
+ Возврат Справочники[ИмяСправочника].ПустаяСсылка();
+ КонецЕсли;
+
+ Возврат ЗначениеПоУмолчанию;
КонецФункции
+#КонецОбласти
+
// Регистрирует все пространства имен ТЭДО
//
// Возвращаемое значение:
@@ -327,6 +337,92 @@
#Область Прочее
+// При определении использования универсальных сообщений.
+//
+// Параметры:
+// ПараметрыДокумента - см. РегламентыЭДО.НовыеПараметрыОпределенияИспользованияУС
+// ИспользоватьУС - Булево
+//
+Процедура ПриОпределенииИспользованияУниверсальныхСообщений(ПараметрыДокумента, ИспользоватьУС) Экспорт
+
+ Если ИспользоватьУС И (ЭтоИностранныйОператор(ПараметрыДокумента.ИдентификаторОрганизации)
+ ИЛИ ЭтоИностранныйОператор(ПараметрыДокумента.ИдентификаторКонтрагента)) Тогда
+ ИспользоватьУС = Ложь;
+ КонецЕсли;
+
+КонецПроцедуры
+
+// Заполняет состояние ЭД по входящему отклонению.
+//
+// Параметры:
+// ПараметрыДокумента - См. РегламентыЭДО.НовыеПараметрыДокументаДляОпределенияСостояния
+// СостоянияЭлементовРегламента - См. РегламентыЭДО.НовыеСостоянияЭлементовРегламента
+// Состояние - ПеречислениеСсылка.СостоянияДокументовЭДО
+//
+// Возвращаемое значение:
+// Булево - Заполнить состояние по входящему отклонению
+Функция ЗаполнитьСостояниеПоВходящемуОтклонению(ПараметрыДокумента, СостоянияЭлементовРегламента, Состояние) Экспорт
+
+ Если НЕ ПараметрыДокумента.Исправлен Тогда
+ Возврат Ложь;
+ КонецЕсли;
+
+ Реквизиты = "
+ |ВидДокумента,
+ |ИдентификаторКонтрагента,
+ |ИдентификаторДокументооборота,
+ |ИдентификаторСвязи";
+ ДанныеЭД = ОбщегоНазначения.ЗначенияРеквизитовОбъекта(ПараметрыДокумента.Ссылка, Реквизиты);
+
+ Если НЕ ЭтоИностранныйОператор(ДанныеЭД.ИдентификаторКонтрагента) Тогда
+ Возврат Ложь;
+ КонецЕсли;
+
+ ДанныеДляЗаполнения = ДанныеДляЗаполненияСостоянияЭД();
+ ДанныеДляЗаполнения.ТипДокумента = ОбщегоНазначения.ЗначениеРеквизитаОбъекта(ДанныеЭД.ВидДокумента, "ТипДокумента");
+ ЗаполнитьЗначенияСвойств(ДанныеДляЗаполнения, ДанныеЭД);
+
+ Для Каждого Обработчик Из Обработчики() Цикл
+ Обработчик.ЗаполнитьСостояниеПоВходящемуОтклонению(ДанныеДляЗаполнения, СостоянияЭлементовРегламента, Состояние);
+ Если ЗначениеЗаполнено(Состояние) Тогда
+ Возврат Истина;
+ КонецЕсли;
+ КонецЦикла;
+
+ Возврат Ложь;
+
+КонецФункции
+
+// Дополняет коллекцию корректируемых типов ЭД.
+//
+// Параметры:
+// ТипыЭД - Соответствие из КлючИЗначение:
+// * Ключ - ПеречислениеСсылка.ТипыДокументовЭДО
+// * Значение - ПеречислениеСсылка.ТипыДокументовЭДО
+//
+Процедура ДополнитьКорректируемыеТипыЭД(ТипыЭД) Экспорт
+
+ Для Каждого Обработчик Из Обработчики() Цикл
+ Обработчик.ДополнитьКорректируемыеТипыЭД(ТипыЭД);
+ КонецЦикла;
+
+КонецПроцедуры
+
+// Дополняет коллекцию исправляющих типов ЭД.
+//
+// Параметры:
+// ТипыЭД - Соответствие из КлючИЗначение:
+// * Ключ - ПеречислениеСсылка.ТипыДокументовЭДО
+// * Значение - Булево
+//
+Процедура ДополнитьИсправляющиеТипыЭД(ТипыЭД) Экспорт
+
+ Для Каждого Обработчик Из Обработчики() Цикл
+ Обработчик.ДополнитьИсправляющиеТипыЭД(ТипыЭД);
+ КонецЦикла;
+
+КонецПроцедуры
+
// Формирует краткое наименование типа документа.
//
// Параметры:
@@ -478,6 +574,103 @@
КонецПроцедуры
+// Проверяет служебное имя дополнительного поля
+//
+// Параметры:
+// ИмяПоля - Строка
+// Формат - Строка
+//
+// Возвращаемое значение:
+// Булево
+//
+Функция ЭтоСлужебноеИмяДополнительногоПоля(ИмяПоля, Формат) Экспорт
+
+ Для Каждого Обработчик Из Обработчики() Цикл
+ Если Обработчик.ЭтоСлужебноеИмяДополнительногоПоля(ИмяПоля, Формат) Тогда
+ Возврат Истина;
+ КонецЕсли;
+ КонецЦикла;
+
+ Возврат Ложь;
+
+КонецФункции
+
+// Дополняет настройку данными дополнительных полей шапки
+//
+// Параметры:
+// ИдентификаторКонтрагента - Строка
+// ПараметрыЗаполнения - см. ФорматыЭДО.ПараметрыЗаполненияДополнительныхПолей
+//
+Процедура ДополнитьНастройкуЗаполненияДополнительныхПолей(ИдентификаторКонтрагента, ПараметрыЗаполнения) Экспорт
+
+ Для Каждого Обработчик Из Обработчики() Цикл
+
+ ДанныеДополнительныхПолей = Обработчик.ДанныеДополнительныхПолей(ИдентификаторКонтрагента, ПараметрыЗаполнения);
+ Если НЕ ЗначениеЗаполнено(ДанныеДополнительныхПолей) Тогда
+ Продолжить;
+ КонецЕсли;
+
+ РазделыДополнительныхПолей = ФорматыЭДО.РазделыДополнительныхПолейФорматаЭлектронногоДокумента(
+ ПараметрыЗаполнения.НастройкиОбмена.ТипДокумента, ПараметрыЗаполнения.НастройкиОбмена.Формат);
+
+ Если РазделыДополнительныхПолей.Количество() = 0 Тогда
+ Возврат;
+ КонецЕсли;
+
+ НастройкаЗаполнения = ПараметрыЗаполнения.НастройкаЗаполнения;
+ Если НастройкаЗаполнения = Неопределено Тогда
+ НастройкаЗаполнения = НастройкиОтправкиЭДО.НоваяНастройкаЗаполненияДополнительныхПолей();
+ ПараметрыЗаполнения.НастройкаЗаполнения = НастройкаЗаполнения;
+ КонецЕсли;
+ ТипыРазделовДополнительныхПолей = ЭлектронныеДокументыЭДОКлиентСервер.ТипыРазделовДополнительныхПолей();
+
+ Для Каждого Раздел Из РазделыДополнительныхПолей Цикл
+
+ Если Раздел.Тип = ТипыРазделовДополнительныхПолей.Шапка Тогда
+
+ Для Каждого КлючИЗначение Из ДанныеДополнительныхПолей Цикл
+
+ Если НастройкаЗаполнения.Найти(КлючИЗначение.Ключ, "Имя") <> Неопределено Тогда
+ Продолжить;
+ КонецЕсли;
+
+ НоваяНастройка = НастройкаЗаполнения.Добавить();
+ НоваяНастройка.Версия = НастройкиЭДОКлиентСервер.ВерсияНастроекДополнительныхПолейПоФормуле();
+ НоваяНастройка.Заполнение = "ПоФормуле";
+ НоваяНастройка.Значение = СтрШаблон("""%1""", КлючИЗначение.Значение);
+ Идентификатор = "ТЭДО_" + РаботаСФайламиБЭД.НовыйUUID();
+ НоваяНастройка.Идентификатор = Идентификатор;
+ НоваяНастройка.Имя = КлючИЗначение.Ключ;
+ НоваяНастройка.Правило = НСтр("ru = 'По Формуле'");
+ НоваяНастройка.Представление = "";
+ НоваяНастройка.Раздел = ТипыРазделовДополнительныхПолей.Шапка;
+ НоваяНастройка.Описание = "";
+
+ КонецЦикла;
+
+ КонецЕсли;
+
+ КонецЦикла;
+
+ Возврат;
+
+ КонецЦикла;
+
+КонецПроцедуры
+
+// Заполняет параметры связи для иностранных операторов
+//
+// Параметры:
+// ПараметрыСвязи - см. ИнтерфейсДокументовЭДО.НовыеПараметрыСвязиИдентификаторов
+//
+Процедура ЗаполнитьПараметрыСвязиИдентификаторов(ПараметрыСвязи) Экспорт
+
+ Для Каждого Обработчик Из Обработчики() Цикл
+ Обработчик.ЗаполнитьПараметрыСвязиИдентификаторов(ПараметрыСвязи);
+ КонецЦикла;
+
+КонецПроцедуры
+
// Определяет ограничение максимальной длины номера ЭД.
//
// Возвращаемое значение:
@@ -645,6 +838,10 @@
//
Функция ЭтоИностранныйОператор(Идентификатор) Экспорт
+ Если НЕ ЗначениеЗаполнено(Идентификатор) Тогда
+ Возврат Ложь;
+ КонецЕсли;
+
Для Каждого Обработчик Из Обработчики() Цикл
Для Каждого Оператор Из Обработчик.Операторы() Цикл
@@ -707,7 +904,8 @@
Возврат "";
КонецЕсли;
- Возврат ДанныеСтраны.НаименованиеПолное;
+ Возврат ?(ЗначениеЗаполнено(ДанныеСтраны.НаименованиеПолное),
+ ДанныеСтраны.НаименованиеПолное, ДанныеСтраны.Наименование);
КонецФункции
@@ -1817,6 +2015,26 @@
#Область Прочее
+// Описывает данные для заполнения состояния ЭД.
+//
+// Возвращаемое значение:
+// Структура:
+// * ТипДокумента - ПеречислениеСсылка.ТипыДокументовЭДО
+// * ИдентификаторКонтрагента - Строка
+// * ИдентификаторДокументооборота - Строка
+// * ИдентификаторСвязи - Строка
+//
+Функция ДанныеДляЗаполненияСостоянияЭД() Экспорт
+
+ Результат = Новый Структура();
+ Результат.Вставить("ТипДокумента", Перечисления.ТипыДокументовЭДО.ПустаяСсылка());
+ Результат.Вставить("ИдентификаторКонтрагента", "");
+ Результат.Вставить("ИдентификаторДокументооборота", "");
+ Результат.Вставить("ИдентификаторСвязи", "");
+ Возврат Результат;
+
+КонецФункции
+
// Проверяет файл документа.
//
// Параметры:
diff --git a/src/CommonModules/ТранспортныеКонтейнерыЭДО/Ext/Module.bsl b/src/CommonModules/ТранспортныеКонтейнерыЭДО/Ext/Module.bsl
index f2c81a682..54d44b172 100644
--- a/src/CommonModules/ТранспортныеКонтейнерыЭДО/Ext/Module.bsl
+++ b/src/CommonModules/ТранспортныеКонтейнерыЭДО/Ext/Module.bsl
@@ -368,7 +368,9 @@
НачатьТранзакцию();
Попытка
- КонтейнерОбъект = ОбщегоНазначенияБЭД.ОбъектПоСсылкеДляИзменения(ТранспортныйКонтейнер);
+ ЗаблокироватьКонтейнер(ТранспортныйКонтейнер);
+
+ КонтейнерОбъект = ТранспортныйКонтейнер.ПолучитьОбъект();
КонтейнерОбъект.Статус = Статус;
Если Не ПустаяСтрока(Комментарий) Тогда
@@ -968,6 +970,19 @@
КонецФункции
+// Параметры:
+// Контейнер - ДокументСсылка.ТранспортныйКонтейнерЭДО
+Процедура ЗаблокироватьКонтейнер(Контейнер) Экспорт
+
+ Блокировка = Новый БлокировкаДанных;
+ ЭлементБлокировки = Блокировка.Добавить("Документ.ТранспортныйКонтейнерЭДО");
+ ЭлементБлокировки.УстановитьЗначение("Ссылка", Контейнер);
+ ВнешнийУИД = ОбщегоНазначения.ЗначениеРеквизитаОбъекта(Контейнер, "ВнешнийУИД");
+ ЭлементБлокировки.УстановитьЗначение("ВнешнийУИД", ВнешнийУИД);
+ Блокировка.Заблокировать();
+
+КонецПроцедуры
+
#Область ДляВызоваИзДругихПодсистем
// Возвращает описание документа транспортного контейнера.
@@ -1029,19 +1044,12 @@
// ДокументСсылка.ТранспортныйКонтейнерЭДО - сформированный контейнер
Функция ЗаполнитьТранспортныйКонтейнер(ПараметрыКонтейнера, Знач ТранспортныйКонтейнер = Неопределено) Экспорт
- Блокировка = Новый БлокировкаДанных;
- ЭлементБлокировки = Блокировка.Добавить("Документ.ТранспортныйКонтейнерЭДО");
- Если ТранспортныйКонтейнер = Неопределено Тогда
- ЭлементБлокировки.УстановитьЗначение("ВнешнийУИД", ПараметрыКонтейнера.ВнешнийУИД);
- Иначе
- ЭлементБлокировки.УстановитьЗначение("Ссылка", ТранспортныйКонтейнер);
- КонецЕсли;
-
УстановитьПривилегированныйРежим(Истина);
НачатьТранзакцию();
Попытка
- Блокировка.Заблокировать();
Если ТранспортныйКонтейнер = Неопределено Тогда
+ ЗаблокироватьКонтейнерПоВнешнемуУИД(ПараметрыКонтейнера.ВнешнийУИД);
+
ТранспортныйКонтейнерОбъект = Документы.ТранспортныйКонтейнерЭДО.СоздатьДокумент();
СуществующийТранспортныйКонтейнер = ТранспортныйКонтейнерПоИдентификатору(ПараметрыКонтейнера.ВнешнийУИД);
@@ -1051,6 +1059,7 @@
Возврат СуществующийТранспортныйКонтейнер;
КонецЕсли;
Иначе
+ ЗаблокироватьКонтейнер(ТранспортныйКонтейнер);
ТранспортныйКонтейнерОбъект = ТранспортныйКонтейнер.ПолучитьОбъект();
КонецЕсли;
@@ -1234,7 +1243,9 @@
Возврат;
КонецЕсли;
- КонтейнерОбъект = ОбщегоНазначенияБЭД.ОбъектПоСсылкеДляИзменения(ДанныеОбъекта.ТранспортныйКонтейнер);
+ ЗаблокироватьКонтейнер(ДанныеОбъекта.ТранспортныйКонтейнер);
+
+ КонтейнерОбъект = ДанныеОбъекта.ТранспортныйКонтейнер.ПолучитьОбъект();
Если Не КонтейнерОбъект.Организация = ДанныеОбъекта.Организация Тогда
КонтейнерОбъект.Организация = ДанныеОбъекта.Организация;
КонецЕсли;
@@ -1651,6 +1662,7 @@
// Структура, Неопределено - Описание:
// * ТипДокумента - Строка
// * ИдентификаторСообщения - Строка
+// * ДатаДокумента - Дата
// * Дата - Дата
// * ТекстСопроводительнойЗаписки - Строка
// * ИдентификаторыДокументовОснований - Массив из Строка
@@ -2842,6 +2854,7 @@
ДанныеОбъекта.ТранспортныйКонтейнер = ТранспортныйКонтейнер;
ДанныеОбъекта.Карточка = ДанныеВходящегоОбъекта.Карточка;
ДанныеОбъекта.ДатаСоздания = ДанныеВходящегоОбъекта.Карточка.Дата;
+ ДанныеОбъекта.ОписаниеДокумента.ДатаДокумента = ДанныеВходящегоОбъекта.Карточка.ДатаДокумента;
Если ЗначениеЗаполнено(ДанныеВходящегоОбъекта.Карточка.ДатаДокумента) Тогда
ДанныеОбъекта.ОписаниеДокумента.Дата = ДанныеВходящегоОбъекта.Карточка.ДатаДокумента;
Иначе
@@ -3324,7 +3337,7 @@
КлючКонтрагента.ИНН = Карточка.ИННКонтрагента;
КлючКонтрагента.КПП = Карточка.КППКонтрагентаУточненный;
КлючКонтрагента.ДатаСведений = Карточка.Дата;
- СтруктураУчастникаЭДО = ПриглашенияЭДОПовтИсп.УчастникЭДОПоКлючуИПриглашению(ПараметрыПриглашения, КлючКонтрагента);
+ СтруктураУчастникаЭДО = ПриглашенияЭДО.УчастникЭДОПоКлючуИПриглашению(ПараметрыПриглашения, КлючКонтрагента);
Контрагент = СтруктураУчастникаЭДО.Ссылка;
ОбменМеждуСобственнымиОрганизациями = СтруктураУчастникаЭДО.ЭтоОрганизация;
Иначе
@@ -3357,7 +3370,7 @@
КлючКонтрагента.ИНН = Карточка.ИННКонтрагента;
КлючКонтрагента.КПП = Карточка.КППКонтрагента;
КлючКонтрагента.ДатаСведений = Карточка.Дата;
- СтруктураУчастникаЭДО = ПриглашенияЭДОПовтИсп.УчастникЭДОПоКлючуИПриглашению(ПараметрыПриглашения, КлючКонтрагента);
+ СтруктураУчастникаЭДО = ПриглашенияЭДО.УчастникЭДОПоКлючуИПриглашению(ПараметрыПриглашения, КлючКонтрагента);
Контрагент = СтруктураУчастникаЭДО.Ссылка;
ОбменМеждуСобственнымиОрганизациями = СтруктураУчастникаЭДО.ЭтоОрганизация;
Иначе
@@ -3538,4 +3551,15 @@
КонецПроцедуры
+// Параметры:
+// ВнешнийУИД - Строка
+Процедура ЗаблокироватьКонтейнерПоВнешнемуУИД(ВнешнийУИД)
+
+ Блокировка = Новый БлокировкаДанных;
+ ЭлементБлокировки = Блокировка.Добавить("Документ.ТранспортныйКонтейнерЭДО");
+ ЭлементБлокировки.УстановитьЗначение("ВнешнийУИД", ВнешнийУИД);
+ Блокировка.Заблокировать();
+
+КонецПроцедуры
+
#КонецОбласти
diff --git a/src/CommonModules/ТранспортныеКонтейнерыЭДОСлужебный/Ext/Module.bsl b/src/CommonModules/ТранспортныеКонтейнерыЭДОСлужебный/Ext/Module.bsl
index c960720a0..42c301018 100644
--- a/src/CommonModules/ТранспортныеКонтейнерыЭДОСлужебный/Ext/Module.bsl
+++ b/src/CommonModules/ТранспортныеКонтейнерыЭДОСлужебный/Ext/Module.bsl
@@ -739,7 +739,7 @@
НоваяСтрока = ДополнительныеДанные.Добавить();
НоваяСтрока.Имя = "Сумма";
- НоваяСтрока.Значение = Формат(ОписаниеОбъекта.ОписаниеДокумента.Сумма, "ЧДЦ=6; ЧРД=,");
+ НоваяСтрока.Значение = Формат(ОписаниеОбъекта.ОписаниеДокумента.Сумма, "ЧДЦ=6; ЧРД=,; ЧГ=0");
НоваяСтрока = ДополнительныеДанные.Добавить();
НоваяСтрока.Имя = "ДатаДокумента";
@@ -1266,7 +1266,11 @@
Если КодРегламента = "Invoice" Тогда
КодТранзакции = "Invoice";
ИначеЕсли КодРегламента = "Formalized" Тогда
- КодТранзакции = "VendorTitle";
+ Если ОтветнаяПодпись Тогда
+ КодТранзакции = "MainDocumentResign";
+ Иначе
+ КодТранзакции = "VendorTitle";
+ КонецЕсли;
Иначе
КодТранзакции = "MainDocument";
Если ОтветнаяПодпись Тогда
diff --git a/src/CommonModules/УправлениеДоступомЛокализация/Ext/Module.bsl b/src/CommonModules/УправлениеДоступомЛокализация/Ext/Module.bsl
index a7c1ae476..7ef92b313 100644
--- a/src/CommonModules/УправлениеДоступомЛокализация/Ext/Module.bsl
+++ b/src/CommonModules/УправлениеДоступомЛокализация/Ext/Module.bsl
@@ -1397,6 +1397,20 @@
//-- Локализация
КонецПроцедуры
+// См. РаботаВМоделиСервисаБТСПереопределяемый.УстановитьДоступКAPIОбластиДанных
+//
+Процедура УстановитьДоступКAPIОбластиДанных(Пользователь, ДоступРазрешен) Экспорт
+
+ //++ Локализация
+
+ // ЭлектронноеВзаимодействие.ЦентрЭДО
+ ЭлектронноеВзаимодействие.УстановитьДоступКAPIОбластиДанных(Пользователь, ДоступРазрешен);
+ // Конец ЭлектронноеВзаимодействие.ЦентрЭДО
+
+ //-- Локализация
+
+КонецПроцедуры
+
#КонецОбласти
#Область СлужебныеПроцедурыИФункции
diff --git a/src/CommonModules/УправлениеДоступомУТ/Ext/Module.bsl b/src/CommonModules/УправлениеДоступомУТ/Ext/Module.bsl
index 22f26884b..2ba213e35 100644
--- a/src/CommonModules/УправлениеДоступомУТ/Ext/Module.bsl
+++ b/src/CommonModules/УправлениеДоступомУТ/Ext/Module.bsl
@@ -4194,6 +4194,14 @@
КонецПроцедуры
+// См. РаботаВМоделиСервисаБТСПереопределяемый.УстановитьДоступКAPIОбластиДанных
+//
+Процедура УстановитьДоступКAPIОбластиДанных(Пользователь, ДоступРазрешен) Экспорт
+
+ УправлениеДоступомЛокализация.УстановитьДоступКAPIОбластиДанных(Пользователь, ДоступРазрешен);
+
+КонецПроцедуры
+
#КонецОбласти
#Область ДоступКРеквизитамОбъектовМетаданных
diff --git a/src/CommonModules/УправлениеПечатьюЛокализация/Ext/Module.bsl b/src/CommonModules/УправлениеПечатьюЛокализация/Ext/Module.bsl
index 74854379b..8e6d9a3d0 100644
--- a/src/CommonModules/УправлениеПечатьюЛокализация/Ext/Module.bsl
+++ b/src/CommonModules/УправлениеПечатьюЛокализация/Ext/Module.bsl
@@ -15,7 +15,6 @@
СписокОбъектов.Добавить(Документы.СправкаОПодтверждающихДокументах);
СписокОбъектов.Добавить(Документы.ТранспортнаяНакладная);
СписокОбъектов.Добавить(Справочники.Патенты);
- СписокОбъектов.Добавить(Справочники.НастройкиАвторизацииМакс);
diff --git a/src/CommonModules/УчетНДСЛокализация/Ext/Module.bsl b/src/CommonModules/УчетНДСЛокализация/Ext/Module.bsl
index c3aa78828..c27658fb7 100644
--- a/src/CommonModules/УчетНДСЛокализация/Ext/Module.bsl
+++ b/src/CommonModules/УчетНДСЛокализация/Ext/Module.bsl
@@ -7954,6 +7954,14 @@
КонецПроцедуры
+Процедура РассчитатьЗаписиНДСПредъявленныйВосстановлениеПодВидДеятельности(ПараметрыРасчета) Экспорт
+
+ //++ Локализация
+ УчетНДСРФ.РассчитатьЗаписиНДСПредъявленныйВосстановлениеПодВидДеятельности(ПараметрыРасчета);
+ //-- Локализация
+
+КонецПроцедуры
+
Процедура ПолучитьПовторноПринятыйКВычетуНДС(ПараметрыРасчета) Экспорт
//++ Локализация
diff --git a/src/CommonModules/УчетНДСРФ/Ext/Module.bsl b/src/CommonModules/УчетНДСРФ/Ext/Module.bsl
index 79e22213e..fd090369c 100644
--- a/src/CommonModules/УчетНДСРФ/Ext/Module.bsl
+++ b/src/CommonModules/УчетНДСРФ/Ext/Module.bsl
@@ -4197,6 +4197,9 @@
| ВЫБОР
| КОГДА ТИПЗНАЧЕНИЯ(Партии.Регистратор) = ТИП(Документ.КорректировкаРеализации)
| ТОГДА ВЫРАЗИТЬ(Партии.Регистратор КАК Документ.КорректировкаРеализации).ДокументОснование
+ | КОГДА ТИПЗНАЧЕНИЯ(Партии.Регистратор) = ТИП(Документ.ВозвратТоваровОтКлиента)
+ | И ТИПЗНАЧЕНИЯ(Партии.ДокументИсточник) В (&ТипыДокументовЭкспорта)
+ | ТОГДА Партии.ДокументИсточник
| КОГДА ТИПЗНАЧЕНИЯ(Партии.Регистратор) В (&ТипыДокументовЭкспорта)
| ТОГДА Партии.Регистратор
| ИНАЧЕ НЕОПРЕДЕЛЕНО
@@ -4268,6 +4271,9 @@
| ВЫБОР
| КОГДА ТИПЗНАЧЕНИЯ(Партии.Регистратор) = ТИП(Документ.КорректировкаРеализации)
| ТОГДА ВЫРАЗИТЬ(Партии.Регистратор КАК Документ.КорректировкаРеализации).ДокументОснование
+ | КОГДА ТИПЗНАЧЕНИЯ(Партии.Регистратор) = ТИП(Документ.ВозвратТоваровОтКлиента)
+ | И ТИПЗНАЧЕНИЯ(Партии.ДокументИсточник) В (&ТипыДокументовЭкспорта)
+ | ТОГДА Партии.ДокументИсточник
| КОГДА ТИПЗНАЧЕНИЯ(Партии.Регистратор) В (&ТипыДокументовЭкспорта)
| ТОГДА Партии.Регистратор
| ИНАЧЕ НЕОПРЕДЕЛЕНО
@@ -4345,6 +4351,9 @@
| ВЫБОР
| КОГДА ТИПЗНАЧЕНИЯ(Партии.Регистратор) = ТИП(Документ.КорректировкаРеализации)
| ТОГДА ВЫРАЗИТЬ(Партии.Регистратор КАК Документ.КорректировкаРеализации).ДокументОснование
+ | КОГДА ТИПЗНАЧЕНИЯ(Партии.Регистратор) = ТИП(Документ.ВозвратТоваровОтКлиента)
+ | И ТИПЗНАЧЕНИЯ(Партии.ДокументИсточник) В (&ТипыДокументовЭкспорта)
+ | ТОГДА Партии.ДокументИсточник
| КОГДА ТИПЗНАЧЕНИЯ(Партии.Регистратор) В (&ТипыДокументовЭкспорта)
| ТОГДА Партии.Регистратор
| ИНАЧЕ НЕОПРЕДЕЛЕНО
@@ -4487,6 +4496,9 @@
| ВЫБОР
| КОГДА ТИПЗНАЧЕНИЯ(Партии.Регистратор) = ТИП(Документ.КорректировкаРеализации)
| ТОГДА ВЫРАЗИТЬ(Партии.Регистратор КАК Документ.КорректировкаРеализации).ДокументОснование
+ | КОГДА ТИПЗНАЧЕНИЯ(Партии.Регистратор) = ТИП(Документ.ВозвратТоваровОтКлиента)
+ | И ТИПЗНАЧЕНИЯ(Партии.ДокументИсточник) В (&ТипыДокументовЭкспорта)
+ | ТОГДА Партии.ДокументИсточник
| КОГДА ТИПЗНАЧЕНИЯ(Партии.Регистратор) В (&ТипыДокументовЭкспорта)
| ТОГДА Партии.Регистратор
| ИНАЧЕ НЕОПРЕДЕЛЕНО
@@ -4601,6 +4613,9 @@
| ВЫБОР
| КОГДА ТИПЗНАЧЕНИЯ(Партии.Регистратор) = ТИП(Документ.КорректировкаРеализации)
| ТОГДА ВЫРАЗИТЬ(Партии.Регистратор КАК Документ.КорректировкаРеализации).ДокументОснование
+ | КОГДА ТИПЗНАЧЕНИЯ(Партии.Регистратор) = ТИП(Документ.ВозвратТоваровОтКлиента)
+ | И ТИПЗНАЧЕНИЯ(Партии.ДокументИсточник) В (&ТипыДокументовЭкспорта)
+ | ТОГДА Партии.ДокументИсточник
| КОГДА ТИПЗНАЧЕНИЯ(Партии.Регистратор) В (&ТипыДокументовЭкспорта)
| ТОГДА Партии.Регистратор
| ИНАЧЕ НЕОПРЕДЕЛЕНО
@@ -4671,6 +4686,9 @@
| ВЫБОР
| КОГДА ТИПЗНАЧЕНИЯ(Партии.Регистратор) = ТИП(Документ.КорректировкаРеализации)
| ТОГДА ВЫРАЗИТЬ(Партии.Регистратор КАК Документ.КорректировкаРеализации).ДокументОснование
+ | КОГДА ТИПЗНАЧЕНИЯ(Партии.Регистратор) = ТИП(Документ.ВозвратТоваровОтКлиента)
+ | И ТИПЗНАЧЕНИЯ(Партии.ДокументИсточник) В (&ТипыДокументовЭкспорта)
+ | ТОГДА Партии.ДокументИсточник
| КОГДА ТИПЗНАЧЕНИЯ(Партии.Регистратор) В (&ТипыДокументовЭкспорта)
| ТОГДА Партии.Регистратор
| ИНАЧЕ НЕОПРЕДЕЛЕНО
@@ -4725,6 +4743,9 @@
| ВЫБОР
| КОГДА ТИПЗНАЧЕНИЯ(Партии.Регистратор) = ТИП(Документ.КорректировкаРеализации)
| ТОГДА ВЫРАЗИТЬ(Партии.Регистратор КАК Документ.КорректировкаРеализации).ДокументОснование
+ | КОГДА ТИПЗНАЧЕНИЯ(Партии.Регистратор) = ТИП(Документ.ВозвратТоваровОтКлиента)
+ | И ТИПЗНАЧЕНИЯ(Партии.ДокументИсточник) В (&ТипыДокументовЭкспорта)
+ | ТОГДА Партии.ДокументИсточник
| КОГДА ТИПЗНАЧЕНИЯ(Партии.Регистратор) В (&ТипыДокументовЭкспорта)
| ТОГДА Партии.Регистратор
| ИНАЧЕ НЕОПРЕДЕЛЕНО
@@ -4778,6 +4799,9 @@
| КОГДА ТИПЗНАЧЕНИЯ(Партии.Регистратор) = ТИП(Документ.ОтгрузкаТоваровКлиенту)
| И ВЫРАЗИТЬ(Партии.Регистратор КАК Документ.ОтгрузкаТоваровКлиенту).Исправление
| ТОГДА ВЫРАЗИТЬ(Партии.Регистратор КАК Документ.ОтгрузкаТоваровКлиенту).ИсправляемыйДокумент
+ | КОГДА ТИПЗНАЧЕНИЯ(Партии.Регистратор) = ТИП(Документ.ВозвратТоваровОтКлиента)
+ | И ТИПЗНАЧЕНИЯ(Партии.ДокументИсточник) В (&ТипыДокументовЭкспорта)
+ | ТОГДА Партии.ДокументИсточник
| КОГДА ТИПЗНАЧЕНИЯ(Партии.Регистратор) В (&ТипыДокументовЭкспорта)
| ТОГДА Партии.Регистратор
| ИНАЧЕ НЕОПРЕДЕЛЕНО
@@ -4826,6 +4850,9 @@
| ВЫБОР
| КОГДА ТИПЗНАЧЕНИЯ(Партии.Регистратор) = ТИП(Документ.КорректировкаРеализации)
| ТОГДА ВЫРАЗИТЬ(Партии.Регистратор КАК Документ.КорректировкаРеализации).ДокументОснование
+ | КОГДА ТИПЗНАЧЕНИЯ(Партии.Регистратор) = ТИП(Документ.ВозвратТоваровОтКлиента)
+ | И ТИПЗНАЧЕНИЯ(Партии.ДокументИсточник) В (&ТипыДокументовЭкспорта)
+ | ТОГДА Партии.ДокументИсточник
| КОГДА ТИПЗНАЧЕНИЯ(Партии.Регистратор) В (&ТипыДокументовЭкспорта)
| ТОГДА Партии.Регистратор
| ИНАЧЕ НЕОПРЕДЕЛЕНО
@@ -6196,6 +6223,134 @@
КонецПроцедуры
+// См. УчетНДСУПСлужебный.РассчитатьЗаписиНДСПредъявленныйВосстановлениеПодВидДеятельности
+Процедура РассчитатьЗаписиНДСПредъявленныйВосстановлениеПодВидДеятельности(ПараметрыРасчета) Экспорт
+
+ Запрос = Новый Запрос;
+ Запрос.Текст =
+ "ВЫБРАТЬ
+ | НДСПредъявленныйОстаткиНаКонецПериода.ИсправленныйСчетФактура КАК ИсправленныйСчетФактура,
+ | МАКСИМУМ(ПартииНДСКРаспределению.Регистратор) КАК Регистратор
+ |ПОМЕСТИТЬ ИсправленныеСФКРаспределению
+ |ИЗ
+ | НДСПредъявленныйОстаткиНаКонецПериода КАК НДСПредъявленныйОстаткиНаКонецПериода
+ |
+ | ЛЕВОЕ СОЕДИНЕНИЕ
+ | РегистрНакопления.ПартииНДСКРаспределению КАК ПартииНДСКРаспределению
+ | ПО
+ | ПартииНДСКРаспределению.Период МЕЖДУ &НачалоПериода И &КонецПериода
+ | И НДСПредъявленныйОстаткиНаКонецПериода.ИсправленныйСчетФактура = ПартииНДСКРаспределению.Регистратор
+ | И ПартииНДСКРаспределению.ВидДеятельностиНДС = ЗНАЧЕНИЕ(Перечисление.ТипыНалогообложенияНДС.ОпределяетсяРаспределением)
+ |
+ |СГРУППИРОВАТЬ ПО
+ | НДСПредъявленныйОстаткиНаКонецПериода.ИсправленныйСчетФактура
+ |;
+ |
+ |ВЫБРАТЬ
+ | 1 КАК Приоритет,
+ | ВЫБОР
+ | КОГДА ЕСТЬNULL(СчетаФактурыДокументы.ДатаЗаписиКнигиПокупок, ДАТАВРЕМЯ(1, 1, 1)) >= &НачалоПериода
+ | ТОГДА СчетаФактурыДокументы.ДатаЗаписиКнигиПокупок
+ | ИНАЧЕ &КонецПериода
+ | КОНЕЦ КАК Период,
+ | ЕСТЬNULL(СчетаФактурыДокументы.Ссылка, НДСПредъявленный.СчетФактура) КАК Регистратор,
+ | ЗНАЧЕНИЕ(ВидДвиженияНакопления.Приход) КАК ВидДвижения,
+ | НДСПредъявленный.Организация КАК Организация,
+ | НДСПредъявленный.СчетФактура КАК СчетФактура,
+ | НДСПредъявленный.Поставщик КАК Поставщик,
+ | НДСПредъявленный.ВидЦенности КАК ВидЦенности,
+ | НДСПредъявленный.СтавкаНДС КАК СтавкаНДС,
+ | НДСПредъявленный.ВидДеятельностиНДС КАК ВидДеятельностиНДС,
+ | НДСПредъявленный.ИсправленныйСчетФактура КАК ИсправленныйСчетФактура,
+ | НДСПредъявленный.РеализацияЭкспорт КАК РеализацияЭкспорт,
+ | НДСПредъявленный.НаправлениеДеятельности КАК НаправлениеДеятельности,
+ | НДСПредъявленный.ОтнестиКПредыдущемуКварталу КАК ОтнестиКПредыдущемуКварталу,
+ | НДСПредъявленный.ИсправляемыйПериод КАК ИсправляемыйПериод,
+ | НДСПредъявленный.ДатаИсправленияРаспределенияНДС КАК ДатаИсправленияРаспределенияНДС,
+ | -СУММА(НДСПредъявленный.СуммаБезНДС) КАК СуммаБезНДС,
+ | -СУММА(НДСПредъявленный.НДС) КАК НДС,
+ | -СУММА(НДСПредъявленный.НДСУпр) КАК НДСУпр,
+ | ЗНАЧЕНИЕ(Перечисление.СобытияНДСПредъявленный.ВосстановлениеНДСПодВидДеятельности) КАК Событие,
+ | ЗНАЧЕНИЕ(Перечисление.ТипыНалогообложенияНДС.ПустаяСсылка) КАК КорВидДеятельностиНДС,
+ | НЕОПРЕДЕЛЕНО КАК Подразделение,
+ | НЕОПРЕДЕЛЕНО КАК КорНаправлениеДеятельности,
+ | НЕОПРЕДЕЛЕНО КАК СтатьяРасходов,
+ | НЕОПРЕДЕЛЕНО КАК АналитикаРасходов,
+ | """" КАК ИдентификаторСтроки,
+ | ИСТИНА КАК РегламентнаяОперация,
+ | ЛОЖЬ КАК Сторно,
+ | ЗНАЧЕНИЕ(Справочник.НастройкиХозяйственныхОпераций.ВосстановлениеНДС) КАК НастройкаХозяйственнойОперации
+ |ПОМЕСТИТЬ НДСПредъявленныйВосстановлениеПодВидДеятельности
+ |ИЗ
+ | НДСПредъявленныйОстаткиНаКонецПериода КАК НДСПредъявленный
+ |
+ | ЛЕВОЕ СОЕДИНЕНИЕ СчетаФактурыДокументы КАК СчетаФактурыДокументы
+ | ПО НДСПредъявленный.Организация = СчетаФактурыДокументы.Организация
+ | И НДСПредъявленный.СчетФактура = СчетаФактурыДокументы.СчетФактура
+ |
+ | ЛЕВОЕ СОЕДИНЕНИЕ
+ | СписанияНДСНаРасходы КАК СписанияНДСНаРасходы
+ | ПО
+ | НДСПредъявленный.Организация = СписанияНДСНаРасходы.Организация
+ | И НДСПредъявленный.СчетФактура = СписанияНДСНаРасходы.СчетФактура
+ |
+ | ЛЕВОЕ СОЕДИНЕНИЕ
+ | КорректировочныеСчетаФактуры КАК КорректировочныеСчетаФактуры
+ | ПО
+ | НДСПредъявленный.Организация = КорректировочныеСчетаФактуры.Организация
+ | И НДСПредъявленный.СчетФактура = КорректировочныеСчетаФактуры.СчетФактура
+ |
+ | ЛЕВОЕ СОЕДИНЕНИЕ
+ | УчетныеПолитикиПоПериодичностиРасчетаНДС КАК УчетныеПолитикиПоПериодичностиРасчетаНДС
+ | ПО
+ | НДСПредъявленный.Организация = УчетныеПолитикиПоПериодичностиРасчетаНДС.Организация
+ |
+ | ЛЕВОЕ СОЕДИНЕНИЕ
+ | ИсправленныеСФКРаспределению КАК ИсправленныеСФКРаспределению
+ | ПО
+ | НДСПредъявленный.ИсправленныйСчетФактура = ИсправленныеСФКРаспределению.ИсправленныйСчетФактура
+ |
+ |ГДЕ
+ | (УчетныеПолитикиПоПериодичностиРасчетаНДС.ПериодичностьФормированияВычетовИВосстановленийНДС = ЗНАЧЕНИЕ(Перечисление.Периодичность.Месяц)
+ | И ИсправленныеСФКРаспределению.Регистратор ЕСТЬ NULL
+ | ИЛИ &КонецПериода = КОНЕЦПЕРИОДА(&КонецПериода, КВАРТАЛ))
+ | И КорректировочныеСчетаФактуры.СчетФактура ЕСТЬ NULL
+ | И СписанияНДСНаРасходы.СчетФактура ЕСТЬ NULL
+ | И НЕ НДСПредъявленный.СчетФактура = НЕОПРЕДЕЛЕНО
+ |
+ |СГРУППИРОВАТЬ ПО
+ | ЕСТЬNULL(СчетаФактурыДокументы.Ссылка, НДСПредъявленный.СчетФактура),
+ | НДСПредъявленный.Организация,
+ | НДСПредъявленный.СчетФактура,
+ | НДСПредъявленный.Поставщик,
+ | НДСПредъявленный.ВидЦенности,
+ | НДСПредъявленный.СтавкаНДС,
+ | НДСПредъявленный.ВидДеятельностиНДС,
+ | НДСПредъявленный.ИсправленныйСчетФактура,
+ | НДСПредъявленный.РеализацияЭкспорт,
+ | НДСПредъявленный.НаправлениеДеятельности,
+ | НДСПредъявленный.ОтнестиКПредыдущемуКварталу,
+ | НДСПредъявленный.ИсправляемыйПериод,
+ | НДСПредъявленный.ДатаИсправленияРаспределенияНДС,
+ | ВЫБОР
+ | КОГДА ЕСТЬNULL(СчетаФактурыДокументы.ДатаЗаписиКнигиПокупок, ДАТАВРЕМЯ(1, 1, 1)) >= &НачалоПериода
+ | ТОГДА СчетаФактурыДокументы.ДатаЗаписиКнигиПокупок
+ | ИНАЧЕ &КонецПериода
+ | КОНЕЦ
+ |
+ |ИМЕЮЩИЕ
+ | СУММА(НДСПредъявленный.СуммаБезНДС) < 0
+ | ИЛИ СУММА(НДСПредъявленный.НДС) < 0
+ |";
+
+ Запрос.УстановитьПараметр("НачалоПериода", ПараметрыРасчета.НачалоПериода);
+ Запрос.УстановитьПараметр("КонецПериода", ПараметрыРасчета.КонецПериода);
+ Запрос.УстановитьПараметр("МассивОрганизаций", ПараметрыРасчета.МассивОрганизаций);
+ Запрос.МенеджерВременныхТаблиц = ПараметрыРасчета.МенеджерВременныхТаблиц;
+ Запрос.Выполнить();
+
+КонецПроцедуры
+
// См. УчетНДСУПСлужебный.ПолучитьПовторноПринятыйКВычетуНДС
Процедура ПолучитьПовторноПринятыйКВычетуНДС(ПараметрыРасчета) Экспорт
diff --git a/src/CommonModules/УчетНДСУПСлужебный/Ext/Module.bsl b/src/CommonModules/УчетНДСУПСлужебный/Ext/Module.bsl
index 0ff9a1060..8c33fda0c 100644
--- a/src/CommonModules/УчетНДСУПСлужебный/Ext/Module.bsl
+++ b/src/CommonModules/УчетНДСУПСлужебный/Ext/Module.bsl
@@ -1901,16 +1901,16 @@
ИменаТаблицЗаписейНДСПредъявленный.Добавить(РассчитатьЗаписиНДСПредъявленныйИзменениеВидаДеятельности(ПараметрыРасчета));
ИменаТаблицЗаписейНДСПредъявленный.Добавить(РассчитатьЗаписиНДСПредъявленныйИзменениеНаправленияДеятельности(ПараметрыРасчета));
- ИменаТаблицЗаписейНДСПредъявленный.Добавить(РассчитатьЗаписиНДСПредъявленныйВосстановлениеПодВидДеятельности(ПараметрыРасчета));
ПолучитьОстаткиНДСПредъявленныйНаКонецПериода(ПараметрыРасчета);
+ ИменаТаблицЗаписейНДСПредъявленный.Добавить(РассчитатьЗаписиНДСПредъявленныйВосстановлениеПодВидДеятельности(ПараметрыРасчета));
ПолучитьНалоговуюБазуРеализации0(ПараметрыРасчета);
ПолучитьБлокировкиНДС(ПараметрыРасчета);
ПолучитьПовторноПринятыйКВычетуНДС(ПараметрыРасчета);
- ИменаТаблицЗаписейНДСПредъявленный.Добавить(РассчитатьЗаписиНДСПредъявленныйПринятиеКВычету(ПараметрыРасчета));
ИменаТаблицЗаписейНДСПредъявленный.Добавить(РассчитатьЗаписиНДСПредъявленныйВосстановлениеПоКСФ(ПараметрыРасчета));
+ ИменаТаблицЗаписейНДСПредъявленный.Добавить(РассчитатьЗаписиНДСПредъявленныйПринятиеКВычету(ПараметрыРасчета));
ИменаТаблицЗаписейНДСПредъявленный.Добавить(РассчитатьЗаписиНДСПредъявленныйПогрешностиОкругления(ПараметрыРасчета));
@@ -2101,6 +2101,62 @@
КонецЕсли;
+ //++ Локализация
+
+ // Для организаций с льготным налогообложением вычет не предоставляется.
+ Запрос.МенеджерВременныхТаблиц = МенеджерВременныхТаблиц;
+ Запрос.УстановитьПараметр("НачалоПериода", ПараметрыРасчета.НачалоПериода);
+ Запрос.УстановитьПараметр("КонецПериода", ПараметрыРасчета.КонецПериода);
+ Запрос.Текст =
+ "ВЫБРАТЬ
+ | КешРазрезыВычетаНДС.Организация КАК Организация,
+ | КешРазрезыВычетаНДС.СчетФактура КАК СчетФактура,
+ | КешРазрезыВычетаНДС.ВидДеятельностиНДС КАК ВидДеятельностиНДС,
+ | КешРазрезыВычетаНДС.ВидЦенности КАК ВидЦенности,
+ | КешРазрезыВычетаНДС.РеализацияЭкспорт КАК РеализацияЭкспорт,
+ | КешРазрезыВычетаНДС.ИсправленныйСчетФактура КАК ИсправленныйСчетФактура,
+ | КешРазрезыВычетаНДС.Событие КАК Событие,
+ | КешРазрезыВычетаНДС.Период КАК Период,
+ | КешРазрезыВычетаНДС.Регистратор КАК Регистратор
+ |ПОМЕСТИТЬ КешРазрезыВычетаНДС
+ |ИЗ
+ | РазрезыВычетаНДС КАК КешРазрезыВычетаНДС
+ | ЛЕВОЕ СОЕДИНЕНИЕ ВТНастройкиУчетаНДСПриУСН КАК НастройкиУчетаНДСПриУСН
+ | ПО КешРазрезыВычетаНДС.Организация = НастройкиУчетаНДСПриУСН.Организация
+ | И (КешРазрезыВычетаНДС.Событие = ЗНАЧЕНИЕ(Перечисление.СобытияНДСПредъявленный.НДСПринятКВычету))
+ | И НастройкиУчетаНДСПриУСН.Период МЕЖДУ &НачалоПериода И &КонецПериода
+ | И (НастройкиУчетаНДСПриУСН.ОсновноеНалогообложение = ЗНАЧЕНИЕ(Перечисление.ТипыНалогообложенияНДС.ЛьготноеНалогообложениеНДСНаУСН))
+ |ГДЕ
+ | НастройкиУчетаНДСПриУСН.Организация ЕСТЬ NULL
+ |;
+ |
+ |////////////////////////////////////////////////////////////////////////////////
+ |УНИЧТОЖИТЬ РазрезыВычетаНДС
+ |;
+ |
+ |////////////////////////////////////////////////////////////////////////////////
+ |ВЫБРАТЬ
+ | КешРазрезыВычетаНДС.Организация КАК Организация,
+ | КешРазрезыВычетаНДС.Событие КАК Событие,
+ | КешРазрезыВычетаНДС.Период КАК Период,
+ | КешРазрезыВычетаНДС.СчетФактура КАК СчетФактура,
+ | КешРазрезыВычетаНДС.ВидДеятельностиНДС КАК ВидДеятельностиНДС,
+ | КешРазрезыВычетаНДС.ВидЦенности КАК ВидЦенности,
+ | КешРазрезыВычетаНДС.РеализацияЭкспорт КАК РеализацияЭкспорт,
+ | КешРазрезыВычетаНДС.ИсправленныйСчетФактура КАК ИсправленныйСчетФактура,
+ | КешРазрезыВычетаНДС.Регистратор КАК Регистратор
+ |ПОМЕСТИТЬ РазрезыВычетаНДС
+ |ИЗ
+ | КешРазрезыВычетаНДС КАК КешРазрезыВычетаНДС
+ |;
+ |
+ |////////////////////////////////////////////////////////////////////////////////
+ |УНИЧТОЖИТЬ КешРазрезыВычетаНДС";
+
+ Запрос.Выполнить();
+
+ //-- Локализация
+
КонецПроцедуры
Процедура ПолучитьСчетаФактурыДокументы(ПараметрыРасчета)
@@ -3504,523 +3560,50 @@
Функция РассчитатьЗаписиНДСПредъявленныйВосстановлениеПодВидДеятельности(ПараметрыРасчета)
- Запрос = Новый Запрос;
- Запрос.Текст =
- "ВЫБРАТЬ
- | ДД.Приоритет КАК Приоритет,
- | ДД.ВидДвижения КАК ВидДвижения,
- | ДД.Период КАК Период,
- | ДД.Регистратор КАК Регистратор,
- | ДД.Организация КАК Организация,
- | ДД.СчетФактура КАК СчетФактура,
- | ДД.Поставщик КАК Поставщик,
- | ДД.ВидЦенности КАК ВидЦенности,
- | ДД.СтавкаНДС КАК СтавкаНДС,
- | ДД.ВидДеятельностиНДС КАК ВидДеятельностиНДС,
- | ДД.КорВидДеятельностиНДС КАК КорВидДеятельностиНДС,
- | ДД.ИсправленныйСчетФактура КАК ИсправленныйСчетФактура,
- | ДД.РеализацияЭкспорт КАК РеализацияЭкспорт,
- | ДД.НаправлениеДеятельности КАК НаправлениеДеятельности,
- | МАКСИМУМ(ДД.ОтнестиКПредыдущемуКварталу) КАК ОтнестиКПредыдущемуКварталу,
- | МАКСИМУМ(ДД.ИсправляемыйПериод) КАК ИсправляемыйПериод,
- | МАКСИМУМ(ДД.ДатаИсправленияРаспределенияНДС) КАК ДатаИсправленияРаспределенияНДС,
- | СУММА(ДД.СуммаБезНДС) КАК СуммаБезНДС,
- | СУММА(ДД.НДС) КАК НДС,
- | СУММА(ДД.НДСУпр) КАК НДСУпр
- |ПОМЕСТИТЬ НДСПредъявленныйИзменениеВидаДеятельностиДляВосстановленияПодВидДеятельности
- |ИЗ
- | НДСПредъявленныйИзменениеВидаДеятельности КАК ДД
- |
- |СГРУППИРОВАТЬ ПО
- | ДД.Приоритет,
- | ДД.ВидДвижения,
- | ДД.Период,
- | ДД.Регистратор,
- | ДД.Организация,
- | ДД.СчетФактура,
- | ДД.Поставщик,
- | ДД.ВидЦенности,
- | ДД.СтавкаНДС,
- | ДД.ВидДеятельностиНДС,
- | ДД.КорВидДеятельностиНДС,
- | ДД.ИсправленныйСчетФактура,
- | ДД.РеализацияЭкспорт,
- | ДД.НаправлениеДеятельности
- |
- |ИНДЕКСИРОВАТЬ ПО
- | Организация,
- | СчетФактура
- |;
- |ВЫБРАТЬ
- | 0 КАК Приоритет,
- | ДД.Период КАК Период,
- | ДД.Регистратор КАК Регистратор,
- | ДД.Организация КАК Организация,
- | ДД.СчетФактура КАК СчетФактура,
- | ДД.Поставщик КАК Поставщик,
- | ДД.ВидЦенности КАК ВидЦенности,
- | ДД.СтавкаНДС КАК СтавкаНДС,
- | ДД.ВидДеятельностиНДС КАК ВидДеятельностиНДС,
- | ДД.ИсправленныйСчетФактура КАК ИсправленныйСчетФактура,
- | ДД.РеализацияЭкспорт КАК РеализацияЭкспорт,
- | ДД.НаправлениеДеятельности КАК НаправлениеДеятельности,
- | ДД.СуммаБезНДС КАК СуммаБезНДС,
- | ДД.НДС КАК НДС,
- | ДД.НДСУпр КАК НДСУпр
- |ПОМЕСТИТЬ НДСПредъявленныйДвиженияЗаПериод
- |ИЗ
- | НДСПредъявленныйОнлайнДвижения КАК ДД
- |
- |ОБЪЕДИНИТЬ ВСЕ
- |
- |ВЫБРАТЬ
- | ДД.Приоритет КАК Приоритет,
- | ДД.Период КАК Период,
- | ДД.Регистратор КАК Регистратор,
- | ДД.Организация КАК Организация,
- | ДД.СчетФактура КАК СчетФактура,
- | ДД.Поставщик КАК Поставщик,
- | ДД.ВидЦенности КАК ВидЦенности,
- | ДД.СтавкаНДС КАК СтавкаНДС,
- | ДД.ВидДеятельностиНДС КАК ВидДеятельностиНДС,
- | ДД.ИсправленныйСчетФактура КАК ИсправленныйСчетФактура,
- | ДД.РеализацияЭкспорт КАК РеализацияЭкспорт,
- | ДД.НаправлениеДеятельности КАК НаправлениеДеятельности,
- | ВЫБОР
- | КОГДА ДД.ВидДвижения = ЗНАЧЕНИЕ(ВидДвиженияНакопления.Приход)
- | ТОГДА ДД.СуммаБезНДС
- | ИНАЧЕ -ДД.СуммаБезНДС
- | КОНЕЦ КАК СуммаБезНДС,
- | ВЫБОР
- | КОГДА ДД.ВидДвижения = ЗНАЧЕНИЕ(ВидДвиженияНакопления.Приход)
- | ТОГДА ДД.НДС
- | ИНАЧЕ -ДД.НДС
- | КОНЕЦ КАК НДС,
- | ВЫБОР
- | КОГДА ДД.ВидДвижения = ЗНАЧЕНИЕ(ВидДвиженияНакопления.Приход)
- | ТОГДА ДД.НДСУпр
- | ИНАЧЕ -ДД.НДСУпр
- | КОНЕЦ КАК НДСУпр
- |ИЗ
- | НДСПредъявленныйИзменениеВидаДеятельности КАК ДД
- |
- |ОБЪЕДИНИТЬ ВСЕ
- |
- |ВЫБРАТЬ
- | ДД.Приоритет КАК Приоритет,
- | ДД.Период КАК Период,
- | ДД.Регистратор КАК Регистратор,
- | ДД.Организация КАК Организация,
- | ДД.СчетФактура КАК СчетФактура,
- | ДД.Поставщик КАК Поставщик,
- | ДД.ВидЦенности КАК ВидЦенности,
- | ДД.СтавкаНДС КАК СтавкаНДС,
- | ДД.ВидДеятельностиНДС КАК ВидДеятельностиНДС,
- | ДД.ИсправленныйСчетФактура КАК ИсправленныйСчетФактура,
- | ДД.РеализацияЭкспорт КАК РеализацияЭкспорт,
- | ДД.НаправлениеДеятельности КАК НаправлениеДеятельности,
- | ВЫБОР
- | КОГДА ДД.ВидДвижения = ЗНАЧЕНИЕ(ВидДвиженияНакопления.Приход)
- | ТОГДА ДД.СуммаБезНДС
- | ИНАЧЕ -ДД.СуммаБезНДС
- | КОНЕЦ КАК СуммаБезНДС,
- | ВЫБОР
- | КОГДА ДД.ВидДвижения = ЗНАЧЕНИЕ(ВидДвиженияНакопления.Приход)
- | ТОГДА ДД.НДС
- | ИНАЧЕ -ДД.НДС
- | КОНЕЦ КАК НДС,
- | ВЫБОР
- | КОГДА ДД.ВидДвижения = ЗНАЧЕНИЕ(ВидДвиженияНакопления.Приход)
- | ТОГДА ДД.НДСУпр
- | ИНАЧЕ -ДД.НДСУпр
- | КОНЕЦ КАК НДСУпр
- |ИЗ
- | НДСПредъявленныйИзменениеНаправленияДеятельности КАК ДД
- |
- |ОБЪЕДИНИТЬ ВСЕ
- |
- |ВЫБРАТЬ
- | ДД.Приоритет КАК Приоритет,
- | ДД.Период КАК Период,
- | ДД.Регистратор КАК Регистратор,
- | ДД.Организация КАК Организация,
- | ДД.СчетФактура КАК СчетФактура,
- | ДД.Поставщик КАК Поставщик,
- | ДД.ВидЦенности КАК ВидЦенности,
- | ДД.СтавкаНДС КАК СтавкаНДС,
- | ДД.ВидДеятельностиНДС КАК ВидДеятельностиНДС,
- | ДД.ИсправленныйСчетФактура КАК ИсправленныйСчетФактура,
- | ДД.РеализацияЭкспорт КАК РеализацияЭкспорт,
- | ДД.НаправлениеДеятельности КАК НаправлениеДеятельности,
- | ВЫБОР
- | КОГДА ДД.ВидДвижения = ЗНАЧЕНИЕ(ВидДвиженияНакопления.Приход)
- | ТОГДА ДД.СуммаБезНДС
- | ИНАЧЕ -ДД.СуммаБезНДС
- | КОНЕЦ КАК СуммаБезНДС,
- | ВЫБОР
- | КОГДА ДД.ВидДвижения = ЗНАЧЕНИЕ(ВидДвиженияНакопления.Приход)
- | ТОГДА ДД.НДС
- | ИНАЧЕ -ДД.НДС
- | КОНЕЦ КАК НДС,
- | ВЫБОР
- | КОГДА ДД.ВидДвижения = ЗНАЧЕНИЕ(ВидДвиженияНакопления.Приход)
- | ТОГДА ДД.НДСУпр
- | ИНАЧЕ -ДД.НДСУпр
- | КОНЕЦ КАК НДСУпр
- |ИЗ
- | НДСПредъявленныйПоИСФ КАК ДД
- |
- |ОБЪЕДИНИТЬ ВСЕ
- |
- |ВЫБРАТЬ
- | ДД.Приоритет КАК Приоритет,
- | ДД.Период КАК Период,
- | ДД.Регистратор КАК Регистратор,
- | ДД.Организация КАК Организация,
- | ДД.СчетФактура КАК СчетФактура,
- | ДД.Поставщик КАК Поставщик,
- | ДД.ВидЦенности КАК ВидЦенности,
- | ДД.СтавкаНДС КАК СтавкаНДС,
- | ДД.ВидДеятельностиНДС КАК ВидДеятельностиНДС,
- | ДД.ИсправленныйСчетФактура КАК ИсправленныйСчетФактура,
- | ДД.РеализацияЭкспорт КАК РеализацияЭкспорт,
- | ДД.НаправлениеДеятельности КАК НаправлениеДеятельности,
- | ВЫБОР
- | КОГДА ДД.ВидДвижения = ЗНАЧЕНИЕ(ВидДвиженияНакопления.Приход)
- | ТОГДА ДД.СуммаБезНДС
- | ИНАЧЕ -ДД.СуммаБезНДС
- | КОНЕЦ КАК СуммаБезНДС,
- | ВЫБОР
- | КОГДА ДД.ВидДвижения = ЗНАЧЕНИЕ(ВидДвиженияНакопления.Приход)
- | ТОГДА ДД.НДС
- | ИНАЧЕ -ДД.НДС
- | КОНЕЦ КАК НДС,
- | ВЫБОР
- | КОГДА ДД.ВидДвижения = ЗНАЧЕНИЕ(ВидДвиженияНакопления.Приход)
- | ТОГДА ДД.НДСУпр
- | ИНАЧЕ -ДД.НДСУпр
- | КОНЕЦ КАК НДСУпр
- |ИЗ
- | НДСПредъявленныйСторно КАК ДД
- |
- |ОБЪЕДИНИТЬ ВСЕ
- |
- |ВЫБРАТЬ
- | 2 КАК Приоритет,
- | &КонецПериода КАК Период,
- | НЕОПРЕДЕЛЕНО КАК Регистратор,
- | ДД.Организация КАК Организация,
- | ДД.СчетФактура КАК СчетФактура,
- | ДД.Поставщик КАК Поставщик,
- | ДД.ВидЦенности КАК ВидЦенности,
- | ДД.СтавкаНДС КАК СтавкаНДС,
- | ДД.ВидДеятельностиНДС КАК ВидДеятельностиНДС,
- | ДД.ИсправленныйСчетФактура КАК ИсправленныйСчетФактура,
- | ДД.РеализацияЭкспорт КАК РеализацияЭкспорт,
- | ДД.НаправлениеДеятельности КАК НаправлениеДеятельности,
- | ДД.СуммаБезНДС КАК СуммаБезНДС,
- | ДД.НДС КАК НДС,
- | ДД.НДСУпр КАК НДСУпр
- |ИЗ
- | НДСПредъявленныйОстатокНаНачалоСНаправлениями КАК ДД
- |
- | ЛЕВОЕ СОЕДИНЕНИЕ
- | УчетныеПолитикиПоПериодичностиРасчетаНДС КАК УчетныеПолитикиПоПериодичностиРасчетаНДС
- | ПО
- | ДД.Организация = УчетныеПолитикиПоПериодичностиРасчетаНДС.Организация
- |ГДЕ
- | УчетныеПолитикиПоПериодичностиРасчетаНДС.ПериодичностьФормированияВычетовИВосстановленийНДС = ЗНАЧЕНИЕ(Перечисление.Периодичность.Квартал)
- | И ДД.НДС < 0
- |
- |ИНДЕКСИРОВАТЬ ПО
- | Организация,
- | СчетФактура
- |;
- |
- |ВЫБРАТЬ
- | 1 КАК Приоритет,
- | ДД.Период КАК Период,
- | ДД.Регистратор КАК Регистратор,
- | ЗНАЧЕНИЕ(ВидДвиженияНакопления.Приход) КАК ВидДвижения,
- | ДД.Организация КАК Организация,
- | ДД.СчетФактура КАК СчетФактура,
- | ДД.Поставщик КАК Поставщик,
- | ДД.ВидЦенности КАК ВидЦенности,
- | ДД.СтавкаНДС КАК СтавкаНДС,
- | ДД.ВидДеятельностиНДС КАК ВидДеятельностиНДС,
- | ДД.ИсправленныйСчетФактура КАК ИсправленныйСчетФактура,
- | ДД.РеализацияЭкспорт КАК РеализацияЭкспорт,
- | ДД.НаправлениеДеятельности КАК НаправлениеДеятельности,
- | МАКСИМУМ(ДД.ОтнестиКПредыдущемуКварталу) КАК ОтнестиКПредыдущемуКварталу,
- | МАКСИМУМ(ДД.ИсправляемыйПериод) КАК ИсправляемыйПериод,
- | МАКСИМУМ(ДД.ДатаИсправленияРаспределенияНДС) КАК ДатаИсправленияРаспределенияНДС,
- | ВЫБОР КОГДА (ДД.СуммаБезНДС)
- | - ВЫБОР КОГДА ЕСТЬNULL(НДСПредъявленныйОстатокНаНачало.СуммаБезНДС, 0) + СУММА(ЕСТЬNULL(НДСПредъявленныйДвиженияЗаПериод.СуммаБезНДС, 0)) > 0
- | ТОГДА ЕСТЬNULL(НДСПредъявленныйОстатокНаНачало.СуммаБезНДС, 0) + СУММА(ЕСТЬNULL(НДСПредъявленныйДвиженияЗаПериод.СуммаБезНДС, 0))
- | ИНАЧЕ 0
- | КОНЕЦ < 0 ТОГДА 0
- | ИНАЧЕ (ДД.СуммаБезНДС)
- | - ВЫБОР КОГДА ЕСТЬNULL(НДСПредъявленныйОстатокНаНачало.СуммаБезНДС, 0) + СУММА(ЕСТЬNULL(НДСПредъявленныйДвиженияЗаПериод.СуммаБезНДС, 0)) > 0
- | ТОГДА ЕСТЬNULL(НДСПредъявленныйОстатокНаНачало.СуммаБезНДС, 0) + СУММА(ЕСТЬNULL(НДСПредъявленныйДвиженияЗаПериод.СуммаБезНДС, 0))
- | ИНАЧЕ 0
- | КОНЕЦ
- | КОНЕЦ КАК СуммаБезНДС,
- | ВЫБОР КОГДА (ДД.НДС)
- | - ВЫБОР КОГДА ЕСТЬNULL(НДСПредъявленныйОстатокНаНачало.НДС, 0) + СУММА(ЕСТЬNULL(НДСПредъявленныйДвиженияЗаПериод.НДС, 0)) > 0
- | ТОГДА ЕСТЬNULL(НДСПредъявленныйОстатокНаНачало.НДС, 0) + СУММА(ЕСТЬNULL(НДСПредъявленныйДвиженияЗаПериод.НДС, 0))
- | ИНАЧЕ 0
- | КОНЕЦ < 0 ТОГДА 0
- | ИНАЧЕ (ДД.НДС)
- | - ВЫБОР КОГДА ЕСТЬNULL(НДСПредъявленныйОстатокНаНачало.НДС, 0) + СУММА(ЕСТЬNULL(НДСПредъявленныйДвиженияЗаПериод.НДС, 0)) > 0
- | ТОГДА ЕСТЬNULL(НДСПредъявленныйОстатокНаНачало.НДС, 0) + СУММА(ЕСТЬNULL(НДСПредъявленныйДвиженияЗаПериод.НДС, 0))
- | ИНАЧЕ 0
- | КОНЕЦ
- | КОНЕЦ КАК НДС,
- | ВЫБОР КОГДА (ДД.НДСУпр)
- | - ВЫБОР КОГДА ЕСТЬNULL(НДСПредъявленныйОстатокНаНачало.НДСУпр, 0) + СУММА(ЕСТЬNULL(НДСПредъявленныйДвиженияЗаПериод.НДСУпр, 0)) > 0
- | ТОГДА ЕСТЬNULL(НДСПредъявленныйОстатокНаНачало.НДСУпр, 0) + СУММА(ЕСТЬNULL(НДСПредъявленныйДвиженияЗаПериод.НДСУпр, 0))
- | ИНАЧЕ 0
- | КОНЕЦ < 0 ТОГДА 0
- | ИНАЧЕ (ДД.НДСУпр)
- | - ВЫБОР КОГДА ЕСТЬNULL(НДСПредъявленныйОстатокНаНачало.НДСУпр, 0) + СУММА(ЕСТЬNULL(НДСПредъявленныйДвиженияЗаПериод.НДСУпр, 0)) > 0
- | ТОГДА ЕСТЬNULL(НДСПредъявленныйОстатокНаНачало.НДСУпр, 0) + СУММА(ЕСТЬNULL(НДСПредъявленныйДвиженияЗаПериод.НДСУпр, 0))
- | ИНАЧЕ 0
- | КОНЕЦ
- | КОНЕЦ КАК НДСУпр,
- | ЗНАЧЕНИЕ(Перечисление.СобытияНДСПредъявленный.ВосстановлениеНДСПодВидДеятельности) КАК Событие,
- | ЗНАЧЕНИЕ(Перечисление.ТипыНалогообложенияНДС.ПустаяСсылка) КАК КорВидДеятельностиНДС,
- | НЕОПРЕДЕЛЕНО КАК Подразделение,
- | НЕОПРЕДЕЛЕНО КАК КорНаправлениеДеятельности,
- | НЕОПРЕДЕЛЕНО КАК СтатьяРасходов,
- | НЕОПРЕДЕЛЕНО КАК АналитикаРасходов,
- | """" КАК ИдентификаторСтроки,
- | ИСТИНА КАК РегламентнаяОперация,
- | ЛОЖЬ КАК Сторно,
- | ЗНАЧЕНИЕ(Справочник.НастройкиХозяйственныхОпераций.ВосстановлениеНДС) КАК НастройкаХозяйственнойОперации
- |
- |ПОМЕСТИТЬ НДСПредъявленныйВосстановлениеПодВидДеятельности
- |ИЗ
- | НДСПредъявленныйИзменениеВидаДеятельностиДляВосстановленияПодВидДеятельности КАК ДД
- |
- | ЛЕВОЕ СОЕДИНЕНИЕ
- | НДСПредъявленныйОстатокНаНачало КАК НДСПредъявленныйОстатокНаНачало
- | ПО
- | ДД.Организация = НДСПредъявленныйОстатокНаНачало.Организация
- | И ДД.СчетФактура = НДСПредъявленныйОстатокНаНачало.СчетФактура
- | И ДД.Поставщик = НДСПредъявленныйОстатокНаНачало.Поставщик
- | И ДД.ВидЦенности = НДСПредъявленныйОстатокНаНачало.ВидЦенности
- | И ДД.СтавкаНДС = НДСПредъявленныйОстатокНаНачало.СтавкаНДС
- | И ДД.ВидДеятельностиНДС = НДСПредъявленныйОстатокНаНачало.ВидДеятельностиНДС
- | И ДД.ИсправленныйСчетФактура = НДСПредъявленныйОстатокНаНачало.ИсправленныйСчетФактура
- | И ДД.РеализацияЭкспорт = НДСПредъявленныйОстатокНаНачало.РеализацияЭкспорт
- | И НДСПредъявленныйОстатокНаНачало.НДС > 0
- |
- | ЛЕВОЕ СОЕДИНЕНИЕ
- | НДСПредъявленныйДвиженияЗаПериод КАК НДСПредъявленныйДвиженияЗаПериод
- | ПО
- | ДД.Организация = НДСПредъявленныйДвиженияЗаПериод.Организация
- | И ДД.СчетФактура = НДСПредъявленныйДвиженияЗаПериод.СчетФактура
- | И ДД.Поставщик = НДСПредъявленныйДвиженияЗаПериод.Поставщик
- | И ДД.ВидЦенности = НДСПредъявленныйДвиженияЗаПериод.ВидЦенности
- | И ДД.СтавкаНДС = НДСПредъявленныйДвиженияЗаПериод.СтавкаНДС
- | И ДД.ВидДеятельностиНДС = НДСПредъявленныйДвиженияЗаПериод.ВидДеятельностиНДС
- | И ДД.НаправлениеДеятельности = НДСПредъявленныйДвиженияЗаПериод.НаправлениеДеятельности
- | И ДД.ИсправленныйСчетФактура = НДСПредъявленныйДвиженияЗаПериод.ИсправленныйСчетФактура
- | И ДД.РеализацияЭкспорт = НДСПредъявленныйДвиженияЗаПериод.РеализацияЭкспорт
- | И (НДСПредъявленныйДвиженияЗаПериод.Приоритет = 0 // Онлайн движения
- | ИЛИ НДСПредъявленныйДвиженияЗаПериод.НДС > 0 // Приход
- | ИЛИ ДД.Период > НДСПредъявленныйДвиженияЗаПериод.Период // Более ранее движения
- | ИЛИ (ДД.Период = НДСПредъявленныйДвиженияЗаПериод.Период
- | И ДД.Регистратор > НДСПредъявленныйДвиженияЗаПериод.Регистратор)
- | ИЛИ (ДД.Период = НДСПредъявленныйДвиженияЗаПериод.Период
- | И ДД.Регистратор = НДСПредъявленныйДвиженияЗаПериод.Регистратор
- | И НДСПредъявленныйДвиженияЗаПериод.Приоритет < ДД.Приоритет))
- |
- | ЛЕВОЕ СОЕДИНЕНИЕ
- | СписанияНДСНаРасходы КАК СписанияНДСНаРасходы
- | ПО
- | ДД.Организация = СписанияНДСНаРасходы.Организация
- | И ДД.СчетФактура = СписанияНДСНаРасходы.СчетФактура
- |
- | ЛЕВОЕ СОЕДИНЕНИЕ
- | УчетныеПолитикиПоПериодичностиРасчетаНДС КАК УчетныеПолитикиПоПериодичностиРасчетаНДС
- | ПО
- | ДД.Организация = УчетныеПолитикиПоПериодичностиРасчетаНДС.Организация
- |
- |ГДЕ
- | (УчетныеПолитикиПоПериодичностиРасчетаНДС.ПериодичностьФормированияВычетовИВосстановленийНДС = ЗНАЧЕНИЕ(Перечисление.Периодичность.Месяц)
- | ИЛИ &КонецПериода = КОНЕЦПЕРИОДА(&КонецПериода, КВАРТАЛ))
- | И ДД.ВидДвижения = ЗНАЧЕНИЕ(ВидДвиженияНакопления.Расход)
- | И СписанияНДСНаРасходы.СчетФактура ЕСТЬ NULL
- |
- |СГРУППИРОВАТЬ ПО
- | ДД.Период,
- | ДД.Регистратор,
- | ДД.Организация,
- | ДД.СчетФактура,
- | ДД.Поставщик,
- | ДД.ВидЦенности,
- | ДД.СтавкаНДС,
- | ДД.ВидДеятельностиНДС,
- | ДД.КорВидДеятельностиНДС,
- | ДД.ИсправленныйСчетФактура,
- | ДД.РеализацияЭкспорт,
- | ДД.НаправлениеДеятельности,
- | ДД.СуммаБезНДС,
- | ДД.НДС,
- | ДД.НДСУпр,
- | НДСПредъявленныйОстатокНаНачало.СуммаБезНДС,
- | НДСПредъявленныйОстатокНаНачало.НДС,
- | НДСПредъявленныйОстатокНаНачало.НДСУпр
- |
- |ИМЕЮЩИЕ
- | ((ДД.НДС)
- | - ВЫБОР КОГДА ЕСТЬNULL(НДСПредъявленныйОстатокНаНачало.НДС, 0) + СУММА(ЕСТЬNULL(НДСПредъявленныйДвиженияЗаПериод.НДС, 0)) > 0
- | ТОГДА ЕСТЬNULL(НДСПредъявленныйОстатокНаНачало.НДС, 0) + СУММА(ЕСТЬNULL(НДСПредъявленныйДвиженияЗаПериод.НДС, 0))
- | ИНАЧЕ 0
- | КОНЕЦ) > 0
- | ИЛИ (ДД.СуммаБезНДС)
- | - ВЫБОР КОГДА ЕСТЬNULL(НДСПредъявленныйОстатокНаНачало.СуммаБезНДС, 0) + СУММА(ЕСТЬNULL(НДСПредъявленныйДвиженияЗаПериод.СуммаБезНДС, 0)) > 0
- | ТОГДА ЕСТЬNULL(НДСПредъявленныйОстатокНаНачало.СуммаБезНДС, 0) + СУММА(ЕСТЬNULL(НДСПредъявленныйДвиженияЗаПериод.СуммаБезНДС, 0))
- | ИНАЧЕ 0
- | КОНЕЦ > 0
- |
- |ОБЪЕДИНИТЬ ВСЕ
- |
- |ВЫБРАТЬ
- | 1 КАК Приоритет,
- | &КонецПериода КАК Период,
- | ЕСТЬNULL(ИсправленныеСчетаФактуры.Ссылка, ЕСТЬNULL(СчетаФактурыДокументы.Ссылка, ДД.СчетФактура)) КАК Регистратор,
- | ЗНАЧЕНИЕ(ВидДвиженияНакопления.Приход) КАК ВидДвижения,
- | ДД.Организация КАК Организация,
- | ДД.СчетФактура КАК СчетФактура,
- | ДД.Поставщик КАК Поставщик,
- | ДД.ВидЦенности КАК ВидЦенности,
- | ДД.СтавкаНДС КАК СтавкаНДС,
- | ДД.ВидДеятельностиНДС КАК ВидДеятельностиНДС,
- | ДД.ИсправленныйСчетФактура КАК ИсправленныйСчетФактура,
- | ДД.РеализацияЭкспорт КАК РеализацияЭкспорт,
- | ДД.НаправлениеДеятельности КАК НаправлениеДеятельности,
- | ЛОЖЬ КАК ОтнестиКПредыдущемуКварталу,
- | ДАТАВРЕМЯ(1,1,1) КАК ИсправляемыйПериод,
- | ДАТАВРЕМЯ(1,1,1) КАК ДатаИсправленияРаспределенияНДС,
- | (-ДД.СуммаБезНДС)
- | - ВЫБОР КОГДА СУММА(ЕСТЬNULL(НДСПредъявленныйДвиженияЗаПериод.СуммаБезНДС, 0)) > 0
- | ТОГДА СУММА(ЕСТЬNULL(НДСПредъявленныйДвиженияЗаПериод.СуммаБезНДС, 0))
- | ИНАЧЕ 0
- | КОНЕЦ КАК СуммаБезНДС,
- | (-ДД.НДС)
- | - ВЫБОР КОГДА СУММА(ЕСТЬNULL(НДСПредъявленныйДвиженияЗаПериод.НДС, 0)) > 0
- | ТОГДА СУММА(ЕСТЬNULL(НДСПредъявленныйДвиженияЗаПериод.НДС, 0))
- | ИНАЧЕ 0
- | КОНЕЦ КАК НДС,
- | (-ДД.НДСУпр)
- | - ВЫБОР КОГДА СУММА(ЕСТЬNULL(НДСПредъявленныйДвиженияЗаПериод.НДСУпр, 0)) > 0
- | ТОГДА СУММА(ЕСТЬNULL(НДСПредъявленныйДвиженияЗаПериод.НДСУпр, 0))
- | ИНАЧЕ 0
- | КОНЕЦ КАК НДСУпр,
- | ЗНАЧЕНИЕ(Перечисление.СобытияНДСПредъявленный.ВосстановлениеНДСПодВидДеятельности) КАК Событие,
- | ЗНАЧЕНИЕ(Перечисление.ТипыНалогообложенияНДС.ПустаяСсылка) КАК КорВидДеятельностиНДС,
- | НЕОПРЕДЕЛЕНО КАК Подразделение,
- | НЕОПРЕДЕЛЕНО КАК КорНаправлениеДеятельности,
- | НЕОПРЕДЕЛЕНО КАК СтатьяРасходов,
- | НЕОПРЕДЕЛЕНО КАК АналитикаРасходов,
- | """" КАК ИдентификаторСтроки,
- | ИСТИНА КАК РегламентнаяОперация,
- | ЛОЖЬ КАК Сторно,
- | ЗНАЧЕНИЕ(Справочник.НастройкиХозяйственныхОпераций.ВосстановлениеНДС) КАК НастройкаХозяйственнойОперации
- |
- |ИЗ
- | НДСПредъявленныйОстатокНаНачалоСНаправлениями КАК ДД
- |
- | ЛЕВОЕ СОЕДИНЕНИЕ
- | НДСПредъявленныйДвиженияЗаПериод КАК НДСПредъявленныйДвиженияЗаПериод
- | ПО
- | ДД.Организация = НДСПредъявленныйДвиженияЗаПериод.Организация
- | И ДД.СчетФактура = НДСПредъявленныйДвиженияЗаПериод.СчетФактура
- | И ДД.Поставщик = НДСПредъявленныйДвиженияЗаПериод.Поставщик
- | И ДД.ВидЦенности = НДСПредъявленныйДвиженияЗаПериод.ВидЦенности
- | И ДД.СтавкаНДС = НДСПредъявленныйДвиженияЗаПериод.СтавкаНДС
- | И ДД.ВидДеятельностиНДС = НДСПредъявленныйДвиженияЗаПериод.ВидДеятельностиНДС
- | И ДД.ИсправленныйСчетФактура = НДСПредъявленныйДвиженияЗаПериод.ИсправленныйСчетФактура
- | И ДД.РеализацияЭкспорт = НДСПредъявленныйДвиженияЗаПериод.РеализацияЭкспорт
- | И ДД.НаправлениеДеятельности = НДСПредъявленныйДвиженияЗаПериод.НаправлениеДеятельности
- | И (НДСПредъявленныйДвиженияЗаПериод.Приоритет = 0 // Онлайн движения
- | ИЛИ НДСПредъявленныйДвиженияЗаПериод.НДС > 0 // Приход
- | ИЛИ КОНЕЦПЕРИОДА(НДСПредъявленныйДвиженияЗаПериод.Период, КВАРТАЛ) = КОНЕЦПЕРИОДА(&КонецПериода, КВАРТАЛ)
- | И НДСПредъявленныйДвиженияЗаПериод.Приоритет = 2
- | И НДСПредъявленныйДвиженияЗаПериод.Регистратор <> НЕОПРЕДЕЛЕНО) // Изменения в последнем месяце квартала
- |
- | ЛЕВОЕ СОЕДИНЕНИЕ
- | СписанияНДСНаРасходы КАК СписанияНДСНаРасходы
- | ПО
- | ДД.Организация = СписанияНДСНаРасходы.Организация
- | И ДД.СчетФактура = СписанияНДСНаРасходы.СчетФактура
- |
- | ЛЕВОЕ СОЕДИНЕНИЕ
- | СчетаФактурыДокументы КАК СчетаФактурыДокументы
- | ПО
- | ДД.Организация = СчетаФактурыДокументы.Организация
- | И ДД.СчетФактура = СчетаФактурыДокументы.СчетФактура
- |
- | ЛЕВОЕ СОЕДИНЕНИЕ
- | КорректировочныеСчетаФактуры КАК КорректировочныеСчетаФактуры
- | ПО
- | ДД.Организация = КорректировочныеСчетаФактуры.Организация
- | И ДД.СчетФактура = КорректировочныеСчетаФактуры.СчетФактура
- |
- | ЛЕВОЕ СОЕДИНЕНИЕ
- | ИсправленныеСчетаФактуры КАК ИсправленныеСчетаФактуры
- | ПО
- | ДД.Организация = ИсправленныеСчетаФактуры.Организация
- | И ДД.СчетФактура = ИсправленныеСчетаФактуры.СчетФактура
- | И ДД.ИсправленныйСчетФактура = ИсправленныеСчетаФактуры.ИсправленныйСчетФактура
- |
- | ЛЕВОЕ СОЕДИНЕНИЕ
- | УчетныеПолитикиПоПериодичностиРасчетаНДС КАК УчетныеПолитикиПоПериодичностиРасчетаНДС
- | ПО
- | ДД.Организация = УчетныеПолитикиПоПериодичностиРасчетаНДС.Организация
- |
- |ГДЕ
- | УчетныеПолитикиПоПериодичностиРасчетаНДС.ПериодичностьФормированияВычетовИВосстановленийНДС = ЗНАЧЕНИЕ(Перечисление.Периодичность.Квартал)
- | И &КонецПериода = КОНЕЦПЕРИОДА(&КонецПериода, КВАРТАЛ)
- | И ДД.НДС < 0
- | И КорректировочныеСчетаФактуры.СчетФактура ЕСТЬ NULL
- | И СписанияНДСНаРасходы.СчетФактура ЕСТЬ NULL
- |
- |СГРУППИРОВАТЬ ПО
- | ЕСТЬNULL(ИсправленныеСчетаФактуры.Ссылка, ЕСТЬNULL(СчетаФактурыДокументы.Ссылка, ДД.СчетФактура)),
- | ДД.Организация,
- | ДД.СчетФактура,
- | ДД.Поставщик,
- | ДД.ВидЦенности,
- | ДД.СтавкаНДС,
- | ДД.ВидДеятельностиНДС,
- | ДД.ИсправленныйСчетФактура,
- | ДД.РеализацияЭкспорт,
- | ДД.НаправлениеДеятельности,
- | ДД.СуммаБезНДС,
- | ДД.НДС,
- | ДД.НДСУпр
- |
- |ИМЕЮЩИЕ
- | ((-ДД.НДС)
- | - ВЫБОР КОГДА СУММА(ЕСТЬNULL(НДСПредъявленныйДвиженияЗаПериод.НДС, 0)) > 0
- | ТОГДА СУММА(ЕСТЬNULL(НДСПредъявленныйДвиженияЗаПериод.НДС, 0))
- | ИНАЧЕ 0
- | КОНЕЦ) > 0
- | ИЛИ (-ДД.СуммаБезНДС)
- | - ВЫБОР КОГДА СУММА(ЕСТЬNULL(НДСПредъявленныйДвиженияЗаПериод.СуммаБезНДС, 0)) > 0
- | ТОГДА СУММА(ЕСТЬNULL(НДСПредъявленныйДвиженияЗаПериод.СуммаБезНДС, 0))
- | ИНАЧЕ 0
- | КОНЕЦ > 0
- |";
+ УчетНДСЛокализация.РассчитатьЗаписиНДСПредъявленныйВосстановлениеПодВидДеятельности(ПараметрыРасчета);
- Запрос.УстановитьПараметр("НачалоПериода", ПараметрыРасчета.НачалоПериода);
- Запрос.УстановитьПараметр("КонецПериода", ПараметрыРасчета.КонецПериода);
- Запрос.УстановитьПараметр("МассивОрганизаций", ПараметрыРасчета.МассивОрганизаций);
- Запрос.МенеджерВременныхТаблиц = ПараметрыРасчета.МенеджерВременныхТаблиц;
- Запрос.Выполнить();
+ МенеджерВременныхТаблиц = ПараметрыРасчета.МенеджерВременныхТаблиц;
+ Если МенеджерВременныхТаблиц.Таблицы.Найти("НДСПредъявленныйВосстановлениеПодВидДеятельности") = Неопределено Тогда
+
+ Запрос = Новый Запрос;
+ Запрос.Текст =
+ "ВЫБРАТЬ
+ | 1 КАК Приоритет,
+ | ДАТАВРЕМЯ(1, 1, 1) КАК Период,
+ | НЕОПРЕДЕЛЕНО КАК Регистратор,
+ | ЗНАЧЕНИЕ(ВидДвиженияНакопления.Приход) КАК ВидДвижения,
+ | ЗНАЧЕНИЕ(Справочник.Организации.ПустаяСсылка) КАК Организация,
+ | НЕОПРЕДЕЛЕНО КАК СчетФактура,
+ | ЗНАЧЕНИЕ(Справочник.Контрагенты.ПустаяСсылка) КАК Поставщик,
+ | ЗНАЧЕНИЕ(Перечисление.ТипыНалогообложенияНДС.ПустаяСсылка) КАК ВидЦенности,
+ | ЗНАЧЕНИЕ(Справочник.СтавкиНДС.ПустаяСсылка) КАК СтавкаНДС,
+ | ЗНАЧЕНИЕ(Перечисление.ВидыЦенностей.ПустаяСсылка) КАК ВидДеятельностиНДС,
+ | НЕОПРЕДЕЛЕНО КАК ИсправленныйСчетФактура,
+ | НЕОПРЕДЕЛЕНО КАК РеализацияЭкспорт,
+ | ЗНАЧЕНИЕ(Справочник.НаправленияДеятельности.ПустаяСсылка) КАК НаправлениеДеятельности,
+ | ЛОЖЬ КАК ОтнестиКПредыдущемуКварталу,
+ | ДАТАВРЕМЯ(1, 1, 1) КАК ИсправляемыйПериод,
+ | ДАТАВРЕМЯ(1, 1, 1) КАК ДатаИсправленияРаспределенияНДС,
+ | 0 КАК СуммаБезНДС,
+ | 0 КАК НДС,
+ | 0 КАК НДСУпр,
+ | ЗНАЧЕНИЕ(Перечисление.СобытияНДСПредъявленный.ПустаяСсылка) КАК Событие,
+ | ЗНАЧЕНИЕ(Перечисление.ТипыНалогообложенияНДС.ПустаяСсылка) КАК КорВидДеятельностиНДС,
+ | НЕОПРЕДЕЛЕНО КАК Подразделение,
+ | НЕОПРЕДЕЛЕНО КАК КорНаправлениеДеятельности,
+ | НЕОПРЕДЕЛЕНО КАК СтатьяРасходов,
+ | НЕОПРЕДЕЛЕНО КАК АналитикаРасходов,
+ | """" КАК ИдентификаторСтроки,
+ | ИСТИНА КАК РегламентнаяОперация,
+ | ЛОЖЬ КАК Сторно,
+ | ЗНАЧЕНИЕ(Справочник.НастройкиХозяйственныхОпераций.ПустаяСсылка) КАК НастройкаХозяйственнойОперации
+ |ПОМЕСТИТЬ НДСПредъявленныйВосстановлениеПодВидДеятельности
+ |ГДЕ
+ | ЛОЖЬ";
+ Запрос.МенеджерВременныхТаблиц = ПараметрыРасчета.МенеджерВременныхТаблиц;
+ Запрос.Выполнить();
+
+ КонецЕсли;
ОбщегоНазначенияУТ.ДобавитьИдентификаторыВоВременнуюТаблицу(
"НДСПредъявленныйВосстановлениеПодВидДеятельности", ПараметрыРасчета.МенеджерВременныхТаблиц, "ИдентификаторФинЗаписи");
@@ -4202,39 +3785,6 @@
| ДД.ИсправленныйСчетФактура,
| ДД.РеализацияЭкспорт,
| ДД.НаправлениеДеятельности,
- | ДД.ОтнестиКПредыдущемуКварталу,
- | ДД.ИсправляемыйПериод,
- | ДД.ДатаИсправленияРаспределенияНДС,
- | ВЫБОР
- | КОГДА ДД.ВидДвижения = ЗНАЧЕНИЕ(ВидДвиженияНакопления.Приход)
- | ТОГДА ДД.СуммаБезНДС
- | ИНАЧЕ -ДД.СуммаБезНДС
- | КОНЕЦ,
- | ВЫБОР
- | КОГДА ДД.ВидДвижения = ЗНАЧЕНИЕ(ВидДвиженияНакопления.Приход)
- | ТОГДА ДД.НДС
- | ИНАЧЕ -ДД.НДС
- | КОНЕЦ,
- | ВЫБОР
- | КОГДА ДД.ВидДвижения = ЗНАЧЕНИЕ(ВидДвиженияНакопления.Приход)
- | ТОГДА ДД.НДСУпр
- | ИНАЧЕ -ДД.НДСУпр
- | КОНЕЦ
- | ИЗ
- | НДСПредъявленныйВосстановлениеПодВидДеятельности КАК ДД
- |
- | ОБЪЕДИНИТЬ ВСЕ
- |
- | ВЫБРАТЬ
- | ДД.Организация,
- | ДД.СчетФактура,
- | ДД.Поставщик,
- | ДД.ВидЦенности,
- | ДД.СтавкаНДС,
- | ДД.ВидДеятельностиНДС,
- | ДД.ИсправленныйСчетФактура,
- | ДД.РеализацияЭкспорт,
- | ДД.НаправлениеДеятельности,
| ЛОЖЬ,
| ДАТАВРЕМЯ(1,1,1),
| ДАТАВРЕМЯ(1,1,1),
@@ -4397,157 +3947,92 @@
| СУММА(НДСПредъявленный.НДС) > 0;
|
|///////////////////////////////////////////////////////////
- |ВЫБРАТЬ
- | Партии.Период КАК Период,
- | Партии.Регистратор КАК Регистратор,
- | Партии.Организация КАК Организация,
- | Партии.СчетФактура КАК СчетФактура,
- | Партии.ДатаПоступления КАК ДатаПоступления,
- | Партии.Контрагент КАК Поставщик,
- | Партии.ВидЦенности КАК ВидЦенности,
- | Партии.ВидДеятельностиНДС КАК ВидДеятельностиНДС,
- | Партии.НаправлениеДеятельности КАК НаправлениеДеятельности,
- | Партии.РеализацияЭкспорт КАК РеализацияЭкспорт,
- | Партии.СтавкаНДС КАК СтавкаНДС,
- | СУММА(Партии.СуммаБезНДС) КАК СуммаБезНДС,
- | СУММА(Партии.НДС) КАК НДС,
- | СУММА(Партии.НДСУпр) КАК НДСУпр,
- | ЗНАЧЕНИЕ(Перечисление.СобытияНДСПредъявленный.НДСПринятКВычету) КАК Событие
- |ИЗ
- | (ВЫБРАТЬ
- | Партии.Период КАК Период,
- | Партии.Регистратор КАК Регистратор,
- | Партии.Организация КАК Организация,
- | Партии.СчетФактура КАК СчетФактура,
- | Партии.ДатаПоступления КАК ДатаПоступления,
- | Партии.Контрагент КАК Контрагент,
- | Партии.ВидЦенности КАК ВидЦенности,
- | Партии.КорВидДеятельностиНДС КАК ВидДеятельностиНДС,
- | Партии.НаправлениеДеятельности КАК НаправлениеДеятельности,
- | Партии.ДокументРеализации КАК РеализацияЭкспорт,
- | Партии.СтавкаНДС КАК СтавкаНДС,
- | Партии.СуммаБезНДС КАК СуммаБезНДС,
- | Партии.НДС КАК НДС,
- | Партии.НДСУпр КАК НДСУпр
- | ИЗ
- | Партии КАК Партии
- |
- | ЛЕВОЕ СОЕДИНЕНИЕ
- | РазрезыВычетаНДС КАК РазрезыВычетаНДС_НовыйВидДеятельности
- | ПО
- | Партии.Организация = РазрезыВычетаНДС_НовыйВидДеятельности.Организация
- | И Партии.СчетФактура = РазрезыВычетаНДС_НовыйВидДеятельности.СчетФактура
- | И Партии.КорВидДеятельностиНДС = РазрезыВычетаНДС_НовыйВидДеятельности.ВидДеятельностиНДС
- | И Партии.ВидЦенности = РазрезыВычетаНДС_НовыйВидДеятельности.ВидЦенности
- | И Партии.ДокументРеализации = РазрезыВычетаНДС_НовыйВидДеятельности.РеализацияЭкспорт
- |
- | ЛЕВОЕ СОЕДИНЕНИЕ
- | РазрезыВычетаНДС КАК РазрезыВычетаНДС_ТекущийВидДеятельности
- | ПО
- | Партии.Организация = РазрезыВычетаНДС_ТекущийВидДеятельности.Организация
- | И Партии.СчетФактура = РазрезыВычетаНДС_ТекущийВидДеятельности.СчетФактура
- | И Партии.ВидДеятельностиНДС = РазрезыВычетаНДС_ТекущийВидДеятельности.ВидДеятельностиНДС
- | И Партии.ВидЦенности = РазрезыВычетаНДС_ТекущийВидДеятельности.ВидЦенности
- | И РазрезыВычетаНДС_ТекущийВидДеятельности.РеализацияЭкспорт = НЕОПРЕДЕЛЕНО
- |
- | ГДЕ
- | НЕ РазрезыВычетаНДС_НовыйВидДеятельности.СчетФактура ЕСТЬ NULL
- | И РазрезыВычетаНДС_ТекущийВидДеятельности.СчетФактура ЕСТЬ NULL
- | И Партии.НДС <> 0
- |
- | ОБЪЕДИНИТЬ ВСЕ
- |
- | ВЫБРАТЬ
- | Партии.Период,
- | Партии.Регистратор,
- | Партии.Организация,
- | Партии.СчетФактура,
- | Партии.ДатаПоступления,
- | Партии.Контрагент,
- | Партии.ВидЦенности,
- | Партии.ВидДеятельностиНДС,
- | Партии.НаправлениеДеятельности,
- | Партии.ДокументРеализации,
- | Партии.СтавкаНДС,
- | -Партии.СуммаБезНДС,
- | -Партии.НДС,
- | -Партии.НДСУпр
- | ИЗ
- | Партии КАК Партии
- |
- | ЛЕВОЕ СОЕДИНЕНИЕ
- | РазрезыВычетаНДС КАК РазрезыВычетаНДС_НовыйВидДеятельности
- | ПО
- | Партии.Организация = РазрезыВычетаНДС_НовыйВидДеятельности.Организация
- | И Партии.СчетФактура = РазрезыВычетаНДС_НовыйВидДеятельности.СчетФактура
- | И Партии.КорВидДеятельностиНДС = РазрезыВычетаНДС_НовыйВидДеятельности.ВидДеятельностиНДС
- | И Партии.ВидЦенности = РазрезыВычетаНДС_НовыйВидДеятельности.ВидЦенности
- | И Партии.ДокументРеализации = РазрезыВычетаНДС_НовыйВидДеятельности.РеализацияЭкспорт
- |
- | ЛЕВОЕ СОЕДИНЕНИЕ
- | РазрезыВычетаНДС КАК РазрезыВычетаНДС_ТекущийВидДеятельности
- | ПО
- | Партии.Организация = РазрезыВычетаНДС_ТекущийВидДеятельности.Организация
- | И Партии.СчетФактура = РазрезыВычетаНДС_ТекущийВидДеятельности.СчетФактура
- | И Партии.ВидДеятельностиНДС = РазрезыВычетаНДС_ТекущийВидДеятельности.ВидДеятельностиНДС
- | И Партии.ВидЦенности = РазрезыВычетаНДС_ТекущийВидДеятельности.ВидЦенности
- | И РазрезыВычетаНДС_ТекущийВидДеятельности.РеализацияЭкспорт = НЕОПРЕДЕЛЕНО
- |
- | ГДЕ
- | НЕ РазрезыВычетаНДС_ТекущийВидДеятельности.СчетФактура ЕСТЬ NULL
- | И РазрезыВычетаНДС_НовыйВидДеятельности.СчетФактура ЕСТЬ NULL
- | И Партии.НДС <> 0
- |
- | ) КАК Партии
- |
- |СГРУППИРОВАТЬ ПО
- | Партии.Период,
- | Партии.Регистратор,
- | Партии.Организация,
- | Партии.СчетФактура,
- | Партии.ДатаПоступления,
- | Партии.Контрагент,
- | Партии.ВидЦенности,
- | Партии.СтавкаНДС,
- | Партии.ВидДеятельностиНДС,
- | Партии.НаправлениеДеятельности,
- | Партии.РеализацияЭкспорт
- |
- |ИМЕЮЩИЕ
- | СУММА(Партии.НДС) <> 0
- |
- |УПОРЯДОЧИТЬ ПО
- | НДС УБЫВ
- |;
|
|ВЫБРАТЬ
- | НДСПредъявленный.Организация КАК Организация,
- | НДСПредъявленный.СчетФактура КАК СчетФактура,
- | НДСПредъявленный.Поставщик КАК Поставщик,
- | НДСПредъявленный.ВидЦенности КАК ВидЦенности,
- | НДСПредъявленный.СтавкаНДС КАК СтавкаНДС,
- | НДСПредъявленный.ВидДеятельностиНДС КАК ВидДеятельностиНДС,
+ | НДСПредъявленный.Организация КАК Организация,
+ | НДСПредъявленный.СчетФактура КАК СчетФактура,
+ | НДСПредъявленный.Поставщик КАК Поставщик,
+ | НДСПредъявленный.ВидЦенности КАК ВидЦенности,
+ | НДСПредъявленный.СтавкаНДС КАК СтавкаНДС,
+ | НДСПредъявленный.ВидДеятельностиНДС КАК ВидДеятельностиНДС,
| НДСПредъявленный.ИсправленныйСчетФактура КАК ИсправленныйСчетФактура,
- | НДСПредъявленный.РеализацияЭкспорт КАК РеализацияЭкспорт,
+ | НДСПредъявленный.РеализацияЭкспорт КАК РеализацияЭкспорт,
| НДСПредъявленный.НаправлениеДеятельности КАК НаправлениеДеятельности,
- | НДСПредъявленный.ОтнестиКПредыдущемуКварталу КАК ОтнестиКПредыдущемуКварталу,
- | НДСПредъявленный.ИсправляемыйПериод КАК ИсправляемыйПериод,
- | НДСПредъявленный.ДатаИсправленияРаспределенияНДС КАК ДатаИсправленияРаспределенияНДС,
- | НДСПредъявленный.СуммаБезНДС КАК СуммаБезНДС,
- | НДСПредъявленный.НДС КАК НДС,
- | НДСПредъявленный.НДСУпр КАК НДСУпр,
- | РазрезыВычетаНДС.Регистратор КАК Регистратор,
+ | МАКСИМУМ(НДСПредъявленный.ОтнестиКПредыдущемуКварталу) КАК ОтнестиКПредыдущемуКварталу,
+ | МАКСИМУМ(НДСПредъявленный.ИсправляемыйПериод) КАК ИсправляемыйПериод,
+ | МАКСИМУМ(НДСПредъявленный.ДатаИсправленияРаспределенияНДС) КАК ДатаИсправленияРаспределенияНДС,
+ | СУММА(НДСПредъявленный.СуммаБезНДС) КАК СуммаБезНДС,
+ | СУММА(НДСПредъявленный.НДС) КАК НДС,
+ | СУММА(НДСПредъявленный.НДСУпр) КАК НДСУпр,
+ | РазрезыВычетаНДС.Регистратор КАК Регистратор,
| ВЫБОР
| КОГДА РазрезыВычетаНДС.Период < &НачалоПериода
| ТОГДА &КонецПериода
| ИНАЧЕ РазрезыВычетаНДС.Период
- | КОНЕЦ КАК Период,
- | РазрезыВычетаНДС.Событие КАК Событие
+ | КОНЕЦ КАК Период,
+ | РазрезыВычетаНДС.Событие КАК Событие
|ИЗ
- | НДСПредъявленныйОстаткиНаКонецПериода КАК НДСПредъявленный
- | ЛЕВОЕ СОЕДИНЕНИЕ КорректировочныеСчетаФактуры КАК КорректировочныеСчетаФактуры
- | ПО НДСПредъявленный.Организация = КорректировочныеСчетаФактуры.Организация
- | И НДСПредъявленный.СчетФактура = КорректировочныеСчетаФактуры.СчетФактура
+ | (ВЫБРАТЬ
+ | НДСПредъявленный.Организация КАК Организация,
+ | НДСПредъявленный.СчетФактура КАК СчетФактура,
+ | НДСПредъявленный.Поставщик КАК Поставщик,
+ | НДСПредъявленный.ВидЦенности КАК ВидЦенности,
+ | НДСПредъявленный.СтавкаНДС КАК СтавкаНДС,
+ | НДСПредъявленный.ВидДеятельностиНДС КАК ВидДеятельностиНДС,
+ | НДСПредъявленный.ИсправленныйСчетФактура КАК ИсправленныйСчетФактура,
+ | НДСПредъявленный.РеализацияЭкспорт КАК РеализацияЭкспорт,
+ | НДСПредъявленный.НаправлениеДеятельности КАК НаправлениеДеятельности,
+ | НДСПредъявленный.ОтнестиКПредыдущемуКварталу КАК ОтнестиКПредыдущемуКварталу,
+ | НДСПредъявленный.ИсправляемыйПериод КАК ИсправляемыйПериод,
+ | НДСПредъявленный.ДатаИсправленияРаспределенияНДС КАК ДатаИсправленияРаспределенияНДС,
+ | НДСПредъявленный.СуммаБезНДС КАК СуммаБезНДС,
+ | НДСПредъявленный.НДС КАК НДС,
+ | НДСПредъявленный.НДСУпр КАК НДСУпр
+ | ИЗ
+ | НДСПредъявленныйОстаткиНаКонецПериода КАК НДСПредъявленный
+ |
+ | ОБЪЕДИНИТЬ ВСЕ
+ |
+ | ВЫБРАТЬ
+ | НДСПредъявленный.Организация,
+ | НДСПредъявленный.СчетФактура,
+ | НДСПредъявленный.Поставщик,
+ | НДСПредъявленный.ВидЦенности,
+ | НДСПредъявленный.СтавкаНДС,
+ | НДСПредъявленный.ВидДеятельностиНДС,
+ | НДСПредъявленный.ИсправленныйСчетФактура,
+ | НДСПредъявленный.РеализацияЭкспорт,
+ | НДСПредъявленный.НаправлениеДеятельности,
+ | НДСПредъявленный.ОтнестиКПредыдущемуКварталу,
+ | НДСПредъявленный.ИсправляемыйПериод,
+ | НДСПредъявленный.ДатаИсправленияРаспределенияНДС,
+ | НДСПредъявленный.СуммаБезНДС,
+ | НДСПредъявленный.НДС,
+ | НДСПредъявленный.НДСУпр
+ | ИЗ
+ | НДСПредъявленныйВосстановлениеПодВидДеятельности КАК НДСПредъявленный
+ |
+ | ОБЪЕДИНИТЬ ВСЕ
+ |
+ | ВЫБРАТЬ
+ | НДСПредъявленный.Организация,
+ | НДСПредъявленный.СчетФактура,
+ | НДСПредъявленный.Поставщик,
+ | НДСПредъявленный.ВидЦенности,
+ | НДСПредъявленный.СтавкаНДС,
+ | НДСПредъявленный.ВидДеятельностиНДС,
+ | НДСПредъявленный.ИсправленныйСчетФактура,
+ | НДСПредъявленный.РеализацияЭкспорт,
+ | НДСПредъявленный.НаправлениеДеятельности,
+ | ЛОЖЬ,
+ | ДАТАВРЕМЯ(1,1,1) КАК ИсправляемыйПериод,
+ | ДАТАВРЕМЯ(1,1,1) КАК ДатаИсправленияРаспределенияНДС,
+ | НДСПредъявленный.СуммаБезНДС,
+ | НДСПредъявленный.НДС,
+ | НДСПредъявленный.НДСУпр
+ | ИЗ
+ | НДСПредъявленныйВосстановлениеПоКСФ КАК НДСПредъявленный) КАК НДСПредъявленный
+ |
| ВНУТРЕННЕЕ СОЕДИНЕНИЕ РазрезыВычетаНДС КАК РазрезыВычетаНДС
| ПО НДСПредъявленный.Организация = РазрезыВычетаНДС.Организация
| И НДСПредъявленный.СчетФактура = РазрезыВычетаНДС.СчетФактура
@@ -4555,12 +4040,28 @@
| И НДСПредъявленный.ВидЦенности = РазрезыВычетаНДС.ВидЦенности
| И НДСПредъявленный.РеализацияЭкспорт = РазрезыВычетаНДС.РеализацияЭкспорт
| И НДСПредъявленный.ИсправленныйСчетФактура = РазрезыВычетаНДС.ИсправленныйСчетФактура
- |ГДЕ
+ |
+ |СГРУППИРОВАТЬ ПО
+ | НДСПредъявленный.Организация,
+ | НДСПредъявленный.СчетФактура,
+ | НДСПредъявленный.Поставщик,
+ | НДСПредъявленный.ВидЦенности,
+ | НДСПредъявленный.СтавкаНДС,
+ | НДСПредъявленный.ВидДеятельностиНДС,
+ | НДСПредъявленный.ИсправленныйСчетФактура,
+ | НДСПредъявленный.РеализацияЭкспорт,
+ | НДСПредъявленный.НаправлениеДеятельности,
+ | РазрезыВычетаНДС.Регистратор,
+ | РазрезыВычетаНДС.Событие,
| ВЫБОР
- | КОГДА НЕ КорректировочныеСчетаФактуры.СчетФактура ЕСТЬ NULL
- | ТОГДА НДСПредъявленный.НДС > 0
- | ИНАЧЕ ИСТИНА
- | КОНЕЦ
+ | КОГДА РазрезыВычетаНДС.Период < &НачалоПериода
+ | ТОГДА &КонецПериода
+ | ИНАЧЕ РазрезыВычетаНДС.Период
+ | КОНЕЦ
+ |
+ |ИМЕЮЩИЕ
+ | СУММА(НДСПредъявленный.НДС) <> 0 ИЛИ
+ | СУММА(НДСПредъявленный.СуммаБезНДС) <> 0
|
|УПОРЯДОЧИТЬ ПО
| НДС УБЫВ
@@ -4609,10 +4110,8 @@
БлокировкиНДСРеализацияЭкспорт = РезультатЗапроса[1].Выгрузить();
ВосстановленныйНДС = РезультатЗапроса[2].Выгрузить();
ВосстановленныйНДС.Индексы.Добавить("Организация, СчетФактура, Поставщик, ВидЦенности, СтавкаНДС, НаправлениеДеятельности");
- ПартииСменыНалогообложения = РезультатЗапроса[3].Выгрузить();
- ПартииСменыНалогообложения.Индексы.Добавить("Организация, СчетФактура, Поставщик, ВидЦенности, СтавкаНДС, ВидДеятельностиНДС, НаправлениеДеятельности, РеализацияЭкспорт");
- ВыборкаОстатковНДСПредъявленныйПоСФ = РезультатЗапроса[4].Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);
- НалоговаяБазаРеализации0ДляРаспределенияВычетаНДС = РезультатЗапроса[5].Выгрузить();
+ ВыборкаОстатковНДСПредъявленныйПоСФ = РезультатЗапроса[3].Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);
+ НалоговаяБазаРеализации0ДляРаспределенияВычетаНДС = РезультатЗапроса[4].Выгрузить();
НалоговаяБазаРеализации0ДляРаспределенияВычетаНДС.Индексы.Добавить("Организация, СчетФактура, РеализацияЭкспорт");
ТаблицаНДСПредъявленныйПринятиеКВычету = РегистрыНакопления.НДСПредъявленный.СоздатьНаборЗаписей().ВыгрузитьКолонки();
@@ -4710,58 +4209,18 @@
ЗаполнитьЗначенияСвойств(СтрокаНалоговаяБазаРеализации0ДляРаспределенияВычетаНДС, ВыборкаВРазрезеИзмеренийСФ);
КонецЦикла;
- СтруктураОтбораПартии = Новый Структура();
- СтруктураОтбораПартии.Вставить("Организация");
- СтруктураОтбораПартии.Вставить("СчетФактура");
- СтруктураОтбораПартии.Вставить("Поставщик");
- СтруктураОтбораПартии.Вставить("ВидЦенности");
- СтруктураОтбораПартии.Вставить("СтавкаНДС");
- СтруктураОтбораПартии.Вставить("ВидДеятельностиНДС");
- СтруктураОтбораПартии.Вставить("НаправлениеДеятельности");
- СтруктураОтбораПартии.Вставить("РеализацияЭкспорт");
-
- ЗаполнитьЗначенияСвойств(СтруктураОтбораПартии, ВыборкаВРазрезеИзмеренийСФ);
- СтрокиСменыНалогообложения = ПартииСменыНалогообложения.НайтиСтроки(СтруктураОтбораПартии);
- // Сначала вычет отнесем на регистраторы, по которым в этом периоде
- // была смена налогообложения с необлагаемой на облагаемую.
- Для Каждого ПартияСменыНалогообложения Из СтрокиСменыНалогообложения Цикл
- Если Суммы.НДСКВычету * Знак > 0 Тогда
- Если НДСВосстановлен > 0 Тогда
- НДС = Мин(ПартияСменыНалогообложения.НДС, Суммы.НДСКВычету, НДСВосстановлен);
- ДоляДоступногоНДС = НДС / ПартияСменыНалогообложения.НДС;
- НДСВосстановлен = НДСВосстановлен - НДС;
- ДобавитьСтрокуВычетаНДС(ТаблицаНДСПредъявленныйПринятиеКВычету, Суммы, ДоляДоступногоНДС, ПартияСменыНалогообложения, ВыборкаВРазрезеИзмеренийСФ, Истина);
- ПартияСменыНалогообложения.НДС = ПартияСменыНалогообложения.НДС - НДС;
- ПартияСменыНалогообложения.НДСУпр = ПартияСменыНалогообложения.НДСУпр - Окр(ДоляДоступногоНДС * ПартияСменыНалогообложения.НДСУпр, 2);
- ПартияСменыНалогообложения.СуммаБезНДС = ПартияСменыНалогообложения.СуммаБезНДС - Окр(ДоляДоступногоНДС * ПартияСменыНалогообложения.СуммаБезНДС, 2);
- КонецЕсли;
- Если ПартияСменыНалогообложения.НДС * Знак > 0 Тогда
- Если Коэффициенты.Количество() = 0 Тогда
- ДоляДоступногоНДС = Мин(ПартияСменыНалогообложения.НДС, Суммы.НДСКВычету) / ПартияСменыНалогообложения.НДС;
- ДобавитьСтрокуВычетаНДС(ТаблицаНДСПредъявленныйПринятиеКВычету, Суммы, ДоляДоступногоНДС, ПартияСменыНалогообложения, ВыборкаВРазрезеИзмеренийСФ);
- Иначе
- РаспределениеСуммыКВычету = ОбщегоНазначения.РаспределитьСуммуПропорциональноКоэффициентам(Мин(ПартияСменыНалогообложения.НДС, Суммы.НДСКВычету), Коэффициенты);
- Для Инд = 0 По СтрокиНалоговаяБазаРеализации0.Количество() - 1 Цикл
- ДоляДоступногоНДС = ?(ПартияСменыНалогообложения.НДС * Знак <> 0, РаспределениеСуммыКВычету[Инд] / ПартияСменыНалогообложения.НДС, 0);
- ДобавитьСтрокуВычетаНДС(ТаблицаНДСПредъявленныйПринятиеКВычету, Суммы, ДоляДоступногоНДС, ПартияСменыНалогообложения, СтрокиНалоговаяБазаРеализации0[Инд]);
- КонецЦикла;
- КонецЕсли;
- КонецЕсли;
- КонецЕсли;
- КонецЦикла;
-
- // Остаток вычета относим на счет-фактуру.
+ // Весь вычет относим на счет-фактуру.
Если Суммы.НДСКВычету * Знак > 0 Тогда
Если НДСВосстановлен > 0 Тогда
НДС = Мин(Суммы.НДСКВычету, НДСВосстановлен);
Если Коэффициенты.Количество() = 0 Тогда
ДоляДоступногоНДС = НДС / Суммы.НДС;
- ДобавитьСтрокуВычетаНДС(ТаблицаНДСПредъявленныйПринятиеКВычету, Суммы, ДоляДоступногоНДС, ВыборкаВРазрезеИзмеренийСФ, ВыборкаВРазрезеИзмеренийСФ, Истина, Истина);
+ ДобавитьСтрокуВычетаНДС(ТаблицаНДСПредъявленныйПринятиеКВычету, Суммы, ДоляДоступногоНДС, ВыборкаВРазрезеИзмеренийСФ, Истина);
Иначе
РаспределениеСуммыКВычету = ОбщегоНазначения.РаспределитьСуммуПропорциональноКоэффициентам(НДС, Коэффициенты);
Для Инд = 0 По СтрокиНалоговаяБазаРеализации0.Количество() - 1 Цикл
ДоляДоступногоНДС = РаспределениеСуммыКВычету[Инд] / Суммы.НДС;
- ДобавитьСтрокуВычетаНДС(ТаблицаНДСПредъявленныйПринятиеКВычету, Суммы, ДоляДоступногоНДС, ВыборкаВРазрезеИзмеренийСФ, СтрокиНалоговаяБазаРеализации0[Инд], Истина, Истина);
+ ДобавитьСтрокуВычетаНДС(ТаблицаНДСПредъявленныйПринятиеКВычету, Суммы, ДоляДоступногоНДС, СтрокиНалоговаяБазаРеализации0[Инд], Истина);
КонецЦикла;
КонецЕсли;
НДСВосстановлен = НДСВосстановлен - НДС;
@@ -4769,17 +4228,17 @@
КонецЕсли;
Если Суммы.НДСКВычету * Знак > 0 Тогда
Если Коэффициенты.Количество() = 0 Тогда
- Если Суммы.НДСКВычету * Знак <= ПараметрыРасчета.ПорогСписанияПогрешностейОкругления И СтрокиСменыНалогообложения.Количество() > 0 Тогда
+ Если Суммы.НДСКВычету * Знак <= ПараметрыРасчета.ПорогСписанияПогрешностейОкругления Тогда
Продолжить;
Иначе
ДоляДоступногоНДС = Суммы.НДСКВычету / Суммы.НДС;
- ДобавитьСтрокуВычетаНДС(ТаблицаНДСПредъявленныйПринятиеКВычету, Суммы, ДоляДоступногоНДС, ВыборкаВРазрезеИзмеренийСФ, ВыборкаВРазрезеИзмеренийСФ, Ложь, Истина);
+ ДобавитьСтрокуВычетаНДС(ТаблицаНДСПредъявленныйПринятиеКВычету, Суммы, ДоляДоступногоНДС, ВыборкаВРазрезеИзмеренийСФ, Ложь);
КонецЕсли;
Иначе
РаспределениеСуммыКВычету = ОбщегоНазначения.РаспределитьСуммуПропорциональноКоэффициентам(Суммы.НДСКВычету, Коэффициенты);
Для Инд = 0 По СтрокиНалоговаяБазаРеализации0.Количество() - 1 Цикл
ДоляДоступногоНДС = ?(Суммы.НДСКВычету <> 0, РаспределениеСуммыКВычету[Инд] / Суммы.НДС, 0);
- ДобавитьСтрокуВычетаНДС(ТаблицаНДСПредъявленныйПринятиеКВычету, Суммы, ДоляДоступногоНДС, ВыборкаВРазрезеИзмеренийСФ, СтрокиНалоговаяБазаРеализации0[Инд], Ложь, Истина);
+ ДобавитьСтрокуВычетаНДС(ТаблицаНДСПредъявленныйПринятиеКВычету, Суммы, ДоляДоступногоНДС, СтрокиНалоговаяБазаРеализации0[Инд], Ложь);
КонецЦикла;
КонецЕсли;
КонецЕсли;
@@ -4832,7 +4291,7 @@
"НДСПредъявленныйПринятиеКВычету", ПараметрыРасчета.МенеджерВременныхТаблиц, "ИдентификаторФинЗаписи");
Возврат "НДСПредъявленныйПринятиеКВычету";
-
+
КонецФункции
Функция РассчитатьЗаписиНДСПредъявленныйВосстановлениеПоКСФ(ПараметрыРасчета)
@@ -5234,32 +4693,17 @@
Процедура ДобавитьСтрокуВычетаНДС(ТаблицаПринятиеКВычету,
Суммы,
ДоляДоступногоНДС,
- ПартияСменыНалогообложения,
ВыборкаВРазрезеИзмеренийСФ,
- ПовторныйВычет = Ложь,
- ОтнестиНаСФ = Ложь)
+ ПовторныйВычет = Ложь)
НоваяСтрока = ТаблицаПринятиеКВычету.Добавить();
ЗаполнитьЗначенияСвойств(НоваяСтрока, ВыборкаВРазрезеИзмеренийСФ);
НоваяСтрока.ПовторныйВычет = ПовторныйВычет;
- Если ОтнестиНаСФ Тогда
- НоваяСтрока.НДС = Окр(ДоляДоступногоНДС * Суммы.НДС, 2);
- НоваяСтрока.СуммаБезНДС = Окр(ДоляДоступногоНДС * Суммы.СуммаБезНДС, 2);
- НоваяСтрока.НДСУпр = Окр(ДоляДоступногоНДС * Суммы.НДСУпр, 2);
- Иначе
- НоваяСтрока.Регистратор = ПартияСменыНалогообложения.Регистратор;
- НоваяСтрока.Период = ПартияСменыНалогообложения.Период;
-
- НоваяСтрока.НДС = Окр(ДоляДоступногоНДС * ПартияСменыНалогообложения.НДС, 2);
- НоваяСтрока.СуммаБезНДС = Окр(ДоляДоступногоНДС * ПартияСменыНалогообложения.СуммаБезНДС, 2);
- НоваяСтрока.НДСУпр = Окр(ДоляДоступногоНДС * ПартияСменыНалогообложения.НДСУпр, 2);
-
- Суммы.НДСКВычету = Суммы.НДСКВычету - НоваяСтрока.НДС;
- Суммы.НДС = Суммы.НДС - НоваяСтрока.НДС;
- Суммы.СуммаБезНДС = Суммы.СуммаБезНДС - НоваяСтрока.СуммаБезНДС;
- Суммы.НДСУпр = Суммы.НДСУпр - НоваяСтрока.НДСУпр;
- КонецЕсли;
+ НоваяСтрока.НДС = Окр(ДоляДоступногоНДС * Суммы.НДС, 2);
+ НоваяСтрока.СуммаБезНДС = Окр(ДоляДоступногоНДС * Суммы.СуммаБезНДС, 2);
+ НоваяСтрока.НДСУпр = Окр(ДоляДоступногоНДС * Суммы.НДСУпр, 2);
+
НоваяСтрока.ЗаписьДополнительногоЛиста = ВыборкаВРазрезеИзмеренийСФ.ОтнестиКПредыдущемуКварталу;
НоваяСтрока.КорректируемыйПериод = ВыборкаВРазрезеИзмеренийСФ.ИсправляемыйПериод;
НоваяСтрока.Период = ?(ВыборкаВРазрезеИзмеренийСФ.ОтнестиКПредыдущемуКварталу, ВыборкаВРазрезеИзмеренийСФ.ДатаИсправленияРаспределенияНДС, НоваяСтрока.Период);
diff --git a/src/CommonModules/УчетПодакцизныхТоваров/Ext/Module.bsl b/src/CommonModules/УчетПодакцизныхТоваров/Ext/Module.bsl
index 54fa4a924..98658a88f 100644
--- a/src/CommonModules/УчетПодакцизныхТоваров/Ext/Module.bsl
+++ b/src/CommonModules/УчетПодакцизныхТоваров/Ext/Module.bsl
@@ -480,7 +480,6 @@
"ВЫБРАТЬ
| ТаблицаКатегории.Номенклатура КАК Номенклатура,
| ЕСТЬNULL(ТаблицаСтавки.Ставка, 0) КАК Ставка,
- | ЕСТЬNULL(ТаблицаСтавки.Ставка, 0) * ТаблицаКатегории.КоэффициентПересчета КАК СтавкаЗаЕдиницуХранения,
| ТаблицаКатегории.КоэффициентПересчета КАК КоэффициентПересчета,
| КатегорииПодакцизныхТоваров.Ссылка КАК Категория,
| ЕСТЬNULL(КатегорииПодакцизныхТоваров.Валюта, ЗНАЧЕНИЕ(Справочник.Валюты.ПустаяСсылка)) КАК Валюта,
@@ -528,9 +527,7 @@
"ВЫБРАТЬ
| Товары.ИдентификаторСтрокиВТ КАК ИдентификаторСтрокиВТ,
| ТаблицаДанных.Номенклатура ЕСТЬ НЕ NULL КАК ПодакцизныйТовар,
- | ВЫРАЗИТЬ(ТаблицаДанных.Ставка * ЕСТЬNULL(КурсыВалют.КоэффициентПересчета, 1) КАК ЧИСЛО(31, 2)) КАК Ставка,
- | ВЫРАЗИТЬ(ТаблицаДанных.СтавкаЗаЕдиницуХранения
- | * ЕСТЬNULL(КурсыВалют.КоэффициентПересчета, 1) КАК ЧИСЛО(31, 2)) КАК СтавкаЗаЕдиницуХранения,
+ | ТаблицаДанных.Ставка * ЕСТЬNULL(КурсыВалют.КоэффициентПересчета, 1) КАК Ставка,
| ТаблицаДанных.КоэффициентПересчета КАК КоэффициентПересчетаЕдиницИзмерения,
| ПРЕДСТАВЛЕНИЕ(ТаблицаДанных.Номенклатура) КАК Номенклатура,
| ПРЕДСТАВЛЕНИЕ(ТаблицаДанных.Категория) КАК Категория,
@@ -627,12 +624,10 @@
Количество = ТекущаяСтрока[ИмяПоляКоличество];
Если СтруктураПараметровДействия.СтавкаЗаЕдиницуХранения Тогда
- Ставка = ПараметрыРасчета.СтавкаЗаЕдиницуХранения;
- Иначе
- Ставка = ПараметрыРасчета.Ставка;
+ Количество = Окр(Количество * ПараметрыРасчета.КоэффициентПересчетаЕдиницИзмерения, 3);
КонецЕсли;
- ТекущаяСтрока.СуммаАкциза = Количество * Ставка;
+ ТекущаяСтрока.СуммаАкциза = Количество * ПараметрыРасчета.Ставка;
СообщитьОбОшибкахРасчетаАкциза(ПараметрыРасчета, СтруктураПараметровДействия.Дата);
@@ -905,7 +900,9 @@
//
Процедура ЗаписатьСуммыАкциза(ДокументСсылка) Экспорт
- Если Не ОбщегоНазначения.СсылкаСуществует(ДокументСсылка) Тогда
+ ДокументПроведен = ОбщегоНазначения.ЗначениеРеквизитаОбъекта(ДокументСсылка, "Проведен");
+
+ Если ДокументПроведен = Неопределено Или ДокументПроведен = Ложь Тогда
Возврат;
КонецЕсли;
@@ -1135,8 +1132,7 @@
| ПодакцизныеТовары.ПодакцизныйТовар КАК ПодакцизныйТовар,
| ПодакцизныеТовары.Ставка КАК Ставка,
| ПодакцизныеТовары.КодАкциза КАК КодАкциза,
- | ВЫРАЗИТЬ(ПодакцизныеТовары.Ставка * ЕСТЬNULL(КурсыВалют.КоэффициентПересчета, 1)
- | КАК ЧИСЛО(31, 2)) КАК СтавкаРегл,
+ | ПодакцизныеТовары.Ставка * ЕСТЬNULL(КурсыВалют.КоэффициентПересчета, 1) КАК СтавкаРегл,
| ПодакцизныеТовары.ЕдиницаИзмерения КАК ЕдиницаИзмеренияАкциза,
| ПодакцизныеТовары.КоэффициентПересчета КАК КоэффициентПересчетаЕдиницИзмерения,
| ПодакцизныеТовары.Валюта КАК ВалютаАкциза,
diff --git a/src/CommonModules/УчетныеЗаписиЭДО/Ext/Module.bsl b/src/CommonModules/УчетныеЗаписиЭДО/Ext/Module.bsl
index 38cbbb4fd..485a7a07c 100644
--- a/src/CommonModules/УчетныеЗаписиЭДО/Ext/Module.bsl
+++ b/src/CommonModules/УчетныеЗаписиЭДО/Ext/Module.bsl
@@ -1504,10 +1504,15 @@
Возврат РегистрыСведений.УчетныеЗаписиЭДО.ЕстьУчетныеЗаписиЧерезЦентрЭДО();
КонецФункции
+// Параметры:
+// ИдентификаторыЭДО - Неопределено,Массив из Строка
+//
// Возвращаемое значение:
// Булево
-Функция ЕстьУчетныеЗаписиЧерезСервис1СЭДО() Экспорт
- Возврат РегистрыСведений.УчетныеЗаписиЭДО.ЕстьУчетныеЗаписиЧерезСервис1СЭДО();
+Функция ЕстьУчетныеЗаписиЧерезСервис1СЭДО(ИдентификаторыЭДО = Неопределено) Экспорт
+
+ Возврат РегистрыСведений.УчетныеЗаписиЭДО.ЕстьУчетныеЗаписиЧерезСервис1СЭДО(ИдентификаторыЭДО);
+
КонецФункции
// Возвращаемое значение:
@@ -1639,6 +1644,33 @@
КонецФункции
+// Параметры:
+// Сертификаты - Массив из СправочникСсылка.СертификатыКлючейЭлектроннойПодписиИШифрования
+//
+// Возвращаемое значение:
+// Массив из Строка
+Функция ИдентификаторыУчетныхЗаписейЧерезСервис1СЭДОСертификатов(Сертификаты) Экспорт
+
+ Запрос = Новый Запрос;
+ Запрос.Текст =
+ "ВЫБРАТЬ РАЗРЕШЕННЫЕ РАЗЛИЧНЫЕ
+ | СертификатыУчетныхЗаписейЭДО.ИдентификаторЭДО КАК ИдентификаторЭДО
+ |ИЗ
+ | РегистрСведений.СертификатыУчетныхЗаписейЭДО КАК СертификатыУчетныхЗаписейЭДО
+ | ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.УчетныеЗаписиЭДО КАК УчетныеЗаписиЭДО
+ | ПО СертификатыУчетныхЗаписейЭДО.ИдентификаторЭДО = УчетныеЗаписиЭДО.ИдентификаторЭДО
+ |ГДЕ
+ | СертификатыУчетныхЗаписейЭДО.Сертификат В(&Сертификаты)
+ | И УчетныеЗаписиЭДО.СпособОбменаЭД = ЗНАЧЕНИЕ(Перечисление.СпособыОбменаЭД.ЧерезСервис1СЭДО)
+ | И НЕ УчетныеЗаписиЭДО.ИспользоватьЦентрЭДО";
+
+ Запрос.УстановитьПараметр("Сертификаты", Сертификаты);
+ РезультатЗапроса = Запрос.Выполнить();
+
+ Возврат РезультатЗапроса.Выгрузить().ВыгрузитьКолонку("ИдентификаторЭДО");
+
+КонецФункции
+
// Возвращаемое значение:
// Строка
Функция ИдентификаторОшибкиНедействительныеСертификаты() Экспорт
diff --git a/src/CommonModules/УчетныеЗаписиЭДОСлужебный/Ext/Module.bsl b/src/CommonModules/УчетныеЗаписиЭДОСлужебный/Ext/Module.bsl
index 4a6c286d4..fe59e3aec 100644
--- a/src/CommonModules/УчетныеЗаписиЭДОСлужебный/Ext/Module.bsl
+++ b/src/CommonModules/УчетныеЗаписиЭДОСлужебный/Ext/Module.bsl
@@ -385,6 +385,12 @@
Ошибки.Добавить(ОписаниеОшибки);
КонецЕсли;
+ Если Не ВидДобавляемогоСертификатаСоответствуетВидуОрганизации(Сертификат, Организация, СообщениеОбОшибке) Тогда
+ ОписаниеОшибки = НовоеОписаниеОшибки("Ошибка");
+ ОписаниеОшибки.Текст = СообщениеОбОшибке;
+ Ошибки.Добавить(ОписаниеОшибки);
+ КонецЕсли;
+
ПроверитьСрокДействияСертификата(Сертификат, Ошибки);
ПроверитьСертификатНаОтзыв(Сертификат, Ошибки);
@@ -1167,4 +1173,63 @@
КонецФункции
+// Проверяет соответствует ли вид добавляемого сертификата виду текущей организации и устанавливает
+// текст сообщения об ошибке.
+//
+// Параметры:
+// Сертификат - СправочникСсылка.СертификатыКлючейЭлектроннойПодписиИШифрования
+// Организация - ОпределяемыйТип.Организация
+// СообщениеОбОшибке - Строка
+//
+// Возвращаемое значение:
+// Булево
+Функция ВидДобавляемогоСертификатаСоответствуетВидуОрганизации(Сертификат, Организация, СообщениеОбОшибке) Экспорт
+
+ Результат = Истина;
+ СообщениеОбОшибке = "";
+
+ ВидыСертификатов = КриптографияБЭДКлиентСервер.ВидыСертификатовЭлектроннойПодписи();
+
+ СвойстваСубъектаСертификата = КриптографияБЭД.СвойстваСубъектаСертификатаПоСсылке(Сертификат);
+ СвойстваИздателяСертификата = КриптографияБЭД.СвойстваИздателяСертификатаПоСсылке(Сертификат);
+
+ ВидСертификата =
+ КриптографияБЭД.ВидСертификатаПоДаннымСвойствСубъектаИИздателя(
+ СвойстваСубъектаСертификата, СвойстваИздателяСертификата);
+
+ ДанныеОрганизации = ИнтеграцияЭДО.ДанныеЮрФизЛица(Организация);
+ ЭтоЮрЛицо = Не ИнтеграцияЭДО.ЭтоФизЛицо(Организация);
+
+ Если ЭтоЮрЛицо И ВидСертификата = ВидыСертификатов.СертификатИП Тогда
+ СообщениеОбОшибке = ТекстОшибкиНекорректногоИспользованияСертификатаИПДляЮридическогоЛица(
+ ВидыСертификатов.СертификатИП, ДанныеОрганизации.ЮрФизЛицо);
+ Результат = Ложь;
+ КонецЕсли;
+
+ Возврат Результат;
+
+КонецФункции
+
+// Возвращает текст ошибки некорректного использования сертификата индивидуального предпринимателя
+// для организации с видом юридическое лицо.
+//
+// Параметры:
+// ПредставлениеСертификатаИП - Строка
+// ВидОрганизации - ПеречислениеСсылка.ЮрФизЛицо
+//
+// Возвращаемое значение:
+// Строка
+Функция ТекстОшибкиНекорректногоИспользованияСертификатаИПДляЮридическогоЛица(ПредставлениеСертификатаИП,
+ ВидОрганизации)
+
+ ШаблонСообщения = НСтр("ru = 'Выбранный сертификат это ""%1"".
+ |Такой сертификат не может использоваться с видом организации ""%2"".
+ |Выберите другой сертификат.'");
+
+ СообщениеОбОшибке = СтрШаблон(ШаблонСообщения, ПредставлениеСертификатаИП, ВидОрганизации);
+
+ Возврат СообщениеОбОшибке;
+
+КонецФункции
+
#КонецОбласти
\ No newline at end of file
diff --git a/src/CommonModules/УчетныеЗаписиЭДОСлужебныйВызовСервера/Ext/Module.bsl b/src/CommonModules/УчетныеЗаписиЭДОСлужебныйВызовСервера/Ext/Module.bsl
index 7fb902652..12648b14d 100644
--- a/src/CommonModules/УчетныеЗаписиЭДОСлужебныйВызовСервера/Ext/Module.bsl
+++ b/src/CommonModules/УчетныеЗаписиЭДОСлужебныйВызовСервера/Ext/Module.bsl
@@ -14,6 +14,10 @@
Функция АвторизоватьсяВСервисеЭДОВФоне(Знач РезультатыПолученияОтпечатков, Знач ИдентификаторыЭДО,
Знач ВыбранныеСертификаты = Неопределено, Знач ИдентификаторФормы = Неопределено) Экспорт
+ Если ИдентификаторФормы = Неопределено Тогда
+ ИдентификаторФормы = Новый УникальныйИдентификатор;
+ КонецЕсли;
+
ПараметрыВыполненияВФоне = ДлительныеОперации.ПараметрыВыполненияФункции(ИдентификаторФормы);
// См. УчетныеЗаписиЭДО.АвторизоватьсяВСервисеЭДО
diff --git a/src/CommonModules/УчетныеЗаписиЭДОСлужебныйКлиент/Ext/Module.bsl b/src/CommonModules/УчетныеЗаписиЭДОСлужебныйКлиент/Ext/Module.bsl
index f77f3b263..12742733e 100644
--- a/src/CommonModules/УчетныеЗаписиЭДОСлужебныйКлиент/Ext/Module.bsl
+++ b/src/CommonModules/УчетныеЗаписиЭДОСлужебныйКлиент/Ext/Module.bsl
@@ -50,9 +50,9 @@
// КонтекстАвторизации - см. НовыйКонтекстАвторизацииВСервисеЭДО
Процедура ОбработатьРезультатАвторизацииВСервисеЭДО(ДлительнаяОперация, КонтекстАвторизации) Экспорт
- РезультатАвторизацииВФоне = ОбщегоНазначенияБЭДКлиент.РезультатВыполненияФоновогоЗадания(
- УчетныеЗаписиЭДОКлиентСервер.ВидОперацииАвторизацияВСервисеЭДО(),
- ДлительнаяОперация, КонтекстАвторизации.КонтекстДиагностики, Истина);
+ РезультатАвторизацииВФоне = ОбщегоНазначенияБЭДКлиент.РезультатДлительнойОперации(
+ ДлительнаяОперация, КонтекстАвторизации.КонтекстДиагностики,
+ УчетныеЗаписиЭДОКлиентСервер.ВидОперацииАвторизацияВСервисеЭДО());
Если Не ЗначениеЗаполнено(РезультатАвторизацииВФоне) Тогда
ИтогРасшифровки = КриптографияБЭДКлиент.НовыйИтогРасшифровкиНабораДанных();
ЗавершитьАвторизациюВСервисеЭДОПослеРасшифровки(ИтогРасшифровки, КонтекстАвторизации);
diff --git a/src/CommonModules/УчетныеЗаписиЭДОЦентрЭДО/Ext/Module.bsl b/src/CommonModules/УчетныеЗаписиЭДОЦентрЭДО/Ext/Module.bsl
index 2edf55242..7b8fe3f05 100644
--- a/src/CommonModules/УчетныеЗаписиЭДОЦентрЭДО/Ext/Module.bsl
+++ b/src/CommonModules/УчетныеЗаписиЭДОЦентрЭДО/Ext/Module.bsl
@@ -318,7 +318,8 @@
Возврат Результат;
КонецЕсли;
- Если Не ТребуетсяАктуализацияСертификатовВУчетнойЗаписи(СертификатыДляРегистрации,
+ Если ЗначениеЗаполнено(ДанныеЗаявки.ИдентификаторЭДО)
+ И Не ТребуетсяАктуализацияСертификатовВУчетнойЗаписи(СертификатыДляРегистрации,
ДанныеЗаявки.ИдентификаторЭДО) Тогда
Ошибка = НоваяОшибкаФормированияЗаявкиНаРегистрацию();
Ошибка.СертификатыУжеЗарегистрированы = Истина;
diff --git a/src/CommonModules/ФорматыЭДО/Ext/Module.bsl b/src/CommonModules/ФорматыЭДО/Ext/Module.bsl
index 36f0de01b..1e011133e 100644
--- a/src/CommonModules/ФорматыЭДО/Ext/Module.bsl
+++ b/src/CommonModules/ФорматыЭДО/Ext/Module.bsl
@@ -915,6 +915,15 @@
Возврат ЭтоФорматПространства(СтандартныеФорматы, Формат);
КонецФункции
+// Идентифицирует служебное имя дополнительного поля.
+//
+// Параметры:
+// ИмяПоля - Строка
+// Формат - Строка
+//
+// Возвращаемое значение:
+// Булево
+//
Функция ЭтоСлужебноеИмяДополнительногоПоля(ИмяПоля, Формат) Экспорт
ПоддерживаемыеФорматы = ПоддерживаемыеФорматы();
@@ -964,7 +973,7 @@
КонецЕсли;
- Возврат Результат;
+ Возврат Результат ИЛИ ТрансграничныйЭДО.ЭтоСлужебноеИмяДополнительногоПоля(ИмяПоля, Формат);
КонецФункции
@@ -1183,6 +1192,11 @@
ИначеЕсли СтрНайти(ИмяФайла, "ON_AKTSVERPOL") > 0 Тогда
КНД = "1110333";
КонецЕсли;
+
+ ИначеЕсли ТипДокумента = Перечисления.ТипыДокументовЭДО.СчетНаОплату
+ Или ТипДокумента = Перечисления.ТипыДокументовЭДО.СчетОферта Тогда
+
+ КНД = "1110379";
Иначе
Обработка = НайтиОбработкуФорматаПоФайлуОбмена(ИмяФайла);
@@ -1507,6 +1521,14 @@
КонецФункции
+// См. ЭлектронныеДокументыЭДО.ЭтоФормализованныйФорматБезОтветногоТитула
+Функция ЭтоФормализованныйФорматБезОтветногоТитула(Формат) Экспорт
+
+ ПоддерживаемыеФорматы = ПоддерживаемыеФорматы();
+ Возврат Формат = ПоддерживаемыеФорматы.ФНС.СчетНаОплату_5_01;
+
+КонецФункции
+
#КонецОбласти
#Область ФормированиеДокумента
@@ -1670,7 +1692,9 @@
Или Формат = ПоддерживаемыеФорматы.ФНС.ПередачаТоваров.ИнформацияПродавца
Или Формат = ПоддерживаемыеФорматы.ФНС.АктОРасхождениях.ИнформацияПокупателя
Или Формат = ПоддерживаемыеФорматы.ФНС.ПередачаРабот.ИнформацияПродавца
- Или Формат = ПоддерживаемыеФорматы.ФНС.АктОРасхождениях.ДополнительныеСведения)
+ Или Формат = ПоддерживаемыеФорматы.ФНС.АктОРасхождениях.ДополнительныеСведения
+ Или Формат = ПоддерживаемыеФорматы.ФНС.СчетНаОплату101
+ Или Формат = ПоддерживаемыеФорматы.ФНС.СчетНаОплату_5_01)
И ФайлСформированВ1С(ОписаниеФайла) = Ложь Тогда
Подписант = СведенияОПодписанте(ОписаниеФайла, ОписаниеОшибки);
@@ -1686,7 +1710,9 @@
Если (ЕстьСвойствоXDTO(Подписант, "ИП") И Подписант.ИП <> Неопределено)
Или (ЕстьСвойствоXDTO(Подписант, "ЮЛ") И Подписант.ЮЛ <> Неопределено)
Или Формат = ПоддерживаемыеФорматы.ФНС.УПД_5_02.ИнформацияПродавца
- Или Формат = ПоддерживаемыеФорматы.ФНС.УПД_5_03.ИнформацияПродавца Тогда
+ Или Формат = ПоддерживаемыеФорматы.ФНС.УПД_5_03.ИнформацияПродавца
+ Или Формат = ПоддерживаемыеФорматы.ФНС.СчетНаОплату101
+ Или Формат = ПоддерживаемыеФорматы.ФНС.СчетНаОплату_5_01 Тогда
Возврат ОписаниеФайла;
КонецЕсли;
КонецЕсли;
@@ -1723,7 +1749,7 @@
ПредставлениеОГРНиДатыРегистрации = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
НСтр("ru = '%1;%2'"), ДанныеЮрФизЛица.ОГРН, Формат(ДанныеЮрФизЛица.ДатаОГРН, "ДФ=dd.MM.yyyy"));
РаботаСФайламиБЭД.ЗаполнитьСвойствоXDTO(ИП, "СвГосРегИП", ПредставлениеОГРНиДатыРегистрации, , Ошибки);
- Иначе
+ ИначеЕсли ЗначениеЗаполнено(ДанныеЮрФизЛица.СвидетельствоСерияНомер) Тогда
ДанныеСвидетельства = ИнтеграцияЭДО.ДанныеСвидетельстваОРегистрацииИП(Организация);
РаботаСФайламиБЭД.ЗаполнитьСвойствоXDTO(ИП, "СвГосРегИП", ДанныеСвидетельства, , Ошибки);
КонецЕсли;
@@ -2211,7 +2237,8 @@
РаботаСФайламиБЭД.ЗаполнитьСвойствоXDTO(Подписант, "ФИО", ФИО, Истина, Ошибки);
РаботаСФайламиБЭД.ЗаполнитьСвойствоXDTO(ДанныеФайлаЭД.Документ, "Подписант", Подписант, Истина, Ошибки);
- ИначеЕсли ТипДокумента = Перечисления.ТипыДокументовЭДО.СчетНаОплату
+ ИначеЕсли (ТипДокумента = Перечисления.ТипыДокументовЭДО.СчетНаОплату
+ Или ТипДокумента = Перечисления.ТипыДокументовЭДО.СчетОферта)
И (Формат = ПоддерживаемыеФорматы.ФНС.СчетНаОплату101
Или Формат = ПоддерживаемыеФорматы.ФНС.СчетНаОплату_5_01) Тогда
@@ -2641,7 +2668,14 @@
ЭлементыИдентификатора = СтрРазделить(ДанныеФайлаЭД.ИдФайл, "_");
Результат.ИдентификаторОрганизации = ЭлементыИдентификатора[3];
КонецЕсли;
+ ИначеЕсли ЕстьСвойствоXDTO(ДанныеФайлаЭД, "ИдФайл")
+ И СтрНайти(ДанныеФайлаЭД.ИдФайл, "ON_CHETOP") > 0 Тогда
+ ВерсияФорматаСчета = РаботаСФайламиБЭД.ЗначениеСвойстваXDTO(ДанныеФайлаЭД, "ВерсФорм", "");
+ Если ВерсияФорматаСчета = "5.01" Тогда
+ ЭлементыИдентификатора = СтрРазделить(ДанныеФайлаЭД.ИдФайл, "_");
+ Результат.ИдентификаторОрганизации = ЭлементыИдентификатора[3];
+ КонецЕсли;
КонецЕсли;
Если ТипЗнч(ДанныеФайлаЭД.Документ.Подписант) = Тип("СписокXDTO") Тогда
@@ -2772,7 +2806,8 @@
ПоддерживаемыеФорматы = ПоддерживаемыеФорматы();
Если ПространствоИмен = ПоддерживаемыеФорматы.ФНС.УПД_5_02.ИнформацияПродавца
- Или ПространствоИмен = ПоддерживаемыеФорматы.ФНС.УПД_5_03.ИнформацияПродавца Тогда
+ Или ПространствоИмен = ПоддерживаемыеФорматы.ФНС.УПД_5_03.ИнформацияПродавца
+ Или ПространствоИмен = ПоддерживаемыеФорматы.ФНС.СчетНаОплату_5_01 Тогда
ВерсияСхемы = "4.01";
ЛокальноеИмя = "Файл";
@@ -3183,12 +3218,9 @@
РезультатПоУчету.ЕстьОшибки = Истина;
- // Ошибки обработки объекта могли быть сообщены пользователю в фоновом задании.
- // Получим их и добавим с явной привязкой к объекту.
СообщенияОбОшибках = ПолучитьСообщенияПользователю(Истина);
- Если СообщенияОбОшибках.Количество() = 0 Тогда
- ОбщегоНазначенияБЭД.ДобавитьОшибку(РезультатПоУчету.Ошибки.ЗаполнениеДанных, Неопределено);
- Иначе
+ Если СообщенияОбОшибках.Количество() > 0 Тогда
+
Для Каждого СообщениеОбОшибке Из СообщенияОбОшибках Цикл
// Проверить, что сообщение по нужному объекту. Иначе сообщим еще раз.
Если СообщениеОбОшибке.КлючДанных = ОбъектУчета Тогда
@@ -3199,7 +3231,9 @@
Иначе
СообщениеОбОшибке.Сообщить();
КонецЕсли;
+
КонецЦикла;
+
КонецЕсли;
Возврат РезультатПоУчету;
@@ -3519,14 +3553,46 @@
КонецФункции
+// Инициализирует параметры заполнения дополнительных полей
+//
+// Параметры:
+// ОписаниеДанныхЭД - см. ДеревоЭлектронногоДокументаБЭД.ДеревоЭлектронногоДокумента
+// НастройкиОбмена - см. НовыеНастройкиФормированияДокументаПоОбъектуУчета
+// НастройкаЗаполнения - см. НастройкаЗаполненияДополнительныхПолей
+// СсылкаНаОбъект - ОпределяемыйТип.ОснованияЭлектронныхДокументовЭДО -
+//
+// Возвращаемое значение:
+// Структура:
+// * ОписаниеДанныхЭД - см. ДеревоЭлектронногоДокументаБЭД.ДеревоЭлектронногоДокумента
+// * НастройкиОбмена - см. НовыеНастройкиФормированияДокументаПоОбъектуУчета
+// * НастройкаЗаполнения - см. НастройкиЭДО.НастройкаЗаполненияДополнительныхПолей
+// * СсылкаНаОбъект - ОпределяемыйТип.ОснованияЭлектронныхДокументовЭДО -
+//
+Функция ПараметрыЗаполненияДополнительныхПолей(ОписаниеДанныхЭД, НастройкиОбмена, НастройкаЗаполнения, СсылкаНаОбъект) Экспорт
+
+ ПараметрыЗаполнения = Новый Структура();
+ ПараметрыЗаполнения.Вставить("ОписаниеДанныхЭД", ОписаниеДанныхЭД);
+ ПараметрыЗаполнения.Вставить("НастройкиОбмена", НастройкиОбмена);
+ ПараметрыЗаполнения.Вставить("НастройкаЗаполнения", НастройкаЗаполнения);
+ ПараметрыЗаполнения.Вставить("СсылкаНаОбъект", СсылкаНаОбъект);
+ Возврат ПараметрыЗаполнения;
+
+КонецФункции
+
// Параметры:
// ОбъектУчета - ОпределяемыйТип.ОснованияЭлектронныхДокументовЭДО
// Настройки - см. НовыеНастройкиФормированияДокументаПоОбъектуУчета
-// Данные - Структура
+// Данные - Структура:
+// * ДанныеДокумента - ДеревоЗначений
+// * ЗначенияДополнительныхПолей - Структура
+// * Участники - Структура - участники ЭДО:
+// ** ИдентификаторОтправителя - Строка
+// ** ИдентификаторПолучателя - Строка
// ОтключитьРассчетДополнительныхПолей - Булево
//
// Возвращаемое значение:
-// Структура - значения дополнительных полей и ошибки расчета:
+// см. ДополнитьДокументДаннымиДополнительныхПолей
+//
Функция СформироватьЗначенияДополнительныхПолейДокумента(ОбъектУчета, Настройки, Данные, ОтключитьРассчетДополнительныхПолей) Экспорт
Если ОтключитьРассчетДополнительныхПолей
@@ -3554,15 +3620,17 @@
"СсылкаСчетаФактуры");
КонецЕсли;
-
+
НастройкаЗаполнения = НастройкаЗаполненияДополнительныхПолей(ОбъектУчета, Настройки);
- Если ЗначениеЗаполнено(СчетФактура) Тогда
- ЗначенияДополнительныхПолей = ДополнитьДокументДаннымиДополнительныхПолей(НастройкаЗаполнения, СчетФактура, Настройки, ДанныеДокумента,
- Данные.ЗначенияДополнительныхПолей);
- Иначе
- ЗначенияДополнительныхПолей = ДополнитьДокументДаннымиДополнительныхПолей(НастройкаЗаполнения, ОбъектУчета, Настройки, ДанныеДокумента,
- Данные.ЗначенияДополнительныхПолей);
- КонецЕсли;
+ СсылкаНаОбъект = ?(ЗначениеЗаполнено(СчетФактура), СчетФактура, ОбъектУчета);
+ ПараметрыЗаполнения = ПараметрыЗаполненияДополнительныхПолей(
+ ДанныеДокумента, Настройки, НастройкаЗаполнения, СсылкаНаОбъект);
+ НовыеДанныеДляФормированияОсновногоТитула();
+ ТрансграничныйЭДО.ДополнитьНастройкуЗаполненияДополнительныхПолей(
+ Данные.Участники.ИдентификаторПолучателя, ПараметрыЗаполнения);
+ ЗначенияДополнительныхПолей = ДополнитьДокументДаннымиДополнительныхПолей(
+ ПараметрыЗаполнения, Данные.ЗначенияДополнительныхПолей);
+
КонецЕсли;
Возврат ЗначенияДополнительныхПолей;
@@ -3724,7 +3792,6 @@
Предупреждения.Вставить(НСтр("ru = 'Формат файла'"), ДанныеСравнения);
РезультатЗагрузки.Успех = Ложь;
РезультатЗагрузки.Предупреждения = Предупреждения;
- Возврат РезультатЗагрузки;
КонецЕсли;
КонецЕсли;
@@ -3732,7 +3799,8 @@
ИдентификаторОрганизацииПодписанта = "";
Если ПространствоИменЗагружаемыхДанных = ПространстваИменФорматов.УПД_5_02.ИнформацияПродавца
- Или ПространствоИменЗагружаемыхДанных = ПространстваИменФорматов.УПД_5_03.ИнформацияПродавца Тогда
+ Или ПространствоИменЗагружаемыхДанных = ПространстваИменФорматов.УПД_5_03.ИнформацияПродавца
+ Или ПространствоИменЗагружаемыхДанных = ПространстваИменФорматов.СчетНаОплату_5_01 Тогда
СодержаниеДокумента = ПрочитатьСодержаниеДокумента(ОписаниеЗагружаемогоФайла);
ПроверкаИмениФайла = ПроверкаИмениФайла(ДанныеДокумента, ЗагружаемыеДанные, ЗагруженныеДанные,
@@ -4568,7 +4636,9 @@
ПоддерживаемыеФорматы = ПоддерживаемыеФорматы();
Если РаспознаниеТекущего.ИсходныйФормат = ПоддерживаемыеФорматы.ФНС.УПД_5_02.ИнформацияПродавца
- Или РаспознаниеТекущего.ИсходныйФормат = ПоддерживаемыеФорматы.ФНС.УПД_5_03.ИнформацияПродавца Тогда
+ Или РаспознаниеТекущего.ИсходныйФормат = ПоддерживаемыеФорматы.ФНС.УПД_5_03.ИнформацияПродавца
+ Или РаспознаниеТекущего.ИсходныйФормат = ПоддерживаемыеФорматы.ФНС.СчетНаОплату101
+ Или РаспознаниеТекущего.ИсходныйФормат = ПоддерживаемыеФорматы.ФНС.СчетНаОплату_5_01 Тогда
Если РаспознаниеТекущего.Свойство("ИдентификаторДокумента") Тогда
ЧастиИмениФайла = СтрРазделить(РаспознаниеТекущего.ИдентификаторДокумента, "_");
Иначе
@@ -5836,6 +5906,12 @@
НоваяСтрока.ВариантЗаполнения = "СчетНаОплату_5_01";
///////////////////////////////////////////////////////////////////////////////////
+ НоваяСтрока = ВариантыЗаполнения.Добавить();
+ НоваяСтрока.Формат = "ON_CHETOP_1_998_01_05_01_01";
+ НоваяСтрока.ТипДокумента = Перечисления.ТипыДокументовЭДО.СчетОферта;
+ НоваяСтрока.ВариантЗаполнения = "СчетНаОплату_5_01";
+ ///////////////////////////////////////////////////////////////////////////////////
+
НоваяСтрока = ВариантыЗаполнения.Добавить();
НоваяСтрока.Формат = Обработки.ФорматДоговорныйДокумент101.ПространствоИмен();
НоваяСтрока.ТипДокумента = Перечисления.ТипыДокументовЭДО.ДоговорныйДокумент;
@@ -5918,7 +5994,7 @@
Обработчик = Обработчики.Добавить();
Обработчик.Процедура = "КонвертацияЭДО.ВыполнитьЗаполнениеПравилПреобразования";
- Обработчик.Версия = "1.9.16.21";
+ Обработчик.Версия = "1.9.16.36";
Обработчик.РежимВыполнения = "Оперативно";
Обработчик.Идентификатор = Новый УникальныйИдентификатор("086b4610-a498-466e-8d21-97d7edf79578");
Обработчик.ОбщиеДанные = Истина;
@@ -5962,7 +6038,7 @@
#Область ПереченьСпециальныхОбстоятельствДокументаЭДО_ОбработатьДанныеДляПереходаНаНовуюВерсию
Обработчик = Обработчики.Добавить();
Обработчик.Процедура = "КонвертацияЭДО.ЗаполнитьПереченьСпециальныхОбстоятельствДокументаЭДО";
- Обработчик.Версия = "1.9.16.21";
+ Обработчик.Версия = "1.9.16.36";
Обработчик.РежимВыполнения = "Оперативно";
Обработчик.Идентификатор = Новый УникальныйИдентификатор("c9bf16c0-bbdb-4f91-9b44-600230c1897e");
Обработчик.НачальноеЗаполнение = Истина;
@@ -6209,28 +6285,33 @@
КонецФункции
-Функция ДополнитьДокументДаннымиДополнительныхПолей(НастройкаЗаполнения, ДокументДляИспользованияВФормулах,
- ПараметрыПолучения, ОписаниеДанныхЭД, КэшДополнительныхДанных)
+// Дополняет документ данными дополнительных полей.
+//
+// Параметры:
+// ПараметрыЗаполнения - см. ФорматыЭДО.ПараметрыЗаполненияДополнительныхПолей
+// КэшДополнительныхДанных - Структура
+//
+// Возвращаемое значение:
+// Структура:
+// * Данные - Неопределено, Структура -
+// * Ошибки - Неопределено, Структура -
+// * Успех - Булево
+//
+Функция ДополнитьДокументДаннымиДополнительныхПолей(ПараметрыЗаполнения, КэшДополнительныхДанных)
Результат = Новый Структура;
Результат.Вставить("Данные", Неопределено);
Результат.Вставить("Ошибки", Неопределено);
Результат.Вставить("Успех", Истина);
- Если НастройкаЗаполнения = Неопределено Тогда
+ Если ПараметрыЗаполнения.НастройкаЗаполнения = Неопределено Тогда
Возврат Результат;
КонецЕсли;
ДополнительныеДанные = Новый Структура;
- ПараметрыЗаполнения = Новый Структура;
- ПараметрыЗаполнения.Вставить("ОписаниеДанныхЭД", ОписаниеДанныхЭД);
- ПараметрыЗаполнения.Вставить("НастройкиОбмена", ПараметрыПолучения);
- ПараметрыЗаполнения.Вставить("НастройкаЗаполнения", НастройкаЗаполнения);
- ПараметрыЗаполнения.Вставить("СсылкаНаОбъект", ДокументДляИспользованияВФормулах);
-
РазделыДополнительныхПолей = РазделыДополнительныхПолейФорматаЭлектронногоДокумента(
- ПараметрыПолучения.ТипДокумента, ПараметрыПолучения.Формат);
+ ПараметрыЗаполнения.НастройкиОбмена.ТипДокумента, ПараметрыЗаполнения.НастройкиОбмена.Формат);
ОшибкиВычисления = Новый Структура;
РезультатЗаполнения = Истина;
@@ -6254,7 +6335,6 @@
ДанныеРаздела = ВычислитьЗначенияДополнительныхПолейШапки(ПараметрыЗаполнения, ОшибкиВычисления);
КонецЕсли;
ДанныеРазделаЗаполнены = ЗаполнитьДанныеДополнительныхПолейШапки(ДанныеРаздела, ПараметрыЗаполнения);
-
ИначеЕсли Раздел.Тип = ТипыРазделовДополнительныхПолей.Таблица Тогда
Если ДанныеРаздела = Неопределено Тогда
@@ -7994,6 +8074,10 @@
Иначе
СвойстваНоменклатуры.КодТовара = КодТов;
КонецЕсли;
+ ГТИН = РаботаСФайламиБЭД.ЗначениеСвойстваXDTO(ДопСведТов, "ГТИН",, "Строка");
+ Если ЗначениеЗаполнено(ГТИН) Тогда
+ СвойстваНоменклатуры.Штрихкод = ГТИН;
+ КонецЕсли;
СвойстваНоменклатуры.КодТНВЭД = РаботаСФайламиБЭД.ЗначениеСвойстваXDTO(ДопСведТов, "КодВидТов",, "Строка");
СведПрослеж = РаботаСФайламиБЭД.ЗначениеСвойстваXDTO(ДопСведТов, "СведПрослеж");
СвойстваНоменклатуры.ПрослеживаемыйТовар = (СведПрослеж <> Неопределено);
@@ -9330,6 +9414,15 @@
КонецФункции
+// Заполняет данные дополнительных полей шапки.
+//
+// Параметры:
+// ДополнительныеДанные - Неопределено, Структура - Дополнительные данные
+// ПараметрыЗаполнения - см. ФорматыЭДО.ПараметрыЗаполненияДополнительныхПолей
+//
+// Возвращаемое значение:
+// Булево
+//
Функция ЗаполнитьДанныеДополнительныхПолейШапки(ДополнительныеДанные, ПараметрыЗаполнения)
Результат = Истина;
diff --git a/src/CommonModules/ФорматыЭДО_ФНС/Ext/Module.bsl b/src/CommonModules/ФорматыЭДО_ФНС/Ext/Module.bsl
index e395e7c5c..cb70f669a 100644
--- a/src/CommonModules/ФорматыЭДО_ФНС/Ext/Module.bsl
+++ b/src/CommonModules/ФорматыЭДО_ФНС/Ext/Module.bsl
@@ -83,6 +83,9 @@
// * УПД_5_02 - Структура:
// ** ИнформацияПродавца - Строка
// ** ИнформацияПокупателя - Строка
+// * УПД_5_03 - Структура:
+// ** ИнформацияПродавца - Строка
+// ** ИнформацияПокупателя - Строка
// * УКД - Структура:
// ** ИнформацияПродавца - Строка
// ** ИнформацияПокупателя - Строка
@@ -152,6 +155,7 @@
ПространстваИмен.АктСверкиВзаиморасчетов.Вставить("ИнформацияПолучателя", ПространствоИмен_АктСверкиВзаиморасчетов_ИнформацияПолучателя());
ПространстваИмен.Вставить("СчетНаОплату101", ПространствоИмен_СчетНаОплату101());
+ ПространстваИмен.Вставить("СчетНаОплату_5_01", ПространствоИмен_СчетНаОплату_5_01());
Возврат ПространстваИмен;
@@ -493,9 +497,11 @@
ИначеЕсли Формат = Форматы.АктОРасхождениях.ИнформацияПокупателя Тогда
Проверка.Ошибки = ПроверитьЗаполнениеДанных_АктОРасхождении_ИнформацияПокупателя(Данные);
-
+
ИначеЕсли Формат = Форматы.АктОРасхождениях.ДополнительныеСведения Тогда
-
+
+ Проверка.Ошибки = ПроверитьЗаполнениеДанных_АктОРасхождениях_ДополнительныеСведения(Данные);
+
ИначеЕсли Формат = Форматы.ТорговаяОперация.ИнформацияПродавца Тогда
ИначеЕсли Формат = Форматы.ТорговаяОперация.ИнформацияПокупателя Тогда
@@ -510,16 +516,22 @@
ИначеЕсли Формат = Форматы.ИзвещениеОПолучении Тогда
+ Проверка.Ошибки = ПроверитьЗаполнениеДанных_ИзвещениеОПолучении(Данные);
+
ИначеЕсли Формат = Форматы.ПодтверждениеДатыОтправки Тогда
ИначеЕсли Формат = Форматы.ПодтверждениеДатыПолучения Тогда
ИначеЕсли Формат = Форматы.УведомлениеОбУточнении Тогда
+ Проверка.Ошибки = ПроверитьЗаполнениеДанных_УведомлениеОбУточнении(Данные);
+
ИначеЕсли Формат = Форматы.УведомлениеОбУточнении0101 Тогда
ИначеЕсли Формат = Форматы.ПредложениеОбАннулировании Тогда
+ Проверка.Ошибки = ПроверитьЗаполнениеДанных_ПредложениеОбАннулировании(Данные);
+
ИначеЕсли Формат = Форматы.БизнесСеть.КоммерческиеПредложения Тогда
ИначеЕсли Формат = Форматы.АктСверкиВзаиморасчетов.ИнформацияОтправителя Тогда
@@ -904,8 +916,10 @@
КонецЕсли;
КонецЕсли;
- ПроверитьДлинуСтрокиЗначенияДерева(Товар, Ошибки, "СведенияОТоварах.НомерСтроки.КодКаталога", 27, 27, НомерСтроки);
- ПроверитьДлинуСтрокиЗначенияДерева(Товар, Ошибки, "СведенияОТоварах.НомерСтроки.КодВидаТовара", 10, 10, НомерСтроки);
+ ДеревоЭлектронногоДокументаБЭД.ПроверитьДлинуСтрокиЗначенияДерева(Товар, Ошибки,
+ "СведенияОТоварах.НомерСтроки.КодКаталога", 27, 27, НомерСтроки);
+ ДеревоЭлектронногоДокументаБЭД.ПроверитьДлинуСтрокиЗначенияДерева(Товар, Ошибки,
+ "СведенияОТоварах.НомерСтроки.КодВидаТовара", 10, 10, НомерСтроки);
НомерСтроки = НомерСтроки + 1;
КонецЦикла;
@@ -940,13 +954,13 @@
КонецЕсли;
- ПроверитьДлинуСтрокиЗначенияДерева(
+ ДеревоЭлектронногоДокументаБЭД.ПроверитьДлинуСтрокиЗначенияДерева(
Данные, Ошибки, "ДополнительныеСведенияОбУчастниках.ИдентификаторГосКонтракта", 20, 25);
- ПроверитьДлинуСтрокиЗначенияДерева(
+ ДеревоЭлектронногоДокументаБЭД.ПроверитьДлинуСтрокиЗначенияДерева(
Данные, Ошибки, "ДополнительныеСведенияОбУчастниках.ЗакупкаДляГосударственныхНужд.НомерЛицевогоСчетаПродавца", 11, 11);
- ПроверитьДлинуСтрокиЗначенияДерева(
+ ДеревоЭлектронногоДокументаБЭД.ПроверитьДлинуСтрокиЗначенияДерева(
Данные, Ошибки, "ДополнительныеСведенияОбУчастниках.ЗакупкаДляГосударственныхНужд.КодБюджетнойКлассификацииПродавца", 20, 20);
- ПроверитьДлинуСтрокиЗначенияДерева(
+ ДеревоЭлектронногоДокументаБЭД.ПроверитьДлинуСтрокиЗначенияДерева(
Данные, Ошибки, "ДополнительныеСведенияОбУчастниках.ЗакупкаДляГосударственныхНужд.КодЦели", 20, 20);
Возврат Ошибки;
@@ -957,19 +971,19 @@
Ошибки = Неопределено;
- ПроверитьДлинуСтрокиЗначенияДерева(
+ ДеревоЭлектронногоДокументаБЭД.ПроверитьДлинуСтрокиЗначенияДерева(
Данные, Ошибки, "ЗакупкаДляГосударственныхНужд.НомерЛицевогоСчетаПокупателя", 11, 11);
- ПроверитьДлинуСтрокиЗначенияДерева(
+ ДеревоЭлектронногоДокументаБЭД.ПроверитьДлинуСтрокиЗначенияДерева(
Данные, Ошибки, "ЗакупкаДляГосударственныхНужд.НомерРеестровойЗаписиПокупателя", 8, 8);
- ПроверитьДлинуСтрокиЗначенияДерева(
+ ДеревоЭлектронногоДокументаБЭД.ПроверитьДлинуСтрокиЗначенияДерева(
Данные, Ошибки, "ЗакупкаДляГосударственныхНужд.НомерБюджетногоОбязательстваПокупателя", 16, 19);
- ПроверитьДлинуСтрокиЗначенияДерева(
+ ДеревоЭлектронногоДокументаБЭД.ПроверитьДлинуСтрокиЗначенияДерева(
Данные, Ошибки, "ЗакупкаДляГосударственныхНужд.КазначействоПокупателяКод", 4, 4);
- ПроверитьДлинуСтрокиЗначенияДерева(
+ ДеревоЭлектронногоДокументаБЭД.ПроверитьДлинуСтрокиЗначенияДерева(
Данные, Ошибки, "ЗакупкаДляГосударственныхНужд.НомерДенежногоОбязательства", 22, 22);
- ПроверитьДлинуСтрокиЗначенияДерева(
+ ДеревоЭлектронногоДокументаБЭД.ПроверитьДлинуСтрокиЗначенияДерева(
Данные, Ошибки, "ЗакупкаДляГосударственныхНужд.ОКТМОПокупателя", 8, 11);
- ПроверитьДлинуСтрокиЗначенияДерева(
+ ДеревоЭлектронногоДокументаБЭД.ПроверитьДлинуСтрокиЗначенияДерева(
Данные, Ошибки, "ЗакупкаДляГосударственныхНужд.ОКТМОМестаПоставки", 8, 11);
НомерСтроки = 1;
@@ -977,7 +991,7 @@
СтрокаДереваДенежныеОбязательства = СтрокаДереваЗакупкаДляГосударственныхНужд.Строки.Найти("ДенежныеОбязательства");
Для Каждого Обязательство Из СтрокаДереваДенежныеОбязательства.Строки Цикл
- ПроверитьДлинуСтрокиЗначенияДерева(Обязательство, Ошибки,
+ ДеревоЭлектронногоДокументаБЭД.ПроверитьДлинуСтрокиЗначенияДерева(Обязательство, Ошибки,
"ЗакупкаДляГосударственныхНужд.ДенежныеОбязательства.НомерСтроки.КодБюджетнойКлассификации", 20, 20, НомерСтроки);
НомерСтроки = НомерСтроки + 1;
КонецЦикла;
@@ -992,8 +1006,8 @@
// Данные - ДеревоЗначений - дерево для проверки.
//
// Возвращаемое значение:
-// Неопределено, Массив - ошибки, накопленные за время проверки. Элементами массива являются структуры.
-// Состав структур см. в ОбщегоНазначенияБЭДКлиентСервер.НовыеПараметрыОшибки.
+// Неопределено,
+// Массив из Структура см. ОбщегоНазначенияБЭДКлиентСервер.НовыеПараметрыОшибки.
//
Функция ПроверитьЗаполнениеДанных_УПД_5_02_ИнформацияПродавца(Данные)
@@ -1094,8 +1108,6 @@
Путь = "СведенияОПередаче.Операция";
ПроверитьДатуОтгрузкиУПД(Данные, ФункцияУПД, Ошибки, Путь);
- КлассификаторЕдиницИзмерения = ФорматыЭДО.КлассификаторЕдиницИзмерения();
-
// Сведения о товарах.
Путь = "ТаблицаСчетаФактуры.СведенияОбОтгруженныхПозициях";
НомерСтроки = 1;
@@ -1147,9 +1159,9 @@
Если ТипЗнч(Реквизит) = Тип("Число") И Реквизит > 0 Тогда
СтрокиТД = Товар.Строки.Найти(Путь + ".НомерСтроки.СведенияОПрослеживаемости", "ПолныйПуть", Истина);
Для Каждого СтрокаТД Из СтрокиТД.Строки Цикл
- ПроверитьДлинуСтрокиЗначенияДерева(
+ ДеревоЭлектронногоДокументаБЭД.ПроверитьДлинуСтрокиЗначенияДерева(
СтрокаТД, Ошибки, Путь + ".НомерСтроки.СведенияОПрослеживаемости.НомерСтроки.НомерТовара", 27, 29);
- ПроверитьДлинуСтрокиЗначенияДерева(
+ ДеревоЭлектронногоДокументаБЭД.ПроверитьДлинуСтрокиЗначенияДерева(
СтрокаТД, Ошибки, Путь + ".НомерСтроки.СведенияОПрослеживаемости.НомерСтроки.ЕдиницаИзмеренияКод", 3, 4);
КонецЦикла;
КонецЕсли;
@@ -1182,8 +1194,10 @@
КонецЕсли;
КонецЕсли;
- ПроверитьДлинуСтрокиЗначенияДерева(Товар, Ошибки, Путь + ".НомерСтроки.КодКаталога", 27, 27, НомерСтроки);
- ПроверитьДлинуСтрокиЗначенияДерева(Товар, Ошибки, Путь + ".НомерСтроки.КодВидаТовара", 10, 10, НомерСтроки);
+ ДеревоЭлектронногоДокументаБЭД.ПроверитьДлинуСтрокиЗначенияДерева(Товар, Ошибки,
+ Путь + ".НомерСтроки.КодКаталога", 27, 27, НомерСтроки);
+ ДеревоЭлектронногоДокументаБЭД.ПроверитьДлинуСтрокиЗначенияДерева(Товар, Ошибки,
+ Путь + ".НомерСтроки.КодВидаТовара", 10, 10, НомерСтроки);
НомерСтроки = НомерСтроки + 1;
@@ -1221,13 +1235,13 @@
КонецЕсли;
Путь = "СведенияОСчетеФактуре.ДополнительныеСведенияОбУчастниках.";
- ПроверитьДлинуСтрокиЗначенияДерева(
+ ДеревоЭлектронногоДокументаБЭД.ПроверитьДлинуСтрокиЗначенияДерева(
Данные, Ошибки, Путь + "ИдентификаторГосКонтракта", 20, 25);
- ПроверитьДлинуСтрокиЗначенияДерева(
+ ДеревоЭлектронногоДокументаБЭД.ПроверитьДлинуСтрокиЗначенияДерева(
Данные, Ошибки, Путь + "СведенияОГосКонтракте.НомерСчетаПродавца", 11, 11);
- ПроверитьДлинуСтрокиЗначенияДерева(
+ ДеревоЭлектронногоДокументаБЭД.ПроверитьДлинуСтрокиЗначенияДерева(
Данные, Ошибки, Путь + "СведенияОГосКонтракте.КодПоБюджетнойКлассификации", 20, 20);
- ПроверитьДлинуСтрокиЗначенияДерева(
+ ДеревоЭлектронногоДокументаБЭД.ПроверитьДлинуСтрокиЗначенияДерева(
Данные, Ошибки, Путь + "СведенияОГосКонтракте.КодЦели", 20, 20);
Возврат Ошибки;
@@ -1240,26 +1254,26 @@
// Данные - ДеревоЗначений - дерево для проверки.
//
// Возвращаемое значение:
-// Неопределено, Массив - ошибки, накопленные за время проверки. Элементами массива являются структуры.
-// Состав структур см. в ОбщегоНазначенияБЭДКлиентСервер.НовыеПараметрыОшибки.
+// Неопределено,
+// Массив из Структура см. ОбщегоНазначенияБЭДКлиентСервер.НовыеПараметрыОшибки.
//
Функция ПроверитьЗаполнениеДанных_УПД_5_02_ИнформацияПокупателя(Данные)
Ошибки = Неопределено;
- ПроверитьДлинуСтрокиЗначенияДерева(
+ ДеревоЭлектронногоДокументаБЭД.ПроверитьДлинуСтрокиЗначенияДерева(
Данные, Ошибки, "ЗакупкаДляГосударственныхНужд.НомерЛицевогоСчетаПокупателя", 11, 11);
- ПроверитьДлинуСтрокиЗначенияДерева(
+ ДеревоЭлектронногоДокументаБЭД.ПроверитьДлинуСтрокиЗначенияДерева(
Данные, Ошибки, "ЗакупкаДляГосударственныхНужд.НомерРеестровойЗаписиПокупателя", 8, 8);
- ПроверитьДлинуСтрокиЗначенияДерева(
+ ДеревоЭлектронногоДокументаБЭД.ПроверитьДлинуСтрокиЗначенияДерева(
Данные, Ошибки, "ЗакупкаДляГосударственныхНужд.НомерБюджетногоОбязательстваПокупателя", 16, 19);
- ПроверитьДлинуСтрокиЗначенияДерева(
+ ДеревоЭлектронногоДокументаБЭД.ПроверитьДлинуСтрокиЗначенияДерева(
Данные, Ошибки, "ЗакупкаДляГосударственныхНужд.КазначействоПокупателяКод", 4, 4);
- ПроверитьДлинуСтрокиЗначенияДерева(
+ ДеревоЭлектронногоДокументаБЭД.ПроверитьДлинуСтрокиЗначенияДерева(
Данные, Ошибки, "ЗакупкаДляГосударственныхНужд.НомерДенежногоОбязательства", 22, 22);
- ПроверитьДлинуСтрокиЗначенияДерева(
+ ДеревоЭлектронногоДокументаБЭД.ПроверитьДлинуСтрокиЗначенияДерева(
Данные, Ошибки, "ЗакупкаДляГосударственныхНужд.ОКТМОПокупателя", 8, 11);
- ПроверитьДлинуСтрокиЗначенияДерева(
+ ДеревоЭлектронногоДокументаБЭД.ПроверитьДлинуСтрокиЗначенияДерева(
Данные, Ошибки, "ЗакупкаДляГосударственныхНужд.ОКТМОМестаПоставки", 8, 11);
НомерСтроки = 1;
@@ -1267,7 +1281,7 @@
СтрокаДереваДенежныеОбязательства = СтрокаДереваЗакупкаДляГосударственныхНужд.Строки.Найти("ДенежныеОбязательства");
Для Каждого Обязательство Из СтрокаДереваДенежныеОбязательства.Строки Цикл
- ПроверитьДлинуСтрокиЗначенияДерева(Обязательство, Ошибки,
+ ДеревоЭлектронногоДокументаБЭД.ПроверитьДлинуСтрокиЗначенияДерева(Обязательство, Ошибки,
"ЗакупкаДляГосударственныхНужд.ДенежныеОбязательства.НомерСтроки.КодБюджетнойКлассификации", 20, 20, НомерСтроки);
НомерСтроки = НомерСтроки + 1;
КонецЦикла;
@@ -1282,8 +1296,8 @@
// Данные - ДеревоЗначений - дерево для проверки.
//
// Возвращаемое значение:
-// Неопределено, Массив - ошибки, накопленные за время проверки. Элементами массива являются структуры.
-// Состав структур см. в ОбщегоНазначенияБЭДКлиентСервер.НовыеПараметрыОшибки.
+// Неопределено,
+// Массив - из Структура см. ОбщегоНазначенияБЭДКлиентСервер.НовыеПараметрыОшибки.
//
Функция ПроверитьЗаполнениеДанных_УПД_5_03_ИнформацияПродавца(Данные)
@@ -1469,10 +1483,10 @@
Если ТипЗнч(Реквизит) = Тип("Число") И Реквизит > 0 Тогда
СтрокиТД = Товар.Строки.Найти(Путь + ".НомерСтроки.СведенияОПрослеживаемости", "ПолныйПуть", Истина);
Для Каждого СтрокаТД Из СтрокиТД.Строки Цикл
- ПроверитьДлинуСтрокиЗначенияДерева(
- СтрокаТД, Ошибки, Путь + ".НомерСтроки.СведенияОПрослеживаемости.НомерСтроки.НомерТовара", 25, 29);
- ПроверитьДлинуСтрокиЗначенияДерева(
- СтрокаТД, Ошибки, Путь + ".НомерСтроки.СведенияОПрослеживаемости.НомерСтроки.ЕдиницаИзмеренияКод", 3, 4);
+ ДеревоЭлектронногоДокументаБЭД.ПроверитьДлинуСтрокиЗначенияДерева(
+ СтрокаТД, Ошибки, Путь + ".НомерСтроки.СведенияОПрослеживаемости.НомерСтроки.НомерТовара", 25, 29, НомерСтроки);
+ ДеревоЭлектронногоДокументаБЭД.ПроверитьДлинуСтрокиЗначенияДерева(
+ СтрокаТД, Ошибки, Путь + ".НомерСтроки.СведенияОПрослеживаемости.НомерСтроки.ЕдиницаИзмеренияКод", 3, 4, НомерСтроки);
ЕдиницаИзмеренияКодСтрокаДерева = Неопределено;
ЕдиницаИзмеренияКод = ДеревоЭлектронногоДокументаБЭД.ЗначениеРеквизитаВДереве(СтрокаТД, Путь
+ ".НомерСтроки.СведенияОПрослеживаемости.НомерСтроки.ЕдиницаИзмеренияКод", ,
@@ -1494,6 +1508,33 @@
КонецЦикла;
КонецЕсли;
+ // Если есть КИЗ и НомУпак, проверяем на заполненность
+ Реквизит = ДеревоЭлектронногоДокументаБЭД.ЗначениеРеквизитаВДереве(Товар, Путь + ".НомерСтроки.СведенияОМаркировке");
+ Если ТипЗнч(Реквизит) = Тип("Число") И Реквизит > 0 Тогда
+ СтрокиТД = Товар.Строки.Найти(Путь + ".НомерСтроки.СведенияОМаркировке", "ПолныйПуть", Истина);
+ Для Каждого СтрокаТД Из СтрокиТД.Строки Цикл
+
+ ИдентификаторПуть = Путь + ".НомерСтроки.СведенияОМаркировке.НомерСтроки.Идентификатор";
+
+ КонтрольныеЗнаки = СтрокаТД.Строки.Найти(ИдентификаторПуть + ".КонтрольныеЗнаки", "ПолныйПуть", Истина);
+ Если ЗначениеЗаполнено(КонтрольныеЗнаки.Значение) Тогда
+ Для Каждого СтрокаКИЗ Из КонтрольныеЗнаки.Строки Цикл
+ ДеревоЭлектронногоДокументаБЭД.ПроверитьЗаполненностьЗначенияДерева(СтрокаКИЗ, Ошибки,
+ ИдентификаторПуть + ".КонтрольныеЗнаки.НомерСтроки.КонтрольныйЗнак", НомерСтроки);
+ КонецЦикла;
+ КонецЕсли;
+
+ ИдентификаторыУпаковок = СтрокаТД.Строки.Найти(ИдентификаторПуть + ".ИдентификаторыУпаковок", "ПолныйПуть", Истина);
+ Если ЗначениеЗаполнено(ИдентификаторыУпаковок.Значение) Тогда
+ Для Каждого СтрокаИУ Из ИдентификаторыУпаковок.Строки Цикл
+ ДеревоЭлектронногоДокументаБЭД.ПроверитьЗаполненностьЗначенияДерева(СтрокаИУ, Ошибки,
+ ИдентификаторПуть + ".ИдентификаторыУпаковок.НомерСтроки.ИдентификаторУпаковки", НомерСтроки);
+ КонецЦикла;
+ КонецЕсли;
+
+ КонецЦикла;
+ КонецЕсли;
+
// ПрТовРаб - признак товара должен принадлежать определенному перечню
ПризнакТовараСтрокаДерева = Неопределено;
ПризнакТовара = ДеревоЭлектронногоДокументаБЭД.ЗначениеРеквизитаВДереве(Товар,
@@ -1522,8 +1563,10 @@
КонецЕсли;
КонецЕсли;
- ПроверитьДлинуСтрокиЗначенияДерева(Товар, Ошибки, Путь + ".НомерСтроки.КодКаталога", 27, 27, НомерСтроки);
- ПроверитьДлинуСтрокиЗначенияДерева(Товар, Ошибки, Путь + ".НомерСтроки.КодВидаТовара", 10, 10, НомерСтроки);
+ ДеревоЭлектронногоДокументаБЭД.ПроверитьДлинуСтрокиЗначенияДерева(Товар, Ошибки,
+ Путь + ".НомерСтроки.КодКаталога", 27, 27, НомерСтроки);
+ ДеревоЭлектронногоДокументаБЭД.ПроверитьДлинуСтрокиЗначенияДерева(Товар, Ошибки,
+ Путь + ".НомерСтроки.КодВидаТовара", 10, 10, НомерСтроки);
НомерСтроки = НомерСтроки + 1;
@@ -1592,13 +1635,13 @@
КонецЕсли;
Путь = "СведенияОСчетеФактуре.ДополнительныеСведенияОбУчастниках.";
- ПроверитьДлинуСтрокиЗначенияДерева(
+ ДеревоЭлектронногоДокументаБЭД.ПроверитьДлинуСтрокиЗначенияДерева(
Данные, Ошибки, Путь + "ИдентификаторГосКонтракта", 20, 25);
- ПроверитьДлинуСтрокиЗначенияДерева(
+ ДеревоЭлектронногоДокументаБЭД.ПроверитьДлинуСтрокиЗначенияДерева(
Данные, Ошибки, Путь + "СведенияОГосКонтракте.НомерСчетаПродавца", 11, 11);
- ПроверитьДлинуСтрокиЗначенияДерева(
+ ДеревоЭлектронногоДокументаБЭД.ПроверитьДлинуСтрокиЗначенияДерева(
Данные, Ошибки, Путь + "СведенияОГосКонтракте.КодПоБюджетнойКлассификации", 20, 20);
- ПроверитьДлинуСтрокиЗначенияДерева(
+ ДеревоЭлектронногоДокументаБЭД.ПроверитьДлинуСтрокиЗначенияДерева(
Данные, Ошибки, Путь + "СведенияОГосКонтракте.КодЦели", 20, 20);
Возврат Ошибки;
@@ -1611,26 +1654,26 @@
// Данные - ДеревоЗначений - дерево для проверки.
//
// Возвращаемое значение:
-// Неопределено, Массив - ошибки, накопленные за время проверки. Элементами массива являются структуры.
-// Состав структур см. в ОбщегоНазначенияБЭДКлиентСервер.НовыеПараметрыОшибки.
+// Неопределено,
+// Массив из Структура см. ОбщегоНазначенияБЭДКлиентСервер.НовыеПараметрыОшибки.
//
Функция ПроверитьЗаполнениеДанных_УПД_5_03_ИнформацияПокупателя(Данные)
Ошибки = Неопределено;
- ПроверитьДлинуСтрокиЗначенияДерева(
+ ДеревоЭлектронногоДокументаБЭД.ПроверитьДлинуСтрокиЗначенияДерева(
Данные, Ошибки, "ЗакупкаДляГосударственныхНужд.НомерЛицевогоСчетаПокупателя", 11, 11);
- ПроверитьДлинуСтрокиЗначенияДерева(
+ ДеревоЭлектронногоДокументаБЭД.ПроверитьДлинуСтрокиЗначенияДерева(
Данные, Ошибки, "ЗакупкаДляГосударственныхНужд.НомерРеестровойЗаписиПокупателя", 8, 8);
- ПроверитьДлинуСтрокиЗначенияДерева(
+ ДеревоЭлектронногоДокументаБЭД.ПроверитьДлинуСтрокиЗначенияДерева(
Данные, Ошибки, "ЗакупкаДляГосударственныхНужд.НомерБюджетногоОбязательстваПокупателя", 16, 19);
- ПроверитьДлинуСтрокиЗначенияДерева(
+ ДеревоЭлектронногоДокументаБЭД.ПроверитьДлинуСтрокиЗначенияДерева(
Данные, Ошибки, "ЗакупкаДляГосударственныхНужд.КазначействоПокупателяКод", 4, 4);
- ПроверитьДлинуСтрокиЗначенияДерева(
+ ДеревоЭлектронногоДокументаБЭД.ПроверитьДлинуСтрокиЗначенияДерева(
Данные, Ошибки, "ЗакупкаДляГосударственныхНужд.НомерДенежногоОбязательства", 22, 22);
- ПроверитьДлинуСтрокиЗначенияДерева(
+ ДеревоЭлектронногоДокументаБЭД.ПроверитьДлинуСтрокиЗначенияДерева(
Данные, Ошибки, "ЗакупкаДляГосударственныхНужд.ОКТМОПокупателя", 8, 11);
- ПроверитьДлинуСтрокиЗначенияДерева(
+ ДеревоЭлектронногоДокументаБЭД.ПроверитьДлинуСтрокиЗначенияДерева(
Данные, Ошибки, "ЗакупкаДляГосударственныхНужд.ОКТМОМестаПоставки", 8, 11);
НомерСтроки = 1;
@@ -1638,7 +1681,7 @@
СтрокаДереваДенежныеОбязательства = СтрокаДереваЗакупкаДляГосударственныхНужд.Строки.Найти("ДенежныеОбязательства");
Для Каждого Обязательство Из СтрокаДереваДенежныеОбязательства.Строки Цикл
- ПроверитьДлинуСтрокиЗначенияДерева(Обязательство, Ошибки,
+ ДеревоЭлектронногоДокументаБЭД.ПроверитьДлинуСтрокиЗначенияДерева(Обязательство, Ошибки,
"ЗакупкаДляГосударственныхНужд.ДенежныеОбязательства.НомерСтроки.КодБюджетнойКлассификации", 20, 20, НомерСтроки);
НомерСтроки = НомерСтроки + 1;
КонецЦикла;
@@ -2342,6 +2385,55 @@
КонецФункции
+Функция ПроверитьЗаполнениеДанных_ПредложениеОбАннулировании(Данные)
+
+ Ошибки = Неопределено;
+ ТипДокумента = Перечисления.ТипыДокументовЭДО.ПредложениеОбАннулировании;
+ ПроверитьСведенияОбИностранномУчастникеСлужебногоСообщения(Данные, ТипДокумента, Ошибки);
+
+ Возврат Ошибки;
+
+КонецФункции
+
+Функция ПроверитьЗаполнениеДанных_ИзвещениеОПолучении(Данные)
+
+ Ошибки = Неопределено;
+ ТипДокумента = Перечисления.ТипыДокументовЭДО.ИзвещениеОПолучении;
+ ПроверитьСведенияОбИностранномУчастникеСлужебногоСообщения(Данные, ТипДокумента, Ошибки);
+
+ Возврат Ошибки;
+
+КонецФункции
+
+Функция ПроверитьЗаполнениеДанных_УведомлениеОбУточнении(Данные)
+
+ Ошибки = Неопределено;
+ ТипДокумента = Перечисления.ТипыДокументовЭДО.УведомлениеОбУточнении;
+ ПроверитьСведенияОбИностранномУчастникеСлужебногоСообщения(Данные, ТипДокумента, Ошибки);
+
+ Возврат Ошибки;
+
+КонецФункции
+
+Функция ПроверитьЗаполнениеДанных_АктОРасхождениях_ДополнительныеСведения(Данные)
+
+ Ошибки = Неопределено;
+
+ Если ДеревоЭлектронногоДокументаБЭД.СуществуетРеквизитВДереве(Данные, "СведенияОтправителя") Тогда
+ СведенияОтправителя = ДеревоЭлектронногоДокументаБЭД.ДанныеЭлементаДереваЭлектронногоДокумента(
+ Данные, "СведенияОтправителя");
+
+ Если Не ЗначениеЗаполнено(СведенияОтправителя.ИдентификаторФайла) Тогда
+ ТекстОшибки = НСтр("ru = 'Файл результатов приемки не был создан из-за ошибки создания основного файла.'");
+ ДеревоЭлектронногоДокументаБЭД.ДобавитьОшибкуПроверкиДереваДанных(Ошибки, Неопределено, ТекстОшибки, Ложь);
+ КонецЕсли;
+
+ КонецЕсли;
+
+ Возврат Ошибки;
+
+КонецФункции
+
#КонецОбласти
#Область МетодыПроверки
@@ -2386,31 +2478,6 @@
Возврат "ДИС";
КонецФункции
-Процедура ПроверитьДлинуСтрокиЗначенияДерева(ДеревоДанных, Ошибки, ПолноеИмяРеквизита,
- МинимальнаяДлина, МаксимальнаяДлина, НомерСтроки = Неопределено)
-
- РеквизитСтрокаДерева = Неопределено;
- Реквизит = ДеревоЭлектронногоДокументаБЭД.ЗначениеРеквизитаВДереве(ДеревоДанных,
- ПолноеИмяРеквизита, Ложь, РеквизитСтрокаДерева);
-
- Если ЗначениеЗаполнено(Реквизит) Тогда
- Если СтрДлина(Реквизит) < МинимальнаяДлина
- ИЛИ МаксимальнаяДлина < СтрДлина(Реквизит) Тогда
- ТекстОшибки = "";
- Если МинимальнаяДлина = МаксимальнаяДлина Тогда
- ШаблонОшибки = НСтр("ru = 'длина значения должна быть равна %1, указано %2'");
- ТекстОшибки = СтрШаблон(ШаблонОшибки, МинимальнаяДлина, СокрЛП(Реквизит));
- Иначе
- ШаблонОшибки = НСтр("ru = 'значение должно содержать от %1 до %2 символов, указано %3'");
- ТекстОшибки = СтрШаблон(ШаблонОшибки, МинимальнаяДлина, МаксимальнаяДлина, СокрЛП(Реквизит));
- КонецЕсли;
- ДеревоЭлектронногоДокументаБЭД.ДобавитьОшибкуПроверкиДереваДанных(Ошибки, РеквизитСтрокаДерева,
- ТекстОшибки,, НомерСтроки);
- КонецЕсли;
- КонецЕсли;
-
-КонецПроцедуры
-
Процедура ПроверитьКодВалютыФНС(ДеревоДанных, Ошибки, ПолныйПуть = "ВалютаКод")
НайденнаяСтрокаРеквизита = Неопределено;
@@ -2622,14 +2689,14 @@
// БанковскиеРеквизиты - проверка длины переданных значений
Если ДействуетСхемаУПД_5_03_04 Тогда
- ПроверитьДлинуСтрокиЗначенияДерева(
+ ДеревоЭлектронногоДокументаБЭД.ПроверитьДлинуСтрокиЗначенияДерева(
ДеревоДанных, Ошибки, ВидУчастника + ".БанковскиеРеквизиты.НомерСчета", 1, 34);
- ПроверитьДлинуСтрокиЗначенияДерева(
+ ДеревоЭлектронногоДокументаБЭД.ПроверитьДлинуСтрокиЗначенияДерева(
ДеревоДанных, Ошибки, ВидУчастника + ".БанковскиеРеквизиты.КорреспондентскийСчетБанка", 1, 34);
Иначе
- ПроверитьДлинуСтрокиЗначенияДерева(
+ ДеревоЭлектронногоДокументаБЭД.ПроверитьДлинуСтрокиЗначенияДерева(
ДеревоДанных, Ошибки, ВидУчастника + ".БанковскиеРеквизиты.НомерСчета", 1, 20);
- ПроверитьДлинуСтрокиЗначенияДерева(
+ ДеревоЭлектронногоДокументаБЭД.ПроверитьДлинуСтрокиЗначенияДерева(
ДеревоДанных, Ошибки, ВидУчастника + ".БанковскиеРеквизиты.КорреспондентскийСчетБанка", 1, 20);
КонецЕсли;
@@ -2649,10 +2716,10 @@
ИначеЕсли АдресУчастника = "АдресРФ" Или АдресУчастника = "АдресГАР" Тогда
Если ДействуетСхемаУПД_5_03_04 Тогда
- ПроверитьДлинуСтрокиЗначенияДерева(ДеревоДанных, Ошибки,
+ ДеревоЭлектронногоДокументаБЭД.ПроверитьДлинуСтрокиЗначенияДерева(ДеревоДанных, Ошибки,
ВидУчастника + ".Адрес.ТипАдреса." + АдресУчастника + ".НаименованиеРегиона", 1, 51);
Иначе
- ПроверитьДлинуСтрокиЗначенияДерева(ДеревоДанных, Ошибки,
+ ДеревоЭлектронногоДокументаБЭД.ПроверитьДлинуСтрокиЗначенияДерева(ДеревоДанных, Ошибки,
ВидУчастника + ".Адрес.ТипАдреса." + АдресУчастника + ".НаименованиеРегиона", 1, 50);
КонецЕсли;
@@ -3719,6 +3786,184 @@
КонецПроцедуры
+// Возвращает описание проверок иностранной организации участника служебного сообщения.
+//
+// Возвращаемое значение:
+// Структура - Новое описание проверок участника иностранной организации:
+// * ТребуетсяПроверкаИдентификацииСтатуса - Булево - ИдСтат.
+// * ТребуетсяПроверкаКодаСтраны - Булево - КодСтр.
+// * ТребуетсяПроверкаНаименованияСтраны - Булево - НаимСтран.
+// * ТребуетсяПроверкаСтраныРегистрации - Булево - СтрРег.
+// * ТребуетсяПроверкаНаименованияОрганизации - Булево - Наим.
+// * ТребуетсяПроверкаИдентификатораОрганизации - Булево - Идентиф.
+// * ТребуетсяПроверкаКодаНалогоплательщика - Булево - КодНПРег.
+Функция НовоеОписаниеПроверокУчастникаИностраннойОрганизации()
+
+ ОписаниеПроверокУчастника = Новый Структура();
+ ОписаниеПроверокУчастника.Вставить("ТребуетсяПроверкаИдентификацииСтатуса", Ложь);
+ ОписаниеПроверокУчастника.Вставить("ТребуетсяПроверкаКодаСтраны", Ложь);
+ ОписаниеПроверокУчастника.Вставить("ТребуетсяПроверкаНаименованияСтраны", Ложь);
+ ОписаниеПроверокУчастника.Вставить("ТребуетсяПроверкаСтраныРегистрации", Ложь);
+ ОписаниеПроверокУчастника.Вставить("ТребуетсяПроверкаНаименованияОрганизации", Ложь);
+ ОписаниеПроверокУчастника.Вставить("ТребуетсяПроверкаИдентификатораОрганизации", Ложь);
+ ОписаниеПроверокУчастника.Вставить("ТребуетсяПроверкаКодаНалогоплательщика", Ложь);
+
+ Возврат ОписаниеПроверокУчастника;
+
+КонецФункции
+
+// Получить проверки участника по типу документа.
+//
+// Параметры:
+// ТипДокумента - ПеречислениеСсылка.ТипыДокументовЭДО
+//
+// Возвращаемое значение:
+// Структура из см. НовоеОписаниеПроверокУчастникаИностраннойОрганизаци
+//
+Функция ПолучитьПроверкиИностранногоУчастникаПоТипуДокумента(ТипДокумента)
+
+ ПроверкиУчастника = НовоеОписаниеПроверокУчастникаИностраннойОрганизации();
+
+ Если ТипДокумента = Перечисления.ТипыДокументовЭДО.ИзвещениеОПолучении
+ Или ТипДокумента = Перечисления.ТипыДокументовЭДО.УведомлениеОбУточнении Тогда
+ ПроверкиУчастника.ТребуетсяПроверкаИдентификацииСтатуса = Истина;
+ ПроверкиУчастника.ТребуетсяПроверкаСтраныРегистрации = Истина;
+ ПроверкиУчастника.ТребуетсяПроверкаНаименованияОрганизации = Истина;
+ ПроверкиУчастника.ТребуетсяПроверкаКодаНалогоплательщика = Истина;
+ КонецЕсли;
+
+ Если ТипДокумента = Перечисления.ТипыДокументовЭДО.ПредложениеОбАннулировании Тогда
+ ПроверкиУчастника.ТребуетсяПроверкаИдентификацииСтатуса = Истина;
+ ПроверкиУчастника.ТребуетсяПроверкаКодаСтраны = Истина;
+ ПроверкиУчастника.ТребуетсяПроверкаНаименованияСтраны = Истина;
+ ПроверкиУчастника.ТребуетсяПроверкаНаименованияОрганизации = Истина;
+ ПроверкиУчастника.ТребуетсяПроверкаИдентификатораОрганизации = Истина;
+ КонецЕсли;
+
+ Возврат ПроверкиУчастника;
+
+КонецФункции
+
+// Параметры:
+// ДеревоДанных - ДеревоЗначений - Дерево данных ЭД
+// ТипДокумента - ПеречислениеСсылка.ТипыДокументовЭДО
+// Ошибки - Массив Из см. ОбщегоНазначенияБЭДКлиентСервер.НовыеПараметрыОшибки -
+// Ошибки выявленные при проверке документа
+//
+Процедура ПроверитьСведенияОбИностранномУчастникеСлужебногоСообщения(ДеревоДанных, ТипДокумента, Ошибки)
+
+ ТипУчастника = ДеревоЭлектронногоДокументаБЭД.ЗначениеРеквизитаВДереве(ДеревоДанных, "Получатель.ТипУчастника");
+
+ Если Не ТипУчастника = "СвИнУчастНеУч" Тогда
+ Возврат;
+ КонецЕсли;
+
+ ПроверкиУчастника = ПолучитьПроверкиИностранногоУчастникаПоТипуДокумента(ТипДокумента);
+
+ Если ПроверкиУчастника.ТребуетсяПроверкаИдентификацииСтатуса Тогда
+
+ ИдентификацияСтатусаСтрокаДерева = Неопределено;
+ ИдентификацияСтатуса = ДеревоЭлектронногоДокументаБЭД.ЗначениеРеквизитаВДереве(ДеревоДанных,
+ "Получатель.ТипУчастника.СвИнУчастНеУч.ИдСтат", Ложь, ИдентификацияСтатусаСтрокаДерева);
+
+ Если Не ЗначениеЗаполнено(ИдентификацияСтатуса) Тогда
+ ТекстОшибки = НСтр(
+ "ru = 'Не указано значение идентификатора статуса иностранной организации (иностранного гражданина)'");
+ ДеревоЭлектронногоДокументаБЭД.ДобавитьОшибкуПроверкиДереваДанных(Ошибки, ИдентификацияСтатусаСтрокаДерева,
+ ТекстОшибки, Ложь);
+ КонецЕсли;
+
+ КонецЕсли;
+
+ Если ПроверкиУчастника.ТребуетсяПроверкаКодаСтраны Тогда
+
+ КодСтраныСтрокаДеререва = Неопределено;
+ КодСтраны = ДеревоЭлектронногоДокументаБЭД.ЗначениеРеквизитаВДереве(ДеревоДанных,
+ "Получатель.ТипУчастника.СвИнУчастНеУч.КодСтр", Ложь, КодСтраныСтрокаДеререва);
+
+ Если Не ЗначениеЗаполнено(КодСтраны) Тогда
+ ТекстОшибки = НСтр("ru = 'Не указан код страны иностранной организации (иностранного гражданина).'");
+ ДеревоЭлектронногоДокументаБЭД.ДобавитьОшибкуПроверкиДереваДанных(Ошибки, КодСтраныСтрокаДеререва,
+ ТекстОшибки, Ложь);
+ КонецЕсли;
+
+ КонецЕсли;
+
+ Если ПроверкиУчастника.ТребуетсяПроверкаНаименованияСтраны Тогда
+
+ НаименованиеСтраныСтрокаДерева = Неопределено;
+ НаименованиеСтраны = ДеревоЭлектронногоДокументаБЭД.ЗначениеРеквизитаВДереве(ДеревоДанных,
+ "Получатель.ТипУчастника.СвИнУчастНеУч.НаимСтран", Ложь, НаименованиеСтраныСтрокаДерева);
+
+ Если Не ЗначениеЗаполнено(НаименованиеСтраны) Тогда
+ ТекстОшибки = НСтр(
+ "ru = 'Не указано наименование страны иностранной организации (иностранного гражданина).'");
+ ДеревоЭлектронногоДокументаБЭД.ДобавитьОшибкуПроверкиДереваДанных(Ошибки, НаименованиеСтраныСтрокаДерева,
+ ТекстОшибки, Ложь);
+ КонецЕсли;
+
+ КонецЕсли;
+
+ Если ПроверкиУчастника.ТребуетсяПроверкаСтраныРегистрации Тогда
+
+ СтранаРегистрацииСтрокаДерева = Неопределено;
+ СтранаРегистрации = ДеревоЭлектронногоДокументаБЭД.ЗначениеРеквизитаВДереве(ДеревоДанных,
+ "Получатель.ТипУчастника.СвИнУчастНеУч.СтрРег", Ложь, СтранаРегистрацииСтрокаДерева);
+
+ Если Не ЗначениеЗаполнено(СтранаРегистрации) Тогда
+ ТекстОшибки = НСтр(
+ "ru = 'Не указано наименование страны иностранной организации (иностранного гражданина).'");
+ ДеревоЭлектронногоДокументаБЭД.ДобавитьОшибкуПроверкиДереваДанных(Ошибки, СтранаРегистрацииСтрокаДерева,
+ ТекстОшибки, Ложь);
+ КонецЕсли;
+
+ КонецЕсли;
+
+ Если ПроверкиУчастника.ТребуетсяПроверкаНаименованияОрганизации Тогда
+
+ НаименованиеОрганизацииСтрокаДерева = Неопределено;
+ НаименованиеОрганизации = ДеревоЭлектронногоДокументаБЭД.ЗначениеРеквизитаВДереве(ДеревоДанных,
+ "Получатель.ТипУчастника.СвИнУчастНеУч.Наим", Ложь, НаименованиеОрганизацииСтрокаДерева);
+
+ Если Не ЗначениеЗаполнено(НаименованиеОрганизации) Тогда
+ ТекстОшибки = НСтр("ru = 'Не указано наименование иностранной организации (иностранного гражданина).'");
+ ДеревоЭлектронногоДокументаБЭД.ДобавитьОшибкуПроверкиДереваДанных(Ошибки,
+ НаименованиеОрганизацииСтрокаДерева, ТекстОшибки, Ложь);
+ КонецЕсли;
+
+ КонецЕсли;
+
+ Если ПроверкиУчастника.ТребуетсяПроверкаИдентификатораОрганизации Тогда
+
+ ИдентификаторОрганизацииСтрокаДерева = Неопределено;
+ ИдентификаторОрганизации = ДеревоЭлектронногоДокументаБЭД.ЗначениеРеквизитаВДереве(ДеревоДанных,
+ "Получатель.ТипУчастника.СвИнУчастНеУч.Идентиф", Ложь, ИдентификаторОрганизацииСтрокаДерева);
+
+ Если Не ЗначениеЗаполнено(ИдентификаторОрганизации) Тогда
+ ТекстОшибки = НСтр("ru = 'Не указан идентификатор иностранной организации (иностранного гражданина).'");
+ ДеревоЭлектронногоДокументаБЭД.ДобавитьОшибкуПроверкиДереваДанных(Ошибки,
+ ИдентификаторОрганизацииСтрокаДерева, ТекстОшибки, Ложь);
+ КонецЕсли;
+
+ КонецЕсли;
+
+ Если ПроверкиУчастника.ТребуетсяПроверкаКодаНалогоплательщика Тогда
+
+ КодНалогоплательщикаСтрокаДерева = Неопределено;
+ КодНалогоплательщика = ДеревоЭлектронногоДокументаБЭД.ЗначениеРеквизитаВДереве(ДеревоДанных,
+ "Получатель.ТипУчастника.СвИнУчастНеУч.КодНПРег", Ложь, КодНалогоплательщикаСтрокаДерева);
+
+ Если Не ЗначениеЗаполнено(КодНалогоплательщика) Тогда
+ ТекстОшибки = НСтр(
+ "ru = 'Не указан код налогоплательщика иностранной организации (иностранного гражданина).'");
+ ДеревоЭлектронногоДокументаБЭД.ДобавитьОшибкуПроверкиДереваДанных(Ошибки, КодНалогоплательщикаСтрокаДерева,
+ ТекстОшибки, Ложь);
+ КонецЕсли;
+
+ КонецЕсли;
+
+КонецПроцедуры
+
#КонецОбласти
#КонецОбласти
@@ -7360,36 +7605,6 @@
КонецЦикла;
КонецЕсли;
- // Документы об отгрузке.
- НаименованиеДокументаОснования = "Счет-фактура и документ об отгрузке товаров (выполнении работ), передаче имущественных прав (документ об оказании услуг)";
- ДокументыОбОтгрузке = ДеревоДанных.Строки.Найти(Путь + "ДокументыОбОтгрузке", "ПолныйПуть", Истина);
- Если ЗначениеЗаполнено(ДокументыОбОтгрузке.Значение) Тогда
- ДокументыПуть = Путь + "ДокументыОбОтгрузке.НомерСтроки.ДокументОбОтгрузке";
- Для Каждого ТекущийДокумент Из ДокументыОбОтгрузке.Строки Цикл
- НовыйДокумент = ПолучитьОбъектТипаCML("РеквДокТип", ПространствоИмен);
- ЗаполнитьРеквизитыДокументаУПД_5_02(НовыйДокумент,
- ТекущийДокумент,
- Ошибки,
- ПространствоИмен,
- ДокументыПуть,
- Истина);
- Если ФункцияУПД = СЧФДОП() Тогда
- НаименованиеДокументаОснования = НовыйДокумент.РеквНаимДок;
- РаботаСФайламиБЭД.ЗаполнитьСвойствоXDTO(НовыйДокумент, "РеквНомерДок", НомерДок, , Ошибки);
- РаботаСФайламиБЭД.ЗаполнитьСвойствоXDTO(НовыйДокумент, "РеквДатаДок", ДатаФНС(ДатаДок), , Ошибки);
- КонецЕсли;
- СвСчФакт.ДокПодтвОтгрНом.Добавить(НовыйДокумент);
- КонецЦикла;
- КонецЕсли;
-
- Если ФункцияУПД = СЧФДОП() И СвСчФакт.ДокПодтвОтгрНом.Количество() = 0 Тогда
- НовыйДокумент = ПолучитьОбъектТипаCML("РеквДокТип", ПространствоИмен);
- РаботаСФайламиБЭД.ЗаполнитьСвойствоXDTO(НовыйДокумент, "РеквНаимДок", НаименованиеДокументаОснования, , Ошибки);
- РаботаСФайламиБЭД.ЗаполнитьСвойствоXDTO(НовыйДокумент, "РеквНомерДок", НомерДок, , Ошибки);
- РаботаСФайламиБЭД.ЗаполнитьСвойствоXDTO(НовыйДокумент, "РеквДатаДок", ДатаФНС(ДатаДок), , Ошибки);
- СвСчФакт.ДокПодтвОтгрНом.Добавить(НовыйДокумент);
- КонецЕсли;
-
ПоФактХЖ = "";
Если ФункцияУПД = СвРК() Тогда
ПоФактХЖ = "Документ, включающий в себя сведения о факте реализации комиссионером (агентом, действующим от собственного имени) товаров комитента (принципала)";
@@ -7402,7 +7617,7 @@
НаимДокОпр = "";
Если ФункцияУПД = СЧФДОП() Тогда
- НаимДокОпр = НаименованиеДокументаОснования;
+ НаимДокОпр = "Счет-фактура и документ об отгрузке товаров (выполнении работ), передаче имущественных прав (документ об оказании услуг)";
ИначеЕсли ФункцияУПД = ДОП() Тогда
НаимДокОпр = "Документ об отгрузке товаров (выполнении работ), передаче имущественных прав (Документ об оказании услуг)";
ИначеЕсли ФункцияУПД = СвРК() Тогда
@@ -7410,6 +7625,43 @@
ИначеЕсли ФункцияУПД = СвЗК() Тогда
НаимДокОпр = "Документ, включающий в себя сведения о факте закупки комиссионером (агентом, действующим от собственного имени) товара для комитента (принципала)";
КонецЕсли;
+
+ ДокументыПуть = Путь + "ДокументыОбОтгрузке.НомерСтроки.ДокументОбОтгрузке";
+ ДокументыОбОтгрузке = ДеревоДанных.Строки.Найти(Путь + "ДокументыОбОтгрузке", "ПолныйПуть", Истина);
+
+ // Документы об отгрузке.
+ Если ЗначениеЗаполнено(ДокументыОбОтгрузке.Значение) Тогда
+
+ Если ФункцияУПД = СЧФДОП() Тогда
+
+ НаимДокОпр = ДеревоЭлектронногоДокументаБЭД.ЗначениеРеквизитаВДереве(
+ ДокументыОбОтгрузке.Строки[0], ДокументыПуть + ".НаименованиеДокумента");
+
+ Иначе
+
+ Для Каждого ТекущийДокумент Из ДокументыОбОтгрузке.Строки Цикл
+
+ НовыйДокумент = ПолучитьОбъектТипаCML("РеквДокТип", ПространствоИмен);
+ ЗаполнитьРеквизитыДокументаУПД_5_02(НовыйДокумент, ТекущийДокумент, Ошибки, ПространствоИмен, ДокументыПуть, Истина);
+
+ СвСчФакт.ДокПодтвОтгрНом.Добавить(НовыйДокумент);
+
+ КонецЦикла;
+
+ КонецЕсли;
+
+ КонецЕсли;
+
+ Если ФункцияУПД = СЧФДОП() Тогда
+
+ НовыйДокумент = ПолучитьОбъектТипаCML("РеквДокТип", ПространствоИмен);
+ РаботаСФайламиБЭД.ЗаполнитьСвойствоXDTO(НовыйДокумент, "РеквНаимДок", НаимДокОпр,, Ошибки);
+ РаботаСФайламиБЭД.ЗаполнитьСвойствоXDTO(НовыйДокумент, "РеквНомерДок", НомерДок,, Ошибки);
+ РаботаСФайламиБЭД.ЗаполнитьСвойствоXDTO(НовыйДокумент, "РеквДатаДок", ДатаФНС(ДатаДок),, Ошибки);
+ СвСчФакт.ДокПодтвОтгрНом.Добавить(НовыйДокумент);
+
+ КонецЕсли;
+
РаботаСФайламиБЭД.ЗаполнитьСвойствоXDTO(Документ, "НаимДокОпр", НаимДокОпр, ФункцияУПД <> СЧФ(), Ошибки);
// Валюта.
@@ -10905,7 +11157,7 @@
КонецЕсли;
ЭП = "";
- Подписи = ЭлектроннаяПодпись.УстановленныеПодписи(Файл);
+ Подписи = КриптографияБЭД.УстановленныеПодписи(Файл);
Если Подписи.Количество() > 0 Тогда
Подпись = Подписи[0].Подпись;
ЭП = Base64Строка(Подпись);
@@ -14307,7 +14559,7 @@
КонецЕсли;
ЭП = "";
- Подписи = ЭлектроннаяПодпись.УстановленныеПодписи(Файл);
+ Подписи = КриптографияБЭД.УстановленныеПодписи(Файл);
Если Подписи.Количество() > 0 Тогда
Подпись = Подписи[0].Подпись;
ЭП = Base64Строка(Подпись);
@@ -15521,7 +15773,9 @@
НаселенныйПункт = ДеревоЭлектронногоДокументаБЭД.ЗначениеРеквизитаВДереве(
СтрокаДереваДанных, ПутьАдреса + ".НаселенныйПункт");
- РаботаСФайламиБЭД.ЗаполнитьСвойствоXDTO(АдрРФ, "НаселПункт", НаселенныйПункт, , Ошибки);
+ Если ВРег(Город) <> ВРег(НаселенныйПункт) Тогда
+ РаботаСФайламиБЭД.ЗаполнитьСвойствоXDTO(АдрРФ, "НаселПункт", НаселенныйПункт, , Ошибки);
+ КонецЕсли;
Улица = ДеревоЭлектронногоДокументаБЭД.ЗначениеРеквизитаВДереве(
СтрокаДереваДанных, ПутьАдреса + ".Улица");
@@ -22922,6 +23176,7 @@
СопоставлениеПоУмолчанию.ЕдиницаИзмеренияКод = НоваяСтрока.ЕдиницаИзмеренияКод;
СопоставлениеПоУмолчанию.Артикул = НоваяСтрока.Артикул;
СопоставлениеПоУмолчанию.КодНоменклатуры = НоваяСтрока.Код;
+ СопоставлениеПоУмолчанию.ШтрихкодКомбинации = НоваяСтрока.ГТИН;
НоваяСтрока.Сопоставление = ИзвлечьСопоставлениеНоменклатурыИзДопДанныхДереваДокумента(
НоваяСтрока.ДопДанныеПодписанные, СопоставлениеПоУмолчанию);
@@ -29519,8 +29774,8 @@
НоваяСтрока.ДополнительныеСведения.КодВидаТовара =
РаботаСФайламиБЭД.ЗначениеСвойстваXDTO(ТоварЭД, "ДопСведТов.КодВидТов",, "Строка");
- СвГосСист = РаботаСФайламиБЭД.ЗначениеСвойстваXDTO(ТоварЭД, "ДопСведТов.СвГосСист",,, Истина);
- Если ЗначениеЗаполнено(СвГосСист) Тогда
+ СвГосСист = РаботаСФайламиБЭД.ЗначениеСвойстваXDTO(ТоварЭД, "ДопСведТов.СвГосСист",,, Истина);
+ Если ЗначениеЗаполнено(СвГосСист) Тогда
Для Каждого ТекущиеСведения Из СвГосСист Цикл
НоваяСтрокаГИС = НоваяСтрока.ДополнительныеСведения.СведенияГИС.Добавить();
НоваяСтрокаГИС.ТоварГИС = ОбщегоНазначения.СкопироватьРекурсивно(ТоварГИС);
@@ -29530,12 +29785,13 @@
РаботаСФайламиБЭД.ЗначениеСвойстваXDTO(ТекущиеСведения, "УчетЕд",, "Строка");
НоваяСтрокаГИС.ТоварГИС.Иное =
РаботаСФайламиБЭД.ЗначениеСвойстваXDTO(ТекущиеСведения, "ИнаяИнф",, "Строка");
- ИдНомУчетЕд = РаботаСФайламиБЭД.ЗначениеСвойстваXDTO(ТекущиеСведения, "ИдНомУчетЕд",,, Истина);
+ ИдНомУчетЕд = РаботаСФайламиБЭД.ЗначениеСвойстваXDTO(ТекущиеСведения, "ИдНомУчетЕд",,, Истина);
Если ЗначениеЗаполнено(ИдНомУчетЕд) Тогда
- НоваяСтрокаГИС.ИдентификационныеНомера = ОбщегоНазначения.СкопироватьРекурсивно(ИдентификационныеНомераГИС);
- Для Каждого ТекущаяЕдиницаГИС Из ИдНомУчетЕд Цикл
- НоваяСтрокаЕдиницыГИС = НоваяСтрокаГИС.ИдентификационныеНомера.Добавить();
- НоваяСтрокаЕдиницыГИС.ИдентификационныйНомер = ТекущаяЕдиницаГИС;
+ НоваяСтрокаГИС.ТоварГИС.ИдентификационныеНомера =
+ ОбщегоНазначения.СкопироватьРекурсивно(ИдентификационныеНомераГИС);
+ Для Каждого ТекущаяЕдиницаГИС Из ИдНомУчетЕд Цикл
+ НоваяСтрокаЕдиницыГИС = НоваяСтрокаГИС.ТоварГИС.ИдентификационныеНомера.Добавить();
+ НоваяСтрокаЕдиницыГИС.ИдентификационныйНомер = ТекущаяЕдиницаГИС;
КонецЦикла;
КонецЕсли;
КонецЦикла;
diff --git a/src/CommonModules/ФорматыЭДОСобытия/Ext/Module.bsl b/src/CommonModules/ФорматыЭДОСобытия/Ext/Module.bsl
index 85474baf5..e8da7e173 100644
--- a/src/CommonModules/ФорматыЭДОСобытия/Ext/Module.bsl
+++ b/src/CommonModules/ФорматыЭДОСобытия/Ext/Module.bsl
@@ -26,9 +26,10 @@
Путь = "Получатель.ИдУчастникаЭДО";
ЭлектронноеВзаимодействие.ЗаполнитьЗначениеРеквизитаВДереве(Данные, Путь, Абонент.Идентификатор);
ТипУчастникаЭДО = ИнтеграцияЭДО.ТипУчастникаЭДО(Абонент.Ссылка);
- ЭтоИностранноеЛицо = ТипУчастникаЭДО.ЭтоИностранноеЛицо;
ЭтоФизЛицоИлиИП = ТипУчастникаЭДО.ЭтоФизЛицо Или ТипУчастникаЭДО.ЭтоИП;
ДанныеЮрФизЛица = ОбщегоНазначенияБЭД.ДанныеЮрФизЛица(Абонент.Ссылка);
+ ЭтоИностранноеЛицо = ТипУчастникаЭДО.ЭтоИностранноеЛицо
+ И НЕ ЗначениеЗаполнено(СтрЗаменить(ДанныеЮрФизЛица.ИНН, "0", ""));
ПолноеНаименованиеИмя = ?(ЭтоФизЛицоИлиИП, "ПолноеНаименование", "ОфициальноеНаименование");
ПолноеНаименование = "";
Если Не ДанныеЮрФизЛица.Свойство(ПолноеНаименованиеИмя, ПолноеНаименование) Или ПустаяСтрока(
@@ -38,17 +39,22 @@
Если ЭтоИностранноеЛицо Тогда
+ ПараметрыОбработкиОшибок =
+ ЭлектронноеВзаимодействиеКлиентСервер.НовыеПараметрыОбработкиОшибки(Абонент.Ссылка);
+
Если НЕ ЗначениеЗаполнено(ДанныеЮрФизЛица.КодСтраныНерезидента) Тогда
ДанныеЮрФизЛица.КодСтраныНерезидента = ТрансграничныйЭДО.КодСтраныАбонента(Абонент.Идентификатор);
КонецЕсли;
Путь = "Получатель.ТипУчастника.СвИнУчастНеУч";
- ЭлектронноеВзаимодействие.ЗаполнитьЗначениеРеквизитаВДереве(Данные, Путь + ".ИдСтат", "ЮЛ");
ЭлектронноеВзаимодействие.ЗаполнитьЗначениеРеквизитаВДереве(Данные,
- Путь + ".СтрРег", ДанныеЮрФизЛица.КодСтраныНерезидента);
- ЭлектронноеВзаимодействие.ЗаполнитьЗначениеРеквизитаВДереве(Данные, Путь + ".Наим", ПолноеНаименование);
+ Путь + ".ИдСтат", "ЮЛ", ПараметрыОбработкиОшибок);
ЭлектронноеВзаимодействие.ЗаполнитьЗначениеРеквизитаВДереве(Данные,
- Путь + ".КодНПРег", ДанныеЮрФизЛица.ИдентификаторЮридическогоЛица);
+ Путь + ".СтрРег", ДанныеЮрФизЛица.КодСтраныНерезидента, ПараметрыОбработкиОшибок);
+ ЭлектронноеВзаимодействие.ЗаполнитьЗначениеРеквизитаВДереве(Данные,
+ Путь + ".Наим", ПолноеНаименование, ПараметрыОбработкиОшибок);
+ ЭлектронноеВзаимодействие.ЗаполнитьЗначениеРеквизитаВДереве(Данные,
+ Путь + ".КодНПРег", ДанныеЮрФизЛица.ИдентификаторЮридическогоЛица, ПараметрыОбработкиОшибок);
Иначе
@@ -159,9 +165,10 @@
Путь = "Получатель.ИдУчастникаЭДО";
ЭлектронноеВзаимодействие.ЗаполнитьЗначениеРеквизитаВДереве(Данные, Путь, Абонент.Идентификатор);
ТипУчастникаЭДО = ИнтеграцияЭДО.ТипУчастникаЭДО(Абонент.Ссылка);
- ЭтоИностранноеЛицо = ТипУчастникаЭДО.ЭтоИностранноеЛицо;
ЭтоФизЛицоИлиИП = ТипУчастникаЭДО.ЭтоФизЛицо Или ТипУчастникаЭДО.ЭтоИП;
ДанныеЮрФизЛица = ОбщегоНазначенияБЭД.ДанныеЮрФизЛица(Абонент.Ссылка);
+ ЭтоИностранноеЛицо = ТипУчастникаЭДО.ЭтоИностранноеЛицо
+ И НЕ ЗначениеЗаполнено(СтрЗаменить(ДанныеЮрФизЛица.ИНН, "0", ""));
ПолноеНаименованиеИмя = ?(ЭтоФизЛицоИлиИП, "ПолноеНаименование", "ОфициальноеНаименование");
ПолноеНаименование = "";
Если Не ДанныеЮрФизЛица.Свойство(ПолноеНаименованиеИмя, ПолноеНаименование) Или ПустаяСтрока(
@@ -176,15 +183,20 @@
КонецЕсли;
НаименованиеСтраныНерезидента = ТрансграничныйЭДО.НаименованиеСтраныПоКоду(ДанныеЮрФизЛица.КодСтраныНерезидента);
+ ПараметрыОбработкиОшибок =
+ ЭлектронноеВзаимодействиеКлиентСервер.НовыеПараметрыОбработкиОшибки(Абонент.Ссылка);
+
Путь = "Получатель.ТипУчастника.СвИнУчастНеУч";
- ЭлектронноеВзаимодействие.ЗаполнитьЗначениеРеквизитаВДереве(Данные, Путь + ".ИдСтат", "ИО");
ЭлектронноеВзаимодействие.ЗаполнитьЗначениеРеквизитаВДереве(
- Данные, Путь + ".КодСтр", ДанныеЮрФизЛица.КодСтраныНерезидента);
+ Данные, Путь + ".ИдСтат", "ИО", ПараметрыОбработкиОшибок);
ЭлектронноеВзаимодействие.ЗаполнитьЗначениеРеквизитаВДереве(
- Данные, Путь + ".НаимСтран", НаименованиеСтраныНерезидента);
- ЭлектронноеВзаимодействие.ЗаполнитьЗначениеРеквизитаВДереве(Данные, Путь + ".Наим", ПолноеНаименование);
+ Данные, Путь + ".КодСтр", ДанныеЮрФизЛица.КодСтраныНерезидента, ПараметрыОбработкиОшибок);
ЭлектронноеВзаимодействие.ЗаполнитьЗначениеРеквизитаВДереве(
- Данные, Путь + ".Идентиф", ДанныеЮрФизЛица.ИдентификаторЮридическогоЛица);
+ Данные, Путь + ".НаимСтран", НаименованиеСтраныНерезидента, ПараметрыОбработкиОшибок);
+ ЭлектронноеВзаимодействие.ЗаполнитьЗначениеРеквизитаВДереве(
+ Данные, Путь + ".Наим", ПолноеНаименование, ПараметрыОбработкиОшибок);
+ ЭлектронноеВзаимодействие.ЗаполнитьЗначениеРеквизитаВДереве(
+ Данные, Путь + ".Идентиф", ДанныеЮрФизЛица.ИдентификаторЮридическогоЛица, ПараметрыОбработкиОшибок);
Иначе
@@ -292,21 +304,27 @@
ДанныеЮрФизЛица.Свойство("Представление", ПолноеНаименование);
КонецЕсли;
- ЭтоИностранноеЛицо = ИнтеграцияЭДО.ТипУчастникаЭДО(Абонент.Ссылка).ЭтоИностранноеЛицо;
+ ЭтоИностранноеЛицо = ИнтеграцияЭДО.ТипУчастникаЭДО(Абонент.Ссылка).ЭтоИностранноеЛицо
+ И НЕ ЗначениеЗаполнено(СтрЗаменить(ДанныеЮрФизЛица.ИНН, "0", ""));
Если ЭтоИностранноеЛицо Тогда
+ ПараметрыОбработкиОшибок =
+ ЭлектронноеВзаимодействиеКлиентСервер.НовыеПараметрыОбработкиОшибки(Абонент.Ссылка);
+
Если НЕ ЗначениеЗаполнено(ДанныеЮрФизЛица.КодСтраныНерезидента) Тогда
ДанныеЮрФизЛица.КодСтраныНерезидента = ТрансграничныйЭДО.КодСтраныАбонента(Абонент.Идентификатор);
КонецЕсли;
Путь = "Получатель.ТипУчастника.СвИнУчастНеУч";
- ЭлектронноеВзаимодействие.ЗаполнитьЗначениеРеквизитаВДереве(Данные, Путь + ".ИдСтат", "ЮЛ");
+ ЭлектронноеВзаимодействие.ЗаполнитьЗначениеРеквизитаВДереве(Данные,
+ Путь + ".ИдСтат", "ЮЛ", ПараметрыОбработкиОшибок);
ЭлектронноеВзаимодействие.ЗаполнитьЗначениеРеквизитаВДереве(Данные,
- Путь + ".СтрРег", ДанныеЮрФизЛица.КодСтраныНерезидента);
- ЭлектронноеВзаимодействие.ЗаполнитьЗначениеРеквизитаВДереве(Данные, Путь + ".Наим", ПолноеНаименование);
+ Путь + ".СтрРег", ДанныеЮрФизЛица.КодСтраныНерезидента, ПараметрыОбработкиОшибок);
+ ЭлектронноеВзаимодействие.ЗаполнитьЗначениеРеквизитаВДереве(Данные,
+ Путь + ".Наим", ПолноеНаименование, ПараметрыОбработкиОшибок);
ЭлектронноеВзаимодействие.ЗаполнитьЗначениеРеквизитаВДереве(Данные,
- Путь + ".КодНПРег", ДанныеЮрФизЛица.ИдентификаторЮридическогоЛица);
+ Путь + ".КодНПРег", ДанныеЮрФизЛица.ИдентификаторЮридическогоЛица, ПараметрыОбработкиОшибок);
Иначе
diff --git a/src/CommonModules/ФормированиеПараметровФискальногоЧекаСерверПереопределяемый/Ext/Module.bsl b/src/CommonModules/ФормированиеПараметровФискальногоЧекаСерверПереопределяемый/Ext/Module.bsl
index 94cdfe56c..e588c035d 100644
--- a/src/CommonModules/ФормированиеПараметровФискальногоЧекаСерверПереопределяемый/Ext/Module.bsl
+++ b/src/CommonModules/ФормированиеПараметровФискальногоЧекаСерверПереопределяемый/Ext/Module.bsl
@@ -358,7 +358,17 @@
// Параметры:
// ДокументСсылка - ДокументСсылка - Документ для получения товарных позиций
// Возвращаемое значение:
-// ТаблицаЗначений, Неопределено - Таблицу с товарными позициями с количественными и суммовыми показателями
+// Неопределено, ТаблицаЗначений - Таблицу с товарными позициями с количественными и суммовыми показателями:
+// * НоменклатураНаименование - Строка -
+// * ХарактеристикаНаименование - Строка -
+// * Упаковка - СправочникСсылка.УпаковкиЕдиницыИзмерения -
+// * УпаковкаНаименование - Строка -
+// * Количество - Число -
+// * Цена - Число -
+// * Сумма - Число -
+// * СтавкаНДС - СправочникСсылка.СтавкиНДС -
+// * СуммаНДС - Число -
+//
Функция ПозицииНоменклатурыПоДокументу(ДокументСсылка) Экспорт
//++ Локализация
УстановитьПривилегированныйРежим(Истина);
@@ -531,8 +541,9 @@
// Обновить параметры фискального чека по сертификатам ФСС.
//
// Параметры:
-// ПараметрыФискальногоЧека - Структура - Параметры фискального чека
+// ПараметрыФискальногоЧека - см. ОборудованиеЧекопечатающиеУстройстваКлиентСервер.ПараметрыОперацииФискализацииЧека
// ОплатыПлатежнымиКартами - ТаблицаЗначений - Оплаты платежными картами
+//
Процедура ОбновитьПараметрыФискальногоЧекаСертификатыФСС(ПараметрыФискальногоЧека, ОплатыПлатежнымиКартами) Экспорт
//++ Локализация
ВидОплатыЭСФСС = Новый Структура("ВидОплаты", ПредопределенноеЗначение("Перечисление.ТипыПлатежнойСистемыККТ.СертификатНСПК"));
@@ -548,8 +559,8 @@
ДетализацияОплаты = ОборудованиеЧекопечатающиеУстройстваКлиентСервер.ПараметрыДетализацииСтрокиОплаты();
ДетализацияОплаты.НаименованиеТипаОплаты = "СЕРТИФИКАТОМ";
ДетализацияОплаты.Сумма = СтрокаОплатаЭСФСС.Сумма;
- ПараметрыФискальногоЧека.ДетализацияОплаты.Добавить(ДетализацияОплаты);
-
+ ПараметрыФискальногоЧекаДетализацияОплаты = ПараметрыФискальногоЧека.ДетализацияОплаты; // Массив
+ ПараметрыФискальногоЧекаДетализацияОплаты.Добавить(ДетализацияОплаты);
ВидОплатыКартойМИР = Новый Структура("ВидОплаты", ПредопределенноеЗначение("Перечисление.ТипыПлатежнойСистемыККТ.ПустаяСсылка"));
ОплатаКартойМИР = ОплатыПлатежнымиКартами.НайтиСтроки(ВидОплатыКартойМИР); // - Массив
@@ -558,7 +569,7 @@
ДетализацияОплаты = ОборудованиеЧекопечатающиеУстройстваКлиентСервер.ПараметрыДетализацииСтрокиОплаты();
ДетализацияОплаты.НаименованиеТипаОплаты = "КАРТА МИР";
ДетализацияОплаты.Сумма = ОплатаКартойМИР[0].Сумма;
- ПараметрыФискальногоЧека.ДетализацияОплаты.Добавить(ДетализацияОплаты);
+ ПараметрыФискальногоЧекаДетализацияОплаты.Добавить(ДетализацияОплаты);
КонецЕсли;
КонецЕсли;
//-- Локализация
@@ -590,7 +601,8 @@
//
// Параметры:
// ПараметрыФискальногоЧека - Структура - Параметры фискального чека
-// ДокументыЕдиногоЧека - Массив - Документы, входящие в единый чек
+// ДокументыЕдиногоЧека - Массив Из Структура - Документы, входящие в единый чек
+//
Процедура ОбновитьПараметрыФискальногоЧекаПозицийЧекаЕдиныйЧек(ПараметрыФискальногоЧека, ДокументыЕдиногоЧека) Экспорт
//++ Локализация
СуммаОплаты = 0;
@@ -638,7 +650,8 @@
//
// Параметры:
// ПараметрыФискальногоЧека - Структура - Параметры фискального чека
-// ДокументыЕдиногоЧека - Массив - Документы, входящие в единый чек
+// ДокументыЕдиногоЧека - Массив Из Структура - Документы, входящие в единый чек
+//
Процедура ОбновитьПараметрыФискальногоЧекаТаблицаОплатЕдиныйЧек(ПараметрыФискальногоЧека, ДокументыЕдиногоЧека) Экспорт
//++ Локализация
ТаблицаОплат = Новый Массив();
@@ -751,6 +764,7 @@
#Область ФормированиеПозицийДокументаОплаты
// Рассчитывает и обновляет параметр позиций чека для документа оплаты
+// Авансы по подарочным сертификатам детализируются в чеке до объекта расчета.
//
// Параметры:
// ПараметрыФискальногоЧека - Структура - Параметры фискального чека
@@ -761,7 +775,17 @@
//++ Локализация
ПозицииЧека = Новый Массив;
+ ЭтоОплатаПодарочногоСертификата = Ложь;
+
+ БезналичнаяОплатаПоОбъектуРасчетов = Истина;
+ Если Не ОбъектыРасчетовСПризнакамиСпособаРасчетов = Неопределено
+ И ОбъектыРасчетовСПризнакамиСпособаРасчетов.Количество() = 1
+ И ОбъектыРасчетовСПризнакамиСпособаРасчетов[0].ОбъектРасчетов = ПараметрыФискальногоЧека.ДокументОснование Тогда
+ БезналичнаяОплатаПоОбъектуРасчетов = Ложь;
+ КонецЕсли;
+
СуммыАвансовПоСтавкамНДСПоВсемОбъектамРасчетов = Новый ТаблицаЗначений();
+ СуммыАвансовПоСтавкамНДСПоВсемОбъектамРасчетов.Колонки.Добавить("ОбъектРасчетов");
СуммыАвансовПоСтавкамНДСПоВсемОбъектамРасчетов.Колонки.Добавить("СтавкаНДС");
СуммыАвансовПоСтавкамНДСПоВсемОбъектамРасчетов.Колонки.Добавить("СуммаНДС");
СуммыАвансовПоСтавкамНДСПоВсемОбъектамРасчетов.Колонки.Добавить("Сумма");
@@ -778,7 +802,6 @@
ПараметрыФискальногоЧека.СистемаНалогообложения,
ИмяКомандыПробитияЧека);
- СуммаНДСОплатыПоОбъекту = СуммыАвансовПоСтавкамНДС.Итог("СуммаНДС");
СуммаОплатыПоОбъекту = СуммыАвансовПоСтавкамНДС.Итог("Сумма");
СуммаКУчетуПоОбъекту = 0;
@@ -788,6 +811,11 @@
СуммаАвансаПоСтавкеНДСПоВсемОбъектамРасчетов = СуммыАвансовПоСтавкамНДСПоВсемОбъектамРасчетов.Добавить();
СуммаАвансаПоСтавкеНДСПоВсемОбъектамРасчетов.СтавкаНДС = СуммаАвансовПоСтавкамНДС.СтавкаНДС;
+ СуммаАвансаПоСтавкеНДСПоВсемОбъектамРасчетов.ОбъектРасчетов = ОбъектРасчетовСПризнакомСпособаРасчетов.ОбъектРасчетов;
+ Если Не ЭтоОплатаПодарочногоСертификата И
+ ТипЗнч(ОбъектРасчетовСПризнакомСпособаРасчетов.ОбъектРасчетов) = Тип("СправочникСсылка.ПодарочныеСертификаты") Тогда
+ ЭтоОплатаПодарочногоСертификата = Истина;
+ КонецЕсли;
СуммаАвансаПоСтавкеНДСПоВсемОбъектамРасчетов.Сумма = Окр(СуммаАвансовПоСтавкамНДС.Сумма / СуммаОплатыПоОбъекту * ОбъектРасчетовСПризнакомСпособаРасчетов.Сумма, 2);
@@ -820,9 +848,20 @@
КонецЦикла;
Если СуммыАвансовПоСтавкамНДСПоВсемОбъектамРасчетов.Количество() > 0 Тогда
- СуммыАвансовПоСтавкамНДСПоВсемОбъектамРасчетов.Свернуть("СтавкаНДС", "СуммаНДС, Сумма");
+ Если ЭтоОплатаПодарочногоСертификата Тогда
+ СуммыАвансовПоСтавкамНДСПоВсемОбъектамРасчетов.Свернуть("ОбъектРасчетов,СтавкаНДС", "СуммаНДС,Сумма");
+ Иначе
+ СуммыАвансовПоСтавкамНДСПоВсемОбъектамРасчетов.Свернуть("СтавкаНДС", "СуммаНДС,Сумма");
+ КонецЕсли;
- ДополнитьПараметрыФискальногоЧекаПозицийЧекаПоДокументамОплатыАванс(ПараметрыФискальногоЧека, ПозицииЧека, СуммыАвансовПоСтавкамНДСПоВсемОбъектамРасчетов);
+ ДанныеДляЗаполнения = Новый Структура;
+ ДанныеДляЗаполнения.Вставить("СуммыАвансовПоСтавкамНДС", СуммыАвансовПоСтавкамНДСПоВсемОбъектамРасчетов);
+ ДанныеДляЗаполнения.Вставить("БезналичнаяОплатаПоОбъектуРасчетов", БезналичнаяОплатаПоОбъектуРасчетов);
+ ДанныеДляЗаполнения.Вставить("ЭтоОплатаПодарочногоСертификата", ЭтоОплатаПодарочногоСертификата);
+
+ ПривестиДанныеКТребуемомуФорматуПозицийЧекаПоДокументамОплатыАванс(ОбщегоНазначения.СкопироватьРекурсивно(ПараметрыФискальногоЧека),
+ ПозицииЧека,
+ ДанныеДляЗаполнения);
КонецЕсли;
ПараметрыФискальногоЧекаЗаполнитьПозицииЧека(ПараметрыФискальногоЧека, ПозицииЧека);
@@ -874,6 +913,13 @@
КонецФункции
+// Определяет систему налогообложения по документу
+//
+// Параметры:
+// ДокументСсылка - ДокументСсылка - Документ для определения системы налогообложения
+// Возвращаемое значение:
+// ПеречислениеСсылка.ТипыСистемНалогообложенияККТ - Система налогообложения по документу
+//
Функция СистемаНалогообложенияПоДокументу(ДокументСсылка)
УстановитьПривилегированныйРежим(Истина);
@@ -1308,24 +1354,18 @@
СтрокаПозицииЧека.ДанныеКодаТоварнойНоменклатуры.СерийныйНомер = ДанныеРазбора.СоставКодаМаркировки.СерийныйНомер;
КонецПроцедуры
-
-Процедура ДополнитьПараметрыФискальногоЧекаПозицийЧекаПоДокументамОплатыАванс(ПараметрыФискальногоЧека, ПозицииЧека, СуммыАвансовПоСтавкамНДС)
- ПривестиДанныеКТребуемомуФорматуПозицийЧекаПоДокументамОплатыАванс(ОбщегоНазначения.СкопироватьРекурсивно(ПараметрыФискальногоЧека), ПозицииЧека, СуммыАвансовПоСтавкамНДС);
-
-КонецПроцедуры
-
-Процедура ПривестиДанныеКТребуемомуФорматуПозицийЧекаПоДокументамОплатыАванс(Знач ПараметрыФискальногоЧека, ПозицииЧека, СуммыАвансовПоСтавкамНДС)
+Процедура ПривестиДанныеКТребуемомуФорматуПозицийЧекаПоДокументамОплатыАванс(Знач ПараметрыФискальногоЧека, ПозицииЧека, ДанныеДляЗаполнения)
ПозицииЧекаДляПриведенияКФормату = Новый Массив;
ПараметрыФискальногоЧека.ПозицииЧека = Новый Массив();
ПараметрыФискальногоЧека.ТаблицаОплат = Новый Массив();
- ОбновитьПараметрыФискальногоЧекаПозицийЧекаПоДокументамОплатыАвансДляПриведенияКФормату(ПараметрыФискальногоЧека, ПозицииЧекаДляПриведенияКФормату, СуммыАвансовПоСтавкамНДС);
+ ОбновитьПараметрыФискальногоЧекаПозицийЧекаПоДокументамОплатыАвансДляПриведенияКФормату(ПараметрыФискальногоЧека, ПозицииЧекаДляПриведенияКФормату, ДанныеДляЗаполнения);
ПараметрыФискальногоЧекаЗаполнитьПозицииЧека(ПараметрыФискальногоЧека, ПозицииЧекаДляПриведенияКФормату);
ТаблицаОплат = Новый Массив();
- ДобавитьВТаблицуОплат(ТаблицаОплат, Перечисления.ТипыОплатыККТ.Наличные, СуммыАвансовПоСтавкамНДС.Итог("Сумма"));
+ ДобавитьВТаблицуОплат(ТаблицаОплат, Перечисления.ТипыОплатыККТ.Наличные, ДанныеДляЗаполнения.СуммыАвансовПоСтавкамНДС.Итог("Сумма"));
ПараметрыФискальногоЧекаЗаполнитьТаблицуОплат(ПараметрыФискальногоЧека, ТаблицаОплат);
@@ -1339,23 +1379,13 @@
КонецПроцедуры
-Процедура ОбновитьПараметрыФискальногоЧекаПозицийЧекаПоДокументамОплатыАвансДляПриведенияКФормату(ПараметрыФискальногоЧека, ПозицииЧека, СуммыАвансовПоСтавкамНДС)
+Процедура ОбновитьПараметрыФискальногоЧекаПозицийЧекаПоДокументамОплатыАвансДляПриведенияКФормату(ПараметрыФискальногоЧека, ПозицииЧека, ДанныеДляЗаполнения)
ДокументСсылка = ПараметрыФискальногоЧека.ДокументОснование;
КлиентАвансовогоПлатежаНаименование = КлиентАвансовогоПлатежаНаименование(ДокументСсылка);
ТипРасчетаДенежнымиСредствами = ПараметрыФискальногоЧека.ТипРасчета;
- ДокументыОплаты = Новый Массив;
- ДокументыОплаты.Добавить(ДокументСсылка);
- ОбъектыРасчетовПоДокументу = ФормированиеФискальныхЧековСерверПереопределяемый.ОбъектыРасчетовДокументаОплаты(ДокументыОплаты, "");
- БезналичнаяОплатаПоОбъектуРасчетов = Истина;
- Если Не ОбъектыРасчетовПоДокументу = Неопределено
- И ОбъектыРасчетовПоДокументу.Количество() = 1
- И ОбъектыРасчетовПоДокументу[0].Заказ = ДокументСсылка Тогда
- БезналичнаяОплатаПоОбъектуРасчетов = Ложь;
- КонецЕсли;
-
- Для Каждого СуммаАванса Из СуммыАвансовПоСтавкамНДС Цикл
+ Для Каждого СуммаАванса Из ДанныеДляЗаполнения.СуммыАвансовПоСтавкамНДС Цикл
СтрокаПозицииЧека = ОборудованиеЧекопечатающиеУстройстваКлиентСервер.ПараметрыФискальнойСтрокиЧека();
@@ -1363,27 +1393,37 @@
СтрокаПозицииЧека.ПризнакПредметаРасчета = Перечисления.ПризнакиПредметаРасчета.ПлатежВыплата;
НаименованиеОплаты = "";
-
- Если ТипРасчетаДенежнымиСредствами = Перечисления.ТипыРасчетаДенежнымиСредствами.ПриходДенежныхСредств
- ИЛИ ТипРасчетаДенежнымиСредствами = Перечисления.ТипыРасчетаДенежнымиСредствами.ВозвратРасходаДенежныхСредств Тогда
-
- Если ТипЗнч(ДокументСсылка) = Тип("ДокументСсылка.ПоступлениеБезналичныхДенежныхСредств")
- И БезналичнаяОплатаПоОбъектуРасчетов Тогда
- НаименованиеОплаты = НСтр("ru = 'Оплата на р/с от:'");
- ИначеЕсли ДокументБезналичнойОплаты(ДокументСсылка) И БезналичнаяОплатаПоОбъектуРасчетов Тогда
- НаименованиеОплаты = НСтр("ru = 'Оплата картой от:'");
+ Если ДанныеДляЗаполнения.ЭтоОплатаПодарочногоСертификата Тогда
+ НаименованиеОплаты = Строка(СуммаАванса.ОбъектРасчетов);
+ Иначе
+ СтрокиНаименованияОплаты = Новый Массив;
+ ЭтоПриходДенежныхСредств = Истина;
+ Если ТипРасчетаДенежнымиСредствами = Перечисления.ТипыРасчетаДенежнымиСредствами.ПриходДенежныхСредств
+ ИЛИ ТипРасчетаДенежнымиСредствами = Перечисления.ТипыРасчетаДенежнымиСредствами.ВозвратРасходаДенежныхСредств Тогда
+
+ Если ТипЗнч(ДокументСсылка) = Тип("ДокументСсылка.ПоступлениеБезналичныхДенежныхСредств")
+ И ДанныеДляЗаполнения.БезналичнаяОплатаПоОбъектуРасчетов Тогда
+ СтрокиНаименованияОплаты.Добавить(НСтр("ru = 'Оплата на р/с'"));
+ ИначеЕсли ДокументБезналичнойОплаты(ДокументСсылка) И ДанныеДляЗаполнения.БезналичнаяОплатаПоОбъектуРасчетов Тогда
+ СтрокиНаименованияОплаты.Добавить(НСтр("ru = 'Оплата картой'"));
+ Иначе
+ СтрокиНаименованияОплаты.Добавить(НСтр("ru = 'Оплата'"));
+ КонецЕсли;
Иначе
- НаименованиеОплаты = НСтр("ru = 'Оплата от:'");
+ ЭтоПриходДенежныхСредств = Ложь;
+ СтрокиНаименованияОплаты.Добавить(НСтр("ru = 'Выдано'"));
КонецЕсли;
- Иначе
- НаименованиеОплаты = НСтр("ru = 'Выдано:'");
- КонецЕсли;
-
- Если ЗначениеЗаполнено(КлиентАвансовогоПлатежаНаименование) Тогда
- СтрокаПозицииЧека.Наименование = НаименованиеОплаты + " " + КлиентАвансовогоПлатежаНаименование;
- Иначе
- СтрокаПозицииЧека.Наименование = НаименованиеОплаты;
+ Если ЗначениеЗаполнено(КлиентАвансовогоПлатежаНаименование) Тогда
+ Если ЭтоПриходДенежныхСредств Тогда
+ СтрокиНаименованияОплаты.Добавить(НСтр("ru = 'от:'"));
+ Иначе
+ СтрокиНаименованияОплаты[СтрокиНаименованияОплаты.ВГраница()] = СтрокиНаименованияОплаты[СтрокиНаименованияОплаты.ВГраница()] + ":";
+ КонецЕсли;
+ СтрокиНаименованияОплаты.Добавить(КлиентАвансовогоПлатежаНаименование);
+ КонецЕсли;
+ НаименованиеОплаты = СтрСоединить(СтрокиНаименованияОплаты, Символ(32));
КонецЕсли;
+ СтрокаПозицииЧека.Наименование = НаименованиеОплаты;
СтрокаПозицииЧека.Количество = 1;
diff --git a/src/CommonModules/ФормированиеФискальныхЧековСерверПереопределяемый/Ext/Module.bsl b/src/CommonModules/ФормированиеФискальныхЧековСерверПереопределяемый/Ext/Module.bsl
index ab8ada155..16b92d4d8 100644
--- a/src/CommonModules/ФормированиеФискальныхЧековСерверПереопределяемый/Ext/Module.bsl
+++ b/src/CommonModules/ФормированиеФискальныхЧековСерверПереопределяемый/Ext/Module.bsl
@@ -708,6 +708,7 @@
| ДокументОплаты.Ссылка.ХозяйственнаяОперация КАК ХозяйственнаяОперация,
| ДокументОплаты.ОбъектРасчетов.Объект КАК Ссылка,
| ДокументОплаты.Ссылка.Дата КАК Дата,
+ | ИСТИНА КАК ЭтоПриходДенежныхСредств,
| СУММА(ДокументОплаты.Сумма) КАК СуммаДокумента
|ИЗ
| Документ.ПриходныйКассовыйОрдер.РасшифровкаПлатежа КАК ДокументОплаты
@@ -725,6 +726,7 @@
| ДокументОплаты.Ссылка.ХозяйственнаяОперация КАК ХозяйственнаяОперация,
| ДокументОплаты.ОснованиеПлатежа КАК Ссылка,
| ДокументОплаты.Ссылка.Дата КАК Дата,
+ | ИСТИНА КАК ЭтоПриходДенежныхСредств,
| СУММА(ДокументОплаты.Сумма) КАК СуммаДокумента
|ИЗ
| Документ.ПриходныйКассовыйОрдер.РасшифровкаПлатежа КАК ДокументОплаты
@@ -743,6 +745,7 @@
| ДокументОплаты.Ссылка.ХозяйственнаяОперация КАК ХозяйственнаяОперация,
| ДокументОплаты.ОбъектРасчетов.Объект КАК Ссылка,
| ДокументОплаты.Ссылка.Дата КАК Дата,
+ | ЛОЖЬ КАК ЭтоПриходДенежныхСредств,
| СУММА(ДокументОплаты.Сумма) КАК СуммаДокумента
|ИЗ
| Документ.РасходныйКассовыйОрдер.РасшифровкаПлатежа КАК ДокументОплаты
@@ -760,6 +763,7 @@
| ДокументОплаты.Ссылка.ХозяйственнаяОперация КАК ХозяйственнаяОперация,
| ДокументОплаты.Ссылка.ДокументОснование КАК Ссылка,
| ДокументОплаты.Ссылка.Дата КАК Дата,
+ | ЛОЖЬ КАК ЭтоПриходДенежныхСредств,
| СУММА(ДокументОплаты.Ссылка.СуммаДокумента) КАК СуммаДокумента
|ИЗ
| Документ.РасходныйКассовыйОрдер.РасшифровкаПлатежа КАК ДокументОплаты
@@ -778,6 +782,15 @@
| ДокументОплаты.Ссылка.ХозяйственнаяОперация КАК ХозяйственнаяОперация,
| ДокументОплаты.ОбъектРасчетов.Объект КАК Ссылка,
| ДокументОплаты.Ссылка.Дата КАК Дата,
+ | ВЫБОР
+ | КОГДА ДокументОплаты.Ссылка.ХозяйственнаяОперация = ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ВозвратОплатыКлиенту)
+ | ТОГДА ЛОЖЬ
+ | ИНАЧЕ ВЫБОР
+ | КОГДА ДокументОплаты.Ссылка.ХозяйственнаяОперация = ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПоступлениеОплатыОтКлиента)
+ | ТОГДА ИСТИНА
+ | ИНАЧЕ НЕОПРЕДЕЛЕНО
+ | КОНЕЦ
+ | КОНЕЦ КАК ЭтоПриходДенежныхСредств,
| СУММА(ДокументОплаты.Сумма) КАК СуммаДокумента
|ИЗ
| Документ.ОперацияПоПлатежнойКарте.РасшифровкаПлатежа КАК ДокументОплаты
@@ -795,6 +808,15 @@
| ДокументОплаты.Ссылка.ХозяйственнаяОперация КАК ХозяйственнаяОперация,
| ДокументОплаты.ОснованиеПлатежа КАК Ссылка,
| ДокументОплаты.Ссылка.Дата КАК Дата,
+ | ВЫБОР
+ | КОГДА ДокументОплаты.Ссылка.ХозяйственнаяОперация = ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ВозвратОплатыКлиенту)
+ | ТОГДА ЛОЖЬ
+ | ИНАЧЕ ВЫБОР
+ | КОГДА ДокументОплаты.Ссылка.ХозяйственнаяОперация = ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПоступлениеОплатыОтКлиента)
+ | ТОГДА ИСТИНА
+ | ИНАЧЕ НЕОПРЕДЕЛЕНО
+ | КОНЕЦ
+ | КОНЕЦ КАК ЭтоПриходДенежныхСредств,
| СУММА(ДокументОплаты.Сумма) КАК СуммаДокумента
|ИЗ
| Документ.ОперацияПоПлатежнойКарте.РасшифровкаПлатежа КАК ДокументОплаты
@@ -812,7 +834,7 @@
Пока Выборка.Следующий() Цикл
Если ТипДокументаПоставкиРазрешенДляХозяйственнойОперации(ТипЗнч(Выборка.Ссылка), Выборка.ХозяйственнаяОперация)
- И ДокументПоставкиСВозможностьюПробитияЕдиногоЧека(Выборка.Ссылка) Тогда
+ И ДокументПоставкиСВозможностьюПробитияЕдиногоЧека(Выборка.Ссылка, Выборка.ЭтоПриходДенежныхСредств) Тогда
ДокументОплатыПоДокументуПоставки.Добавить(Выборка.Ссылка);
КонецЕсли;
КонецЦикла;
@@ -1358,28 +1380,19 @@
// Возвращает объекты расчетов документа оплаты
//
// Параметры:
-// ДокументыОплаты - ДокументСсылка - Документы оплаты
-// ИмяКомандыПробитияЧека - Строка - Имя команды пробития чека
+// ДокументыОплаты - ДокументСсылка - Документы оплаты
+// ИмяКомандыПробитияЧека - Строка - Имя команды пробития чека
// Возвращаемое значение:
-// ТаблицаЗначений, Неопределено - Описание
+// Неопределено,ТаблицаЗначений:
+// *Заказ - ДокументСсылка,СправочникСсылка
+// *Сумма - Число
+//
Функция ОбъектыРасчетовДокументаОплаты(ДокументыОплаты, ИмяКомандыПробитияЧека) Экспорт
ОбъектыРасчетовДокументаОплаты = Неопределено;
//++ Локализация
- Для Каждого ДокументОплаты Из ДокументыОплаты Цикл
- Если ОбъектыРасчетовДокументаОплаты = Неопределено Тогда
- ОбъектыРасчетовДокументаОплаты = ДанныеПоОбъектамРасчетовПоДокументу(ДокументОплаты, ИмяКомандыПробитияЧека);
- Иначе
- ДанныеПоОбъектамРасчетовПоДокументу = ДанныеПоОбъектамРасчетовПоДокументу(ДокументОплаты, ИмяКомандыПробитияЧека);
-
- Для Каждого СтрокаДанныхПоОбъекту Из ДанныеПоОбъектамРасчетовПоДокументу Цикл
- НоваяСтрокаОбъектовРасчетов = ОбъектыРасчетовДокументаОплаты.Добавить();
- ЗаполнитьЗначенияСвойств(НоваяСтрокаОбъектовРасчетов, СтрокаДанныхПоОбъекту);
- КонецЦикла;
- КонецЕсли;
- КонецЦикла;
-
+ ОбъектыРасчетовДокументаОплаты = ОбъектыРасчетовПоДокументамОплатыРазвернуто(ДокументыОплаты, ИмяКомандыПробитияЧека);
Если ОбъектыРасчетовДокументаОплаты <> Неопределено Тогда
ОбъектыРасчетовДокументаОплаты.Свернуть("Заказ", "Сумма");
КонецЕсли;
@@ -1822,55 +1835,48 @@
Процедура ДокументыЕдиногоЧекаЗаполнитьТаблицу(ДокументСсылка, ТаблицаДокументовЕдиногоЧека, ИмяКомандыПробитияЧека) Экспорт
ДокументыОплаты = ДокументОплаты(ДокументСсылка);
- ОбъектыРасчетов = ОбъектыРасчетовДокументаОплаты(ДокументыОплаты, ИмяКомандыПробитияЧека);
+ ОбъектыРасчетовПоДокументамОплаты = ОбъектыРасчетовПоДокументамОплатыРазвернуто(ДокументыОплаты, ИмяКомандыПробитияЧека);
+ ОбъектыРасчетовЕдиногоЧека = Новый Массив;
ИмяРеквизитаСуммаДокумента = "СуммаДокумента";
ИмяРеквизитаСуммаРегл = "СуммаРегл";
// Документы оплаты
Для Каждого ДокументОплаты Из ДокументыОплаты Цикл
- Если НЕ ДоступнаВозможностьПробитияЕдиногоЧека(ДокументОплаты, ОбъектыРасчетов) Тогда
+
+ ДанныеДокументаОплаты = ДокументОплатыСВозможностьюПробитияЕдиногоЧека(ДокументОплаты);
+ ОбъектыРасчетов = ОбъектыРасчетовПоДокументамОплаты.НайтиСтроки(Новый Структура("ДокументОплаты", ДокументОплаты));
+ Если НЕ ДоступнаВозможностьПробитияЕдиногоЧека(ДанныеДокументаОплаты, ОбъектыРасчетов) Тогда
Продолжить;
КонецЕсли;
СтрокаДокументЕдиногоЧека = ТаблицаДокументовЕдиногоЧека.Добавить();
СтрокаДокументЕдиногоЧека.Документ = ДокументОплаты;
- СтрокаДокументЕдиногоЧека.Сумма = ОбщегоНазначения.ЗначениеРеквизитаОбъекта(
- ДокументОплаты,
- ИмяРеквизитаСуммаДокумента);
+ СтрокаДокументЕдиногоЧека.Сумма = ДанныеДокументаОплаты.СуммаДокумента;
+
+ // Документы поставки
+ Для Каждого СтрокаОбъектыРасчетов Из ОбъектыРасчетов Цикл
+ Если ОбъектыРасчетовЕдиногоЧека.Найти(СтрокаОбъектыРасчетов.Заказ) = Неопределено Тогда
+ СтрокаДокументЕдиногоЧека = ТаблицаДокументовЕдиногоЧека.Добавить();
+ СтрокаДокументЕдиногоЧека.Документ = СтрокаОбъектыРасчетов.Заказ;
+ СтрокаДокументЕдиногоЧека.Сумма = ОбщегоНазначения.ЗначениеРеквизитаОбъекта(
+ СтрокаОбъектыРасчетов.Заказ,
+ ИмяРеквизитаСуммаДокумента);
+ ОбъектыРасчетовЕдиногоЧека.Добавить(СтрокаОбъектыРасчетов.Заказ)
+ КонецЕсли;
+ КонецЦикла;
КонецЦикла;
// Документы взаимозачета
- Если Не ДокументОплатыСВозможностьюПробитияЧеков(ДокументСсылка)
- Или ТаблицаДокументовЕдиногоЧека.Количество() > 0 Тогда
-
- Если ОбъектыРасчетов <> Неопределено
- И ПоВсемОбъектамРасчетовВозможностиПробитиеЕдиногоЧекаПоставки(ОбъектыРасчетов) Тогда
-
- ДокументыВзаимозачета = ДокументыВзаимозачета(ОбъектыРасчетов.ВыгрузитьКолонку("Заказ"));
-
- Для Каждого ДокументВзаимозачета Из ДокументыВзаимозачета Цикл
- СтрокаДокументЕдиногоЧека = ТаблицаДокументовЕдиногоЧека.Добавить();
- СтрокаДокументЕдиногоЧека.Документ = ДокументВзаимозачета;
- СтрокаДокументЕдиногоЧека.Сумма = ОбщегоНазначения.ЗначениеРеквизитаОбъекта(
- ДокументВзаимозачета,
- ИмяРеквизитаСуммаРегл);
- КонецЦикла;
-
- КонецЕсли;
-
- Если ТаблицаДокументовЕдиногоЧека.Количество() > 0 Тогда
- Для Каждого СтрокаОбъектыРасчетов Из ОбъектыРасчетов Цикл
- Если ДокументПоставкиСВозможностьюПробитияЕдиногоЧека(СтрокаОбъектыРасчетов.Заказ) Тогда
- СтрокаДокументЕдиногоЧека = ТаблицаДокументовЕдиногоЧека.Добавить();
- СтрокаДокументЕдиногоЧека.Документ = СтрокаОбъектыРасчетов.Заказ;
- СтрокаДокументЕдиногоЧека.Сумма = ОбщегоНазначения.ЗначениеРеквизитаОбъекта(
- СтрокаОбъектыРасчетов.Заказ,
- ИмяРеквизитаСуммаДокумента);
- КонецЕсли;
- КонецЦикла;
- КонецЕсли;
-
+ Если ОбъектыРасчетовЕдиногоЧека.Количество() Тогда
+ ДокументыВзаимозачета = ДокументыВзаимозачета(ОбъектыРасчетовЕдиногоЧека);
+ Для Каждого ДокументВзаимозачета Из ДокументыВзаимозачета Цикл
+ СтрокаДокументЕдиногоЧека = ТаблицаДокументовЕдиногоЧека.Добавить();
+ СтрокаДокументЕдиногоЧека.Документ = ДокументВзаимозачета;
+ СтрокаДокументЕдиногоЧека.Сумма = ОбщегоНазначения.ЗначениеРеквизитаОбъекта(
+ ДокументВзаимозачета,
+ ИмяРеквизитаСуммаРегл);
+ КонецЦикла;
КонецЕсли;
КонецПроцедуры
@@ -2709,7 +2715,8 @@
ДокументОплаты = Новый Массив;
- Если ДокументОплатыСВозможностьюПробитияЕдиногоЧека(ДокументСсылка) Тогда
+ ДанныеДокументаОплаты = ДокументОплатыСВозможностьюПробитияЕдиногоЧека(ДокументСсылка);
+ Если ДанныеДокументаОплаты.ЕстьВозможностьПробитияЕдиногоЧека Тогда
ДокументОплаты.Добавить(ДокументСсылка);
Иначе
ДокументОплаты = ДокументОплатыПоДокументуПоставкиВРамкахЕдиногоЧека(ДокументСсылка);
@@ -2757,21 +2764,33 @@
КонецФункции
-Функция ДоступнаВозможностьПробитияЕдиногоЧека(ДокументОплаты, ОбъектыРасчетов)
+// Проверяет возможность пробития единого чека для документа оплаты и связанных с ним объектов расчетов.
+//
+// Параметры:
+// ДанныеДокументаОплаты - см. ДокументОплатыСВозможностьюПробитияЕдиногоЧека
+// ОбъектыРасчетов - Массив из ДокументСсылка
+//
+// Возвращаемое значение:
+// Булево
+Функция ДоступнаВозможностьПробитияЕдиногоЧека(ДанныеДокументаОплаты, ОбъектыРасчетов)
- Если ДокументОплаты = Неопределено ИЛИ ОбъектыРасчетов = Неопределено Тогда
+ Если Не ЗначениеЗаполнено(ДанныеДокументаОплаты.Ссылка) ИЛИ ОбъектыРасчетов = Неопределено Тогда
Возврат Ложь;
КонецЕсли;
- Если НЕ ПоВсемОбъектамРасчетовВозможностиПробитиеЕдиногоЧекаПоставки(ОбъектыРасчетов) Тогда
+ Если Не ДанныеДокументаОплаты.ЕстьВозможностьПробитияЕдиногоЧека Тогда
Возврат Ложь;
КонецЕсли;
- Если ДатаОплатыОтличаетсяОтДатыПоставки(ДокументОплаты, ОбъектыРасчетов) Тогда
+ Если Не ПоВсемОбъектамРасчетовВозможностиПробитиеЕдиногоЧекаПоставки(ОбъектыРасчетов, ДанныеДокументаОплаты.ЭтоПриходДенежныхСредств) Тогда
Возврат Ложь;
КонецЕсли;
- Если ПоДокументуОплатыПробитЧек(ДокументОплаты) Тогда
+ Если ДатаОплатыОтличаетсяОтДатыПоставки(ДанныеДокументаОплаты.Ссылка, ОбъектыРасчетов) Тогда
+ Возврат Ложь;
+ КонецЕсли;
+
+ Если ПоДокументуОплатыПробитЧек(ДанныеДокументаОплаты.Ссылка) Тогда
Возврат Ложь;
КонецЕсли;
Если НЕ ПоВсемОбъектамРасчетовНеобходимоПробитьЧек(ОбъектыРасчетов) Тогда
@@ -2786,6 +2805,19 @@
КонецФункции
+// Возвращает структуру с описанием документа оплаты единого чека. Данные применимы, только если свойство
+// ЕстьВозможностьПробитияЕдиногоЧека установлено в значение Истина.
+//
+// Параметры:
+// ДокументСсылка - ДокументСсылка - Ссылка на проверяемый документ
+//
+// Возвращаемое значение:
+// Структура - со свойствами:
+// *ЕстьВозможностьПробитияЕдиногоЧека - Булево
+// *ЭтоПриходДенежныхСредств - Неопределено,Булево
+// *Ссылка - ДокументСсылка -
+// *СуммаДокумента - Число
+//
Функция ДокументОплатыСВозможностьюПробитияЕдиногоЧека(ДокументСсылка)
УстановитьПривилегированныйРежим(Истина);
@@ -2795,7 +2827,8 @@
Запрос.Текст =
"ВЫБРАТЬ
- | ПриходныйКассовыйОрдер.Ссылка
+ | ИСТИНА КАК ЭтоПриходДенежныхСредств,
+ | ПриходныйКассовыйОрдер.СуммаДокумента КАК СуммаДокумента
|ИЗ
| Документ.ПриходныйКассовыйОрдер КАК ПриходныйКассовыйОрдер
|ГДЕ
@@ -2806,7 +2839,8 @@
|ОБЪЕДИНИТЬ ВСЕ
|
|ВЫБРАТЬ
- | РасходныйКассовыйОрдер.Ссылка
+ | ЛОЖЬ,
+ | РасходныйКассовыйОрдер.СуммаДокумента
|ИЗ
| Документ.РасходныйКассовыйОрдер КАК РасходныйКассовыйОрдер
|ГДЕ
@@ -2817,16 +2851,37 @@
|ОБЪЕДИНИТЬ ВСЕ
|
|ВЫБРАТЬ
- | ОперацияПоПлатежнойКарте.Ссылка
+ | ВЫБОР
+ | КОГДА ОперацияПоПлатежнойКарте.ХозяйственнаяОперация = ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ВозвратОплатыКлиенту)
+ | ТОГДА ЛОЖЬ
+ | ИНАЧЕ ИСТИНА
+ | КОНЕЦ,
+ | ОперацияПоПлатежнойКарте.СуммаДокумента КАК СуммаДокумента
|ИЗ
| Документ.ОперацияПоПлатежнойКарте КАК ОперацияПоПлатежнойКарте
|ГДЕ
| ОперацияПоПлатежнойКарте.Ссылка = &Ссылка
| И (ОперацияПоПлатежнойКарте.ХозяйственнаяОперация = ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПоступлениеОплатыОтКлиента)
- | ИЛИ ОперацияПоПлатежнойКарте.ХозяйственнаяОперация = ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ВозвратОплатыКлиенту))
+ | ИЛИ ОперацияПоПлатежнойКарте.ХозяйственнаяОперация = ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ВозвратОплатыКлиенту))
| И ОперацияПоПлатежнойКарте.Проведен";
- Возврат НЕ Запрос.Выполнить().Пустой();
+ РезультатЗапроса = Запрос.Выполнить();
+
+ Результат = Новый Структура;
+ Результат.Вставить("Ссылка", ДокументСсылка);
+ Результат.Вставить("ЕстьВозможностьПробитияЕдиногоЧека", Не РезультатЗапроса.Пустой());
+ Результат.Вставить("ЭтоПриходДенежныхСредств", Неопределено);
+ Результат.Вставить("СуммаДокумента", 0);
+
+ Если Результат.ЕстьВозможностьПробитияЕдиногоЧека Тогда
+ Выборка = РезультатЗапроса.Выбрать();
+ Если Выборка.Следующий() Тогда
+ Результат.ЭтоПриходДенежныхСредств = Выборка.ЭтоПриходДенежныхСредств;
+ Результат.СуммаДокумента = Выборка.СуммаДокумента;
+ КонецЕсли;
+ КонецЕсли;
+
+ Возврат Результат;
КонецФункции
@@ -2909,12 +2964,17 @@
Возврат РазрешенныеТипы.Найти(ТипДокументаПоставки) <> Неопределено;
КонецФункции
-Функция ДокументПоставкиСВозможностьюПробитияЕдиногоЧека(ДокументСсылка)
+Функция ДокументПоставкиСВозможностьюПробитияЕдиногоЧека(ДокументСсылка, ЭтоПриходДенежныхСредств)
+
+ Если ЭтоПриходДенежныхСредств = Неопределено Тогда
+ Возврат Ложь;
+ КонецЕсли;
УстановитьПривилегированныйРежим(Истина);
Запрос = Новый Запрос;
Запрос.УстановитьПараметр("Ссылка", ДокументСсылка);
+ Запрос.УстановитьПараметр("ЭтоПриходДенежныхСредств", ЭтоПриходДенежныхСредств);
Запрос.Текст =
"ВЫБРАТЬ
@@ -2924,6 +2984,7 @@
|ГДЕ
| АктВыполненныхРабот.Ссылка = &Ссылка
| И АктВыполненныхРабот.Проведен
+ | И &ЭтоПриходДенежныхСредств = ИСТИНА
|
|ОБЪЕДИНИТЬ ВСЕ
|
@@ -2934,6 +2995,7 @@
|ГДЕ
| ВозвратТоваровОтКлиента.Ссылка = &Ссылка
| И ВозвратТоваровОтКлиента.Проведен
+ | И &ЭтоПриходДенежныхСредств = ЛОЖЬ
|
|ОБЪЕДИНИТЬ ВСЕ
|
@@ -2947,6 +3009,7 @@
| Или РеализацияТоваровУслуг.ХозяйственнаяОперация = ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПереходПраваСобственности))
| И РеализацияТоваровУслуг.Статус = ЗНАЧЕНИЕ(Перечисление.СтатусыРеализацийТоваровУслуг.Отгружено)
| И РеализацияТоваровУслуг.Проведен
+ | И &ЭтоПриходДенежныхСредств = ИСТИНА
|
|ОБЪЕДИНИТЬ ВСЕ
|
@@ -2961,19 +3024,20 @@
| ИЛИ РеализацияУслугПрочихАктивов.ХозяйственнаяОперация
| = ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.РеализацияВнеоборотныхАктивов))
| И РеализацияУслугПрочихАктивов.Статус = ЗНАЧЕНИЕ(Перечисление.СтатусыРеализацийТоваровУслуг.Отгружено)
- | И РеализацияУслугПрочихАктивов.Проведен";
+ | И РеализацияУслугПрочихАктивов.Проведен
+ | И &ЭтоПриходДенежныхСредств = ИСТИНА";
Возврат НЕ Запрос.Выполнить().Пустой();
КонецФункции
-Функция ПоВсемОбъектамРасчетовВозможностиПробитиеЕдиногоЧекаПоставки(ОбъектыРасчетов)
+Функция ПоВсемОбъектамРасчетовВозможностиПробитиеЕдиногоЧекаПоставки(ОбъектыРасчетов, ЭтоПриходДенежныхСредств)
ПоВсемОбъектамРасчетовВозможностиПробитиеЕдиногоЧекаПоставки = Истина;
Для Каждого СтрокаОбъектыРасчетов Из ОбъектыРасчетов Цикл
- Если НЕ ДокументПоставкиСВозможностьюПробитияЕдиногоЧека(СтрокаОбъектыРасчетов.Заказ) Тогда
+ Если Не ДокументПоставкиСВозможностьюПробитияЕдиногоЧека(СтрокаОбъектыРасчетов.Заказ, ЭтоПриходДенежныхСредств) Тогда
ПоВсемОбъектамРасчетовВозможностиПробитиеЕдиногоЧекаПоставки = Ложь;
Прервать;
@@ -3661,7 +3725,8 @@
Для Каждого СтрокаПризнакиСпособаРасчетаАвто Из ПризнакиСпособаРасчетаАвто Цикл
- Если ДокументОплатыСВозможностьюПробитияЕдиногоЧека(СтрокаПризнакиСпособаРасчетаАвто.ДокументРасчета)
+ ДокументОплаты = ДокументОплатыСВозможностьюПробитияЕдиногоЧека(СтрокаПризнакиСпособаРасчетаАвто.ДокументРасчета);
+ Если ДокументОплаты.ЕстьВозможностьПробитияЕдиногоЧека
И ДокументРасчета <> СтрокаПризнакиСпособаРасчетаАвто.ДокументРасчета
И СтрокаПризнакиСпособаРасчетаАвто.ДолгОрганизацииНаНачало > 0
И СтрокаПризнакиСпособаРасчетаАвто.ДолгОрганизацииНаНачало = СтрокаПризнакиСпособаРасчетаАвто.Поставка Тогда
@@ -3762,11 +3827,12 @@
// ТаблицаЗначений - Объекты расчетов с суммами оплат
Функция ДанныеПоОбъектамРасчетовИзРасшифровкиПлатежа(ДокументСсылка)
+ ДокументОплаты = ДокументОплатыСВозможностьюПробитияЕдиногоЧека(ДокументСсылка);
РасшифровкаПлатежа = ОбщегоНазначения.ЗначениеРеквизитаОбъекта(ДокументСсылка, "РасшифровкаПлатежа").Выгрузить();
Если ТипЗнч(РасшифровкаПлатежа) = Тип("ТаблицаЗначений") Тогда
- Если ДокументОплатыСВозможностьюПробитияЕдиногоЧека(ДокументСсылка) Тогда
+ Если ДокументОплаты.ЕстьВозможностьПробитияЕдиногоЧека Тогда
Если РасшифровкаПлатежа.Колонки.Найти("ОснованиеПлатежа") = Неопределено Тогда
РасшифровкаПлатежа.Колонки.Добавить("ОснованиеПлатежа");
КонецЕсли;
@@ -3797,8 +3863,8 @@
ИЛИ ТипЗнч(Объект) = Тип("ДокументСсылка.ЗаявкаНаВозвратТоваровОтКлиента"))
И РасшифровкаПлатежа.Колонки.Найти("ОснованиеПлатежа") <> НЕОПРЕДЕЛЕНО
И ЗначениеЗаполнено(СтрокаРасшифровкиПлатежа.ОснованиеПлатежа)
- И ДокументОплатыСВозможностьюПробитияЕдиногоЧека(ДокументСсылка)
- И ДокументПоставкиСВозможностьюПробитияЕдиногоЧека(СтрокаРасшифровкиПлатежа.ОснованиеПлатежа) Тогда
+ И ДокументОплаты.ЕстьВозможностьПробитияЕдиногоЧека
+ И ДокументПоставкиСВозможностьюПробитияЕдиногоЧека(СтрокаРасшифровкиПлатежа.ОснованиеПлатежа, ДокументОплаты.ЭтоПриходДенежныхСредств) Тогда
СтрокаРасшифровкиПлатежа.Заказ = СтрокаРасшифровкиПлатежа.ОснованиеПлатежа;
Иначе
@@ -3880,6 +3946,45 @@
КонецФункции
+// Возвращает объекты расчетов в привязке к документам оплаты.
+//
+// Параметры:
+// ДокументыОплаты - Массив Из ДокументСсылка - Документы оплаты
+// ИмяКомандыПробитияЧека - Строка - Имя команды пробития чека
+// Возвращаемое значение:
+// Неопределено,ТаблицаЗначений:
+// *Заказ - ДокументСсылка,СправочникСсылка
+// *ДокументОплаты - ДокументСсылка
+// *Сумма - Число
+//
+Функция ОбъектыРасчетовПоДокументамОплатыРазвернуто(ДокументыОплаты, ИмяКомандыПробитияЧека)
+
+ ОбъектыРасчетовДокументаОплаты = Неопределено;
+
+ Для Каждого ДокументОплаты Из ДокументыОплаты Цикл
+ Если ОбъектыРасчетовДокументаОплаты = Неопределено Тогда
+ ОбъектыРасчетовДокументаОплаты = ДанныеПоОбъектамРасчетовПоДокументу(ДокументОплаты, ИмяКомандыПробитияЧека);
+ ОбъектыРасчетовДокументаОплаты.Колонки.Добавить("ДокументОплаты");
+ ОбъектыРасчетовДокументаОплаты.ЗаполнитьЗначения(ДокументОплаты, "ДокументОплаты");
+ Иначе
+ ДанныеПоОбъектамРасчетовПоДокументу = ДанныеПоОбъектамРасчетовПоДокументу(ДокументОплаты, ИмяКомандыПробитияЧека);
+
+ Для Каждого СтрокаДанныхПоОбъекту Из ДанныеПоОбъектамРасчетовПоДокументу Цикл
+ НоваяСтрокаОбъектовРасчетов = ОбъектыРасчетовДокументаОплаты.Добавить();
+ ЗаполнитьЗначенияСвойств(НоваяСтрокаОбъектовРасчетов, СтрокаДанныхПоОбъекту);
+ НоваяСтрокаОбъектовРасчетов.ДокументОплаты = ДокументОплаты;
+ КонецЦикла;
+ КонецЕсли;
+ КонецЦикла;
+
+ Если ОбъектыРасчетовДокументаОплаты <> Неопределено Тогда
+ ОбъектыРасчетовДокументаОплаты.Свернуть("Заказ,ДокументОплаты", "Сумма");
+ КонецЕсли;
+
+ Возврат ОбъектыРасчетовДокументаОплаты;
+
+КонецФункции
+
//-- Локализация
#КонецОбласти
diff --git a/src/CommonModules/ЦенообразованиеКлиентСервер/Ext/Module.bsl b/src/CommonModules/ЦенообразованиеКлиентСервер/Ext/Module.bsl
index 5788c4a19..825ec9cba 100644
--- a/src/CommonModules/ЦенообразованиеКлиентСервер/Ext/Module.bsl
+++ b/src/CommonModules/ЦенообразованиеКлиентСервер/Ext/Module.bsl
@@ -470,4 +470,82 @@
#КонецОбласти
-#КонецОбласти
\ No newline at end of file
+#Область ИнформированиеОбУдаленииУстаревшейФункциональности
+
+// Устанавливает видимость и текст заголовка декорации, информирующей об удалении ценообразования версии 2.0.
+//
+// Параметры:
+// Элементы - ЭлементыФормы
+// ДобавитьСсылкуНаПомощник - Булево
+//
+Процедура УстановитьСвойстваДекорацииИнформированиеОбУдаленииЦенообразованияВерсии20(Элементы, ДобавитьСсылкуНаПомощник = Истина) Экспорт
+
+ ВидимостьЭлемента = Не ЦенообразованиеВызовСервера.ИспользуетсяЦенообразование25('39990101');
+
+ ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(
+ Элементы,
+ "ДекорацияИнформированиеОбУдаленииЦенообразованияВерсии20",
+ "Видимость",
+ ВидимостьЭлемента);
+
+ Если ВидимостьЭлемента Тогда
+
+ ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(
+ Элементы,
+ "ДекорацияИнформированиеОбУдаленииЦенообразованияВерсии20",
+ "Заголовок",
+ ТекстДекорацииИнформированиеОбУдаленииЦенообразованияВерсии20(ДобавитьСсылкуНаПомощник));
+
+ КонецЕсли;
+
+КонецПроцедуры
+
+// Возвращает заголовок информационного сообщения об отключении ценообразование версии 2.0.
+//
+// Параметры:
+// ДобавитьСсылкуНаПомощник - Булево
+//
+// Возвращаемое значение:
+// Строка
+//
+Функция ТекстДекорацииИнформированиеОбУдаленииЦенообразованияВерсии20(ДобавитьСсылкуНаПомощник) Экспорт
+
+ ВерсияПодсистемы20 = "11.0";
+ ВерсияПодсистемы25 = "11.5";
+ ВерсияПрограммы = "11.6.2";
+
+ ЗаголовокСообщения = СтрШаблон(
+ НСтр("ru = 'Внимание! Функциональность ""Ценообразование версии %1""'")
+ + " "
+ + НСтр("ru = 'устарела и будет удалена в версии программы %2.'")
+ + " "
+ + НСтр("ru = 'Пожалуйста, перейдите на ценообразование версии %3.'"),
+ ВерсияПодсистемы20,
+ ВерсияПрограммы,
+ ВерсияПодсистемы25);
+
+ ФорматированныеСтроки = Новый Массив;
+ ФорматированныеСтроки.Добавить(Новый ФорматированнаяСтрока(БиблиотекаКартинок.Предупреждение));
+ ФорматированныеСтроки.Добавить(" ");
+ ФорматированныеСтроки.Добавить(Новый ФорматированнаяСтрока(ЗаголовокСообщения));
+
+ Если ДобавитьСсылкуНаПомощник Тогда
+
+ СсылкаНаОткрытиеПомощника = "e1cib/app/Обработка.ПомощникПереходаНаЦенообразованиеВерсии25";
+
+ ФорматированныеСтроки.Добавить(" ");
+ ФорматированныеСтроки.Добавить(Новый ФорматированнаяСтрока(НСтр("ru = 'Для этого следует воспользоваться'")));
+ ФорматированныеСтроки.Добавить(" ");
+ ФорматированныеСтроки.Добавить(Новый ФорматированнаяСтрока(НСтр("ru = 'помощником'"),,,,
+ СсылкаНаОткрытиеПомощника));
+ ФорматированныеСтроки.Добавить(".");
+
+ КонецЕсли;
+
+ Возврат Новый ФорматированнаяСтрока(ФорматированныеСтроки);
+
+КонецФункции
+
+#КонецОбласти
+
+#КонецОбласти
diff --git a/src/CommonModules/ЦентрЭДО/Ext/Module.bsl b/src/CommonModules/ЦентрЭДО/Ext/Module.bsl
index bbb0ef2e7..028df1a94 100644
--- a/src/CommonModules/ЦентрЭДО/Ext/Module.bsl
+++ b/src/CommonModules/ЦентрЭДО/Ext/Module.bsl
@@ -1,13 +1,10 @@
-#Область ПрограммныйИнтерфейс
+
+#Область СлужебныйПрограммныйИнтерфейс
#Область ДляВызоваИзДругихПодсистем
-#Область КлиентЭДО
-
#Область ОбменСКонтрагентами
-#Область ОбработкаСобытий
-
// Обработка события "После загрузки подтверждения по счету фактуре".
//
// Параметры:
@@ -125,62 +122,19 @@
КонецПроцедуры
-#КонецОбласти // ОбработкаСобытий
-
#КонецОбласти // ОбменСКонтрагентами
#Область УправлениеДоступом
-// Устанавливает служебному пользователю центра ЭДО права доступа к API области данных.
-//
-// Параметры:
-// Пользователь - СправочникСсылка.Пользователи - Пользователь, которому нужно установить права.
-//
-Процедура УстановитьДоступКAPIДляСлужебногоПользователяЦентраЭДО(Пользователь) Экспорт
-
- РольУдаленныйДоступПередачаДанных = Метаданные.Роли.Найти("УдаленныйДоступПередачаДанных");
+// См. РаботаВМоделиСервисаБТСПереопределяемый.УстановитьДоступКAPIОбластиДанных
+Процедура УстановитьДоступКAPIОбластиДанных(Пользователь, ДоступРазрешен) Экспорт
- Если РольУдаленныйДоступПередачаДанных = Неопределено Тогда
- Возврат;
+ Если ДоступРазрешен Тогда
+ УстановитьДоступКAPIДляСлужебногоПользователя(Пользователь);
+ Иначе
+ СнятьДоступКAPIДляСлужебногоПользователя(Пользователь);
КонецЕсли;
- ПользовательИБ = ПользователиИнформационнойБазы.НайтиПоУникальномуИдентификатору(
- ОбщегоНазначения.ЗначениеРеквизитаОбъекта(Пользователь, "ИдентификаторПользователяИБ"));
-
- Если ПользовательИБ.Роли.Содержит(РольУдаленныйДоступПередачаДанных) Тогда
- Возврат;
- КонецЕсли;
-
- ПользовательИБ.Роли.Добавить(РольУдаленныйДоступПередачаДанных);
-
- Если ОбщегоНазначенияБЭД.ЭтоРежимЦентрЭДО() Тогда
- НаборРолейСлужебногоПользования = РолиСлужебногоПользователя();
- Для Каждого НаименованиеРоли Из НаборРолейСлужебногоПользования Цикл
- Роль = Метаданные.Роли.Найти(НаименованиеРоли);
- Если Роль = Неопределено Или ПользовательИБ.Роли.Содержит(Роль) Тогда
- Продолжить;
- КонецЕсли;
-
- ПользовательИБ.Роли.Добавить(Роль);
- КонецЦикла;
- КонецЕсли;
-
- ПользовательИБ.Записать();
-
-КонецПроцедуры
-
-// Снимает у служебного пользователя центра ЭДО права доступа к API области данных.
-//
-// Параметры:
-// Пользователь - СправочникСсылка.Пользователи - Пользователь, у которого нужно снять права.
-//
-Процедура СнятьДоступКAPIДляСлужебногоПользователяЦентраЭДО(Пользователь) Экспорт
-
- ПользовательИБ = ПользователиИнформационнойБазы.НайтиПоУникальномуИдентификатору(
- ОбщегоНазначения.ЗначениеРеквизитаОбъекта(Пользователь, "ИдентификаторПользователяИБ"));
- ПользовательИБ.Роли.Очистить();
- ПользовательИБ.Записать();
-
КонецПроцедуры
#КонецОбласти
@@ -198,48 +152,10 @@
КонецПроцедуры
-// См. ОбщегоНазначенияПереопределяемый.ПриДобавленииОбработчиковУстановкиПараметровСеанса
-Процедура ПриДобавленииОбработчиковУстановкиПараметровСеанса(Обработчики) Экспорт
-
- Обработчики.Вставить("РежимЗагрузкиДанныхВЦентрЭДО", "ЦентрЭДО.УстановитьПараметрыСеанса");
-
-КонецПроцедуры
-
-// Процедура устанавливает значения параметров сеанса.
-//
-// Параметры:
-// ИмяПараметра - Строка
-// УстановленныеПараметры - Массив из Строка
-//
-Процедура УстановитьПараметрыСеанса(ИмяПараметра, УстановленныеПараметры) Экспорт
-
- Если ИмяПараметра = "РежимЗагрузкиДанныхВЦентрЭДО" Тогда
- ПараметрыСеанса.РежимЗагрузкиДанныхВЦентрЭДО = Ложь;
- УстановленныеПараметры.Добавить("РежимЗагрузкиДанныхВЦентрЭДО");
- КонецЕсли;
-
-КонецПроцедуры
-
#КонецОбласти
-#КонецОбласти // КлиентЭДО
-
#КонецОбласти
-// Использовать.
-//
-// Возвращаемое значение:
-// Булево - Использовать
-Функция Использовать() Экспорт
- Возврат ПолучитьФункциональнуюОпцию("ИспользоватьРежимЦентрЭДО");
-КонецФункции
-
-#КонецОбласти
-
-#Область СлужебныйПрограммныйИнтерфейс
-
-#Область Подсистема
-
#Область ОбщегоНазначения
// Возвращаемое значение:
@@ -251,14 +167,12 @@
// Возвращаемое значение:
// Строка
Функция ПредставлениеПодсистемы() Экспорт
- Возврат НСтр("ru = 'Центр ЭДО'");
+ Возврат НСтр("ru = 'Центр ЭДО'", ОбщегоНазначения.КодОсновногоЯзыка());
КонецФункции
-#КонецОбласти
-
// Возвращаемое значение:
-// Булево
-Функция ИспользоватьРежимЦентрЭДО() Экспорт
+// Булево - Использовать
+Функция Использовать() Экспорт
Возврат ПолучитьФункциональнуюОпцию("ИспользоватьРежимЦентрЭДО");
КонецФункции
@@ -451,7 +365,6 @@
КонецЕсли;
Если ЗначениеЗаполнено(РезультатЧтенияЗапроса.ОписанияМетодов) Тогда
- ИнициализироватьПараметрыСеанса();
Версия = ТипКонтентаЗапроса.Версия;
РезультатыМетодов = ВыполнитьМетодыЗапроса(РезультатЧтенияЗапроса.ОписанияМетодов, Версия,
ИдентификаторЗапроса);
@@ -1085,25 +998,6 @@
#КонецОбласти
-#Область ПараметрыСеанса
-
-Процедура ИнициализироватьПараметрыСеанса()
-
- УстановитьПривилегированныйРежим(Истина);
- УстановитьПараметрыСеансаРежимЗагрузки(Ложь);
-
-КонецПроцедуры
-
-// Параметры:
-// Значение - Булево
-Процедура УстановитьПараметрыСеансаРежимЗагрузки(Значение) Экспорт
-
- ПараметрыСеанса.РежимЗагрузкиДанныхВЦентрЭДО = Значение
-
-КонецПроцедуры
-
-#КонецОбласти
-
#КонецЕсли // ВнешнееСоединение
#Область СлужебныйПользователь
@@ -1341,7 +1235,7 @@
// Возвращаемое значение:
// Массив Из Строка
-Функция РолиСлужебногоПользователя() Экспорт
+Функция РолиСлужебногоПользователя()
НаборРолей = Новый Массив;
НаборРолей.Добавить(Метаданные.Роли.ИспользованиеЦентраЭДО.Имя);
@@ -1411,6 +1305,58 @@
КонецФункции
+// Устанавливает служебному пользователю центра ЭДО права доступа к API области данных.
+//
+// Параметры:
+// Пользователь - СправочникСсылка.Пользователи - Пользователь, которому нужно установить права.
+//
+Процедура УстановитьДоступКAPIДляСлужебногоПользователя(Пользователь)
+
+ РольУдаленныйДоступПередачаДанных = Метаданные.Роли.Найти("УдаленныйДоступПередачаДанных");
+
+ Если РольУдаленныйДоступПередачаДанных = Неопределено Тогда
+ Возврат;
+ КонецЕсли;
+
+ ПользовательИБ = ПользователиИнформационнойБазы.НайтиПоУникальномуИдентификатору(
+ ОбщегоНазначения.ЗначениеРеквизитаОбъекта(Пользователь, "ИдентификаторПользователяИБ"));
+
+ Если ПользовательИБ.Роли.Содержит(РольУдаленныйДоступПередачаДанных) Тогда
+ Возврат;
+ КонецЕсли;
+
+ ПользовательИБ.Роли.Добавить(РольУдаленныйДоступПередачаДанных);
+
+ Если ОбщегоНазначенияБЭД.ЭтоРежимЦентрЭДО() Тогда
+ НаборРолейСлужебногоПользования = РолиСлужебногоПользователя();
+ Для Каждого НаименованиеРоли Из НаборРолейСлужебногоПользования Цикл
+ Роль = Метаданные.Роли.Найти(НаименованиеРоли);
+ Если Роль = Неопределено Или ПользовательИБ.Роли.Содержит(Роль) Тогда
+ Продолжить;
+ КонецЕсли;
+
+ ПользовательИБ.Роли.Добавить(Роль);
+ КонецЦикла;
+ КонецЕсли;
+
+ ПользовательИБ.Записать();
+
+КонецПроцедуры
+
+// Снимает у служебного пользователя центра ЭДО права доступа к API области данных.
+//
+// Параметры:
+// Пользователь - СправочникСсылка.Пользователи - Пользователь, у которого нужно снять права.
+//
+Процедура СнятьДоступКAPIДляСлужебногоПользователя(Пользователь)
+
+ ПользовательИБ = ПользователиИнформационнойБазы.НайтиПоУникальномуИдентификатору(
+ ОбщегоНазначения.ЗначениеРеквизитаОбъекта(Пользователь, "ИдентификаторПользователяИБ"));
+ ПользовательИБ.Роли.Очистить();
+ ПользовательИБ.Записать();
+
+КонецПроцедуры
+
#КонецОбласти
#КонецОбласти
diff --git a/src/CommonModules/ЦеныПредприятияЗаполнениеСервер/Ext/Module.bsl b/src/CommonModules/ЦеныПредприятияЗаполнениеСервер/Ext/Module.bsl
index d7839a7a5..f2820d457 100644
--- a/src/CommonModules/ЦеныПредприятияЗаполнениеСервер/Ext/Module.bsl
+++ b/src/CommonModules/ЦеныПредприятияЗаполнениеСервер/Ext/Module.bsl
@@ -264,6 +264,11 @@
КонецЕсли;
+ Запрос.Текст = Запрос.Текст +
+ "
+ |УПОРЯДОЧИТЬ ПО
+ | НомерСтроки"; // @Query-part-1
+
РезультатЗапроса = Запрос.Выполнить();
Если РезультатЗапроса.Пустой() Тогда
Возврат ЦеныЗаполнены;
diff --git a/src/CommonModules/ШтрихкодированиеЕГАИС/Ext/Module.bsl b/src/CommonModules/ШтрихкодированиеЕГАИС/Ext/Module.bsl
index b90c90bb6..56e5d2295 100644
--- a/src/CommonModules/ШтрихкодированиеЕГАИС/Ext/Module.bsl
+++ b/src/CommonModules/ШтрихкодированиеЕГАИС/Ext/Module.bsl
@@ -2299,7 +2299,7 @@
КонецЕсли;
- Если Не ИнтеграцияИСКлиентСервер.ЭтоУпаковка(ДанныеШтрихКода.ТипУпаковки)
+ Если Не ИнтеграцияИСКлиентСервер.ЭтоУпаковка(ДанныеШтрихкода.ТипУпаковки)
И ПараметрыСканирования.ЗапрашиватьНоменклатуру
И (Не ЗначениеЗаполнено(ДанныеШтрихкода.Номенклатура)
Или Не ЗначениеЗаполнено(ДанныеШтрихкода.АлкогольнаяПродукция)) Тогда
@@ -2308,7 +2308,7 @@
КонецЕсли;
- Если Не ИнтеграцияИСКлиентСервер.ЭтоУпаковка(ДанныеШтрихКода.ТипУпаковки)
+ Если Не ИнтеграцияИСКлиентСервер.ЭтоУпаковка(ДанныеШтрихкода.ТипУпаковки)
И ПараметрыСканирования.ЗапрашиватьНоменклатуру
И ЗначениеЗаполнено(ПараметрыСканирования.ДокументОснование)
И Не РезультатОбработки.ТребуетсяВыборНоменклатуры
diff --git a/src/CommonModules/ШтрихкодированиеЕГАИСКлиентСервер/Ext/Module.bsl b/src/CommonModules/ШтрихкодированиеЕГАИСКлиентСервер/Ext/Module.bsl
index 262f340e2..3f681434d 100644
--- a/src/CommonModules/ШтрихкодированиеЕГАИСКлиентСервер/Ext/Module.bsl
+++ b/src/CommonModules/ШтрихкодированиеЕГАИСКлиентСервер/Ext/Module.bsl
@@ -100,8 +100,8 @@
И ДополнительныеПараметры.ДанныеВыбора.Количество() > 0 Тогда
Форма.ДанныеВыбораПоМаркируемойПродукции = ДополнительныеПараметры.ДанныеВыбора;
- Форма.ДанныеВыбораПоМаркируемойПродукции.Вставить("АлкогольнаяПродукция", ДанныеШтрихКода.АлкогольнаяПродукция);
- Форма.ДанныеВыбораПоМаркируемойПродукции.Вставить("ТипШтрихКода", ДанныеШтрихКода.ТипШтрихКода);
+ Форма.ДанныеВыбораПоМаркируемойПродукции.Вставить("АлкогольнаяПродукция", ДанныеШтрихкода.АлкогольнаяПродукция);
+ Форма.ДанныеВыбораПоМаркируемойПродукции.Вставить("ТипШтрихкода", ДанныеШтрихкода.ТипШтрихкода);
Форма.СохраненВыборПоМаркируемойПродукции = Истина;
ШтрихкодированиеИСКлиентСервер.ОтобразитьСохраненныйВыборПоМаркируемойПродукции(Форма);
@@ -197,8 +197,7 @@
КонецЕсли;
Если ТипЗнч(ИсточникДанных) = Тип("ДокументСсылка.АктПостановкиНаБалансЕГАИС") Тогда
- ИсточникДанных = ОбщегоНазначенияИСВызовСервера.ЗначенияРеквизитовОбъекта(
- ИсточникДанных, "ОрганизацияЕГАИС, ВидДокумента, Ссылка, ДокументОснование");
+ ИсточникДанных = ИнтеграцияЕГАИСВызовСервера.РеквизитыИсточникаДанныхПараметровСканирования(ИсточникДанных);
КонецЕсли;
ЭтоПостановкаВРегистр3 = ИсточникДанных.ВидДокумента = ПредопределенноеЗначение("Перечисление.ВидыДокументовЕГАИС.АктПостановкиНаБалансВРегистр3");
@@ -243,8 +242,7 @@
КонецЕсли;
Если ТипЗнч(ИсточникДанных) = Тип("ДокументСсылка.ВозвратИзРегистра2ЕГАИС") Тогда
- ИсточникДанных = ОбщегоНазначенияИСВызовСервера.ЗначенияРеквизитовОбъекта(
- ИсточникДанных, "ОрганизацияЕГАИС, Ссылка, ДокументОснование");
+ ИсточникДанных = ИнтеграцияЕГАИСВызовСервера.РеквизитыИсточникаДанныхПараметровСканирования(ИсточникДанных);
КонецЕсли;
ШтрихкодированиеОбщегоНазначенияЕГАИСКлиентСервер.ВключитьПоддержкуАлкогольнойПродукции(ПараметрыСканирования);
ШтрихкодированиеОбщегоНазначенияЕГАИСКлиентСервер.ВключитьПоддержкуПива(ПараметрыСканирования);
@@ -277,8 +275,7 @@
КонецЕсли;
Если ТипЗнч(ИсточникДанных) = Тип("ДокументСсылка.ЗапросАкцизныхМарокЕГАИС") Тогда
- ИсточникДанных = ОбщегоНазначенияИСВызовСервера.ЗначенияРеквизитовОбъекта(
- ИсточникДанных, "ОрганизацияЕГАИС, Ссылка, ДокументОснование");
+ ИсточникДанных = ИнтеграцияЕГАИСВызовСервера.РеквизитыИсточникаДанныхПараметровСканирования(ИсточникДанных);
КонецЕсли;
ШтрихкодированиеОбщегоНазначенияЕГАИСКлиентСервер.ВключитьПоддержкуАлкогольнойПродукции(
ПараметрыСканирования, КонструкторИСОбщегоНазначенияКлиентСервер.ВидыПродукцииЕГАИСМаркируемые());
@@ -316,8 +313,7 @@
ИсточникДанных = Контекст;
КонецЕсли;
Если ТипЗнч(ИсточникДанных) = Тип("ДокументСсылка.АктСписанияЕГАИС") Тогда
- ИсточникДанных = ОбщегоНазначенияИСВызовСервера.ЗначенияРеквизитовОбъекта(
- ИсточникДанных, "ОрганизацияЕГАИС, Ссылка, ДокументОснование, ВидДокумента");
+ ИсточникДанных = ИнтеграцияЕГАИСВызовСервера.РеквизитыИсточникаДанныхПараметровСканирования(ИсточникДанных);
КонецЕсли;
Если ИсточникДанных.ВидДокумента = ПредопределенноеЗначение("Перечисление.ВидыДокументовЕГАИС.АктСписанияИзРегистра3") Тогда
@@ -368,8 +364,7 @@
ИсточникДанных = Контекст;
КонецЕсли;
Если ТипЗнч(ИсточникДанных) = Тип("ДокументСсылка.ТТНИсходящаяЕГАИС") Тогда
- ИсточникДанных = ОбщегоНазначенияИСВызовСервера.ЗначенияРеквизитовОбъекта(
- ИсточникДанных, "Ссылка, ДокументОснование, Грузоотправитель");
+ ИсточникДанных = ИнтеграцияЕГАИСВызовСервера.РеквизитыИсточникаДанныхПараметровСканирования(ИсточникДанных);
КонецЕсли;
ШтрихкодированиеОбщегоНазначенияЕГАИСКлиентСервер.ВключитьПоддержкуАлкогольнойПродукции(ПараметрыСканирования);
@@ -408,8 +403,7 @@
ИсточникДанных = Контекст;
КонецЕсли;
Если ТипЗнч(ИсточникДанных) = Тип("ДокументСсылка.ЧекЕГАИСВозврат") Тогда
- ИсточникДанных = ОбщегоНазначенияИСВызовСервера.ЗначенияРеквизитовОбъекта(
- ИсточникДанных, "ОрганизацияЕГАИС, Ссылка, ДокументОснование");
+ ИсточникДанных = ИнтеграцияЕГАИСВызовСервера.РеквизитыИсточникаДанныхПараметровСканирования(ИсточникДанных);
КонецЕсли;
ШтрихкодированиеОбщегоНазначенияЕГАИСКлиентСервер.ВключитьПоддержкуАлкогольнойПродукции(
@@ -440,8 +434,7 @@
ИсточникДанных = Контекст;
КонецЕсли;
Если ТипЗнч(ИсточникДанных) = Тип("ДокументСсылка.ЧекЕГАИС") Тогда
- ИсточникДанных = ОбщегоНазначенияИСВызовСервера.ЗначенияРеквизитовОбъекта(
- ИсточникДанных, "ОрганизацияЕГАИС, Ссылка, ДокументОснование");
+ ИсточникДанных = ИнтеграцияЕГАИСВызовСервера.РеквизитыИсточникаДанныхПараметровСканирования(ИсточникДанных);
КонецЕсли;
ШтрихкодированиеОбщегоНазначенияЕГАИСКлиентСервер.ВключитьПоддержкуАлкогольнойПродукции(
@@ -475,8 +468,7 @@
КонецЕсли;
Если ТипЗнч(ИсточникДанных) = Тип("ДокументСсылка.ТТНВходящаяЕГАИС") Тогда
- ИсточникДанных = ОбщегоНазначенияИСВызовСервера.ЗначенияРеквизитовОбъекта(
- ИсточникДанных, Новый Структура("Грузополучатель, Ссылка, ДокументОснование"));
+ ИсточникДанных = ИнтеграцияЕГАИСВызовСервера.РеквизитыИсточникаДанныхПараметровСканирования(ИсточникДанных);
КонецЕсли;
ШтрихкодированиеОбщегоНазначенияЕГАИСКлиентСервер.ВключитьПоддержкуАлкогольнойПродукции(ПараметрыСканирования);
ШтрихкодированиеОбщегоНазначенияЕГАИСКлиентСервер.ВключитьПоддержкуПива(ПараметрыСканирования);
@@ -484,7 +476,8 @@
ПараметрыСканирования.ОрганизацияЕГАИС = ИсточникДанных.Грузополучатель;
ПараметрыСканирования.КонтрольПустогоСтатуса150СимвольныхМарок = Ложь;
ПараметрыСканирования.ПоддерживаютсяОперацииАгрегации = Истина;
-
+ ПараметрыСканирования.КонтрольРасхожденийСДокументомОснованием = Истина;
+ ПараметрыСканирования.ДокументОснование = Неопределено;
ПараметрыСканирования.ЗапрашиватьАлкогольнуюПродукцию = Истина;
ПараметрыСканирования.ЗапрашиватьСправку2 = Истина;
diff --git a/src/CommonModules/ШтрихкодированиеИС/Ext/Module.bsl b/src/CommonModules/ШтрихкодированиеИС/Ext/Module.bsl
index deb9de4eb..71a315395 100644
--- a/src/CommonModules/ШтрихкодированиеИС/Ext/Module.bsl
+++ b/src/CommonModules/ШтрихкодированиеИС/Ext/Module.bsl
@@ -5,7 +5,7 @@
// Формирует данные штрихкодов упаковок.
//
// Параметры:
-// СтрокиТаблицы - Массив Из СтрокаТаблицыЗначений - Массив из строк таблицы значний типа
+// СтрокиТаблицы - Массив Из СтрокаТаблицыЗначений - Массив из строк таблицы значений типа
// См. ШтрихкодированиеОбщегоНазначенияИС.ИнициализацияТаблицыДанныхКодовМаркировки
// ПараметрыСканирования - См. ШтрихкодированиеОбщегоНазначенияИС.ПараметрыСканирования
// ТипыУпаковок - Массив из ПеречислениеСсылка.ТипыУпаковок - Коллекция типов упаковок, по которым будет
@@ -22,7 +22,7 @@
// * Характеристика - ОпределяемыйТип.ХарактеристикаНоменклатуры - Характеристика.
// * Серия - ОпределяемыйТип.СерияНоменклатуры - Серия.
// * Количество - Число - Количество единиц товара соответствующее штрихкоду
-// * МаркируемаяПродукция - Булево - Истина, если продкция подлежит маркированию.
+// * МаркируемаяПродукция - Булево - Истина, если продукция подлежит маркированию.
// * ТребуетВзвешивания - Булево - Истина, если потребительские упаковки номенклатуры требуют взвешивания
// * ПроизвольнаяЕдиницаУчета - Булево - Истина, если учетная единица номенклатуры отличается от индивидуального КМ
// * ВидПродукции - СправочникСсылка.ВидыПродукцииИС - Вид продукции номенклатуры.
@@ -377,7 +377,7 @@
// Формирует коллекции: «ДеревоУпаковок» и «МаркированныеТовары» по ссылке на документ.
// Данные собираются на основании информации справочника «ШтрихкодыУпаковок».
-// Так же возможно получение информации из сервиса Государственных Информационных Систем,
+// Также возможно получение информации из сервиса Государственных Информационных Систем,
// если данное взаимодействие и получение информации предусмотрено.
//
// Параметры:
@@ -386,7 +386,7 @@
// отбор формирования вложенных штрихкодов.
// Детализация - Неопределено, ПеречислениеСсылка.ДетализацияСтруктурыХраненияИС - Детализация,
// с которой необходимо сформировать вложенные штрихкоды.
-// ОтключитьИспользованиеСервиса - Булево - Истина, если не требуется образение в сервис.
+// ОтключитьИспользованиеСервиса - Булево - Истина, если не требуется обращение в сервис.
// Возвращаемое значение:
// Структура - Описание:
// * ШтрихкодыПродукцииДляСопоставления - Массив Из Строка - Массив штрихкодов, которые необходимо сопоставить с номенклатурой,
@@ -428,7 +428,7 @@
// Формирует структуру Вложенные штрихкоды для упаковок на основании существующих данных в ИБ.
//
// Параметры:
-// МассивУпаковок - Массив из СправочникСсылка.ШтрихкодыУпаковокТоваров - Коллекция элементов справочника Штрихкоды упаковок.
+// МассивУпаковок - Массив из СправочникСсылка.ШтрихкодыУпаковокТоваров - Коллекция элементов справочника Штрихкоды упаковок товаров.
// ПараметрыСканирования - См. ПараметрыСканирования
// Возвращаемое значение:
// См. ИнициализацияВложенныхШтрихкодов
@@ -581,13 +581,13 @@
// Формирует коллекции: «ДеревоУпаковок» и «МаркированныеТовары».
// Данные собираются на основании информации справочника «ШтрихкодыУпаковок».
-// Так же возможно получение информации из сервиса Государственных Информационных Систем,
+// Также возможно получение информации из сервиса Государственных Информационных Систем,
// если данное взаимодействие и получение информации предусмотрено.
//
// Параметры:
// Упаковки - Массив из СправочникСсылка.ШтрихкодыУпаковокТоваров - Массив упаковок, по которому формируются вложенные штрихкоды.
// - Массив из см. ШтрихкодированиеИС.НовыйЭлементКоллекцииУпаковокДляРаспределенияПоТоварам -
-// Штрикходы упаковок документа, с дополнительным данными частичного выбытия.
+// Штрихкоды упаковок документа, с дополнительными данными частичного выбытия.
// ПараметрыСканирования - (См. ШтрихкодированиеОбщегоНазначенияИСКлиент.ПараметрыСканирования).
// ЗаполнитьСведенияПоШтрихкодамEAN - Булево - Заполнять данные по штрихкодам EAN.
// СортироватьДанные - Булево - Выполнить сортировку данных
@@ -881,7 +881,7 @@
И ДанныеПоШтрихкодам.ВложенныеШтрихкоды <> Неопределено
И ДанныеПоШтрихкодам.ВложенныеШтрихкоды.ДеревоУпаковок <> Неопределено Тогда
- ПараметрыСозданияШтрихкодов = Справочники.ШтрихкодыУпаковокТоваров.ПараметрыСозданияШтриходовУпаковокПоДеревуМаркируемойПродукции(
+ ПараметрыСозданияШтрихкодов = Справочники.ШтрихкодыУпаковокТоваров.ПараметрыСозданияШтрихкодовУпаковокПоДеревуМаркируемойПродукции(
ДанныеПоШтрихкодам.ВложенныеШтрихкоды.ДеревоУпаковок, ПараметрыСканирования);
ПараметрыСозданияШтрихкодов.ИмяКолонкиКоличествоПотребительскихУпаковок = "КоличествоПотребительскихУпаковок";
Справочники.ШтрихкодыУпаковокТоваров.ЗаполнитьШтрихкодыУпаковокИКоличествоПоДеревуМаркируемойПродукции(
@@ -908,7 +908,7 @@
КонецПроцедуры
-Процедура ЗаполнитьСведенияПоШтриходамДаннымПулаGTIN(ДанныеПоШтрихкодам, ПараметрыСканирования, ДанныеКодовМаркировки = Неопределено) Экспорт
+Процедура ЗаполнитьСведенияПоШтрихкодамПоДаннымПулаGTIN(ДанныеПоШтрихкодам, ПараметрыСканирования, ДанныеКодовМаркировки = Неопределено) Экспорт
Если ДанныеКодовМаркировки = Неопределено Тогда
ДанныеКодовМаркировки = ДанныеПоШтрихкодам.ДанныеКодовМаркировки;
@@ -1236,9 +1236,6 @@
КонецЕсли;
- ТребуетсяСопоставление = Не ЗначениеЗаполнено(СтрокаДанных.Номенклатура)
- Или СтрокаДанных.ТребуетсяСопоставление;
-
ЗначениеУточнения = СтрокаДанных.ШтрихкодНоменклатуры;
Если СтрокаДанных.ВидУпаковки = Перечисления.ВидыУпаковокИС.Логистическая
И Не ЗначениеЗаполнено(СтрокаДанных.GTIN) Тогда // EAN13+5
@@ -1279,8 +1276,22 @@
ЭтоШтрихкодНоменклатуры = Истина;
КонецЕсли;
+ Если ЭтоШтрихкодНоменклатуры
+ И ПараметрыСканирования.ДанныеВыбораПоМаркируемойПродукции <> Неопределено Тогда
+ ДанныеВыбора = ПараметрыСканирования.ДанныеВыбораПоМаркируемойПродукции;
+ Если ДанныеВыбора.Свойство("ЭтоШтрихкодНоменклатуры")
+ И ДанныеВыбора.ЭтоШтрихкодНоменклатуры
+ И GTIN = ДанныеВыбора.GTIN Тогда
+ СтрокаДанных.ТребуетсяСопоставление = Ложь;
+ ЗаполнитьЗначенияСвойств(СтрокаДанных, ДанныеВыбора);
+ КонецЕсли;
+ КонецЕсли;
+
КонецЕсли;
+ ТребуетсяСопоставление = Не ЗначениеЗаполнено(СтрокаДанных.Номенклатура)
+ Или СтрокаДанных.ТребуетсяСопоставление;
+
РезультатПоискаУникален = Неопределено;
ВидПродукцииУникален = Неопределено;
ПодменныеНоменклатурыЧастичногоВыбытие = Новый ТаблицаЗначений();
@@ -2358,7 +2369,7 @@
// * Ошибки - Массив из Строка - тексты ошибок распределения
// * РаспределенныеСтроки - Соответствие из КлючИЗначение:
// * Ключ - СтрокаТабличнойЧасти - исходная строка таблицы товаров
-// * Значение - Массив из См. НовыйРезультатРаспределенияШтрихкодовПоТоварам - результат распределения
+// * Значение - Массив из См. ШтрихкодированиеИСКлиентСервер.НовыйРезультатРаспределенияШтрихкодовПоТоварам - результат распределения
// * СтрокиБезШтрихкодов - Соответствие из КлючИЗначение - устарел. Товар распределяется всегда для отображения ошибок
Функция РаспределениеШтрихкодовУпаковокПоТоварам(ПараметрыРаспределения, Товары, МассивУпаковок) Экспорт
@@ -2606,7 +2617,7 @@
Продолжить;
КонецЕсли;
- РезультатСписания = НовыйРезультатРаспределенияШтрихкодовПоТоварам();
+ РезультатСписания = ШтрихкодированиеИСКлиентСервер.НовыйРезультатРаспределенияШтрихкодовПоТоварам();
Если КонструкторИСОбщегоНазначенияКлиентСервер.ЭтоМаркируемаяПродукцияЕГАИС(СтрокаШтрихкод.ВидПродукции) Тогда
ЗаполнитьЗначенияСвойств(РезультатСписания, СтрокаШтрихкод, СвойстваЗаполненияЕГАИС);
Иначе
@@ -2723,7 +2734,7 @@
Если СтрокиБезУчетаЦены.Количество() Тогда
- РезультатСписания = НовыйРезультатРаспределенияШтрихкодовПоТоварам();
+ РезультатСписания = ШтрихкодированиеИСКлиентСервер.НовыйРезультатРаспределенияШтрихкодовПоТоварам();
Если КонструкторИСОбщегоНазначенияКлиентСервер.ЭтоМаркируемаяПродукцияЕГАИС(СтрокаШтрихкод.ВидПродукции) Тогда
ЗаполнитьЗначенияСвойств(РезультатСписания, СтрокаШтрихкод, СвойстваЗаполненияЕГАИС);
Иначе
@@ -3331,6 +3342,16 @@
КонецЕсли;
РезультатОбработки.ДанныеШтрихкода = ДанныеШтрихкода;
РезультатОбработки.ОткрытьФормуВводаКодаМаркировки = Ложь;
+ // Уточнена необходимость сохранения выбора
+ Если РезультатВыбора.Свойство("ДополнительныеПараметры")
+ И РезультатВыбора.ДополнительныеПараметры <> Неопределено
+ И РезультатВыбора.ДополнительныеПараметры.Свойство("ЗапомнитьВыбор") Тогда
+ Если РезультатОбработки.ДополнительныеПараметры = Неопределено Тогда
+ РезультатОбработки.ДополнительныеПараметры = Новый Структура;
+ КонецЕсли;
+ РезультатОбработки.ДополнительныеПараметры.Вставить("ДанныеВыбора", ОбщегоНазначения.СкопироватьРекурсивно(РезультатВыбора.ДополнительныеПараметры.ДанныеВыбора));
+ РезультатОбработки.ДополнительныеПараметры.Вставить("ЗапомнитьВыбор", РезультатВыбора.ДополнительныеПараметры.ЗапомнитьВыбор);
+ КонецЕсли;
Иначе
Если РезультатВыбора.Свойство("ДанныеВыбора") Тогда
@@ -5885,8 +5906,8 @@
КонецЕсли;
- Если ДанныеДляУточненияСведений.Получить(СтрокаДерева.Штрихкод) <> Неопределено Тогда
- ДанныеДляУточненияСведений.Удалить(СтрокаДерева.Штрихкод);
+ Если ДанныеДляУточненияСведений.Найти(СтрокаДерева.Штрихкод) <> Неопределено Тогда
+ ДанныеДляУточненияСведений.Удалить(ДанныеДляУточненияСведений.Найти(СтрокаДерева.Штрихкод));
КонецЕсли;
КонецЦикла;
@@ -6634,7 +6655,7 @@
КонецЕсли;
ВыключенныеВидыПродукции = ОбщегоНазначенияКлиентСервер.РазностьМассивов(Виды, НастройкиРазбора.Общие.ДоступныеВидыПродукции);
Если ВыключенныеВидыПродукции.Количество() Тогда
- НастройкиРазбора.Общие = РазборКодаМаркировкиИССлужебный.НастройкиРазбораКодаМаркировки(, Ложь);
+ НастройкиРазбора.Общие = РазборКодаМаркировкиИССлужебныйПовтИсп.НастройкиРазбораКодаМаркировки(, Ложь);
КонецЕсли;
Если ОбщегоНазначенияИСПовтИсп.ЭтоПродукцияМОТП(СтрокаДерева.ВидПродукции)
И СтрокаДерева.ВидПродукции = ВидыПродукции Тогда
@@ -6952,7 +6973,7 @@
//
// Параметры:
// ДеревоУпаковок - ДеревоЗначений, СтрокаДереваЗначений - строки для проверки на соотвествие виду продукции.
-// СоответствиеСтрокДереваУпаковок - Соответствие из КлючИЗначение - соотвествие штриходов упаковок и строк дерева.
+// СоответствиеСтрокДереваУпаковок - Соответствие из КлючИЗначение - соотвествие Штрихкодов упаковок и строк дерева.
// ВидПродукции - СправочникСсылка.ВидыПродукцииИС - Вид продукции для отбора строк дерева.
// ПараметрыПроверки - Неопределено, Структура - служебный параметр, при первом вызове передавть неопределено.
Процедура ОтобратьСтрокиДереваПоВидуПродукции(ДеревоУпаковок, СоответствиеСтрокДереваУпаковок,
@@ -7295,7 +7316,7 @@
//
// Параметры:
// ДеревоУпаковок - ДеревоЗначений, СтрокаДереваЗначений - строки, которые будут удалены из соотвествия
-// СоответствиеСтрокДереваУпаковок - Соответствие из КлючИЗначение - соотвествие штриходов упаковок и строк дерева
+// СоответствиеСтрокДереваУпаковок - Соответствие из КлючИЗначение - соотвествие Штрихкодов упаковок и строк дерева
Процедура ОчиститьСоответствиеСтрокДерева(ДеревоУпаковок, СоответствиеСтрокДереваУпаковок)
СоответствиеСтрокДереваУпаковок.Удалить(ДеревоУпаковок.ШтрихкодУпаковки);
@@ -7475,6 +7496,45 @@
Возврат;
КонецЕсли;
+ Если ЗначениеЗаполнено(ДанныеСохраненногоВыбора.Агрегация) Тогда
+ ЗаполнитьДанныеПоШтрихкодамНаОснованииРезультатаУточненияСоставаУпаковки(
+ СтрокаДанных, ДанныеСохраненногоВыбора.Агрегация, ПараметрыСканирования, ЭлементыДляИзменения);
+ Продолжить;
+ КонецЕсли;
+
+ СтрокаДанных.ТребуетсяВыборСерии = Ложь;
+ СтрокаДанных.ТребуетсяСопоставление = Ложь;
+ СтрокаДанных.СписокНоменклатуры = Новый Массив;
+
+ Если Не СтрокаДанных.ЭтоШтрихкодНоменклатуры Тогда
+
+ ИзмененныеСвойства = ЗаполнитьСохраненнымВыборомДанныеШтрихкода(СтрокаДанных, ДанныеСохраненногоВыбора);
+
+ // Если в результате уточнения была выбрана номенклатура, то выбор номенклатуры из списка более не требуется
+ Если ИзмененныеСвойства["Номенклатура"] <> Неопределено Тогда
+ СтрокаДанных.СписокНоменклатуры = Новый Массив;
+ КонецЕсли;
+
+ КонецЕсли;
+
+ Если СтрокаДанных.МаркируемаяПродукция = Истина
+ И Не СтрокаДанных.ЭтоШтрихкодНоменклатуры
+ И ЗначениеЗаполнено(СтрокаДанных.ВидУпаковки) Тогда
+ ОтметитьКОбновлению(ЭлементыДляИзменения, СтрокаДанных, ИзмененныеСвойства);
+ КонецЕсли;
+
+ КонецЦикла;
+
+КонецПроцедуры
+
+Процедура ЗаполнитьДанныеПоШтрихкодамНаОснованииРезультатаУточненияСоставаУпаковки(СтрокаДанных, ДанныеСохраненногоВыбора, ПараметрыСканирования, ЭлементыДляИзменения)
+
+ Для Каждого ВариантВыбора Из ДанныеСохраненногоВыбора Цикл
+
+ Если ШтрихкодированиеИСКлиентСервер.ТребуетсяСброситьСохраненныйВыбор(ВариантВыбора, СтрокаДанных) Тогда
+ Продолжить;
+ КонецЕсли;
+
СтрокаДанных.ТребуетсяВыборСерии = Ложь;
Если Не СтрокаДанных.ЭтоШтрихкодНоменклатуры Тогда
@@ -7494,6 +7554,8 @@
ОтметитьКОбновлению(ЭлементыДляИзменения, СтрокаДанных, ИзмененныеСвойства);
КонецЕсли;
+ Прервать;
+
КонецЦикла;
КонецПроцедуры
@@ -8208,7 +8270,7 @@
НастройкиРазбора = Новый Структура;
НастройкиРазбора.Вставить("Кеш", РазборКодаМаркировкиИССлужебныйКлиентСервер.ИнициализироватьНастройкиИспользующиеРезультатыПредыдущихРазборов());
- НастройкиРазбора.Вставить("Общие", РазборКодаМаркировкиИССлужебный.НастройкиРазбораКодаМаркировки(, ТолькоУчитываемыеВидыПродукции));
+ НастройкиРазбора.Вставить("Общие", РазборКодаМаркировкиИССлужебныйПовтИсп.НастройкиРазбораКодаМаркировки(, ТолькоУчитываемыеВидыПродукции));
НастройкиРазбора.Вставить("Пользовательские", ПользовательскиеПараметрыРазбораКодаМаркировки);
Пока ПродолжатьПоиск Цикл
@@ -8436,8 +8498,7 @@
РезультатСписания.Штрихкод = СтрШаблон("%1AAAA", РезультатСписания.КодМаркировки);
- ИначеЕсли ЗначениеЗаполнено(СтрокаШтрихкод.ПолныйКодМаркировки)
- И МодульКонструкторИСМПОбщегоНазначенияКлиентСервер.ДоступноПолеМРЦ(РезультатСписания.ВидПродукции)
+ ИначеЕсли МодульКонструкторИСМПОбщегоНазначенияКлиентСервер.ДоступноПолеМРЦ(РезультатСписания.ВидПродукции)
И РезультатСписания.ВидУпаковки = Перечисления.ВидыУпаковокИС.Потребительская
И ЗначениеЗаполнено(СтрокаШтрихкод.ПолныйКодМаркировки)
И (РезультатСписания.СоставКодаМаркировки = Неопределено
@@ -8462,70 +8523,6 @@
КонецПроцедуры
-// Новый результат распределения штрихкодов по товарам.
-//
-// Возвращаемое значение:
-// Структура - Данные о коде маркировки:
-// * Количество - Число - Количество базовых единиц.
-// * КоличествоУпаковок - Число - Устарел. Количество упаковок.
-// * КоличествоПотребительскихУпаковок - Число - Количество потребительских упаковок.
-// * Штрихкод - Строка - Строковое представление кода маркиаровки.
-// * ВидПродукции - СправочникСсылка.ВидыПродукцииИС, Неопределено - Вид продукции.
-// * ВидУпаковки - ПеречислениеСсылка.ВидыУпаковокИС, Неопределено - Вид упаковки.
-// * ШтрихкодУпаковки - СправочникСсылка.ШтрихкодыУпаковокТоваров, Неопределено - Штрихкод упаковки.
-// * ТипШтрихкода - ПеречислениеСсылка.ТипыШтрихкодов, Неопределено - Тип штрихкода.
-// * КодМаркировки - Строка, Неопределено - Нормализованный код маркировки.
-// * ПолныйКодМаркировки - Строка, Неопределено - Полный код маркировки (base64).
-// * КодИдентификации - Строка, Неопределено - Код идентификации для фиксации продажи в Локальном модуле ЧЗ.
-// * СоставКодаМаркировки - Структура, Неопределено - Состав кода маркировки.
-// * ЧастичноеВыбытие - Булево - Признак частичного выбытия части упаковки.
-// * ЕмкостьПотребительскойУпаковки - Число - Знаменатель значения частичного выбытия.
-// * ТекстОшибки - Строка, Неопределено - Текст ошибки распределения.
-// * ЗапрещеноИгнорироватьОшибку - Булево - Признак запрета пробития чека при наличии такой ошибки
-// * КодЕдиницыИзмерения - Строка, Неопределено - Код единицы измерения частично выбытия.
-// * ЧастичноеВыбытиеКоличество - Число - Количество частичного выбытия.
-// * РазрешительныйРежимИдентификаторЗапросаГИСМТ - ОпределяемыйТип.УникальныйИдентификаторИС - идентификатор запроса ГИС МТ
-// * РазрешительныйРежимДатаЗапросаГИСМТ - Строка - дата получения идентификатора ГИС МТ в формате timestamp
-// * РазрешительныйРежимИдентификаторЭкземпляраПО - Строка - идентификатор экземпляра ПО Локальный модуль
-// * РазрешительныйРежимВерсияБазы - Строка - версия баз черных списков Локального модуля
-// * ЧастичноеВыбытиеОстаток - Неопределено, Число - остаток во вскрытой потребительской упаковке
-// * ЧастичноеВыбытиеКомментарий - Неопределено, Строка - комментарий к вскрытию упаковки, например, Кран №1 для пива
-// * МинимальнаяРозничнаяЦена - Число - максимальная розничная цена для Табака и минимальная розничная цена для НСП
-// * Сумма - Число - сумма продажи с учетом скидок для проверки минимальной розничной цены НСП
-Функция НовыйРезультатРаспределенияШтрихкодовПоТоварам()
-
- ВозвращаемоеЗначение = Новый Структура;
- ВозвращаемоеЗначение.Вставить("Количество", 0);
- ВозвращаемоеЗначение.Вставить("КоличествоПотребительскихУпаковок", 0);
- ВозвращаемоеЗначение.Вставить("КоличествоУпаковок", 0);
- ВозвращаемоеЗначение.Вставить("Штрихкод", "");
- ВозвращаемоеЗначение.Вставить("ВидПродукции", Неопределено);
- ВозвращаемоеЗначение.Вставить("ВидУпаковки", Неопределено);
- ВозвращаемоеЗначение.Вставить("КодМаркировки", Неопределено);
- ВозвращаемоеЗначение.Вставить("ПолныйКодМаркировки", Неопределено);
- ВозвращаемоеЗначение.Вставить("КодИдентификации", Неопределено);
- ВозвращаемоеЗначение.Вставить("СоставКодаМаркировки", Неопределено);
- ВозвращаемоеЗначение.Вставить("ШтрихкодУпаковки", Неопределено);
- ВозвращаемоеЗначение.Вставить("ТипШтрихкода", Неопределено);
- ВозвращаемоеЗначение.Вставить("ЕмкостьПотребительскойУпаковки", 0);
- ВозвращаемоеЗначение.Вставить("ЧастичноеВыбытие", Ложь);
- ВозвращаемоеЗначение.Вставить("ТекстОшибки", Неопределено);
- ВозвращаемоеЗначение.Вставить("ЗапрещеноИгнорироватьОшибку", Ложь);
- ВозвращаемоеЗначение.Вставить("КодЕдиницыИзмерения", Неопределено);
- ВозвращаемоеЗначение.Вставить("ЧастичноеВыбытиеКоличество", 0);
- ВозвращаемоеЗначение.Вставить("РазрешительныйРежимИдентификаторЗапросаГИСМТ", "");
- ВозвращаемоеЗначение.Вставить("РазрешительныйРежимДатаЗапросаГИСМТ", "");
- ВозвращаемоеЗначение.Вставить("РазрешительныйРежимИдентификаторЭкземпляраПО", "");
- ВозвращаемоеЗначение.Вставить("РазрешительныйРежимВерсияБазы", "");
- ВозвращаемоеЗначение.Вставить("ЧастичноеВыбытиеОстаток", Неопределено);
- ВозвращаемоеЗначение.Вставить("ЧастичноеВыбытиеКомментарий", Неопределено);
- ВозвращаемоеЗначение.Вставить("МинимальнаяРозничнаяЦена", 0);
- ВозвращаемоеЗначение.Вставить("Сумма", 0);
-
- Возврат ВозвращаемоеЗначение;
-
-КонецФункции
-
// Заполнить количество частичное выбытие.
//
// Параметры:
@@ -8581,7 +8578,7 @@
// Заполнить данные вскрытых потребительских упаковок.
//
// Параметры:
-// СтрокиРаспределения - Массив из см. НовыйРезультатРаспределенияШтрихкодовПоТоварам
+// СтрокиРаспределения - Массив из см. ШтрихкодированиеИСКлиентСервер.НовыйРезультатРаспределенияШтрихкодовПоТоварам
Процедура ЗаполнитьДанныеВскрытыхПотребительскихУпаковок(СтрокиРаспределения)
КодыМаркировки = Новый Массив();
@@ -8615,6 +8612,8 @@
Процедура ДополнитьРаспределениеПоТоварамБезШтрихкодов(ВозвращаемоеЗначение, ПараметрыРаспределения, ПараметрыСканирования, Дата, ТаблицаТовары, Товары)
+ ВидПродукцииПоНоменклатуре = Новый Соответствие();
+
ПоддерживаетсяОбъемноСортовойУчет = ПараметрыСканирования.Свойство("ПоддерживаетсяОбъемноСортовойУчет")
И ПараметрыСканирования.ПоддерживаетсяОбъемноСортовойУчет;
@@ -8625,7 +8624,7 @@
ТаблицаДанныхОСУ = ТаблицаТовары.СкопироватьКолонки();
ТаблицаДанныхОСУ.Колонки.Добавить("ВидУпаковки", Новый ОписаниеТипов("ПеречислениеСсылка.ВидыУпаковокИС"));
- ТаблицаДанныхОСУ.Колонки.Добавить("ВидПродукции", Новый ОписаниеТипов("СправочникСсылка.КлючиВидовПродукцииИС"));
+ ТаблицаДанныхОСУ.Колонки.Добавить("ВидПродукции", Новый ОписаниеТипов("СправочникСсылка.ВидыПродукцииИС"));
ТаблицаДанныхОСУ.Колонки.Добавить("ЗначениеШтрихкода", Метаданные.ОпределяемыеТипы.GTIN.Тип);
ТаблицаДанныхОСУ.Колонки.Добавить("Обработан", Новый ОписаниеТипов("Булево"));
ТаблицаДанныхОСУ.Колонки.Добавить("Мультитоварная", Новый ОписаниеТипов("Булево"));
@@ -8640,29 +8639,10 @@
КонецЕсли;
- СтруктураПоиска = Новый Структура("Номенклатура, Характеристика");
- ВидПродукцииПоНоменклатуре = Новый Соответствие();
- КешВидовПродукцииГИСМТПоКлючу = Новый Соответствие();
- ОписаниеНоменклатуры = ОбщегоНазначенияИС.ОписаниеНоменклатуры(ТаблицаТовары.ВыгрузитьКолонку("Номенклатура"));
- Для Каждого КлючИЗначение Из ОписаниеНоменклатуры Цикл
- КлючВидовПродукции = ОписаниеНоменклатуры[КлючИЗначение.Ключ].КлючВидовПродукции;
- ВидПродукцииГИСМТ = КешВидовПродукцииГИСМТПоКлючу[КлючВидовПродукции];
- Если ВидПродукцииГИСМТ = Неопределено Тогда
- ВидПродукцииГИСМТ = КонструкторИСОбщегоНазначенияКлиентСервер.ВидПродукцииКлючаПоПодсистеме(
- КлючВидовПродукции, "ГИСМТ");
- КешВидовПродукцииГИСМТПоКлючу[КлючВидовПродукции] = ВидПродукцииГИСМТ;
- КонецЕсли;
- ЭлементКоллекции = Новый Структура;
- ЭлементКоллекции.Вставить("КлючВидовПродукции", КлючВидовПродукции);
- ЭлементКоллекции.Вставить("ВидПродукцииГИСМТ", ВидПродукцииГИСМТ);
- ВидПродукцииПоНоменклатуре.Вставить(КлючИЗначение.Ключ, ЭлементКоллекции);
- КонецЦикла;
+ СтруктураПоиска = Новый Структура("Номенклатура, Характеристика");
Для Каждого СтрокаТовары Из ТаблицаТовары Цикл
- ВидПродукцииГИСМТ = ВидПродукцииПоНоменклатуре[СтрокаТовары.Номенклатура].ВидПродукцииГИСМТ;
- КлючВидовПродукции = ВидПродукцииПоНоменклатуре[СтрокаТовары.Номенклатура].КлючВидовПродукции;
-
Если ПоддерживаетсяОбъемноСортовойУчет Тогда
ЗаполнитьЗначенияСвойств(СтруктураПоиска, СтрокаТовары);
СтрокиАвтоматическогоОСУ = ТаблицаДанныхОСУ.НайтиСтроки(СтруктураПоиска);
@@ -8676,8 +8656,7 @@
Если Не ЗначениеЗаполнено(СтрокаАвтоматическогоОСУ.ЗначениеШтрихкода) Тогда
СтрокаАвтоматическогоОСУ.ЗначениеШтрихкода = "00000000000000";
КонецЕсли;
-
- РезультатСписания = НовыйРезультатРаспределенияШтрихкодовПоТоварам();
+ РезультатСписания = ШтрихкодированиеИСКлиентСервер.НовыйРезультатРаспределенияШтрихкодовПоТоварам();
РезультатСписания.Количество = СтрокаТовары.Количество;
РезультатСписания.КоличествоПотребительскихУпаковок = КоличествоПотребительскихУпаковок;
РезультатСписания.ВидУпаковки = СтрокаАвтоматическогоОСУ.ВидУпаковки;
@@ -8686,10 +8665,9 @@
РезультатСписания.Штрихкод = ШтрихкодированиеОбщегоНазначенияИСКлиентСервер.ОСУПоШтрихкодуEAN(
СтрокаАвтоматическогоОСУ.ЗначениеШтрихкода, КоличествоПотребительскихУпаковок);
РезультатСписания.КодМаркировки = РезультатСписания.Штрихкод;
-
ДанныеРазбора = РазборКодаМаркировкиИССлужебный.РазобратьКодМаркировки(
РезультатСписания.Штрихкод,
- ВидПродукцииГИСМТ,,,
+ РезультатСписания.ВидПродукции,,,
ПользовательскиеПараметрыРазбораКодаМаркировки);
Если ДанныеРазбора <> Неопределено Тогда
РезультатСписания.СоставКодаМаркировки = ДанныеРазбора.СоставКодаМаркировки;
@@ -8703,32 +8681,39 @@
КонецЕсли;
КонецЕсли;
- ОперацияИС = ШтрихкодированиеОбщегоНазначенияИСКлиентСервер.ОперацияИС(ПараметрыСканирования, ВидПродукцииГИСМТ);
- ЭтоПродукцияИСМП = ОбщегоНазначенияИСПовтИсп.ЭтоПродукцияИСМП(ВидПродукцииГИСМТ, Истина);
+ ВидПродукции = ВидПродукцииПоНоменклатуре.Получить(СтрокаТовары.Номенклатура);
+ Если ВидПродукции = Неопределено Тогда
+ ВидПродукции = ОбщегоНазначенияИС.ОписаниеНоменклатуры(
+ СтрокаТовары.Номенклатура)[СтрокаТовары.Номенклатура].КлючВидовПродукции;
+ ВидПродукцииПоНоменклатуре.Вставить(СтрокаТовары.Номенклатура, ВидПродукции);
+ КонецЕсли;
+
+ ОперацияИС = ШтрихкодированиеОбщегоНазначенияИСКлиентСервер.ОперацияИС(ПараметрыСканирования, ВидПродукции);
+ ЭтоПродукцияИСМП = ОбщегоНазначенияИСПовтИсп.ЭтоПродукцияИСМП(ВидПродукции, Истина);
Если ЭтоПродукцияИСМП Тогда
МодульОбщегоНазначенияИСМППовтИсп = ОбщегоНазначенияИСПовтИсп.ОбщийМодуль("ОбщегоНазначенияИСМППовтИсп");
Если ПараметрыРаспределения.ЭтоПробитиеЧека Тогда
- ТребуетсяКонтрольМарок = МодульОбщегоНазначенияИСМППовтИсп.ДействуетУведомительныйРежимПоВидуПродукции(ВидПродукцииГИСМТ, Дата)
- И Не МодульОбщегоНазначенияИСМППовтИсп.РазрешенОборотНемаркируемыхОстатковПродукции(ВидПродукцииГИСМТ, Дата);
+ ТребуетсяКонтрольМарок = МодульОбщегоНазначенияИСМППовтИсп.ДействуетУведомительныйРежимПоВидуПродукции(ВидПродукции, Дата)
+ И Не МодульОбщегоНазначенияИСМППовтИсп.РазрешенОборотНемаркируемыхОстатковПродукции(ВидПродукции, Дата);
Иначе
- ТребуетсяКонтрольМарок = МодульОбщегоНазначенияИСМППовтИсп.ДействуетКонтрольПоВидуОперацииИПродукции(ОперацияИС, ВидПродукцииГИСМТ, Дата);
+ ТребуетсяКонтрольМарок = МодульОбщегоНазначенияИСМППовтИсп.ДействуетКонтрольПоВидуОперацииИПродукции(ОперацияИС, ВидПродукции, Дата);
КонецЕсли;
Иначе
ТребуетсяКонтрольМарок = Ложь;
КонецЕсли;
- Если Не ОбщегоНазначенияИСПовтИсп.ЭтоПродукцияИСМП(ВидПродукцииГИСМТ, Истина)
+ Если Не ОбщегоНазначенияИСПовтИсп.ЭтоПродукцияИСМП(ВидПродукции, Истина)
Или Не ТребуетсяКонтрольМарок
Или ПараметрыРаспределения.ДопустимыТоварыБезМарок Тогда
Продолжить;
КонецЕсли;
- РезультатСписания = НовыйРезультатРаспределенияШтрихкодовПоТоварам();
+ РезультатСписания = ШтрихкодированиеИСКлиентСервер.НовыйРезультатРаспределенияШтрихкодовПоТоварам();
РезультатСписания.Количество = СтрокаТовары.Количество;
- РезультатСписания.ВидПродукции = КлючВидовПродукции;
+ РезультатСписания.ВидПродукции = ВидПродукции;
ДобавитьСтрокуРаспределенияВРезультат(ВозвращаемоеЗначение, Товары, СтрокаТовары, РезультатСписания);
diff --git a/src/CommonModules/ШтрихкодированиеИСКлиент/Ext/Module.bsl b/src/CommonModules/ШтрихкодированиеИСКлиент/Ext/Module.bsl
index 81f207ce4..cff2bd9bd 100644
--- a/src/CommonModules/ШтрихкодированиеИСКлиент/Ext/Module.bsl
+++ b/src/CommonModules/ШтрихкодированиеИСКлиент/Ext/Module.bsl
@@ -921,6 +921,9 @@
ДанныеВыбора.Вставить("ПроизвольнаяЕдиницаУчета", Ложь);
ДанныеВыбора.Вставить("ТребуетВзвешивания", Ложь);
+ // Агрегация однородных упаковок
+ ДанныеВыбора.Вставить("Агрегация", Неопределено);
+
СтруктурыДанных = Новый Структура;
СтруктурыДанных.Вставить("ЗапомнитьВыбор", Ложь);
СтруктурыДанных.Вставить("ДанныеВыбора", ДанныеВыбора);
diff --git a/src/CommonModules/ШтрихкодированиеИСКлиентСервер/Ext/Module.bsl b/src/CommonModules/ШтрихкодированиеИСКлиентСервер/Ext/Module.bsl
index ee92d9f6e..e5520d324 100644
--- a/src/CommonModules/ШтрихкодированиеИСКлиентСервер/Ext/Module.bsl
+++ b/src/CommonModules/ШтрихкодированиеИСКлиентСервер/Ext/Module.bsl
@@ -73,6 +73,70 @@
КонецПроцедуры
+// Новый результат распределения штрихкодов по товарам.
+//
+// Возвращаемое значение:
+// Структура - Данные о коде маркировки:
+// * Количество - Число - Количество базовых единиц.
+// * КоличествоУпаковок - Число - Устарел. Количество упаковок.
+// * КоличествоПотребительскихУпаковок - Число - Количество потребительских упаковок.
+// * Штрихкод - Строка - Строковое представление кода маркиаровки.
+// * ВидПродукции - СправочникСсылка.ВидыПродукцииИС, Неопределено - Вид продукции.
+// * ВидУпаковки - ПеречислениеСсылка.ВидыУпаковокИС, Неопределено - Вид упаковки.
+// * ШтрихкодУпаковки - СправочникСсылка.ШтрихкодыУпаковокТоваров, Неопределено - Штрихкод упаковки.
+// * ТипШтрихкода - ПеречислениеСсылка.ТипыШтрихкодов, Неопределено - Тип штрихкода.
+// * КодМаркировки - Строка, Неопределено - Нормализованный код маркировки.
+// * ПолныйКодМаркировки - Строка, Неопределено - Полный код маркировки (base64).
+// * КодИдентификации - Строка, Неопределено - Код идентификации для фиксации продажи в Локальном модуле ЧЗ.
+// * СоставКодаМаркировки - Структура, Неопределено - Состав кода маркировки.
+// * ЧастичноеВыбытие - Булево - Признак частичного выбытия части упаковки.
+// * ЕмкостьПотребительскойУпаковки - Число - Знаменатель значения частичного выбытия.
+// * ТекстОшибки - Строка, Неопределено - Текст ошибки распределения.
+// * ЗапрещеноИгнорироватьОшибку - Булево - Признак запрета пробития чека при наличии такой ошибки
+// * КодЕдиницыИзмерения - Строка, Неопределено - Код единицы измерения частично выбытия.
+// * ЧастичноеВыбытиеКоличество - Число - Количество частичного выбытия.
+// * РазрешительныйРежимИдентификаторЗапросаГИСМТ - ОпределяемыйТип.УникальныйИдентификаторИС - идентификатор запроса ГИС МТ
+// * РазрешительныйРежимДатаЗапросаГИСМТ - Строка - дата получения идентификатора ГИС МТ в формате timestamp
+// * РазрешительныйРежимИдентификаторЭкземпляраПО - Строка - идентификатор экземпляра ПО Локальный модуль
+// * РазрешительныйРежимВерсияБазы - Строка - версия баз черных списков Локального модуля
+// * ЧастичноеВыбытиеОстаток - Неопределено, Число - остаток во вскрытой потребительской упаковке
+// * ЧастичноеВыбытиеКомментарий - Неопределено, Строка - комментарий к вскрытию упаковки, например, Кран №1 для пива
+// * МинимальнаяРозничнаяЦена - Число - максимальная розничная цена для Табака и минимальная розничная цена для НСП
+// * Сумма - Число - сумма продажи с учетом скидок для проверки минимальной розничной цены НСП
+Функция НовыйРезультатРаспределенияШтрихкодовПоТоварам() Экспорт
+
+ ВозвращаемоеЗначение = Новый Структура;
+ ВозвращаемоеЗначение.Вставить("Количество", 0);
+ ВозвращаемоеЗначение.Вставить("КоличествоПотребительскихУпаковок", 0);
+ ВозвращаемоеЗначение.Вставить("КоличествоУпаковок", 0);
+ ВозвращаемоеЗначение.Вставить("Штрихкод", "");
+ ВозвращаемоеЗначение.Вставить("ВидПродукции", Неопределено);
+ ВозвращаемоеЗначение.Вставить("ВидУпаковки", Неопределено);
+ ВозвращаемоеЗначение.Вставить("КодМаркировки", Неопределено);
+ ВозвращаемоеЗначение.Вставить("ПолныйКодМаркировки", Неопределено);
+ ВозвращаемоеЗначение.Вставить("КодИдентификации", Неопределено);
+ ВозвращаемоеЗначение.Вставить("СоставКодаМаркировки", Неопределено);
+ ВозвращаемоеЗначение.Вставить("ШтрихкодУпаковки", Неопределено);
+ ВозвращаемоеЗначение.Вставить("ТипШтрихкода", Неопределено);
+ ВозвращаемоеЗначение.Вставить("ЕмкостьПотребительскойУпаковки", 0);
+ ВозвращаемоеЗначение.Вставить("ЧастичноеВыбытие", Ложь);
+ ВозвращаемоеЗначение.Вставить("ТекстОшибки", Неопределено);
+ ВозвращаемоеЗначение.Вставить("ЗапрещеноИгнорироватьОшибку", Ложь);
+ ВозвращаемоеЗначение.Вставить("КодЕдиницыИзмерения", Неопределено);
+ ВозвращаемоеЗначение.Вставить("ЧастичноеВыбытиеКоличество", 0);
+ ВозвращаемоеЗначение.Вставить("РазрешительныйРежимИдентификаторЗапросаГИСМТ", "");
+ ВозвращаемоеЗначение.Вставить("РазрешительныйРежимДатаЗапросаГИСМТ", "");
+ ВозвращаемоеЗначение.Вставить("РазрешительныйРежимИдентификаторЭкземпляраПО", "");
+ ВозвращаемоеЗначение.Вставить("РазрешительныйРежимВерсияБазы", "");
+ ВозвращаемоеЗначение.Вставить("ЧастичноеВыбытиеОстаток", Неопределено);
+ ВозвращаемоеЗначение.Вставить("ЧастичноеВыбытиеКомментарий", Неопределено);
+ ВозвращаемоеЗначение.Вставить("МинимальнаяРозничнаяЦена", 0);
+ ВозвращаемоеЗначение.Вставить("Сумма", 0);
+
+ Возврат ВозвращаемоеЗначение;
+
+КонецФункции
+
#КонецОбласти
#Область СлужебныйПрограммныйИнтерфейс
@@ -328,6 +392,11 @@
ДобавитьРазделительСтрок(ДлинаСтроки,ОбщаяДлина,МассивСтрок);
КонецЕсли;
+ Если ДанныеВыбора.Свойство("Агрегация") И ЗначениеЗаполнено(ДанныеВыбора.Агрегация) Тогда
+ МассивСтрок.Добавить(Новый ФорматированнаяСтрока(
+ СтрШаблон(НСтр("ru = 'Сохранен выбор вложений упаковки (%1)'"),ДанныеВыбора.Агрегация.Количество())));
+ КонецЕсли;
+
МассивСтрок.Добавить(". ");
Если ОбщаяДлина > 80 Тогда
МассивСтрок.Добавить(Символы.ПС);
@@ -489,6 +558,8 @@
Если ДанныеВыбора = Неопределено Тогда
Возврат Ложь;
+ ИначеЕсли ДанныеВыбора.Агрегация <> Неопределено Тогда //групповое уточнение не сбрасывается
+ Возврат Ложь;
ИначеЕсли ЗначениеЗаполнено(ДанныеВыбора.GTIN)
И (Не РазборКодаМаркировкиИССлужебныйКлиентСервер.ЭтоВнутреннийШтрихкод(ДанныеШтрихкода.GTIN) Или Не ЗначениеЗаполнено(ДанныеШтрихкода.Номенклатура))
И ДанныеШтрихкода.GTIN <> ДанныеВыбора.GTIN Тогда
diff --git a/src/CommonModules/ШтрихкодированиеИСМП/Ext/Module.bsl b/src/CommonModules/ШтрихкодированиеИСМП/Ext/Module.bsl
index 2f0d14649..fe629470c 100644
--- a/src/CommonModules/ШтрихкодированиеИСМП/Ext/Module.bsl
+++ b/src/CommonModules/ШтрихкодированиеИСМП/Ext/Module.bsl
@@ -114,9 +114,10 @@
ШтрихкодыМассив = ШтрихкодыУпаковок.ВыгрузитьКолонку("ШтрихкодУпаковки");
ШтрихкодированиеИС.ВыделитьШтрихкодыСодержащиеВидыПродукции(ШтрихкодыМассив, ПараметрыСканирования.ДопустимыеВидыПродукции);
Если ШтрихкодыУпаковок.Количество() > ШтрихкодыМассив.Количество() Тогда
- Для Каждого СтрокаТЧ Из ШтрихкодыУпаковок Цикл
+ Для Индекс = ШтрихкодыУпаковок.Количество() - 1 По 0 Цикл
+ СтрокаТЧ = ШтрихкодыУпаковок[Индекс];
Если ЗначениеЗаполнено(СтрокаТЧ.ШтрихкодУпаковки) И ШтрихкодыМассив.Найти(СтрокаТЧ.ШтрихкодУпаковки) = Неопределено Тогда
- ШтрихкодыУпаковок.Удалить(СтрокаТЧ);
+ ШтрихкодыУпаковок.Удалить(Индекс);
КонецЕсли;
КонецЦикла;
КонецЕсли;
@@ -341,7 +342,7 @@
// * Ошибки - Массив из Строка - тексты ошибок распределения
// * РаспределенныеСтроки - Соответствие из КлючИЗначение:
// * Ключ - СтрокаТабличнойЧасти - исходная строка таблицы товаров
-// * Значение - Массив из См. НовыйРезультатРаспределенияШтрихкодовПоТоварам - результат распределения
+// * Значение - Массив из См. ШтрихкодированиеИСКлиентСервер.НовыйРезультатРаспределенияШтрихкодовПоТоварам - результат распределения
// * СтрокиБезШтрихкодов - Соответствие из КлючИЗначение - устарел. Товар распределяется всегда для отображения ошибок
Функция РаспределениеШтрихкодовУпаковокПоТоварам(ПараметрыРаспределения, Товары, МассивУпаковок) Экспорт
diff --git a/src/CommonModules/ШтрихкодированиеИСМПВызовСервера/Ext/Module.bsl b/src/CommonModules/ШтрихкодированиеИСМПВызовСервера/Ext/Module.bsl
index fb195a949..368a3a503 100644
--- a/src/CommonModules/ШтрихкодированиеИСМПВызовСервера/Ext/Module.bsl
+++ b/src/CommonModules/ШтрихкодированиеИСМПВызовСервера/Ext/Module.bsl
@@ -207,4 +207,17 @@
КонецПроцедуры
+Функция РеквизитыИсточникаДанныхПараметровСканирования(ИсточникДанных) Экспорт
+
+ Если ТипЗнч(ИсточникДанных) = Тип("ДокументСсылка.ОтчетОПроизводствеЕГАИС")
+ Или ТипЗнч(ИсточникДанных) = Тип("ДокументСсылка.ОтчетОбИмпортеЕГАИС") Тогда
+ ОписаниеПолейОбъекта = Новый Структура("Организация, ДокументОснование", "ОрганизацияЕГАИС.Контрагент", "ДокументОснование");
+ Иначе
+ Возврат ИсточникДанных;
+ КонецЕсли;
+
+ Возврат ОбщегоНазначения.ЗначенияРеквизитовОбъекта(ИсточникДанных, ОписаниеПолейОбъекта);
+
+КонецФункции
+
#КонецОбласти
\ No newline at end of file
diff --git a/src/CommonModules/ШтрихкодированиеИСМПКлиент/Ext/Module.bsl b/src/CommonModules/ШтрихкодированиеИСМПКлиент/Ext/Module.bsl
index 8a869ea46..4bd3b3edd 100644
--- a/src/CommonModules/ШтрихкодированиеИСМПКлиент/Ext/Module.bsl
+++ b/src/CommonModules/ШтрихкодированиеИСМПКлиент/Ext/Module.bsl
@@ -5,7 +5,7 @@
// Формирует новый элемент проверки средствами ККТ на основании данных распределения.
//
// Параметры:
-// РезультатРаспределения - см. ШтрихкодированиеИСМП.НовыйРезультатРаспределенияШтрихкодовПоТоварам.
+// РезультатРаспределения - см. ШтрихкодированиеИСКлиентСервер.НовыйРезультатРаспределенияШтрихкодовПоТоварам.
//
// Возвращаемое значение:
// Структура - см. ШтрихкодированиеОбщегоНазначенияИСМПКлиентСервер.НовыйЭлементДанныхПроверкиСредствамиККТ
@@ -653,7 +653,7 @@
Если ПараметрыСканирования.ИСМП Тогда
ВидПродукции = КонструкторИСОбщегоНазначенияКлиентСервер.ВидПродукцииКлючаПоПодсистеме(ВидМаркируемойПродукции, "ГИСМТ");
КонецЕсли;
- Если ВидПродукции = Неопределено И ПараметрыСканирования.ЕГАИС Тогда
+ Если Не ЗначениеЗаполнено(ВидПродукции) И ПараметрыСканирования.ЕГАИС Тогда
ВидПродукции = КонструкторИСОбщегоНазначенияКлиентСервер.ВидПродукцииКлючаПоПодсистеме(ВидМаркируемойПродукции, "ЕГАИС");
КонецЕсли;
Иначе
diff --git a/src/CommonModules/ШтрихкодированиеИСМПКлиентСервер/Ext/Module.bsl b/src/CommonModules/ШтрихкодированиеИСМПКлиентСервер/Ext/Module.bsl
index 269158ad6..f955c2c5b 100644
--- a/src/CommonModules/ШтрихкодированиеИСМПКлиентСервер/Ext/Module.bsl
+++ b/src/CommonModules/ШтрихкодированиеИСМПКлиентСервер/Ext/Module.bsl
@@ -1917,8 +1917,7 @@
Организация = Контекст.Организация;
//Ссылка
ИначеЕсли ТипЗнч(Контекст) = Тип("ДокументСсылка.ОтчетОбИмпортеЕГАИС") Тогда
- СтруктураПараметров = Новый Структура("Организация, ДокументОснование", "ОрганизацияЕГАИС.Контрагент", "ДокументОснование");
- ИсточникДанных = ОбщегоНазначенияИСВызовСервера.ЗначенияРеквизитовОбъекта(Контекст, СтруктураПараметров);
+ ИсточникДанных = ШтрихкодированиеИСМПВызовСервера.РеквизитыИсточникаДанныхПараметровСканирования(Контекст);
Организация = ИсточникДанных.Организация;
//Объект
Иначе
@@ -1974,8 +1973,7 @@
Организация = Контекст.Организация;
//Ссылка
ИначеЕсли ТипЗнч(Контекст) = Тип("ДокументСсылка.ОтчетОПроизводствеЕГАИС") Тогда
- СтруктураПараметров = Новый Структура("Организация, ДокументОснование", "ОрганизацияЕГАИС.Контрагент", "ДокументОснование");
- ИсточникДанных = ОбщегоНазначенияИСВызовСервера.ЗначенияРеквизитовОбъекта(Контекст, СтруктураПараметров);
+ ИсточникДанных = ШтрихкодированиеИСМПВызовСервера.РеквизитыИсточникаДанныхПараметровСканирования(Контекст);
Организация = ИсточникДанных.Организация;
//Объект
Иначе
diff --git a/src/CommonModules/ШтрихкодированиеИСМПСлужебный/Ext/Module.bsl b/src/CommonModules/ШтрихкодированиеИСМПСлужебный/Ext/Module.bsl
index 5f041922f..0cce3d504 100644
--- a/src/CommonModules/ШтрихкодированиеИСМПСлужебный/Ext/Module.bsl
+++ b/src/CommonModules/ШтрихкодированиеИСМПСлужебный/Ext/Module.bsl
@@ -86,7 +86,7 @@
// Этап 1. Если документа-основания или подходящих строк в нем нет, заполнение не производится.
// Этап 2. Единственной подходящей строкой из документа-основания.
// Этап 3. Если подходит несколько строк основания - то единственной подходящей строкой,
-// по которой не завершент подбор маркируемой продукции, из текущего документа.
+// по которой не завершен подбор маркируемой продукции, из текущего документа.
//
// Параметры:
// СтрокаДанных - СтрокаТаблицыЗначений - строка в которой заполняется специфика
@@ -1335,9 +1335,9 @@
ТекстОшибки = НСтр(
"ru = 'В коде упаковки не содержится GTIN, невозможно определить
|количество вложенных потребительских упаковок.
- |Включите опцию ""Запрашивать данные сервиса ГИС МТ""
- |в панели администрирования ""Интеграция с ИС МП (обувь, одежда, табак...)""
- |в разделе ""Настройки сканирования кодов маркировки""
+ |Включите опцию ""Контроль статусов кодов маркировки""
+ |в панели администрирования
+ |""Маркировка (Честный знак) - Настройки и справочники - Контроль кодов маркировки""
|или отсканируйте содержимое упаковки.'");
КонецЕсли;
@@ -1350,9 +1350,9 @@
ТекстОшибки = НСтр(
"ru = 'В режиме детализации: ""Полная"" обработка логистических упаковок и групповых упаковок
|невозможна, так как выключена опция
- |""Запрашивать данные сервиса ГИС МТ"".
- |Включите опцию в панели администрирования ""Интеграция с ИС МП (обувь, одежда, табак...)""
- |в разделе ""Настройки сканирования кодов маркировки""
+ |""Контроль статусов кодов маркировки"".
+ |Включите опцию в панели администрирования
+ |""Маркировка (Честный знак) - Настройки и справочники - Контроль кодов маркировки""
|или отсканируйте вложенные пачки
|или измените режим детализации на ""Коробки с групповыми упаковками"".'");
@@ -1364,9 +1364,9 @@
ТекстОшибки = НСтр(
"ru = 'В режиме детализации: ""Потребительские упаковки"" обработка логистических упаковок и групповых упаковок
|невозможна, так как выключена опция
- |""Запрашивать данные сервиса ГИС МТ"".
- |Включите опцию в панели администрирования ""Интеграция с ИС МП (обувь, одежда, табак...)""
- |в разделе ""Настройки сканирования кодов маркировки""
+ |""Контроль статусов кодов маркировки"".
+ |Включите опцию в панели администрирования
+ |""Маркировка (Честный знак) - Настройки и справочники - Контроль кодов маркировки""
|или отсканируйте вложенные потребительские упаковки
|или измените режим детализации на ""Коробки с групповыми упаковками"".'");
@@ -1378,9 +1378,9 @@
ТекстОшибки = НСтр(
"ru = 'В режиме детализации: ""Групповые упаковки с потребительскими"" обработка логистических упаковок
|и групповых упаковок невозможна, так как выключена опция
- |""Запрашивать данные сервиса ГИС МТ"".
- |Включите опцию в панели администрирования ""Интеграция с ИС МП (обувь, одежда, табак...)""
- |в разделе ""Настройки сканирования кодов маркировки""
+ |""Контроль статусов кодов маркировки"".
+ |Включите опцию в панели администрирования
+ |""Маркировка (Честный знак) - Настройки и справочники - Контроль кодов маркировки""
|или отсканируйте вложенные потребительские упаковки
|или измените режим детализации на ""Коробки с групповыми упаковками"".'");
@@ -1392,15 +1392,15 @@
ТекстОшибки = НСтр(
"ru = 'В режиме детализации: ""Коробки с групповыми упаковками"" обработка логистических упаковок
|невозможна, так как выключена опция
- |""Запрашивать данные сервиса ГИС МТ"".
- |Включите опцию в панели администрирования ""Интеграция с ИС МП (обувь, одежда, табак...)""
- |в разделе ""Настройки сканирования кодов маркировки""
+ |""Контроль статусов кодов маркировки"".
+ |Включите опцию в панели администрирования
+ |""Маркировка (Честный знак) - Настройки и справочники - Контроль кодов маркировки""
|или отсканируйте вложенные групповые упаковки
|или измените режим детализации на ""Палеты с коробками"".'");
КонецЕсли;
- Если ЗначениеЗаполнено(ТекстОшибки) ТОгда
+ Если ЗначениеЗаполнено(ТекстОшибки) Тогда
Если ПустаяСтрока(СтрокаДанных.ТекстОшибки) Тогда
СтрокаДанных.ТекстОшибки = ТекстОшибки;
Иначе
@@ -1776,9 +1776,9 @@
ТекстОшибки = НСтр(
"ru = 'Обработка логистических упаковок, групповых упаковок и наборов
|невозможна, так как выключена опция
- |""Запрашивать данные сервиса ГИС МТ"".
- |Включите опцию в панели администрирования ""Интеграция с ИС МП (обувь, одежда, табак...)""
- |в разделе ""Настройки сканирования кодов маркировки"".'");
+ |""Контроль статусов кодов маркировки"".
+ |Включите опцию в панели администрирования
+ |""Маркировка (Честный знак) - Настройки и справочники - Контроль кодов маркировки"".'");
Если ДанныеРазбора = Неопределено Тогда
@@ -1927,14 +1927,14 @@
// Возвращаемое значение:
// (См. ИнициализацияРезультатаПолученияВложенныхШтрихкодовПоДаннымИСМП).
Функция ВложенныеШтрихкодыПоДаннымИСМП(ДанныеШтрихкодовСписок, ПараметрыСканирования, НормализоватьВложенныеШтрихкоды = Истина,
- ДляУпаковокТребоватьПодключениеМОТП = Ложь, КешДаныхРазбора = Неопределено) Экспорт
+ ДляУпаковокТребоватьПодключениеМОТП = Ложь, КешДанныхРазбора = Неопределено) Экспорт
РезультатФормированияВложенныхШтрихкодов = ШтрихкодированиеИССлужебный.ИнициализацияРезультатаФормированияВложенныхШтрихкодов();
РезультатФормированияВложенныхШтрихкодов.Вставить("СоответствиеСтрокДерева", Новый Соответствие);
ДанныеПоШтрихкодам = ШтрихкодированиеОбщегоНазначенияИС.ИнициализацияДанныхПоШтрихкодам(Ложь);
ШтрихкодированиеОбщегоНазначенияИС.ПодготовитьДанныеКодовМаркировкиДляОбработки(
- ДанныеПоШтрихкодам, ДанныеШтрихкодовСписок, ПараметрыСканирования, КешДаныхРазбора);
+ ДанныеПоШтрихкодам, ДанныеШтрихкодовСписок, ПараметрыСканирования, КешДанныхРазбора);
Если ДляУпаковокТребоватьПодключениеМОТП Тогда
@@ -3240,7 +3240,8 @@
РезультатЗапроса = ИнтерфейсМОТП.ЗапроситьСтатусыКодовМаркировки(
ДанныеДляЗапроса,
ПараметрыСканирования.Организация,
- ШтрихкодированиеИСМПКлиентСервер.РазрешеноЗапрашиватьСтатусыКодовЕАЭС(ПараметрыСканирования));
+ ШтрихкодированиеИСМПКлиентСервер.РазрешеноЗапрашиватьСтатусыКодовЕАЭС(ПараметрыСканирования),
+ Ложь); // Разбирать вложения при определении товарной группы не требуется
Если РезультатЗапроса.ТребуетсяОбновлениеКлючаСессии Тогда
ДанныеПоШтрихкодам.ТребуетсяОбновлениеКлючаСессии = РезультатЗапроса.ТребуетсяОбновлениеКлючаСессии;
@@ -4962,7 +4963,7 @@
КонтролироватьСтатусыКодовМаркировки = НастройкаПараметровСканированияСлужебныйКлиентСерверПовтИсп.КонтролироватьСтатусыКодовМаркировки(
СтрокаДерева.ВидПродукции,
ПараметрыСканирования.ВидОперацииИСМП,
- ПараметрыСканирования.ТребуетсяПроверкаСредствамиККТ);
+ ПараметрыСканирования.ТребуетсяПроверкаСредствамиККТ Или ПараметрыСканирования.ЭтоОблачнаяККТИСМП);
Иначе
КонтролироватьСтатусыКодовМаркировки = Ложь;
КонецЕсли;
@@ -6871,7 +6872,7 @@
Истина, ПараметрыОбработки.ЭтоЗаполнениеВложенныхШтрихкодов);
КонецЕсли;
- ПараметрыСозданияШтрихкодов = Справочники.ШтрихкодыУпаковокТоваров.ПараметрыСозданияШтриходовУпаковокПоДеревуМаркируемойПродукции(
+ ПараметрыСозданияШтрихкодов = Справочники.ШтрихкодыУпаковокТоваров.ПараметрыСозданияШтрихкодовУпаковокПоДеревуМаркируемойПродукции(
ВложенныеШтрихкоды.ДеревоУпаковок, ПараметрыСканирования);
ПараметрыСозданияШтрихкодов.ИмяКолонкиКоличествоПотребительскихУпаковок = "КоличествоПотребительскихУпаковок";
@@ -8714,7 +8715,7 @@
Возврат ТаблицаТовары;
-Конецфункции
+КонецФункции
Функция ИнициализироватьТаблицуТоваровТОРГ2() Экспорт
@@ -8729,7 +8730,7 @@
Возврат ТаблицаТовары;
-Конецфункции
+КонецФункции
Функция ИнициализироватьЗаполнитьПутьКУпаковкамТОРГ2()
@@ -8746,7 +8747,7 @@
Возврат ПутьКУпаковкам;
-Конецфункции
+КонецФункции
Функция ИнициализироватьЗаполнитьПутьКУпаковкамВидУпаковкиТОРГ2()
@@ -8763,7 +8764,7 @@
Возврат ПутьКУпаковкам;
-Конецфункции
+КонецФункции
Функция ИнициализироватьЗаполнитьПутьКУпаковкамУПД()
@@ -8774,7 +8775,7 @@
Возврат ПутьКУпаковкам;
-Конецфункции
+КонецФункции
Функция ИнициализироватьЗаполнитьПутьКУпаковкамУКД(ДоКорректировки = Истина, ПослеКорректировки = Истина)
@@ -8793,7 +8794,7 @@
КонецЕсли;
Возврат ПутьКУпаковкам;
-Конецфункции
+КонецФункции
#КонецОбласти
diff --git a/src/CommonModules/ШтрихкодированиеИССлужебный/Ext/Module.bsl b/src/CommonModules/ШтрихкодированиеИССлужебный/Ext/Module.bsl
index 9a21feec4..9b6bbbd54 100644
--- a/src/CommonModules/ШтрихкодированиеИССлужебный/Ext/Module.bsl
+++ b/src/CommonModules/ШтрихкодированиеИССлужебный/Ext/Module.bsl
@@ -81,7 +81,7 @@
КонецЦикла;
ТекстЗапроса =
- "ВЫБРАТЬ
+ "ВЫБРАТЬ РАЗЛИЧНЫЕ
| %3
|ИЗ
| Документ.%1.%2 КАК Штрихкоды
diff --git a/src/CommonModules/ШтрихкодированиеМОТП/Ext/Module.bsl b/src/CommonModules/ШтрихкодированиеМОТП/Ext/Module.bsl
index 165109ffc..bbfbaa3dd 100644
--- a/src/CommonModules/ШтрихкодированиеМОТП/Ext/Module.bsl
+++ b/src/CommonModules/ШтрихкодированиеМОТП/Ext/Module.bsl
@@ -709,9 +709,9 @@
ТекстОшибки = НСтр(
"ru = 'В коде упаковки не содержится GTIN, невозможно определить
|количество вложенных пачек.
- |Включите опцию ""Запрашивать данные сервиса ГИС МТ""
- |в панели администрирования ""Интеграция с ИС МП (обувь, одежда, табак...)""
- |в разделе ""Настройки сканирования кодов маркировки""
+ |Включите опцию ""Контроль статусов кодов маркировки""
+ |в панели администрирования
+ |""Маркировка (Честный знак) - Настройки и справочники - Контроль кодов маркировки""
|или отсканируйте содержимое упаковки.'");
КонецЕсли;
@@ -724,9 +724,9 @@
ТекстОшибки = НСтр(
"ru = 'В режиме детализации: ""Полная"" обработка логистических упаковок и блоков
|невозможна, так как выключена опция
- |""Запрашивать данные сервиса ГИС МТ"".
- |Включите опцию в панели администрирования ""Интеграция с ИС МП (обувь, одежда, табак...)""
- |в разделе ""Настройки сканирования кодов маркировки""
+ |""Контроль статусов кодов маркировки"".
+ |Включите опцию в панели администрирования
+ |""Маркировка (Честный знак) - Настройки и справочники - Контроль кодов маркировки""
|или отсканируйте вложенные пачки
|или измените режим детализации на ""Коробки с блоками"".'");
@@ -738,9 +738,9 @@
ТекстОшибки = НСтр(
"ru = 'В режиме детализации: ""Пачки"" обработка логистических упаковок и блоков
|невозможна, так как выключена опция
- |""Запрашивать данные сервиса ГИС МТ"".
- |Включите опцию в панели администрирования ""Интеграция с ИС МП (обувь, одежда, табак...)""
- |в разделе ""Настройки сканирования кодов маркировки""
+ |""Контроль статусов кодов маркировки"".
+ |Включите опцию в панели администрирования
+ |""Маркировка (Честный знак) - Настройки и справочники - Контроль кодов маркировки""
|или отсканируйте вложенные пачки
|или измените режим детализации на ""Коробки с блоками"".'");
@@ -752,9 +752,9 @@
ТекстОшибки = НСтр(
"ru = 'В режиме детализации: ""Блоки с пачками"" обработка логистических упаковок
|и блоков невозможна, так как выключена опция
- |""Запрашивать данные сервиса ГИС МТ"".
- |Включите опцию в панели администрирования ""Интеграция с ИС МП (обувь, одежда, табак...)""
- |в разделе ""Настройки сканирования кодов маркировки""
+ |""Контроль статусов кодов маркировки"".
+ |Включите опцию в панели администрирования
+ |""Маркировка (Честный знак) - Настройки и справочники - Контроль кодов маркировки""
|или отсканируйте вложенные пачки
|или измените режим детализации на ""Коробки с блоками"".'");
@@ -766,15 +766,15 @@
ТекстОшибки = НСтр(
"ru = 'В режиме детализации: ""Коробки с блоками"" обработка логистических упаковок
|невозможна, так как выключена опция
- |""Запрашивать данные сервиса ГИС МТ"".
- |Включите опцию в панели администрирования ""Интеграция с ИС МП (обувь, одежда, табак...)""
- |в разделе ""Настройки сканирования кодов маркировки""
+ |""Контроль статусов кодов маркировки"".
+ |Включите опцию в панели администрирования
+ |""Маркировка (Честный знак) - Настройки и справочники - Контроль кодов маркировки""
|или отсканируйте вложенные блоки
|или измените режим детализации на ""Палеты с коробками"".'");
КонецЕсли;
- Если ЗначениеЗаполнено(ТекстОшибки) ТОгда
+ Если ЗначениеЗаполнено(ТекстОшибки) Тогда
Если ПустаяСтрока(СтрокаДанных.ТекстОшибки) Тогда
СтрокаДанных.ТекстОшибки = ТекстОшибки;
Иначе
@@ -1791,7 +1791,7 @@
КонецПроцедуры
-// Определяет строки дерева, которые необходимо удалить с соответствие с детализацией.
+// Определяет строки дерева, которые необходимо удалить с соответствии с детализацией.
//
// Параметры:
// СтрокиДерева - КоллекцияСтрокДереваЗначений - Строки дерева упаковок.
@@ -2010,7 +2010,7 @@
КонтролироватьСтатусыКодовМаркировки = НастройкаПараметровСканированияСлужебныйКлиентСерверПовтИсп.КонтролироватьСтатусыКодовМаркировки(
СтрокаДерева.ВидПродукции,
ПараметрыСканирования.ВидОперацииИСМП,
- ПараметрыСканирования.ТребуетсяПроверкаСредствамиККТ);
+ ПараметрыСканирования.ТребуетсяПроверкаСредствамиККТ Или ПараметрыСканирования.ЭтоОблачнаяККТИСМП);
Иначе
КонтролироватьСтатусыКодовМаркировки = Ложь;
КонецЕсли;
@@ -2268,7 +2268,7 @@
ПравилаПроверкиНаОшибки.КонтрольПолногоКодаМаркировки.Добавить(
Новый Структура(
"СтрокаДерева, ТекстОшибки",
- СтрокаДерева, НСтр("ru = 'В структуре кода маркировки отстутствуют разделители GS'")));
+ СтрокаДерева, НСтр("ru = 'В структуре кода маркировки отсутствуют разделители GS'")));
КонецЕсли;
diff --git a/src/CommonModules/ШтрихкодированиеОбщегоНазначенияЕГАИСКлиентСервер/Ext/Module.bsl b/src/CommonModules/ШтрихкодированиеОбщегоНазначенияЕГАИСКлиентСервер/Ext/Module.bsl
index d099e4ee8..8a08ef686 100644
--- a/src/CommonModules/ШтрихкодированиеОбщегоНазначенияЕГАИСКлиентСервер/Ext/Module.bsl
+++ b/src/CommonModules/ШтрихкодированиеОбщегоНазначенияЕГАИСКлиентСервер/Ext/Module.bsl
@@ -95,8 +95,6 @@
ПараметрыСканирования.Вставить("КонтрольАкцизныхМарок", Ложь);
ПараметрыСканирования.Вставить("ОрганизацияЕГАИС", Неопределено);
ПараметрыСканирования.Вставить("КонтрольПустогоСтатуса150СимвольныхМарок", Истина);
- ПараметрыСканирования.Вставить("ИспользуетсяСоответствиеШтрихкодовСтрокДерева", Ложь);
- ПараметрыСканирования.Вставить("СоответствиеШтрихкодовСтрокДерева", Неопределено);
ПараметрыСканирования.Вставить("КонтрольЗаполненияМарокСНомеромИСерией", Истина);
ПараметрыСканирования.Вставить("ДоступныеСтатусы", Новый Массив);
ПараметрыСканирования.Вставить("Операция", Неопределено);
diff --git a/src/CommonModules/ШтрихкодированиеОбщегоНазначенияИС/Ext/Module.bsl b/src/CommonModules/ШтрихкодированиеОбщегоНазначенияИС/Ext/Module.bsl
index e6f7116ac..32d37bd59 100644
--- a/src/CommonModules/ШтрихкодированиеОбщегоНазначенияИС/Ext/Module.bsl
+++ b/src/CommonModules/ШтрихкодированиеОбщегоНазначенияИС/Ext/Module.bsl
@@ -55,7 +55,7 @@
#Область ПрочиеПроцедурыИФункции
// Определяет текст запроса получения признаков номенклатуры:
-// * МаркируемаяПродукция (зависит от конткекста),
+// * МаркируемаяПродукция (зависит от контекста),
// * ВидПродукции (ключ видов продукции).
// Помещает признаки во временную таблицу "СвойстваМаркируемойПродукции".
//
@@ -438,7 +438,7 @@
НастройкиРазбора = Новый Структура;
НастройкиРазбора.Вставить("Кеш", РазборКодаМаркировкиИССлужебныйКлиентСервер.ИнициализироватьНастройкиИспользующиеРезультатыПредыдущихРазборов());
- НастройкиРазбора.Вставить("Общие", РазборКодаМаркировкиИССлужебный.НастройкиРазбораКодаМаркировки());
+ НастройкиРазбора.Вставить("Общие", РазборКодаМаркировкиИССлужебныйПовтИсп.НастройкиРазбораКодаМаркировки());
НастройкиРазбора.Вставить("Пользовательские", ПользовательскиеПараметрыРазбораКодаМаркировки);
ОбщиеМодули = ОбщиеМодулиПодсистем();
@@ -585,7 +585,7 @@
Процедура ЗаполнитьСведенияПоШтрихкодамEANСУчетомВерсии(ДанныеПоШтрихкодам, ПараметрыСканирования, ДанныеКодовМаркировки = Неопределено) Экспорт
Если ПараметрыСканирования.РасширеннаяВерсияГосИС Тогда
- ЗаполнитьСведенияПоШтриходамДаннымПулаGTIN(ДанныеПоШтрихкодам, ПараметрыСканирования);
+ ЗаполнитьСведенияПоШтрихкодамПоДаннымПулаGTIN(ДанныеПоШтрихкодам, ПараметрыСканирования);
Возврат;
КонецЕсли;
@@ -720,9 +720,6 @@
Для Каждого СтрокаДанных Из ДанныеКодовМаркировки Цикл
- ТребуетсяСопоставление = Не ЗначениеЗаполнено(СтрокаДанных.Номенклатура)
- Или СтрокаДанных.ТребуетсяСопоставление;
-
ЗначениеУточнения = СтрокаДанных.ШтрихкодНоменклатуры;
Если СтрокаДанных.ВидУпаковки = Перечисления.ВидыУпаковокИС.Логистическая
И Не ЗначениеЗаполнено(СтрокаДанных.GTIN) Тогда // EAN13+5
@@ -763,8 +760,22 @@
ЭтоШтрихкодНоменклатуры = Истина;
КонецЕсли;
+ Если ЭтоШтрихкодНоменклатуры
+ И ПараметрыСканирования.ДанныеВыбораПоМаркируемойПродукции <> Неопределено Тогда
+ ДанныеВыбора = ПараметрыСканирования.ДанныеВыбораПоМаркируемойПродукции;
+ Если ДанныеВыбора.Свойство("ЭтоШтрихкодНоменклатуры")
+ И ДанныеВыбора.ЭтоШтрихкодНоменклатуры
+ И GTIN = ДанныеВыбора.GTIN Тогда
+ СтрокаДанных.ТребуетсяСопоставление = Ложь;
+ ЗаполнитьЗначенияСвойств(СтрокаДанных, ДанныеВыбора);
+ КонецЕсли;
+ КонецЕсли;
+
КонецЕсли;
+ ТребуетсяСопоставление = Не ЗначениеЗаполнено(СтрокаДанных.Номенклатура)
+ Или СтрокаДанных.ТребуетсяСопоставление;
+
ПодменныеНоменклатурыЧастичногоВыбытие = Новый ТаблицаЗначений();
ПодменныеНоменклатурыЧастичногоВыбытие.Колонки.Добавить("Номенклатура", Метаданные.ОпределяемыеТипы.Номенклатура.Тип);
ПодменныеНоменклатурыЧастичногоВыбытие.Колонки.Добавить("Характеристика", Метаданные.ОпределяемыеТипы.ХарактеристикаНоменклатуры.Тип);
@@ -2215,10 +2226,10 @@
И ПараметрыСканирования.ОпределениеВидаПродукцииИСМП;
Если ДопустимыСтрокиДанныхБезВидаПродукции Тогда
- НастройкиРазбораКодаМаркировки = РазборКодаМаркировкиИССлужебный.НастройкиРазбораКодаМаркировки(, Ложь);
+ НастройкиРазбораКодаМаркировки = РазборКодаМаркировкиИССлужебныйПовтИсп.НастройкиРазбораКодаМаркировки(, Ложь);
ВидыПродукции = КонструкторИСОбщегоНазначенияКлиентСервер.ВидыПродукцииИСМП(Истина);
Иначе
- НастройкиРазбораКодаМаркировки = РазборКодаМаркировкиИССлужебный.НастройкиРазбораКодаМаркировки();
+ НастройкиРазбораКодаМаркировки = РазборКодаМаркировкиИССлужебныйПовтИсп.НастройкиРазбораКодаМаркировки();
ВидыПродукции = ПараметрыСканирования.ДопустимыеВидыПродукции;
КонецЕсли;
@@ -3807,7 +3818,7 @@
Если ПараметрыСканирования.ИСМП Тогда
ВидПродукции = КонструкторИСОбщегоНазначенияКлиентСервер.ВидПродукцииКлючаПоПодсистеме(СтрокаДанных.ВидПродукции, "ГИСМТ");
КонецЕсли;
- Если ВидПродукции = Неопределено И ПараметрыСканирования.ЕГАИС Тогда
+ Если Не ЗначениеЗаполнено(ВидПродукции) И ПараметрыСканирования.ЕГАИС Тогда
ВидПродукции = КонструкторИСОбщегоНазначенияКлиентСервер.ВидПродукцииКлючаПоПодсистеме(СтрокаДанных.ВидПродукции, "ЕГАИС");
КонецЕсли;
Иначе
@@ -3881,13 +3892,14 @@
Если ПараметрыСканирования.ИСМП Тогда
ВидПродукции = КонструкторИСОбщегоНазначенияКлиентСервер.ВидПродукцииКлючаПоПодсистеме(СтрокаДанных.ВидПродукции, "ГИСМТ");
КонецЕсли;
- Если ВидПродукции = Неопределено И ПараметрыСканирования.ЕГАИС Тогда
+ Если Не ЗначениеЗаполнено(ВидПродукции) И ПараметрыСканирования.ЕГАИС Тогда
ВидПродукции = КонструкторИСОбщегоНазначенияКлиентСервер.ВидПродукцииКлючаПоПодсистеме(СтрокаДанных.ВидПродукции, "ЕГАИС");
КонецЕсли;
Иначе
ВидПродукции = СтрокаДанных.ВидПродукции;
КонецЕсли;
+ НеОпределенВидПродукции = Ложь;
Если ЗначениеЗаполнено(ВидПродукции) Тогда
Для Каждого ПроверяемыйВидПродукции Из КонструкторИСОбщегоНазначенияКлиентСервер.ВидыПродукцииМОТП() Цикл
@@ -3917,6 +3929,14 @@
ОбщегоНазначенияКлиентСервер.ДополнитьМассив(ВидыПродукции, Элемент.ВидыПродукции, Истина);
КонецЦикла;
+ ИначеЕсли ВыдаватьОшибку
+ И СтрокаДанных.ПримечаниеКРазборуШтрихкода <> Неопределено
+ И Не ЗначениеЗаполнено(СтрокаДанных.ПримечаниеКРазборуШтрихкода.ИдентификаторОшибки)
+ И Не ЗначениеЗаполнено(ВидПродукции) Тогда
+
+ // Код разобран, соответствует некоторым видам продукции, но определить вид продукции не удалось.
+ НеОпределенВидПродукции = Истина;
+
Иначе
Продолжить;
@@ -3940,6 +3960,12 @@
СтрокаДанных.ТекстОшибки = ТекстОшибкиШтрихкодСоответствуетВидамПродукции(ВидыПродукции);
КонецЕсли;
+ ИначеЕсли НеОпределенВидПродукции Тогда
+
+ Отказ = Истина;
+
+ СтрокаДанных.ТекстОшибки = НСтр("ru = 'Не удалось определить вид продукции'");
+
КонецЕсли;
КонецЦикла;
@@ -4056,7 +4082,7 @@
Если ПараметрыСканирования.ИСМП Тогда
ВидПродукции = КонструкторИСОбщегоНазначенияКлиентСервер.ВидПродукцииКлючаПоПодсистеме(СтрокаДанных.ВидПродукции, "ГИСМТ");
КонецЕсли;
- Если ВидПродукции = Неопределено И ПараметрыСканирования.ЕГАИС Тогда
+ Если Не ЗначениеЗаполнено(ВидПродукции) И ПараметрыСканирования.ЕГАИС Тогда
ВидПродукции = КонструкторИСОбщегоНазначенияКлиентСервер.ВидПродукцииКлючаПоПодсистеме(СтрокаДанных.ВидПродукции, "ЕГАИС");
КонецЕсли;
Иначе
@@ -5924,11 +5950,11 @@
КонецПроцедуры
-Процедура ЗаполнитьСведенияПоШтриходамДаннымПулаGTIN(ДанныеПоШтрихкодам, ПараметрыСканирования)
+Процедура ЗаполнитьСведенияПоШтрихкодамПоДаннымПулаGTIN(ДанныеПоШтрихкодам, ПараметрыСканирования)
//@skip-check wrong-string-literal-content
Модуль = ОбщегоНазначенияИСПовтИсп.ОбщийМодуль("ШтрихкодированиеИС");
- Модуль.ЗаполнитьСведенияПоШтриходамДаннымПулаGTIN(ДанныеПоШтрихкодам, ПараметрыСканирования);
+ Модуль.ЗаполнитьСведенияПоШтрихкодамПоДаннымПулаGTIN(ДанныеПоШтрихкодам, ПараметрыСканирования);
КонецПроцедуры
@@ -6440,8 +6466,8 @@
Если СтрокаТаблицы.Входящий Тогда
Если СтрокаТаблицы.СтрокаДерева = Неопределено Тогда
ВходящийВерхнегоУровня = Истина;
- ИначеЕсли СтрокаТаблицы.СтрокаДерева <> Неопределено
- И СтрокаТаблицы.СтрокаДерева.Родитель = Неопределено Тогда
+ ИначеЕсли СтрокаТаблицы.СтрокаДерева.Родитель = Неопределено
+ Или ГрупповаяОбработкаШтрихкодовИС.ЭтоАгрегатТСД(СтрокаТаблицы.СтрокаДерева.Родитель.Штрихкод) Тогда
ВходящийВерхнегоУровня = Истина;
КонецЕсли;
КонецЕсли;
diff --git a/src/CommonModules/ШтрихкодированиеОбщегоНазначенияИСМП/Ext/Module.bsl b/src/CommonModules/ШтрихкодированиеОбщегоНазначенияИСМП/Ext/Module.bsl
index 55b178571..e22541e33 100644
--- a/src/CommonModules/ШтрихкодированиеОбщегоНазначенияИСМП/Ext/Module.bsl
+++ b/src/CommonModules/ШтрихкодированиеОбщегоНазначенияИСМП/Ext/Module.bsl
@@ -1008,8 +1008,12 @@
// ПараметрыСканирования - см. ШтрихкодированиеОбщегоНазначенияИС.ПараметрыСканирования
Процедура ЗаполнитьДанныеИдентификатораРозничнойПродажиПоОбязательнымТоварнымГруппам(ДанныеПоШтрихкодам, ПараметрыСканирования) Экспорт
- Если Не ОбщегоНазначенияИСМПКлиентСервер.ЗначениеПараметраСканированияЗапрашиватьДанныеСервисаИСМП(ПараметрыСканирования)
- Или Не ПараметрыСканирования.ТребуетсяПроверкаСредствамиККТ Тогда
+ Если Не ОбщегоНазначенияИСМПКлиентСервер.ЗначениеПараметраСканированияЗапрашиватьДанныеСервисаИСМП(ПараметрыСканирования) Тогда
+ Возврат;
+ КонецЕсли;
+
+ Если Не ПараметрыСканирования.ТребуетсяПроверкаСредствамиККТ
+ И Не ПараметрыСканирования.ЭтоОблачнаяККТИСМП Тогда
Возврат;
КонецЕсли;
@@ -1140,7 +1144,7 @@
СтрокаДанныхПоШтрихкодам = СтрокаДанных.Ключ;
ПолучатьОффлайнДанныеГИСМТ = ОбщегоНазначенияИСМПКлиентСерверПовтИсп.ПродукцияПодлежитОбязательнойОффлайнПроверкеПередРозничнойПродажей(
- СтрокаДанныхПоШтрихкодам.ВидПродукции, ПараметрыСканирования.ВидОперацииИСМП, ПараметрыСканирования.ТребуетсяПроверкаСредствамиККТ);
+ СтрокаДанныхПоШтрихкодам.ВидПродукции, ПараметрыСканирования.ВидОперацииИСМП, ПараметрыСканирования.ТребуетсяПроверкаСредствамиККТ Или ПараметрыСканирования.ЭтоОблачнаяККТИСМП);
Если Не ПолучатьОффлайнДанныеГИСМТ Тогда
@@ -1610,7 +1614,7 @@
ТребуетсяПроверкаРазрешительногоРежима = ОбщегоНазначенияИСМПКлиентСерверПовтИсп.ПродукцияПодлежитОбязательнойОнлайнПроверкеПередРозничнойПродажей(
СтрокаДанных.ВидПродукции,
ПараметрыСканирования.ВидОперацииИСМП,
- ПараметрыСканирования.ТребуетсяПроверкаСредствамиККТ);
+ ПараметрыСканирования.ТребуетсяПроверкаСредствамиККТ Или ПараметрыСканирования.ЭтоОблачнаяККТИСМП);
Если СтрокаДанных.ВидУпаковки = Перечисления.ВидыУпаковокИС.ОбъемноСортовойУчет Тогда
СтрокаДанных.ТребуетсяКонтрольМарок = Ложь;
@@ -1682,7 +1686,7 @@
КонтролироватьВладельцев = НастройкаПараметровСканированияСлужебныйКлиентСерверПовтИсп.КонтролироватьВладельцевКодовМаркировки(
СтрокаДанных.ВидПродукции, ПараметрыСканирования.ВидОперацииИСМП);
КонтролироватьСтатусы = НастройкаПараметровСканированияСлужебныйКлиентСерверПовтИсп.КонтролироватьСтатусыКодовМаркировки(
- СтрокаДанных.ВидПродукции, ПараметрыСканирования.ВидОперацииИСМП, ПараметрыСканирования.ТребуетсяПроверкаСредствамиККТ);
+ СтрокаДанных.ВидПродукции, ПараметрыСканирования.ВидОперацииИСМП, ПараметрыСканирования.ТребуетсяПроверкаСредствамиККТ Или ПараметрыСканирования.ЭтоОблачнаяККТИСМП);
КонецЕсли;
СтрокаДанных.ОтключитьЗапросВСервисПоОперацииИПродукции = Не КонтролироватьВладельцев И Не КонтролироватьСтатусы;
@@ -2077,7 +2081,7 @@
КонтролироватьСтатусыКодовМаркировки = НастройкаПараметровСканированияСлужебныйКлиентСерверПовтИсп.КонтролироватьСтатусыКодовМаркировки(
СтрокаДанных.ВидПродукции,
ПараметрыСканирования.ВидОперацииИСМП,
- ПараметрыСканирования.ТребуетсяПроверкаСредствамиККТ);
+ ПараметрыСканирования.ТребуетсяПроверкаСредствамиККТ Или ПараметрыСканирования.ЭтоОблачнаяККТИСМП);
Иначе
КонтролироватьСтатусыКодовМаркировки = Ложь;
КонецЕсли;
@@ -2353,7 +2357,7 @@
Если ОбщегоНазначенияИСМПКлиентСерверПовтИсп.ПродукцияПодлежитОбязательнойОнлайнПроверкеПередРозничнойПродажей(ДопустимыйВидПродукции,
ПараметрыСканирования.ВидОперацииИСМП,
- ПараметрыСканирования.ТребуетсяПроверкаСредствамиККТ) Тогда
+ ПараметрыСканирования.ТребуетсяПроверкаСредствамиККТ Или ПараметрыСканирования.ЭтоОблачнаяККТИСМП) Тогда
НеобходимыПроверкиРозничнойПродажи = Истина;
Прервать;
diff --git a/src/CommonModules/ШтрихкодированиеОбщегоНазначенияИСМПКлиент/Ext/Module.bsl b/src/CommonModules/ШтрихкодированиеОбщегоНазначенияИСМПКлиент/Ext/Module.bsl
index e91fe7633..116111f6a 100644
--- a/src/CommonModules/ШтрихкодированиеОбщегоНазначенияИСМПКлиент/Ext/Module.bsl
+++ b/src/CommonModules/ШтрихкодированиеОбщегоНазначенияИСМПКлиент/Ext/Module.bsl
@@ -25,7 +25,7 @@
РезультатПроверки.ТребуетсяРазрешительныйЗапросГИСМТ = ОбщегоНазначенияИСМПКлиентСерверПовтИсп.ПродукцияПодлежитОбязательнойОнлайнПроверкеПередРозничнойПродажей(
ЭлементПроверки.ВидПродукции,
ПараметрыПроверки.ПараметрыСканирования.ВидОперацииИСМП,
- ПараметрыПроверки.ПараметрыСканирования.ТребуетсяПроверкаСредствамиККТ);
+ ПараметрыПроверки.ПараметрыСканирования.ТребуетсяПроверкаСредствамиККТ Или ПараметрыПроверки.ПараметрыСканирования.ЭтоОблачнаяККТИСМП);
КонтролироватьКодыМаркировкиСредствамиККТ = НастройкаПараметровСканированияСлужебныйКлиентСерверПовтИсп.КонтролироватьКодыМаркировкиСредствамиККТ(
ЭлементПроверки.ВидПродукции,
ПараметрыПроверки.ПараметрыСканирования.ВидОперацииИСМП);
@@ -423,10 +423,7 @@
Если ТребуетсяПроверкаНаЛокальногоМодуле И Не ПроверкаНаЛокальномМодулеЗавершена Тогда
Форма = ПараметрыЗавершенияВводаШтрихкода.Форма;
-
- Если ПараметрыСканирования.РежимБРМК Тогда
- ПараметрыЗавершенияВводаШтрихкода.Форма = Неопределено;
- КонецЕсли;
+ ПараметрыЗавершенияВводаШтрихкода.Форма = Неопределено;
Форма.КодМаркировкиДляУточнения = ПараметрыЗавершенияВводаШтрихкода;
Форма.ПодключитьОбработчикОжидания("Подключаемый_ОткрытьФормуУточненияДанных", 0.1, Истина);
@@ -436,10 +433,7 @@
ИначеЕсли ТребуетсяПроверкаТСПИоТ И Не ПроверкаТСПИоТЗавершена Тогда
Форма = ПараметрыЗавершенияВводаШтрихкода.Форма;
-
- Если ПараметрыСканирования.РежимБРМК Тогда
- ПараметрыЗавершенияВводаШтрихкода.Форма = Неопределено;
- КонецЕсли;
+ ПараметрыЗавершенияВводаШтрихкода.Форма = Неопределено;
Форма.КодМаркировкиДляУточнения = ПараметрыЗавершенияВводаШтрихкода;
Форма.ПодключитьОбработчикОжидания("Подключаемый_ОткрытьФормуУточненияДанных", 0.1, Истина);
@@ -1757,12 +1751,12 @@
РезультатПроверки = ПараметрыПроверки.Результат.ДанныеПроверки[ЭлементПроверки.ИдентификаторЭлемента];
- Если Не ОбщегоНазначенияИСМПКлиентСерверПовтИсп.ПродукцияПодлежитОбязательнойОнлайнПроверкеПередРозничнойПродажей(ЭлементПроверки.ВидПродукции, ПараметрыСканирования.ВидОперацииИСМП, ПараметрыСканирования.ТребуетсяПроверкаСредствамиККТ) Тогда
+ Если Не ОбщегоНазначенияИСМПКлиентСерверПовтИсп.ПродукцияПодлежитОбязательнойОнлайнПроверкеПередРозничнойПродажей(ЭлементПроверки.ВидПродукции, ПараметрыСканирования.ВидОперацииИСМП, ПараметрыСканирования.ТребуетсяПроверкаСредствамиККТ Или ПараметрыСканирования.ЭтоОблачнаяККТИСМП) Тогда
ПроизведенКонтрольСтатусов = НастройкаПараметровСканированияСлужебныйКлиентСерверПовтИсп.КонтролироватьСтатусыКодовМаркировки(
ЭлементПроверки.ВидПродукции,
ПараметрыПроверки.ПараметрыСканирования.ВидОперацииИСМП,
- ПараметрыСканирования.ТребуетсяПроверкаСредствамиККТ);
+ ПараметрыСканирования.ТребуетсяПроверкаСредствамиККТ Или ПараметрыСканирования.ЭтоОблачнаяККТИСМП);
ПроизведенКонтрольВладельцев = НастройкаПараметровСканированияСлужебныйКлиентСерверПовтИсп.КонтролироватьВладельцевКодовМаркировки(
ЭлементПроверки.ВидПродукции,
diff --git a/src/CommonModules/ШтрихкодированиеОбщегоНазначенияИСМПКлиентСервер/Ext/Module.bsl b/src/CommonModules/ШтрихкодированиеОбщегоНазначенияИСМПКлиентСервер/Ext/Module.bsl
index e6646e5d8..394d4068a 100644
--- a/src/CommonModules/ШтрихкодированиеОбщегоНазначенияИСМПКлиентСервер/Ext/Module.bsl
+++ b/src/CommonModules/ШтрихкодированиеОбщегоНазначенияИСМПКлиентСервер/Ext/Module.bsl
@@ -7,7 +7,7 @@
//
// Параметры:
// Контекст - ФормаКлиентскогоПриложения, ДокументСсылка - источник заполнения параметров сканирования
-// ВидПродукции - СправочникСсылка.ВидыПродукцииИС - по данному параметру будет проиходить отбор заполнения
+// ВидПродукции - СправочникСсылка.ВидыПродукцииИС - по данному параметру будет проходить отбор заполнения
// ПараметрыСканирования - См. ШтрихкодированиеОбщегоНазначенияИСКлиент.ПараметрыСканирования
// ПараметрыРежимаИсправленияОшибок - Структура - Параметры режима исправления ошибок
Процедура ЗаполнитьПараметрыСканирования(Контекст, ВидПродукции, ПараметрыСканирования, ПараметрыРежимаИсправленияОшибок = Неопределено) Экспорт
@@ -114,7 +114,7 @@
#КонецОбласти
-#Область ПроверкаКодовМаркировкиСредствамиКТТ
+#Область ПроверкаКодовМаркировкиСредствамиККТ
// Конструктор элемента данных для проверки кода маркировки средствами ККТ.
//
@@ -238,7 +238,7 @@
КонецПроцедуры
-#Область ПроверкаКодовМаркировкиСредствамиКТТ
+#Область ПроверкаКодовМаркировкиСредствамиККТ
Функция НовыйЭлементПроверкиСредствамиККТПоДаннымШтрихкода(ДанныеШтрихкода) Экспорт
@@ -404,8 +404,8 @@
// Структура - Новая структура установки дополнительных свойств при проверке ККТ:
// * Идентификатор - УникальныйИдентификатор -
// * СтрокаТовары - Структура, СтрокаТаблицыЗначений, СтрокаДереваЗначений - Исходная строка товаров с полями "Номенклатура", "Упаковка"
-// * СтрокаНазначения - см. ШтрихкодированиеИСМП.НовыйРезультатРаспределенияШтрихкодовПоТоварам, см. ШтрихкодированиеОбщегоНазначенияИСМПКлиентСервер.НовыйЭлементДанныхПроверкиСредствамиККТ -
-// Коллекция свойств, в составе которых присутствует свойство: КодЕдиницыИзмерения.
+// * СтрокаНазначения - см. ШтрихкодированиеИСКлиентСервер.НовыйРезультатРаспределенияШтрихкодовПоТоварам
+// - см. ШтрихкодированиеОбщегоНазначенияИСМПКлиентСервер.НовыйЭлементДанныхПроверкиСредствамиККТ - Коллекция свойств, в составе которых присутствует свойство: КодЕдиницыИзмерения.
// * ЭтоЧастичноеВыбытие - Булево - Признак выбытия части потребительской упаковки.
// * ИсходнаяНоменклатура - Неопределено, ОпределяемыйТип.Номенклатура - Исходная номенклатура, если была выполнена подмена при частичном выбытии.
Функция НоваяСтруктураУстановкиДополнительныхСвойствПриПроверкеККТ() Экспорт
diff --git a/src/CommonModules/ШтрихкодированиеОбщегоНазначенияМОТП/Ext/Module.bsl b/src/CommonModules/ШтрихкодированиеОбщегоНазначенияМОТП/Ext/Module.bsl
index b18f3f214..0f1335514 100644
--- a/src/CommonModules/ШтрихкодированиеОбщегоНазначенияМОТП/Ext/Module.bsl
+++ b/src/CommonModules/ШтрихкодированиеОбщегоНазначенияМОТП/Ext/Module.bsl
@@ -118,7 +118,7 @@
// Рассчитывает инвариантный хэш: из кода исключается МРЦ, убираются скобки
//
// Параметры:
-// СтрокаДанных - Массив из СтрокаТаблицыЗначений: См. ШтрихкодированиеОбщегоНазначенияИС.ИнициализацияДанныхПоШтрихкодама
+// СтрокаДанных - Массив из СтрокаТаблицыЗначений: См. ШтрихкодированиеОбщегоНазначенияИС.ИнициализацияДанныхПоШтрихкодам
// - Структура - Строка данных для расчета.
// ДанныеРазбора - см. РазборКодаМаркировкиИССлужебныйКлиентСервер.НовыйРезультатРазбораКодаМаркировки.
Процедура РассчитатьХэшСуммуНормализации(СтрокаДанных, ДанныеРазбора) Экспорт
@@ -566,7 +566,7 @@
Если ОбщегоНазначенияИСМПКлиентСерверПовтИсп.ПродукцияПодлежитОбязательнойОнлайнПроверкеПередРозничнойПродажей(ДопустимыйВидПродукции,
ПараметрыСканирования.ВидОперацииИСМП,
- ПараметрыСканирования.ТребуетсяПроверкаСредствамиККТ) Тогда
+ ПараметрыСканирования.ТребуетсяПроверкаСредствамиККТ Или ПараметрыСканирования.ЭтоОблачнаяККТИСМП) Тогда
НеобходимыПроверкиРозничнойПродажи = Истина;
Прервать;
@@ -923,7 +923,7 @@
КонтролироватьСтатусыКодовМаркировки = НастройкаПараметровСканированияСлужебныйКлиентСерверПовтИсп.КонтролироватьСтатусыКодовМаркировки(
СтрокаДанных.ВидПродукции,
ПараметрыСканирования.ВидОперацииИСМП,
- ПараметрыСканирования.ТребуетсяПроверкаСредствамиККТ);
+ ПараметрыСканирования.ТребуетсяПроверкаСредствамиККТ Или ПараметрыСканирования.ЭтоОблачнаяККТИСМП);
Иначе
КонтролироватьСтатусыКодовМаркировки = Ложь;
КонецЕсли;
@@ -1081,7 +1081,7 @@
ПравилаПроверкиНаОшибки.КонтрольПолногоКодаМаркировки.Добавить(
Новый Структура(
"СтрокаДанных, ТекстОшибки",
- СтрокаДанных, НСтр("ru = 'В структуре кода маркировки отстутствуют разделители GS'")));
+ СтрокаДанных, НСтр("ru = 'В структуре кода маркировки отсутствуют разделители GS'")));
КонецЕсли;
diff --git a/src/CommonModules/ШтрихкодированиеОбщегоНазначенияМОТПКлиентСервер/Ext/Module.bsl b/src/CommonModules/ШтрихкодированиеОбщегоНазначенияМОТПКлиентСервер/Ext/Module.bsl
index a1323b47f..0714b77a3 100644
--- a/src/CommonModules/ШтрихкодированиеОбщегоНазначенияМОТПКлиентСервер/Ext/Module.bsl
+++ b/src/CommonModules/ШтрихкодированиеОбщегоНазначенияМОТПКлиентСервер/Ext/Module.bsl
@@ -8,7 +8,7 @@
// Параметры:
// ПараметрыСканирования - (См. ШтрихкодированиеОбщегоНазначенияИСКлиент.ПараметрыСканирования).
// Контекст - ФормаКлиентскогоПриложения, ДокументСсылка - источник заполнения параметров сканирования.
-// ВидПродукции - СправочникСсылка.ВидыПродукцииИС - по данному параметру будет проиходить отбор заполнения.
+// ВидПродукции - СправочникСсылка.ВидыПродукцииИС - по данному параметру будет происходить отбор заполнения.
// ФормаВыбора - ФормаКлиентскогоПриложения - Форма выбора.
// ПараметрыРежимаИсправленияОшибок - Структура - Параметры режима исправления ошибок.
Процедура ЗаполнитьПараметрыСканирования(ПараметрыСканирования, Контекст, ВидПродукции, ФормаВыбора, ПараметрыРежимаИсправленияОшибок = Неопределено) Экспорт
diff --git a/src/CommonModules/ШтрихкодыУпаковокКлиентСервер/Ext/Module.bsl b/src/CommonModules/ШтрихкодыУпаковокКлиентСервер/Ext/Module.bsl
index 1f26ddaf2..f08b36c0a 100644
--- a/src/CommonModules/ШтрихкодыУпаковокКлиентСервер/Ext/Module.bsl
+++ b/src/CommonModules/ШтрихкодыУпаковокКлиентСервер/Ext/Module.bsl
@@ -76,7 +76,7 @@
// * ПрефиксКомпанииGS1 - Число - префикс компании GS1.
// * СерийныйНомерSSCC - Число - серийный номер SSCC.
// УстанавливатьСкобки - Булево - Если истина, то идентификатор SSCC 00 будет помещен в скобки.
-// УстанавливатьИдентификаторПрименения - Булево - Если истина, то будет установлен индентификатор применения.
+// УстанавливатьИдентификаторПрименения - Булево - Если истина, то будет установлен идентификатор применения.
//
// Возвращаемое значение:
// Строка - Сгенерированный штрихкод.
@@ -88,26 +88,31 @@
СерийныйНомерSSCC = ПараметрыШтрихкода.СерийныйНомерSSCC;
Если ЗначениеЗаполнено(ПрефиксКомпанииGS1)
- И ЗначениеЗаполнено(СерийныйНомерSSCC) Тогда
+ И ЗначениеЗаполнено(СерийныйНомерSSCC) Тогда
Штрихкод = Формат(ЦифраРасширения, "ЧН=0; ЧГ=0")
+ ПриведенноеКДлинеЗначение(ПрефиксКомпанииGS1, 9)
+ ПриведенноеКДлинеЗначение(СерийныйНомерSSCC, 7);
КонтрольноеЧисло = РазборКодаМаркировкиИССлужебныйКлиентСервер.КонтрольноеЧислоSSCC(Штрихкод);
-
- Если УстанавливатьИдентификаторПрименения Тогда
- Если УстанавливатьСкобки Тогда
- Шаблон = "(00)%1%2";
- Иначе
- Шаблон = "00%1%2";
- КонецЕсли;
+ Если КонтрольноеЧисло = Неопределено Тогда
+ Штрихкод = "";
Иначе
- Шаблон = "%1%2";
+
+ Если УстанавливатьИдентификаторПрименения Тогда
+ Если УстанавливатьСкобки Тогда
+ Шаблон = "(00)%1%2";
+ Иначе
+ Шаблон = "00%1%2";
+ КонецЕсли;
+ Иначе
+ Шаблон = "%1%2";
+ КонецЕсли;
+
+ Штрихкод = СтрШаблон(Шаблон, Штрихкод, КонтрольноеЧисло);
+
КонецЕсли;
- Штрихкод = СтрШаблон(Шаблон, Штрихкод, КонтрольноеЧисло);
-
Иначе
Штрихкод = "";
diff --git a/src/CommonModules/ЭлектронноеАктированиеЕИС/Ext/Module.bsl b/src/CommonModules/ЭлектронноеАктированиеЕИС/Ext/Module.bsl
index c20eb1691..fbb0dea6b 100644
--- a/src/CommonModules/ЭлектронноеАктированиеЕИС/Ext/Module.bsl
+++ b/src/CommonModules/ЭлектронноеАктированиеЕИС/Ext/Module.bsl
@@ -9572,7 +9572,7 @@
// ЗащищенноеСоединениеOpenSSL - Новое защищенное соединение
Функция НовоеЗащищенноеСоединение(СертификатКлиента = Неопределено, СертификатыУдостоверяющихЦентров = Неопределено)
- Возврат ОбщегоНазначенияКлиентСервер.НовоеЗащищенноеСоединение(СертификатКлиента, СертификатыУдостоверяющихЦентров);
+ Возврат Новый ЗащищенноеСоединениеOpenSSL;
КонецФункции
diff --git a/src/CommonModules/ЭлектронноеВзаимодействие/Ext/Module.bsl b/src/CommonModules/ЭлектронноеВзаимодействие/Ext/Module.bsl
index 18ec125ec..48f550d26 100644
--- a/src/CommonModules/ЭлектронноеВзаимодействие/Ext/Module.bsl
+++ b/src/CommonModules/ЭлектронноеВзаимодействие/Ext/Module.bsl
@@ -1183,6 +1183,16 @@
// Конец ТехнологияСервиса.ВыгрузкаЗагрузкаДанных
+// См. РаботаВМоделиСервисаБТСПереопределяемый.УстановитьДоступКAPIОбластиДанных
+Процедура УстановитьДоступКAPIОбластиДанных(Пользователь, ДоступРазрешен) Экспорт
+
+ Если ОбщегоНазначения.ПодсистемаСуществует("ЭлектронноеВзаимодействие.ЦентрЭДО") Тогда
+ МодульПодсистемы = ОбщегоНазначения.ОбщийМодуль("ЦентрЭДО");
+ МодульПодсистемы.УстановитьДоступКAPIОбластиДанных(Пользователь, ДоступРазрешен);
+ КонецЕсли;
+
+КонецПроцедуры
+
//-- Локализация
// См. УправлениеДоступомПереопределяемый.ПриЗаполненииСписковСОграничениемДоступа
diff --git a/src/CommonModules/ЭлектронноеВзаимодействиеИСМП/Ext/Module.bsl b/src/CommonModules/ЭлектронноеВзаимодействиеИСМП/Ext/Module.bsl
index abb14c959..a90481f11 100644
--- a/src/CommonModules/ЭлектронноеВзаимодействиеИСМП/Ext/Module.bsl
+++ b/src/CommonModules/ЭлектронноеВзаимодействиеИСМП/Ext/Module.bsl
@@ -7,7 +7,7 @@
// Проверяет совпадение табличной части "Штрихкоды упаковок" и табличной части ("Товары")
// в отношении маркируемой продукции перед формированием документа ЭДО.
// Проверка не выполняется если по документу уже оформлена отгрузка товаров ИСМП (прямой обмен).
-// Допущение: в документе по одной номенклатуре нет отновременно строк с указанием серий и строк без серий.
+// Допущение: в документе по одной номенклатуре нет одновременно строк с указанием серий и строк без серий.
//
// Параметры:
// ПроверяемыйДокумент - ДокументСсылка - проверяемый документ
@@ -46,12 +46,12 @@
"ВЫБРАТЬ
| &ИмяПоляШтрихкодУпаковки КАК ШтрихкодУпаковки
|ИЗ
- | &ИмяТаблицы КАК ТаблицаШтрихКодыУпаковок
+ | &ИмяТаблицы КАК ТаблицаШтрихкодыУпаковок
|ГДЕ
- | ТаблицаШтрихКодыУпаковок.Ссылка = &ПроверяемыйДокумент";
+ | ТаблицаШтрихкодыУпаковок.Ссылка = &ПроверяемыйДокумент";
Запрос.Текст = СтрЗаменить(Запрос.Текст, "&ИмяТаблицы", ИмяТаблицы);
- Запрос.Текст = СтрЗаменить(Запрос.Текст, "&ИмяПоляШтрихкодУпаковки", СтрШаблон("ТаблицаШтрихКодыУпаковок.%1", ИмяКолонки));
+ Запрос.Текст = СтрЗаменить(Запрос.Текст, "&ИмяПоляШтрихкодУпаковки", СтрШаблон("ТаблицаШтрихкодыУпаковок.%1", ИмяКолонки));
Запрос.УстановитьПараметр("ПроверяемыйДокумент", ПроверяемыйДокумент);
@@ -511,7 +511,7 @@
СтрокиУпаковок = ДанныеШтрихкодовУпаковок.НайтиСтроки(ПараметрыПоиска);
ОбщаяДлинаКодов = 0;
Для Каждого СтрокаУпаковки Из СтрокиУпаковок Цикл
- ОбщаяДлинаКодов = ОбщаяДлинаКодов + СтрДлина(СтрокаУпаковки.ЗначениеШтрихКода) + 2;
+ ОбщаяДлинаКодов = ОбщаяДлинаКодов + СтрДлина(СтрокаУпаковки.ЗначениеШтрихкода) + 2;
Если ОбщаяДлинаКодов > 2000 Тогда
ОбъектыСОграничениемДлины.Добавить(Источник.Ссылка);
Прервать;
@@ -519,7 +519,7 @@
Продолжить;
КонецЕсли;
НоваяСтрока = ТаблицаКодов.Добавить();
- НоваяСтрока.КодУпаковки = СтрокаУпаковки.ЗначениеШтрихКода;
+ НоваяСтрока.КодУпаковки = СтрокаУпаковки.ЗначениеШтрихкода;
СтрокаУпаковки.Обработан = Истина;
ОтметитьОбработанныеСтрокиДляМультитоварныхУпаковок(ДанныеШтрихкодовУпаковок, ПараметрыПоиска, СтрокаУпаковки);
КонецЦикла;
@@ -847,7 +847,7 @@
НоваяСтрока = КонтрольныеИдентификационныеЗнаки.Добавить();
КонецЕсли;
- НоваяСтрока.Код = СтрокаУпаковки.ЗначениеШтрихКода;
+ НоваяСтрока.Код = СтрокаУпаковки.ЗначениеШтрихкода;
СтрокаУпаковки.Обработан = Истина;
@@ -923,11 +923,11 @@
Если СтрокаУпаковки.ВидУпаковки = Перечисления.ВидыУпаковокИС.Логистическая Тогда
НоваяСтрока = ТранспортныеУпаковкиДо.Добавить();
- Иначе //групповая и индивидульная
+ Иначе //групповая и индивидуальная
НоваяСтрока = КонтрольныеИдентификационныеЗнакиДо.Добавить();
КонецЕсли;
- НоваяСтрока.Код = СтрокаУпаковки.ЗначениеШтрихКода;
+ НоваяСтрока.Код = СтрокаУпаковки.ЗначениеШтрихкода;
СтрокаУпаковки.Обработан = Истина;
ОтметитьОбработанныеСтрокиДляМультитоварныхУпаковок(ДанныеШтрихкодовУпаковокДо, ПараметрыПоиска, СтрокаУпаковки);
@@ -941,11 +941,11 @@
Если СтрокаУпаковки.ВидУпаковки = Перечисления.ВидыУпаковокИС.Логистическая Тогда
НоваяСтрока = ТранспортныеУпаковкиПосле.Добавить();
- Иначе //групповая и индивидульная
+ Иначе //групповая и индивидуальная
НоваяСтрока = КонтрольныеИдентификационныеЗнакиПосле.Добавить();
КонецЕсли;
- НоваяСтрока.Код = СтрокаУпаковки.ЗначениеШтрихКода;
+ НоваяСтрока.Код = СтрокаУпаковки.ЗначениеШтрихкода;
СтрокаУпаковки.Обработан = Истина;
ОтметитьОбработанныеСтрокиДляМультитоварныхУпаковок(ДанныеШтрихкодовУпаковокПосле, ПараметрыПоиска, СтрокаУпаковки);
@@ -1077,7 +1077,7 @@
И Не ЗначениеЗаполнено(СтрокаУпаковки.Штрихкод) Тогда
НоваяСтрока.Код = СформироватьКодОСУИзGTIN(Источник, СтрокаУпаковки);
Иначе
- НоваяСтрока.Код = СтрокаУпаковки.ЗначениеШтрихКода;
+ НоваяСтрока.Код = СтрокаУпаковки.ЗначениеШтрихкода;
СтрокаУпаковки.Обработан = Истина;
КонецЕсли;
@@ -1090,7 +1090,7 @@
Для Каждого СтрокаУпаковки Из КодыОСУДо Цикл
СтруктураДанных = Новый Структура;
- СтруктураДанных.Вставить("ЗначениеШтрихКода", СтрокаУпаковки.ЗначениеШтрихКода);
+ СтруктураДанных.Вставить("ЗначениеШтрихкода", СтрокаУпаковки.ЗначениеШтрихкода);
СтруктураДанных.Вставить("КоличествоУпаковок", 0);
ШтрихкодированиеИСМПСлужебный.ЗаменитьЗначенияШтрихкодаНаОбъемноСортовойУчет(
@@ -2176,13 +2176,13 @@
//@skip-warning
ДочерниеЗаписи = ДанныеВложенныхШтрихкодов["Результат"].Выгрузить();
ВложенныеЗаписи.Индексы.Добавить("Ссылка, Штрихкод");
- Для Каждого ДанныеШтрихКода Из ДочерниеЗаписи Цикл
- ЗаполнитьЗначенияСвойств(СтруктураПоиска, ДанныеШтрихКода);
+ Для Каждого ДанныеШтрихкода Из ДочерниеЗаписи Цикл
+ ЗаполнитьЗначенияСвойств(СтруктураПоиска, ДанныеШтрихкода);
ДанныеРодителя = ВложенныеЗаписи.НайтиСтроки(СтруктураПоиска)[0];
СтруктураПоиска.Штрихкод = ДанныеРодителя.Родитель;
СтрокиЗаполнения = Результат.НайтиСтроки(СтруктураПоиска);
Если СтрокиЗаполнения.Количество() > 0 Тогда
- ЗаполнитьЗначенияСвойств(СтрокиЗаполнения[0], ДанныеШтрихКода, "Штрихкод, Номенклатура, Характеристика, Серия, ВидПродукции");
+ ЗаполнитьЗначенияСвойств(СтрокиЗаполнения[0], ДанныеШтрихкода, "Штрихкод, Номенклатура, Характеристика, Серия, ВидПродукции");
КонецЕсли;
КонецЦикла;
ВложенныеЗаписи = ДанныеВложенныхШтрихкодов["ВложенныеЗаписи"].Выгрузить();
@@ -2220,10 +2220,10 @@
МультитоварныеУпаковки.Индексы.Добавить("Ссылка, Штрихкод");
- Для Каждого ДанныеШтрихКода Из ДочерниеЗаписи Цикл
- Если ЗначениеЗаполнено(ДанныеШтрихКода.Номенклатура) Тогда
+ Для Каждого ДанныеШтрихкода Из ДочерниеЗаписи Цикл
+ Если ЗначениеЗаполнено(ДанныеШтрихкода.Номенклатура) Тогда
- ЗаполнитьЗначенияСвойств(СтруктураПоиска, ДанныеШтрихКода);
+ ЗаполнитьЗначенияСвойств(СтруктураПоиска, ДанныеШтрихкода);
ДанныеРодителя = МультитоварныеУпаковки.НайтиСтроки(СтруктураПоиска)[0];
СтруктураПоиска.Штрихкод = СоответствиеУпаковок.Получить(ДанныеРодителя.Штрихкод);
СтрокаЗаполнения = Результат.НайтиСтроки(СтруктураПоиска);
@@ -2232,10 +2232,10 @@
КонецЕсли;
СтрокаЗаполнения = СтрокаЗаполнения[0];
Если Не ЗначениеЗаполнено(СтрокаЗаполнения.Номенклатура) Тогда
- ЗаполнитьЗначенияСвойств(СтрокаЗаполнения, ДанныеШтрихКода,
+ ЗаполнитьЗначенияСвойств(СтрокаЗаполнения, ДанныеШтрихкода,
"Номенклатура, Характеристика, Серия, ВидПродукции, ТребуетВзвешивания");
Иначе
- ЗаполнитьЗначенияСвойств(ПоляПоискаДублей, ДанныеШтрихКода);
+ ЗаполнитьЗначенияСвойств(ПоляПоискаДублей, ДанныеШтрихкода);
ПоляПоискаДублей.Штрихкод = СтруктураПоиска.Штрихкод;
Если Результат.НайтиСтроки(ПоляПоискаДублей).Количество() = 0 Тогда
НоваяСтрокаМультитоварнойУпаковки = Результат.Добавить();
@@ -2494,7 +2494,7 @@
СодержимоеРезультат.Колонки.Добавить("ТекстОшибкиИС", ОбщегоНазначения.ОписаниеТипаСтрока(1024));
СодержимоеРезультат.Колонки.Добавить("ВидУпаковки", Новый ОписаниеТипов("ПеречислениеСсылка.ВидыУпаковокИС"));
СодержимоеРезультат.Колонки.Добавить("Обработан", Новый ОписаниеТипов("Булево"));
- СодержимоеРезультат.Колонки.Добавить("ВидПродукции", Новый ОписаниеТипов("СправочникСсылка.КлючиВидовПродукцииИС"));
+ СодержимоеРезультат.Колонки.Добавить("ВидПродукции", Новый ОписаниеТипов("СправочникСсылка.ВидыПродукцииИС"));
СодержимоеРезультат.Колонки.Добавить("Мультитоварная", Новый ОписаниеТипов("Булево"));
СодержимоеРезультат.Колонки.Добавить("ТребуетВзвешивания", Новый ОписаниеТипов("Булево"));
СодержимоеРезультат.Колонки.Добавить("ЗначениеШтрихкода", ОбщегоНазначения.ОписаниеТипаСтрока(255));
diff --git a/src/CommonModules/ЭлектронныеДокументыЭДО/Ext/Module.bsl b/src/CommonModules/ЭлектронныеДокументыЭДО/Ext/Module.bsl
index d17890de3..a7f9783cc 100644
--- a/src/CommonModules/ЭлектронныеДокументыЭДО/Ext/Module.bsl
+++ b/src/CommonModules/ЭлектронныеДокументыЭДО/Ext/Module.bsl
@@ -1,5 +1,4 @@
-
-#Область ПрограммныйИнтерфейс
+#Область ПрограммныйИнтерфейс
#Область ДляВызоваИзДругихПодсистем
@@ -289,6 +288,66 @@
КонецФункции
+// Параметры:
+// ЭлектронныйДокумент - ДокументСсылка.ЭлектронныйДокументВходящийЭДО,ДокументСсылка.ЭлектронныйДокументИсходящийЭДО
+// ЭтоВходящийДокумент - Булево
+Процедура ЗаблокироватьДокументДляИзменения(ЭлектронныйДокумент, ЭтоВходящийДокумент = Ложь) Экспорт
+
+ ЭлектронныеДокументыЭДОСлужебный.ЗаблокироватьДокументДляИзменения(ЭлектронныйДокумент, ЭтоВходящийДокумент);
+
+КонецПроцедуры
+
+// Параметры:
+// КлючДокумента - См. НовыйКлючДокументаДляБлокировки
+// ЭтоВходящийДокумент - Булево
+Процедура ЗаблокироватьДокументДляИзмененияПоКлючу(КлючДокумента, ЭтоВходящийДокумент = Ложь) Экспорт
+
+ ИмяТаблицыДокумента = ИмяТаблицыДокументаЭДО(ЭтоВходящийДокумент);
+
+ Блокировка = Новый БлокировкаДанных;
+ ЭлементБлокировки = Блокировка.Добавить(ИмяТаблицыДокумента);
+ ЭлементБлокировки.УстановитьЗначение("ИдентификаторДокумента", КлючДокумента.ИдентификаторДокумента);
+ ЭлементБлокировки.УстановитьЗначение("ИдентификаторДокументооборота", КлючДокумента.ИдентификаторДокументооборота);
+ ЭлементБлокировки.УстановитьЗначение("ИдентификаторСвязи", КлючДокумента.ИдентификаторСвязи);
+ Блокировка.Заблокировать();
+
+КонецПроцедуры
+
+// Параметры:
+// КлючиДокументов - Массив из См. НовыйКлючДокументаДляБлокировки
+// ЭтоВходящиеДокументы - Булево
+Процедура ЗаблокироватьДокументыДляИзмененияПоКлючам(КлючиДокументов, ЭтоВходящиеДокументы = Ложь) Экспорт
+
+ ИмяТаблицыДокументов = ИмяТаблицыДокументаЭДО(ЭтоВходящиеДокументы);
+
+ Блокировка = Новый БлокировкаДанных;
+ Для Каждого КлючДокумента Из КлючиДокументов Цикл
+ ЭлементБлокировки = Блокировка.Добавить(ИмяТаблицыДокументов);
+ ЭлементБлокировки.УстановитьЗначение("ИдентификаторДокумента", КлючДокумента.ИдентификаторДокумента);
+ ЭлементБлокировки.УстановитьЗначение("ИдентификаторДокументооборота", КлючДокумента.ИдентификаторДокументооборота);
+ ЭлементБлокировки.УстановитьЗначение("ИдентификаторСвязи", КлючДокумента.ИдентификаторСвязи);
+ КонецЦикла;
+ Блокировка.Заблокировать();
+
+КонецПроцедуры
+
+// Возвращаемое значение:
+// Структура:
+// * ЭтоВходящийДокумент - Булево
+// * ИдентификаторДокумента - Строка
+// * ИдентификаторДокументооборота - Строка
+// * ИдентификаторСвязи - Строка
+Функция НовыйКлючДокументаДляБлокировки() Экспорт
+
+ Результат = Новый Структура;
+ Результат.Вставить("ЭтоВходящийДокумент", Ложь);
+ Результат.Вставить("ИдентификаторДокумента", "");
+ Результат.Вставить("ИдентификаторДокументооборота", "");
+ Результат.Вставить("ИдентификаторСвязи", "");
+ Возврат Результат;
+
+КонецФункции
+
#КонецОбласти
#Область ПроверкаПрав
@@ -685,6 +744,19 @@
КонецФункции
+// Определяет является ли формат формализованным и однотитульным.
+// Параметры:
+// Формат - Строка
+//
+// Возвращаемое значение:
+// Булево
+//
+Функция ЭтоФормализованныйФорматБезОтветногоТитула(Формат) Экспорт
+
+ Возврат ФорматыЭДО.ЭтоФормализованныйФорматБезОтветногоТитула(Формат);
+
+КонецФункции
+
#КонецОбласти
#Область Направления
@@ -777,6 +849,28 @@
Возврат Перечисления.ТипыДокументовЭДО.ЭтоСлужебный(ТипДокумента);
КонецФункции
+// Определяет относится ли тип документа к формализованным однотитульным документам.
+//
+// Параметры:
+// ТипДокумента - ПеречислениеСсылка.ТипыДокументовЭДО - Тип электронного документа.
+// Возвращаемое значение:
+// Булево - Признак типа служебного документа.
+//
+Функция ЭтоТипБезОтветногоТитулаПриФормализованномОбмене(ТипДокумента) Экспорт
+ Возврат Перечисления.ТипыДокументовЭДО.ЭтоТипБезОтветногоТитулаПриФормализованномОбмене(ТипДокумента);
+КонецФункции
+
+// Определяет возможна ли для типа документа выгрузка в ФНС только по формализованному регламенту.
+//
+// Параметры:
+// ТипДокумента - ПеречислениеСсылка.ТипыДокументовЭДО - Тип электронного документа.
+// Возвращаемое значение:
+// Булево - Выгрузка возможна.
+//
+Функция ВозможнаВыгрузкаТолькоПоФормализованномуРегламенту(ТипДокумента) Экспорт
+ Возврат Перечисления.ТипыДокументовЭДО.ЭтоТипБезОтветногоТитулаПриФормализованномОбмене(ТипДокумента);
+КонецФункции
+
// Определяет тип служебного документа по типу элемента регламента.
//
// Параметры:
@@ -847,11 +941,18 @@
// Параметры:
// ТипДокумента - ПеречислениеСсылка.ТипыДокументовЭДО
-//
+// ТипРегламента - ПеречислениеСсылка.ТипыРегламентовЭДО
+//
// Возвращаемое значение:
// Булево - Если истина документа поддерживает загрузку из файла
-Функция ТипДокументаПоддерживаетЗагрузкуИзФайлаВФормализованномВиде(ТипДокумента) Экспорт
+Функция ТипДокументаПоддерживаетЗагрузкуИзФайлаВФормализованномВиде(ТипДокумента, ТипРегламента) Экспорт
+
+ Если ТипРегламента = Перечисления.ТипыРегламентовЭДО.Неформализованный Тогда
+ Возврат Ложь;
+ КонецЕсли;
+
Возврат Перечисления.ТипыДокументовЭДО.ПоддерживаетЗагрузкуИзФайлаВФормализованномВиде(ТипДокумента);
+
КонецФункции
// Возвращает Типы электронных документов по Видам электронных документов.
@@ -1474,14 +1575,12 @@
Отказ = Истина;
Возврат;
КонецЕсли;
-
- Блокировка = Новый БлокировкаДанных;
- ЭлементБлокировки = Блокировка.Добавить("Документ.СообщениеЭДО");
- ЭлементБлокировки.УстановитьЗначение("ЭлектронныйДокумент", ЭлектронныйДокумент);
+
+ ЭтоВходящийДокумент = ЭтоВходящийЭДО(ЭлектронныйДокумент);
НачатьТранзакцию();
Попытка
- Блокировка.Заблокировать();
+ ЗаблокироватьДокументДляИзменения(ЭлектронныйДокумент, ЭтоВходящийДокумент);
Запрос = Новый Запрос;
Запрос.Текст =
@@ -1688,6 +1787,10 @@
Настройки.ТребуетсяОтветнаяПодпись = ТребуетсяОтветнаяПодписьПоУмолчанию(ТипДокумента);
Настройки.РедактироватьОтветнуюПодпись = РедактироватьОтветнуюПодпись(ТипДокумента);
+ Если ЭтоФормализованныйФорматБезОтветногоТитула(Формат) Тогда
+ Настройки.РедактироватьОтветнуюПодпись = Ложь;
+ КонецЕсли;
+
Возврат Настройки;
КонецФункции
@@ -2912,15 +3015,12 @@
Возврат;
КонецЕсли;
- Блокировка = Новый БлокировкаДанных;
- Для Каждого ОписаниеСообщения Из ОписанияСообщений Цикл
- ЭлементБлокировки = Блокировка.Добавить("Документ.СообщениеЭДО");
- ЭлементБлокировки.УстановитьЗначение("Ссылка", ОписаниеСообщения.Ссылка);
- КонецЦикла;
-
+ ЭлектронныйДокументСообщений = ОбщегоНазначения.ЗначениеРеквизитаОбъекта(ОписанияСообщений[0].Ссылка,
+ "ЭлектронныйДокумент");
+
НачатьТранзакцию();
Попытка
- Блокировка.Заблокировать();
+ ЭлектронныеДокументыЭДОСлужебный.ЗаблокироватьДокументДляИзменения(ЭлектронныйДокументСообщений);
Для Каждого ОписаниеСообщения Из ОписанияСообщений Цикл
СообщениеОбъект = ОписаниеСообщения.Ссылка.ПолучитьОбъект();
@@ -3380,7 +3480,7 @@
СтрокаПодписи.Владелец = СвойстваПодписи.ВладелецПодписи;
КонецЦикла;
Иначе
- ЭлектронныеПодписи = ЭлектроннаяПодпись.УстановленныеПодписи(ВыборкаФайлов.Ссылка);
+ ЭлектронныеПодписи = КриптографияБЭД.УстановленныеПодписи(ВыборкаФайлов.Ссылка);
Для Каждого СвойстваПодписи Из ЭлектронныеПодписи Цикл
СтрокаПодписи = Сведения.Подписи.Добавить();
СтрокаПодписи.Подписант = СвойстваПодписи.УстановившийПодпись;
@@ -3756,7 +3856,7 @@
// * ДвоичныеДанные - ДвоичныеДанные
// * Размер - Число
// * КНД - Строка - номер по классификатору налоговых документов.
-// * УстановленныеПодписи - см. ЭлектроннаяПодпись.УстановленныеПодписи
+// * УстановленныеПодписи - см. ЭлектроннаяПодпись.ПодписиОбъекта
Функция ДанныеФайлаИнформацииОтправителяДляВыгрузкиФНС(ЭлектронныйДокумент) Экспорт
Возврат ДанныеФайлаДляВыгрузкиФНС(ЭлектронныйДокумент,
@@ -3775,7 +3875,7 @@
// * ДвоичныеДанные - ДвоичныеДанные
// * Размер - Число
// * КНД - Строка - номер по классификатору налоговых документов.
-// * УстановленныеПодписи - см. ЭлектроннаяПодпись.УстановленныеПодписи
+// * УстановленныеПодписи - см. ЭлектроннаяПодпись.ПодписиОбъекта
Функция ДанныеФайлаИнформацииПолучателяДляВыгрузкиФНС(ЭлектронныйДокумент) Экспорт
Возврат ДанныеФайлаДляВыгрузкиФНС(ЭлектронныйДокумент,
@@ -3796,7 +3896,7 @@
// ** ДвоичныеДанные - ДвоичныеДанные
// ** Размер - Число
// ** КНД - Строка - номер по классификатору налоговых документов.
-// ** УстановленныеПодписи - см. ЭлектроннаяПодпись.УстановленныеПодписи
+// ** УстановленныеПодписи - см. ЭлектроннаяПодпись.ПодписиОбъекта
//
Функция ДанныеФайловДляВыгрузкиФНС(ЭлектронныеДокументы) Экспорт
@@ -3833,7 +3933,7 @@
ДанныеФайла.Размер = ДанныеФайла.ДвоичныеДанные.Размер();
КонецЕсли;
ДанныеФайла.ИмяФайла = ТекущееСообщение.ПолноеИмяФайла;
- ДанныеФайла.УстановленныеПодписи = ЭлектроннаяПодпись.УстановленныеПодписи(ТекущееСообщение.ОсновнойФайл);
+ ДанныеФайла.УстановленныеПодписи = КриптографияБЭД.УстановленныеПодписи(ТекущееСообщение.ОсновнойФайл);
ДанныеФайла.ТипЭлементаРегламента = ТекущееСообщение.ТипЭлементаРегламента;
СвойстваДокумента = ФорматыЭДО.НовыйПараметрыПолученияКНД();
@@ -4144,7 +4244,8 @@
ТипДокумента = СодержаниеФайла.ТипДокумента;
- Если Не ТипДокументаПоддерживаетЗагрузкуИзФайлаВФормализованномВиде(ТипДокумента) Тогда
+ Если Не ТипДокументаПоддерживаетЗагрузкуИзФайлаВФормализованномВиде(
+ ТипДокумента, СодержаниеФайла.ТипРегламента) Тогда
Возврат Результат;
КонецЕсли;
@@ -4700,15 +4801,6 @@
КонецФункции
-// Параметры:
-// ЭлектронныйДокумент - ДокументСсылка.ЭлектронныйДокументВходящийЭДО,ДокументСсылка.ЭлектронныйДокументИсходящийЭДО
-// ЭтоВходящийЭДО - Булево
-Процедура ЗаблокироватьДанныеДокументаДляИзменения(ЭлектронныйДокумент, ЭтоВходящийЭДО) Экспорт
-
- ЭлектронныеДокументыЭДОСлужебный.ЗаблокироватьДанныеДокументаДляИзменения(ЭлектронныйДокумент, ЭтоВходящийЭДО)
-
-КонецПроцедуры
-
#КонецОбласти
#Область ПодписиДокумента
@@ -4722,7 +4814,7 @@
// * КонтекстДиагностики - см. ОбработкаНеисправностейБЭД.НовыйКонтекстДиагностики
// * ПроверенныеПодписи - Соответствие Из КлючИЗначение:
// ** Ключ - СправочникСсылка.СообщениеЭДОПрисоединенныеФайлы
-// ** Значение - См. ЭлектроннаяПодпись.УстановленныеПодписи
+// ** Значение - См. ЭлектроннаяПодпись.ПодписиОбъекта
//
Функция НовыйРезультатПроверкиПодписей() Экспорт
@@ -4869,7 +4961,7 @@
Для Каждого РезультатПроверкиФайла Из ПроверенныеПодписи Цикл
- УстановленныеПодписи = ЭлектроннаяПодпись.УстановленныеПодписи(РезультатПроверкиФайла.Ключ);
+ УстановленныеПодписи = КриптографияБЭД.УстановленныеПодписи(РезультатПроверкиФайла.Ключ);
Для Каждого СохраненныеСвойстваПодписи Из УстановленныеПодписи Цикл
СвойстваПодписиПослеПроверки = ПолучитьРезультатПроверкиПодписи(РезультатПроверкиФайла.Значение,
@@ -6639,6 +6731,8 @@
ТипыДокументов.Добавить(Перечисления.ТипыДокументовЭДО.АктСверки);
ТипыДокументов.Добавить(Перечисления.ТипыДокументовЭДО.АктПриемкиСтроительныхРаботУслуг);
ТипыДокументов.Добавить(Перечисления.ТипыДокументовЭДО.ДоговорныйДокумент);
+ ТипыДокументов.Добавить(Перечисления.ТипыДокументовЭДО.СчетНаОплату);
+ ТипыДокументов.Добавить(Перечисления.ТипыДокументовЭДО.СчетОферта);
Возврат ТипыДокументов;
@@ -6854,7 +6948,7 @@
#Область РегистрыСведений_СвязьВидовИФорматовДокументовЭДО_ОбработатьДанныеДляПереходаНаНовуюВерсию
Обработчик = Обработчики.Добавить();
- Обработчик.Версия = "1.9.16.21";
+ Обработчик.Версия = "1.9.16.36";
Обработчик.РежимВыполнения = "Отложенно";
Обработчик.ЗапускатьИВПодчиненномУзлеРИБСФильтрами = Истина;
Обработчик.Процедура = "РегистрыСведений.СвязьВидовИФорматовДокументовЭДО.ОбработатьДанныеДляПереходаНаНовуюВерсию";
@@ -6922,7 +7016,7 @@
#Область РегистрыСведений_ФорматыЭлектронныхДокументов_ОбработатьДанныеДляПереходаНаНовуюВерсию
Обработчик = Обработчики.Добавить();
- Обработчик.Версия = "1.9.16.21";
+ Обработчик.Версия = "1.9.16.36";
Обработчик.РежимВыполнения = "Отложенно";
Обработчик.ЗапускатьИВПодчиненномУзлеРИБСФильтрами = Истина;
Обработчик.Процедура = "РегистрыСведений.ФорматыЭлектронныхДокументов.ОбработатьДанныеДляПереходаНаНовуюВерсию";
@@ -7605,6 +7699,7 @@
Если Не (ТипДокумента = Перечисления.ТипыДокументовЭДО.СчетФактура
Или ТипДокумента = Перечисления.ТипыДокументовЭДО.КорректировочныйСчетФактура
Или ТипДокумента = Перечисления.ТипыДокументовЭДО.СчетНаОплату
+ Или ТипДокумента = Перечисления.ТипыДокументовЭДО.СчетОферта
Или ТипДокумента = Перечисления.ТипыДокументовЭДО.КаталогТоваров
Или ТипДокумента = Перечисления.ТипыДокументовЭДО.ПрайсЛист
Или ТипДокумента = Перечисления.ТипыДокументовЭДО.СведенияОРеализацииКомиссионером
@@ -7632,7 +7727,9 @@
Результат = Ложь;
Если Не (ТипДокумента = Перечисления.ТипыДокументовЭДО.СчетФактура
- Или ТипДокумента = Перечисления.ТипыДокументовЭДО.КорректировочныйСчетФактура) Тогда
+ Или ТипДокумента = Перечисления.ТипыДокументовЭДО.КорректировочныйСчетФактура
+ Или ТипДокумента = Перечисления.ТипыДокументовЭДО.СчетНаОплату
+ Или ТипДокумента = Перечисления.ТипыДокументовЭДО.СчетОферта) Тогда
Результат = Истина;
@@ -7664,7 +7761,8 @@
Или ТипДокумента = Перечисления.ТипыДокументовЭДО.ОтчетОСписанииКомиссионногоТовара
Или ТипДокумента = Перечисления.ТипыДокументовЭДО.АктОРасхождениях
Или ТипДокумента = Перечисления.ТипыДокументовЭДО.АктСверкиВзаиморасчетов
- Или ТипДокумента = Перечисления.ТипыДокументовЭДО.МашиночитаемаяДоверенность Тогда
+ Или ТипДокумента = Перечисления.ТипыДокументовЭДО.МашиночитаемаяДоверенность
+ Или ТипДокумента = Перечисления.ТипыДокументовЭДО.СчетОферта Тогда
Результат = Ложь;
@@ -7857,7 +7955,8 @@
ПроверятьЭлектронныеПодписиНаСервере = ЭлектроннаяПодпись.ПроверятьЭлектронныеПодписиНаСервере();
- ДоступнаПроверкаПодписиВОблакеПриИнтерактивномЗапускеПроверки = Ложь;
+ ДоступнаПроверкаПодписиВОблакеПриИнтерактивномЗапускеПроверки = КриптографияБЭД.ДоступнаПроверкаПодписиВОблаке()
+ И ОбщегоНазначенияБЭД.ЭтоРежимЦентрЭДО();
Если Не ПроверятьЭлектронныеПодписиНаСервере
И Не ДоступнаПроверкаПодписиВОблакеПриИнтерактивномЗапускеПроверки Тогда
@@ -8784,10 +8883,8 @@
// * ДатаИзмененияСтатуса - Дата
Функция Обновление_СостоянияСообщений(ЭлектронныйДокумент)
- Блокировка = Новый БлокировкаДанных;
- ЭлементБлокировки = Блокировка.Добавить("Документ.СообщениеЭДО");
- ЭлементБлокировки.УстановитьЗначение("ЭлектронныйДокумент", ЭлектронныйДокумент);
- Блокировка.Заблокировать();
+ ЭтоВходящийДокумент = ЭтоВходящийЭДО(ЭлектронныйДокумент);
+ ЗаблокироватьДокументДляИзменения(ЭлектронныйДокумент, ЭтоВходящийДокумент);
Запрос = Новый Запрос;
Запрос.Текст =
@@ -9180,7 +9277,7 @@
// * ДвоичныеДанные - ДвоичныеДанные
// * Размер - Число
// * КНД - См. ФорматыЭДО.КНДПоСвойствамДокумента
-// * УстановленныеПодписи - См. ЭлектроннаяПодпись.УстановленныеПодписи
+// * УстановленныеПодписи - См. ЭлектроннаяПодпись.ПодписиОбъекта
Функция ДанныеФайлаДляВыгрузкиФНС(ЭлектронныйДокумент, ТипЭлементаРегламента)
Результат = Новый Структура("ИмяФайла, ДвоичныеДанные, Размер, КНД, УстановленныеПодписи");
diff --git a/src/CommonModules/ЭлектронныеДокументыЭДОВызовСервера/Ext/Module.bsl b/src/CommonModules/ЭлектронныеДокументыЭДОВызовСервера/Ext/Module.bsl
index b4c57e091..6ddcfc693 100644
--- a/src/CommonModules/ЭлектронныеДокументыЭДОВызовСервера/Ext/Module.bsl
+++ b/src/CommonModules/ЭлектронныеДокументыЭДОВызовСервера/Ext/Module.bsl
@@ -79,12 +79,13 @@
//
// Параметры:
// АдресРезультата - Строка
+// Сообщения - ФиксированныйМассив из СообщениеПользователю
//
// Возвращаемое значение:
// - Произвольный
// - См. ЭлектронныеДокументыЭДО.НовыеРезультатыВыполненияДействийПоИнтеграциямЭДО
//
-Функция РезультатыВыполненияДействийПоИнтеграциямЭДОДляКлиента(Знач АдресРезультата) Экспорт
+Функция РезультатыВыполненияДействийПоИнтеграциямЭДОДляКлиента(Знач АдресРезультата, Сообщения) Экспорт
РезультатыПоИнтеграциямЭДО = ПолучитьИзВременногоХранилища(АдресРезультата); // См. ЭлектронныеДокументыЭДО.ВыполнитьДействияПоИнтеграциямЭДО
УдалитьИзВременногоХранилища(АдресРезультата);
@@ -95,6 +96,8 @@
Возврат РезультатыПоИнтеграциямЭДО;
КонецЕсли;
+ ЭлектронныеДокументыЭДОСлужебный.ОбработатьСообщенияДлительнойОперации(РезультатыПоИнтеграциямЭДО, Сообщения);
+
РезультатыПоИнтеграциямЭДОДляКлиента = ЭлектронныеДокументыЭДО.РезультатыВыполненияДействийПоИнтеграциямЭДОДляКлиента(
РезультатыПоИнтеграциямЭДО);
diff --git a/src/CommonModules/ЭлектронныеДокументыЭДОИнтеграцияЦентраЭДО/Ext/Module.bsl b/src/CommonModules/ЭлектронныеДокументыЭДОИнтеграцияЦентраЭДО/Ext/Module.bsl
index 37ef505a0..32da517a5 100644
--- a/src/CommonModules/ЭлектронныеДокументыЭДОИнтеграцияЦентраЭДО/Ext/Module.bsl
+++ b/src/CommonModules/ЭлектронныеДокументыЭДОИнтеграцияЦентраЭДО/Ext/Module.bsl
@@ -584,14 +584,11 @@
ЭтоВходящийЭДО = ОписаниеДокументаЭДО.ЭтоВходящийЭДО;
- Блокировка = Новый БлокировкаДанных;
- ИмяТаблицыДокумента = ИмяТаблицыДокументаЭДО(ЭтоВходящийЭДО);
- ЭлементБлокировки = Блокировка.Добавить(ИмяТаблицыДокумента);
- ЭлементБлокировки.УстановитьЗначение("ИдентификаторДокумента", ОписаниеДокументаЭДО.Идентификатор);
-
НачатьТранзакцию();
Попытка
- Блокировка.Заблокировать();
+ КлючБлокировкиДокумента = ЭлектронныеДокументыЭДО.НовыйКлючДокументаДляБлокировки();
+ КлючБлокировкиДокумента.ИдентификаторДокумента = ОписаниеДокументаЭДО.Идентификатор;
+ ЭлектронныеДокументыЭДО.ЗаблокироватьДокументДляИзмененияПоКлючу(КлючБлокировкиДокумента, ЭтоВходящийЭДО);
ДокументОбъект = Неопределено; // Неопределено,ДокументОбъект.ЭлектронныйДокументВходящийЭДО,ДокументОбъект.ЭлектронныйДокументИсходящийЭДО
@@ -695,14 +692,11 @@
ЭтоВходящийЭДО = ОписаниеДокументаЭДО.ЭтоВходящийЭДО;
- Блокировка = Новый БлокировкаДанных;
- ИмяТаблицыДокумента = ИмяТаблицыДокументаЭДО(ЭтоВходящийЭДО);
- ЭлементБлокировки = Блокировка.Добавить(ИмяТаблицыДокумента);
- ЭлементБлокировки.УстановитьЗначение("ИдентификаторДокумента", ОписаниеДокументаЭДО.Идентификатор);
-
НачатьТранзакцию();
Попытка
- Блокировка.Заблокировать();
+ КлючБлокировкиДокумента = ЭлектронныеДокументыЭДО.НовыйКлючДокументаДляБлокировки();
+ КлючБлокировкиДокумента.ИдентификаторДокумента = ОписаниеДокументаЭДО.Идентификатор;
+ ЭлектронныеДокументыЭДО.ЗаблокироватьДокументДляИзмененияПоКлючу(КлючБлокировкиДокумента, ЭтоВходящийЭДО);
ДокументОбъект = Неопределено; // Неопределено,ДокументОбъект.ЭлектронныйДокументВходящийЭДО,ДокументОбъект.ЭлектронныйДокументИсходящийЭДО
@@ -1471,15 +1465,6 @@
Возврат ЭлектронныеДокументыЭДО.ЕстьДействие(НаборДействий, Действие);
КонецФункции
-// Параметры:
-// ЭтоВходящийЭДО - Булево
-//
-// Возвращаемое значение:
-// Строка
-Функция ИмяТаблицыДокументаЭДО(ЭтоВходящийЭДО)
- Возврат ЭлектронныеДокументыЭДО.ИмяТаблицыДокументаЭДО(ЭтоВходящийЭДО);
-КонецФункции
-
// Параметры:
// ПараметрыОперации - см. НовыеПараметрыОперацииПоДействиямЭДО
// КонтекстДиагностики - См. ОбработкаНеисправностейБЭД.НовыйКонтекстДиагностики
@@ -1837,6 +1822,9 @@
ДанныеДляФормирования = Новый Структура;
ДанныеДляФормирования.Вставить("ДанныеДокумента", ДанныеОбъектаУчета.Данные);
ДанныеДляФормирования.Вставить("ЗначенияДополнительныхПолей", Неопределено);
+ ДанныеДляФормирования.Вставить("Участники", Новый Структура());
+ ДанныеДляФормирования.Участники.Вставить("ИдентификаторОтправителя", НастройкиОтправки.ИдентификаторОтправителя);
+ ДанныеДляФормирования.Участники.Вставить("ИдентификаторПолучателя", НастройкиОтправки.ИдентификаторПолучателя);
НастройкиФормированияДополнительныхПолей = ФорматыЭДО.НовыеНастройкиФормированияДокументаПоОбъектуУчета();
НастройкиФормированияДополнительныхПолей.Организация = НастройкиОтправки.Отправитель;
@@ -7954,7 +7942,7 @@
Выборка.Следующий();
ОписаниеДокументаЭДО = НовоеОписаниеДокументаДляВыгрузкиВФорматеСервиса();
- ОписаниеДокументаЭДО.ЭтоВходящийЭДО = Выборка.ЭтоВходящийЭДО;
+ ОписаниеДокументаЭДО.ЭтоВходящийЭДО = ЭлектронныеДокументыЭДО.ЭтоВходящийЭДО(ЭлектронныйДокумент);
ОписаниеДокументаЭДО.Идентификатор = Выборка.ИдентификаторДокумента;
ОписаниеДокументаЭДО.Формат = Выборка.ФорматОсновногоТитула;
ОписаниеДокументаЭДО.ВидДокумента.Наименование = Выборка.ВидДокументаНаименование;
@@ -7994,106 +7982,86 @@
// ЭлектронныйДокумент - ДокументСсылка.ЭлектронныйДокументВходящийЭДО,ДокументСсылка.ЭлектронныйДокументИсходящийЭДО
//
// Возвращаемое значение:
-// ВыборкаИзРезультатаЗапроса
+// ВыборкаИзРезультатаЗапроса:
+// * ИдентификаторДокумента - Строка
+// * ФорматОсновногоТитула - Строка
+// * ВидДокумента - СправочникСсылка.ВидыДокументовЭДО
+// * ВидДокументаНаименование - Строка
+// * ВидДокументаТипДокумента - ПеречислениеСсылка.ТипыДокументовЭДО
+// * Организация - ОпределяемыйТип.Организация
+// * ОрганизацияИНН - Строка
+// * ОрганизацияКПП - Строка
+// * Контрагент - ОпределяемыйТип.КонтрагентБЭД
+// * КонтрагентИНН - Строка
+// * КонтрагентКПП - Строка
+// * НомерДокумента - Строка
+// * Дата - Дата
+// * ДатаДокумента - Дата
+// * ДатаАннулирования - Дата
+// * ДатаПодписания - Дата
+// * ДатаОтправкиПолучения - Дата
+// * СуммаДокумента - Число
+// * СпособОбмена - ПеречислениеСсылка.СпособыОбменаЭД
+// * ТипРегламента - ПеречислениеСсылка.ТипыРегламентовЭДО
+// * ТребуетсяИзвещение - Булево
+// * ТребуетсяПодтверждение - Булево
+// * ИдентификаторОрганизации - Строка
+// * ИдентификаторКонтрагента - Строка
+// * ИдентификаторДокументооборота - Строка
+// * Состояние - ПеречислениеСсылка.СостоянияДокументовЭДО
+// * СостояниеДополнение - Строка
+// * ДатаИзмененияСостояния - Дата
+// * КомментарийСостояния - Строка
+// * ИдентификаторПакета - Строка
Функция ВыбратьСвойстваДокументаДляВыгрузки(ЭлектронныйДокумент)
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
- | МеткиВремениДанныхЭДО.ИдентификаторЭДО КАК ИдентификаторЭДО,
- | МеткиВремениДанныхЭДО.МеткаВремени КАК МеткаВремени,
- | ИСТИНА КАК ЭтоВходящийЭДО,
- | ЭлектронныйДокументВходящийЭДО.ИдентификаторДокумента КАК ИдентификаторДокумента,
- | ЭлектронныйДокументВходящийЭДО.ФорматОсновногоТитула КАК ФорматОсновногоТитула,
- | ЭлектронныйДокументВходящийЭДО.ВидДокумента КАК ВидДокумента,
- | ЭлектронныйДокументВходящийЭДО.ВидДокумента.Наименование КАК ВидДокументаНаименование,
- | ЭлектронныйДокументВходящийЭДО.ВидДокумента.ТипДокумента КАК ВидДокументаТипДокумента,
- | ЭлектронныйДокументВходящийЭДО.Организация КАК Организация,
- | ЭлектронныйДокументВходящийЭДО.Организация.ИНН КАК ОрганизацияИНН,
- | ЭлектронныйДокументВходящийЭДО.Организация.КПП КАК ОрганизацияКПП,
- | ЭлектронныйДокументВходящийЭДО.Контрагент КАК Контрагент,
- | ЭлектронныйДокументВходящийЭДО.Контрагент.ИНН КАК КонтрагентИНН,
- | ЭлектронныйДокументВходящийЭДО.Контрагент.КПП КАК КонтрагентКПП,
- | ЭлектронныйДокументВходящийЭДО.НомерДокумента КАК НомерДокумента,
- | ЭлектронныйДокументВходящийЭДО.Дата КАК Дата,
- | ЭлектронныйДокументВходящийЭДО.ДатаДокумента КАК ДатаДокумента,
- | ЭлектронныйДокументВходящийЭДО.ДатаАннулирования КАК ДатаАннулирования,
- | ЭлектронныйДокументВходящийЭДО.ДатаПодписания КАК ДатаПодписания,
- | ЭлектронныйДокументВходящийЭДО.ДатаПолучения КАК ДатаОтправкиПолучения,
- | ЭлектронныйДокументВходящийЭДО.СуммаДокумента КАК СуммаДокумента,
- | ЭлектронныйДокументВходящийЭДО.СпособОбмена КАК СпособОбмена,
- | ЭлектронныйДокументВходящийЭДО.ТипРегламента КАК ТипРегламента,
- | ЭлектронныйДокументВходящийЭДО.ТребуетсяИзвещение КАК ТребуетсяИзвещение,
- | ЭлектронныйДокументВходящийЭДО.ТребуетсяПодтверждение КАК ТребуетсяПодтверждение,
- | ЭлектронныйДокументВходящийЭДО.ИдентификаторОрганизации КАК ИдентификаторОрганизации,
- | ЭлектронныйДокументВходящийЭДО.ИдентификаторКонтрагента КАК ИдентификаторКонтрагента,
- | ЭлектронныйДокументВходящийЭДО.ИдентификаторДокументооборота КАК ИдентификаторДокументооборота,
+ | ЭлектронныеДокументы.ИдентификаторДокумента КАК ИдентификаторДокумента,
+ | ЭлектронныеДокументы.ФорматОсновногоТитула КАК ФорматОсновногоТитула,
+ | ЭлектронныеДокументы.ВидДокумента КАК ВидДокумента,
+ | ЭлектронныеДокументы.ВидДокумента.Наименование КАК ВидДокументаНаименование,
+ | ЭлектронныеДокументы.ВидДокумента.ТипДокумента КАК ВидДокументаТипДокумента,
+ | ЭлектронныеДокументы.Организация КАК Организация,
+ | ЭлектронныеДокументы.Организация.ИНН КАК ОрганизацияИНН,
+ | ЭлектронныеДокументы.Организация.КПП КАК ОрганизацияКПП,
+ | ЭлектронныеДокументы.Контрагент КАК Контрагент,
+ | ЭлектронныеДокументы.Контрагент.ИНН КАК КонтрагентИНН,
+ | ЭлектронныеДокументы.Контрагент.КПП КАК КонтрагентКПП,
+ | ЭлектронныеДокументы.НомерДокумента КАК НомерДокумента,
+ | ЭлектронныеДокументы.Дата КАК Дата,
+ | ЭлектронныеДокументы.ДатаДокумента КАК ДатаДокумента,
+ | ЭлектронныеДокументы.ДатаАннулирования КАК ДатаАннулирования,
+ | ЭлектронныеДокументы.ДатаПодписания КАК ДатаПодписания,
+ | &ИмяПоляДатаОтправкиПолучения КАК ДатаОтправкиПолучения,
+ | ЭлектронныеДокументы.СуммаДокумента КАК СуммаДокумента,
+ | ЭлектронныеДокументы.СпособОбмена КАК СпособОбмена,
+ | ЭлектронныеДокументы.ТипРегламента КАК ТипРегламента,
+ | ЭлектронныеДокументы.ТребуетсяИзвещение КАК ТребуетсяИзвещение,
+ | ЭлектронныеДокументы.ТребуетсяПодтверждение КАК ТребуетсяПодтверждение,
+ | ЭлектронныеДокументы.ИдентификаторОрганизации КАК ИдентификаторОрганизации,
+ | ЭлектронныеДокументы.ИдентификаторКонтрагента КАК ИдентификаторКонтрагента,
+ | ЭлектронныеДокументы.ИдентификаторДокументооборота КАК ИдентификаторДокументооборота,
| ЕСТЬNULL(СостоянияДокументовЭДО.Состояние, ЗНАЧЕНИЕ(Перечисление.СостоянияДокументовЭДО.ПустаяСсылка)) КАК Состояние,
| ЕСТЬNULL(СостоянияДокументовЭДО.СостояниеДополнение, """") КАК СостояниеДополнение,
| ЕСТЬNULL(СостоянияДокументовЭДО.ДатаИзменения, ДАТАВРЕМЯ(1, 1, 1)) КАК ДатаИзмененияСостояния,
| ЕСТЬNULL(СостоянияДокументовЭДО.Комментарий, """") КАК КомментарийСостояния,
| ЕСТЬNULL(СоставПакетовДокументовЭДО.ИдентификаторПакета, """") КАК ИдентификаторПакета
|ИЗ
- | Документ.ЭлектронныйДокументВходящийЭДО КАК ЭлектронныйДокументВходящийЭДО
- | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.МеткиВремениДанныхЭДО КАК МеткиВремениДанныхЭДО
- | ПО ЭлектронныйДокументВходящийЭДО.ИдентификаторОрганизации = МеткиВремениДанныхЭДО.ИдентификаторЭДО
- | И МеткиВремениДанныхЭДО.ТипДанных = ЗНАЧЕНИЕ(Перечисление.ТипыСинхронизацииСЦентромЭДО.ДокументыЭДО)
- | И ЭлектронныйДокументВходящийЭДО.ИдентификаторДокумента = МеткиВремениДанныхЭДО.ИдентификаторОбъекта
+ | &ИмяТаблицыДокументаЭДО КАК ЭлектронныеДокументы
| ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.СостоянияДокументовЭДО КАК СостоянияДокументовЭДО
- | ПО ЭлектронныйДокументВходящийЭДО.Ссылка = СостоянияДокументовЭДО.ЭлектронныйДокумент
+ | ПО ЭлектронныеДокументы.Ссылка = СостоянияДокументовЭДО.ЭлектронныйДокумент
| ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.СоставПакетовДокументовЭДО КАК СоставПакетовДокументовЭДО
- | ПО ЭлектронныйДокументВходящийЭДО.Ссылка = СоставПакетовДокументовЭДО.ЭлектронныйДокумент
+ | ПО ЭлектронныеДокументы.Ссылка = СоставПакетовДокументовЭДО.ЭлектронныйДокумент
|ГДЕ
- | ЭлектронныйДокументВходящийЭДО.Ссылка = &ЭлектронныйДокумент
- |
- |ОБЪЕДИНИТЬ ВСЕ
- |
- |ВЫБРАТЬ
- | МеткиВремениДанныхЭДО.ИдентификаторЭДО КАК ИдентификаторЭДО,
- | МеткиВремениДанныхЭДО.МеткаВремени КАК МеткаВремени,
- | ЛОЖЬ КАК ЭтоВходящийЭДО,
- | ЭлектронныйДокументИсходящийЭДО.ИдентификаторДокумента КАК ИдентификаторДокумента,
- | ЭлектронныйДокументИсходящийЭДО.ФорматОсновногоТитула КАК ФорматОсновногоТитула,
- | ЭлектронныйДокументИсходящийЭДО.ВидДокумента КАК ВидДокумента,
- | ЭлектронныйДокументИсходящийЭДО.ВидДокумента.Наименование КАК ВидДокументаНаименование,
- | ЭлектронныйДокументИсходящийЭДО.ВидДокумента.ТипДокумента КАК ВидДокументаТипДокумента,
- | ЭлектронныйДокументИсходящийЭДО.Организация КАК Организация,
- | ЭлектронныйДокументИсходящийЭДО.Организация.ИНН КАК ОрганизацияИНН,
- | ЭлектронныйДокументИсходящийЭДО.Организация.КПП КАК ОрганизацияКПП,
- | ЭлектронныйДокументИсходящийЭДО.Контрагент КАК Контрагент,
- | ЭлектронныйДокументИсходящийЭДО.Контрагент.ИНН КАК КонтрагентИНН,
- | ЭлектронныйДокументИсходящийЭДО.Контрагент.КПП КАК КонтрагентКПП,
- | ЭлектронныйДокументИсходящийЭДО.НомерДокумента КАК НомерДокумента,
- | ЭлектронныйДокументИсходящийЭДО.Дата КАК Дата,
- | ЭлектронныйДокументИсходящийЭДО.ДатаДокумента КАК ДатаДокумента,
- | ЭлектронныйДокументИсходящийЭДО.ДатаАннулирования КАК ДатаАннулирования,
- | ЭлектронныйДокументИсходящийЭДО.ДатаПодписания КАК ДатаПодписания,
- | ЭлектронныйДокументИсходящийЭДО.ДатаОтправки КАК ДатаОтправкиПолучения,
- | ЭлектронныйДокументИсходящийЭДО.СуммаДокумента КАК СуммаДокумента,
- | ЭлектронныйДокументИсходящийЭДО.СпособОбмена КАК СпособОбмена,
- | ЭлектронныйДокументИсходящийЭДО.ТипРегламента КАК ТипРегламента,
- | ЭлектронныйДокументИсходящийЭДО.ТребуетсяИзвещение КАК ТребуетсяИзвещение,
- | ЭлектронныйДокументИсходящийЭДО.ТребуетсяПодтверждение КАК ТребуетсяПодтверждение,
- | ЭлектронныйДокументИсходящийЭДО.ИдентификаторОрганизации КАК ИдентификаторОрганизации,
- | ЭлектронныйДокументИсходящийЭДО.ИдентификаторКонтрагента КАК ИдентификаторКонтрагента,
- | ЭлектронныйДокументИсходящийЭДО.ИдентификаторДокументооборота КАК ИдентификаторДокументооборота,
- | ЕСТЬNULL(СостоянияДокументовЭДО.Состояние, ЗНАЧЕНИЕ(Перечисление.СостоянияДокументовЭДО.ПустаяСсылка)) КАК Состояние,
- | ЕСТЬNULL(СостоянияДокументовЭДО.СостояниеДополнение, """") КАК СостояниеДополнение,
- | ЕСТЬNULL(СостоянияДокументовЭДО.ДатаИзменения, ДАТАВРЕМЯ(1, 1, 1)) КАК ДатаИзмененияСостояния,
- | ЕСТЬNULL(СостоянияДокументовЭДО.Комментарий, """") КАК КомментарийСостояния,
- | ЕСТЬNULL(СоставПакетовДокументовЭДО.ИдентификаторПакета, """") КАК ИдентификаторПакета
- |ИЗ
- | Документ.ЭлектронныйДокументИсходящийЭДО КАК ЭлектронныйДокументИсходящийЭДО
- | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.МеткиВремениДанныхЭДО КАК МеткиВремениДанныхЭДО
- | ПО ЭлектронныйДокументИсходящийЭДО.ИдентификаторОрганизации = МеткиВремениДанныхЭДО.ИдентификаторЭДО
- | И МеткиВремениДанныхЭДО.ТипДанных = ЗНАЧЕНИЕ(Перечисление.ТипыСинхронизацииСЦентромЭДО.ДокументыЭДО)
- | И ЭлектронныйДокументИсходящийЭДО.ИдентификаторДокумента = МеткиВремениДанныхЭДО.ИдентификаторОбъекта
- | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.СостоянияДокументовЭДО КАК СостоянияДокументовЭДО
- | ПО ЭлектронныйДокументИсходящийЭДО.Ссылка = СостоянияДокументовЭДО.ЭлектронныйДокумент
- | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.СоставПакетовДокументовЭДО КАК СоставПакетовДокументовЭДО
- | ПО ЭлектронныйДокументИсходящийЭДО.Ссылка = СоставПакетовДокументовЭДО.ЭлектронныйДокумент
- |ГДЕ
- | ЭлектронныйДокументИсходящийЭДО.Ссылка = &ЭлектронныйДокумент";
+ | ЭлектронныеДокументы.Ссылка = &ЭлектронныйДокумент";
+
+ ЭтоВходящийЭДО = ЭлектронныеДокументыЭДО.ЭтоВходящийЭДО(ЭлектронныйДокумент);
+ ИмяТаблицыДокументаЭДО = ЭлектронныеДокументыЭДО.ИмяТаблицыДокументаЭДО(ЭтоВходящийЭДО);
+ Запрос.Текст = СтрЗаменить(Запрос.Текст, "&ИмяТаблицыДокументаЭДО", ИмяТаблицыДокументаЭДО);
+ ИмяПоляДатаОтправкиПолучения = ?(ЭтоВходящийЭДО, "ЭлектронныеДокументы.ДатаПолучения", "ЭлектронныеДокументы.ДатаОтправки");
+ Запрос.Текст = СтрЗаменить(Запрос.Текст, "&ИмяПоляДатаОтправкиПолучения", ИмяПоляДатаОтправкиПолучения);
Запрос.УстановитьПараметр("ЭлектронныйДокумент", ЭлектронныйДокумент);
@@ -8465,7 +8433,7 @@
// * Идентификатор - Строка
// * ИдентификаторСервиса - Неопределено,Строка
// * Данные - Неопределено,Строка - двоичные данные в формате base64.
-Функция ДанныеДоверенностейДляВыгрузкиВФорматеСервиса(ПодписанныеОбъекты, УчетнаяЗаписьЦентраЭДО, СсылкиПоИдентификаторамОбъектов) Экспорт
+Функция ДанныеДоверенностейДляВыгрузкиВФорматеСервиса(ПодписанныеОбъекты, УчетнаяЗаписьЦентраЭДО, СсылкиПоИдентификаторамОбъектов)
ДанныеДоверенностей = Новый Массив; // Массив из см. НовыеДанныеПроверкиПодписиПолнойСинхронизацииДокумента
@@ -8546,14 +8514,28 @@
Попытка
Для Каждого СопоставлениеПоДокументу Из Сопоставление Цикл
+
+ ИдентификаторДокумента = "";
Для Каждого СопоставленныеИдентификаторы Из СопоставлениеПоДокументу Цикл
Если СопоставленныеИдентификаторы.Ключ = "Документ" Тогда
-
+ ИдентификаторДокумента = СопоставленныеИдентификаторы.Значение.Идентификатор;
Продолжить;
КонецЕсли;
ЗаписатьСопоставленныеИдентификаторыОбъектов(СопоставленныеИдентификаторы.Значение,
УчетнаяЗаписьЦентраЭДО, ИдентификаторЭДО, СсылкиПоИдентификаторамОбъектов);
КонецЦикла;
+
+ Если ЗначениеЗаполнено(ИдентификаторДокумента) Тогда
+ НовоеСостояниеСинхронизации = РегистрыСведений.СостоянияСинхронизацииОбъектовСЦентромЭДО.НовоеСостояниеОбъекта();
+ НовоеСостояниеСинхронизации.ИдентификаторОбъекта = ИдентификаторДокумента;
+ НовоеСостояниеСинхронизации.ИдентификаторЭДО = ИдентификаторЭДО;
+ НовоеСостояниеСинхронизации.МеткаВремени = ТекущаяУниверсальнаяДатаВМиллисекундах();
+ РегистрыСведений.СостоянияСинхронизацииОбъектовСЦентромЭДО.ЗаписатьСостояние(
+ Перечисления.ТипыСинхронизацииСЦентромЭДО.ДокументыЭДО, НовоеСостояниеСинхронизации);
+ РегистрыСведений.СостоянияСинхронизацииОбъектовСЦентромЭДО.ЗаписатьСостояние(
+ Перечисления.ТипыСинхронизацииСЦентромЭДО.ДанныеДокументовЭДО, НовоеСостояниеСинхронизации);
+ КонецЕсли;
+
КонецЦикла;
Для Каждого ЭлектронныйДокумент Из ЭлектронныеДокументы Цикл
@@ -8585,7 +8567,7 @@
Процедура УстановитьПризнакИспользованияЦентраЭДОПоДокументу(ЭлектронныйДокумент)
ЭтоВходящийЭДО = ЭлектронныеДокументыЭДО.ЭтоВходящийЭДО(ЭлектронныйДокумент);
- ЭлектронныеДокументыЭДО.ЗаблокироватьДанныеДокументаДляИзменения(ЭлектронныйДокумент, ЭтоВходящийЭДО);
+ ЭлектронныеДокументыЭДО.ЗаблокироватьДокументДляИзменения(ЭлектронныйДокумент, ЭтоВходящийЭДО);
ДокументОбъект = ЭлектронныйДокумент.ПолучитьОбъект();
ДокументОбъект.ИспользоватьЦентрЭДО = Истина;
@@ -8686,7 +8668,7 @@
//
// Возвращаемое значение:
// Булево
-Функция ВыгрузитьДокументНабораВЦентрЭДО(ЭлектронныйДокумент, КонтекстДиагностики) Экспорт
+Функция ВыгрузитьДокументНабораВЦентрЭДО(ЭлектронныйДокумент, КонтекстДиагностики)
Результат = Ложь;
diff --git a/src/CommonModules/ЭлектронныеДокументыЭДОКлиент/Ext/Module.bsl b/src/CommonModules/ЭлектронныеДокументыЭДОКлиент/Ext/Module.bsl
index ab9fd4c08..5208ca0e9 100644
--- a/src/CommonModules/ЭлектронныеДокументыЭДОКлиент/Ext/Module.bsl
+++ b/src/CommonModules/ЭлектронныеДокументыЭДОКлиент/Ext/Module.bsl
@@ -26,12 +26,12 @@
ПараметрыОжидания = ОжиданиеОперацийБЭДКлиент.НовыеПараметры();
КонтекстОжиданияОперации = ОжиданиеОперацийБЭДКлиент.НовыйКонтекст(ПараметрыОжидания);
ОжиданиеОперацийБЭДКлиент.УстановитьОбработчикПрерывания(ОбработчикПрерывания, КонтекстОжиданияОперации);
- ОжиданиеОперацийБЭДКлиент.ОтметитьНачалоВыполнения(КонтекстОжиданияОперации);
ОжиданиеОперацийБЭДКлиент.ОткрытьФормуОжидания(Неопределено, КонтекстОжиданияОперации);
КонтекстДействийПоЭДО.ОповещениеОЗавершении = ОповещениеОЗавершении;
КонтекстДействийПоЭДО.КонтекстДиагностики = КонтекстДиагностики;
- КонтекстДействийПоЭДО.КонтекстОжиданияОперации = КонтекстОжиданияОперации;
+ КонтекстДействийПоЭДО.ИдентификаторОперации = КонтекстОжиданияОперации.ИдентификаторОперации;
+ КонтекстДействийПоЭДО.ДействияВыполняются = Истина;
КонтекстДействийПоЭДО.ПараметрыВыполненияДействий = ПараметрыВыполнения;
Если ОбщегоНазначенияКлиент.ПодсистемаСуществует("ЭлектронноеВзаимодействие.ЭлектронноеАктированиеЕИС") Тогда
@@ -243,10 +243,11 @@
// Параметры:
// КонтекстДиагностики - см. ОбработкаНеисправностейБЭДКлиент.НовыйКонтекстДиагностики
// ПараметрыОбработкиОшибок - см. ОбработкаНеисправностейБЭДКлиент.НовыеПараметрыОбработкиОшибок
-Процедура ВывестиПредупреждениеОДокументеВФорматеНеПоддержанномОператором(КонтекстДиагностики, ПараметрыОбработкиОшибок) Экспорт
+Процедура ВывестиПредупреждениеОДокументеВНеПоддерживаемомФормате(КонтекстДиагностики, ПараметрыОбработкиОшибок) Экспорт
Ошибка = КонтекстДиагностики.Диагностика.Ошибки[0];
- ТекстЗаголовка = НСтр("ru = 'Документ не поддерживается оператором ЭДО'");
+ ТекстЗаголовка = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(Ошибка.ВидОшибки, "ЗаголовокПроблемы",
+ НСтр("ru='Формат документа не поддерживается.'")); // Строка
ПоказатьПредупреждение(, Ошибка.ПодробноеПредставлениеОшибки, 30, ТекстЗаголовка);
КонецПроцедуры
@@ -555,8 +556,9 @@
// * ОповещениеОЗавершении - ОписаниеОповещения
// * КонтекстДиагностики - Неопределено
// - См. ОбработкаНеисправностейБЭДКлиент.НовыйКонтекстДиагностики
-// * КонтекстОжиданияОперации - Неопределено
-// - См. ОжиданиеОперацийБЭДКлиент.НовыйКонтекст
+// * ИдентификаторОперации - Неопределено
+// - УникальныйИдентификатор
+// * ДействияВыполняются - Булево
// * ПаролиСертификатов - См. КриптографияБЭДКлиент.НовыеПаролиСертификатов
// * Сообщения - ФиксированныйМассив из СообщениеПользователю - ключ возвращаемого значения см. ДлительныеОперации.ВыполнитьПроцедуру
// * ПараметрыВыполненияДействий - См. ЭлектронныеДокументыЭДОКлиентСервер.НовыеПараметрыВыполненияДействийПоЭДО
@@ -573,7 +575,8 @@
Контекст.Вставить("ИтогВыполненияДействий", ЭлектронныеДокументыЭДОКлиентСервер.НовыйИтогВыполненияДействийПоЭДО());
Контекст.Вставить("ОповещениеОЗавершении", Новый ОписаниеОповещения);
Контекст.Вставить("КонтекстДиагностики", Неопределено);
- Контекст.Вставить("КонтекстОжиданияОперации", Неопределено);
+ Контекст.Вставить("ИдентификаторОперации", Неопределено);
+ Контекст.Вставить("ДействияВыполняются", Ложь);
Контекст.Вставить("ПаролиСертификатов", КриптографияБЭДКлиент.НовыеПаролиСертификатов());
Контекст.Вставить("Сообщения", Новый ФиксированныйМассив(Новый Массив));
Контекст.Вставить("ПараметрыВыполненияДействий", Новый Структура);
@@ -644,8 +647,8 @@
// КонтекстДействийПоЭДО - См. НовыйКонтекстДействийПоЭДО
Процедура ПродолжитьВыполнениеДействийПоЭДОПослеДлительнойОперации(ДлительнаяОперация, КонтекстДействийПоЭДО) Экспорт
- Если КонтекстДействийПоЭДО.КонтекстОжиданияОперации <> Неопределено
- И Не ОжиданиеОперацийБЭДКлиент.ОперацияВыполняется(КонтекстДействийПоЭДО.КонтекстОжиданияОперации) Тогда
+ Если КонтекстДействийПоЭДО.ИдентификаторОперации <> Неопределено
+ И Не КонтекстДействийПоЭДО.ДействияВыполняются Тогда
Возврат;
КонецЕсли;
@@ -658,7 +661,7 @@
КонецЕсли;
РезультатыПоИнтеграциямЭДО = ЭлектронныеДокументыЭДОВызовСервера.РезультатыВыполненияДействийПоИнтеграциямЭДОДляКлиента(
- АдресРезультата);
+ АдресРезультата, ДлительнаяОперация.Сообщения);
Если Не ЗначениеЗаполнено(РезультатыПоИнтеграциямЭДО) Тогда
ЗавершитьВыполнениеДействийПоЭДО(КонтекстДействийПоЭДО);
@@ -807,11 +810,9 @@
//
Процедура ЗавершитьВыполнениеДействийПоЭДО(КонтекстДействийПоЭДО, РезультатДействийПоЭДО = Неопределено)
- КонтекстОжиданияОперации = КонтекстДействийПоЭДО.КонтекстОжиданияОперации;
-
- Если КонтекстОжиданияОперации <> Неопределено Тогда
- ОжиданиеОперацийБЭДКлиент.ЗакрытьФормуОжидания(КонтекстОжиданияОперации);
- ОжиданиеОперацийБЭДКлиент.УстановитьОбработчикПрерывания(Неопределено, КонтекстОжиданияОперации);
+ Если КонтекстДействийПоЭДО.ИдентификаторОперации <> Неопределено Тогда
+ ОжиданиеОперацийБЭДКлиент.ЗакрытьФормуОжиданияПоИдентификаторуОперации(
+ КонтекстДействийПоЭДО.ИдентификаторОперации);
КонецЕсли;
Для Каждого Сообщение Из КонтекстДействийПоЭДО.Сообщения Цикл
@@ -822,6 +823,7 @@
Результат.Вставить("Итог", КонтекстДействийПоЭДО.ИтогВыполненияДействий);
Результат.Вставить("ОшибкиФормирования", КонтекстДействийПоЭДО.ОшибкиФормирования);
Результат.Вставить("КонтекстДиагностики", КонтекстДействийПоЭДО.КонтекстДиагностики);
+ Результат.Вставить("ПаролиСертификатов", КонтекстДействийПоЭДО.ПаролиСертификатов);
Если РезультатДействийПоЭДО <> Неопределено И РезультатДействийПоЭДО.Свойство("СвойстваПодписи") Тогда
Результат.Вставить("СвойстваПодписи", РезультатДействийПоЭДО.СвойстваПодписи);
@@ -945,7 +947,7 @@
// КонтекстДействийПоЭДО - см. НовыйКонтекстДействийПоЭДО
Процедура ЗавершитьВыполнениеДействийПоЭДОПослеПрерывания(РезультатПрерывания, КонтекстДействийПоЭДО) Экспорт
- КонтекстДействийПоЭДО.КонтекстОжиданияОперации.ОперацияВыполняется = Ложь;
+ КонтекстДействийПоЭДО.ДействияВыполняются = Ложь;
ЗавершитьВыполнениеДействийПоЭДО(КонтекстДействийПоЭДО);
@@ -1293,7 +1295,8 @@
ПараметрыПроверки.ОбработкаЗавершенияПроверки = Новый ОписаниеОповещения(
"ПроверитьПодписиДокументаЗавершение", ЭлектронныеДокументыЭДОКлиент, ОповещениеОЗавершении);
ПараметрыПроверки.ОбработкаПроверкиПодписи = Новый ОписаниеОповещения(
- "ОбработатьРезультатПроверкиПодписиДокумента", ЭлектронныеДокументыЭДОКлиент, ПараметрыПроверки);
+ "ОбработатьРезультатПроверкиПодписиДокумента", ЭлектронныеДокументыЭДОКлиент,
+ ОбщегоНазначенияКлиент.СкопироватьРекурсивно(ПараметрыПроверки));
ПараметрыПроверки.ОперацияМенеджераКриптографии = "ПроверкаПодписи";
ПараметрыПроверки.КонтекстДиагностики = КонтекстДиагностики;
diff --git a/src/CommonModules/ЭлектронныеДокументыЭДОКлиентСервер/Ext/Module.bsl b/src/CommonModules/ЭлектронныеДокументыЭДОКлиентСервер/Ext/Module.bsl
index 009623501..6a4a453ad 100644
--- a/src/CommonModules/ЭлектронныеДокументыЭДОКлиентСервер/Ext/Module.bsl
+++ b/src/CommonModules/ЭлектронныеДокументыЭДОКлиентСервер/Ext/Module.bsl
@@ -376,17 +376,6 @@
#Область ДанныеОтветныхТитулов
-// Возвращаемое значение:
-// Структура:
-// * Формат - Строка
-// * Данные - Неопределено,Произвольный
-Функция НовыеДанныеРучногоФормированияТитула() Экспорт
- ДанныеТитула = Новый Структура;
- ДанныеТитула.Вставить("Формат", "");
- ДанныеТитула.Вставить("Данные", Неопределено);
- Возврат ДанныеТитула;
-КонецФункции
-
// Возвращаемое значение:
// Структура:
// * СоставительДокументаНаименование - Строка
diff --git a/src/CommonModules/ЭлектронныеДокументыЭДОСлужебный/Ext/Module.bsl b/src/CommonModules/ЭлектронныеДокументыЭДОСлужебный/Ext/Module.bsl
index 37cc6ed67..1a69fd279 100644
--- a/src/CommonModules/ЭлектронныеДокументыЭДОСлужебный/Ext/Module.bsl
+++ b/src/CommonModules/ЭлектронныеДокументыЭДОСлужебный/Ext/Module.bsl
@@ -1,5 +1,4 @@
-
-#Область СлужебныеПроцедурыИФункции
+#Область СлужебныеПроцедурыИФункции
#Область КонтрактМенеджераДействийЭДО
@@ -194,170 +193,6 @@
#КонецОбласти
-#Область ОбъектыДействий
-
-// Параметры:
-// ОбъектыДействий - См. ЭлектронныеДокументыЭДОКлиентСервер.НовыеОбъектыДействийПоЭДО
-//
-// Возвращаемое значение:
-// См. ЭлектронныеДокументыЭДОКлиентСервер.НовыеОбъектыДействийПоЭДО
-Функция ОбъектыДействийЛокальногоЭДО(ОбъектыДействий)
-
- ОбъектыДействийЛокальногоЭДО = ЭлектронныеДокументыЭДОКлиентСервер.НовыеОбъектыДействийПоЭДО();
-
- ЗаполнитьЗначенияСвойств(ОбъектыДействийЛокальногоЭДО, ОбъектыДействий, "ОбъектыУчета, ТранспортныеКонтейнеры");
-
- ЗаполнитьОбъектыДействийПоУчетнымЗаписямЭДО(ОбъектыДействийЛокальногоЭДО,
- ОбъектыДействий.ИдентификаторыОрганизаций);
-
- ЗаполнитьОбъектыДействийПоПакетамДокументовЭДО(ОбъектыДействийЛокальногоЭДО,
- ОбъектыДействий.ПакетыДокументов);
-
- ЗаполнитьОбъектыДействийПоДокументамЭДО(ОбъектыДействийЛокальногоЭДО,
- ОбъектыДействий.ЭлектронныеДокументы);
-
- ЗаполнитьОбъектыДействийПоСообщениямЭДО(ОбъектыДействийЛокальногоЭДО,
- ОбъектыДействий.Сообщения);
-
- ЗаполнитьОбъектыДействийПоОписаниямДокументовЭДО(ОбъектыДействийЛокальногоЭДО,
- ОбъектыДействий.ОписанияДокументовПоФайлам);
-
- Возврат ОбъектыДействийЛокальногоЭДО;
-
-КонецФункции
-
-// Параметры:
-// ОбъектыДействий - См. ЭлектронныеДокументыЭДОКлиентСервер.НовыеОбъектыДействийПоЭДО
-// ИдентификаторыОрганизаций - Массив из Строка - Идентификаторы учетных записей ЭДО организаций.
-//
-Процедура ЗаполнитьОбъектыДействийПоУчетнымЗаписямЭДО(ОбъектыДействий, ИдентификаторыОрганизаций)
-
- Если Не ЗначениеЗаполнено(ИдентификаторыОрганизаций) Тогда
- Возврат;
- КонецЕсли;
-
- ИдентификаторыПоИнтеграциямЭДО = УчетныеЗаписиЭДО.ИдентификаторыПоИнтеграциямЭДО(ИдентификаторыОрганизаций);
-
- ОбъектыДействий.ИдентификаторыОрганизаций = ИдентификаторыПоИнтеграциямЭДО.ИдентификаторыДляЛокальногоЭДО;
-
-КонецПроцедуры
-
-// Параметры:
-// ОбъектыДействий - См. ЭлектронныеДокументыЭДОКлиентСервер.НовыеОбъектыДействийПоЭДО
-// ПакетыДокументов - Массив из УникальныйИдентификатор
-//
-Процедура ЗаполнитьОбъектыДействийПоПакетамДокументовЭДО(ОбъектыДействий, ПакетыДокументов)
-
- Если Не ЗначениеЗаполнено(ПакетыДокументов) Тогда
- Возврат;
- КонецЕсли;
-
- ОбъектыДействий.ПакетыДокументов = ПакетыДокументовЭДО.ОтобратьПакетыДокументовПоПризнакуЦентраЭДО(
- ПакетыДокументов, Ложь);
-
-КонецПроцедуры
-
-// Параметры:
-// ОбъектыДействий - См. ЭлектронныеДокументыЭДОКлиентСервер.НовыеОбъектыДействийПоЭДО
-// ЭлектронныеДокументы - Массив из ДокументСсылка.ЭлектронныйДокументВходящийЭДО,
-// ДокументСсылка.ЭлектронныйДокументИсходящийЭДО
-//
-Процедура ЗаполнитьОбъектыДействийПоДокументамЭДО(ОбъектыДействий, ЭлектронныеДокументы)
-
- Если Не ЗначениеЗаполнено(ЭлектронныеДокументы) Тогда
- Возврат;
- КонецЕсли;
-
- РеквизитыПоДокументам = ОбщегоНазначения.ЗначенияРеквизитовОбъектов(ЭлектронныеДокументы, "ИспользоватьЦентрЭДО");
-
- Для Каждого РеквизитыПоДокументу Из РеквизитыПоДокументам Цикл
- Если РеквизитыПоДокументу.Значение.ИспользоватьЦентрЭДО Тогда
- Продолжить;
- КонецЕсли;
-
- ОбъектыДействий.ЭлектронныеДокументы.Добавить(РеквизитыПоДокументу.Ключ);
- КонецЦикла;
-
-КонецПроцедуры
-
-// Параметры:
-// ОбъектыДействий - См. ЭлектронныеДокументыЭДОКлиентСервер.НовыеОбъектыДействийПоЭДО
-// СообщенияЭДО - Массив из ДокументСсылка.СообщениеЭДО
-//
-Процедура ЗаполнитьОбъектыДействийПоСообщениямЭДО(ОбъектыДействий, СообщенияЭДО)
-
- Если Не ЗначениеЗаполнено(СообщенияЭДО) Тогда
- Возврат;
- КонецЕсли;
-
- СвойстваСообщений = СвойстваСообщений(СообщенияЭДО);
-
- Для Каждого СвойстваСообщения Из СвойстваСообщений Цикл
- Если СвойстваСообщения.Значение.ИспользоватьЦентрЭДО Тогда
- Продолжить;
- КонецЕсли;
-
- ОбъектыДействий.Сообщения.Добавить(СвойстваСообщения.Ключ);
- КонецЦикла;
-
-КонецПроцедуры
-
-// Параметры:
-// ОбъектыДействий - См. ЭлектронныеДокументыЭДОКлиентСервер.НовыеОбъектыДействийПоЭДО
-// ОписанияДокументовПоФайлам - Массив из См. ЭлектронныеДокументыЭДОКлиентСервер.НовоеОписаниеДокументаДляФормированияПоФайлам
-//
-Процедура ЗаполнитьОбъектыДействийПоОписаниямДокументовЭДО(ОбъектыДействий, ОписанияДокументовПоФайлам)
-
- Если Не ЗначениеЗаполнено(ОписанияДокументовПоФайлам) Тогда
- Возврат;
- КонецЕсли;
-
- ИдентификаторыЭДО = Новый Массив; // Массив из Строка
- ОписанияДокументовПоИдентификаторамЭДО = Новый Соответствие;
-
- Для Каждого ОписаниеДокумента Из ОписанияДокументовПоФайлам Цикл
-
- КлючНастройкиОтправки = НастройкиЭДОКлиентСервер.НовыйКлючНастроекОтправки();
- КлючНастройкиОтправки.Отправитель = ОписаниеДокумента.Организация;
- КлючНастройкиОтправки.Получатель = ОписаниеДокумента.Контрагент;
- КлючНастройкиОтправки.Договор = ОписаниеДокумента.Договор;
- КлючНастройкиОтправки.ВидДокумента = ОписаниеДокумента.ВидДокумента;
-
- НастройкиОтправки = НастройкиОтправкиЭДОСлужебныйПовтИспНаВызов.НастройкиОтправки(КлючНастройкиОтправки);
- Если Не ЗначениеЗаполнено(НастройкиОтправки) Тогда
- Продолжить;
- КонецЕсли;
-
- ИдентификаторЭДО = НастройкиОтправки.ИдентификаторОтправителя;
- ОписанияДокументовПоИдентификаторуЭДО = ОписанияДокументовПоИдентификаторамЭДО[ИдентификаторЭДО];
- Если ОписанияДокументовПоИдентификаторуЭДО = Неопределено Тогда
- ОписанияДокументовПоИдентификаторуЭДО = Новый Массив;
- ОписанияДокументовПоИдентификаторамЭДО.Вставить(ИдентификаторЭДО, ОписанияДокументовПоИдентификаторуЭДО);
- ИдентификаторыЭДО.Добавить(ИдентификаторЭДО);
- КонецЕсли;
-
- ОписанияДокументовПоИдентификаторуЭДО.Добавить(ОписаниеДокумента);
-
- КонецЦикла;
-
- Если Не ЗначениеЗаполнено(ИдентификаторыЭДО) Тогда
- Возврат;
- КонецЕсли;
-
- ИдентификаторыПоИнтеграциямЭДО = УчетныеЗаписиЭДО.ИдентификаторыПоИнтеграциямЭДО(ИдентификаторыЭДО);
-
- Для Каждого ИдентификаторИнтеграции Из ИдентификаторыПоИнтеграциямЭДО.ИдентификаторыДляЛокальногоЭДО Цикл
-
- ОписанияДокументовПоИдентификатору = ОписанияДокументовПоИдентификаторамЭДО[ИдентификаторИнтеграции];
- ОбщегоНазначенияКлиентСервер.ДополнитьМассив(ОбъектыДействий.ОписанияДокументовПоФайлам,
- ОписанияДокументовПоИдентификатору);
-
- КонецЦикла;
-
-КонецПроцедуры
-
-#КонецОбласти // ОбъектыДействий
-
#Область ОбработкаДействийПоЭДО
#Область ОбщегоНазначения
@@ -1321,77 +1156,42 @@
// Параметры:
// ЭлектронныйДокумент - ДокументСсылка.ЭлектронныйДокументВходящийЭДО,ДокументСсылка.ЭлектронныйДокументИсходящийЭДО
-// ЭтоВходящийЭДО - Булево
-Процедура ЗаблокироватьДанныеДокументаДляИзменения(ЭлектронныйДокумент, ЭтоВходящийЭДО) Экспорт
+// ЭтоВходящийДокумент - Булево
+Процедура ЗаблокироватьДокументДляИзменения(ЭлектронныйДокумент, ЭтоВходящийДокумент = Ложь) Экспорт
- Блокировка = Новый БлокировкаДанных;
- ЭлементБлокировки = Блокировка.Добавить("Документ.СообщениеЭДО");
- ЭлементБлокировки.УстановитьЗначение("ЭлектронныйДокумент", ЭлектронныйДокумент);
+ РеквизитыДокумента = ОбщегоНазначения.ЗначенияРеквизитовОбъекта(ЭлектронныйДокумент,
+ "ИдентификаторДокумента, ИдентификаторДокументооборота, ИдентификаторСвязи");
- ИмяТаблицыДокумента = ЭлектронныеДокументыЭДО.ИмяТаблицыДокументаЭДО(ЭтоВходящийЭДО);
- ЭлементБлокировки = Блокировка.Добавить(ИмяТаблицыДокумента);
- ЭлементБлокировки.УстановитьЗначение("Ссылка", ЭлектронныйДокумент);
- Блокировка.Заблокировать();
+ КлючДокумента = ЭлектронныеДокументыЭДО.НовыйКлючДокументаДляБлокировки();
+ ЗаполнитьЗначенияСвойств(КлючДокумента, РеквизитыДокумента);
+
+ ЭлектронныеДокументыЭДО.ЗаблокироватьДокументДляИзмененияПоКлючу(КлючДокумента, ЭтоВходящийДокумент);
КонецПроцедуры
+// Блокирует либо входящие, либо исходящие документы для изменения.
+// Передача и входящих и исходящих документов в одном массиве недопустима.
+//
// Параметры:
-// Сообщение - ДокументСсылка.СообщениеЭДО
-// ЭлектронныйДокумент - ДокументСсылка.ЭлектронныйДокументВходящийЭДО,ДокументСсылка.ЭлектронныйДокументИсходящийЭДО
-// ЭтоВходящийЭДО - Булево
-Процедура ЗаблокироватьДанныеСообщенияДляИзменения(Сообщение, ЭлектронныйДокумент, ЭтоВходящийЭДО)
+// ЭлектронныеДокументы - Массив из ДокументСсылка.ЭлектронныйДокументВходящийЭДО,ДокументСсылка.ЭлектронныйДокументИсходящийЭДО
+Процедура ЗаблокироватьДокументыДляИзменения(ЭлектронныеДокументы)
- Блокировка = Новый БлокировкаДанных;
-
- ЭлементБлокировки = Блокировка.Добавить("Документ.СообщениеЭДО");
- ЭлементБлокировки.УстановитьЗначение("Ссылка", Сообщение);
-
- ЭлементБлокировки = Блокировка.Добавить("Документ.СообщениеЭДО");
- ЭлементБлокировки.УстановитьЗначение("ЭлектронныйДокумент", ЭлектронныйДокумент);
-
- ЭлементБлокировки = Блокировка.Добавить(ЭлектронныеДокументыЭДО.ИмяТаблицыДокументаЭДО(ЭтоВходящийЭДО));
- ЭлементБлокировки.УстановитьЗначение("Ссылка", ЭлектронныйДокумент);
-
- Блокировка.Заблокировать();
-
-КонецПроцедуры
+ ЭтоВходящиеДокументы = Ложь;
+ РеквизитыДокументов = ОбщегоНазначения.ЗначенияРеквизитовОбъектов(ЭлектронныеДокументы,
+ "ИдентификаторДокумента, ИдентификаторДокументооборота, ИдентификаторСвязи");
-// Параметры:
-// ДокументыПакета - См. ПакетыДокументовЭДО.ДокументыПакета
-Процедура ЗаблокироватьДокументыПакетаДляИзменения(ДокументыПакета)
-
- Блокировка = Новый БлокировкаДанных;
- ИмяТаблицыДокументаЭДО = "";
- Для Каждого ЭлектронныйДокумент Из ДокументыПакета Цикл
- Если ПустаяСтрока(ИмяТаблицыДокументаЭДО) Тогда
- ЭтоВходящийЭДО = ЭлектронныеДокументыЭДО.ЭтоВходящийЭДО(ЭлектронныйДокумент);
- ИмяТаблицыДокументаЭДО = ЭлектронныеДокументыЭДО.ИмяТаблицыДокументаЭДО(ЭтоВходящийЭДО);
- КонецЕсли;
- ЭлементБлокировки = Блокировка.Добавить(ИмяТаблицыДокументаЭДО);
- ЭлементБлокировки.УстановитьЗначение("Ссылка", ЭлектронныйДокумент);
- КонецЦикла;
- Блокировка.Заблокировать();
-
-КонецПроцедуры
-
-// Параметры:
-// ДокументыПакета - См. ПакетыДокументовЭДО.ДокументыПакета
-Процедура ЗаблокироватьСообщенияПакетаДляИзменения(ДокументыПакета)
-
- Блокировка = Новый БлокировкаДанных;
- ИмяТаблицыДокументаЭДО = "";
- Для Каждого ЭлектронныйДокумент Из ДокументыПакета Цикл
- Если ПустаяСтрока(ИмяТаблицыДокументаЭДО) Тогда
- ЭтоВходящийЭДО = ЭлектронныеДокументыЭДО.ЭтоВходящийЭДО(ЭлектронныйДокумент);
- ИмяТаблицыДокументаЭДО = ЭлектронныеДокументыЭДО.ИмяТаблицыДокументаЭДО(ЭтоВходящийЭДО);
- КонецЕсли;
- ЭлементБлокировки = Блокировка.Добавить(ИмяТаблицыДокументаЭДО);
- ЭлементБлокировки.УстановитьЗначение("Ссылка", ЭлектронныйДокумент);
+ КлючиДокументовДляБлокировки = Новый Массив; // Массив из См. ЭлектронныеДокументыЭДО.НовыйКлючДокументаДляБлокировки
+ Для Каждого ЭлектронныйДокумент Из ЭлектронныеДокументы Цикл
+ ЭтоВходящиеДокументы = ЭлектронныеДокументыЭДО.ЭтоВходящийЭДО(ЭлектронныйДокумент);
+ РеквизитыДокумента = РеквизитыДокументов[ЭлектронныйДокумент];
- ЭлементБлокировки = Блокировка.Добавить("Документ.СообщениеЭДО");
- ЭлементБлокировки.УстановитьЗначение("ЭлектронныйДокумент", ЭлектронныйДокумент);
+ КлючДокументаДляБлокировки = ЭлектронныеДокументыЭДО.НовыйКлючДокументаДляБлокировки();
+ ЗаполнитьЗначенияСвойств(КлючДокументаДляБлокировки, РеквизитыДокумента);
+ КлючиДокументовДляБлокировки.Добавить(КлючДокументаДляБлокировки);
КонецЦикла;
- Блокировка.Заблокировать();
+
+ ЭлектронныеДокументыЭДО.ЗаблокироватьДокументыДляИзмененияПоКлючам(КлючиДокументовДляБлокировки,
+ ЭтоВходящиеДокументы);
КонецПроцедуры
@@ -1409,7 +1209,7 @@
ДокументыПакета = ПакетыДокументовЭДО.ДокументыПакета(ПакетДокументов);
- ЗаблокироватьДокументыПакетаДляИзменения(ДокументыПакета);
+ ЗаблокироватьДокументыДляИзменения(ДокументыПакета);
НаборСостояний = НаборСостоянийДокументов(ДокументыПакета);
@@ -1443,8 +1243,6 @@
Возврат Неопределено;
КонецЕсли;
- ЗаблокироватьСообщенияПакетаДляИзменения(ДокументыПакета);
-
Запрос = Новый Запрос;
Запрос.УстановитьПараметр("ЭлектронныеДокументы", ДокументыПакета);
@@ -3239,6 +3037,11 @@
КонецЕсли;
ДокументОбъект.ИспользоватьЦентрЭДО = НастройкиОтправки.ИспользоватьЦентрЭДО;
+ Если ДокументОбъект.ТипРегламента = Перечисления.ТипыРегламентовЭДО.Формализованный
+ И ДокументОбъект.ФорматОсновногоТитула = ФорматыЭДО_ФНС.ПоддерживаемыеФорматы().СчетНаОплату_5_01 Тогда
+ ДокументОбъект.ТребуетсяПодтверждение = Ложь;
+ КонецЕсли;
+
Содержание = ОписаниеСообщения.Данные.Содержание;
ДокументОбъект.ТипРегламента = Содержание.ТипРегламента;
Если ЗначениеЗаполнено(Содержание.Формат) Тогда
@@ -3276,17 +3079,7 @@
Функция СоздатьСообщение(ОписаниеСообщения, ЭлектронныйДокумент, НастройкиДокумента) Экспорт
Если ЗначениеЗаполнено(ОписаниеСообщения.Ссылка) Тогда
- Блокировка = Новый БлокировкаДанных;
- ЭлементБлокировки = Блокировка.Добавить("Документ.СообщениеЭДО");
- ЭлементБлокировки.УстановитьЗначение("Ссылка", ОписаниеСообщения.Ссылка);
-
- Попытка
- Блокировка.Заблокировать();
- СообщениеОбъект = ОписаниеСообщения.Ссылка.ПолучитьОбъект();
- Исключение
- ВызватьИсключение НСтр("ru = 'Ошибка получения сообщения ЭДО'");
- КонецПопытки;
-
+ СообщениеОбъект = ОписаниеСообщения.Ссылка.ПолучитьОбъект();
Иначе
СообщениеОбъект = Документы.СообщениеЭДО.СоздатьДокумент();
КонецЕсли;
@@ -3946,7 +3739,7 @@
НачатьТранзакцию();
Попытка
- ЗаблокироватьДанныеДокументаДляИзменения(ЭлектронныйДокумент, Ложь);
+ ЗаблокироватьДокументДляИзменения(ЭлектронныйДокумент, Ложь);
ДокументОбъект = ЭлектронныйДокумент.ПолучитьОбъект();
@@ -4216,7 +4009,7 @@
ЭтоВходящийЭДО = ЭлектронныеДокументыЭДО.ЭтоВходящийЭДО(ЭлектронныйДокумент);
- ЗаблокироватьДанныеДокументаДляИзменения(ЭлектронныйДокумент, ЭтоВходящийЭДО);
+ ЗаблокироватьДокументДляИзменения(ЭлектронныйДокумент, ЭтоВходящийЭДО);
ТекстыЗапроса = Новый Массив;
ТекстыЗапроса.Добавить(ТекстЗапросаПараметровОбновленияСостоянияДокумента(ЭтоВходящийЭДО));
@@ -4328,9 +4121,28 @@
Если ОписаниеСообщения.Данные.ЕстьОшибки Тогда
- Для каждого ОшибкаЗаполнения Из ОписаниеСообщения.Данные.Ошибки.ЗаполнениеДанных Цикл
- ДобавитьОшибкуВыполненияДействия(ОшибкаЗаполнения.ТекстОшибки, КонтекстВыполненияДействия, КонтекстДиагностики);
- КонецЦикла;
+ ОшибкиЗаполнения = ОписаниеСообщения.Данные.Ошибки.ЗаполнениеДанных;
+ КлючСообщения = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(ОшибкиЗаполнения[0],
+ "КлючСообщения", Неопределено);
+
+ Если ЗначениеЗаполнено(КлючСообщения) Тогда
+
+ ДанныеДокумента = Новый Структура("Отправитель, Получатель, ВидДокумента");
+ ДанныеДокумента.Отправитель = ПараметрыДокумента.Организация;
+ ДанныеДокумента.Получатель = ПараметрыДокумента.Контрагент;
+ ДанныеДокумента.ВидДокумента = ЭлектронныеДокументыЭДО.ВидДокументаПоТипу(
+ Перечисления.ТипыДокументовЭДО.ИзвещениеОПолучении);
+ ОписаниеОшибки = ДобавитьОшибкуФормированияИсходящегоДокумента(РезультатДействий, ДанныеДокумента);
+ ОписаниеОшибки.ОшибкиДанных = ОписаниеСообщения.Данные.Ошибки;
+
+ Иначе
+
+ Для каждого ОшибкаЗаполнения Из ОшибкиЗаполнения Цикл
+ ДобавитьОшибкуВыполненияДействия(ОшибкаЗаполнения.ТекстОшибки,
+ КонтекстВыполненияДействия, КонтекстДиагностики);
+ КонецЦикла;
+
+ КонецЕсли;
Продолжить;
@@ -4572,7 +4384,7 @@
Попытка
- ЗаблокироватьДанныеДокументаДляИзменения(ЭлектронныйДокумент, ЭтоВходящийЭДО);
+ ЗаблокироватьДокументДляИзменения(ЭлектронныйДокумент, ЭтоВходящийЭДО);
ДокументОбъект = ЭлектронныйДокумент.ПолучитьОбъект();
@@ -5058,7 +4870,7 @@
Попытка
- ЗаблокироватьДанныеДокументаДляИзменения(ЭлектронныйДокумент, Ложь);
+ ЗаблокироватьДокументДляИзменения(ЭлектронныйДокумент, Ложь);
ДокументОбъект = ЭлектронныйДокумент.ПолучитьОбъект();
@@ -5185,10 +4997,15 @@
// Возвращаемое значение:
// Булево
Функция ЗакрытьПринудительно(ЭлектронныйДокумент, КонтекстДиагностики, Комментарий = "") Экспорт
+
Действие = Перечисления.ДействияПоЭДО.ЗакрытьПринудительно;
ПричинаОстановки = Перечисления.ПричиныОстановкиЭДО.ЗакрытПринудительно;
Результат = ОстановитьДокумент(ЭлектронныйДокумент, ПричинаОстановки, Действие, КонтекстДиагностики, Комментарий);
+
+ ПослеПринудительногоЗакрытия(Результат, ЭлектронныйДокумент, КонтекстДиагностики);
+
Возврат Результат;
+
КонецФункции
// Параметры:
@@ -5209,7 +5026,7 @@
ДокументыПакета = ПакетыДокументовЭДО.ДокументыПакета(ПакетДокументов);
- ЗаблокироватьДокументыПакетаДляИзменения(ДокументыПакета);
+ ЗаблокироватьДокументыДляИзменения(ДокументыПакета);
СостоянияПоДокументам = СостоянияПоДокументам(ДокументыПакета);
@@ -5274,7 +5091,7 @@
ЭтоВходящийЭДО = ЭлектронныеДокументыЭДО.ЭтоВходящийЭДО(ЭлектронныйДокумент);
- ЗаблокироватьДанныеДокументаДляИзменения(ЭлектронныйДокумент, ЭтоВходящийЭДО);
+ ЗаблокироватьДокументДляИзменения(ЭлектронныйДокумент, ЭтоВходящийЭДО);
ДокументОбъект = ЭлектронныйДокумент.ПолучитьОбъект();
ДокументОбъект.Остановлен = Истина;
@@ -5369,7 +5186,7 @@
ЭтоВходящийЭДО = ЭлектронныеДокументыЭДО.ЭтоВходящийЭДО(ЭлектронныйДокумент);
- ЗаблокироватьДанныеДокументаДляИзменения(ЭлектронныйДокумент, ЭтоВходящийЭДО);
+ ЗаблокироватьДокументДляИзменения(ЭлектронныйДокумент, ЭтоВходящийЭДО);
ДокументОбъект = ЭлектронныйДокумент.ПолучитьОбъект();
Если Не ДокументОбъект.Остановлен Тогда
@@ -5443,10 +5260,25 @@
ВызватьИсключение ТекстОшибки;
КонецПопытки;
+ ПослеВозвращенияВРаботу(Результат, ЭлектронныйДокумент, КонтекстДиагностики);
+
Возврат Результат;
КонецФункции
+// Параметры:
+// РезультатЗакрытия - Булево
+// ЭлектронныйДокумент - ДокументСсылка.ЭлектронныйДокументВходящийЭДО,ДокументСсылка.ЭлектронныйДокументИсходящийЭДО
+// КонтекстДиагностики - см. ОбработкаНеисправностейБЭД.НовыйКонтекстДиагностики
+Процедура ПослеПринудительногоЗакрытия(РезультатЗакрытия, ЭлектронныйДокумент, КонтекстДиагностики)
+
+ Если РезультатЗакрытия = Истина Тогда
+ ЭлектронныеДокументыЭДОСобытия.ПослеПринудительногоЗакрытияЭлектронногоДокумента(ЭлектронныйДокумент,
+ КонтекстДиагностики);
+ КонецЕсли;
+
+КонецПроцедуры
+
#КонецОбласти
#Область ВернутьВРаботу
@@ -5544,6 +5376,19 @@
КонецПроцедуры
+// Параметры:
+// РезультатВозвращенияВРаботу - Булево
+// ЭлектронныйДокумент - ДокументСсылка.ЭлектронныйДокументВходящийЭДО,ДокументСсылка.ЭлектронныйДокументИсходящийЭДО
+// КонтекстДиагностики - см. ОбработкаНеисправностейБЭД.НовыйКонтекстДиагностики
+Процедура ПослеВозвращенияВРаботу(РезультатВозвращенияВРаботу, ЭлектронныйДокумент, КонтекстДиагностики)
+
+ Если РезультатВозвращенияВРаботу = Истина Тогда
+ ЭлектронныеДокументыЭДОСобытия.ПослеВозвращенияВРаботуЭлектронногоДокумента(ЭлектронныйДокумент,
+ КонтекстДиагностики);
+ КонецЕсли;
+
+КонецПроцедуры
+
#КонецОбласти
#Область ОтправитьВАрхив
@@ -5603,7 +5448,7 @@
ЭтоВходящийЭДО = ЭлектронныеДокументыЭДО.ЭтоВходящийЭДО(ЭлектронныйДокумент);
- ЗаблокироватьДанныеДокументаДляИзменения(ЭлектронныйДокумент, ЭтоВходящийЭДО);
+ ЗаблокироватьДокументДляИзменения(ЭлектронныйДокумент, ЭтоВходящийЭДО);
ДокументОбъект = ЭлектронныйДокумент.ПолучитьОбъект();
Если Не ДокументОбъект.НаОзнакомлении Тогда
@@ -5633,6 +5478,7 @@
Результат = Ложь;
ДобавитьОшибкуОтменыОперации(КонтекстВыполненияДействия, КонтекстДиагностики);
ОтменитьТранзакцию();
+ Возврат Результат;
КонецЕсли;
ВыборкаСостояния = РезультатыЗапроса[0].Выбрать();
@@ -5642,6 +5488,7 @@
Результат = Ложь;
ДобавитьОшибкуОтменыОперации(КонтекстВыполненияДействия, КонтекстДиагностики);
ОтменитьТранзакцию();
+ Возврат Результат;
КонецЕсли;
СвойстваСообщения = РезультатыЗапроса[1].Выбрать();
@@ -5874,6 +5721,9 @@
РезультатОтклонения = Отклонить(Сообщение, РезультатДействий.КонтекстДиагностики, Комментарий, ЭлементДляОтклонения);
Если РезультатОтклонения.Отказ Тогда
+ Если ЗначениеЗаполнено(РезультатОтклонения.ОшибкиФормирования) Тогда
+ РезультатДействий.ОшибкиФормирования = РезультатОтклонения.ОшибкиФормирования;
+ КонецЕсли;
Возврат;
КонецЕсли;
@@ -5907,6 +5757,10 @@
Результат = Отклонить(Сообщение, КонтекстДиагностики, Комментарий);
Если Результат.Отказ Тогда
ДобавитьОшибкуОтменыОперации(КонтекстВыполненияДействия, КонтекстДиагностики);
+ Если ЗначениеЗаполнено(Результат.ОшибкиФормирования) Тогда
+ ОбщегоНазначенияКлиентСервер.ДополнитьМассив(РезультатДействий.ОшибкиФормирования,
+ Результат.ОшибкиФормирования);
+ КонецЕсли;
ОтменитьТранзакцию();
Возврат;
КонецЕсли;
@@ -5939,12 +5793,14 @@
// * Отказ - Булево -
// * СообщениеОбъект - Неопределено -
// * ТаблицаПодписания - Неопределено -
+// * ОшибкиФормирования - Массив из см. ЭлектронныеДокументыЭДО.НовоеОписаниеОшибкиФормирования
Функция Отклонить(Сообщение, КонтекстДиагностики, Комментарий = "", ЭлементДляОтклонения = Неопределено)
Результат = Новый Структура;
Результат.Вставить("Отказ", Ложь);
Результат.Вставить("СообщениеОбъект", Неопределено);
Результат.Вставить("ТаблицаПодписания", Неопределено);
+ Результат.Вставить("ОшибкиФормирования", Новый Массив);
Действие = Перечисления.ДействияПоЭДО.Отклонить;
@@ -5955,7 +5811,7 @@
НачатьТранзакцию();
Попытка
- ЗаблокироватьДанныеСообщенияДляИзменения(Сообщение, ЭлектронныйДокумент, ЭтоВходящийЭДО);
+ ЗаблокироватьДокументДляИзменения(ЭлектронныйДокумент, ЭтоВходящийЭДО);
СообщениеОбъект = Сообщение.ПолучитьОбъект();
Если СообщениеОбъект.ЭлектронныйДокумент <> ЭлектронныйДокумент
@@ -6059,11 +5915,29 @@
Если ОписаниеСообщения.Данные.ЕстьОшибки Тогда
- ТекстОшибки = НСтр("ru = 'Не удалось сформировать уведомление об уточнении'");
- ДобавитьОшибкуВыполненияДействия(ТекстОшибки, КонтекстВыполненияДействия, КонтекстДиагностики);
+ ОшибкиЗаполнения = ОписаниеСообщения.Данные.Ошибки.ЗаполнениеДанных;
+ КлючСообщения = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(ОшибкиЗаполнения[0],
+ "КлючСообщения", Неопределено);
+
+ Если ЗначениеЗаполнено(КлючСообщения) Тогда
+
+ ДанныеДокумента = Новый Структура("Отправитель, Получатель, ВидДокумента");
+ ДанныеДокумента.Отправитель = ПараметрыДокумента.Организация;
+ ДанныеДокумента.Получатель = ПараметрыДокумента.Контрагент;
+ ДанныеДокумента.ВидДокумента = ЭлектронныеДокументыЭДО.ВидДокументаПоТипу(
+ Перечисления.ТипыДокументовЭДО.ПредложениеОбАннулировании);
+ ОписаниеОшибки = ДобавитьОшибкуФормированияИсходящегоДокумента(Результат, ДанныеДокумента);
+ ОписаниеОшибки.ОшибкиДанных = ОписаниеСообщения.Данные.Ошибки;
+
+ Иначе
- ТекстОшибки = ОбщегоНазначенияБЭД.СоединитьОшибки(ОписаниеСообщения.Данные.Ошибки.ЗаполнениеДанных);
- ДобавитьОшибкуВыполненияДействия(ТекстОшибки, КонтекстВыполненияДействия, КонтекстДиагностики);
+ ТекстОшибки = НСтр("ru = 'Не удалось сформировать уведомление об уточнении'");
+ ДобавитьОшибкуВыполненияДействия(ТекстОшибки, КонтекстВыполненияДействия, КонтекстДиагностики);
+
+ ТекстОшибки = ОбщегоНазначенияБЭД.СоединитьОшибки(ОшибкиЗаполнения);
+ ДобавитьОшибкуВыполненияДействия(ТекстОшибки, КонтекстВыполненияДействия, КонтекстДиагностики);
+
+ КонецЕсли;
Результат.Отказ = Истина;
ОтменитьТранзакцию();
@@ -6120,6 +5994,9 @@
ОповеститьОДокументеКПодписанию(РезультатОтклонения.СообщениеОбъект, РезультатОтклонения.ТаблицаПодписания);
+ ЭлектронныеДокументыЭДОСобытия.ПослеОтклоненияЭлектронногоДокумента(
+ РезультатОтклонения.СообщениеОбъект.ЭлектронныйДокумент, РезультатДействий.КонтекстДиагностики);
+
КонецПроцедуры
#КонецОбласти
@@ -6261,7 +6138,7 @@
НачатьТранзакцию();
Попытка
- ЗаблокироватьДанныеСообщенияДляИзменения(Сообщение, ЭлектронныйДокумент, ЭтоВходящийЭДО);
+ ЗаблокироватьДокументДляИзменения(ЭлектронныйДокумент, ЭтоВходящийЭДО);
СообщениеОбъект = Сообщение.ПолучитьОбъект();
Если СообщениеОбъект.ЭлектронныйДокумент <> ЭлектронныйДокумент
@@ -6675,6 +6552,9 @@
Результат = Аннулировать(Сообщение, РезультатДействий.КонтекстДиагностики, Комментарий);
Если Результат.Отказ Тогда
+ Если ЗначениеЗаполнено(Результат.ОшибкиФормирования) Тогда
+ РезультатДействий.ОшибкиФормирования = Результат.ОшибкиФормирования;
+ КонецЕсли;
Возврат;
КонецЕсли;
@@ -6714,6 +6594,10 @@
Результат = Аннулировать(Сообщение, КонтекстДиагностики, Комментарий);
Если Результат.Отказ Тогда
ДобавитьОшибкуОтменыОперации(КонтекстВыполненияДействия, КонтекстДиагностики);
+ Если ЗначениеЗаполнено(Результат.ОшибкиФормирования) Тогда
+ ОбщегоНазначенияКлиентСервер.ДополнитьМассив(РезультатДействий.ОшибкиФормирования,
+ Результат.ОшибкиФормирования);
+ КонецЕсли;
ОтменитьТранзакцию();
Возврат;
КонецЕсли;
@@ -6750,12 +6634,14 @@
// - ДокументОбъект.СообщениеЭДО
// * ТаблицаПодписания - Неопределено
// - см. МаршрутыПодписанияБЭД.СформироватьМаршрутПодписанияЭД
+// * ОшибкиФормирования - Массив из см. ЭлектронныеДокументыЭДО.НовоеОписаниеОшибкиФормирования
Функция Аннулировать(Сообщение, КонтекстДиагностики, Комментарий = "")
Результат = Новый Структура;
Результат.Вставить("Отказ", Ложь);
Результат.Вставить("СообщениеОбъект", Неопределено);
Результат.Вставить("ТаблицаПодписания", Неопределено);
+ Результат.Вставить("ОшибкиФормирования", Новый Массив);
Действие = Перечисления.ДействияПоЭДО.Аннулировать;
@@ -6766,7 +6652,7 @@
НачатьТранзакцию();
Попытка
- ЗаблокироватьДанныеСообщенияДляИзменения(Сообщение, ЭлектронныйДокумент, ЭтоВходящийЭДО);
+ ЗаблокироватьДокументДляИзменения(ЭлектронныйДокумент, ЭтоВходящийЭДО);
СообщениеОбъект = Сообщение.ПолучитьОбъект();
Если СообщениеОбъект.ЭлектронныйДокумент <> ЭлектронныйДокумент
@@ -6877,11 +6763,29 @@
Если ОписаниеСообщения.Данные.ЕстьОшибки Тогда
- ТекстОшибки = НСтр("ru = 'Не удалось сформировать предложение об аннулировании'");
- ДобавитьОшибкуВыполненияДействия(ТекстОшибки, КонтекстВыполненияДействия, КонтекстДиагностики);
+ ОшибкиЗаполнения = ОписаниеСообщения.Данные.Ошибки.ЗаполнениеДанных;
+ КлючСообщения = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(ОшибкиЗаполнения[0],
+ "КлючСообщения", Неопределено);
+
+ Если ЗначениеЗаполнено(КлючСообщения) Тогда
+
+ ДанныеДокумента = Новый Структура("Отправитель, Получатель, ВидДокумента");
+ ДанныеДокумента.Отправитель = ПараметрыДокумента.Организация;
+ ДанныеДокумента.Получатель = ПараметрыДокумента.Контрагент;
+ ДанныеДокумента.ВидДокумента = ЭлектронныеДокументыЭДО.ВидДокументаПоТипу(
+ Перечисления.ТипыДокументовЭДО.ПредложениеОбАннулировании);
+ ОписаниеОшибки = ДобавитьОшибкуФормированияИсходящегоДокумента(Результат, ДанныеДокумента);
+ ОписаниеОшибки.ОшибкиДанных = ОписаниеСообщения.Данные.Ошибки;
+
+ Иначе
+
+ ТекстОшибки = НСтр("ru = 'Не удалось сформировать предложение об аннулировании'");
+ ДобавитьОшибкуВыполненияДействия(ТекстОшибки, КонтекстВыполненияДействия, КонтекстДиагностики);
- ТекстОшибки = ОбщегоНазначенияБЭД.СоединитьОшибки(ОписаниеСообщения.Данные.Ошибки.ЗаполнениеДанных);
- ДобавитьОшибкуВыполненияДействия(ТекстОшибки, КонтекстВыполненияДействия, КонтекстДиагностики);
+ ТекстОшибки = ОбщегоНазначенияБЭД.СоединитьОшибки(ОшибкиЗаполнения);
+ ДобавитьОшибкуВыполненияДействия(ТекстОшибки, КонтекстВыполненияДействия, КонтекстДиагностики);
+
+ КонецЕсли;
Результат.Отказ = Истина;
ОтменитьТранзакцию();
@@ -7094,7 +6998,7 @@
НачатьТранзакцию();
Попытка
- ЗаблокироватьДанныеСообщенияДляИзменения(Сообщение, ЭлектронныйДокумент, ЭтоВходящийЭДО);
+ ЗаблокироватьДокументДляИзменения(ЭлектронныйДокумент, ЭтоВходящийЭДО);
СообщениеОбъект = Сообщение.ПолучитьОбъект();
Если СообщениеОбъект.ЭлектронныйДокумент <> ЭлектронныйДокумент
@@ -7226,6 +7130,9 @@
Результат = ОтклонитьАннулирование(Сообщение, РезультатДействий.КонтекстДиагностики, Комментарий);
Если Результат.Отказ Тогда
+ Если ЗначениеЗаполнено(Результат.ОшибкиФормирования) Тогда
+ РезультатДействий.ОшибкиФормирования = Результат.ОшибкиФормирования;
+ КонецЕсли;
Возврат;
КонецЕсли;
@@ -7266,6 +7173,10 @@
Результат = ОтклонитьАннулирование(Сообщение, КонтекстДиагностики, Комментарий);
Если Результат.Отказ Тогда
ДобавитьОшибкуОтменыОперации(КонтекстВыполненияДействия, КонтекстДиагностики);
+ Если ЗначениеЗаполнено(Результат.ОшибкиФормирования) Тогда
+ ОбщегоНазначенияКлиентСервер.ДополнитьМассив(РезультатДействий.ОшибкиФормирования,
+ Результат.ОшибкиФормирования);
+ КонецЕсли;
ОтменитьТранзакцию();
Возврат;
КонецЕсли;
@@ -7302,12 +7213,14 @@
// - ДокументОбъект.СообщениеЭДО
// * ТаблицаПодписания - Неопределено
// - см. МаршрутыПодписанияБЭД.СформироватьМаршрутПодписанияЭД
+// * ОшибкиФормирования - Массив из см. ЭлектронныеДокументыЭДО.НовоеОписаниеОшибкиФормирования
Функция ОтклонитьАннулирование(Сообщение, КонтекстДиагностики, Комментарий = "")
Результат = Новый Структура;
Результат.Вставить("Отказ", Ложь);
Результат.Вставить("СообщениеОбъект", Неопределено);
Результат.Вставить("ТаблицаПодписания", Неопределено);
+ Результат.Вставить("ОшибкиФормирования", Новый Массив);
Действие = Перечисления.ДействияПоЭДО.ОтклонитьАннулирование;
@@ -7318,7 +7231,7 @@
НачатьТранзакцию();
Попытка
- ЗаблокироватьДанныеСообщенияДляИзменения(Сообщение, ЭлектронныйДокумент, ЭтоВходящийЭДО);
+ ЗаблокироватьДокументДляИзменения(ЭлектронныйДокумент, ЭтоВходящийЭДО);
СообщениеОбъект = Сообщение.ПолучитьОбъект();
Если СообщениеОбъект.ЭлектронныйДокумент <> ЭлектронныйДокумент
@@ -7410,11 +7323,29 @@
Если ОписаниеСообщения.Данные.ЕстьОшибки Тогда
- ТекстОшибки = НСтр("ru = 'Не удалось сформировать отказ от предложения об аннулировании'");
- ДобавитьОшибкуВыполненияДействия(ТекстОшибки, КонтекстВыполненияДействия, КонтекстДиагностики);
+ ОшибкиЗаполнения = ОписаниеСообщения.Данные.Ошибки.ЗаполнениеДанных;
+ КлючСообщения = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(ОшибкиЗаполнения[0],
+ "КлючСообщения", Неопределено);
+
+ Если ЗначениеЗаполнено(КлючСообщения) Тогда
+
+ ДанныеДокумента = Новый Структура("Отправитель, Получатель, ВидДокумента");
+ ДанныеДокумента.Отправитель = ПараметрыДокумента.Организация;
+ ДанныеДокумента.Получатель = ПараметрыДокумента.Контрагент;
+ ДанныеДокумента.ВидДокумента = ЭлектронныеДокументыЭДО.ВидДокументаПоТипу(
+ Перечисления.ТипыДокументовЭДО.ПредложениеОбАннулировании);
+ ОписаниеОшибки = ДобавитьОшибкуФормированияИсходящегоДокумента(Результат, ДанныеДокумента);
+ ОписаниеОшибки.ОшибкиДанных = ОписаниеСообщения.Данные.Ошибки;
+
+ Иначе
+
+ ТекстОшибки = НСтр("ru = 'Не удалось сформировать отказ от предложения об аннулировании'");
+ ДобавитьОшибкуВыполненияДействия(ТекстОшибки, КонтекстВыполненияДействия, КонтекстДиагностики);
- ТекстОшибки = ОбщегоНазначенияБЭД.СоединитьОшибки(ОписаниеСообщения.Данные.Ошибки.ЗаполнениеДанных);
- ДобавитьОшибкуВыполненияДействия(ТекстОшибки, КонтекстВыполненияДействия, КонтекстДиагностики);
+ ТекстОшибки = ОбщегоНазначенияБЭД.СоединитьОшибки(ОшибкиЗаполнения);
+ ДобавитьОшибкуВыполненияДействия(ТекстОшибки, КонтекстВыполненияДействия, КонтекстДиагностики);
+
+ КонецЕсли;
Результат.Отказ = Истина;
ОтменитьТранзакцию();
@@ -7519,7 +7450,7 @@
ЭтоВходящийЭДО = ЭлектронныеДокументыЭДО.ЭтоВходящийЭДО(ЭлектронныйДокумент);
- ЗаблокироватьДанныеДокументаДляИзменения(ЭлектронныйДокумент, ЭтоВходящийЭДО);
+ ЗаблокироватьДокументДляИзменения(ЭлектронныйДокумент, ЭтоВходящийЭДО);
ДокументОбъект = ЭлектронныйДокумент.ПолучитьОбъект();
ДокументОбъект.Ответственный = Ответственный;
@@ -7765,7 +7696,7 @@
НачатьТранзакцию();
Попытка
- ЗаблокироватьДанныеСообщенияДляИзменения(Сообщение, ЭлектронныйДокумент, ЭтоВходящийЭДО);
+ ЗаблокироватьДокументДляИзменения(ЭлектронныйДокумент, ЭтоВходящийЭДО);
СообщениеОбъект = Сообщение.ПолучитьОбъект();
Если СообщениеОбъект.ЭлектронныйДокумент <> ЭлектронныйДокумент
@@ -7803,12 +7734,18 @@
НайденнаяСтрока = СостоянияСообщений.Найти(СообщениеОбъект.Ссылка, "Ссылка");
НайденнаяСтрока.Состояние = СообщениеОбъект.Состояние;
- ДополненияСостоянийЭДО = НовыеДополненияСостоянийЭДО();
+ СформироватьМаршрут = Ложь;
+ Если РегламентыЭДО_Формализованный.ДокументБезОтветногоТитула(ПараметрыДокумента) Тогда
+ СформироватьМаршрут = ПараметрыДокумента.ТребуетсяПодтверждение
+ И Не ПараметрыДокумента.ОбменБезПодписи;
+ Иначе
+ СформироватьМаршрут = ПараметрыДокумента.ТребуетсяПодтверждение
+ И Не РегламентыЭДО.ЕстьИнформацияПолучателя(ПараметрыДокумента.ТипРегламента)
+ И Не ПараметрыДокумента.ОбменБезПодписи;
+ КонецЕсли;
ДополненияСостоянийЭДО = Неопределено;
- Если ПараметрыДокумента.ТребуетсяПодтверждение
- И Не РегламентыЭДО.ЕстьИнформацияПолучателя(ПараметрыДокумента.ТипРегламента)
- И Не ПараметрыДокумента.ОбменБезПодписи Тогда
+ Если СформироватьМаршрут Тогда
ПараметрыМаршрута = СформироватьМаршрутПодписания(СообщениеОбъект);
ДополненияСостоянийЭДО = ДополненияСостоянийЭДОПриПодписании(СообщениеОбъект,
ПараметрыДокумента.ВидПодписи, ПараметрыМаршрута.ВесМаршрута);
@@ -7900,7 +7837,7 @@
НачатьТранзакцию();
Попытка
- ЗаблокироватьДанныеСообщенияДляИзменения(Сообщение, ЭлектронныйДокумент, ЭтоВходящийЭДО);
+ ЗаблокироватьДокументДляИзменения(ЭлектронныйДокумент, ЭтоВходящийЭДО);
СообщениеОбъект = Сообщение.ПолучитьОбъект();
Если СообщениеОбъект.ЭлектронныйДокумент <> ЭлектронныйДокумент
@@ -8255,7 +8192,7 @@
НачатьТранзакцию();
Попытка
- ЗаблокироватьДанныеДокументаДляИзменения(ЭлектронныйДокумент, ЭтоВходящийЭДО);
+ ЗаблокироватьДокументДляИзменения(ЭлектронныйДокумент, ЭтоВходящийЭДО);
ТекстыЗапросов = Новый Массив;
ТекстыЗапросов.Добавить(ТекстЗапросаПараметровОбновленияСостоянияДокумента(ЭтоВходящийЭДО));
@@ -9264,6 +9201,8 @@
Выборка = РезультатыЗапроса.ДанныеСообщений.Выбрать();
+ ФорматыЭлектронныхДокументов = ЭлектронныеДокументыЭДО.ФорматыЭлектронныхДокументов();
+
СтруктураПоиска = Новый Структура("ТипДокумента", Перечисления.ТипыДокументовЭДО.ВозвратТоваровМеждуОрганизациями);
Пока Выборка.НайтиСледующий(СтруктураПоиска) Цикл
Если СоответствияОрганизацийПодписантов.Получить(Выборка.ЭлектронныйДокумент) <> Истина Тогда
@@ -9291,10 +9230,18 @@
Продолжить;
КонецЕсли;
- Если Выборка.ТипЭлементаРегламента = Перечисления.ТипыЭлементовРегламентаЭДО.ИнформацияОтправителя
- И Выборка.Направление = Перечисления.НаправленияЭДО.Исходящий
- И Выборка.ТипДокумента = Перечисления.ТипыДокументовЭДО.АктОРасхождениях Тогда
- АктыОРасхожденияхДляПодписания.Добавить(Выборка.ЭлектронныйДокумент);
+ Если Выборка.ТипЭлементаРегламента = Перечисления.ТипыЭлементовРегламентаЭДО.ИнформацияОтправителя Тогда
+ Если Выборка.Направление = Перечисления.НаправленияЭДО.Исходящий
+ И Выборка.ТипДокумента = Перечисления.ТипыДокументовЭДО.АктОРасхождениях Тогда
+ АктыОРасхожденияхДляПодписания.Добавить(Выборка.ЭлектронныйДокумент);
+ ИначеЕсли Выборка.Направление = Перечисления.НаправленияЭДО.Входящий
+ И Выборка.ТипРегламента = Перечисления.ТипыРегламентовЭДО.Неформализованный
+ И (ПараметрыВыполнения.ДополнительныеПараметрыДействий.Получить(
+ Перечисления.ДействияПоЭДО.Аннулировать) <> Неопределено
+ Или ПараметрыВыполнения.ДополнительныеПараметрыДействий.Получить(
+ Перечисления.ДействияПоЭДО.ОтклонитьАннулирование) <> Неопределено) Тогда
+ Продолжить;
+ КонецЕсли;
КонецЕсли;
СообщениеДоступноПользователю = ТекущиеПодписанты.Найти(Выборка.Подписант) <> Неопределено;
@@ -9371,6 +9318,20 @@
Если ЗначениеЗаполнено(НайденныеСтроки) Тогда
+ Отбор = Новый Структура;
+ Отбор.Вставить("ИдентификаторФормата", Выборка.ФорматОсновногоТитула);
+ Отбор.Вставить("Отключен", Истина);
+ ОтключенныеФорматы = ФорматыЭлектронныхДокументов.НайтиСтроки(Отбор);
+ Если ОтключенныеФорматы.Количество() <> 0 Тогда
+ НоваяСтрока = Ошибки.СообщенияВУстаревшемФормате.Добавить();
+ НоваяСтрока.ПредставлениеФормата = ОтключенныеФорматы[0].ПредставлениеФормата;
+ НоваяСтрока.ДатаОкончанияДействияФормата = ОтключенныеФорматы[0].ДатаОкончанияДействия;
+ НоваяСтрока.Сообщение = Выборка.Ссылка;
+ ЗаполнитьЗначенияСвойств(НоваяСтрока, Выборка,
+ "НомерДокумента, ДатаДокумента, ВидДокумента, ТипДокумента");
+ Продолжить;
+ КонецЕсли;
+
НайденнаяСтрока = НайденныеСтроки[0];
ОператорОтправителя = РаботаСАбонентамиЭДОКлиентСервер.ОператорАбонента(
НайденнаяСтрока.ИдентификаторОтправителя);
@@ -10223,6 +10184,7 @@
// - СправочникСсылка.МЧД003
// *** Значение - см. МашиночитаемыеДоверенности.НоваяОшибкаПроверкиПолномочийПриПодписании
// * СообщенияВФорматеНеПоддержанномОператором - см. НовыйНаборСообщенийВФорматеНеПоддержанномОператором
+// * СообщенияВУстаревшемФормате - см. НовыйНаборСообщенийВУстаревшемФормате
Функция НовоеОписаниеОшибокОбработкиДанныхПриПодписании()
ОписаниеОшибок = Новый Структура;
ОписаниеОшибок.Вставить("ЕстьОшибкаКриптографииПоСообщениямДляПодписания", Ложь);
@@ -10240,9 +10202,33 @@
ОписаниеОшибок.ЗапрещенныеСообщенияДляПодписанияПоДоверенностиНаСервере.Колонки.Добавить("ОшибкиПроверкиПолномочий",
Новый ОписаниеТипов("Соответствие"));
ОписаниеОшибок.Вставить("СообщенияВФорматеНеПоддержанномОператором", НовыйНаборСообщенийВФорматеНеПоддержанномОператором());
+ ОписаниеОшибок.Вставить("СообщенияВУстаревшемФормате", НовыйНаборСообщенийВУстаревшемФормате());
Возврат ОписаниеОшибок;
КонецФункции
+// Возвращаемое значение:
+// ТаблицаЗначений:
+// * Сообщение - ДокументСсылка.СообщениеЭДО
+// * ПредставлениеФормата - Строка
+// * ДатаОкончанияДействияФормата - Дата
+// * НомерДокумента - Строка
+// * ДатаДокумента - Дата
+// * ВидДокумента - СправочникСсылка.ВидыДокументовЭДО
+// * ТипДокумента - ПеречислениеСсылка.ТипыДокументовЭДО
+//
+Функция НовыйНаборСообщенийВУстаревшемФормате()
+ НаборСообщений = Новый ТаблицаЗначений;
+ КолонкиНабораСообщений = НаборСообщений.Колонки;
+ КолонкиНабораСообщений.Добавить("Сообщение");
+ КолонкиНабораСообщений.Добавить("ПредставлениеФормата");
+ КолонкиНабораСообщений.Добавить("ДатаОкончанияДействияФормата");
+ КолонкиНабораСообщений.Добавить("НомерДокумента");
+ КолонкиНабораСообщений.Добавить("ДатаДокумента");
+ КолонкиНабораСообщений.Добавить("ВидДокумента");
+ КолонкиНабораСообщений.Добавить("ТипДокумента");
+ Возврат НаборСообщений;
+КонецФункции
+
// Возвращаемое значение:
// ТаблицаЗначений:
// * Сообщение - ДокументСсылка.СообщениеЭДО
@@ -10323,6 +10309,17 @@
КонецЕсли;
КонецЕсли;
+ Если ЗначениеЗаполнено(Ошибки.СообщенияВУстаревшемФормате) Тогда
+ Если Ошибки.СообщенияВУстаревшемФормате.Количество() = 1 Тогда
+ СтрокаТаблицы = Ошибки.СообщенияВУстаревшемФормате[0];
+ ДобавитьОшибкуДокументВУстаревшемФормате(КонтекстДиагностики, СтрокаТаблицы, Истина);
+ Иначе
+ Для Каждого СтрокаТаблицы Из Ошибки.СообщенияВУстаревшемФормате Цикл
+ ДобавитьОшибкуДокументВУстаревшемФормате(КонтекстДиагностики, СтрокаТаблицы);
+ КонецЦикла;
+ КонецЕсли;
+ КонецЕсли;
+
КонецПроцедуры
// Параметры:
@@ -10499,6 +10496,43 @@
КонецПроцедуры
+// Параметры:
+// КонтекстДиагностики - см. ОбработкаНеисправностейБЭД.НовыйКонтекстДиагностики
+// ДанныеСообщения - СтрокаТаблицыЗначений: см. НовыйНаборСообщенийВУстаревшемФормате
+// ИспользоватьОбработчикОшибки - Булево
+//
+Процедура ДобавитьОшибкуДокументВУстаревшемФормате(КонтекстДиагностики, ДанныеСообщения,
+ ИспользоватьОбработчикОшибки = Ложь)
+
+ ПредставлениеДействия = НРег(Перечисления.ДействияПоЭДО.Подписать);
+ ВидОперации = ВидОперацииПриДобавленииОшибки(ПредставлениеДействия);
+
+ СвойстваДокумента = Новый Структура;
+ СвойстваДокумента.Вставить("НомерДокумента");
+ СвойстваДокумента.Вставить("ДатаДокумента");
+ СвойстваДокумента.Вставить("ВидДокумента");
+ СвойстваДокумента.Вставить("ТипДокумента");
+
+ ЗаполнитьЗначенияСвойств(СвойстваДокумента, ДанныеСообщения);
+
+ ПредставлениеДокумента = ЭлектронныеДокументыЭДО.ПредставлениеДокумента(
+ ОбщегоНазначения.ЗначенияРеквизитовОбъекта(ДанныеСообщения.Сообщение, "ЭлектронныйДокумент"),
+ СвойстваДокумента);
+
+ ШаблонСообщения = Нстр("ru = 'Документ ""%1"" сформирован в формате ""%2"", срок действия которого истек %3'")
+ + Символы.ПС + НСтр("ru = 'Для подписания и отправки необходимо переформировать электронный документ.'");
+
+ ПредставлениеОшибки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ШаблонСообщения,
+ ПредставлениеДокумента, ДанныеСообщения.ПредставлениеФормата,
+ Формат(ДанныеСообщения.ДатаОкончанияДействияФормата, "ДЛФ=ДД"));
+
+ Ошибка = ОбработкаНеисправностейБЭД.НоваяОшибка(ВидОперации,
+ ВидОшибкиДокументыВУстаревшемФормате(ИспользоватьОбработчикОшибки), ПредставлениеОшибки, ПредставлениеОшибки);
+ ПодсистемыБЭД = ОбщегоНазначенияБЭДКлиентСервер.ПодсистемыБЭД();
+ ОбработкаНеисправностейБЭД.ДобавитьОшибку(КонтекстДиагностики, Ошибка, ПодсистемыБЭД.ОбменСКонтрагентами);
+
+КонецПроцедуры
+
// Возвращаемое значение:
// См. ОбработкаНеисправностейБЭДКлиентСервер.НовоеОписаниеВидаОшибки
Функция ВидОшибкиДокументыНедоступныДляПодписания() Экспорт
@@ -10552,7 +10586,28 @@
Если ИспользоватьОбработчик Тогда
ВидОшибки.ВыполнятьОбработчикАвтоматически = Истина;
ВидОшибки.АвтоматическиВыполняемыйОбработчик =
- "ЭлектронныеДокументыЭДОКлиент.ВывестиПредупреждениеОДокументеВФорматеНеПоддержанномОператором";
+ "ЭлектронныеДокументыЭДОКлиент.ВывестиПредупреждениеОДокументеВНеПоддерживаемомФормате";
+ КонецЕсли;
+
+ Возврат ВидОшибки;
+
+КонецФункции
+
+// Параметры:
+// ИспользоватьОбработчик - Булево
+//
+// Возвращаемое значение:
+// См. ОбработкаНеисправностейБЭДКлиентСервер.НовоеОписаниеВидаОшибки
+Функция ВидОшибкиДокументыВУстаревшемФормате(ИспользоватьОбработчик = Ложь)
+
+ ВидОшибки = ОбработкаНеисправностейБЭДКлиентСервер.НовоеОписаниеВидаОшибки();
+ ВидОшибки.Идентификатор = "ДокументыВУстаревшемФормате";
+ ВидОшибки.ЗаголовокПроблемы = НСтр("ru = 'Документы сформированы в устаревшем формате'");
+ ВидОшибки.ОписаниеПроблемы = НСтр("ru = 'Формат документов больше не действует'");
+ Если ИспользоватьОбработчик Тогда
+ ВидОшибки.ВыполнятьОбработчикАвтоматически = Истина;
+ ВидОшибки.АвтоматическиВыполняемыйОбработчик =
+ "ЭлектронныеДокументыЭДОКлиент.ВывестиПредупреждениеОДокументеВНеПоддерживаемомФормате";
КонецЕсли;
Возврат ВидОшибки;
@@ -10753,18 +10808,15 @@
Процедура УстановитьПростуюПодпись(ДанныеСообщения, Пользователь, ДанныеСотрудника, РезультатДействий)
КонтекстДиагностики = РезультатДействий.КонтекстДиагностики;
-
- Блокировка = Новый БлокировкаДанных;
-
- ЭлементБлокировки = Блокировка.Добавить("Документ.СообщениеЭДО");
- ЭлементБлокировки.УстановитьЗначение("Ссылка", ДанныеСообщения.Ссылка);
+ ЭлектронныйДокумент = ОбщегоНазначения.ЗначениеРеквизитаОбъекта(ДанныеСообщения.Ссылка, "ЭлектронныйДокумент");
+ ЭтоВходящийДокумент = ЭлектронныеДокументыЭДО.ЭтоВходящийЭДО(ЭлектронныйДокумент);
ОрганизацияДляПодписания = Неопределено;
ДанныеСообщения.Свойство("Организация", ОрганизацияДляПодписания);
НачатьТранзакцию();
Попытка
- Блокировка.Заблокировать();
+ ЗаблокироватьДокументДляИзменения(ЭлектронныйДокумент, ЭтоВходящийДокумент);
ДатаПодписи = ТекущаяУниверсальнаяДата();
ДатаИзменения = ТекущаяДатаСеанса();
@@ -10957,10 +11009,18 @@
Если ПодписанноеСообщение.ТребуетсяМЧД И НЕ ЗначениеЗаполнено(ПодписанноеСообщение.ВыбраннаяМЧД)
И ПодписанноеСообщение.Свойство("Доверенности") Тогда
- ВыбраннаяМЧД = ПодписанноеСообщение.Доверенности.Получить(ПодписанноеСообщение.ВыбранныйСертификат);
- Если ЗначениеЗаполнено(ВыбраннаяМЧД) Тогда
- ПодписанноеСообщение.ВыбраннаяМЧД = ВыбраннаяМЧД;
+
+ Сертификат = ПодписанноеСообщение.ВыбранныйСертификат;
+
+ ДоверенностиПодобранныеПоСертификату = ПодписанноеСообщение.Доверенности.Получить(Сертификат);
+ Если ДоверенностиПодобранныеПоСертификату <> Неопределено Тогда
+
+ Если ДоверенностиПодобранныеПоСертификату.Количество() > 0 Тогда
+ ПодписанноеСообщение.ВыбраннаяМЧД = ДоверенностиПодобранныеПоСертификату[0];
+ КонецЕсли;
+
КонецЕсли;
+
КонецЕсли;
Сообщения.Добавить(ПодписанноеСообщение.Ссылка);
@@ -11192,21 +11252,20 @@
КонтекстДиагностики = РезультатДействий.КонтекстДиагностики;
АдресДанныхДляОбновления = "";
- Блокировка = Новый БлокировкаДанных;
- ЭлементБлокировки = Блокировка.Добавить("Документ.СообщениеЭДО");
- ЭлементБлокировки.УстановитьЗначение("Ссылка", ПодписанноеСообщение.Ссылка);
+ РеквизитыСообщения = ОбщегоНазначения.ЗначенияРеквизитовОбъекта(ПодписанноеСообщение.Ссылка,
+ "Направление, ЭлектронныйДокумент, ЭлектронныйДокумент.Организация");
+ ЭтоВходящийДокумент = ЭлектронныеДокументыЭДО.ЭтоВходящийЭДО(РеквизитыСообщения.ЭлектронныйДокумент);
ОрганизацияДляПодписания = Неопределено;
Если ЗначениеЗаполнено(ПодписанноеСообщение.ВыбраннаяМЧД) Тогда
- НаправлениеЭДО = ОбщегоНазначения.ЗначениеРеквизитаОбъекта(ПодписанноеСообщение.Ссылка, "Направление");
+ НаправлениеЭДО = РеквизитыСообщения.Направление;
Если НаправлениеЭДО = Перечисления.НаправленияЭДО.Интеркампани Тогда
СправочникМЧД = МашиночитаемыеДоверенности.СправочникМЧД(ПодписанноеСообщение.ВыбраннаяМЧД);
СведенияМЧД = СправочникМЧД.СведенияМЧД(ПодписанноеСообщение.ВыбраннаяМЧД);
ОбменСКонтрагентамиПереопределяемый.СсылкаНаОбъектПоИННКПП("Организации", СведенияМЧД.ИННДоверителя,
СведенияМЧД.КППДоверителя, ОрганизацияДляПодписания, СведенияМЧД.ДатаВыдачи);
Иначе
- ОрганизацияДляПодписания = ОбщегоНазначения.ЗначениеРеквизитаОбъекта(
- ПодписанноеСообщение.Ссылка, "ЭлектронныйДокумент.Организация");
+ ОрганизацияДляПодписания = РеквизитыСообщения.ЭлектронныйДокументОрганизация;
КонецЕсли;
КонецЕсли;
КонтекстВыполненияДействия = СоздатьКонтекстВыполненияДействияПоСообщению(ПодписанноеСообщение.Ссылка, Действие);
@@ -11214,7 +11273,7 @@
НачатьТранзакцию();
Попытка
- Блокировка.Заблокировать();
+ ЗаблокироватьДокументДляИзменения(РеквизитыСообщения.ЭлектронныйДокумент, ЭтоВходящийДокумент);
ТекущаяДатаСеанса = ТекущаяДатаСеанса();
@@ -11747,7 +11806,7 @@
КонецЕсли;
- ЗаблокироватьДанныеСообщенияДляИзменения(Сообщение, ЭлектронныйДокумент, ЭтоВходящийЭДО);
+ ЗаблокироватьДокументДляИзменения(ЭлектронныйДокумент, ЭтоВходящийЭДО);
СообщениеОбъект = Сообщение.ПолучитьОбъект();
Если СообщениеОбъект.ЭлектронныйДокумент <> ЭлектронныйДокумент
@@ -11890,7 +11949,13 @@
ДокументыПакета = ПакетыДокументовЭДО.ДокументыПакета(ПакетДокументов);
- ЗаблокироватьСообщенияПакетаДляИзменения(ДокументыПакета);
+ ЗаблокироватьДокументыДляИзменения(ДокументыПакета);
+
+ Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.УправлениеДоступом") Тогда
+ // Аналог блокировки из РаботаСФайлами.ВыполнитьДействияПередЗаписьюПрисоединенногоФайла.
+ МодульУправлениеДоступом = ОбщегоНазначения.ОбщийМодуль("УправлениеДоступом");
+ МодульУправлениеДоступом.УстановитьБлокировкуПередЗаписьюВФайловойИБ(, Истина);
+ КонецЕсли;
ЭтоВходящийЭДО = ЭлектронныеДокументыЭДО.ЭтоВходящийЭДО(ДокументыПакета[0]);
@@ -12847,15 +12912,13 @@
Действие = Перечисления.ДействияПоЭДО.ОтменитьОтправку;
- Блокировка = Новый БлокировкаДанных;
- Для Каждого Сообщение Из НаборСообщений Цикл
- ЭлементБлокировки = Блокировка.Добавить("Документ.СообщениеЭДО");
- ЭлементБлокировки.УстановитьЗначение("Ссылка", Сообщение);
- КонецЦикла;
+ ЭлектронныеДокументыПоСообщениям = ОбщегоНазначения.ЗначениеРеквизитаОбъектов(НаборСообщений,
+ "ЭлектронныйДокумент");
+ ЭлектронныеДокументы = ОбщегоНазначения.ВыгрузитьКолонку(ЭлектронныеДокументыПоСообщениям, "Значение", Истина);
НачатьТранзакцию();
Попытка
- Блокировка.Заблокировать();
+ ЗаблокироватьДокументыДляИзменения(ЭлектронныеДокументы);
Запрос = Новый Запрос(ТекстЗапросаДанныхДляОтменыОтправки());
Запрос.УстановитьПараметр("НаборСообщений", НаборСообщений);
@@ -13159,16 +13222,15 @@
Действие = Перечисления.ДействияПоЭДО.Отправить;
ЭлектронныйДокумент = ОбщегоНазначения.ЗначениеРеквизитаОбъекта(Сообщение, "ЭлектронныйДокумент");
+ ЭтоВходящийДокумент = ЭлектронныеДокументыЭДО.ЭтоВходящийЭДО(ЭлектронныйДокумент);
КонтекстВыполненияДействия = СоздатьКонтекстВыполненияДействияПоСообщению(Сообщение, Действие);
НачатьТранзакцию();
Попытка
- Блокировка = Новый БлокировкаДанных;
- ЭлементБлокировки = Блокировка.Добавить("Документ.СообщениеЭДО");
- ЭлементБлокировки.УстановитьЗначение("ЭлектронныйДокумент", ЭлектронныйДокумент);
- Блокировка.Заблокировать();
+ ЗаблокироватьДокументДляИзменения(ЭлектронныйДокумент, ЭтоВходящийДокумент);
+
СообщениеОбъект = Сообщение.ПолучитьОбъект();
Если СообщениеОбъект.ЭлектронныйДокумент <> ЭлектронныйДокумент Тогда
@@ -13265,7 +13327,7 @@
НачатьТранзакцию();
Попытка
- ЗаблокироватьДанныеСообщенияДляИзменения(Сообщение, ЭлектронныйДокумент, ЭтоВходящийЭДО);
+ ЗаблокироватьДокументДляИзменения(ЭлектронныйДокумент, ЭтоВходящийЭДО);
СообщениеОбъект = Сообщение.ПолучитьОбъект();
Если СообщениеОбъект.ЭлектронныйДокумент <> ЭлектронныйДокумент
@@ -14374,19 +14436,13 @@
//
Процедура ЗагрузитьДанныеОбъекта(ДанныеОбъекта, ПроверенныеПодписи, КонтекстДиагностики, РезультатЗагрузкиДанных)
- Блокировка = Новый БлокировкаДанных;
-
- ЭлементБлокировки = Блокировка.Добавить("Документ.ЭлектронныйДокументВходящийЭДО");
- ЭлементБлокировки.УстановитьЗначение("ИдентификаторДокументооборота",
- ДанныеОбъекта.ИдентификаторДокументооборота);
-
- ЭлементБлокировки = Блокировка.Добавить("Документ.ЭлектронныйДокументИсходящийЭДО");
- ЭлементБлокировки.УстановитьЗначение("ИдентификаторДокументооборота",
- ДанныеОбъекта.ИдентификаторДокументооборота);
+ КлючБлокировкиДокумента = ЭлектронныеДокументыЭДО.НовыйКлючДокументаДляБлокировки();
+ КлючБлокировкиДокумента.ИдентификаторДокументооборота = ДанныеОбъекта.ИдентификаторДокументооборота;
НачатьТранзакцию();
Попытка
- Блокировка.Заблокировать();
+ ЭлектронныеДокументыЭДО.ЗаблокироватьДокументДляИзмененияПоКлючу(КлючБлокировкиДокумента);
+ ЭлектронныеДокументыЭДО.ЗаблокироватьДокументДляИзмененияПоКлючу(КлючБлокировкиДокумента, Истина);
РезультатЗагрузкиСообщения = ЗагрузитьСообщениеПоДаннымОбъекта(ДанныеОбъекта, ПроверенныеПодписи,
КонтекстДиагностики, РезультатЗагрузкиДанных);
@@ -14803,7 +14859,7 @@
ЭлектронныйДокумент = ОбщегоНазначения.ЗначениеРеквизитаОбъекта(Сообщение, "ЭлектронныйДокумент");
ЭтоВходящийЭДО = ЭлектронныеДокументыЭДО.ЭтоВходящийЭДО(ЭлектронныйДокумент);
- ЗаблокироватьДанныеСообщенияДляИзменения(Сообщение, ЭлектронныйДокумент, ЭтоВходящийЭДО);
+ ЗаблокироватьДокументДляИзменения(ЭлектронныйДокумент, ЭтоВходящийЭДО);
СообщениеОбъект = Сообщение.ПолучитьОбъект();
Если СообщениеОбъект.ЭлектронныйДокумент <> ЭлектронныйДокумент
@@ -14824,7 +14880,7 @@
КонецЕсли;
ЕстьНовыеПодписи = Ложь;
- УстановленныеПодписи = ЭлектроннаяПодпись.УстановленныеПодписи(СообщениеОбъект.ОсновнойФайл);
+ УстановленныеПодписи = ЭлектроннаяПодпись.ПодписиОбъекта(СообщениеОбъект.ОсновнойФайл);
Для Каждого СвойстваПодписи Из ОтветныеПодписи.ПодписиОсновныхДанных Цикл
Если ЭтоНоваяПодпись(УстановленныеПодписи, СвойстваПодписи) Тогда
ЕстьНовыеПодписи = Истина;
@@ -14945,7 +15001,7 @@
СообщениеОбъект = СоздатьСообщение(ОписаниеСообщения, ПараметрыДокумента.Ссылка, ПараметрыДокумента);
ДобавитьПодписиПриЗагрузкеСообщения(СообщениеОбъект, ПараметрыЗагрузки, ДанныеОбъекта);
- ТрансграничныйЭДО.ДобавитьПодписиПриЗагрузкеСообщения(СообщениеОбъект, ПараметрыЗагрузки, ДанныеОбъекта);
+ ТрансграничныйЭДО.ДобавитьПодписиПриЗагрузкеСообщения(СообщениеОбъект, ПараметрыЗагрузки, ДанныеОбъекта);
ПодписиПоДаннымОбъекта = ПроверенныеПодписи[ДанныеОбъекта.ИдентификаторСтроки];
Если ЗначениеЗаполнено(ПодписиПоДаннымОбъекта) Тогда
@@ -15600,11 +15656,12 @@
ТипЭлементаРегламента = РезультатЗагрузкиСообщения.СообщениеОбъект.ТипЭлементаРегламента;
Если (ТипДокумента = Перечисления.ТипыДокументовЭДО.УПД
- ИЛИ ТипДокумента = Перечисления.ТипыДокументовЭДО.СчетФактура)
+ Или ТипДокумента = Перечисления.ТипыДокументовЭДО.УКД
+ Или ТипДокумента = Перечисления.ТипыДокументовЭДО.СчетФактура)
И (ТипЭлементаРегламента = Перечисления.ТипыЭлементовРегламентаЭДО.ПДП
- ИЛИ ТипЭлементаРегламента = Перечисления.ТипыЭлементовРегламентаЭДО.ПДО
- ИЛИ ТипЭлементаРегламента = Перечисления.ТипыЭлементовРегламентаЭДО.ИОП
- ИЛИ ТипЭлементаРегламента = Перечисления.ТипыЭлементовРегламентаЭДО.ИОП_ПДП) Тогда
+ Или ТипЭлементаРегламента = Перечисления.ТипыЭлементовРегламентаЭДО.ПДО
+ Или ТипЭлементаРегламента = Перечисления.ТипыЭлементовРегламентаЭДО.ИОП
+ Или ТипЭлементаРегламента = Перечисления.ТипыЭлементовРегламентаЭДО.ИОП_ПДП) Тогда
ДокументыПодтверждения = ДокументыПодтверждения(РезультатЗагрузкиСообщения.СообщенияПоДокументу,
ТипЭлементаРегламента);
@@ -15885,7 +15942,7 @@
ЭтоВходящийЭДО = Истина;
- ЗаблокироватьДанныеДокументаДляИзменения(ЭлектронныйДокумент, ЭтоВходящийЭДО);
+ ЗаблокироватьДокументДляИзменения(ЭлектронныйДокумент, ЭтоВходящийЭДО);
ДокументОбъект = ЭлектронныйДокумент.ПолучитьОбъект();
@@ -16255,7 +16312,8 @@
РеквизитыДокументаПоНаименованиюФайла = РеквизитыДокументаИзНаименованияФайла(
ДанныеОбъекта.ОписаниеДанных.ИмяФайла,
ДанныеОбъекта.ТипДокумента = Перечисления.ТипыДокументовЭДО.Прочее,
- Не ЗначениеЗаполнено(Результат.ОписаниеСообщения.Данные.Содержание.НомерДокумента));
+ Не ЗначениеЗаполнено(ДанныеОбъекта.ОписаниеДокумента.Номер),
+ Не ЗначениеЗаполнено(ДанныеОбъекта.ОписаниеДокумента.ДатаДокумента));
Если ЗначениеЗаполнено(РеквизитыДокументаПоНаименованиюФайла.ВидДокумента) Тогда
Результат.ПараметрыДокумента.ВидДокумента = РеквизитыДокументаПоНаименованиюФайла.ВидДокумента;
@@ -16288,7 +16346,7 @@
// - Строка
// * ДатаДокумента - Неопределено
// - Дата
-Функция РеквизитыДокументаИзНаименованияФайла(ИмяФайла, ОпределятьВид = Истина, ОпределятьНомер = Истина,
+Функция РеквизитыДокументаИзНаименованияФайла(Знач ИмяФайла, ОпределятьВид = Истина, ОпределятьНомер = Истина,
ОпределятьДату = Истина)
Результат = Новый Структура;
@@ -16296,14 +16354,37 @@
Результат.Вставить("НомерДокумента", Неопределено);
Результат.Вставить("ДатаДокумента", Неопределено);
+ РезультатПолученияВидаДокумента = Неопределено;
+ РезультатПолученияДатыДокумента = Неопределено;
+
Если ОпределятьВид Тогда
- Результат.ВидДокумента = ВидДокументаИзНаименованияФайла(ИмяФайла);
- КонецЕсли;
- Если ОпределятьНомер Тогда
- Результат.НомерДокумента = НомерДокументаИзНаименованияФайла(ИмяФайла);
+ РезультатПолученияВидаДокумента = ВидДокументаИзНаименованияФайла(ИмяФайла);
+ Если РезультатПолученияВидаДокумента.Успех Тогда
+ Результат.ВидДокумента = РезультатПолученияВидаДокумента.ВидДокумента;
+ КонецЕсли;
КонецЕсли;
Если ОпределятьДату Тогда
- Результат.ДатаДокумента = ДатаДокументаИзНаименованияФайла(ИмяФайла);
+ РезультатПолученияДатыДокумента = ДатаДокументаИзНаименованияФайла(ИмяФайла);
+ Если РезультатПолученияДатыДокумента.Успех Тогда
+ Результат.ДатаДокумента = РезультатПолученияДатыДокумента.ДатаДокумента;
+ КонецЕсли;
+ КонецЕсли;
+ Если ОпределятьНомер Тогда
+ ИмяФайлаДляПолученияНомера = ИмяФайла;
+ Если ЗначениеЗаполнено(РезультатПолученияВидаДокумента)
+ И РезультатПолученияВидаДокумента.Успех Тогда
+ ИмяФайлаДляПолученияНомера = СтрЗаменить(ИмяФайлаДляПолученияНомера, РезультатПолученияВидаДокумента.НайденнаяСтрока, "");
+ КонецЕсли;
+ Если ЗначениеЗаполнено(РезультатПолученияДатыДокумента)
+ И РезультатПолученияДатыДокумента.Успех Тогда
+ ИмяФайлаДляПолученияНомера = СтрЗаменить(ИмяФайлаДляПолученияНомера,
+ РезультатПолученияДатыДокумента.НайденнаяСтрока, "");
+ КонецЕсли;
+
+ РезультатПолученияНомераДокумента = НомерДокументаИзНаименованияФайла(ИмяФайлаДляПолученияНомера);
+ Если РезультатПолученияНомераДокумента.Успех Тогда
+ Результат.НомерДокумента = РезультатПолученияНомераДокумента.НомерДокумента;
+ КонецЕсли;
КонецЕсли;
Возврат Результат;
@@ -16314,11 +16395,12 @@
// ИмяФайла - Строка
//
// Возвращаемое значение:
-// - Неопределено
-// - СправочникСсылка.ВидыДокументовЭДО
+// * Успех - Булево
+// * ВидДокумента - Неопределено,СправочникСсылка.ВидыДокументовЭДО
+// * НайденнаяСтрока - Строка
Функция ВидДокументаИзНаименованияФайла(ИмяФайла)
- Результат = Неопределено;
+ Результат = Новый Структура("Успех, ВидДокумента, НайденнаяСтрока", Ложь, Неопределено, "");
ТаблицаРегулярныхВыражений = ТаблицаРегулярныхВыраженийДляОпределенияТипаДокумента();
@@ -16327,9 +16409,12 @@
Если РезультатПоиска.НачальнаяПозиция = 0 Тогда
Продолжить;
КонецЕсли;
-
+
+ Результат.Успех = Истина;
+ Результат.НайденнаяСтрока = РезультатПоиска.Значение;
+
ТипДокумента = СтрокаТаблицы.ТипДокумента;
- Результат = ЭлектронныеДокументыЭДО.ВидДокументаПоТипу(ТипДокумента);
+ Результат.ВидДокумента = ЭлектронныеДокументыЭДО.ВидДокументаПоТипу(ТипДокумента);
Прервать;
КонецЦикла;
@@ -16557,11 +16642,12 @@
// ИмяФайла - Строка
//
// Возвращаемое значение:
-// - Неопределено
-// - Строка
+// * Успех - Булево
+// * НомерДокумента - Строка
+// * НайденнаяСтрока - Строка
Функция НомерДокументаИзНаименованияФайла(ИмяФайла)
- Результат = Неопределено;
+ Результат = Новый Структура("Успех, НомерДокумента, НайденнаяСтрока", Ложь, "", "");
РегулярныеВыраженияДляПоискаНомераДокумента = Новый Массив;
РегулярныеВыраженияДляПоискаНомераДокумента.Добавить("№\s*(\d+-\d+-\d+)"); // № 1234-12345-12345
@@ -16573,8 +16659,8 @@
РегулярныеВыраженияДляПоискаНомераДокумента.Добавить("_(\d+)"); // _12345
РегулярныеВыраженияДляПоискаНомераДокумента.Добавить("\b([A-ZА-Я]{1,4}-\d{2,})\b"); // АСУН-000422, МСК-00003344063
РегулярныеВыраженияДляПоискаНомераДокумента.Добавить("\b(\d{4}-\d{6}-\d{5})\b"); // 2504-429460-35575
- РегулярныеВыраженияДляПоискаНомераДокумента.Добавить("\b(\d{1,4})\b"); // 1, 12, 123, 1234
РегулярныеВыраженияДляПоискаНомераДокумента.Добавить("\b(\d{5,})\b"); // Длинные цифровые номера
+ РегулярныеВыраженияДляПоискаНомераДокумента.Добавить("(\d{1,4})(?!\d)"); // 1, 12, 123, 1234
Для Каждого РегулярноеВыражение Из РегулярныеВыраженияДляПоискаНомераДокумента Цикл
РезультатПоиска = СтрНайтиПоРегулярномуВыражению(ИмяФайла, РегулярноеВыражение);
@@ -16582,7 +16668,10 @@
Продолжить;
КонецЕсли;
- Результат = СокрЛП(СтрЗаменитьПоРегулярномуВыражению(РезультатПоиска.Значение, "[№#]\s*|[Nn][o°]|_\s*", ""));
+ Результат.Успех = Истина;
+ Результат.НайденнаяСтрока = РезультатПоиска.Значение;
+ Результат.НомерДокумента = СокрЛП(СтрЗаменитьПоРегулярномуВыражению(РезультатПоиска.Значение,
+ "[№#]\s*|[Nn][o°]|_\s*", ""));
Прервать;
КонецЦикла;
@@ -16594,25 +16683,30 @@
// ИмяФайла - Строка
//
// Возвращаемое значение:
-// - Неопределено
-// - Дата
+// * Успех - Булево
+// * ДатаДокумента - Дата
+// * НайденнаяСтрока - Строка
Функция ДатаДокументаИзНаименованияФайла(ИмяФайла)
- Результат = Неопределено;
+ Результат = Новый Структура("Успех, ДатаДокумента, НайденнаяСтрока", Ложь, Дата(1, 1, 1), "");
РегулярныеВыраженияДляПоискаДатыДокумента = Новый Массив;
РегулярныеВыраженияДляПоискаДатыДокумента.Добавить("\d{2}\.\d{2}\.\d{4}"); // DD.MM.YYYY
РегулярныеВыраженияДляПоискаДатыДокумента.Добавить("\d{2}\.\d{2}\.\d{2}"); // DD.MM.YY
РегулярныеВыраженияДляПоискаДатыДокумента.Добавить("\d{2}\/\d{2}\/\d{4}"); // DD/MM/YYYY
- РегулярныеВыраженияДляПоискаДатыДокумента.Добавить("\d{1,2}[\s_]+\w+[\s_]+\d{4}"); // DD MM YYYY 22 апреля 2025, 22_апреля_2025
+ РегулярныеВыраженияДляПоискаДатыДокумента.Добавить("(?
-
+
- РежимЗагрузкиДанныхВЦентрЭДО
+ МахShare
ru
- Режим загрузки данных в центр ЭДО
+ Мах share
-
- xs:boolean
-
+ false
+ false
-
+
\ No newline at end of file
diff --git a/src/CommonPictures/МахShare/Ext/Picture.xml b/src/CommonPictures/МахShare/Ext/Picture.xml
new file mode 100644
index 000000000..bdcc47166
--- /dev/null
+++ b/src/CommonPictures/МахShare/Ext/Picture.xml
@@ -0,0 +1,7 @@
+
+
+
+ Picture.zip
+ false
+
+
\ No newline at end of file
diff --git a/src/CommonPictures/МахShare/Ext/Picture/Picture.zip b/src/CommonPictures/МахShare/Ext/Picture/Picture.zip
new file mode 100644
index 000000000..b18b8e76a
Binary files /dev/null and b/src/CommonPictures/МахShare/Ext/Picture/Picture.zip differ
diff --git a/src/CommonPictures/СостоянияОбменСБанками/Ext/Picture/Picture.zip b/src/CommonPictures/СостоянияОбменСБанками/Ext/Picture/Picture.zip
index 9bec1ea3e..0b9cb5a1c 100644
Binary files a/src/CommonPictures/СостоянияОбменСБанками/Ext/Picture/Picture.zip and b/src/CommonPictures/СостоянияОбменСБанками/Ext/Picture/Picture.zip differ
diff --git a/src/CommonModules/ПриглашенияЭДОПовтИсп.xml b/src/CommonPictures/СтатусыИспользованияУстаревшейФункциональности.xml
similarity index 61%
rename from src/CommonModules/ПриглашенияЭДОПовтИсп.xml
rename to src/CommonPictures/СтатусыИспользованияУстаревшейФункциональности.xml
index 3b1e13e4d..227efb321 100644
--- a/src/CommonModules/ПриглашенияЭДОПовтИсп.xml
+++ b/src/CommonPictures/СтатусыИспользованияУстаревшейФункциональности.xml
@@ -1,23 +1,17 @@
-
+
- ПриглашенияЭДОПовтИсп
+ СтатусыИспользованияУстаревшейФункциональности
ru
- Приглашения ЭДОПовт исп
+ Статусы использования устаревшей функциональности
- Приглашения ЭДО повторное использование
- false
- false
- true
- true
- true
- false
- false
- DuringSession
+
+ false
+ false
-
+
\ No newline at end of file
diff --git a/src/CommonPictures/СтатусыИспользованияУстаревшейФункциональности/Ext/Picture.xml b/src/CommonPictures/СтатусыИспользованияУстаревшейФункциональности/Ext/Picture.xml
new file mode 100644
index 000000000..bdcc47166
--- /dev/null
+++ b/src/CommonPictures/СтатусыИспользованияУстаревшейФункциональности/Ext/Picture.xml
@@ -0,0 +1,7 @@
+
+
+
+ Picture.zip
+ false
+
+
\ No newline at end of file
diff --git a/src/CommonPictures/СтатусыИспользованияУстаревшейФункциональности/Ext/Picture/Picture.zip b/src/CommonPictures/СтатусыИспользованияУстаревшейФункциональности/Ext/Picture/Picture.zip
new file mode 100644
index 000000000..0a9001e14
Binary files /dev/null and b/src/CommonPictures/СтатусыИспользованияУстаревшейФункциональности/Ext/Picture/Picture.zip differ
diff --git a/src/CommonTemplates/КлассификаторыВидовПродукцииИС/Ext/Template.bin b/src/CommonTemplates/КлассификаторыВидовПродукцииИС/Ext/Template.bin
index a2c0f302d..9f45393cf 100644
Binary files a/src/CommonTemplates/КлассификаторыВидовПродукцииИС/Ext/Template.bin and b/src/CommonTemplates/КлассификаторыВидовПродукцииИС/Ext/Template.bin differ
diff --git a/src/CommonTemplates/ОписаниеИзмененийСистемы/Ext/Template.xml b/src/CommonTemplates/ОписаниеИзмененийСистемы/Ext/Template.xml
index 73b565b4e..ee2231758 100644
--- a/src/CommonTemplates/ОписаниеИзмененийСистемы/Ext/Template.xml
+++ b/src/CommonTemplates/ОписаниеИзмененийСистемы/Ext/Template.xml
@@ -1061,7 +1061,7 @@
ru
- Новое в версии 3.1.36.31
+ Новое в версии 3.1.36.33
@@ -1085,360 +1085,13 @@
1
- 11
-
-
- ru
- Подсистема "CRM"
-
-
+ 8
71
-
-
- 1
-
- 2
-
-
-
-
-
- 72
-
-
- 1
-
- 12
-
-
- ru
- Исправлено аварийное завершение работы на платформе 1С:Предприятие 8.5 при создании Коммерческого предложения клиенту.
-
-
-
-
-
-
-
- 73
-
-
- 1
-
- 12
-
-
-
-
-
- 74
-
-
- 1
-
- 12
-
-
- ru
- В персональные настройки пользователя добавлена новая настройка «Запретить конвертацию обращения при вводе личной задачи». После включении настройки при создании личной задачи из нового письма статус письма не будет меняться на «Сконвертировано».
-
-В механизм заполнения Бизнес-регионов из классификатора добавлена возможность дополнять ранее созданные регионы. Данные (такие как "Время по Гринвичу", "Код города и т.п.)вносятся только в том случае, если они не заполнены.
-
-
-
-
-
-
-
- 75
-
-
- 1
-
- 12
-
-
-
-
-
- 76
-
-
- 1
-
- 12
-
-
- ru
- В форму телефонного звонка добавлена поддержка ИИ-ассистентов. Особенно это актуально при подключении Телефонии и сервиса транскрибации записанных разговоров.
-
-В печатной форме договора из Интереса и КП доработано заполнение банковских реквизитов.
-
-
-
-
-
-
-
- 77
-
-
- 1
-
- 12
-
-
-
-
-
- 78
-
-
- 1
-
- 12
-
-
- ru
- В формы:
- - учетных записей почты
- - учетных записей мессенджеров
- - источников заявок
- - настройки телефонии
-добавлена настройка для указания Причины при обработке обращения (команда "Отметить обработанным").
-
-
-
-
-
-
-
- 79
-
-
- 1
-
- 12
-
-
-
-
-
- 80
-
-
- 1
-
- 12
-
-
- ru
- При использовании в письмах / рассылках шаблонов автотекста, хранящих многострочный текст, доработано сохранение переноса строк при вставке.
-
-Доработано добавление виджетов (например, "Дебиторская задолженность") в Воронке продаж.
-
-Доработана форма действия триггеров "Запрет редактирования КП".
-
-
-
-
-
-
-
- 81
-
-
- 1
-
- 12
-
-
-
-
-
- 82
-
-
- 1
-
- 12
-
-
- ru
- Доработана логика работы действия "Запрет записи Интереса при переходе в состояние..." - при отмене записи больше не завершаются активные задачи и взаимодействия.
-
-На форме триггеров, связанных с действиями отмены записи или отмены проведения, скрыт флажок "Регистрировать в журнале все срабатывания". Для таких триггеров возможно регистрировать только ошибки выполнения, так как при удачном срабатывании выполняется откат транзакции записи.
-
-
-
-
-
-
-
- 83
-
-
- 1
-
- 12
-
-
-
-
-
- 84
-
-
- 1
-
- 12
-
-
- ru
- В Ленте Интереса, Клиента, Контакта и Потенциального клиента в меню карточек добавлена возможность копирования результата выполнения задачи и поручения (без открытия самих документов).
-
-В рассылках писем при заполнении табличной части по результата отчета, в котором для одного клиента может быть несколько адресов электронной почты, теперь для каждого адреса будет создаваться отдельная строка. Ранее все адреса записывались через запятую в одной строке и это вызывало ошибки при отправке через сервис Unisender.
-
-
-
-
-
-
-
- 85
-
-
- 1
-
- 12
-
-
-
-
-
- 86
-
-
- 1
-
- 12
-
-
- ru
- Из отчета "Путь клиента" удален механизм доступных пользователей. Режим отбора "По всем доступным" переименован в "По всем" и ведет себя соответственно названию.
-
-Доработана запись личной задачи из краткой формы создания. Ранее введенные из этой формы задачи не отображались в АРМ "Мои дела" в режиме "Матрица Эйзенхауэра".
-
-
-
-
-
-
-
- 87
-
-
- 1
-
- 12
-
-
-
-
-
- 88
-
-
- 1
-
- 12
-
-
- ru
- В АРМ "Диалоги" для обсуждений Системы взаимодействия добавлена возможность открывать документ, в рамках которого ведется обсуждение. Команда добавлена в контекстное меню списка диалогов.
-
-В отдельном окне вывода напоминаний добавлена возможность отменить отбор по выведенным данным.
-
-
-
-
-
-
-
- 89
-
-
- 1
-
- 12
-
-
-
-
-
- 90
-
-
- 1
-
- 12
-
-
- ru
- Для пользователей с ограниченными правами добавлена возможность присоединять файлы к Задачам проектов и Контрольным точкам проектов.
-
-
-
-
-
-
-
- 91
-
-
- 1
-
- 12
-
-
-
-
-
- 92
-
-
- 1
-
- 12
-
-
- ru
- Исправлены выявленные ошибки.
-
-
-
-
-
-
-
- 93
-
-
- 1
-
- 2
-
-
-
-
-
-
- 94
1
@@ -1455,7 +1108,7 @@
- 95
+ 72
1
@@ -1467,7 +1120,7 @@
- 96
+ 73
1
@@ -1476,7 +1129,7 @@
ru
- Подсистема "Управление торговлей" обновлена до версии 11.5.27.47.
+ Подсистема "Управление торговлей" обновлена до версии 11.5.27.52.
@@ -1484,31 +1137,23 @@
- 97
+ 74
+ 1
- 0
-
-
-
-
- 13
+ 8
- 98
+ 75
+ 1
- 0
-
-
-
-
- 10
+ 8
ru
@@ -1520,14 +1165,10 @@
- 99
+ 76
-
- 0
-
-
-
+ 1
10
@@ -1541,7 +1182,7 @@
- 100
+ 77
@@ -1562,8 +1203,336 @@
- 101
+ 78
+
+ 1
+
+ 8
+
+
+
+
+
+ 79
+
+
+
+ 0
+
+
+
+
+ 5
+
+
+ ru
+ Новое в версии 3.1.36.32
+
+
+
+
+
+
+
+ 80
+
+ 7
+
+ 1
+
+ 8
+
+
+
+
+
+ 81
+
+ 7
+
+ 1
+
+ 8
+
+
+
+
+
+ 82
+
+ 7
+
+
+ 0
+
+
+
+
+ 11
+
+
+ ru
+ Подсистема "CRM"
+
+
+
+
+
+
+
+ 83
+
+ 7
+
+
+ 0
+
+
+
+
+ 8
+
+
+
+
+
+ 84
+
+ 7
+
+
+ 0
+
+
+
+
+ 8
+
+
+ ru
+ При принятии обращения от Потенциального клиента поле «Соглашение» теперь не скрывается. При этом устанавливается отбор, чтобы были доступны только Типовые соглашения, не привязанные к клиентам.
+
+
+
+
+
+
+
+ 85
+
+ 7
+
+
+ 0
+
+
+
+
+ 8
+
+
+
+
+
+ 86
+
+ 7
+
+
+ 0
+
+
+
+
+ 8
+
+
+ ru
+ в АРМ «Диалоги» рядом с полем ввода сообщения добавлен вывод текущего времени у Клиента на основании его Бизнес-региона. Также это добавлено в форму Телефонного звонка и Взаимодействия.
+
+
+
+
+
+
+
+ 87
+
+ 7
+
+
+ 0
+
+
+
+
+ 8
+
+
+
+
+
+ 88
+
+ 7
+
+ 1
+
+ 11
+
+
+ ru
+ Подсистема "Управление торговлей"
+
+
+
+
+
+
+
+ 89
+
+ 7
+
+ 1
+
+ 0
+
+
+
+
+
+
+ 90
+
+ 7
+
+ 1
+
+ 10
+
+
+ ru
+ Подсистема "Управление торговлей" обновлена до версии 11.5.27.50.
+
+
+
+
+
+
+
+ 91
+
+ 7
+
+ 1
+
+ 8
+
+
+
+
+
+ 92
+
+ 7
+
+ 1
+
+ 8
+
+
+ ru
+ Исправлены <link https://bugboard.v8.1c.ru/project/trade11>выявленные ошибки</>.
+
+
+
+
+
+
+
+ 93
+
+ 7
+
+ 1
+
+ 10
+
+
+ ru
+ Подробное описание публикуется <link https://its.1c.ru/db/updinfo#content:284:hdoc>на сайте ИТС</>.
+
+
+
+
+
+
+
+ 94
+
+ 7
+
+
+ 0
+
+
+
+
+ 10
+
+
+ ru
+ Полное описание в формате PDF можно скачать на странице версии на сайте <link https://releases.1c.ru/project/Trade110>releases.1c.ru</>
+
+
+
+
+
+
+
+ 95
+
+ 7
+
+
+ 0
+
+
+
+
+ 12
+
+
+
+
+
+ 96
+
+ 7
+
+
+ 0
+
+
+
+
+ 13
+
+
+ ru
+ Новое в версии 11.5.27.50
+
+
+
+
+
+
+
+ 97
+
+ 7
0
@@ -1577,8 +1546,47 @@
- 102
+ 98
+ 7
+
+
+ 0
+
+
+
+
+ 13
+
+
+ ru
+ Сервисные возможности и настройки интеграции
+
+
+
+
+
+
+
+ 99
+
+ 7
+
+
+ 0
+
+
+
+
+ 14
+
+
+
+
+
+ 100
+
+ 7
0
@@ -1590,7 +1598,51 @@
ru
- НСИ
+ Интеграция с торговой площадкой Яндекс Маркет
+
+
+
+
+
+
+
+ 101
+
+ 7
+
+
+ 0
+
+
+
+
+ 16
+
+
+ ru
+ •В интерфейсе авторизации появилось описание наборов прав, предоставляемых подключаемому.
+
+
+
+
+
+
+
+ 102
+
+ 7
+
+
+ 0
+
+
+
+
+ 16
+
+
+ ru
+ •Идентификатор товара продавца ограничен до 200 символов согласно требованиям площадки.
@@ -1600,6 +1652,7 @@
103
+ 7
0
@@ -1607,7 +1660,7 @@
- 16
+ 14
@@ -1615,6 +1668,7 @@
104
+ 7
0
@@ -1622,11 +1676,11 @@
- 17
+ 15
ru
- Основной банковский счет
+ Интеграция с ГИС МТ "Честный знак"
@@ -1636,6 +1690,7 @@
105
+ 7
0
@@ -1643,13 +1698,13 @@
- 18
-
+ 16
+
ru
- В справочнике <font Almarai><fontsize 8><i><bgcolor #ffffff><color #000000>Организации</></></></></> и списке банковских счетов организации можно выбрать основной банковский счет. Реализовано заполнение банковского счета организации и контрагента в договорах и документах.
+ Библиотека ГосИС обновлена до версии 1.1.36.
-
+
@@ -1657,6 +1712,7 @@
106
+ 7
0
@@ -1664,7 +1720,13 @@
- 13
+ 16
+
+
+ ru
+ Реализовано хранение списка мест осуществления деятельности (МОД) организаций и контрагентов.
+
+
@@ -1672,6 +1734,7 @@
107
+ 7
0
@@ -1679,11 +1742,11 @@
- 17
+ 16
ru
- Поиск, подтверждение и замена дублей НСИ
+ Поддержано указание МОД при выводе из оборота для ряда товарных групп: Обувь, Легкая промышленность, Духи, Шины, Табак, АТП, НСП, Игрушки, Ноутбуки, Строительные материалы.
@@ -1693,6 +1756,7 @@
108
+ 7
0
@@ -1700,13 +1764,7 @@
- 18
-
-
- ru
- Реализован новый механизм поиска, подтверждения и замены дублей в НСИ, адаптированный под сценарии использования, реализованные в прикладном решении. В рамках механизма, в том числе, поддерживаются следующие возможности:
-
-
+ 14
@@ -1714,6 +1772,7 @@
109
+ 7
0
@@ -1721,11 +1780,11 @@
- 18
+ 15
ru
- •Настраиваемые правила поиска дублей;
+ Обмен электронными документами
@@ -1735,6 +1794,7 @@
110
+ 7
0
@@ -1742,13 +1802,13 @@
- 18
-
+ 17
+
ru
- •Возможность интерактивного запуска поиска дублей и запуска по расписанию;
+ Библиотека электронных документов обновлена до версии <link https://dl03.1c.ru/content/LED/1_9_16_38/news.htm>1.9.16.38</>.
-
+
@@ -1757,19 +1817,9 @@
111
+ 1
- 0
-
-
-
-
- 18
-
-
- ru
- •Интерактивная отметка дублей в списках;
-
-
+ 8
@@ -1783,8 +1833,779 @@
+
+ 5
+
+
+ ru
+ Новое в версии 3.1.36.31
+
+
+
+
+
+
+
+ 113
+
+ 7
+
+ 1
+
+ 8
+
+
+
+
+
+ 114
+
+ 7
+
+ 1
+
+ 11
+
+
+ ru
+ Подсистема "CRM"
+
+
+
+
+
+
+
+ 115
+
+ 7
+
+ 1
+
+ 2
+
+
+
+
+
+ 116
+
+ 7
+
+ 1
18
+
+
+ ru
+ Исправлено аварийное завершение работы на платформе 1С:Предприятие 8.5 при создании Коммерческого предложения клиенту.
+
+
+
+
+
+
+
+ 117
+
+ 7
+
+ 1
+
+ 18
+
+
+
+
+
+ 118
+
+ 7
+
+ 1
+
+ 18
+
+
+ ru
+ В персональные настройки пользователя добавлена новая настройка «Запретить конвертацию обращения при вводе личной задачи». После включении настройки при создании личной задачи из нового письма статус письма не будет меняться на «Сконвертировано».
+
+В механизм заполнения Бизнес-регионов из классификатора добавлена возможность дополнять ранее созданные регионы. Данные (такие как "Время по Гринвичу", "Код города и т.п.)вносятся только в том случае, если они не заполнены.
+
+
+
+
+
+
+
+ 119
+
+ 7
+
+ 1
+
+ 18
+
+
+
+
+
+ 120
+
+ 7
+
+ 1
+
+ 18
+
+
+ ru
+ В форму телефонного звонка добавлена поддержка ИИ-ассистентов. Особенно это актуально при подключении Телефонии и сервиса транскрибации записанных разговоров.
+
+В печатной форме договора из Интереса и КП доработано заполнение банковских реквизитов.
+
+
+
+
+
+
+
+ 121
+
+ 7
+
+ 1
+
+ 18
+
+
+
+
+
+ 122
+
+ 7
+
+ 1
+
+ 18
+
+
+ ru
+ В формы:
+ - учетных записей почты
+ - учетных записей мессенджеров
+ - источников заявок
+ - настройки телефонии
+добавлена настройка для указания Причины при обработке обращения (команда "Отметить обработанным").
+
+
+
+
+
+
+
+ 123
+
+ 7
+
+ 1
+
+ 18
+
+
+
+
+
+ 124
+
+ 7
+
+ 1
+
+ 18
+
+
+ ru
+ При использовании в письмах / рассылках шаблонов автотекста, хранящих многострочный текст, доработано сохранение переноса строк при вставке.
+
+Доработано добавление виджетов (например, "Дебиторская задолженность") в Воронке продаж.
+
+Доработана форма действия триггеров "Запрет редактирования КП".
+
+
+
+
+
+
+
+ 125
+
+ 7
+
+ 1
+
+ 18
+
+
+
+
+
+ 126
+
+ 7
+
+ 1
+
+ 18
+
+
+ ru
+ Доработана логика работы действия "Запрет записи Интереса при переходе в состояние..." - при отмене записи больше не завершаются активные задачи и взаимодействия.
+
+На форме триггеров, связанных с действиями отмены записи или отмены проведения, скрыт флажок "Регистрировать в журнале все срабатывания". Для таких триггеров возможно регистрировать только ошибки выполнения, так как при удачном срабатывании выполняется откат транзакции записи.
+
+
+
+
+
+
+
+ 127
+
+ 7
+
+ 1
+
+ 18
+
+
+
+
+
+ 128
+
+ 7
+
+ 1
+
+ 18
+
+
+ ru
+ В Ленте Интереса, Клиента, Контакта и Потенциального клиента в меню карточек добавлена возможность копирования результата выполнения задачи и поручения (без открытия самих документов).
+
+В рассылках писем при заполнении табличной части по результата отчета, в котором для одного клиента может быть несколько адресов электронной почты, теперь для каждого адреса будет создаваться отдельная строка. Ранее все адреса записывались через запятую в одной строке и это вызывало ошибки при отправке через сервис Unisender.
+
+
+
+
+
+
+
+ 129
+
+ 7
+
+ 1
+
+ 18
+
+
+
+
+
+ 130
+
+ 7
+
+ 1
+
+ 18
+
+
+ ru
+ Из отчета "Путь клиента" удален механизм доступных пользователей. Режим отбора "По всем доступным" переименован в "По всем" и ведет себя соответственно названию.
+
+Доработана запись личной задачи из краткой формы создания. Ранее введенные из этой формы задачи не отображались в АРМ "Мои дела" в режиме "Матрица Эйзенхауэра".
+
+
+
+
+
+
+
+ 131
+
+ 7
+
+ 1
+
+ 18
+
+
+
+
+
+ 132
+
+ 7
+
+ 1
+
+ 18
+
+
+ ru
+ В АРМ "Диалоги" для обсуждений Системы взаимодействия добавлена возможность открывать документ, в рамках которого ведется обсуждение. Команда добавлена в контекстное меню списка диалогов.
+
+В отдельном окне вывода напоминаний добавлена возможность отменить отбор по выведенным данным.
+
+
+
+
+
+
+
+ 133
+
+ 7
+
+ 1
+
+ 18
+
+
+
+
+
+ 134
+
+ 7
+
+ 1
+
+ 18
+
+
+ ru
+ Для пользователей с ограниченными правами добавлена возможность присоединять файлы к Задачам проектов и Контрольным точкам проектов.
+
+
+
+
+
+
+
+ 135
+
+ 7
+
+ 1
+
+ 18
+
+
+
+
+
+ 136
+
+ 7
+
+ 1
+
+ 18
+
+
+ ru
+ Исправлены выявленные ошибки.
+
+
+
+
+
+
+
+ 137
+
+ 7
+
+ 1
+
+ 2
+
+
+
+
+
+
+ 138
+
+ 7
+
+ 1
+
+ 11
+
+
+ ru
+ Подсистема "Управление торговлей"
+
+
+
+
+
+
+
+ 139
+
+ 7
+
+ 1
+
+ 0
+
+
+
+
+
+
+ 140
+
+ 7
+
+ 1
+
+ 10
+
+
+ ru
+ Подсистема "Управление торговлей" обновлена до версии 11.5.27.47.
+
+
+
+
+
+
+
+ 141
+
+ 7
+
+
+ 0
+
+
+
+
+ 17
+
+
+
+
+
+ 142
+
+ 7
+
+
+ 0
+
+
+
+
+ 10
+
+
+ ru
+ Исправлены <link https://bugboard.v8.1c.ru/project/trade11>выявленные ошибки</>.
+
+
+
+
+
+
+
+ 143
+
+ 7
+
+
+ 0
+
+
+
+
+ 10
+
+
+ ru
+ Подробное описание публикуется <link https://its.1c.ru/db/updinfo#content:284:hdoc>на сайте ИТС</>.
+
+
+
+
+
+
+
+ 144
+
+ 7
+
+
+ 0
+
+
+
+
+ 10
+
+
+ ru
+ Полное описание в формате PDF можно скачать на странице версии на сайте <link https://releases.1c.ru/project/Trade110>releases.1c.ru</>
+
+
+
+
+
+
+
+ 145
+
+ 7
+
+
+ 0
+
+
+
+
+ 12
+
+
+
+
+
+ 146
+
+ 7
+
+
+ 0
+
+
+
+
+ 13
+
+
+ ru
+ НСИ
+
+
+
+
+
+
+
+ 147
+
+ 7
+
+
+ 0
+
+
+
+
+ 14
+
+
+
+
+
+ 148
+
+ 7
+
+
+ 0
+
+
+
+
+ 15
+
+
+ ru
+ Основной банковский счет
+
+
+
+
+
+
+
+ 149
+
+ 7
+
+
+ 0
+
+
+
+
+ 16
+
+
+ ru
+ В справочнике <font Almarai><fontsize 8><i><bgcolor #ffffff><color #000000>Организации</></></></></> и списке банковских счетов организации можно выбрать основной банковский счет. Реализовано заполнение банковского счета организации и контрагента в договорах и документах.
+
+
+
+
+
+
+
+ 150
+
+ 7
+
+
+ 0
+
+
+
+
+ 17
+
+
+
+
+
+ 151
+
+ 7
+
+
+ 0
+
+
+
+
+ 15
+
+
+ ru
+ Поиск, подтверждение и замена дублей НСИ
+
+
+
+
+
+
+
+ 152
+
+ 7
+
+
+ 0
+
+
+
+
+ 16
+
+
+ ru
+ Реализован новый механизм поиска, подтверждения и замены дублей в НСИ, адаптированный под сценарии использования, реализованные в прикладном решении. В рамках механизма, в том числе, поддерживаются следующие возможности:
+
+
+
+
+
+
+
+ 153
+
+ 7
+
+
+ 0
+
+
+
+
+ 16
+
+
+ ru
+ •Настраиваемые правила поиска дублей;
+
+
+
+
+
+
+
+ 154
+
+ 7
+
+
+ 0
+
+
+
+
+ 16
+
+
+ ru
+ •Возможность интерактивного запуска поиска дублей и запуска по расписанию;
+
+
+
+
+
+
+
+ 155
+
+ 7
+
+
+ 0
+
+
+
+
+ 16
+
+
+ ru
+ •Интерактивная отметка дублей в списках;
+
+
+
+
+
+
+
+ 156
+
+ 7
+
+
+ 0
+
+
+
+
+ 16
ru
@@ -1796,8 +2617,9 @@
- 113
+ 157
+ 7
0
@@ -1805,7 +2627,7 @@
- 18
+ 16
ru
@@ -1817,8 +2639,9 @@
- 114
+ 158
+ 7
0
@@ -1826,7 +2649,7 @@
- 18
+ 16
ru
@@ -1838,8 +2661,9 @@
- 115
+ 159
+ 7
0
@@ -1847,7 +2671,7 @@
- 18
+ 16
ru
@@ -1859,8 +2683,9 @@
- 116
+ 160
+ 7
0
@@ -1868,7 +2693,7 @@
- 18
+ 16
ru
@@ -1880,8 +2705,9 @@
- 117
+ 161
+ 7
0
@@ -1889,7 +2715,7 @@
- 13
+ 17
ru
@@ -1901,8 +2727,25 @@
- 118
+ 162
+ 7
+
+
+ 0
+
+
+
+
+ 17
+
+
+
+
+
+ 163
+
+ 7
0
@@ -1911,21 +2754,6 @@
13
-
-
-
-
-
- 119
-
-
-
- 0
-
-
-
-
- 15
ru
@@ -1937,8 +2765,9 @@
- 120
+ 164
+ 7
0
@@ -1946,14 +2775,15 @@
- 16
+ 14
- 121
+ 165
+ 7
0
@@ -1961,7 +2791,7 @@
- 17
+ 15
ru
@@ -1973,8 +2803,9 @@
- 122
+ 166
+ 7
0
@@ -1982,7 +2813,7 @@
- 18
+ 16
ru
@@ -1994,8 +2825,9 @@
- 123
+ 167
+ 7
0
@@ -2003,7 +2835,7 @@
- 13
+ 17
ru
@@ -2015,8 +2847,9 @@
- 124
+ 168
+ 7
0
@@ -2024,7 +2857,7 @@
- 13
+ 17
ru
@@ -2036,8 +2869,9 @@
- 125
+ 169
+ 7
0
@@ -2045,7 +2879,7 @@
- 13
+ 17
ru
@@ -2057,8 +2891,9 @@
- 126
+ 170
+ 7
0
@@ -2066,7 +2901,7 @@
- 13
+ 17
ru
@@ -2078,8 +2913,9 @@
- 127
+ 171
+ 7
0
@@ -2087,7 +2923,7 @@
- 13
+ 17
ru
@@ -2099,8 +2935,9 @@
- 128
+ 172
+ 7
0
@@ -2108,7 +2945,7 @@
- 13
+ 17
ru
@@ -2120,23 +2957,9 @@
- 129
-
-
-
- 0
-
-
-
-
- 13
-
-
-
-
-
- 130
+ 173
+ 7
0
@@ -2145,6 +2968,22 @@
17
+
+
+
+
+
+ 174
+
+ 7
+
+
+ 0
+
+
+
+
+ 15
ru
@@ -2156,8 +2995,9 @@
- 131
+ 175
+ 7
0
@@ -2165,7 +3005,7 @@
- 18
+ 16
ru
@@ -2177,23 +3017,9 @@
- 132
-
-
-
- 0
-
-
-
-
- 13
-
-
-
-
-
- 133
+ 176
+ 7
0
@@ -2202,6 +3028,22 @@
17
+
+
+
+
+
+ 177
+
+ 7
+
+
+ 0
+
+
+
+
+ 15
ru
@@ -2213,8 +3055,9 @@
- 134
+ 178
+ 7
0
@@ -2222,7 +3065,7 @@
- 18
+ 16
ru
@@ -2234,23 +3077,9 @@
- 135
-
-
-
- 0
-
-
-
-
- 13
-
-
-
-
-
- 136
+ 179
+ 7
0
@@ -2259,6 +3088,22 @@
17
+
+
+
+
+
+ 180
+
+ 7
+
+
+ 0
+
+
+
+
+ 15
ru
@@ -2270,8 +3115,9 @@
- 137
+ 181
+ 7
0
@@ -2279,7 +3125,7 @@
- 13
+ 17
ru
@@ -2291,8 +3137,9 @@
- 138
+ 182
+ 7
0
@@ -2300,7 +3147,7 @@
- 13
+ 17
ru
@@ -2312,8 +3159,9 @@
- 139
+ 183
+ 7
0
@@ -2321,7 +3169,7 @@
- 13
+ 17
ru
@@ -2333,8 +3181,9 @@
- 140
+ 184
+ 7
0
@@ -2342,7 +3191,7 @@
- 13
+ 17
ru
@@ -2354,8 +3203,9 @@
- 141
+ 185
+ 7
0
@@ -2363,7 +3213,7 @@
- 13
+ 17
ru
@@ -2375,8 +3225,9 @@
- 142
+ 186
+ 7
0
@@ -2384,7 +3235,7 @@
- 13
+ 17
ru
@@ -2396,8 +3247,9 @@
- 143
+ 187
+ 7
0
@@ -2405,7 +3257,7 @@
- 13
+ 17
ru
@@ -2417,8 +3269,9 @@
- 144
+ 188
+ 7
0
@@ -2426,7 +3279,7 @@
- 13
+ 17
ru
@@ -2438,8 +3291,25 @@
- 145
+ 189
+ 7
+
+
+ 0
+
+
+
+
+ 17
+
+
+
+
+
+ 190
+
+ 7
0
@@ -2448,21 +3318,6 @@
13
-
-
-
-
-
- 146
-
-
-
- 0
-
-
-
-
- 15
ru
@@ -2474,8 +3329,9 @@
- 147
+ 191
+ 7
0
@@ -2483,14 +3339,15 @@
- 16
+ 14
- 148
+ 192
+ 7
0
@@ -2498,7 +3355,7 @@
- 17
+ 15
ru
@@ -2510,8 +3367,9 @@
- 149
+ 193
+ 7
0
@@ -2519,7 +3377,7 @@
- 18
+ 16
ru
@@ -2531,8 +3389,9 @@
- 150
+ 194
+ 7
0
@@ -2540,7 +3399,7 @@
- 13
+ 17
ru
@@ -2552,23 +3411,9 @@
- 151
-
-
-
- 0
-
-
-
-
- 13
-
-
-
-
-
- 152
+ 195
+ 7
0
@@ -2577,6 +3422,22 @@
17
+
+
+
+
+
+ 196
+
+ 7
+
+
+ 0
+
+
+
+
+ 15
ru
@@ -2588,8 +3449,9 @@
- 153
+ 197
+ 7
0
@@ -2597,7 +3459,7 @@
- 18
+ 16
ru
@@ -2609,8 +3471,9 @@
- 154
+ 198
+ 7
0
@@ -2618,7 +3481,7 @@
- 13
+ 17
ru
@@ -2630,8 +3493,9 @@
- 155
+ 199
+ 7
0
@@ -2639,7 +3503,7 @@
- 13
+ 17
ru
@@ -2651,8 +3515,9 @@
- 156
+ 200
+ 7
0
@@ -2660,7 +3525,7 @@
- 13
+ 17
ru
@@ -2672,8 +3537,9 @@
- 157
+ 201
+ 7
0
@@ -2681,7 +3547,7 @@
- 13
+ 17
ru
@@ -2693,8 +3559,9 @@
- 158
+ 202
+ 7
0
@@ -2702,7 +3569,7 @@
- 13
+ 17
ru
@@ -2714,23 +3581,9 @@
- 159
-
-
-
- 0
-
-
-
-
- 13
-
-
-
-
-
- 160
+ 203
+ 7
0
@@ -2739,6 +3592,22 @@
17
+
+
+
+
+
+ 204
+
+ 7
+
+
+ 0
+
+
+
+
+ 15
ru
@@ -2750,8 +3619,9 @@
- 161
+ 205
+ 7
0
@@ -2759,7 +3629,7 @@
- 18
+ 16
ru
@@ -2771,8 +3641,9 @@
- 162
+ 206
+ 7
0
@@ -2780,7 +3651,7 @@
- 13
+ 17
ru
@@ -2792,8 +3663,9 @@
- 163
+ 207
+ 7
0
@@ -2801,7 +3673,7 @@
- 13
+ 17
ru
@@ -2813,8 +3685,9 @@
- 164
+ 208
+ 7
0
@@ -2822,7 +3695,7 @@
- 13
+ 17
ru
@@ -2834,23 +3707,9 @@
- 165
-
-
-
- 0
-
-
-
-
- 13
-
-
-
-
-
- 166
+ 209
+ 7
0
@@ -2859,6 +3718,22 @@
17
+
+
+
+
+
+ 210
+
+ 7
+
+
+ 0
+
+
+
+
+ 15
ru
@@ -2870,8 +3745,9 @@
- 167
+ 211
+ 7
0
@@ -2879,7 +3755,7 @@
- 18
+ 16
ru
@@ -2891,8 +3767,9 @@
- 168
+ 212
+ 7
0
@@ -2900,7 +3777,7 @@
- 13
+ 17
ru
@@ -2912,8 +3789,9 @@
- 169
+ 213
+ 7
0
@@ -2921,7 +3799,7 @@
- 13
+ 17
ru
@@ -2933,8 +3811,9 @@
- 170
+ 214
+ 7
0
@@ -2942,7 +3821,7 @@
- 13
+ 17
ru
@@ -2954,8 +3833,9 @@
- 171
+ 215
+ 7
0
@@ -2963,7 +3843,7 @@
- 13
+ 17
ru
@@ -2975,8 +3855,9 @@
- 172
+ 216
+ 7
0
@@ -2984,7 +3865,7 @@
- 13
+ 17
ru
@@ -2996,8 +3877,9 @@
- 173
+ 217
+ 7
0
@@ -3005,7 +3887,7 @@
- 13
+ 17
ru
@@ -3017,8 +3899,9 @@
- 174
+ 218
+ 7
0
@@ -3026,7 +3909,7 @@
- 13
+ 17
ru
@@ -3038,8 +3921,9 @@
- 175
+ 219
+ 7
0
@@ -3047,7 +3931,7 @@
- 13
+ 17
ru
@@ -3059,8 +3943,9 @@
- 176
+ 220
+ 7
0
@@ -3068,7 +3953,7 @@
- 13
+ 17
ru
@@ -3080,23 +3965,9 @@
- 177
-
-
-
- 0
-
-
-
-
- 13
-
-
-
-
-
- 178
+ 221
+ 7
0
@@ -3105,6 +3976,22 @@
17
+
+
+
+
+
+ 222
+
+ 7
+
+
+ 0
+
+
+
+
+ 15
ru
@@ -3116,8 +4003,9 @@
- 179
+ 223
+ 7
0
@@ -3125,7 +4013,7 @@
- 18
+ 16
ru
@@ -3137,8 +4025,9 @@
- 180
+ 224
+ 7
0
@@ -3146,7 +4035,7 @@
- 18
+ 16
ru
@@ -3158,8 +4047,9 @@
- 181
+ 225
+ 7
0
@@ -3167,7 +4057,7 @@
- 18
+ 16
ru
@@ -3179,8 +4069,9 @@
- 182
+ 226
+ 7
0
@@ -3188,7 +4079,7 @@
- 18
+ 16
ru
@@ -3200,8 +4091,9 @@
- 183
+ 227
+ 7
0
@@ -3209,7 +4101,7 @@
- 18
+ 16
ru
@@ -3221,8 +4113,9 @@
- 184
+ 228
+ 7
0
@@ -3230,7 +4123,7 @@
- 13
+ 17
ru
@@ -3242,8 +4135,9 @@
- 185
+ 229
+ 7
0
@@ -3251,7 +4145,7 @@
- 13
+ 17
ru
@@ -3263,8 +4157,25 @@
- 186
+ 230
+ 7
+
+
+ 0
+
+
+
+
+ 17
+
+
+
+
+
+ 231
+
+ 7
0
@@ -3273,21 +4184,6 @@
13
-
-
-
-
-
- 187
-
-
-
- 0
-
-
-
-
- 15
ru
@@ -3299,8 +4195,9 @@
- 188
+ 232
+ 7
0
@@ -3308,113 +4205,15 @@
- 16
+ 14
- 189
-
-
-
- 0
-
-
-
-
- 17
-
-
- ru
- Распределение продаж по направлениям деятельности
-
-
-
-
-
-
-
- 190
-
-
-
- 0
-
-
-
-
- 18
-
-
- ru
- Выполнены доработки механизма распределения продаж по направлениям деятельности:
-
-
-
-
-
-
-
- 191
-
-
-
- 0
-
-
-
-
- 13
-
-
- ru
- •настройка распределения теперь может выполняться по сегментам номенклатуры, сегментам партнеров и складам;
-
-
-
-
-
-
-
- 192
-
-
-
- 0
-
-
-
-
- 13
-
-
- ru
- •обеспечено применение настроек распределения к регистру <font Almarai><fontsize 8><i><bgcolor #ffffff><color #000000>Выручка и себестоимость продаж</></></></></> с отражением направлений деятельности в отчетах <font Almarai><fontsize 8><i><bgcolor #ffffff><color #000000>Доходы и расходы предприятия</></></></></> и <font Almarai><fontsize 8><i><bgcolor #ffffff><color #000000>Валовая прибыль предприятия</></></></></>.
-
-
-
-
-
-
-
- 193
-
-
-
- 0
-
-
-
-
- 13
-
-
-
-
-
- 194
+ 233
+ 7
0
@@ -3423,6 +4222,110 @@
15
+
+
+ ru
+ Распределение продаж по направлениям деятельности
+
+
+
+
+
+
+
+ 234
+
+ 7
+
+
+ 0
+
+
+
+
+ 16
+
+
+ ru
+ Выполнены доработки механизма распределения продаж по направлениям деятельности:
+
+
+
+
+
+
+
+ 235
+
+ 7
+
+
+ 0
+
+
+
+
+ 17
+
+
+ ru
+ •настройка распределения теперь может выполняться по сегментам номенклатуры, сегментам партнеров и складам;
+
+
+
+
+
+
+
+ 236
+
+ 7
+
+
+ 0
+
+
+
+
+ 17
+
+
+ ru
+ •обеспечено применение настроек распределения к регистру <font Almarai><fontsize 8><i><bgcolor #ffffff><color #000000>Выручка и себестоимость продаж</></></></></> с отражением направлений деятельности в отчетах <font Almarai><fontsize 8><i><bgcolor #ffffff><color #000000>Доходы и расходы предприятия</></></></></> и <font Almarai><fontsize 8><i><bgcolor #ffffff><color #000000>Валовая прибыль предприятия</></></></></>.
+
+
+
+
+
+
+
+ 237
+
+ 7
+
+
+ 0
+
+
+
+
+ 17
+
+
+
+
+
+ 238
+
+ 7
+
+
+ 0
+
+
+
+
+ 13
ru
@@ -3434,8 +4337,1093 @@
- 195
+ 239
+ 7
+
+
+ 0
+
+
+
+
+ 14
+
+
+
+
+
+ 240
+
+ 7
+
+
+ 0
+
+
+
+
+ 15
+
+
+ ru
+ Интеграция с ГосИС
+
+
+
+
+
+
+
+ 241
+
+ 7
+
+
+ 0
+
+
+
+
+ 16
+
+
+ ru
+ Реализована версия 2.0 Библиотеки интеграции с ГосИС. В рамках библиотеки реализован более гибкий подход к указанию принадлежности товаров к товарным группам маркируемой продукции и необходимости отражения в других ФГИС для отдельных карточек Номенклатуры. Классификатор видов продукции, подлежащей маркировки и отражению в других ГосИС, обновляется через интернет без необходимости обновлять конфигурацию. Предусмотрен рекомендательный механизм по определению принадлежности товара к маркировке. Реализован ряд интерфейсных улучшений.
+
+
+
+
+
+
+
+ 242
+
+ 7
+
+
+ 0
+
+
+
+
+ 17
+
+
+
+
+
+ 243
+
+ 7
+
+
+ 0
+
+
+
+
+ 15
+
+
+ ru
+ Интеграция с 1С:Документооборот
+
+
+
+
+
+
+
+ 244
+
+ 7
+
+
+ 0
+
+
+
+
+ 16
+
+
+ ru
+ <link https://its.1c.ru/db/bid304doc#content:12:hdoc>Библиотека</> интеграции с 1С:Документооборотом обновлена до версии 3.0.4.1. Реализованы следующие возможности и изменения:
+
+
+
+
+
+
+
+ 245
+
+ 7
+
+
+ 0
+
+
+
+
+ 17
+
+
+ ru
+ •В форме Документооборот добавлена возможность просмотра файлов, присоединенных к объекту 1С:Документооборота.
+
+
+
+
+
+
+
+ 246
+
+ 7
+
+
+ 0
+
+
+
+
+ 17
+
+
+ ru
+ •В форме Документооборот добавлена возможность просмотра электронных подписей объекта 1С:Документооборота.
+
+
+
+
+
+
+
+ 247
+
+ 7
+
+
+ 0
+
+
+
+
+ 17
+
+
+ ru
+ •Добавлен функционал создания квалифицированных электронных подписей документов и файлов 1С:Документооборота средствами интегрированной системы.
+
+
+
+
+
+
+
+ 248
+
+ 7
+
+
+ 0
+
+
+
+
+ 17
+
+
+ ru
+ •Реализована возможность настраивать условия применимости правил интеграции с помощью выражений на встроенном языке. Добавлена проверка, не позволяющая дублировать правила с одинаковыми условиями применимости.
+
+
+
+
+
+
+
+ 249
+
+ 7
+
+
+ 0
+
+
+
+
+ 17
+
+
+ ru
+ •Оптимизирован обмен данными. При возникновении ошибки система выделит из сообщения обмена те документы, что были отправлены без ошибок, а при повторной попытке будет отправлять только не принятые документы.
+
+
+
+
+
+
+
+ 250
+
+ 7
+
+
+ 0
+
+
+
+
+ 17
+
+
+ ru
+ •Добавлена возможность сохранения комментария к задаче до ее выполнения.
+
+
+
+
+
+
+
+ 251
+
+ 7
+
+
+ 0
+
+
+
+
+ 17
+
+
+ ru
+ •Добавлена возможность предварительного просмотра файлов PDF средствами 1С:Предприятия в веб-клиенте.
+
+
+
+
+
+
+
+ 252
+
+ 7
+
+
+ 0
+
+
+
+
+ 17
+
+
+
+
+
+ 253
+
+ 7
+
+
+ 0
+
+
+
+
+ 15
+
+
+ ru
+ Интеграция с Яндекс Маркет: передача заказов в доставку в схеме FBS
+
+
+
+
+
+
+
+ 254
+
+ 7
+
+
+ 0
+
+
+
+
+ 16
+
+
+ ru
+ Реализована возможность управлять передачей товаров в доставку до торговой площадки по модели FBS непосредственно в учетной системе 1C.
+
+
+
+
+
+
+
+ 255
+
+ 7
+
+
+ 0
+
+
+
+
+ 17
+
+
+
+
+
+ 256
+
+ 7
+
+
+ 0
+
+
+
+
+ 15
+
+
+ ru
+ Интеграция с торговой площадкой Bidzaar
+
+
+
+
+
+
+
+ 257
+
+ 7
+
+
+ 0
+
+
+
+
+ 16
+
+
+ ru
+ Реализованы новые возможности интеграции 1С с торговой площадкой Bidzaar:
+
+
+
+
+
+
+
+ 258
+
+ 7
+
+
+ 0
+
+
+
+
+ 17
+
+
+ ru
+ •загрузка из Excel списка закупаемых товаров и услуг;
+
+
+
+
+
+
+
+ 259
+
+ 7
+
+
+ 0
+
+
+
+
+ 17
+
+
+ ru
+ •механизм анкетирования для закупочной процедуры;
+
+
+
+
+
+
+
+ 260
+
+ 7
+
+
+ 0
+
+
+
+
+ 17
+
+
+ ru
+ •корректировка запроса коммерческих предложений после публикации на торговой площадке;
+
+
+
+
+
+
+
+ 261
+
+ 7
+
+
+ 0
+
+
+
+
+ 17
+
+
+ ru
+ •использования тестового контура этп Бидзаар;
+
+
+
+
+
+
+
+ 262
+
+ 7
+
+
+ 0
+
+
+
+
+ 17
+
+
+ ru
+ •использование тэгов для участия в поисковых запросах;
+
+
+
+
+
+
+
+ 263
+
+ 7
+
+
+ 0
+
+
+
+
+ 17
+
+
+ ru
+ •гибкий процесс формирования контактной информации.
+
+
+
+
+
+
+
+ 264
+
+ 7
+
+
+ 0
+
+
+
+
+ 17
+
+
+
+
+
+ 265
+
+ 7
+
+
+ 0
+
+
+
+
+ 15
+
+
+ ru
+ Обмен электронными документами
+
+
+
+
+
+
+
+ 266
+
+ 7
+
+
+ 0
+
+
+
+
+ 16
+
+
+ ru
+ Библиотека электронного документооборота обновлена до версии <link https://dl04.1c.ru/content/LED/1_9_16_30/news.htm>1.9.16</>.
+
+
+
+
+
+
+
+ 267
+
+ 7
+
+
+ 0
+
+
+
+
+ 17
+
+
+
+
+
+ 268
+
+ 7
+
+
+ 0
+
+
+
+
+ 15
+
+
+ ru
+ Сервис 1С:Плюс
+
+
+
+
+
+
+
+ 269
+
+ 7
+
+
+ 0
+
+
+
+
+ 16
+
+
+ ru
+ Интегрирован сервис «1С:Плюс», который обеспечивает доступ к расширениям и позволяет добавить новые функциональные возможности, а также или настроить имеющиеся механизмы в информационной базе 1С.
+
+
+
+
+
+
+
+ 270
+
+ 7
+
+
+ 0
+
+
+
+
+ 17
+
+
+
+
+
+ 271
+
+ 7
+
+
+ 0
+
+
+
+
+ 15
+
+
+ ru
+ Универсальный обмен
+
+
+
+
+
+
+
+ 272
+
+ 7
+
+
+ 0
+
+
+
+
+ 16
+
+
+ ru
+ В рамках актуальной версии универсального обмена 1.22 реализована, в том числе, следующие возможности:
+
+
+
+
+
+
+
+ 273
+
+ 7
+
+
+ 0
+
+
+
+
+ 17
+
+
+ ru
+ •Реализован обмен документом <font Almarai><fontsize 8><i><bgcolor #ffffff><color #000000>Сторно</></></></></>.
+
+
+
+
+
+
+
+ 274
+
+ 7
+
+
+ 0
+
+
+
+
+ 17
+
+
+ ru
+ •Поддержана передача данных об акцизах и корректного проведения документа <font Almarai><fontsize 8><i><bgcolor #ffffff><color #000000>Поступление товаров у услуг</></></></></> в конфигурациях-приемниках.
+
+
+
+
+
+
+
+ 275
+
+ 7
+
+
+ 0
+
+
+
+
+ 17
+
+
+ ru
+ •Расширен список необходимых для передачи полей для объекта документ <font Almarai><fontsize 8><i><bgcolor #ffffff><color #000000>Заявление о ввозе товаров</></></></></>.
+
+
+
+
+
+
+
+ 276
+
+ 7
+
+
+ 0
+
+
+
+
+ 17
+
+
+ ru
+ •Подержан обмен данными о рецепте в чеке ККМ при розничных продажах ветеринарных препаратов.
+
+
+
+
+
+
+
+ 277
+
+ 7
+
+
+ 0
+
+
+
+
+ 17
+
+
+ ru
+ •При выгрузке номенклатуры и характеристик номенклатуры передаются данные о принципале.
+
+
+
+
+
+
+
+ 278
+
+ 7
+
+
+ 0
+
+
+
+
+ 17
+
+
+ ru
+ •Добавлена возможность обмена документами <font Almarai><fontsize 8><i><bgcolor #ffffff><color #000000>Отгрузка товаров клиенту</></></></></>.
+
+
+
+
+
+
+
+ 279
+
+ 7
+
+
+ 0
+
+
+
+
+ 17
+
+
+ ru
+ •Добавить возможность принимать и отправлять контактную информацию в JSON.
+
+
+
+
+
+
+
+ 280
+
+ 7
+
+
+ 0
+
+
+
+
+ 17
+
+
+ ru
+ •Поддержана отправка и получение новых значений видов продукции ГосИС.
+
+
+
+
+
+
+
+ 281
+
+ 7
+
+
+ 0
+
+
+
+
+ 17
+
+
+ ru
+ •Обеспечена передача данных об авансовых счетах-фактурах между конфигурациями.
+
+
+
+
+
+
+
+ 282
+
+ 7
+
+
+ 0
+
+
+
+
+ 17
+
+
+
+
+
+ 283
+
+ 7
+
+
+ 0
+
+
+
+
+ 15
+
+
+ ru
+ Стандартные подсистемы
+
+
+
+
+
+
+
+ 284
+
+ 7
+
+
+ 0
+
+
+
+
+ 16
+
+
+ ru
+ Библиотека стандартных подсистем обновлена до версии <link https://its.1c.ru/db/updlib#content:3:hdoc:%D0%B2%D0%B5%D1%80%D1%81%D0%B8%D1%8F-3.1.12>3.1.12</>
+
+
+
+
+
+
+
+ 285
+
+ 7
+
+
+ 0
+
+
+
+
+ 17
+
+
+
+
+
+ 286
+
+ 7
+
+
+ 0
+
+
+
+
+ 15
+
+
+ ru
+ Интернет-поддержка пользователей
+
+
+
+
+
+
+
+ 287
+
+ 7
+
+
+ 0
+
+
+
+
+ 16
+
+
+ ru
+ Библиотека интернет-поддержки пользователей обновлена до версии <link https://dl03.1c.ru/content/ISL/2_8_4_29/news.htm>2.8.4</>.
+
+
+
+
+
+
+
+ 288
+
+ 7
+
+
+ 0
+
+
+
+
+ 17
+
+
+
+
+
+ 289
+
+ 7
+
+
+ 0
+
+
+
+
+ 15
+
+
+ ru
+ Распознавание чеков
+
+
+
+
+
+
+
+ 290
+
+ 7
+
+
+ 0
+
+
+
+
+ 16
+
+
+ ru
+ Поддержано распознавание кассовых чеков и формирование на их основе авансовых отчетов.
+
+
+
+
+
+
+
+ 291
+
+ 7
0
@@ -3449,1039 +5437,7 @@
- 196
-
-
-
- 0
-
-
-
-
- 17
-
-
- ru
- Интеграция с ГосИС
-
-
-
-
-
-
-
- 197
-
-
-
- 0
-
-
-
-
- 18
-
-
- ru
- Реализована версия 2.0 Библиотеки интеграции с ГосИС. В рамках библиотеки реализован более гибкий подход к указанию принадлежности товаров к товарным группам маркируемой продукции и необходимости отражения в других ФГИС для отдельных карточек Номенклатуры. Классификатор видов продукции, подлежащей маркировки и отражению в других ГосИС, обновляется через интернет без необходимости обновлять конфигурацию. Предусмотрен рекомендательный механизм по определению принадлежности товара к маркировке. Реализован ряд интерфейсных улучшений.
-
-
-
-
-
-
-
- 198
-
-
-
- 0
-
-
-
-
- 13
-
-
-
-
-
- 199
-
-
-
- 0
-
-
-
-
- 17
-
-
- ru
- Интеграция с 1С:Документооборот
-
-
-
-
-
-
-
- 200
-
-
-
- 0
-
-
-
-
- 18
-
-
- ru
- <link https://its.1c.ru/db/bid304doc#content:12:hdoc>Библиотека</> интеграции с 1С:Документооборотом обновлена до версии 3.0.4.1. Реализованы следующие возможности и изменения:
-
-
-
-
-
-
-
- 201
-
-
-
- 0
-
-
-
-
- 13
-
-
- ru
- •В форме Документооборот добавлена возможность просмотра файлов, присоединенных к объекту 1С:Документооборота.
-
-
-
-
-
-
-
- 202
-
-
-
- 0
-
-
-
-
- 13
-
-
- ru
- •В форме Документооборот добавлена возможность просмотра электронных подписей объекта 1С:Документооборота.
-
-
-
-
-
-
-
- 203
-
-
-
- 0
-
-
-
-
- 13
-
-
- ru
- •Добавлен функционал создания квалифицированных электронных подписей документов и файлов 1С:Документооборота средствами интегрированной системы.
-
-
-
-
-
-
-
- 204
-
-
-
- 0
-
-
-
-
- 13
-
-
- ru
- •Реализована возможность настраивать условия применимости правил интеграции с помощью выражений на встроенном языке. Добавлена проверка, не позволяющая дублировать правила с одинаковыми условиями применимости.
-
-
-
-
-
-
-
- 205
-
-
-
- 0
-
-
-
-
- 13
-
-
- ru
- •Оптимизирован обмен данными. При возникновении ошибки система выделит из сообщения обмена те документы, что были отправлены без ошибок, а при повторной попытке будет отправлять только не принятые документы.
-
-
-
-
-
-
-
- 206
-
-
-
- 0
-
-
-
-
- 13
-
-
- ru
- •Добавлена возможность сохранения комментария к задаче до ее выполнения.
-
-
-
-
-
-
-
- 207
-
-
-
- 0
-
-
-
-
- 13
-
-
- ru
- •Добавлена возможность предварительного просмотра файлов PDF средствами 1С:Предприятия в веб-клиенте.
-
-
-
-
-
-
-
- 208
-
-
-
- 0
-
-
-
-
- 13
-
-
-
-
-
- 209
-
-
-
- 0
-
-
-
-
- 17
-
-
- ru
- Интеграция с Яндекс Маркет: передача заказов в доставку в схеме FBS
-
-
-
-
-
-
-
- 210
-
-
-
- 0
-
-
-
-
- 18
-
-
- ru
- Реализована возможность управлять передачей товаров в доставку до торговой площадки по модели FBS непосредственно в учетной системе 1C.
-
-
-
-
-
-
-
- 211
-
-
-
- 0
-
-
-
-
- 13
-
-
-
-
-
- 212
-
-
-
- 0
-
-
-
-
- 17
-
-
- ru
- Интеграция с торговой площадкой Bidzaar
-
-
-
-
-
-
-
- 213
-
-
-
- 0
-
-
-
-
- 18
-
-
- ru
- Реализованы новые возможности интеграции 1С с торговой площадкой Bidzaar:
-
-
-
-
-
-
-
- 214
-
-
-
- 0
-
-
-
-
- 13
-
-
- ru
- •загрузка из Excel списка закупаемых товаров и услуг;
-
-
-
-
-
-
-
- 215
-
-
-
- 0
-
-
-
-
- 13
-
-
- ru
- •механизм анкетирования для закупочной процедуры;
-
-
-
-
-
-
-
- 216
-
-
-
- 0
-
-
-
-
- 13
-
-
- ru
- •корректировка запроса коммерческих предложений после публикации на торговой площадке;
-
-
-
-
-
-
-
- 217
-
-
-
- 0
-
-
-
-
- 13
-
-
- ru
- •использования тестового контура этп Бидзаар;
-
-
-
-
-
-
-
- 218
-
-
-
- 0
-
-
-
-
- 13
-
-
- ru
- •использование тэгов для участия в поисковых запросах;
-
-
-
-
-
-
-
- 219
-
-
-
- 0
-
-
-
-
- 13
-
-
- ru
- •гибкий процесс формирования контактной информации.
-
-
-
-
-
-
-
- 220
-
-
-
- 0
-
-
-
-
- 13
-
-
-
-
-
- 221
-
-
-
- 0
-
-
-
-
- 17
-
-
- ru
- Обмен электронными документами
-
-
-
-
-
-
-
- 222
-
-
-
- 0
-
-
-
-
- 18
-
-
- ru
- Библиотека электронного документооборота обновлена до версии <link https://dl04.1c.ru/content/LED/1_9_16_30/news.htm>1.9.16</>.
-
-
-
-
-
-
-
- 223
-
-
-
- 0
-
-
-
-
- 13
-
-
-
-
-
- 224
-
-
-
- 0
-
-
-
-
- 17
-
-
- ru
- Сервис 1С:Плюс
-
-
-
-
-
-
-
- 225
-
-
-
- 0
-
-
-
-
- 18
-
-
- ru
- Интегрирован сервис «1С:Плюс», который обеспечивает доступ к расширениям и позволяет добавить новые функциональные возможности, а также или настроить имеющиеся механизмы в информационной базе 1С.
-
-
-
-
-
-
-
- 226
-
-
-
- 0
-
-
-
-
- 13
-
-
-
-
-
- 227
-
-
-
- 0
-
-
-
-
- 17
-
-
- ru
- Универсальный обмен
-
-
-
-
-
-
-
- 228
-
-
-
- 0
-
-
-
-
- 18
-
-
- ru
- В рамках актуальной версии универсального обмена 1.22 реализована, в том числе, следующие возможности:
-
-
-
-
-
-
-
- 229
-
-
-
- 0
-
-
-
-
- 13
-
-
- ru
- •Реализован обмен документом <font Almarai><fontsize 8><i><bgcolor #ffffff><color #000000>Сторно</></></></></>.
-
-
-
-
-
-
-
- 230
-
-
-
- 0
-
-
-
-
- 13
-
-
- ru
- •Поддержана передача данных об акцизах и корректного проведения документа <font Almarai><fontsize 8><i><bgcolor #ffffff><color #000000>Поступление товаров у услуг</></></></></> в конфигурациях-приемниках.
-
-
-
-
-
-
-
- 231
-
-
-
- 0
-
-
-
-
- 13
-
-
- ru
- •Расширен список необходимых для передачи полей для объекта документ <font Almarai><fontsize 8><i><bgcolor #ffffff><color #000000>Заявление о ввозе товаров</></></></></>.
-
-
-
-
-
-
-
- 232
-
-
-
- 0
-
-
-
-
- 13
-
-
- ru
- •Подержан обмен данными о рецепте в чеке ККМ при розничных продажах ветеринарных препаратов.
-
-
-
-
-
-
-
- 233
-
-
-
- 0
-
-
-
-
- 13
-
-
- ru
- •При выгрузке номенклатуры и характеристик номенклатуры передаются данные о принципале.
-
-
-
-
-
-
-
- 234
-
-
-
- 0
-
-
-
-
- 13
-
-
- ru
- •Добавлена возможность обмена документами <font Almarai><fontsize 8><i><bgcolor #ffffff><color #000000>Отгрузка товаров клиенту</></></></></>.
-
-
-
-
-
-
-
- 235
-
-
-
- 0
-
-
-
-
- 13
-
-
- ru
- •Добавить возможность принимать и отправлять контактную информацию в JSON.
-
-
-
-
-
-
-
- 236
-
-
-
- 0
-
-
-
-
- 13
-
-
- ru
- •Поддержана отправка и получение новых значений видов продукции ГосИС.
-
-
-
-
-
-
-
- 237
-
-
-
- 0
-
-
-
-
- 13
-
-
- ru
- •Обеспечена передача данных об авансовых счетах-фактурах между конфигурациями.
-
-
-
-
-
-
-
- 238
-
-
-
- 0
-
-
-
-
- 13
-
-
-
-
-
- 239
-
-
-
- 0
-
-
-
-
- 17
-
-
- ru
- Стандартные подсистемы
-
-
-
-
-
-
-
- 240
-
-
-
- 0
-
-
-
-
- 18
-
-
- ru
- Библиотека стандартных подсистем обновлена до версии <link https://its.1c.ru/db/updlib#content:3:hdoc:%D0%B2%D0%B5%D1%80%D1%81%D0%B8%D1%8F-3.1.12>3.1.12</>
-
-
-
-
-
-
-
- 241
-
-
-
- 0
-
-
-
-
- 13
-
-
-
-
-
- 242
-
-
-
- 0
-
-
-
-
- 17
-
-
- ru
- Интернет-поддержка пользователей
-
-
-
-
-
-
-
- 243
-
-
-
- 0
-
-
-
-
- 18
-
-
- ru
- Библиотека интернет-поддержки пользователей обновлена до версии <link https://dl03.1c.ru/content/ISL/2_8_4_29/news.htm>2.8.4</>.
-
-
-
-
-
-
-
- 244
-
-
-
- 0
-
-
-
-
- 13
-
-
-
-
-
- 245
-
-
-
- 0
-
-
-
-
- 17
-
-
- ru
- Распознавание чеков
-
-
-
-
-
-
-
- 246
-
-
-
- 0
-
-
-
-
- 18
-
-
- ru
- Поддержано распознавание кассовых чеков и формирование на их основе авансовых отчетов.
-
-
-
-
-
-
-
- 247
-
-
-
- 0
-
-
-
-
- 18
-
-
-
-
-
- 248
+ 292
1
@@ -4492,7 +5448,7 @@
- 249
+ 293
@@ -4513,7 +5469,7 @@
- 250
+ 294
7
@@ -4525,7 +5481,7 @@
- 251
+ 295
7
@@ -4543,7 +5499,7 @@
- 252
+ 296
7
@@ -4555,7 +5511,7 @@
- 253
+ 297
7
@@ -4573,7 +5529,7 @@
- 254
+ 298
7
@@ -4585,7 +5541,7 @@
- 255
+ 299
7
@@ -4603,7 +5559,7 @@
- 256
+ 300
7
@@ -4615,7 +5571,7 @@
- 257
+ 301
7
@@ -4633,7 +5589,7 @@
- 258
+ 302
7
@@ -4645,7 +5601,7 @@
- 259
+ 303
7
@@ -4663,7 +5619,7 @@
- 260
+ 304
7
@@ -4675,7 +5631,7 @@
- 261
+ 305
7
@@ -4687,7 +5643,7 @@
- 262
+ 306
7
@@ -4705,7 +5661,7 @@
- 263
+ 307
7
@@ -4718,7 +5674,7 @@
- 264
+ 308
7
@@ -4736,7 +5692,45 @@
- 265
+ 309
+
+ 7
+
+
+ 0
+
+
+
+
+ 12
+
+
+
+
+
+ 310
+
+ 7
+
+
+ 0
+
+
+
+
+ 13
+
+
+ ru
+ Казначейство
+
+
+
+
+
+
+
+ 311
7
@@ -4752,7 +5746,7 @@
- 266
+ 312
7
@@ -4766,7 +5760,7 @@
ru
- Казначейство
+ Платежи в бюджет
@@ -4774,7 +5768,7 @@
- 267
+ 313
7
@@ -4785,44 +5779,6 @@
16
-
-
-
-
-
- 268
-
- 7
-
-
- 0
-
-
-
-
- 17
-
-
- ru
- Платежи в бюджет
-
-
-
-
-
-
-
- 269
-
- 7
-
-
- 0
-
-
-
-
- 18
ru
@@ -4834,7 +5790,7 @@
- 270
+ 314
7
@@ -4844,13 +5800,13 @@
- 13
+ 17
- 271
+ 315
7
@@ -4872,7 +5828,7 @@
- 272
+ 316
7
@@ -4894,7 +5850,7 @@
- 273
+ 317
7
@@ -4916,7 +5872,7 @@
- 274
+ 318
7
@@ -4926,13 +5882,13 @@
- 13
+ 17
- 275
+ 319
1
@@ -4943,7 +5899,7 @@
- 276
+ 320
@@ -4964,7 +5920,7 @@
- 277
+ 321
7
@@ -4976,7 +5932,7 @@
- 278
+ 322
7
@@ -4988,7 +5944,7 @@
- 279
+ 323
7
@@ -5006,7 +5962,7 @@
- 280
+ 324
7
@@ -5019,7 +5975,7 @@
- 281
+ 325
7
@@ -5037,7 +5993,7 @@
- 282
+ 326
7
@@ -5049,7 +6005,7 @@
- 283
+ 327
7
@@ -5067,7 +6023,7 @@
- 284
+ 328
7
@@ -5085,7 +6041,7 @@
- 285
+ 329
7
@@ -5107,7 +6063,7 @@
- 286
+ 330
1
@@ -5118,7 +6074,7 @@
- 287
+ 331
@@ -5139,7 +6095,7 @@
- 288
+ 332
7
@@ -5151,7 +6107,7 @@
- 289
+ 333
7
@@ -5163,7 +6119,7 @@
- 290
+ 334
7
@@ -5181,7 +6137,7 @@
- 291
+ 335
7
@@ -5194,7 +6150,7 @@
- 292
+ 336
7
@@ -5212,7 +6168,7 @@
- 293
+ 337
7
@@ -5224,7 +6180,7 @@
- 294
+ 338
7
@@ -5242,7 +6198,7 @@
- 295
+ 339
7
@@ -5260,7 +6216,7 @@
- 296
+ 340
7
@@ -5282,7 +6238,45 @@
- 297
+ 341
+
+ 7
+
+
+ 0
+
+
+
+
+ 12
+
+
+
+
+
+ 342
+
+ 7
+
+
+ 0
+
+
+
+
+ 13
+
+
+ ru
+ Новое в версии 11.5.26.113
+
+
+
+
+
+
+
+ 343
7
@@ -5298,7 +6292,7 @@
- 298
+ 344
7
@@ -5308,45 +6302,7 @@
- 15
-
-
- ru
- Новое в версии 11.5.26.113
-
-
-
-
-
-
-
- 299
-
- 7
-
-
- 0
-
-
-
-
- 16
-
-
-
-
-
- 300
-
- 7
-
-
- 0
-
-
-
-
- 15
+ 13
ru
@@ -5358,7 +6314,7 @@
- 301
+ 345
7
@@ -5368,13 +6324,13 @@
- 16
+ 14
- 302
+ 346
7
@@ -5384,7 +6340,7 @@
- 17
+ 15
ru
@@ -5396,7 +6352,7 @@
- 303
+ 347
7
@@ -5406,7 +6362,7 @@
- 18
+ 16
ru
@@ -5418,7 +6374,7 @@
- 304
+ 348
7
@@ -5428,7 +6384,7 @@
- 18
+ 16
ru
@@ -5440,7 +6396,7 @@
- 305
+ 349
7
@@ -5450,13 +6406,13 @@
- 16
+ 14
- 306
+ 350
7
@@ -5466,7 +6422,7 @@
- 17
+ 15
ru
@@ -5478,7 +6434,7 @@
- 307
+ 351
7
@@ -5488,7 +6444,7 @@
- 13
+ 17
ru
@@ -5500,7 +6456,7 @@
- 308
+ 352
1
@@ -5511,7 +6467,7 @@
- 309
+ 353
@@ -5532,7 +6488,7 @@
- 310
+ 354
7
@@ -5544,7 +6500,7 @@
- 311
+ 355
7
@@ -5556,7 +6512,7 @@
- 312
+ 356
7
@@ -5574,7 +6530,7 @@
- 313
+ 357
7
@@ -5587,7 +6543,7 @@
- 314
+ 358
7
@@ -5605,7 +6561,7 @@
- 315
+ 359
7
@@ -5617,7 +6573,7 @@
- 316
+ 360
7
@@ -5635,7 +6591,7 @@
- 317
+ 361
7
@@ -5653,7 +6609,7 @@
- 318
+ 362
7
@@ -5675,7 +6631,45 @@
- 319
+ 363
+
+ 7
+
+
+ 0
+
+
+
+
+ 12
+
+
+
+
+
+ 364
+
+ 7
+
+
+ 0
+
+
+
+
+ 13
+
+
+ ru
+ Новое в версии 11.5.26.110
+
+
+
+
+
+
+
+ 365
7
@@ -5691,7 +6685,7 @@
- 320
+ 366
7
@@ -5701,45 +6695,7 @@
- 15
-
-
- ru
- Новое в версии 11.5.26.110
-
-
-
-
-
-
-
- 321
-
- 7
-
-
- 0
-
-
-
-
- 16
-
-
-
-
-
- 322
-
- 7
-
-
- 0
-
-
-
-
- 15
+ 13
ru
@@ -5751,7 +6707,23 @@
- 323
+ 367
+
+ 7
+
+
+ 0
+
+
+
+
+ 14
+
+
+
+
+
+ 368
7
@@ -5762,22 +6734,6 @@
16
-
-
-
-
-
- 324
-
- 7
-
-
- 0
-
-
-
-
- 18
ru
@@ -5789,7 +6745,7 @@
- 325
+ 369
7
@@ -5799,7 +6755,7 @@
- 16
+ 14
ru
@@ -5811,7 +6767,7 @@
- 326
+ 370
7
@@ -5821,7 +6777,7 @@
- 16
+ 14
ru
@@ -5833,7 +6789,7 @@
- 327
+ 371
7
@@ -5843,7 +6799,7 @@
- 16
+ 14
ru
@@ -5855,7 +6811,7 @@
- 328
+ 372
7
@@ -5865,7 +6821,7 @@
- 16
+ 14
ru
@@ -5877,7 +6833,7 @@
- 329
+ 373
7
@@ -5887,13 +6843,51 @@
- 16
+ 14
- 330
+ 374
+
+ 7
+
+
+ 0
+
+
+
+
+ 13
+
+
+ ru
+ Сервисные возможности и настройки интеграции
+
+
+
+
+
+
+
+ 375
+
+ 7
+
+
+ 0
+
+
+
+
+ 14
+
+
+
+
+
+ 376
7
@@ -5907,7 +6901,7 @@
ru
- Сервисные возможности и настройки интеграции
+ Стандартные подсистемы
@@ -5915,23 +6909,7 @@
- 331
-
- 7
-
-
- 0
-
-
-
-
- 16
-
-
-
-
-
- 332
+ 377
7
@@ -5942,28 +6920,6 @@
17
-
-
- ru
- Стандартные подсистемы
-
-
-
-
-
-
-
- 333
-
- 7
-
-
- 0
-
-
-
-
- 13
ru
@@ -5975,7 +6931,7 @@
- 334
+ 378
1
@@ -5986,7 +6942,7 @@
- 335
+ 379
@@ -6007,7 +6963,7 @@
- 336
+ 380
7
@@ -6019,7 +6975,7 @@
- 337
+ 381
7
@@ -6037,7 +6993,7 @@
- 338
+ 382
7
@@ -6049,7 +7005,7 @@
- 339
+ 383
7
@@ -6067,7 +7023,7 @@
- 340
+ 384
7
@@ -6079,7 +7035,7 @@
- 341
+ 385
7
@@ -6097,7 +7053,7 @@
- 342
+ 386
7
@@ -6109,7 +7065,7 @@
- 343
+ 387
7
@@ -6127,7 +7083,7 @@
- 344
+ 388
7
@@ -6139,7 +7095,7 @@
- 345
+ 389
7
@@ -6157,7 +7113,7 @@
- 346
+ 390
7
@@ -6169,7 +7125,7 @@
- 347
+ 391
7
@@ -6187,7 +7143,7 @@
- 348
+ 392
7
@@ -6199,7 +7155,7 @@
- 349
+ 393
7
@@ -6222,7 +7178,7 @@
- 350
+ 394
7
@@ -6234,7 +7190,7 @@
- 351
+ 395
7
@@ -6252,7 +7208,7 @@
- 352
+ 396
7
@@ -6264,7 +7220,7 @@
- 353
+ 397
7
@@ -6282,7 +7238,7 @@
- 354
+ 398
7
@@ -6294,7 +7250,7 @@
- 355
+ 399
7
@@ -6312,7 +7268,7 @@
- 356
+ 400
7
@@ -6324,7 +7280,7 @@
- 357
+ 401
7
@@ -6342,7 +7298,7 @@
- 358
+ 402
7
@@ -6354,7 +7310,7 @@
- 359
+ 403
7
@@ -6372,7 +7328,7 @@
- 360
+ 404
7
@@ -6384,7 +7340,7 @@
- 361
+ 405
7
@@ -6402,7 +7358,7 @@
- 362
+ 406
7
@@ -6414,7 +7370,7 @@
- 363
+ 407
7
@@ -6432,7 +7388,7 @@
- 364
+ 408
7
@@ -6444,7 +7400,7 @@
- 365
+ 409
7
@@ -6462,7 +7418,7 @@
- 366
+ 410
7
@@ -6474,7 +7430,7 @@
- 367
+ 411
7
@@ -6492,7 +7448,7 @@
- 368
+ 412
7
@@ -6504,7 +7460,7 @@
- 369
+ 413
7
@@ -6522,7 +7478,7 @@
- 370
+ 414
7
@@ -6535,7 +7491,7 @@
- 371
+ 415
7
@@ -6553,7 +7509,7 @@
- 372
+ 416
7
@@ -6565,7 +7521,7 @@
- 373
+ 417
7
@@ -6583,7 +7539,7 @@
- 374
+ 418
7
@@ -6601,7 +7557,7 @@
- 375
+ 419
7
@@ -6622,914 +7578,6 @@
-
- 376
-
- 7
-
-
- 0
-
-
-
-
- 14
-
-
-
-
-
- 377
-
- 7
-
-
- 0
-
-
-
-
- 15
-
-
- ru
- Новое в версии 11.5.26.106
-
-
-
-
-
-
-
- 378
-
- 7
-
-
- 0
-
-
-
-
- 16
-
-
-
-
-
- 379
-
- 7
-
-
- 0
-
-
-
-
- 15
-
-
- ru
- Интеграция с ГИС МТ ("Честный знак")
-
-
-
-
-
-
-
- 380
-
- 7
-
-
- 0
-
-
-
-
- 16
-
-
-
-
-
- 381
-
- 7
-
-
- 0
-
-
-
-
- 17
-
-
- ru
- Описание товаров в "Национальном каталоге"
-
-
-
-
-
-
-
- 382
-
- 7
-
-
- 0
-
-
-
-
- 18
-
-
- ru
- Поддержано подписание карточек товаров, прошедших модерацию в "Национальном каталоге", непосредственно в прикладном решении, без использования личного кабинета "Честного знака".
-
-
-
-
-
-
-
- 383
-
- 7
-
-
- 0
-
-
-
-
- 16
-
-
-
-
-
- 384
-
- 7
-
-
- 0
-
-
-
-
- 17
-
-
- ru
- Изменение состава товарных групп
-
-
-
-
-
-
-
- 385
-
- 7
-
-
- 0
-
-
-
-
- 13
-
-
- ru
- Добавлены новые товарные группы:
-
-
-
-
-
-
-
- 386
-
- 7
-
-
- 0
-
-
-
-
- 13
-
-
- ru
- •"Натуральный мех" - для работы с меховыми изделиями по новым правилам (Постановлению Правительства РФ от 31.01.2026 № 75)
-
-
-
-
-
-
-
- 387
-
- 7
-
-
- 0
-
-
-
-
- 18
-
-
- ru
- •"Товары легкой промышленности и одежда 2026" - для работы с товарам, на которые распространено требование маркировки с 01.03.2026 (Постановлению Правительства РФ от 25.12.2025 г. № 2129).
-
-
-
-
-
-
-
- 388
-
- 7
-
-
- 0
-
-
-
-
- 16
-
-
-
-
-
- 389
-
- 7
-
-
- 0
-
-
-
-
- 17
-
-
- ru
- Поддержка версии 2.х Локального модуля "Честного знака"
-
-
-
-
-
-
-
- 390
-
- 7
-
-
- 0
-
-
-
-
- 13
-
-
- ru
- Реализована возможность работы с Локальными модулями версий V1 и новой версии V2.
-
-
-
-
-
-
-
- 391
-
- 7
-
-
- 0
-
-
-
-
- 13
-
-
- ru
- Реализован контроль минимальной розничной цены, возвращаемой ГИС МТ в разрешительном режиме, по никотиносодержащей продукции при пробитии чека. Контроль возможен только с версии ЛМ 2.х.
-
-
-
-
-
-
-
- 392
-
- 7
-
-
- 0
-
-
-
-
- 13
-
-
-
-
-
- 393
-
- 7
-
-
- 0
-
-
-
-
- 17
-
-
- ru
- Учет ветеринарных препаратов по местам осуществления деятельности
-
-
-
-
-
-
-
- 394
-
- 7
-
-
- 0
-
-
-
-
- 13
-
-
- ru
- Поддержаны требования по указания места осуществления деятельности (МОД) (Постановления Правительства РФ от 27 мая 2024 г №675) по товарной группе "Ветеринарные препараты" между филиалами или складами одного предприятия и при отгрузке сторонним организациям.
-
-
-
-
-
-
-
- 395
-
- 7
-
-
- 0
-
-
-
-
- 13
-
-
-
-
-
- 396
-
- 7
-
-
- 0
-
-
-
-
- 15
-
-
- ru
- Продажи, Закупки, Склад
-
-
-
-
-
-
-
- 397
-
- 7
-
-
- 0
-
-
-
-
- 16
-
-
-
-
-
- 398
-
- 7
-
-
- 0
-
-
-
-
- 17
-
-
- ru
- Контроль качества
-
-
-
-
-
-
-
- 399
-
- 7
-
-
- 0
-
-
-
-
- 18
-
-
- ru
- Реализована функциональность контроля качества товаров, включающая следующие возможности:
-
-
-
-
-
-
-
- 400
-
- 7
-
-
- 0
-
-
-
-
- 14
-
-
- ru
- •Организация входного контроля качества товаров по настройкам и по требованию.
-
-
-
-
-
-
-
- 401
-
- 7
-
-
- 0
-
-
-
-
- 14
-
-
- ru
- •Блокировка товаров, подлежащих контролю качества, для исключения отгрузки некачественных партий потребителям.
-
-
-
-
-
-
-
- 402
-
- 7
-
-
- 0
-
-
-
-
- 14
-
-
- ru
- •Распоряжения на проведение контроля.
-
-
-
-
-
-
-
- 403
-
- 7
-
-
- 0
-
-
-
-
- 14
-
-
- ru
- •Акты контроля.
-
-
-
-
-
-
-
- 404
-
- 7
-
-
- 0
-
-
-
-
- 14
-
-
- ru
- •Карты исследований, описывающие нормативы проведения исследований качества.
-
-
-
-
-
-
-
- 405
-
- 7
-
-
- 0
-
-
-
-
- 16
-
-
- ru
- •Проведение исследований с фиксацией результатов.
-
-
-
-
-
-
-
- 406
-
- 7
-
-
- 0
-
-
-
-
- 16
-
-
-
-
-
- 407
-
- 7
-
-
- 0
-
-
-
-
- 17
-
-
- ru
- Заявки на закупку и обеспечение
-
-
-
-
-
-
-
- 408
-
- 7
-
-
- 0
-
-
-
-
- 18
-
-
- ru
- Реализованы новые документы <font Almarai><fontsize 8><i><bgcolor #ffffff><color #000000>Заявка на обеспечение</></></></></> и <font Almarai><fontsize 8><i><bgcolor #ffffff><color #000000>Заявка на закупку</></></></></> с целью:
-
-
-
-
-
-
-
- 409
-
- 7
-
-
- 0
-
-
-
-
- 16
-
-
- ru
- •Разделить функции логиста, принимающего решения о необходимости обеспечения с помощью закупки той или иной позиции. И закупщиков, ведающих поставщиками, ценами, и другими условиями закупок.
-
-
-
-
-
-
-
- 410
-
- 7
-
-
- 0
-
-
-
-
- 16
-
-
- ru
- •Формировать потребность в закупке при неизвестном поставщике, и/или неизвестных, возможно, ориентировочных ценах.
-
-
-
-
-
-
-
- 411
-
- 7
-
-
- 0
-
-
-
-
- 16
-
-
- ru
- •Согласовывать потребности закупки до того как выбраны поставщики и потребность разделена на заказы поставщикам. Оперировать предварительными ценами.
-
-
-
-
-
-
-
- 412
-
- 7
-
-
- 0
-
-
-
-
- 16
-
-
- ru
- •Передавать согласованную потребность в отдел закупки для формирования заказов поставщикам.
-
-
-
-
-
-
-
- 413
-
- 7
-
-
- 0
-
-
-
-
- 16
-
-
- ru
- •Определять, какой менеджер должен обеспечивать потребность по каждой позиции.
-
-
-
-
-
-
-
- 414
-
- 7
-
-
- 0
-
-
-
-
- 16
-
-
- ru
- •Отслеживать выполнение: согласование, наличие заказа, исполнение потребности.
-
-
-
-
-
-
-
- 415
-
- 7
-
-
- 0
-
-
-
-
- 16
-
-
- ru
- •Отслеживать невозможность обеспечения. Заявки, которые невозможно обеспечить должны возвращаться обратно к логисту.
-
-
-
-
-
-
-
- 416
-
- 7
-
-
- 0
-
-
-
-
- 16
-
-
- ru
- •Создавать заявки на закупку из рабочих мест «Формирования заказов по потребностям» и «Формирование заказов поставщику по плану» вместо заказов поставщикам.
-
-
-
-
-
-
-
- 417
-
- 7
-
-
- 0
-
-
-
-
- 16
-
-
- ru
- •Вводить индивидуальные потребности в систему в упрощенном, в том числе «строковом» виде.
-
-
-
-
-
-
-
- 418
-
- 7
-
-
- 0
-
-
-
-
- 16
-
-
-
-
-
- 419
-
- 7
-
-
- 0
-
-
-
-
- 17
-
-
- ru
- Ставки НДС в прайс-листе и на стороне комиссионера
-
-
-
-
-
-
420
@@ -7541,13 +7589,7 @@
- 18
-
-
- ru
- В связи с введением ставок НДС 5% и 7% реализована возможность фиксировать ставку НДС (собственного товара и товара, принятого на комиссию) в условиях продажи (прайс-листе) и осуществлять подбор видов запасов комитентов с учетом ставки НДС, указанной в строке документа и ставки НДС комитента.
-
-
+ 12
@@ -7563,7 +7605,13 @@
- 16
+ 13
+
+
+ ru
+ Новое в версии 11.5.26.106
+
+
@@ -7579,13 +7627,7 @@
- 17
-
-
- ru
- Штрихкоды номенклатуры и серий номенклатуры
-
-
+ 14
@@ -7601,11 +7643,11 @@
- 18
+ 13
ru
- Поддержана возможность ведения неуникальных штриходов номенклатуры (один и тот же штрихкод используется для нескольких товаров), а также возможность подбора товаров по штрихкодам серий.
+ Интеграция с ГИС МТ ("Честный знак")
@@ -7623,7 +7665,7 @@
- 16
+ 14
@@ -7639,11 +7681,11 @@
- 17
+ 15
ru
- Розничные продажи табачной продукции
+ Описание товаров в "Национальном каталоге"
@@ -7661,11 +7703,11 @@
- 18
+ 16
ru
- Подержана продажа табачной проудукции с учетом требований ст.7 Федерального закона от 13.06.2023 N 203-ФЗ и "Правил определениями минимальной цены на табачную продукцию", утвержденных Постановлением Правительства РФ от 27.08.2025 N 1282, по цене, равной значению МРЦ в коде маркировки и контроль ЕМРЦ, устанавливаемой Министерством сельского хозяйства РФ.
+ Поддержано подписание карточек товаров, прошедших модерацию в "Национальном каталоге", непосредственно в прикладном решении, без использования личного кабинета "Честного знака".
@@ -7683,7 +7725,7 @@
- 16
+ 14
@@ -7699,11 +7741,11 @@
- 17
+ 15
ru
- Межфирменные продажи. Отчет по комиссии между организациями
+ Изменение состава товарных групп
@@ -7721,13 +7763,13 @@
- 18
-
+ 17
+
ru
- Поддержана возможность указания <font Almarai><fontsize 8><i><bgcolor #ffffff><color #000000>Статьи расходов</></></></></> в документе <font Almarai><fontsize 8><i><bgcolor #ffffff><color #000000>Отчет по комиссии между организациями</></></></></>. Предусмотрен выбор статьи расходов с вариантом распределения расходов <font Almarai><fontsize 8><i><bgcolor #ffffff><color #000000>На себестоимость продаж</></></></></> и с отключенным контролем заполнения аналитики.
+ Добавлены новые товарные группы:
-
+
@@ -7743,7 +7785,13 @@
- 16
+ 17
+
+
+ ru
+ •"Натуральный мех" - для работы с меховыми изделиями по новым правилам (Постановлению Правительства РФ от 31.01.2026 № 75)
+
+
@@ -7759,11 +7807,11 @@
- 17
+ 16
ru
- Отчет комиссионера (агента) о продажах
+ •"Товары легкой промышленности и одежда 2026" - для работы с товарам, на которые распространено требование маркировки с 01.03.2026 (Постановлению Правительства РФ от 25.12.2025 г. № 2129).
@@ -7781,13 +7829,7 @@
- 18
-
-
- ru
- В документе <font Almarai><fontsize 8><i><bgcolor #ffffff><color #000000>Отчет комиссионера (агента) о продажах</></></></></> для реквизита <font Almarai><fontsize 8><i><bgcolor #ffffff><color #000000>Статья расходов</></></></></> список выбора ограничен статьями с вариантом распределения расходов <font Almarai><fontsize 8><i><bgcolor #ffffff><color #000000>На себестоимость продаж</></></></></> и с отключенным контролем заполнения аналитики. В случае отсутствия подходящей по параметрам статьи расходов она будет создана при обновлении на версию.
-
-
+ 14
@@ -7803,7 +7845,13 @@
- 16
+ 15
+
+
+ ru
+ Поддержка версии 2.х Локального модуля "Честного знака"
+
+
@@ -7823,7 +7871,7 @@
ru
- Отгрузка с отложенным переходом права собственности. Версия 2.5. Оформление двумя документами (доработки)
+ Реализована возможность работы с Локальными модулями версий V1 и новой версии V2.
@@ -7841,13 +7889,13 @@
- 14
-
+ 17
+
ru
- •Упрощено заполнение авансов в форме документа <font Almarai><fontsize 8><i><bgcolor #ffffff><color #000000>Счет- фактура выданный</></></></></>.
+ Реализован контроль минимальной розничной цены, возвращаемой ГИС МТ в разрешительном режиме, по никотиносодержащей продукции при пробитии чека. Контроль возможен только с версии ЛМ 2.х.
-
+
@@ -7863,13 +7911,7 @@
- 16
-
-
- ru
- •Добавлен контроль допустимой суммы кредита и наличия просроченной дебиторской задолженности по договору с клиентом при отгрузке.
-
-
+ 17
@@ -7885,11 +7927,11 @@
- 16
+ 15
ru
- •Изменен алгоритм расчета суммы НДС в корректировке реализации с видом «Исправление ошибок» при расчетах у.е., валюте.
+ Учет ветеринарных препаратов по местам осуществления деятельности
@@ -7907,11 +7949,11 @@
- 16
+ 17
ru
- •Выполнены доработки по заполнению графиков оплат.
+ Поддержаны требования по указания места осуществления деятельности (МОД) (Постановления Правительства РФ от 27 мая 2024 г №675) по товарной группе "Ветеринарные препараты" между филиалами или складами одного предприятия и при отгрузке сторонним организациям.
@@ -7929,7 +7971,7 @@
- 16
+ 17
@@ -7945,11 +7987,11 @@
- 15
+ 13
ru
- Казначейство, взаиморасчеты
+ Продажи, Закупки, Склад
@@ -7967,7 +8009,7 @@
- 16
+ 14
@@ -7983,11 +8025,11 @@
- 17
+ 15
ru
- Казначейство, взаиморасчеты
+ Контроль качества
@@ -8005,11 +8047,11 @@
- 18
+ 16
ru
- Появилась возможность осуществлять переводы денежных средств через СБП для юридических лиц с целью ускорения безналичных расчетов между ними.
+ Реализована функциональность контроля качества товаров, включающая следующие возможности:
@@ -8027,7 +8069,13 @@
- 16
+ 12
+
+
+ ru
+ •Организация входного контроля качества товаров по настройкам и по требованию.
+
+
@@ -8043,11 +8091,11 @@
- 17
+ 12
ru
- Развитие интеграции с сервисом "онлайн-заказов" в части оплаты
+ •Блокировка товаров, подлежащих контролю качества, для исключения отгрузки некачественных партий потребителям.
@@ -8065,11 +8113,11 @@
- 18
+ 12
ru
- Поддержана возможность загрузить оплаты из 1С:Онлайн-заказы.
+ •Распоряжения на проведение контроля.
@@ -8087,7 +8135,13 @@
- 16
+ 12
+
+
+ ru
+ •Акты контроля.
+
+
@@ -8103,11 +8157,11 @@
- 17
+ 12
ru
- Разделение электронного билета на отдельные операции
+ •Карты исследований, описывающие нормативы проведения исследований качества.
@@ -8125,15 +8179,13 @@
- 18
-
+ 14
+
ru
- Электронный билет теперь формируется разными документами по каждой операции и дате создания.
-Таким образом, решена проблема, когда при формировании проводок в одном документе по нескольким периодам, срабатывала проверка запрета изменений редактирования данных.
-В документе <font Almarai><fontsize 8><i><bgcolor #ffffff><color #000000>Электронный билет</></></></></> на закладке <font Almarai><fontsize 8><i><bgcolor #ffffff><color #000000>Операции по билету</></></></></> по кнопке <font Almarai><fontsize 8><i><bgcolor #ffffff><color #000000>Создать</></></></></> каждая операция формируется в виде отдельного документа.
+ •Проведение исследований с фиксацией результатов.
-
+
@@ -8169,7 +8221,7 @@
ru
- Управленческий учет затрат и финансовый результат
+ Заявки на закупку и обеспечение
@@ -8188,6 +8240,12 @@
16
+
+
+ ru
+ Реализованы новые документы <font Almarai><fontsize 8><i><bgcolor #ffffff><color #000000>Заявка на обеспечение</></></></></> и <font Almarai><fontsize 8><i><bgcolor #ffffff><color #000000>Заявка на закупку</></></></></> с целью:
+
+
@@ -8203,11 +8261,11 @@
- 17
+ 14
ru
- Учет запасов по среднескользящей стоимости
+ •Разделить функции логиста, принимающего решения о необходимости обеспечения с помощью закупки той или иной позиции. И закупщиков, ведающих поставщиками, ценами, и другими условиями закупок.
@@ -8225,13 +8283,13 @@
- 18
-
+ 14
+
ru
- Поддержано ведение раздельного учета НДС при использовании организацией метода оценки стоимости запасов <font Almarai><fontsize 8><i><bgcolor #ffffff><color #000000>Среднескользящая</></></></></>.
+ •Формировать потребность в закупке при неизвестном поставщике, и/или неизвестных, возможно, ориентировочных ценах.
-
+
@@ -8247,13 +8305,13 @@
- 18
-
+ 14
+
ru
- Выполнены доработки по оптимизации алгоритмов системы с целью ускорения выполнения процедуры <font Almarai><fontsize 8><i><bgcolor #ffffff><color #000000>Закрытие месяца</></></></></> за счет:
+ •Согласовывать потребности закупки до того как выбраны поставщики и потребность разделена на заказы поставщикам. Оперировать предварительными ценами.
-
+
@@ -8269,11 +8327,11 @@
- 16
+ 14
ru
- •ускорения выполнения этапа подготовки данных для НДС;
+ •Передавать согласованную потребность в отдел закупки для формирования заказов поставщикам.
@@ -8291,13 +8349,13 @@
- 16
-
+ 14
+
ru
- •ускорения записи движений в регистры оперативного учета по детализации партий при использовании организацией метода оценки стоимости запасов <font Almarai><fontsize 8><i><bgcolor #ffffff><color #000000>Среднескользящая</></></></></> за счет формирования сводных движений;
+ •Определять, какой менеджер должен обеспечивать потребность по каждой позиции.
-
+
@@ -8313,11 +8371,11 @@
- 16
+ 14
ru
- •унификации алгоритмов распределения дополнительных расходов в части партий НДС при использовании всех методов оценки стоимости запасов.
+ •Отслеживать выполнение: согласование, наличие заказа, исполнение потребности.
@@ -8335,7 +8393,13 @@
- 16
+ 14
+
+
+ ru
+ •Отслеживать невозможность обеспечения. Заявки, которые невозможно обеспечить должны возвращаться обратно к логисту.
+
+
@@ -8351,11 +8415,11 @@
- 17
+ 14
ru
- Корректировки прошлых периодов
+ •Создавать заявки на закупку из рабочих мест «Формирования заказов по потребностям» и «Формирование заказов поставщику по плану» вместо заказов поставщикам.
@@ -8373,11 +8437,11 @@
- 18
+ 14
ru
- С целью расширения возможностей учета «опоздавших» документов, корректировок документов прошлых периодов, а также отражения в учете исправлений, относящихся к прошлым периодам, выполнены доработки системы, в рамках которых:
+ •Вводить индивидуальные потребности в систему в упрощенном, в том числе «строковом» виде.
@@ -8395,13 +8459,7 @@
- 16
-
-
- ru
- •в документах <font Almarai><fontsize 8><i><bgcolor #ffffff><color #000000>Корректировка реализации</></></></></> исключены поля выбора статей и аналитики отражения прочих доходов и расходов и добавлена возможность выбора варианта отражения корректировки в выручке текущего периода или в прибыли/убытках прошлых лет;
-
-
+ 14
@@ -8417,13 +8475,13 @@
- 16
-
+ 15
+
ru
- •в документы регистрации расходов, а также документы исправления внутренних документов и <font Almarai><fontsize 8><i><bgcolor #ffffff><color #000000>Сторно</></></></></> документов в следующем периоде добавлено указание фактической даты операции – даты прошлого периода;
+ Ставки НДС в прайс-листе и на стороне комиссионера
-
+
@@ -8443,7 +8501,7 @@
ru
- •для хранения периода корректировки внесены изменения в регистры оперативного учета;
+ В связи с введением ставок НДС 5% и 7% реализована возможность фиксировать ставку НДС (собственного товара и товара, принятого на комиссию) в условиях продажи (прайс-листе) и осуществлять подбор видов запасов комитентов с учетом ставки НДС, указанной в строке документа и ставки НДС комитента.
@@ -8461,13 +8519,7 @@
- 16
-
-
- ru
- •поддержано распределение сумм корректировки стоимости и распределение дополнительных расходов на выбытия товаров в прошлых периодах с учетом всей цепочки движения затрат (включая списание на постатейные затраты);
-
-
+ 14
@@ -8483,11 +8535,11 @@
- 16
+ 15
ru
- •поддержан выбор периода отклонений в отчетах
+ Штрихкоды номенклатуры и серий номенклатуры
@@ -8505,13 +8557,13 @@
- 14
-
+ 16
+
ru
- ◦<font Almarai><fontsize 8><i><bgcolor #ffffff><color #000000>Расходы предприятия/Расходы организаций</></></></></>;
+ Поддержана возможность ведения неуникальных штриходов номенклатуры (один и тот же штрихкод используется для нескольких товаров), а также возможность подбора товаров по штрихкодам серий.
-
+
@@ -8528,12 +8580,6 @@
14
-
-
- ru
- ◦<font Almarai><fontsize 8><i><bgcolor #ffffff><color #000000>Себестоимость товаров предприятия/Себестоимость товаров организаций</></></></></>;
-
-
@@ -8549,13 +8595,13 @@
- 14
-
+ 15
+
ru
- ◦<font Almarai><fontsize 8><i><bgcolor #ffffff><color #000000>Валовая прибыль предприятия/Валовая прибыль организаций</></></></></> (период корректировки);
+ Розничные продажи табачной продукции
-
+
@@ -8575,7 +8621,7 @@
ru
- •выполнены доработки регистрации и распределения постатейных расходов, в т.ч.
+ Подержана продажа табачной проудукции с учетом требований ст.7 Федерального закона от 13.06.2023 N 203-ФЗ и "Правил определениями минимальной цены на табачную продукцию", утвержденных Постановлением Правительства РФ от 27.08.2025 N 1282, по цене, равной значению МРЦ в коде маркировки и контроль ЕМРЦ, устанавливаемой Министерством сельского хозяйства РФ.
@@ -8593,13 +8639,7 @@
- 16
-
-
- ru
- ◦в карточках элементов списка Статьи расходов вариант распределения <font Almarai><fontsize 8><i><bgcolor #ffffff><color #000000>На финансовый результат (расходы тек. периода)</></></></></> разделен на <font Almarai><fontsize 8><i><bgcolor #ffffff><color #000000>На расходы текущего периода (напрямую)</></></></></> и <font Almarai><fontsize 8><i><bgcolor #ffffff><color #000000>На расходы текущего периода (через распределение)</></></></></>.
-
-
+ 14
@@ -8615,7 +8655,13 @@
- 16
+ 15
+
+
+ ru
+ Межфирменные продажи. Отчет по комиссии между организациями
+
+
@@ -8631,13 +8677,13 @@
- 15
-
+ 16
+
ru
- Управленческий учет затрат и финансовый результат
+ Поддержана возможность указания <font Almarai><fontsize 8><i><bgcolor #ffffff><color #000000>Статьи расходов</></></></></> в документе <font Almarai><fontsize 8><i><bgcolor #ffffff><color #000000>Отчет по комиссии между организациями</></></></></>. Предусмотрен выбор статьи расходов с вариантом распределения расходов <font Almarai><fontsize 8><i><bgcolor #ffffff><color #000000>На себестоимость продаж</></></></></> и с отключенным контролем заполнения аналитики.
-
+
@@ -8653,7 +8699,7 @@
- 16
+ 14
@@ -8669,11 +8715,11 @@
- 17
+ 15
ru
- Сторно и исправление распределения НДС
+ Отчет комиссионера (агента) о продажах
@@ -8691,11 +8737,11 @@
- 18
+ 16
ru
- Поддержано отражение в дополнительных листах книг покупок и продаж результатов корректировки распределения НДС при изменении базы распределения. Для этого реализована возможность сторнирования/исправления документа <font Almarai><fontsize 8><i><bgcolor #ffffff><color #000000>Распределение НДС</></></></></>. Документ <font Almarai><fontsize 8><i><bgcolor #ffffff><color #000000>Распределение НДС</></></></></> подключен к механизму исправлений финансовых документов, доступному, если в информационной базе включена функциональная опция <font Almarai><fontsize 8><i><bgcolor #ffffff><color #000000>Исправление и сторно финансовых документов</></></></></>.
+ В документе <font Almarai><fontsize 8><i><bgcolor #ffffff><color #000000>Отчет комиссионера (агента) о продажах</></></></></> для реквизита <font Almarai><fontsize 8><i><bgcolor #ffffff><color #000000>Статья расходов</></></></></> список выбора ограничен статьями с вариантом распределения расходов <font Almarai><fontsize 8><i><bgcolor #ffffff><color #000000>На себестоимость продаж</></></></></> и с отключенным контролем заполнения аналитики. В случае отсутствия подходящей по параметрам статьи расходов она будет создана при обновлении на версию.
@@ -8713,7 +8759,7 @@
- 16
+ 14
@@ -8733,7 +8779,7 @@
ru
- Сервисные возможности и настройки интеграции
+ Отгрузка с отложенным переходом права собственности. Версия 2.5. Оформление двумя документами (доработки)
@@ -8751,7 +8797,13 @@
- 16
+ 12
+
+
+ ru
+ •Упрощено заполнение авансов в форме документа <font Almarai><fontsize 8><i><bgcolor #ffffff><color #000000>Счет- фактура выданный</></></></></>.
+
+
@@ -8767,11 +8819,11 @@
- 17
+ 14
ru
- Интеграция с 1С:Документооборот
+ •Добавлен контроль допустимой суммы кредита и наличия просроченной дебиторской задолженности по договору с клиентом при отгрузке.
@@ -8789,13 +8841,13 @@
- 18
-
+ 14
+
ru
- <link https://its.1c.ru/db/bid303doc#content:12:hdoc>Библиотека</> интеграции с 1С:Документооборотом обновлена до версии 3.0.3.4. Реализованы следующие возможности и изменения:
+ •Изменен алгоритм расчета суммы НДС в корректировке реализации с видом «Исправление ошибок» при расчетах у.е., валюте.
-
+
@@ -8815,7 +8867,7 @@
ru
- •Добавлен функционал интерактивного добавления и удаления связей между объектами 1С:Документооборота.
+ •Выполнены доработки по заполнению графиков оплат.
@@ -8834,12 +8886,6 @@
14
-
-
- ru
- •Добавлена возможность выбора обязательных связей при создании нового объекта 1С:Документооборота.
-
-
@@ -8855,11 +8901,11 @@
- 16
+ 13
ru
- •Добавлена возможность отображения ссылок на интегрированные объекты в обзоре документов 1С:Документооборота.
+ Казначейство, взаиморасчеты
@@ -8877,7 +8923,7 @@
- 16
+ 14
@@ -8893,11 +8939,11 @@
- 17
+ 15
ru
- 1С:Онлайн заказы, mag1C
+ Казначейство, взаиморасчеты
@@ -8915,11 +8961,11 @@
- 18
+ 16
ru
- Для заказа клиента, сформированного в информационной базе, поддержано создание веб-страницы заказа в сервисе 1С:Онлайн заказы. Аналогичная функция от сервиса mag1С более не используется.
+ Появилась возможность осуществлять переводы денежных средств через СБП для юридических лиц с целью ускорения безналичных расчетов между ними.
@@ -8937,7 +8983,7 @@
- 16
+ 14
@@ -8953,11 +8999,11 @@
- 17
+ 15
ru
- Обмен в универсальном формате Enterprise Data
+ Развитие интеграции с сервисом "онлайн-заказов" в части оплаты
@@ -8975,13 +9021,13 @@
- 14
-
+ 16
+
ru
- •Поддержан обмен реквизитом <font Almarai><fontsize 8><i><bgcolor #ffffff><color #000000>Тип счета</></></></></> для банковских счетов организаций.
+ Поддержана возможность загрузить оплаты из 1С:Онлайн-заказы.
-
+
@@ -8997,13 +9043,7 @@
- 16
-
-
- ru
- •Поддержана выгрузка информативных остатков для обмена с конфигурациями 1С:Касса и 1С:РМК.
-
-
+ 14
@@ -9019,13 +9059,13 @@
- 16
-
+ 15
+
ru
- •Поддержана выгрузка договора подключения к платежным системам для строк табличной части <font Almarai><fontsize 8><i><bgcolor #ffffff><color #000000>Оплата платежными картами</></></></></> с видом платы СБП в <font Almarai><fontsize 8><i><bgcolor #ffffff><color #000000>Отчете о розничных продажах</></></></></>.
+ Разделение электронного билета на отдельные операции
-
+
@@ -9045,7 +9085,9 @@
ru
- •Для документов <font Almarai><fontsize 8><i><bgcolor #ffffff><color #000000>Поступление безналичных денежных средств</></></></></> с операцией <font Almarai><fontsize 8><i><bgcolor #ffffff><color #000000>Поступление оплаты по эквайрингу</></></></></> поддержана выгрузка и загрузка реквизитов <font Almarai><fontsize 8><i><bgcolor #ffffff><color #000000>Статья расходов</></></></></> и <font Almarai><fontsize 8><i><bgcolor #ffffff><color #000000>Договор эквайринга</></></></></>.
+ Электронный билет теперь формируется разными документами по каждой операции и дате создания.
+Таким образом, решена проблема, когда при формировании проводок в одном документе по нескольким периодам, срабатывала проверка запрета изменений редактирования данных.
+В документе <font Almarai><fontsize 8><i><bgcolor #ffffff><color #000000>Электронный билет</></></></></> на закладке <font Almarai><fontsize 8><i><bgcolor #ffffff><color #000000>Операции по билету</></></></></> по кнопке <font Almarai><fontsize 8><i><bgcolor #ffffff><color #000000>Создать</></></></></> каждая операция формируется в виде отдельного документа.
@@ -9063,13 +9105,7 @@
- 16
-
-
- ru
- •Добавлена выгрузка договора между организациями. Если организация в документе отличается от организации в договоре, то при выгрузке инвертируются реквизиты <font Almarai><fontsize 8><i><bgcolor #ffffff><color #000000>Организация</></></></></>, <font Almarai><fontsize 8><i><bgcolor #ffffff><color #000000>Организация-получатель</></></></></> и <font Almarai><fontsize 8><i><bgcolor #ffffff><color #000000>Вид договора</></></></></>.
-
-
+ 12
@@ -9085,7 +9121,13 @@
- 16
+ 13
+
+
+ ru
+ Управленческий учет затрат и финансовый результат
+
+
@@ -9101,13 +9143,7 @@
- 17
-
-
- ru
- Sellmonitor. Интеграция с сервисом аналитики торговых площадок
-
-
+ 14
@@ -9123,13 +9159,13 @@
- 18
-
+ 15
+
ru
- Поддержвана интеграция с Sellmonitor (см. <link https://portal.1c.ru/applications/1C-Sellmonitor>https://portal.1c.ru/applications/1C-Sellmonitor</>) — это платформа аналитики и умных инструментов для продавцов на торговых площадках (маркетплейсах) Ozon, Wildberries, Яндекс.Маркет. В частности, сервис позволяет решать следующие задачи:
+ Учет запасов по среднескользящей стоимости
-
+
@@ -9145,13 +9181,13 @@
- 14
-
+ 16
+
ru
- •Генерация описания карточки товара с помощью искусственного интеллекта.
+ Поддержано ведение раздельного учета НДС при использовании организацией метода оценки стоимости запасов <font Almarai><fontsize 8><i><bgcolor #ffffff><color #000000>Среднескользящая</></></></></>.
-
+
@@ -9168,12 +9204,12 @@
16
-
+
ru
- •Планирование поставок на склады торговой площадки.
+ Выполнены доработки по оптимизации алгоритмов системы с целью ускорения выполнения процедуры <font Almarai><fontsize 8><i><bgcolor #ffffff><color #000000>Закрытие месяца</></></></></> за счет:
-
+
@@ -9189,7 +9225,13 @@
- 16
+ 14
+
+
+ ru
+ •ускорения выполнения этапа подготовки данных для НДС;
+
+
@@ -9205,13 +9247,13 @@
- 17
-
+ 14
+
ru
- Оповещения пользователей о событиях системы
+ •ускорения записи движений в регистры оперативного учета по детализации партий при использовании организацией метода оценки стоимости запасов <font Almarai><fontsize 8><i><bgcolor #ffffff><color #000000>Среднескользящая</></></></></> за счет формирования сводных движений;
-
+
@@ -9227,11 +9269,11 @@
- 18
+ 14
ru
- Поддержвана возможность отправки оповещений в Telegram и на электронную почту.
+ •унификации алгоритмов распределения дополнительных расходов в части партий НДС при использовании всех методов оценки стоимости запасов.
@@ -9249,7 +9291,7 @@
- 16
+ 14
@@ -9265,11 +9307,11 @@
- 17
+ 15
ru
- Интернет-поддержка пользователей
+ Корректировки прошлых периодов
@@ -9287,13 +9329,13 @@
- 18
-
+ 16
+
ru
- Библиотека интернет-поддержки пользователей до версии <link https://dl03.1c.ru/content/ISL/2_8_4_20/news.htm>2.8.4</>.
+ С целью расширения возможностей учета «опоздавших» документов, корректировок документов прошлых периодов, а также отражения в учете исправлений, относящихся к прошлым периодам, выполнены доработки системы, в рамках которых:
-
+
@@ -9309,13 +9351,927 @@
- 16
+ 14
+
+
+ ru
+ •в документах <font Almarai><fontsize 8><i><bgcolor #ffffff><color #000000>Корректировка реализации</></></></></> исключены поля выбора статей и аналитики отражения прочих доходов и расходов и добавлена возможность выбора варианта отражения корректировки в выручке текущего периода или в прибыли/убытках прошлых лет;
+
+
507
+
+ 7
+
+
+ 0
+
+
+
+
+ 14
+
+
+ ru
+ •в документы регистрации расходов, а также документы исправления внутренних документов и <font Almarai><fontsize 8><i><bgcolor #ffffff><color #000000>Сторно</></></></></> документов в следующем периоде добавлено указание фактической даты операции – даты прошлого периода;
+
+
+
+
+
+
+
+ 508
+
+ 7
+
+
+ 0
+
+
+
+
+ 14
+
+
+ ru
+ •для хранения периода корректировки внесены изменения в регистры оперативного учета;
+
+
+
+
+
+
+
+ 509
+
+ 7
+
+
+ 0
+
+
+
+
+ 14
+
+
+ ru
+ •поддержано распределение сумм корректировки стоимости и распределение дополнительных расходов на выбытия товаров в прошлых периодах с учетом всей цепочки движения затрат (включая списание на постатейные затраты);
+
+
+
+
+
+
+
+ 510
+
+ 7
+
+
+ 0
+
+
+
+
+ 14
+
+
+ ru
+ •поддержан выбор периода отклонений в отчетах
+
+
+
+
+
+
+
+ 511
+
+ 7
+
+
+ 0
+
+
+
+
+ 12
+
+
+ ru
+ ◦<font Almarai><fontsize 8><i><bgcolor #ffffff><color #000000>Расходы предприятия/Расходы организаций</></></></></>;
+
+
+
+
+
+
+
+ 512
+
+ 7
+
+
+ 0
+
+
+
+
+ 12
+
+
+ ru
+ ◦<font Almarai><fontsize 8><i><bgcolor #ffffff><color #000000>Себестоимость товаров предприятия/Себестоимость товаров организаций</></></></></>;
+
+
+
+
+
+
+
+ 513
+
+ 7
+
+
+ 0
+
+
+
+
+ 12
+
+
+ ru
+ ◦<font Almarai><fontsize 8><i><bgcolor #ffffff><color #000000>Валовая прибыль предприятия/Валовая прибыль организаций</></></></></> (период корректировки);
+
+
+
+
+
+
+
+ 514
+
+ 7
+
+
+ 0
+
+
+
+
+ 14
+
+
+ ru
+ •выполнены доработки регистрации и распределения постатейных расходов, в т.ч.
+
+
+
+
+
+
+
+ 515
+
+ 7
+
+
+ 0
+
+
+
+
+ 14
+
+
+ ru
+ ◦в карточках элементов списка Статьи расходов вариант распределения <font Almarai><fontsize 8><i><bgcolor #ffffff><color #000000>На финансовый результат (расходы тек. периода)</></></></></> разделен на <font Almarai><fontsize 8><i><bgcolor #ffffff><color #000000>На расходы текущего периода (напрямую)</></></></></> и <font Almarai><fontsize 8><i><bgcolor #ffffff><color #000000>На расходы текущего периода (через распределение)</></></></></>.
+
+
+
+
+
+
+
+ 516
+
+ 7
+
+
+ 0
+
+
+
+
+ 14
+
+
+
+
+
+ 517
+
+ 7
+
+
+ 0
+
+
+
+
+ 13
+
+
+ ru
+ Управленческий учет затрат и финансовый результат
+
+
+
+
+
+
+
+ 518
+
+ 7
+
+
+ 0
+
+
+
+
+ 14
+
+
+
+
+
+ 519
+
+ 7
+
+
+ 0
+
+
+
+
+ 15
+
+
+ ru
+ Сторно и исправление распределения НДС
+
+
+
+
+
+
+
+ 520
+
+ 7
+
+
+ 0
+
+
+
+
+ 16
+
+
+ ru
+ Поддержано отражение в дополнительных листах книг покупок и продаж результатов корректировки распределения НДС при изменении базы распределения. Для этого реализована возможность сторнирования/исправления документа <font Almarai><fontsize 8><i><bgcolor #ffffff><color #000000>Распределение НДС</></></></></>. Документ <font Almarai><fontsize 8><i><bgcolor #ffffff><color #000000>Распределение НДС</></></></></> подключен к механизму исправлений финансовых документов, доступному, если в информационной базе включена функциональная опция <font Almarai><fontsize 8><i><bgcolor #ffffff><color #000000>Исправление и сторно финансовых документов</></></></></>.
+
+
+
+
+
+
+
+ 521
+
+ 7
+
+
+ 0
+
+
+
+
+ 14
+
+
+
+
+
+ 522
+
+ 7
+
+
+ 0
+
+
+
+
+ 13
+
+
+ ru
+ Сервисные возможности и настройки интеграции
+
+
+
+
+
+
+
+ 523
+
+ 7
+
+
+ 0
+
+
+
+
+ 14
+
+
+
+
+
+ 524
+
+ 7
+
+
+ 0
+
+
+
+
+ 15
+
+
+ ru
+ Интеграция с 1С:Документооборот
+
+
+
+
+
+
+
+ 525
+
+ 7
+
+
+ 0
+
+
+
+
+ 16
+
+
+ ru
+ <link https://its.1c.ru/db/bid303doc#content:12:hdoc>Библиотека</> интеграции с 1С:Документооборотом обновлена до версии 3.0.3.4. Реализованы следующие возможности и изменения:
+
+
+
+
+
+
+
+ 526
+
+ 7
+
+
+ 0
+
+
+
+
+ 12
+
+
+ ru
+ •Добавлен функционал интерактивного добавления и удаления связей между объектами 1С:Документооборота.
+
+
+
+
+
+
+
+ 527
+
+ 7
+
+
+ 0
+
+
+
+
+ 12
+
+
+ ru
+ •Добавлена возможность выбора обязательных связей при создании нового объекта 1С:Документооборота.
+
+
+
+
+
+
+
+ 528
+
+ 7
+
+
+ 0
+
+
+
+
+ 14
+
+
+ ru
+ •Добавлена возможность отображения ссылок на интегрированные объекты в обзоре документов 1С:Документооборота.
+
+
+
+
+
+
+
+ 529
+
+ 7
+
+
+ 0
+
+
+
+
+ 14
+
+
+
+
+
+ 530
+
+ 7
+
+
+ 0
+
+
+
+
+ 15
+
+
+ ru
+ 1С:Онлайн заказы, mag1C
+
+
+
+
+
+
+
+ 531
+
+ 7
+
+
+ 0
+
+
+
+
+ 16
+
+
+ ru
+ Для заказа клиента, сформированного в информационной базе, поддержано создание веб-страницы заказа в сервисе 1С:Онлайн заказы. Аналогичная функция от сервиса mag1С более не используется.
+
+
+
+
+
+
+
+ 532
+
+ 7
+
+
+ 0
+
+
+
+
+ 14
+
+
+
+
+
+ 533
+
+ 7
+
+
+ 0
+
+
+
+
+ 15
+
+
+ ru
+ Обмен в универсальном формате Enterprise Data
+
+
+
+
+
+
+
+ 534
+
+ 7
+
+
+ 0
+
+
+
+
+ 12
+
+
+ ru
+ •Поддержан обмен реквизитом <font Almarai><fontsize 8><i><bgcolor #ffffff><color #000000>Тип счета</></></></></> для банковских счетов организаций.
+
+
+
+
+
+
+
+ 535
+
+ 7
+
+
+ 0
+
+
+
+
+ 14
+
+
+ ru
+ •Поддержана выгрузка информативных остатков для обмена с конфигурациями 1С:Касса и 1С:РМК.
+
+
+
+
+
+
+
+ 536
+
+ 7
+
+
+ 0
+
+
+
+
+ 14
+
+
+ ru
+ •Поддержана выгрузка договора подключения к платежным системам для строк табличной части <font Almarai><fontsize 8><i><bgcolor #ffffff><color #000000>Оплата платежными картами</></></></></> с видом платы СБП в <font Almarai><fontsize 8><i><bgcolor #ffffff><color #000000>Отчете о розничных продажах</></></></></>.
+
+
+
+
+
+
+
+ 537
+
+ 7
+
+
+ 0
+
+
+
+
+ 14
+
+
+ ru
+ •Для документов <font Almarai><fontsize 8><i><bgcolor #ffffff><color #000000>Поступление безналичных денежных средств</></></></></> с операцией <font Almarai><fontsize 8><i><bgcolor #ffffff><color #000000>Поступление оплаты по эквайрингу</></></></></> поддержана выгрузка и загрузка реквизитов <font Almarai><fontsize 8><i><bgcolor #ffffff><color #000000>Статья расходов</></></></></> и <font Almarai><fontsize 8><i><bgcolor #ffffff><color #000000>Договор эквайринга</></></></></>.
+
+
+
+
+
+
+
+ 538
+
+ 7
+
+
+ 0
+
+
+
+
+ 14
+
+
+ ru
+ •Добавлена выгрузка договора между организациями. Если организация в документе отличается от организации в договоре, то при выгрузке инвертируются реквизиты <font Almarai><fontsize 8><i><bgcolor #ffffff><color #000000>Организация</></></></></>, <font Almarai><fontsize 8><i><bgcolor #ffffff><color #000000>Организация-получатель</></></></></> и <font Almarai><fontsize 8><i><bgcolor #ffffff><color #000000>Вид договора</></></></></>.
+
+
+
+
+
+
+
+ 539
+
+ 7
+
+
+ 0
+
+
+
+
+ 14
+
+
+
+
+
+ 540
+
+ 7
+
+
+ 0
+
+
+
+
+ 15
+
+
+ ru
+ Sellmonitor. Интеграция с сервисом аналитики торговых площадок
+
+
+
+
+
+
+
+ 541
+
+ 7
+
+
+ 0
+
+
+
+
+ 16
+
+
+ ru
+ Поддержвана интеграция с Sellmonitor (см. <link https://portal.1c.ru/applications/1C-Sellmonitor>https://portal.1c.ru/applications/1C-Sellmonitor</>) — это платформа аналитики и умных инструментов для продавцов на торговых площадках (маркетплейсах) Ozon, Wildberries, Яндекс.Маркет. В частности, сервис позволяет решать следующие задачи:
+
+
+
+
+
+
+
+ 542
+
+ 7
+
+
+ 0
+
+
+
+
+ 12
+
+
+ ru
+ •Генерация описания карточки товара с помощью искусственного интеллекта.
+
+
+
+
+
+
+
+ 543
+
+ 7
+
+
+ 0
+
+
+
+
+ 14
+
+
+ ru
+ •Планирование поставок на склады торговой площадки.
+
+
+
+
+
+
+
+ 544
+
+ 7
+
+
+ 0
+
+
+
+
+ 14
+
+
+
+
+
+ 545
+
+ 7
+
+
+ 0
+
+
+
+
+ 15
+
+
+ ru
+ Оповещения пользователей о событиях системы
+
+
+
+
+
+
+
+ 546
+
+ 7
+
+
+ 0
+
+
+
+
+ 16
+
+
+ ru
+ Поддержвана возможность отправки оповещений в Telegram и на электронную почту.
+
+
+
+
+
+
+
+ 547
+
+ 7
+
+
+ 0
+
+
+
+
+ 14
+
+
+
+
+
+ 548
+
+ 7
+
+
+ 0
+
+
+
+
+ 15
+
+
+ ru
+ Интернет-поддержка пользователей
+
+
+
+
+
+
+
+ 549
+
+ 7
+
+
+ 0
+
+
+
+
+ 16
+
+
+ ru
+ Библиотека интернет-поддержки пользователей до версии <link https://dl03.1c.ru/content/ISL/2_8_4_20/news.htm>2.8.4</>.
+
+
+
+
+
+
+
+ 550
+
+ 7
+
+
+ 0
+
+
+
+
+ 14
+
+
+
+
+
+ 551
7
@@ -9337,7 +10293,7 @@
- 508
+ 552
7
@@ -9347,7 +10303,7 @@
- 18
+ 16
ru
@@ -9359,7 +10315,7 @@
- 509
+ 553
7
@@ -9369,7 +10325,7 @@
- 16
+ 14
ru
@@ -9381,7 +10337,7 @@
- 510
+ 554
7
@@ -9391,7 +10347,7 @@
- 16
+ 14
ru
@@ -9403,7 +10359,7 @@
- 511
+ 555
7
@@ -9413,7 +10369,7 @@
- 16
+ 14
ru
@@ -9425,7 +10381,29 @@
- 512
+ 556
+
+ 7
+
+
+ 0
+
+
+
+
+ 14
+
+
+ ru
+ •Сводка по участию в госзакупках.
+
+
+
+
+
+
+
+ 557
7
@@ -9436,28 +10414,6 @@
16
-
-
- ru
- •Сводка по участию в госзакупках.
-
-
-
-
-
-
-
- 513
-
- 7
-
-
- 0
-
-
-
-
- 18
ru
@@ -9469,7 +10425,7 @@
- 514
+ 558
7
@@ -9479,13 +10435,13 @@
- 14
+ 12
- 515
+ 559
7
@@ -9495,7 +10451,7 @@
- 17
+ 15
ru
@@ -9507,7 +10463,7 @@
- 516
+ 560
7
@@ -9517,7 +10473,7 @@
- 18
+ 16
ru
@@ -9529,7 +10485,7 @@
- 517
+ 561
1
@@ -9540,7 +10496,7 @@
- 518
+ 562
@@ -9561,7 +10517,7 @@
- 519
+ 563
7
@@ -9573,7 +10529,7 @@
- 520
+ 564
7
@@ -9585,7 +10541,7 @@
- 521
+ 565
7
@@ -9603,7 +10559,7 @@
- 522
+ 566
7
@@ -9616,7 +10572,7 @@
- 523
+ 567
7
@@ -9634,7 +10590,7 @@
- 524
+ 568
7
@@ -9646,7 +10602,7 @@
- 525
+ 569
7
@@ -9664,7 +10620,7 @@
- 526
+ 570
7
@@ -9682,7 +10638,7 @@
- 527
+ 571
7
@@ -9704,7 +10660,45 @@
- 528
+ 572
+
+ 7
+
+
+ 0
+
+
+
+
+ 12
+
+
+
+
+
+ 573
+
+ 7
+
+
+ 0
+
+
+
+
+ 13
+
+
+ ru
+ Новое в версии 11.5.25.112
+
+
+
+
+
+
+
+ 574
7
@@ -9720,165 +10714,7 @@
- 529
-
- 7
-
-
- 0
-
-
-
-
- 15
-
-
- ru
- Новое в версии 11.5.25.112
-
-
-
-
-
-
-
- 530
-
- 7
-
-
- 0
-
-
-
-
- 16
-
-
-
-
-
- 531
-
- 7
-
-
- 0
-
-
-
-
- 15
-
-
- ru
- Сервисные возможности и настройки интеграции
-
-
-
-
-
-
-
- 532
-
- 7
-
-
- 0
-
-
-
-
- 16
-
-
-
-
-
- 533
-
- 7
-
-
- 0
-
-
-
-
- 17
-
-
- ru
- Стандартные подсистемы
-
-
-
-
-
-
-
- 534
-
- 7
-
-
- 0
-
-
-
-
- 18
-
-
- ru
- Библиотека стандартных подсистем обновлена до версии <link https://its.1c.ru/db/updlib#content:3:hdoc:%D0%B2%D0%B5%D1%80%D1%81%D0%B8%D1%8F-3.1.11>3.1.11.448</>.
-
-
-
-
-
-
-
- 535
-
- 7
-
-
- 0
-
-
-
-
- 16
-
-
-
-
-
- 536
-
- 7
-
-
- 0
-
-
-
-
- 17
-
-
- ru
- Интеграция с торговой площадкой Ozon
-
-
-
-
-
-
-
- 537
+ 575
7
@@ -9889,6 +10725,126 @@
13
+
+
+ ru
+ Сервисные возможности и настройки интеграции
+
+
+
+
+
+
+
+ 576
+
+ 7
+
+
+ 0
+
+
+
+
+ 14
+
+
+
+
+
+ 577
+
+ 7
+
+
+ 0
+
+
+
+
+ 15
+
+
+ ru
+ Стандартные подсистемы
+
+
+
+
+
+
+
+ 578
+
+ 7
+
+
+ 0
+
+
+
+
+ 16
+
+
+ ru
+ Библиотека стандартных подсистем обновлена до версии <link https://its.1c.ru/db/updlib#content:3:hdoc:%D0%B2%D0%B5%D1%80%D1%81%D0%B8%D1%8F-3.1.11>3.1.11.448</>.
+
+
+
+
+
+
+
+ 579
+
+ 7
+
+
+ 0
+
+
+
+
+ 14
+
+
+
+
+
+ 580
+
+ 7
+
+
+ 0
+
+
+
+
+ 15
+
+
+ ru
+ Интеграция с торговой площадкой Ozon
+
+
+
+
+
+
+
+ 581
+
+ 7
+
+
+ 0
+
+
+
+
+ 17
ru
@@ -9900,7 +10856,7 @@
- 538
+ 582
1
@@ -9911,7 +10867,7 @@
- 539
+ 583
@@ -9932,7 +10888,7 @@
- 540
+ 584
7
@@ -9944,7 +10900,7 @@
- 541
+ 585
7
@@ -9956,7 +10912,7 @@
- 542
+ 586
7
@@ -9974,7 +10930,7 @@
- 543
+ 587
7
@@ -9987,7 +10943,7 @@
- 544
+ 588
7
@@ -10005,7 +10961,7 @@
- 545
+ 589
7
@@ -10017,7 +10973,7 @@
- 546
+ 590
7
@@ -10035,7 +10991,7 @@
- 547
+ 591
7
@@ -10053,7 +11009,7 @@
- 548
+ 592
7
@@ -10075,7 +11031,7 @@
- 549
+ 593
1
@@ -10086,7 +11042,7 @@
- 550
+ 594
@@ -10107,7 +11063,7 @@
- 551
+ 595
7
@@ -10119,7 +11075,7 @@
- 552
+ 596
7
@@ -10131,7 +11087,7 @@
- 553
+ 597
7
@@ -10149,7 +11105,7 @@
- 554
+ 598
7
@@ -10161,7 +11117,7 @@
- 555
+ 599
7
@@ -10179,7 +11135,7 @@
- 556
+ 600
7
@@ -10191,7 +11147,7 @@
- 557
+ 601
7
@@ -10209,7 +11165,7 @@
- 558
+ 602
7
@@ -10222,7 +11178,7 @@
- 559
+ 603
7
@@ -10240,7 +11196,7 @@
- 560
+ 604
7
@@ -10253,7 +11209,7 @@
- 561
+ 605
7
@@ -10275,7 +11231,7 @@
- 562
+ 606
7
@@ -10288,7 +11244,7 @@
- 563
+ 607
7
@@ -10306,7 +11262,7 @@
- 564
+ 608
7
@@ -10319,7 +11275,7 @@
- 565
+ 609
7
@@ -10337,7 +11293,7 @@
- 566
+ 610
7
@@ -10350,7 +11306,7 @@
- 567
+ 611
7
@@ -10362,7 +11318,7 @@
- 568
+ 612
7
@@ -10375,7 +11331,7 @@
- 569
+ 613
7
@@ -10393,7 +11349,7 @@
- 570
+ 614
7
@@ -10406,7 +11362,7 @@
- 571
+ 615
7
@@ -10424,7 +11380,7 @@
- 572
+ 616
7
@@ -10437,7 +11393,7 @@
- 573
+ 617
7
@@ -10460,7 +11416,7 @@
- 574
+ 618
7
@@ -10473,7 +11429,7 @@
- 575
+ 619
7
@@ -10485,7 +11441,7 @@
- 576
+ 620
7
@@ -10498,7 +11454,7 @@
- 577
+ 621
7
@@ -10516,7 +11472,7 @@
- 578
+ 622
7
@@ -10529,7 +11485,7 @@
- 579
+ 623
7
@@ -10547,7 +11503,7 @@
- 580
+ 624
7
@@ -10560,7 +11516,7 @@
- 581
+ 625
7
@@ -10572,7 +11528,7 @@
- 582
+ 626
7
@@ -10585,7 +11541,7 @@
- 583
+ 627
7
@@ -10603,7 +11559,7 @@
- 584
+ 628
7
@@ -10615,7 +11571,7 @@
- 585
+ 629
7
@@ -10633,7 +11589,7 @@
- 586
+ 630
7
@@ -10646,7 +11602,7 @@
- 587
+ 631
7
@@ -10663,679 +11619,6 @@
-
- 588
-
- 7
-
- 1
-
- 21
-
-
-
-
-
-
- 589
-
- 7
-
- 1
-
- 30
-
-
-
-
-
- 590
-
- 7
-
- 1
-
- 21
-
-
-
-
-
-
- 591
-
- 7
-
- 1
-
- 29
-
-
- ru
- Настройка автоматической рассылки поздравлений
-
-
-
-
-
-
-
- 592
-
- 7
-
- 1
-
- 21
-
-
-
-
-
- 593
-
- 7
-
- 1
-
- 26
-
-
- ru
- <b>Важно! </>Автоматическая рассылка поздравлений доступна только в версии КОРП линейки решений 1C:CRM.
-
-
-
-
-
-
-
- 594
-
- 7
-
- 1
-
- 21
-
-
-
-
-
-
- 595
-
- 7
-
- 1
-
- 26
-
-
- ru
- Шаблоны рассылок по умолчанию используются в том случае, если иные не выбраны в карточке праздника. Их можно заполнить в разделе настроек поздравлений с праздниками: <b>Настройки</> → <b>Настройки</> <b>системы</> → <b>Маркетинг</> →<b> Поздравления с праздниками</>.
-
-
-
-
-
-
-
- 596
-
- 7
-
- 1
-
- 21
-
-
-
-
-
-
- 597
-
- 7
-
- 1
-
- 31
-
-
-
-
-
- 598
-
- 7
-
- 1
-
- 21
-
-
-
-
-
-
- 599
-
- 7
-
- 1
-
- 26
-
-
- ru
- Перед включением автоматической рассылки необходимо выполнить все настройки и ввести необходимые данные.
-
-
-
-
-
-
-
- 600
-
- 7
-
- 1
-
- 21
-
-
-
-
-
-
- 601
-
- 7
-
- 1
-
- 26
-
-
- ru
- Подробнее читайте в статье "Праздники и рассылка поздравлений":
-
-
- ref1
-
-
-
-
-
- 602
-
- 7
-
- 1
-
- 32
-
-
- ru
- https://1crm.ru/help/prazdniki-i-rassylka-pozdravleniy/
-
-
-
-
-
-
-
- 603
-
- 7
-
- 1
-
- 32
-
-
-
-
-
- 604
-
- 7
-
- 1
-
- 20
-
-
- ru
- Групповая выдача поручений
-
-
-
-
-
-
-
- 605
-
- 7
-
- 1
-
- 21
-
-
-
-
-
- 606
-
- 7
-
- 1
-
- 22
-
-
- ru
- Ситуация: руководитель хочет выдать поручение группе сотрудников. При этом общее задание каждый должен выполнить самостоятельно, прикрепить отчет и сопутствующие файлы.
-
-
-
-
-
-
-
- 607
-
- 7
-
- 1
-
- 23
-
-
-
-
-
-
- 608
-
- 7
-
- 1
-
- 22
-
-
- ru
- Примеры такого задания:
-
-
-
-
-
-
-
- 609
-
- 7
-
- 1
-
- 23
-
-
-
-
-
-
- 610
-
- 7
-
- 1
-
- 22
-
-
- ru
- • подготовить квартальный отчет;
- • провести ABC‑анализ клиентов по регионам, закрепленным за каждым менеджером;
- • составить индивидуальный план работы на следующий месяц;
- • выявить узкие места в своём рабочем процессе и предложить способы их устранения.
-
-
-
- list1
-
-
-
-
-
- 611
-
- 7
-
- 1
-
- 23
-
-
-
-
-
-
- 612
-
- 7
-
- 1
-
- 22
-
-
- ru
- Для решения подобных задач в продукт добавлена обработка «Групповая выдача поручений». Обработка открывается из раздела <b>Процессы</> → <b>Сервис</>.
-
-
-
-
-
-
-
- 613
-
- 7
-
- 1
-
- 23
-
-
-
-
-
-
- 614
-
- 7
-
- 1
-
- 22
-
-
- ru
- Форма групповой выдачи похожа на форму выдачи обычного поручения, но имеет и свои отличия.
-
-
-
-
-
-
-
- 615
-
- 7
-
- 1
-
- 21
-
-
-
-
-
-
- 616
-
- 7
-
- 1
-
- 33
-
-
-
-
-
- 617
-
- 7
-
- 1
-
- 21
-
-
-
-
-
-
- 618
-
- 7
-
- 1
-
- 22
-
-
- ru
- В списке исполнителей, помимо типовых команд «Добавить» и «Подобрать», в меню «Заполнить» находятся команды группового заполнения:
-
-
-
-
-
-
-
- 619
-
- 7
-
- 1
-
- 21
-
-
-
-
-
-
- 620
-
- 7
-
- 1
-
- 26
-
-
- ru
- • По группе пользователей
- • По подразделению
- • По подразделению с учетом вложенных
- • По результатам отчета
- • По роли
-
-
-
- list1
-
-
-
-
-
- 621
-
- 7
-
- 1
-
- 21
-
-
-
-
-
-
- 622
-
- 7
-
- 1
-
- 22
-
-
- ru
- Также в командной панели списка находится команда «Добавить роль» для выдачи поручения на определенную Роль. В отличии от «заполнения по роли», когда в список добавляются участники выбранной роли, в этом случае добавляется сама Роль (созданное поручение выполнит тот участник роли, кто первый примет поручение в работу).
-
-
-
-
-
-
-
- 623
-
- 7
-
- 1
-
- 23
-
-
-
-
-
-
- 624
-
- 7
-
- 1
-
- 22
-
-
- ru
- При групповой выдаче поручений можно добавить файлы, которые будут доступны в каждом созданном поручении.
-
-
-
-
-
-
-
- 625
-
- 7
-
- 1
-
- 23
-
-
-
-
-
-
- 626
-
- 7
-
- 1
-
- 22
-
-
- ru
- Файлы, добавленные при создании, нельзя удалить из созданных поручений, но исполнитель может добавить собственные файлы, как результат проделанной им работы. Они будут уникальны и доступны только в данном поручении.
-
-
-
-
-
-
-
- 627
-
- 7
-
- 1
-
- 23
-
-
-
-
-
-
- 628
-
- 7
-
- 1
-
- 22
-
-
- ru
- Помимо раздела <b>Процессы</>, команда групповой выдачи поручений доступна в АРМ «Мои дела», «Мои задачи» и «Все задачи».
-
-
-
-
-
-
-
- 629
-
- 7
-
- 1
-
- 23
-
-
-
-
-
-
- 630
-
- 7
-
- 1
-
- 22
-
-
- ru
- Для настройки доступа к обработке добавлена роль «Групповая выдача поручений» и предопределенный профиль групп доступа «Групповая выдача поручений». Также при переходе на релиз автоматически создается группа доступа «Групповая выдача поручений», а ряду других групп доступа прописывается данная роль (например, для профиля «Руководитель отдела продаж», «Коммерческий директор», «Управление маркетингом»).
-
-
-
-
-
-
-
- 631
-
- 7
-
- 1
-
- 21
-
-
-
-
-
632
@@ -11343,14 +11626,8 @@
1
- 26
-
-
- ru
- Подробнее читайте в статье "Групповая выдача поручений":
-
-
- ref2
+ 21
+
@@ -11362,13 +11639,7 @@
1
- 32
-
-
- ru
- https://1crm.ru/help/gruppovaya-vydacha-porucheniy/
-
-
+ 30
@@ -11380,7 +11651,8 @@
1
- 32
+ 21
+
@@ -11392,11 +11664,11 @@
1
- 20
+ 29
ru
- АРМ «Монитор руководителя»
+ Настройка автоматической рассылки поздравлений
@@ -11422,13 +11694,13 @@
1
- 29
-
+ 26
+
ru
- Разделы в АРМ «Монитор руководителя»
+ <b>Важно! </>Автоматическая рассылка поздравлений доступна только в версии КОРП линейки решений 1C:CRM.
-
+
@@ -11441,6 +11713,7 @@
1
21
+
@@ -11452,13 +11725,13 @@
1
- 22
-
+ 26
+
ru
- В настройки АРМ «Монитор руководителя» добавлена возможность создавать разделы для размещения виджетов. Переключаться между созданными разделами можно с помощью панели кнопок в верхней части окна АРМ.
+ Шаблоны рассылок по умолчанию используются в том случае, если иные не выбраны в карточке праздника. Их можно заполнить в разделе настроек поздравлений с праздниками: <b>Настройки</> → <b>Настройки</> <b>системы</> → <b>Маркетинг</> →<b> Поздравления с праздниками</>.
-
+
@@ -11483,7 +11756,7 @@
1
- 34
+ 31
@@ -11512,7 +11785,7 @@
ru
- Каждый раздел может быть сделан личным и доступным только автору (по умолчанию) или общедоступным - в этом случае его увидят в АРМ все пользователи.
+ Перед включением автоматической рассылки необходимо выполнить все настройки и ввести необходимые данные.
@@ -11539,7 +11812,14 @@
1
- 35
+ 26
+
+
+ ru
+ Подробнее читайте в статье "Праздники и рассылка поздравлений":
+
+
+ ref1
@@ -11551,8 +11831,13 @@
1
- 21
-
+ 32
+
+
+ ru
+ https://1crm.ru/help/prazdniki-i-rassylka-pozdravleniy/
+
+
@@ -11564,13 +11849,7 @@
1
- 26
-
-
- ru
- Количество разделов не более 10.
-
-
+ 32
@@ -11582,8 +11861,13 @@
1
- 21
-
+ 20
+
+
+ ru
+ Групповая выдача поручений
+
+
@@ -11595,13 +11879,7 @@
1
- 26
-
-
- ru
- Виджеты можно копировать и переносить между разделами с помощью команд контекстного меню виджета.
-
-
+ 21
@@ -11613,8 +11891,13 @@
1
- 21
-
+ 22
+
+
+ ru
+ Ситуация: руководитель хочет выдать поручение группе сотрудников. При этом общее задание каждый должен выполнить самостоятельно, прикрепить отчет и сопутствующие файлы.
+
+
@@ -11626,7 +11909,8 @@
1
- 36
+ 23
+
@@ -11638,8 +11922,13 @@
1
- 21
-
+ 22
+
+
+ ru
+ Примеры такого задания:
+
+
@@ -11651,13 +11940,8 @@
1
- 26
-
-
- ru
- В форме настроек разделов доступно копирование другим пользователям.
-
-
+ 23
+
@@ -11669,8 +11953,18 @@
1
- 21
-
+ 22
+
+
+ ru
+ • подготовить квартальный отчет;
+ • провести ABC‑анализ клиентов по регионам, закрепленным за каждым менеджером;
+ • составить индивидуальный план работы на следующий месяц;
+ • выявить узкие места в своём рабочем процессе и предложить способы их устранения.
+
+
+
+ list1
@@ -11682,13 +11976,8 @@
1
- 29
-
-
- ru
- Настройка масштаба и распределение виджетов
-
-
+ 23
+
@@ -11700,7 +11989,13 @@
1
- 21
+ 22
+
+
+ ru
+ Для решения подобных задач в продукт добавлена обработка «Групповая выдача поручений». Обработка открывается из раздела <b>Процессы</> → <b>Сервис</>.
+
+
@@ -11712,13 +12007,8 @@
1
- 22
-
-
- ru
- В настройках АРМ «Монитор руководителя» добавлена возможность ручного или автоматического масштабирования сетки виджетов, а также выбор режима распределения виджетов на сетке - автоматически или вручную.
-
-
+ 23
+
@@ -11730,8 +12020,13 @@
1
- 21
-
+ 22
+
+
+ ru
+ Форма групповой выдачи похожа на форму выдачи обычного поручения, но имеет и свои отличия.
+
+
@@ -11743,7 +12038,8 @@
1
- 37
+ 21
+
@@ -11755,8 +12051,7 @@
1
- 21
-
+ 33
@@ -11768,13 +12063,8 @@
1
- 22
-
-
- ru
- В автоматическом режиме виджеты будут размещаться на сетке максимально экономно, вплотную друг к другу. При ручном режиме виджеты можно переносить в любое место сетки, в том числе размещать их отдельно от других виджетов.
-
-
+ 21
+
@@ -11786,7 +12076,13 @@
1
- 38
+ 22
+
+
+ ru
+ В списке исполнителей, помимо типовых команд «Добавить» и «Подобрать», в меню «Заполнить» находятся команды группового заполнения:
+
+
@@ -11798,13 +12094,8 @@
1
- 20
-
-
- ru
- Документ «Интерес»
-
-
+ 21
+
@@ -11816,7 +12107,19 @@
1
- 38
+ 26
+
+
+ ru
+ • По группе пользователей
+ • По подразделению
+ • По подразделению с учетом вложенных
+ • По результатам отчета
+ • По роли
+
+
+
+ list1
@@ -11828,18 +12131,8 @@
1
- 39
-
-
- ru
- В форме интереса в разделе Ленты «Письмо» изменено поведение команды «Шаблон». Ранее по этой команде открывался ниспадающий список шаблонов. Теперь открывается форма выбора справочника шаблонов, так как в этом случае видна иерархия шаблонов.
-
-В командную панель формы Интереса выведена команда «Дополнительные сведения».
-
-В командную панель формы Интереса выведена команда «Структура подчиненности».
-
-
-
+ 21
+
@@ -11851,7 +12144,13 @@
1
- 40
+ 22
+
+
+ ru
+ Также в командной панели списка находится команда «Добавить роль» для выдачи поручения на определенную Роль. В отличии от «заполнения по роли», когда в список добавляются участники выбранной роли, в этом случае добавляется сама Роль (созданное поручение выполнит тот участник роли, кто первый примет поручение в работу).
+
+
@@ -11863,16 +12162,8 @@
1
- 39
-
-
- ru
- Добавлена возможность выбора Пользователя при установке в поле «Канал» значения «Рекомендация сотрудника».
-
-Увеличена длина поля «Всего» под табличной частью товаром. Ранее в поле не помещались большие значения сумм.
-
-
-
+ 23
+
@@ -11884,7 +12175,13 @@
1
- 39
+ 22
+
+
+ ru
+ При групповой выдаче поручений можно добавить файлы, которые будут доступны в каждом созданном поручении.
+
+
@@ -11896,16 +12193,8 @@
1
- 39
-
-
- ru
- Повышено быстродействие в формах документа «Интерес» за счет оптимизации клиент-серверного взаимодействия.
-
-Для документа «Интерес» добавлена поддержка создания «Макетов файлов выгрузки».
-
-
-
+ 23
+
@@ -11917,8 +12206,13 @@
1
- 21
-
+ 22
+
+
+ ru
+ Файлы, добавленные при создании, нельзя удалить из созданных поручений, но исполнитель может добавить собственные файлы, как результат проделанной им работы. Они будут уникальны и доступны только в данном поручении.
+
+
@@ -11930,13 +12224,8 @@
1
- 20
-
-
- ru
- Новая воронка продаж
-
-
+ 23
+
@@ -11948,7 +12237,13 @@
1
- 21
+ 22
+
+
+ ru
+ Помимо раздела <b>Процессы</>, команда групповой выдачи поручений доступна в АРМ «Мои дела», «Мои задачи» и «Все задачи».
+
+
@@ -11960,13 +12255,8 @@
1
- 22
-
-
- ru
- «Воронка продаж» предназначена для оперативного контроля и помогает менеджерам и руководителям анализировать прохождение сделок по этапам.
-
-
+ 23
+
@@ -11978,8 +12268,13 @@
1
- 23
-
+ 22
+
+
+ ru
+ Для настройки доступа к обработке добавлена роль «Групповая выдача поручений» и предопределенный профиль групп доступа «Групповая выдача поручений». Также при переходе на релиз автоматически создается группа доступа «Групповая выдача поручений», а ряду других групп доступа прописывается данная роль (например, для профиля «Руководитель отдела продаж», «Коммерческий директор», «Управление маркетингом»).
+
+
@@ -11991,13 +12286,8 @@
1
- 22
-
-
- ru
- Отчет позволяет получить информацию о состоянии продаж: от проявленного клиентом интереса до завершения сделки. Анализ помогает выявить проблемные этапы для принятия корректирующих решений.
-
-
+ 21
+
@@ -12009,8 +12299,14 @@
1
- 23
-
+ 26
+
+
+ ru
+ Подробнее читайте в статье "Групповая выдача поручений":
+
+
+ ref2
@@ -12022,11 +12318,11 @@
1
- 22
+ 32
ru
- Представлен новый вариант Воронки продаж, с полностью переработанным дизайном.
+ https://1crm.ru/help/gruppovaya-vydacha-porucheniy/
@@ -12040,8 +12336,7 @@
1
- 21
-
+ 32
@@ -12053,7 +12348,13 @@
1
- 41
+ 20
+
+
+ ru
+ АРМ «Монитор руководителя»
+
+
@@ -12066,7 +12367,6 @@
1
21
-
@@ -12078,11 +12378,11 @@
1
- 26
+ 29
ru
- Воронка продаж содержит следующие данные:
+ Разделы в АРМ «Монитор руководителя»
@@ -12097,7 +12397,6 @@
1
21
-
@@ -12109,22 +12408,13 @@
1
- 26
-
+ 22
+
ru
- • <b>Вертикальная диаграмма</>. Основная воронка отображается в виде вертикальной диаграммы, которая показывает количество сделок на каждом этапе. Под диаграммой расположена легенда с суммами по каждому этапу.
-
- • <b>Ключевые показатели </>в верхней части отчета (общая конверсия, средняя длительность, успешные и неудачные сделки по сумме) в отчете представлены в виде отдельных плашек с крупными цифрами в верхней части отчета.
-
-Конверсия «Воронки продаж» является отношением успешно завершенных сделок к общему количеству завершенных сделок за выбранный период.
-
-Это ключевой показатель эффективности (KPI) работы менеджеров. Значительная разница в конверсии между соседними этапами указывает на потенциальные проблемы в процессе работы, требующие анализа причин и управленческих решений.
-
- • А<b>налитические мини-диаграммы</>:
+ В настройки АРМ «Монитор руководителя» добавлена возможность создавать разделы для размещения виджетов. Переключаться между созданными разделами можно с помощью панели кнопок в верхней части окна АРМ.
-
- list1
+
@@ -12149,18 +12439,7 @@
1
- 22
-
-
- ru
- • График «Среднее нахождение на этапах» показывает, сколько времени в среднем сделки остаются на каждом этапе.
- • График «Продажи на этапах в сравнении с оценкой» показывает потенциальную выручку (оценку) и продажи, сравнивая их между собой.
- • «Диаграмма по причинам потери интересов» показывает, на каких этапах и по каким причинам сделки теряются чаще всего.
- • «Настраиваемый аналитический виджет» – позволяет выбрать для отображения один из показателей: динамика продаж, дебиторская задолженность или динамика статусов клиентов.
-
-
-
- list2
+ 34
@@ -12180,6 +12459,683 @@
687
+
+ 7
+
+ 1
+
+ 26
+
+
+ ru
+ Каждый раздел может быть сделан личным и доступным только автору (по умолчанию) или общедоступным - в этом случае его увидят в АРМ все пользователи.
+
+
+
+
+
+
+
+ 688
+
+ 7
+
+ 1
+
+ 21
+
+
+
+
+
+
+ 689
+
+ 7
+
+ 1
+
+ 35
+
+
+
+
+
+ 690
+
+ 7
+
+ 1
+
+ 21
+
+
+
+
+
+
+ 691
+
+ 7
+
+ 1
+
+ 26
+
+
+ ru
+ Количество разделов не более 10.
+
+
+
+
+
+
+
+ 692
+
+ 7
+
+ 1
+
+ 21
+
+
+
+
+
+
+ 693
+
+ 7
+
+ 1
+
+ 26
+
+
+ ru
+ Виджеты можно копировать и переносить между разделами с помощью команд контекстного меню виджета.
+
+
+
+
+
+
+
+ 694
+
+ 7
+
+ 1
+
+ 21
+
+
+
+
+
+
+ 695
+
+ 7
+
+ 1
+
+ 36
+
+
+
+
+
+ 696
+
+ 7
+
+ 1
+
+ 21
+
+
+
+
+
+
+ 697
+
+ 7
+
+ 1
+
+ 26
+
+
+ ru
+ В форме настроек разделов доступно копирование другим пользователям.
+
+
+
+
+
+
+
+ 698
+
+ 7
+
+ 1
+
+ 21
+
+
+
+
+
+
+ 699
+
+ 7
+
+ 1
+
+ 29
+
+
+ ru
+ Настройка масштаба и распределение виджетов
+
+
+
+
+
+
+
+ 700
+
+ 7
+
+ 1
+
+ 21
+
+
+
+
+
+ 701
+
+ 7
+
+ 1
+
+ 22
+
+
+ ru
+ В настройках АРМ «Монитор руководителя» добавлена возможность ручного или автоматического масштабирования сетки виджетов, а также выбор режима распределения виджетов на сетке - автоматически или вручную.
+
+
+
+
+
+
+
+ 702
+
+ 7
+
+ 1
+
+ 21
+
+
+
+
+
+
+ 703
+
+ 7
+
+ 1
+
+ 37
+
+
+
+
+
+ 704
+
+ 7
+
+ 1
+
+ 21
+
+
+
+
+
+
+ 705
+
+ 7
+
+ 1
+
+ 22
+
+
+ ru
+ В автоматическом режиме виджеты будут размещаться на сетке максимально экономно, вплотную друг к другу. При ручном режиме виджеты можно переносить в любое место сетки, в том числе размещать их отдельно от других виджетов.
+
+
+
+
+
+
+
+ 706
+
+ 7
+
+ 1
+
+ 38
+
+
+
+
+
+ 707
+
+ 7
+
+ 1
+
+ 20
+
+
+ ru
+ Документ «Интерес»
+
+
+
+
+
+
+
+ 708
+
+ 7
+
+ 1
+
+ 38
+
+
+
+
+
+ 709
+
+ 7
+
+ 1
+
+ 39
+
+
+ ru
+ В форме интереса в разделе Ленты «Письмо» изменено поведение команды «Шаблон». Ранее по этой команде открывался ниспадающий список шаблонов. Теперь открывается форма выбора справочника шаблонов, так как в этом случае видна иерархия шаблонов.
+
+В командную панель формы Интереса выведена команда «Дополнительные сведения».
+
+В командную панель формы Интереса выведена команда «Структура подчиненности».
+
+
+
+
+
+
+
+
+ 710
+
+ 7
+
+ 1
+
+ 40
+
+
+
+
+
+ 711
+
+ 7
+
+ 1
+
+ 39
+
+
+ ru
+ Добавлена возможность выбора Пользователя при установке в поле «Канал» значения «Рекомендация сотрудника».
+
+Увеличена длина поля «Всего» под табличной частью товаром. Ранее в поле не помещались большие значения сумм.
+
+
+
+
+
+
+
+
+ 712
+
+ 7
+
+ 1
+
+ 39
+
+
+
+
+
+ 713
+
+ 7
+
+ 1
+
+ 39
+
+
+ ru
+ Повышено быстродействие в формах документа «Интерес» за счет оптимизации клиент-серверного взаимодействия.
+
+Для документа «Интерес» добавлена поддержка создания «Макетов файлов выгрузки».
+
+
+
+
+
+
+
+
+ 714
+
+ 7
+
+ 1
+
+ 21
+
+
+
+
+
+
+ 715
+
+ 7
+
+ 1
+
+ 20
+
+
+ ru
+ Новая воронка продаж
+
+
+
+
+
+
+
+ 716
+
+ 7
+
+ 1
+
+ 21
+
+
+
+
+
+ 717
+
+ 7
+
+ 1
+
+ 22
+
+
+ ru
+ «Воронка продаж» предназначена для оперативного контроля и помогает менеджерам и руководителям анализировать прохождение сделок по этапам.
+
+
+
+
+
+
+
+ 718
+
+ 7
+
+ 1
+
+ 23
+
+
+
+
+
+
+ 719
+
+ 7
+
+ 1
+
+ 22
+
+
+ ru
+ Отчет позволяет получить информацию о состоянии продаж: от проявленного клиентом интереса до завершения сделки. Анализ помогает выявить проблемные этапы для принятия корректирующих решений.
+
+
+
+
+
+
+
+ 720
+
+ 7
+
+ 1
+
+ 23
+
+
+
+
+
+
+ 721
+
+ 7
+
+ 1
+
+ 22
+
+
+ ru
+ Представлен новый вариант Воронки продаж, с полностью переработанным дизайном.
+
+
+
+
+
+
+
+ 722
+
+ 7
+
+ 1
+
+ 21
+
+
+
+
+
+
+ 723
+
+ 7
+
+ 1
+
+ 41
+
+
+
+
+
+ 724
+
+ 7
+
+ 1
+
+ 21
+
+
+
+
+
+
+ 725
+
+ 7
+
+ 1
+
+ 26
+
+
+ ru
+ Воронка продаж содержит следующие данные:
+
+
+
+
+
+
+
+ 726
+
+ 7
+
+ 1
+
+ 21
+
+
+
+
+
+
+ 727
+
+ 7
+
+ 1
+
+ 26
+
+
+ ru
+ • <b>Вертикальная диаграмма</>. Основная воронка отображается в виде вертикальной диаграммы, которая показывает количество сделок на каждом этапе. Под диаграммой расположена легенда с суммами по каждому этапу.
+
+ • <b>Ключевые показатели </>в верхней части отчета (общая конверсия, средняя длительность, успешные и неудачные сделки по сумме) в отчете представлены в виде отдельных плашек с крупными цифрами в верхней части отчета.
+
+Конверсия «Воронки продаж» является отношением успешно завершенных сделок к общему количеству завершенных сделок за выбранный период.
+
+Это ключевой показатель эффективности (KPI) работы менеджеров. Значительная разница в конверсии между соседними этапами указывает на потенциальные проблемы в процессе работы, требующие анализа причин и управленческих решений.
+
+ • А<b>налитические мини-диаграммы</>:
+
+
+ list1
+
+
+
+
+
+ 728
+
+ 7
+
+ 1
+
+ 21
+
+
+
+
+
+
+ 729
+
+ 7
+
+ 1
+
+ 22
+
+
+ ru
+ • График «Среднее нахождение на этапах» показывает, сколько времени в среднем сделки остаются на каждом этапе.
+ • График «Продажи на этапах в сравнении с оценкой» показывает потенциальную выручку (оценку) и продажи, сравнивая их между собой.
+ • «Диаграмма по причинам потери интересов» показывает, на каких этапах и по каким причинам сделки теряются чаще всего.
+ • «Настраиваемый аналитический виджет» – позволяет выбрать для отображения один из показателей: динамика продаж, дебиторская задолженность или динамика статусов клиентов.
+
+
+
+ list2
+
+
+
+
+
+ 730
+
+ 7
+
+ 1
+
+ 21
+
+
+
+
+
+
+ 731
7
@@ -12198,7 +13154,7 @@
- 688
+ 732
7
@@ -12216,7 +13172,7 @@
- 689
+ 733
7
@@ -12228,7 +13184,7 @@
- 690
+ 734
7
@@ -12245,650 +13201,6 @@
-
- 691
-
- 7
-
- 1
-
- 21
-
-
-
-
-
- 692
-
- 7
-
- 1
-
- 26
-
-
- ru
- Механизм оповещений о событиях мессенджеров и ошибках сервисов в АРМ «Диалоги» реализован в режиме онлайн, без использования Системы взаимодействия. Данное решение работает стабильнее и быстрее.
-
-
-
-
-
-
-
- 693
-
- 7
-
- 1
-
- 21
-
-
-
-
-
-
- 694
-
- 7
-
- 1
-
- 26
-
-
- ru
- Добавлена возможность редактировать текст и время отправки отложенных сообщений.
-
-
-
-
-
-
-
- 695
-
- 7
-
- 1
-
- 21
-
-
-
-
-
-
- 696
-
- 7
-
- 1
-
- 42
-
-
-
-
-
- 697
-
- 7
-
- 1
-
- 21
-
-
-
-
-
-
- 698
-
- 7
-
- 1
-
- 22
-
-
- ru
- По кнопке «Отложенные сообщения» в правом верхнем углу открывается список всех сообщений, которые не были отправлены. В контекстном меню каждого отложенного сообщения находятся команды для редактирования текста сообщения, изменения даты и времени отправки и отмены отправки сообщения.
-
-
-
-
-
-
-
- 699
-
- 7
-
- 1
-
- 21
-
-
-
-
-
-
- 700
-
- 7
-
- 1
-
- 22
-
-
- ru
- Реализовано получение текста отредактированного клиентом сообщения с индикацией факта редактирования (картинка карандаша). Ранее отображался только первый полученный текст сообщения.
-
-
-
-
-
-
-
- 701
-
- 7
-
- 1
-
- 21
-
-
-
-
-
-
- 702
-
- 7
-
- 1
-
- 43
-
-
-
-
-
- 703
-
- 7
-
- 1
-
- 21
-
-
-
-
-
-
- 704
-
- 7
-
- 1
-
- 22
-
-
- ru
- Добавлена возможность редактирования отправленных ранее сообщений из 1C:CRM. Период времени, в течение которого можно отредактировать отправленное сообщение, зависит от ограничений конкретного мессенджера.
-
-
-
-
-
-
-
- 705
-
- 7
-
- 1
-
- 21
-
-
-
-
-
-
- 706
-
- 7
-
- 1
-
- 44
-
-
-
-
-
- 707
-
- 7
-
- 1
-
- 21
-
-
-
-
-
-
- 708
-
- 7
-
- 1
-
- 26
-
-
- ru
- Реализована возможность для группового чата ответить в личное сообщение его участнику. При этом открывается активный диалог, если он есть, или создается новый.
-
-
-
-
-
-
-
- 709
-
- 7
-
- 1
-
- 21
-
-
-
-
-
-
- 710
-
- 7
-
- 1
-
- 45
-
-
-
-
-
- 711
-
- 7
-
- 1
-
- 21
-
-
-
-
-
-
- 712
-
- 7
-
- 1
-
- 26
-
-
- ru
- Сделана поддержка удаления входящих сообщений, если клиент удалил их в мессенджере.
-
-
-
-
-
-
-
- 713
-
- 7
-
- 1
-
- 21
-
-
-
-
-
-
- 714
-
- 7
-
- 1
-
- 22
-
-
- ru
- Добавлено отображение статусов отправленных сообщений - отправлено, доставлено и прочитано (при наличии этой возможности у мессенджера и его API).
-
-
-
-
-
-
-
- 715
-
- 7
-
- 1
-
- 21
-
-
-
-
-
-
- 716
-
- 7
-
- 1
-
- 46
-
-
-
-
-
- 717
-
- 7
-
- 1
-
- 21
-
-
-
-
-
-
- 718
-
- 7
-
- 1
-
- 26
-
-
- ru
- • 1 галочка серого цвета – отправлено, дополняется временем выполнения соответствующего действия;
- • 2 галочки серого цвета – доставлено получателю;
- • 2 галочки синего цвета – сообщение прочитано.
-
-
-
- list1
-
-
-
-
-
- 719
-
- 7
-
- 1
-
- 21
-
-
-
-
-
-
- 720
-
- 7
-
- 1
-
- 29
-
-
- ru
- Новый дизайн Диалогов
-
-
-
-
-
-
-
- 721
-
- 7
-
- 1
-
- 21
-
-
-
-
-
- 722
-
- 7
-
- 1
-
- 22
-
-
- ru
- Полностью переделана панель списка диалогов, повышена информативность карточек диалогов и удобство использования АРМ.
-
-
-
-
-
-
-
- 723
-
- 7
-
- 1
-
- 21
-
-
-
-
-
-
- 724
-
- 7
-
- 1
-
- 47
-
-
-
-
-
- 725
-
- 7
-
- 1
-
- 21
-
-
-
-
-
-
- 726
-
- 7
-
- 1
-
- 26
-
-
- ru
- Рассмотрим подробнее карточку диалога.
-
-
-
-
-
-
-
- 727
-
- 7
-
- 1
-
- 21
-
-
-
-
-
-
- 728
-
- 7
-
- 1
-
- 48
-
-
-
-
-
- 729
-
- 7
-
- 1
-
- 21
-
-
-
-
-
-
- 730
-
- 7
-
- 1
-
- 49
-
-
-
-
-
- 731
-
- 7
-
- 1
-
- 21
-
-
-
-
-
-
- 732
-
- 7
-
- 1
-
- 22
-
-
- ru
- Благодаря переводу списка на HTML удалось значительно увеличить информативность и состав выводимой информации:
-
-
-
-
-
-
-
- 733
-
- 7
-
- 1
-
- 21
-
-
-
-
-
-
- 734
-
- 7
-
- 1
-
- 26
-
-
- ru
- • Информация о виде мессенджера, аккаунте, клиенте.
- • Последнее сообщение.
- • Признак взятия в работу.
- • Индикатор новых сообщений и время получения.
- • Число непрочитанных сообщений.
- • Признак группового чата.
- • Индикаторы «Только для чтения», «Является соисполнителем», «Клиент заблокирован».
-
-
-
- list1
-
-
-
-
735
@@ -12897,7 +13209,6 @@
1
21
-
@@ -12913,7 +13224,7 @@
ru
- Добавлен множественный выбор диалогов для работы с папками.
+ Механизм оповещений о событиях мессенджеров и ошибках сервисов в АРМ «Диалоги» реализован в режиме онлайн, без использования Системы взаимодействия. Данное решение работает стабильнее и быстрее.
@@ -12940,7 +13251,13 @@
1
- 50
+ 26
+
+
+ ru
+ Добавлена возможность редактировать текст и время отправки отложенных сообщений.
+
+
@@ -12952,7 +13269,8 @@
1
- 38
+ 21
+
@@ -12964,8 +13282,7 @@
1
- 21
-
+ 42
@@ -12977,13 +13294,8 @@
1
- 29
-
-
- ru
- Развитие интеграции с Telegram
-
-
+ 21
+
@@ -12995,7 +13307,13 @@
1
- 21
+ 22
+
+
+ ru
+ По кнопке «Отложенные сообщения» в правом верхнем углу открывается список всех сообщений, которые не были отправлены. В контекстном меню каждого отложенного сообщения находятся команды для редактирования текста сообщения, изменения даты и времени отправки и отмены отправки сообщения.
+
+
@@ -13007,13 +13325,8 @@
1
- 22
-
-
- ru
- Обновлена компонента TDlib от компании Telegram, через которую выполняется интеграция. Для нативной компоненты, включающей в себя TDlib, выполнен ряд оптимизаций для снижения нагрузки на сервер 1С при подключении большого числа учетных записей.
-
-
+ 21
+
@@ -13025,8 +13338,13 @@
1
- 23
-
+ 22
+
+
+ ru
+ Реализовано получение текста отредактированного клиентом сообщения с индикацией факта редактирования (картинка карандаша). Ранее отображался только первый полученный текст сообщения.
+
+
@@ -13038,13 +13356,8 @@
1
- 22
-
-
- ru
- Также расширены возможности отладки нативной компоненты в случае проблем в ее работе - больше не нужно скачивать и устанавливать дополнительные приложения для проверки зависимостей между библиотеками. Всю необходимую информацию компонента теперь выгружает сама.
-
-
+ 21
+
@@ -13056,8 +13369,7 @@
1
- 23
-
+ 43
@@ -13069,13 +13381,8 @@
1
- 22
-
-
- ru
- В связи с вводом ограничений на работу Telegram, возникли проблемы с получением вложений в сообщениях. Процесс получения сообщений ранее был синхронным и пока не загрузилось одно сообщение с файлами, другие сообщения не отображались. Теперь загрузка вложений выполняется асинхронно, не мешая вывести тексты следующих сообщений и ответить на них. Пока файл загружается, в сообщении выводится его имя с надписью «файл загружается…». После загрузки ссылка на файл становится кликабельной.
-
-
+ 21
+
@@ -13087,8 +13394,13 @@
1
- 23
-
+ 22
+
+
+ ru
+ Добавлена возможность редактирования отправленных ранее сообщений из 1C:CRM. Период времени, в течение которого можно отредактировать отправленное сообщение, зависит от ограничений конкретного мессенджера.
+
+
@@ -13100,14 +13412,8 @@
1
- 22
-
-
- ru
- Для Telegram-ботов решена проблема с получением файлов большого размера, превышающих лимиты API. Все лимиты указаны на "официальном сайте":
-
-
- ref4
+ 21
+
@@ -13119,13 +13425,7 @@
1
- 32
-
-
- ru
- https://core.telegram.org/bots/api%23sending-files
-
-
+ 44
@@ -13137,7 +13437,8 @@
1
- 32
+ 21
+
@@ -13149,11 +13450,11 @@
1
- 29
+ 26
ru
- Мессенджер MAX
+ Реализована возможность для группового чата ответить в личное сообщение его участнику. При этом открывается активный диалог, если он есть, или создается новый.
@@ -13168,6 +13469,7 @@
1
21
+
@@ -13179,15 +13481,7 @@
1
- 26
-
-
- ru
- В связи с изменениями API, авторизация аккаунта переведена на применение QR-кодов.
-
-Для уведомлений через мессенджеры добавлена поддержка мессенджера MAX.
-
-
+ 45
@@ -13212,11 +13506,11 @@
1
- 20
+ 26
ru
- Почта
+ Сделана поддержка удаления входящих сообщений, если клиент удалил их в мессенджере.
@@ -13231,6 +13525,7 @@
1
21
+
@@ -13242,11 +13537,11 @@
1
- 29
+ 22
ru
- Обновление списка писем в режиме онлайн
+ Добавлено отображение статусов отправленных сообщений - отправлено, доставлено и прочитано (при наличии этой возможности у мессенджера и его API).
@@ -13261,6 +13556,7 @@
1
21
+
@@ -13272,13 +13568,7 @@
1
- 22
-
-
- ru
- Реализовано обновление данных в почтовом клиенте в режиме онлайн. Благодаря новым возможностям платформы 1С:Предприятие стало возможно обновлять список писем именно тогда, когда они получены с почтового сервера. Помимо удобства для пользователя, это также снижает нагрузку на работу системы, так как не нужно постоянно опрашивать сервер на предмет наличия новых писем.
-
-
+ 46
@@ -13290,7 +13580,7 @@
1
- 23
+ 21
@@ -13303,13 +13593,17 @@
1
- 51
+ 26
ru
- Оптимизация механизма автосохранения писем
+ • 1 галочка серого цвета – отправлено, дополняется временем выполнения соответствующего действия;
+ • 2 галочки серого цвета – доставлено получателю;
+ • 2 галочки синего цвета – сообщение прочитано.
+
+ list1
@@ -13321,7 +13615,8 @@
1
- 23
+ 21
+
@@ -13333,11 +13628,11 @@
1
- 22
+ 29
ru
- Улучшена работа автоматического сохранения черновиков писем. Применяемый ранее механизм хеширования работал неэффективно на больших письмах, например, содержащих в себе предыдущую переписку. Теперь эта проблема решена.
+ Новый дизайн Диалогов
@@ -13351,8 +13646,7 @@
1
- 23
-
+ 21
@@ -13364,11 +13658,11 @@
1
- 51
+ 22
ru
- Прочее по почте
+ Полностью переделана панель списка диалогов, повышена информативность карточек диалогов и удобство использования АРМ.
@@ -13382,7 +13676,8 @@
1
- 23
+ 21
+
@@ -13394,13 +13689,7 @@
1
- 22
-
-
- ru
- При приеме обращения из входящего письма в «Мастере принятия обращений» добавлено отображение вложений этого письма для быстрого доступа к ним (в свернутом виде наличие вложений отображается «скрепкой»).
-
-
+ 47
@@ -13425,7 +13714,13 @@
1
- 52
+ 26
+
+
+ ru
+ Рассмотрим подробнее карточку диалога.
+
+
@@ -13450,13 +13745,7 @@
1
- 22
-
-
- ru
- Изменена логика обработки новых входящих писем, принадлежащих цепочке, которая привязана к закрытому Интересу. Ранее такое письмо привязывалось к закрытому Интересу. Теперь письмо автоматически не привязывается и доступно в АРМ «Мои продажи» и «Поддержка» всем, имеющим доступ.
-
-
+ 48
@@ -13468,7 +13757,7 @@
1
- 23
+ 21
@@ -13481,13 +13770,7 @@
1
- 22
-
-
- ru
- В адресной книге почтового клиента скрыты служебные пользователи.
-
-
+ 49
@@ -13499,7 +13782,7 @@
1
- 23
+ 21
@@ -13516,7 +13799,7 @@
ru
- В правилах сортировки электронных писем для действия «Пересылать на адрес» теперь доступен выбор из Адресной книги. Ранее был доступен только ручной ввод адреса.
+ Благодаря переводу списка на HTML удалось значительно увеличить информативность и состав выводимой информации:
@@ -13530,7 +13813,7 @@
1
- 23
+ 21
@@ -13543,13 +13826,21 @@
1
- 22
+ 26
ru
- Доработан алгоритм правила сортировки писем «Пересылать на адрес» – входящее письмо больше не пропадает из папки «Входящие».
+ • Информация о виде мессенджера, аккаунте, клиенте.
+ • Последнее сообщение.
+ • Признак взятия в работу.
+ • Индикатор новых сообщений и время получения.
+ • Число непрочитанных сообщений.
+ • Признак группового чата.
+ • Индикаторы «Только для чтения», «Является соисполнителем», «Клиент заблокирован».
+
+ list1
@@ -13561,7 +13852,7 @@
1
- 23
+ 21
@@ -13574,11 +13865,11 @@
1
- 22
+ 26
ru
- Изменена логика установки статуса письма при его пересылке – статус больше не будет меняться на «Обработано», а само письмо не будет скрываться из АРМ «Мои продажи» и «Поддержка».
+ Добавлен множественный выбор диалогов для работы с папками.
@@ -13605,13 +13896,7 @@
1
- 20
-
-
- ru
- Статусы работы с клиентами
-
-
+ 50
@@ -13623,7 +13908,7 @@
1
- 21
+ 38
@@ -13635,13 +13920,8 @@
1
- 22
-
-
- ru
- В прошлых версиях статусы работы учитывались и рассчитывались только для клиентов с типом отношений «Покупатель». Поставщики, конкуренты и клиенты с прочими отношениями не учитывались.
-
-
+ 21
+
@@ -13653,8 +13933,13 @@
1
- 21
-
+ 29
+
+
+ ru
+ Развитие интеграции с Telegram
+
+
@@ -13666,13 +13951,7 @@
1
- 26
-
-
- ru
- Сейчас автоматически добавлены новые статусы и способы установки:
-
-
+ 21
@@ -13684,8 +13963,13 @@
1
- 21
-
+ 22
+
+
+ ru
+ Обновлена компонента TDlib от компании Telegram, через которую выполняется интеграция. Для нативной компоненты, включающей в себя TDlib, выполнен ряд оптимизаций для снижения нагрузки на сервер 1С при подключении большого числа учетных записей.
+
+
@@ -13697,16 +13981,8 @@
1
- 26
-
-
- ru
- • <b>Поставщик</> со способом установки «Для поставщика».
- • <b>Конкурент</> со способом установки «Для конкурента».
- • <b>Прочее</> со способом установки «Для прочих отношений».
-
-
- list1
+ 23
+
@@ -13718,8 +13994,13 @@
1
- 21
-
+ 22
+
+
+ ru
+ Также расширены возможности отладки нативной компоненты в случае проблем в ее работе - больше не нужно скачивать и устанавливать дополнительные приложения для проверки зависимостей между библиотеками. Всю необходимую информацию компонента теперь выгружает сама.
+
+
@@ -13731,13 +14012,8 @@
1
- 26
-
-
- ru
- Способ установки «Для нового клиента» переименован «Для нового покупателя».
-
-
+ 23
+
@@ -13749,8 +14025,13 @@
1
- 21
-
+ 22
+
+
+ ru
+ В связи с вводом ограничений на работу Telegram, возникли проблемы с получением вложений в сообщениях. Процесс получения сообщений ранее был синхронным и пока не загрузилось одно сообщение с файлами, другие сообщения не отображались. Теперь загрузка вложений выполняется асинхронно, не мешая вывести тексты следующих сообщений и ответить на них. Пока файл загружается, в сообщении выводится его имя с надписью «файл загружается…». После загрузки ссылка на файл становится кликабельной.
+
+
@@ -13762,13 +14043,8 @@
1
- 22
-
-
- ru
- Если тип отношений меняется с любого другого на «Покупатель», то статусы начинают рассчитываться по типу <b>Покупатель</> со статусом «Новый».
-
-
+ 23
+
@@ -13780,8 +14056,14 @@
1
- 21
-
+ 22
+
+
+ ru
+ Для Telegram-ботов решена проблема с получением файлов большого размера, превышающих лимиты API. Все лимиты указаны на "официальном сайте":
+
+
+ ref4
@@ -13793,11 +14075,11 @@
1
- 26
+ 32
ru
- Если у клиента указаны несколько типов отношений, то статусы задаются в следующем порядке приоритета:
+ https://core.telegram.org/bots/api%23sending-files
@@ -13811,8 +14093,7 @@
1
- 21
-
+ 32
@@ -13824,18 +14105,13 @@
1
- 26
+ 29
ru
- • покупатель,
- • поставщик,
- • конкурент,
- • прочие отношения.
-
+ Мессенджер MAX
- list1
@@ -13848,7 +14124,6 @@
1
21
-
@@ -13864,7 +14139,9 @@
ru
- Также для новых статусов были созданы правила расчета процента заполненности реквизитов.
+ В связи с изменениями API, авторизация аккаунта переведена на применение QR-кодов.
+
+Для уведомлений через мессенджеры добавлена поддержка мессенджера MAX.
@@ -13895,7 +14172,7 @@
ru
- АРМ «Мои продажи» и «Поддержка»
+ Почта
@@ -13921,11 +14198,11 @@
1
- 26
+ 29
ru
- В АРМ «Мои продажи» и «Поддержка» в канбан-доске доработано поведение при нажатии команды «Принять обращение» в меню Рабочего стола:
+ Обновление списка писем в режиме онлайн
@@ -13940,7 +14217,6 @@
1
21
-
@@ -13956,12 +14232,9 @@
ru
- • если активна карточка обращения – данное обращение передается в Мастер принятия обращения в качестве основания;
- • если активна карточка интереса – в Мастер принятия обращения передается клиент/потенциальный клиент выбранного интереса.
-
+ Реализовано обновление данных в почтовом клиенте в режиме онлайн. Благодаря новым возможностям платформы 1С:Предприятие стало возможно обновлять список писем именно тогда, когда они получены с почтового сервера. Помимо удобства для пользователя, это также снижает нагрузку на работу системы, так как не нужно постоянно опрашивать сервер на предмет наличия новых писем.
- list1
@@ -13973,7 +14246,7 @@
1
- 21
+ 23
@@ -13986,11 +14259,11 @@
1
- 20
+ 51
ru
- Триггеры
+ Оптимизация механизма автосохранения писем
@@ -14004,7 +14277,7 @@
1
- 21
+ 23
@@ -14016,11 +14289,11 @@
1
- 26
+ 22
ru
- Выполнена оптимизация работы триггеров:
+ Улучшена работа автоматического сохранения черновиков писем. Применяемый ранее механизм хеширования работал неэффективно на больших письмах, например, содержащих в себе предыдущую переписку. Теперь эта проблема решена.
@@ -14034,7 +14307,7 @@
1
- 21
+ 23
@@ -14047,17 +14320,13 @@
1
- 26
+ 51
ru
- • добавлено кэширование необходимых для запуска триггеров данных,
- • внесены улучшения в алгоритмы выполнения,
- • проведена унификация логики работы для различных видов.
-
+ Прочее по почте
- list1
@@ -14069,8 +14338,7 @@
1
- 21
-
+ 23
@@ -14082,13 +14350,13 @@
1
- 26
-
+ 22
+
ru
- В раздел <b>Настройки</> → <b>Настройки</> <b>системы</> → <b>Общие настройки (CRM)</> → <b>Триггеры</> добавлена настройка использования триггеров. Она будет включена автоматически при обновлении, если в базе данных создан хотя бы один действующий триггер.
+ При приеме обращения из входящего письма в «Мастере принятия обращений» добавлено отображение вложений этого письма для быстрого доступа к ним (в свернутом виде наличие вложений отображается «скрепкой»).
-
+
@@ -14113,13 +14381,7 @@
1
- 22
-
-
- ru
- Если триггеры в базе не используются, то отключение этой настройки позволяет снизить нагрузку на сервер, избегая проверок выполнения триггеров при создании и изменении объектов.
-
-
+ 52
@@ -14144,7 +14406,13 @@
1
- 53
+ 22
+
+
+ ru
+ Изменена логика обработки новых входящих писем, принадлежащих цепочке, которая привязана к закрытому Интересу. Ранее такое письмо привязывалось к закрытому Интересу. Теперь письмо автоматически не привязывается и доступно в АРМ «Мои продажи» и «Поддержка» всем, имеющим доступ.
+
+
@@ -14156,7 +14424,7 @@
1
- 21
+ 23
@@ -14169,11 +14437,11 @@
1
- 26
+ 22
ru
- Команды открытия справочников, условий и действий триггеров перенесены в этот же раздел настроек.
+ В адресной книге почтового клиента скрыты служебные пользователи.
@@ -14187,7 +14455,7 @@
1
- 21
+ 23
@@ -14200,11 +14468,11 @@
1
- 26
+ 22
ru
- Доработано копирование триггера с учетом всех его настроек. Больше не нужно заполнять настройки заново.
+ В правилах сортировки электронных писем для действия «Пересылать на адрес» теперь доступен выбор из Адресной книги. Ранее был доступен только ручной ввод адреса.
@@ -14218,7 +14486,7 @@
1
- 21
+ 23
@@ -14231,11 +14499,11 @@
1
- 26
+ 22
ru
- Доработано действие триггеров «Переадресация электронных писем». Решена проблема добавления произвольного адреса электронной почты при настройке списка получателей.
+ Доработан алгоритм правила сортировки писем «Пересылать на адрес» – входящее письмо больше не пропадает из папки «Входящие».
@@ -14249,7 +14517,7 @@
1
- 21
+ 23
@@ -14262,11 +14530,11 @@
1
- 26
+ 22
ru
- В триггере «С условием по расписанию» добавлена поддержка дополнительных реквизитов типа «Дата».
+ Изменена логика установки статуса письма при его пересылке – статус больше не будет меняться на «Обработано», а само письмо не будет скрываться из АРМ «Мои продажи» и «Поддержка».
@@ -14293,11 +14561,11 @@
1
- 22
+ 20
ru
- Доработано действие триггера «Создание интереса клиента (лида) на основании письма-заявки», чтобы в создаваемом интересе прописывался вид обращения и почтовый аккаунт данного письма.
+ Статусы работы с клиентами
@@ -14312,7 +14580,6 @@
1
21
-
@@ -14324,11 +14591,11 @@
1
- 20
+ 22
ru
- Бизнес-процессы и задачи
+ В прошлых версиях статусы работы учитывались и рассчитывались только для клиентов с типом отношений «Покупатель». Поставщики, конкуренты и клиенты с прочими отношениями не учитывались.
@@ -14343,6 +14610,7 @@
1
21
+
@@ -14354,11 +14622,11 @@
1
- 22
+ 26
ru
- В АРМ «Мои дела» для задач добавлено отображение потенциального клиента, связанного с этой задачей (например, для задач управляемого бизнес-процесса по интересу, связанному с потенциальным клиентом).
+ Сейчас автоматически добавлены новые статусы и способы установки:
@@ -14372,7 +14640,7 @@
1
- 23
+ 21
@@ -14385,13 +14653,16 @@
1
- 22
-
+ 26
+
ru
- Для управляющих Интересом бизнес-процессов доработана установка состояния Интереса в том случае, если после запуска какие-то этапы бизнес-процесса были удалены из его карты. Ранее при переходе на такие этапы бизнес-процесса задача создавалась, но Статус Интереса не менялся, не отрабатывали настроенные триггеры, в канбане Интерес не перемещался в нужную колонку.
+ • <b>Поставщик</> со способом установки «Для поставщика».
+ • <b>Конкурент</> со способом установки «Для конкурента».
+ • <b>Прочее</> со способом установки «Для прочих отношений».
-
+
+ list1
@@ -14416,11 +14687,11 @@
1
- 20
+ 26
ru
- Кастомизация «Виджета обратной связи»
+ Способ установки «Для нового клиента» переименован «Для нового покупателя».
@@ -14435,6 +14706,7 @@
1
21
+
@@ -14447,12 +14719,12 @@
1
22
-
+
ru
- Для источников получения заявок с сайта с типом «Виджет обратной связи» добавлены новые возможности кастомизации под корпоративный стиль сайта.
+ Если тип отношений меняется с любого другого на «Покупатель», то статусы начинают рассчитываться по типу <b>Покупатель</> со статусом «Новый».
-
+
@@ -14481,7 +14753,7 @@
ru
- В настройки выведены два новых поля:
+ Если у клиента указаны несколько типов отношений, то статусы задаются в следующем порядке приоритета:
@@ -14512,8 +14784,10 @@
ru
- • «Цвет фона» – отвечает за настройку цвета заголовка виджета, фона кнопок и цвета ссылок;
- • «Цвет текста» – отвечает за настройку цвета текста заголовка и кнопок.
+ • покупатель,
+ • поставщик,
+ • конкурент,
+ • прочие отношения.
@@ -14529,7 +14803,7 @@
1
- 23
+ 21
@@ -14542,11 +14816,11 @@
1
- 22
+ 26
ru
- Так же добавлены поля ввода ссылок на «Политику конфиденциальности» и «Согласие на предоставление персональных данных».
+ Также для новых статусов были созданы правила расчета процента заполненности реквизитов.
@@ -14560,7 +14834,7 @@
1
- 23
+ 21
@@ -14573,11 +14847,11 @@
1
- 22
+ 20
ru
- Все эти поля автоматически включаются в код виджета для последующего размещения на страницах сайта клиента:
+ АРМ «Мои продажи» и «Поддержка»
@@ -14592,7 +14866,6 @@
1
21
-
@@ -14604,7 +14877,13 @@
1
- 54
+ 26
+
+
+ ru
+ В АРМ «Мои продажи» и «Поддержка» в канбан-доске доработано поведение при нажатии команды «Принять обращение» в меню Рабочего стола:
+
+
@@ -14630,12 +14909,15 @@
1
22
-
+
ru
- <b>Важно!</> При использовании виджета на корпоративном сайте в соответствии с Федеральным законом №152-ФЗ «О персональных данных» с 1.09.2025 года необходимо согласие на обработку персональных данных оформлять отдельным документом от политики конфиденциальности. Нельзя включать его по умолчанию в пользовательские соглашения, оферты, анкеты или договоры. Необходимо прописать во всех виджетах в полях <b>data-policylink</> и<b> data-agreementlink</> ссылки на «Согласие на предоставление персональных данных» и «Политику конфиденциальности», ведущие на страницы, опубликованные на Вашем сайте.
+ • если активна карточка обращения – данное обращение передается в Мастер принятия обращения в качестве основания;
+ • если активна карточка интереса – в Мастер принятия обращения передается клиент/потенциальный клиент выбранного интереса.
+
-
+
+ list1
@@ -14660,11 +14942,11 @@
1
- 26
+ 20
ru
- В результате получаем такой пример настроенного виджета.
+ Триггеры
@@ -14679,7 +14961,6 @@
1
21
-
@@ -14691,7 +14972,13 @@
1
- 55
+ 26
+
+
+ ru
+ Выполнена оптимизация работы триггеров:
+
+
@@ -14716,13 +15003,17 @@
1
- 20
+ 26
ru
- Прочее
+ • добавлено кэширование необходимых для запуска триггеров данных,
+ • внесены улучшения в алгоритмы выполнения,
+ • проведена унификация логики работы для различных видов.
+
+ list1
@@ -14735,6 +15026,7 @@
1
21
+
@@ -14746,13 +15038,13 @@
1
- 22
-
+ 26
+
ru
- Система лицензирования переведена на версию СЛК 3.0.41.
+ В раздел <b>Настройки</> → <b>Настройки</> <b>системы</> → <b>Общие настройки (CRM)</> → <b>Триггеры</> добавлена настройка использования триггеров. Она будет включена автоматически при обновлении, если в базе данных создан хотя бы один действующий триггер.
-
+
@@ -14764,7 +15056,7 @@
1
- 23
+ 21
@@ -14781,7 +15073,7 @@
ru
- Повышено быстродействие в формах справочников «Клиенты», «Контактные лица», документа «Интерес», АРМ «Мастер принятия обращения», АРМ «Почта» за счет оптимизации клиент-серверного взаимодействия.
+ Если триггеры в базе не используются, то отключение этой настройки позволяет снизить нагрузку на сервер, избегая проверок выполнения триггеров при создании и изменении объектов.
@@ -14795,7 +15087,7 @@
1
- 23
+ 21
@@ -14808,13 +15100,7 @@
1
- 22
-
-
- ru
- Улучшен механизм «точечного» обновления колонок канбана в АРМ «Мои продажи». Обновление данных стало быстрее, а определение минимального числа колонок для обновления еще точнее.
-
-
+ 53
@@ -14826,7 +15112,7 @@
1
- 23
+ 21
@@ -14839,11 +15125,11 @@
1
- 22
+ 26
ru
- Оптимизирован механизм поиска дублей клиентов, контактных лиц, потенциальных клиентов - уменьшено количество выполняемых запросов (серверных вызовов). Избавились от повторного поиска дублей при открытии формы найденных дублей. За счет этого снижена нагрузка на сервер 1С: Предприятия.
+ Команды открытия справочников, условий и действий триггеров перенесены в этот же раздел настроек.
@@ -14857,7 +15143,7 @@
1
- 23
+ 21
@@ -14870,11 +15156,11 @@
1
- 22
+ 26
ru
- Добавлена возможность ручного изменения канала и источника привлечения в форме Клиента.
+ Доработано копирование триггера с учетом всех его настроек. Больше не нужно заполнять настройки заново.
@@ -14888,7 +15174,7 @@
1
- 23
+ 21
@@ -14901,11 +15187,11 @@
1
- 22
+ 26
ru
- Доработано заполнение поля Автор у контактного лица при создании клиента с заполнением данных по ИНН.
+ Доработано действие триггеров «Переадресация электронных писем». Решена проблема добавления произвольного адреса электронной почты при настройке списка получателей.
@@ -14919,7 +15205,7 @@
1
- 23
+ 21
@@ -14932,11 +15218,11 @@
1
- 22
+ 26
ru
- Связи между партнерами в карточке клиента теперь выводятся в виде дерева, чтобы уменьшить при открытии число строк на экране.
+ В триггере «С условием по расписанию» добавлена поддержка дополнительных реквизитов типа «Дата».
@@ -14950,7 +15236,7 @@
1
- 23
+ 21
@@ -14967,7 +15253,7 @@
ru
- Доработан механизм расчета Потенциала клиента, если в формуле расчета используются новые реквизиты, добавленные в последних релизах продукта.
+ Доработано действие триггера «Создание интереса клиента (лида) на основании письма-заявки», чтобы в создаваемом интересе прописывался вид обращения и почтовый аккаунт данного письма.
@@ -14981,7 +15267,7 @@
1
- 23
+ 21
@@ -14994,13 +15280,13 @@
1
- 22
-
+ 20
+
ru
- Изменен приоритет настройки «Создавать клиента/потенциального клиента» в учетных записях электронной почты, мессенджеров, в источниках получения заявок и настройках телефонии. Теперь более приоритетной считается настройка в <b>правилах обработки</> конкретного источника обращений.
+ Бизнес-процессы и задачи
-
+
@@ -15012,8 +15298,7 @@
1
- 23
-
+ 21
@@ -15029,7 +15314,7 @@
ru
- В Базе знаний пользователям с ограниченными правами запрещено переносить общие статьи между папками. А также переносить или создавать свои персональные статьи в «чужих» папках.
+ В АРМ «Мои дела» для задач добавлено отображение потенциального клиента, связанного с этой задачей (например, для задач управляемого бизнес-процесса по интересу, связанному с потенциальным клиентом).
@@ -15060,7 +15345,7 @@
ru
- В связи с введением порционного считывания данных по клиентам при загрузке из amoCRM и отсутствием в API возможности получить общее количество элементов, в мастере переноса данных из amoCRM скрыт вывод текущего процента загрузки.
+ Для управляющих Интересом бизнес-процессов доработана установка состояния Интереса в том случае, если после запуска какие-то этапы бизнес-процесса были удалены из его карты. Ранее при переходе на такие этапы бизнес-процесса задача создавалась, но Статус Интереса не менялся, не отрабатывали настроенные триггеры, в канбане Интерес не перемещался в нужную колонку.
@@ -15074,13 +15359,684 @@
1
- 8
+ 21
+
878
+
+ 7
+
+ 1
+
+ 20
+
+
+ ru
+ Кастомизация «Виджета обратной связи»
+
+
+
+
+
+
+
+ 879
+
+ 7
+
+ 1
+
+ 21
+
+
+
+
+
+ 880
+
+ 7
+
+ 1
+
+ 22
+
+
+ ru
+ Для источников получения заявок с сайта с типом «Виджет обратной связи» добавлены новые возможности кастомизации под корпоративный стиль сайта.
+
+
+
+
+
+
+
+ 881
+
+ 7
+
+ 1
+
+ 21
+
+
+
+
+
+
+ 882
+
+ 7
+
+ 1
+
+ 26
+
+
+ ru
+ В настройки выведены два новых поля:
+
+
+
+
+
+
+
+ 883
+
+ 7
+
+ 1
+
+ 21
+
+
+
+
+
+
+ 884
+
+ 7
+
+ 1
+
+ 26
+
+
+ ru
+ • «Цвет фона» – отвечает за настройку цвета заголовка виджета, фона кнопок и цвета ссылок;
+ • «Цвет текста» – отвечает за настройку цвета текста заголовка и кнопок.
+
+
+
+ list1
+
+
+
+
+
+ 885
+
+ 7
+
+ 1
+
+ 23
+
+
+
+
+
+
+ 886
+
+ 7
+
+ 1
+
+ 22
+
+
+ ru
+ Так же добавлены поля ввода ссылок на «Политику конфиденциальности» и «Согласие на предоставление персональных данных».
+
+
+
+
+
+
+
+ 887
+
+ 7
+
+ 1
+
+ 23
+
+
+
+
+
+
+ 888
+
+ 7
+
+ 1
+
+ 22
+
+
+ ru
+ Все эти поля автоматически включаются в код виджета для последующего размещения на страницах сайта клиента:
+
+
+
+
+
+
+
+ 889
+
+ 7
+
+ 1
+
+ 21
+
+
+
+
+
+
+ 890
+
+ 7
+
+ 1
+
+ 54
+
+
+
+
+
+ 891
+
+ 7
+
+ 1
+
+ 21
+
+
+
+
+
+
+ 892
+
+ 7
+
+ 1
+
+ 22
+
+
+ ru
+ <b>Важно!</> При использовании виджета на корпоративном сайте в соответствии с Федеральным законом №152-ФЗ «О персональных данных» с 1.09.2025 года необходимо согласие на обработку персональных данных оформлять отдельным документом от политики конфиденциальности. Нельзя включать его по умолчанию в пользовательские соглашения, оферты, анкеты или договоры. Необходимо прописать во всех виджетах в полях <b>data-policylink</> и<b> data-agreementlink</> ссылки на «Согласие на предоставление персональных данных» и «Политику конфиденциальности», ведущие на страницы, опубликованные на Вашем сайте.
+
+
+
+
+
+
+
+ 893
+
+ 7
+
+ 1
+
+ 21
+
+
+
+
+
+
+ 894
+
+ 7
+
+ 1
+
+ 26
+
+
+ ru
+ В результате получаем такой пример настроенного виджета.
+
+
+
+
+
+
+
+ 895
+
+ 7
+
+ 1
+
+ 21
+
+
+
+
+
+
+ 896
+
+ 7
+
+ 1
+
+ 55
+
+
+
+
+
+ 897
+
+ 7
+
+ 1
+
+ 21
+
+
+
+
+
+
+ 898
+
+ 7
+
+ 1
+
+ 20
+
+
+ ru
+ Прочее
+
+
+
+
+
+
+
+ 899
+
+ 7
+
+ 1
+
+ 21
+
+
+
+
+
+ 900
+
+ 7
+
+ 1
+
+ 22
+
+
+ ru
+ Система лицензирования переведена на версию СЛК 3.0.41.
+
+
+
+
+
+
+
+ 901
+
+ 7
+
+ 1
+
+ 23
+
+
+
+
+
+
+ 902
+
+ 7
+
+ 1
+
+ 22
+
+
+ ru
+ Повышено быстродействие в формах справочников «Клиенты», «Контактные лица», документа «Интерес», АРМ «Мастер принятия обращения», АРМ «Почта» за счет оптимизации клиент-серверного взаимодействия.
+
+
+
+
+
+
+
+ 903
+
+ 7
+
+ 1
+
+ 23
+
+
+
+
+
+
+ 904
+
+ 7
+
+ 1
+
+ 22
+
+
+ ru
+ Улучшен механизм «точечного» обновления колонок канбана в АРМ «Мои продажи». Обновление данных стало быстрее, а определение минимального числа колонок для обновления еще точнее.
+
+
+
+
+
+
+
+ 905
+
+ 7
+
+ 1
+
+ 23
+
+
+
+
+
+
+ 906
+
+ 7
+
+ 1
+
+ 22
+
+
+ ru
+ Оптимизирован механизм поиска дублей клиентов, контактных лиц, потенциальных клиентов - уменьшено количество выполняемых запросов (серверных вызовов). Избавились от повторного поиска дублей при открытии формы найденных дублей. За счет этого снижена нагрузка на сервер 1С: Предприятия.
+
+
+
+
+
+
+
+ 907
+
+ 7
+
+ 1
+
+ 23
+
+
+
+
+
+
+ 908
+
+ 7
+
+ 1
+
+ 22
+
+
+ ru
+ Добавлена возможность ручного изменения канала и источника привлечения в форме Клиента.
+
+
+
+
+
+
+
+ 909
+
+ 7
+
+ 1
+
+ 23
+
+
+
+
+
+
+ 910
+
+ 7
+
+ 1
+
+ 22
+
+
+ ru
+ Доработано заполнение поля Автор у контактного лица при создании клиента с заполнением данных по ИНН.
+
+
+
+
+
+
+
+ 911
+
+ 7
+
+ 1
+
+ 23
+
+
+
+
+
+
+ 912
+
+ 7
+
+ 1
+
+ 22
+
+
+ ru
+ Связи между партнерами в карточке клиента теперь выводятся в виде дерева, чтобы уменьшить при открытии число строк на экране.
+
+
+
+
+
+
+
+ 913
+
+ 7
+
+ 1
+
+ 23
+
+
+
+
+
+
+ 914
+
+ 7
+
+ 1
+
+ 22
+
+
+ ru
+ Доработан механизм расчета Потенциала клиента, если в формуле расчета используются новые реквизиты, добавленные в последних релизах продукта.
+
+
+
+
+
+
+
+ 915
+
+ 7
+
+ 1
+
+ 23
+
+
+
+
+
+
+ 916
+
+ 7
+
+ 1
+
+ 22
+
+
+ ru
+ Изменен приоритет настройки «Создавать клиента/потенциального клиента» в учетных записях электронной почты, мессенджеров, в источниках получения заявок и настройках телефонии. Теперь более приоритетной считается настройка в <b>правилах обработки</> конкретного источника обращений.
+
+
+
+
+
+
+
+ 917
+
+ 7
+
+ 1
+
+ 23
+
+
+
+
+
+
+ 918
+
+ 7
+
+ 1
+
+ 22
+
+
+ ru
+ В Базе знаний пользователям с ограниченными правами запрещено переносить общие статьи между папками. А также переносить или создавать свои персональные статьи в «чужих» папках.
+
+
+
+
+
+
+
+ 919
+
+ 7
+
+ 1
+
+ 23
+
+
+
+
+
+
+ 920
+
+ 7
+
+ 1
+
+ 22
+
+
+ ru
+ В связи с введением порционного считывания данных по клиентам при загрузке из amoCRM и отсутствием в API возможности получить общее количество элементов, в мастере переноса данных из amoCRM скрыт вывод текущего процента загрузки.
+
+
+
+
+
+
+
+ 921
+
+ 7
+
+ 1
+
+ 8
+
+
+
+
+
+ 922
7
@@ -15098,7 +16054,7 @@
- 879
+ 923
7
@@ -15111,7 +16067,7 @@
- 880
+ 924
7
@@ -15129,7 +16085,7 @@
- 881
+ 925
7
@@ -15141,7 +16097,7 @@
- 882
+ 926
7
@@ -15159,7 +16115,7 @@
- 883
+ 927
7
@@ -15177,7 +16133,7 @@
- 884
+ 928
7
@@ -15199,7 +16155,7 @@
- 885
+ 929
7
@@ -15209,13 +16165,13 @@
- 14
+ 12
- 886
+ 930
7
@@ -15225,7 +16181,7 @@
- 15
+ 13
ru
@@ -15237,105 +16193,7 @@
- 887
-
- 7
-
-
- 0
-
-
-
-
- 16
-
-
-
-
-
- 888
-
- 7
-
-
- 0
-
-
-
-
- 15
-
-
- ru
- Сервисные возможности и настройки интеграции
-
-
-
-
-
-
-
- 889
-
- 7
-
-
- 0
-
-
-
-
- 16
-
-
-
-
-
- 890
-
- 7
-
-
- 0
-
-
-
-
- 17
-
-
- ru
- Интеграция с ГИС МТ ("Честный знак")
-
-
-
-
-
-
-
- 891
-
- 7
-
-
- 0
-
-
-
-
- 18
-
-
- ru
- Реализована поддержка интеграции с техническими средствами проверки информации о товаре (ТС ПИоТ) в связке с торговым оборудованием.
-
-
-
-
-
-
-
- 892
+ 931
7
@@ -15351,7 +16209,7 @@
- 893
+ 932
7
@@ -15361,7 +16219,105 @@
- 17
+ 13
+
+
+ ru
+ Сервисные возможности и настройки интеграции
+
+
+
+
+
+
+
+ 933
+
+ 7
+
+
+ 0
+
+
+
+
+ 14
+
+
+
+
+
+ 934
+
+ 7
+
+
+ 0
+
+
+
+
+ 15
+
+
+ ru
+ Интеграция с ГИС МТ ("Честный знак")
+
+
+
+
+
+
+
+ 935
+
+ 7
+
+
+ 0
+
+
+
+
+ 16
+
+
+ ru
+ Реализована поддержка интеграции с техническими средствами проверки информации о товаре (ТС ПИоТ) в связке с торговым оборудованием.
+
+
+
+
+
+
+
+ 936
+
+ 7
+
+
+ 0
+
+
+
+
+ 12
+
+
+
+
+
+ 937
+
+ 7
+
+
+ 0
+
+
+
+
+ 15
ru
@@ -15373,7 +16329,7 @@
- 894
+ 938
7
@@ -15383,7 +16339,7 @@
- 18
+ 16
ru
@@ -15395,7 +16351,7 @@
- 895
+ 939
7
@@ -15405,13 +16361,13 @@
- 16
+ 14
- 896
+ 940
7
@@ -15421,7 +16377,7 @@
- 17
+ 15
ru
@@ -15433,7 +16389,7 @@
- 897
+ 941
7
@@ -15443,7 +16399,7 @@
- 18
+ 16
ru
@@ -15455,7 +16411,7 @@
- 898
+ 942
7
@@ -15465,13 +16421,13 @@
- 16
+ 14
- 899
+ 943
7
@@ -15481,7 +16437,7 @@
- 17
+ 15
ru
@@ -15493,7 +16449,7 @@
- 900
+ 944
7
@@ -15503,7 +16459,7 @@
- 13
+ 17
ru
@@ -15515,7 +16471,7 @@
- 901
+ 945
1
@@ -15527,9 +16483,9 @@
true
56
- 902
+ 946
3
- 902
+ 946
2
66
@@ -15601,174 +16557,200 @@
69
- 247
+ 77
- 71
- 92
+ 72
+ 77
- 95
- 246
-
-
- 250
- 274
+ 80
+ 110
false
- 252
- 260
+ 83
+ 86
false
- 263
- 274
+ 89
+ 110
false
- 277
- 285
+ 113
+ 291
false
- 280
- 285
+ 115
+ 136
false
- 288
- 307
+ 139
+ 290
false
- 291
- 307
+ 294
+ 318
false
- 310
- 333
+ 296
+ 304
false
- 313
- 333
+ 307
+ 318
false
- 336
- 516
+ 321
+ 329
false
- 338
- 367
+ 324
+ 329
false
- 370
- 516
+ 332
+ 351
false
- 519
- 537
+ 335
+ 351
false
- 522
- 537
+ 354
+ 377
false
- 540
- 548
+ 357
+ 377
false
- 543
- 548
+ 380
+ 560
false
- 551
- 900
+ 382
+ 411
false
- 554
- 876
+ 414
+ 560
false
- 556
- 602
+ 563
+ 581
false
- 605
- 633
+ 566
+ 581
false
- 636
- 661
+ 584
+ 592
false
- 664
- 669
+ 587
+ 592
false
- 672
- 688
+ 595
+ 944
false
- 691
- 754
+ 598
+ 920
false
- 757
- 780
+ 600
+ 646
false
- 783
+ 649
+ 677
+ false
+
+
+ 680
+ 705
+ false
+
+
+ 708
+ 713
+ false
+
+
+ 716
+ 732
+ false
+
+
+ 735
798
false
801
- 804
+ 824
false
- 807
- 826
+ 827
+ 842
false
- 829
- 832
+ 845
+ 848
false
- 835
- 852
+ 851
+ 870
false
- 855
+ 873
876
false
879
- 900
+ 896
+ false
+
+
+ 899
+ 920
+ false
+
+
+ 923
+ 944
Версия3_0_7_1
@@ -15784,8 +16766,8 @@
Версия3_1_34_30
Rows
- 552
- 900
+ 596
+ 944
-1
-1
@@ -15794,8 +16776,8 @@
Версия3_1_35_10
Rows
- 541
- 548
+ 585
+ 592
-1
-1
@@ -15804,8 +16786,8 @@
Версия3_1_35_11
Rows
- 520
- 537
+ 564
+ 581
-1
-1
@@ -15814,8 +16796,8 @@
Версия3_1_36_26
Rows
- 337
- 516
+ 381
+ 560
-1
-1
@@ -15824,8 +16806,8 @@
Версия3_1_36_27
Rows
- 311
- 333
+ 355
+ 377
-1
-1
@@ -15834,8 +16816,8 @@
Версия3_1_36_28
Rows
- 289
- 307
+ 333
+ 351
-1
-1
@@ -15844,8 +16826,8 @@
Версия3_1_36_29
Rows
- 278
- 285
+ 322
+ 329
-1
-1
@@ -15854,18 +16836,38 @@
Версия3_1_36_30
Rows
- 251
- 274
+ 295
+ 318
-1
-1
Версия3_1_36_31
+
+ Rows
+ 114
+ 291
+ -1
+ -1
+
+
+
+ Версия3_1_36_32
+
+ Rows
+ 81
+ 110
+ -1
+ -1
+
+
+
+ Версия3_1_36_33
Rows
70
- 247
+ 77
-1
-1
@@ -15894,8 +16896,8 @@
Шапка3_1_34_30
Rows
- 550
- 550
+ 594
+ 594
-1
-1
@@ -15904,8 +16906,8 @@
Шапка3_1_35_10
Rows
- 539
- 539
+ 583
+ 583
-1
-1
@@ -15914,8 +16916,8 @@
Шапка3_1_35_11
Rows
- 518
- 518
+ 562
+ 562
-1
-1
@@ -15924,8 +16926,8 @@
Шапка3_1_36_26
Rows
- 335
- 335
+ 379
+ 379
-1
-1
@@ -15934,8 +16936,8 @@
Шапка3_1_36_27
Rows
- 309
- 309
+ 353
+ 353
-1
-1
@@ -15944,8 +16946,8 @@
Шапка3_1_36_28
Rows
- 287
- 287
+ 331
+ 331
-1
-1
@@ -15954,8 +16956,8 @@
Шапка3_1_36_29
Rows
- 276
- 276
+ 320
+ 320
-1
-1
@@ -15964,14 +16966,34 @@
Шапка3_1_36_30
Rows
- 249
- 249
+ 293
+ 293
-1
-1
Шапка3_1_36_31
+
+ Rows
+ 112
+ 112
+ -1
+ -1
+
+
+
+ Шапка3_1_36_32
+
+ Rows
+ 79
+ 79
+ -1
+ -1
+
+
+
+ Шапка3_1_36_33
Rows
68
@@ -16071,19 +17093,6 @@
true
false
-
- 799
- Justify
- Wrap
-
-
- 3
- 672
- Justify
- Top
- Wrap
- 0
-
3
672
@@ -16126,6 +17135,19 @@
false
0
+
+ 3
+ 672
+ Justify
+ Top
+ Wrap
+ 0
+
+
+ 799
+ Justify
+ Wrap
+
5
672
diff --git a/src/ConfigDumpInfo.xml b/src/ConfigDumpInfo.xml
index 66d3124c2..e4063f390 100644
--- a/src/ConfigDumpInfo.xml
+++ b/src/ConfigDumpInfo.xml
@@ -446,7 +446,7 @@
-
+
@@ -461,7 +461,7 @@
-
+
@@ -1667,7 +1667,7 @@
-
+
@@ -1680,7 +1680,7 @@
-
+
@@ -4334,8 +4334,8 @@
-
-
+
+
@@ -4809,16 +4809,16 @@
-
-
+
+
-
-
+
+
@@ -6885,8 +6885,8 @@
-
-
+
+
@@ -7026,8 +7026,8 @@
-
-
+
+
@@ -7634,7 +7634,7 @@
-
+
@@ -7648,7 +7648,7 @@
-
+
@@ -7870,10 +7870,10 @@
-
-
-
-
+
+
+
+
@@ -8968,8 +8968,8 @@
-
-
+
+
@@ -10403,8 +10403,8 @@
-
-
+
+
@@ -10758,8 +10758,8 @@
-
-
+
+
@@ -10929,7 +10929,7 @@
-
+
@@ -10948,7 +10948,7 @@
-
+
@@ -11031,8 +11031,8 @@
-
-
+
+
@@ -11041,8 +11041,8 @@
-
-
+
+
@@ -11072,19 +11072,19 @@
-
-
+
+
-
-
+
+
-
+
@@ -11113,18 +11113,18 @@
-
-
-
-
+
+
+
+
-
+
-
-
+
+
@@ -11335,15 +11335,15 @@
-
+
-
-
+
+
@@ -11629,8 +11629,8 @@
-
-
+
+
@@ -12010,7 +12010,7 @@
-
+
@@ -12066,25 +12066,25 @@
-
-
+
+
-
-
+
+
-
-
-
-
-
+
+
+
+
+
@@ -12401,11 +12401,11 @@
-
-
+
+
-
+
@@ -12545,13 +12545,13 @@
-
-
+
+
-
+
@@ -12590,14 +12590,14 @@
-
-
+
+
-
-
+
+
@@ -12628,14 +12628,14 @@
-
-
+
+
-
-
+
+
@@ -12739,7 +12739,7 @@
-
+
@@ -12765,7 +12765,7 @@
-
+
@@ -12920,8 +12920,8 @@
-
-
+
+
@@ -13106,7 +13106,7 @@
-
+
@@ -13138,11 +13138,11 @@
-
-
+
+
-
+
@@ -13155,8 +13155,8 @@
-
-
+
+
@@ -14254,8 +14254,8 @@
-
-
+
+
@@ -14729,16 +14729,16 @@
-
-
+
+
-
-
+
+
@@ -14872,8 +14872,8 @@
-
-
+
+
@@ -14881,8 +14881,8 @@
-
-
+
+
@@ -16206,12 +16206,12 @@
-
-
+
+
-
+
@@ -16236,13 +16236,13 @@
-
-
+
+
-
+
@@ -16419,8 +16419,8 @@
-
-
+
+
@@ -16726,7 +16726,7 @@
-
+
@@ -16769,7 +16769,7 @@
-
+
@@ -17502,7 +17502,7 @@
-
+
@@ -17564,7 +17564,7 @@
-
+
@@ -17814,7 +17814,7 @@
-
+
@@ -17832,7 +17832,7 @@
-
+
@@ -19282,8 +19282,8 @@
-
-
+
+
@@ -20502,7 +20502,7 @@
-
+
@@ -20560,7 +20560,7 @@
-
+
@@ -20575,21 +20575,21 @@
-
+
-
-
+
+
-
+
@@ -20965,10 +20965,10 @@
-
-
-
-
+
+
+
+
@@ -21440,7 +21440,7 @@
-
+
@@ -21474,7 +21474,7 @@
-
+
@@ -21627,7 +21627,7 @@
-
+
@@ -21636,9 +21636,9 @@
-
+
-
+
@@ -22221,7 +22221,7 @@
-
+
@@ -23016,8 +23016,8 @@
-
-
+
+
@@ -23058,8 +23058,8 @@
-
-
+
+
@@ -23324,8 +23324,8 @@
-
-
+
+
@@ -23452,8 +23452,8 @@
-
-
+
+
@@ -23752,12 +23752,12 @@
-
-
+
+
-
-
+
+
@@ -23804,8 +23804,8 @@
-
-
+
+
@@ -23821,8 +23821,8 @@
-
-
+
+
@@ -23839,8 +23839,8 @@
-
-
+
+
@@ -23889,8 +23889,8 @@
-
-
+
+
@@ -24067,8 +24067,8 @@
-
-
+
+
@@ -24117,16 +24117,16 @@
-
-
+
+
-
-
+
+
@@ -24137,8 +24137,8 @@
-
-
+
+
@@ -24323,8 +24323,8 @@
-
-
+
+
@@ -24375,8 +24375,8 @@
-
-
+
+
@@ -24425,18 +24425,18 @@
-
-
-
-
+
+
+
+
-
-
+
+
-
-
+
+
@@ -24489,8 +24489,8 @@
-
-
+
+
@@ -24553,12 +24553,12 @@
-
-
+
+
-
-
+
+
@@ -24569,8 +24569,8 @@
-
-
+
+
@@ -24693,8 +24693,8 @@
-
-
+
+
@@ -24709,8 +24709,8 @@
-
-
+
+
@@ -24763,8 +24763,8 @@
-
-
+
+
@@ -24841,8 +24841,8 @@
-
-
+
+
@@ -24895,14 +24895,14 @@
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
@@ -24979,10 +24979,10 @@
-
-
-
-
+
+
+
+
@@ -25051,8 +25051,8 @@
-
-
+
+
@@ -25069,16 +25069,16 @@
-
-
+
+
-
-
+
+
@@ -25151,32 +25151,32 @@
-
-
+
+
-
-
-
-
+
+
+
+
-
-
+
+
-
-
+
+
@@ -25189,8 +25189,8 @@
-
-
+
+
@@ -25199,8 +25199,8 @@
-
-
+
+
@@ -25211,8 +25211,8 @@
-
-
+
+
@@ -25221,22 +25221,22 @@
-
-
+
+
-
-
-
-
-
-
+
+
+
+
+
+
-
-
+
+
@@ -25269,32 +25269,32 @@
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
-
-
-
-
+
+
+
+
+
+
@@ -25303,8 +25303,8 @@
-
-
+
+
@@ -25315,8 +25315,8 @@
-
-
+
+
@@ -25329,10 +25329,10 @@
-
-
-
-
+
+
+
+
@@ -25343,28 +25343,28 @@
-
-
-
-
+
+
+
+
-
-
+
+
-
-
-
-
+
+
+
+
-
-
+
+
@@ -25479,10 +25479,10 @@
-
-
-
-
+
+
+
+
@@ -25497,8 +25497,8 @@
-
-
+
+
@@ -25553,8 +25553,8 @@
-
-
+
+
@@ -25575,8 +25575,8 @@
-
-
+
+
@@ -25595,16 +25595,16 @@
-
-
+
+
-
-
+
+
@@ -25669,22 +25669,22 @@
-
-
+
+
-
-
-
-
+
+
+
+
-
-
+
+
@@ -25693,22 +25693,22 @@
-
-
-
-
+
+
+
+
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
@@ -25883,8 +25883,8 @@
-
-
+
+
@@ -25895,12 +25895,12 @@
-
-
-
-
-
-
+
+
+
+
+
+
@@ -25973,14 +25973,14 @@
-
-
-
-
+
+
+
+
-
-
+
+
@@ -25989,24 +25989,24 @@
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
@@ -26023,14 +26023,14 @@
-
-
+
+
-
-
+
+
@@ -26069,30 +26069,30 @@
-
-
+
+
-
-
+
+
-
-
+
+
-
-
-
-
+
+
+
+
@@ -26117,8 +26117,8 @@
-
-
+
+
@@ -26191,8 +26191,8 @@
-
-
+
+
@@ -26235,8 +26235,8 @@
-
-
+
+
@@ -26333,7 +26333,7 @@
-
+
@@ -26383,12 +26383,12 @@
-
-
+
+
-
-
+
+
@@ -26449,8 +26449,8 @@
-
-
+
+
@@ -26469,8 +26469,8 @@
-
-
+
+
@@ -26609,18 +26609,18 @@
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
@@ -26679,30 +26679,30 @@
-
-
-
-
+
+
+
+
-
-
-
-
+
+
+
+
-
-
+
+
-
-
-
-
+
+
+
+
-
-
+
+
@@ -26717,34 +26717,34 @@
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
-
-
+
+
-
-
+
+
-
-
+
+
@@ -26765,18 +26765,18 @@
-
-
+
+
-
-
-
-
+
+
+
+
@@ -26825,8 +26825,8 @@
-
-
+
+
@@ -26835,20 +26835,20 @@
-
-
+
+
-
-
-
-
+
+
+
+
-
-
+
+
@@ -26865,8 +26865,8 @@
-
-
+
+
@@ -27063,8 +27063,8 @@
-
-
+
+
@@ -27073,8 +27073,8 @@
-
-
+
+
@@ -27101,20 +27101,20 @@
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
-
-
-
-
+
+
+
+
@@ -27123,14 +27123,14 @@
-
-
-
-
+
+
+
+
-
-
+
+
@@ -27163,10 +27163,10 @@
-
-
-
-
+
+
+
+
@@ -27179,12 +27179,12 @@
-
-
-
-
-
-
+
+
+
+
+
+
@@ -27235,8 +27235,8 @@
-
-
+
+
@@ -27365,8 +27365,8 @@
-
-
+
+
@@ -27669,10 +27669,10 @@
-
-
-
-
+
+
+
+
@@ -27843,8 +27843,8 @@
-
-
+
+
@@ -28023,8 +28023,6 @@
-
-
@@ -28035,8 +28033,8 @@
-
-
+
+
@@ -28049,8 +28047,8 @@
-
-
+
+
@@ -28063,22 +28061,22 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -28087,8 +28085,8 @@
-
-
+
+
@@ -28143,12 +28141,12 @@
-
-
+
+
-
-
+
+
@@ -28219,8 +28217,8 @@
-
-
+
+
@@ -28249,8 +28247,8 @@
-
-
+
+
@@ -28433,8 +28431,8 @@
-
-
+
+
@@ -28443,8 +28441,8 @@
-
-
+
+
@@ -28519,24 +28517,24 @@
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
@@ -28683,8 +28681,8 @@
-
-
+
+
@@ -28695,12 +28693,12 @@
-
-
+
+
-
-
+
+
@@ -28709,12 +28707,12 @@
-
-
+
+
-
-
+
+
@@ -28741,8 +28739,8 @@
-
-
+
+
@@ -28751,8 +28749,8 @@
-
-
+
+
@@ -28793,30 +28791,30 @@
-
-
+
+
-
-
+
+
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
@@ -28849,8 +28847,8 @@
-
-
+
+
@@ -28915,8 +28913,8 @@
-
-
+
+
@@ -29031,8 +29029,8 @@
-
-
+
+
@@ -29071,8 +29069,8 @@
-
-
+
+
@@ -29091,8 +29089,8 @@
-
-
+
+
@@ -29103,8 +29101,8 @@
-
-
+
+
@@ -29157,8 +29155,8 @@
-
-
+
+
@@ -29245,8 +29243,8 @@
-
-
+
+
@@ -29371,8 +29369,8 @@
-
-
+
+
@@ -29383,12 +29381,12 @@
-
-
+
+
-
-
+
+
@@ -29397,8 +29395,8 @@
-
-
+
+
@@ -29545,8 +29543,8 @@
-
-
+
+
@@ -29569,8 +29567,8 @@
-
-
+
+
@@ -29579,8 +29577,8 @@
-
-
+
+
@@ -29625,8 +29623,8 @@
-
-
+
+
@@ -29641,8 +29639,8 @@
-
-
+
+
@@ -29683,8 +29681,8 @@
-
-
+
+
@@ -29755,14 +29753,14 @@
-
-
+
+
-
-
+
+
@@ -29779,8 +29777,8 @@
-
-
+
+
@@ -29793,8 +29791,8 @@
-
-
+
+
@@ -29805,8 +29803,8 @@
-
-
+
+
@@ -29821,14 +29819,14 @@
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
@@ -29883,20 +29881,20 @@
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
@@ -29907,8 +29905,8 @@
-
-
+
+
@@ -29923,8 +29921,8 @@
-
-
+
+
@@ -29941,16 +29939,16 @@
-
-
+
+
-
-
+
+
@@ -29985,44 +29983,44 @@
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
-
-
+
+
-
-
-
-
+
+
+
+
@@ -30039,28 +30037,28 @@
-
-
-
-
+
+
+
+
-
-
+
+
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
@@ -30073,8 +30071,8 @@
-
-
+
+
@@ -30117,8 +30115,8 @@
-
-
+
+
@@ -30149,10 +30147,10 @@
-
-
-
-
+
+
+
+
@@ -30175,12 +30173,12 @@
-
-
-
-
-
-
+
+
+
+
+
+
@@ -30189,22 +30187,22 @@
-
-
-
-
+
+
+
+
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
@@ -32868,6 +32866,8 @@
+
+
@@ -34554,8 +34554,8 @@
-
-
+
+
@@ -34670,6 +34670,8 @@
+
+
@@ -35730,8 +35732,8 @@
-
-
+
+
@@ -35792,8 +35794,8 @@
-
-
+
+
@@ -35910,19 +35912,19 @@
-
+
-
+
-
+
-
+
@@ -37302,6 +37304,7 @@
+
@@ -37841,8 +37844,8 @@
-
-
+
+
@@ -37897,8 +37900,8 @@
-
-
+
+
@@ -38446,7 +38449,7 @@
-
+
@@ -38459,7 +38462,7 @@
-
+
@@ -38877,8 +38880,8 @@
-
-
+
+
@@ -38900,8 +38903,8 @@
-
-
+
+
@@ -38909,8 +38912,8 @@
-
-
+
+
@@ -38955,8 +38958,8 @@
-
-
+
+
@@ -38973,12 +38976,12 @@
-
-
-
-
-
-
+
+
+
+
+
+
@@ -39185,13 +39188,21 @@
-
-
+
+
+
+
+
+
+
+
+
+
@@ -39206,8 +39217,8 @@
-
-
+
+
@@ -39499,8 +39510,8 @@
-
-
+
+
@@ -39537,8 +39548,8 @@
-
-
+
+
@@ -39853,8 +39864,8 @@
-
-
+
+
@@ -40446,8 +40457,8 @@
-
-
+
+
@@ -40462,11 +40473,11 @@
-
-
+
+
-
-
+
+
@@ -40483,15 +40494,15 @@
-
-
+
+
-
-
-
-
+
+
+
+
@@ -40650,8 +40661,8 @@
-
-
+
+
@@ -41170,8 +41181,8 @@
-
-
+
+
@@ -41182,8 +41193,8 @@
-
-
+
+
@@ -41216,8 +41227,8 @@
-
-
+
+
@@ -41519,8 +41530,8 @@
-
-
+
+
@@ -41658,8 +41669,8 @@
-
-
+
+
@@ -41787,14 +41798,14 @@
-
-
+
+
-
-
+
+
@@ -41821,8 +41832,8 @@
-
-
+
+
@@ -41855,8 +41866,8 @@
-
-
+
+
@@ -41873,8 +41884,8 @@
-
-
+
+
@@ -41950,8 +41961,8 @@
-
-
+
+
@@ -42117,7 +42128,7 @@
-
+
@@ -42180,9 +42191,9 @@
-
-
-
+
+
+
@@ -42351,8 +42362,8 @@
-
-
+
+
@@ -42408,8 +42419,8 @@
-
-
+
+
@@ -42430,8 +42441,8 @@
-
-
+
+
@@ -42453,8 +42464,8 @@
-
-
+
+
@@ -42526,8 +42537,8 @@
-
-
+
+
@@ -42610,10 +42621,10 @@
-
-
-
-
+
+
+
+
@@ -42624,31 +42635,31 @@
-
-
+
+
-
-
-
-
+
+
+
+
-
-
-
-
+
+
+
+
-
-
-
-
+
+
+
+
@@ -42844,8 +42855,8 @@
-
-
+
+
@@ -43043,8 +43054,8 @@
-
-
+
+
@@ -43848,20 +43859,20 @@
-
-
+
+
-
-
+
+
-
-
+
+
@@ -44480,8 +44491,8 @@
-
-
+
+
@@ -44542,39 +44553,39 @@
-
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
-
+
+
@@ -44591,10 +44602,10 @@
-
-
-
-
+
+
+
+
@@ -44840,10 +44851,10 @@
-
-
-
-
+
+
+
+
@@ -45021,8 +45032,8 @@
-
-
+
+
@@ -45686,16 +45697,16 @@
-
-
+
+
-
-
-
-
-
-
+
+
+
+
+
+
@@ -45845,10 +45856,10 @@
-
-
-
-
+
+
+
+
@@ -45911,8 +45922,8 @@
-
-
+
+
@@ -45973,12 +45984,12 @@
-
+
-
+
@@ -46033,7 +46044,7 @@
-
+
@@ -46068,8 +46079,8 @@
-
-
+
+
@@ -46077,7 +46088,7 @@
-
+
@@ -46299,8 +46310,8 @@
-
-
+
+
@@ -46308,10 +46319,10 @@
-
+
-
+
@@ -46514,13 +46525,13 @@
-
-
+
+
-
-
+
+
@@ -46999,8 +47010,8 @@
-
-
+
+
@@ -47067,7 +47078,7 @@
-
+
@@ -47126,7 +47137,7 @@
-
+
@@ -47314,7 +47325,7 @@
-
+
@@ -47596,8 +47607,8 @@
-
-
+
+
@@ -47946,11 +47957,11 @@
-
+
-
+
@@ -48185,10 +48196,10 @@
-
-
-
-
+
+
+
+
@@ -49022,8 +49033,8 @@
-
-
+
+
@@ -49745,15 +49756,15 @@
-
-
+
+
-
+
@@ -49803,8 +49814,8 @@
-
-
+
+
@@ -50335,7 +50346,7 @@
-
+
@@ -50377,14 +50388,14 @@
-
-
+
+
-
+
@@ -50532,15 +50543,15 @@
-
-
+
+
-
+
@@ -50581,14 +50592,14 @@
-
-
+
+
-
+
@@ -51648,7 +51659,7 @@
-
+
@@ -51674,13 +51685,13 @@
-
-
+
+
-
+
@@ -51778,7 +51789,7 @@
-
+
@@ -51805,15 +51816,15 @@
-
-
+
+
-
+
-
+
@@ -51835,14 +51846,14 @@
-
-
+
+
-
+
@@ -51898,7 +51909,7 @@
-
+
@@ -52025,10 +52036,10 @@
-
+
-
+
@@ -52192,15 +52203,15 @@
-
-
+
+
-
+
@@ -52373,7 +52384,7 @@
-
+
@@ -52496,11 +52507,11 @@
-
+
-
+
@@ -52547,18 +52558,19 @@
+
-
-
+
+
-
+
@@ -53727,7 +53739,7 @@
-
+
@@ -53789,21 +53801,21 @@
-
-
+
+
-
+
-
+
@@ -53937,7 +53949,7 @@
-
+
@@ -54080,7 +54092,7 @@
-
+
@@ -54104,7 +54116,7 @@
-
+
@@ -54305,7 +54317,7 @@
-
+
@@ -54337,7 +54349,7 @@
-
+
@@ -54364,15 +54376,15 @@
-
-
+
+
-
+
@@ -54399,7 +54411,7 @@
-
+
@@ -54667,7 +54679,7 @@
-
+
@@ -54698,15 +54710,17 @@
-
-
-
-
-
-
+
+
+
+
+
+
+
+
-
+
@@ -54770,7 +54784,7 @@
-
+
@@ -54866,7 +54880,7 @@
-
+
@@ -54907,8 +54921,8 @@
-
-
+
+
@@ -54961,7 +54975,7 @@
-
+
@@ -55151,7 +55165,7 @@
-
+
@@ -55342,8 +55356,8 @@
-
-
+
+
@@ -55416,7 +55430,7 @@
-
+
@@ -55471,8 +55485,8 @@
-
-
+
+
@@ -55480,7 +55494,7 @@
-
+
@@ -55523,7 +55537,7 @@
-
+
@@ -55617,7 +55631,7 @@
-
+
@@ -56272,7 +56286,7 @@
-
+
@@ -56465,9 +56479,9 @@
-
-
-
+
+
+
@@ -56503,7 +56517,7 @@
-
+
@@ -56820,7 +56834,7 @@
-
+
@@ -56972,7 +56986,7 @@
-
+
@@ -57080,19 +57094,19 @@
-
-
+
+
-
-
+
+
-
+
@@ -57187,8 +57201,8 @@
-
-
+
+
@@ -57415,7 +57429,7 @@
-
+
@@ -57439,8 +57453,8 @@
-
-
+
+
@@ -57448,7 +57462,7 @@
-
+
@@ -57609,7 +57623,7 @@
-
+
@@ -57701,7 +57715,7 @@
-
+
@@ -57973,7 +57987,7 @@
-
+
@@ -57999,7 +58013,7 @@
-
+
@@ -58071,7 +58085,7 @@
-
+
@@ -58120,14 +58134,14 @@
-
-
+
+
-
-
+
+
@@ -58523,7 +58537,7 @@
-
+
@@ -58590,9 +58604,9 @@
-
+
-
+
@@ -58643,7 +58657,7 @@
-
+
@@ -59174,7 +59188,7 @@
-
+
@@ -59237,14 +59251,14 @@
-
-
+
+
-
+
@@ -59348,8 +59362,8 @@
-
-
+
+
@@ -59464,8 +59478,8 @@
-
-
+
+
@@ -59577,7 +59591,7 @@
-
+
@@ -59625,14 +59639,14 @@
-
-
+
+
-
+
@@ -59851,7 +59865,7 @@
-
+
@@ -59961,17 +59975,17 @@
-
-
-
-
+
+
+
+
-
+
@@ -60031,7 +60045,7 @@
-
+
@@ -60053,14 +60067,14 @@
-
-
+
+
-
+
@@ -60395,7 +60409,7 @@
-
+
@@ -60427,15 +60441,15 @@
-
-
+
+
-
+
-
+
@@ -60471,13 +60485,13 @@
-
-
+
+
-
+
@@ -60580,8 +60594,8 @@
-
-
+
+
@@ -61188,8 +61202,8 @@
-
-
+
+
@@ -61544,7 +61558,7 @@
-
+
@@ -61602,11 +61616,11 @@
-
-
-
+
+
+
-
+
@@ -61624,7 +61638,7 @@
-
+
@@ -62368,7 +62382,7 @@
-
+
@@ -62422,14 +62436,14 @@
-
-
+
+
-
-
+
+
@@ -62990,7 +63004,7 @@
-
+
@@ -63054,8 +63068,8 @@
-
-
+
+
@@ -63063,7 +63077,7 @@
-
+
@@ -63109,8 +63123,8 @@
-
-
+
+
@@ -63281,7 +63295,7 @@
-
+
@@ -63290,13 +63304,13 @@
-
-
+
+
-
+
@@ -63935,7 +63949,7 @@
-
+
@@ -64175,7 +64189,7 @@
-
+
@@ -65033,8 +65047,8 @@
-
-
+
+
@@ -65047,8 +65061,8 @@
-
-
+
+
@@ -65125,7 +65139,7 @@
-
+
@@ -65309,7 +65323,7 @@
-
+
@@ -65321,7 +65335,7 @@
-
+
@@ -65368,13 +65382,13 @@
-
-
+
+
-
+
@@ -65561,7 +65575,7 @@
-
+
@@ -65586,13 +65600,13 @@
-
-
+
+
-
+
@@ -66218,7 +66232,7 @@
-
+
@@ -66260,7 +66274,7 @@
-
+
@@ -66442,7 +66456,7 @@
-
+
@@ -66528,9 +66542,9 @@
-
+
-
+
@@ -66589,18 +66603,18 @@
-
-
+
+
-
-
+
+
-
+
@@ -66745,8 +66759,8 @@
-
-
+
+
@@ -66831,7 +66845,7 @@
-
+
@@ -66862,7 +66876,7 @@
-
+
@@ -67042,7 +67056,7 @@
-
+
@@ -67065,14 +67079,14 @@
-
-
+
+
-
+
@@ -67237,8 +67251,8 @@
-
-
+
+
@@ -67714,8 +67728,8 @@
-
-
+
+
@@ -67725,7 +67739,7 @@
-
+
@@ -67779,15 +67793,15 @@
-
-
+
+
-
+
-
+
@@ -67831,15 +67845,15 @@
-
-
+
+
-
-
-
+
+
+
-
+
@@ -67886,9 +67900,9 @@
-
+
-
+
@@ -67933,9 +67947,9 @@
-
+
-
+
@@ -67976,16 +67990,16 @@
-
-
+
+
-
+
-
+
@@ -68021,14 +68035,14 @@
-
-
+
+
-
+
@@ -68192,8 +68206,8 @@
-
-
+
+
@@ -68572,8 +68586,8 @@
-
-
+
+
@@ -68634,8 +68648,8 @@
-
-
+
+
@@ -68728,8 +68742,8 @@
-
-
+
+
@@ -68748,8 +68762,8 @@
-
-
+
+
@@ -69075,16 +69089,16 @@
-
-
+
+
-
-
-
-
-
-
+
+
+
+
+
+
@@ -69158,12 +69172,12 @@
-
-
-
-
-
-
+
+
+
+
+
+
@@ -69210,16 +69224,18 @@
+
+
-
-
+
+
-
-
+
+
@@ -69242,28 +69258,26 @@
-
-
-
-
+
+
-
-
+
+
-
-
+
+
@@ -69392,7 +69406,7 @@
-
+
@@ -69466,12 +69480,12 @@
-
+
-
-
+
+
@@ -69484,8 +69498,8 @@
-
-
+
+
@@ -69840,7 +69854,7 @@
-
+
@@ -70490,10 +70504,10 @@
-
-
-
-
+
+
+
+
@@ -72728,8 +72742,8 @@
-
-
+
+
@@ -72737,8 +72751,8 @@
-
-
+
+
@@ -77661,7 +77675,7 @@
-
+
@@ -77756,7 +77770,7 @@
-
+
@@ -81164,7 +81178,7 @@
-
+
@@ -81380,11 +81394,11 @@
-
+
-
+
@@ -81735,16 +81749,16 @@
-
+
-
+
-
+
-
+
@@ -85118,7 +85132,7 @@
-
+
@@ -85138,11 +85152,11 @@
-
-
+
+
-
+
@@ -86091,7 +86105,7 @@
-
+
@@ -86106,9 +86120,9 @@
-
-
-
+
+
+
@@ -87374,8 +87388,8 @@
-
-
+
+
@@ -87417,21 +87431,21 @@
-
+
-
-
+
+
-
+
-
-
-
-
+
+
+
+
@@ -87507,7 +87521,7 @@
-
+
@@ -87517,7 +87531,7 @@
-
+
@@ -87549,7 +87563,7 @@
-
+
@@ -87559,7 +87573,7 @@
-
+
@@ -87629,11 +87643,11 @@
-
+
-
+
@@ -87841,7 +87855,7 @@
-
+
@@ -87855,7 +87869,7 @@
-
+
@@ -87959,6 +87973,27 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -88624,7 +88659,7 @@
-
+
@@ -88650,11 +88685,11 @@
-
-
+
+
-
+
@@ -88704,8 +88739,8 @@
-
-
+
+
@@ -88713,7 +88748,7 @@
-
+
@@ -88733,12 +88768,12 @@
-
-
+
+
-
+
@@ -88767,8 +88802,8 @@
-
-
+
+
@@ -89123,7 +89158,7 @@
-
+
@@ -89165,7 +89200,7 @@
-
+
@@ -89537,8 +89572,8 @@
-
-
+
+
@@ -89630,7 +89665,7 @@
-
+
@@ -89641,7 +89676,7 @@
-
+
@@ -89996,7 +90031,7 @@
-
+
@@ -90023,9 +90058,9 @@
-
+
-
+
@@ -90046,7 +90081,7 @@
-
+
@@ -90614,11 +90649,11 @@
-
+
-
+
@@ -90758,8 +90793,8 @@
-
-
+
+
@@ -90846,7 +90881,7 @@
-
+
@@ -90867,17 +90902,17 @@
-
-
-
-
-
-
+
+
+
+
+
+
-
+
@@ -91051,7 +91086,7 @@
-
+
@@ -91090,8 +91125,8 @@
-
-
+
+
@@ -92108,8 +92143,8 @@
-
-
+
+
@@ -92316,7 +92351,7 @@
-
+
@@ -92324,7 +92359,7 @@
-
+
@@ -92381,7 +92416,7 @@
-
+
@@ -92389,7 +92424,7 @@
-
+
@@ -92434,8 +92469,8 @@
-
-
+
+
@@ -92700,7 +92735,7 @@
-
+
@@ -92710,12 +92745,12 @@
-
-
-
+
+
+
-
-
+
+
@@ -92785,25 +92820,26 @@
-
-
+
+
-
+
+
-
-
-
-
-
+
+
+
+
+
@@ -92882,7 +92918,7 @@
-
+
@@ -92894,13 +92930,13 @@
-
+
-
+
@@ -92912,7 +92948,7 @@
-
+
@@ -93163,8 +93199,8 @@
-
-
+
+
@@ -93356,13 +93392,13 @@
-
+
-
+
@@ -93635,7 +93671,7 @@
-
+
@@ -93847,7 +93883,7 @@
-
+
@@ -93856,7 +93892,7 @@
-
+
@@ -93868,13 +93904,13 @@
-
+
-
+
@@ -94214,7 +94250,7 @@
-
+
@@ -94228,7 +94264,7 @@
-
+
@@ -94537,7 +94573,7 @@
-
+
@@ -94573,22 +94609,22 @@
-
-
+
+
-
-
+
+
-
-
+
+
-
+
@@ -98003,8 +98039,8 @@
-
-
+
+
@@ -98013,10 +98049,10 @@
-
-
-
-
+
+
+
+
@@ -98183,8 +98219,8 @@
-
-
+
+
@@ -98395,8 +98431,8 @@
-
-
+
+
@@ -98745,8 +98781,8 @@
-
-
+
+
@@ -98849,8 +98885,8 @@
-
-
+
+
@@ -99009,8 +99045,8 @@
-
-
+
+
@@ -99459,8 +99495,8 @@
-
-
+
+
@@ -99837,8 +99873,8 @@
-
-
+
+
@@ -100875,7 +100911,6 @@
-
@@ -101209,6 +101244,8 @@
+
+
@@ -101512,7 +101549,7 @@
-
+
@@ -101561,7 +101598,7 @@
-
+
@@ -101891,8 +101928,8 @@
-
-
+
+
@@ -102095,7 +102132,7 @@
-
+
@@ -102123,17 +102160,17 @@
-
+
-
+
-
+
@@ -102165,7 +102202,7 @@
-
+
@@ -102173,7 +102210,7 @@
-
+
@@ -103272,8 +103309,8 @@
-
-
+
+
@@ -103816,8 +103853,8 @@
-
-
+
+
@@ -103834,8 +103871,8 @@
-
-
+
+
diff --git a/src/Configuration.xml b/src/Configuration.xml
index aa95213b9..ab47e57f4 100644
--- a/src/Configuration.xml
+++ b/src/Configuration.xml
@@ -53,7 +53,7 @@
Role.ИнтерактивноеОткрытиеВнешнихОтчетовИОбработок
ООО "1С-Рарус Специализированные Решения"
- 3.1.36.31
+ 3.1.36.33
http://downloads.v8.1c.ru/tmplts/
true
true
@@ -248,7 +248,7 @@
ru
1С:Управление торговлей и взаимоотношениями с клиентами (CRM):
-1С:Управление торговлей (11.5.27.47) + Модуль 1С:CRM (3.1.36.27)
+1С:Управление торговлей (11.5.27.52) + Модуль 1С:CRM (3.1.36.45)
Версия продукта
@@ -514,22 +514,23 @@
ФонРезультатовПоиска
ФонУправляющегоПоля
ЦветАктивногоПоля
- ЦветГиперссылкиМониторПортала
+ ЦветВажнойНадписиБИП
ЦветВыделенияКонтрагентаСОшибкойБРД
ЦветВыделенияУчастникаЭПД
ЦветГиперссылкиБЭД
ЦветГиперссылкиГосИС
- ЦветГрадацияСПАРКВысокийРиск
+ ЦветГиперссылкиМониторПортала
ЦветГиперссылкиСервисДоставки
+ ЦветГрадацияСПАРКВысокийРиск
ЦветГрадацияСПАРКНизкийРиск
ЦветГрадацияСПАРКСреднийРиск
- ЦветИзмененногоПоля
ЦветДатыТитула
- ЦветВажнойНадписиБИП
- ЦветМеткиГолубой
+ ЦветИзмененногоПоля
+ ЦветИнформацияОшибочна
ЦветИтоговыхПоказателейДокументов
ЦветКнопкиПоУмолчаниюДепозитыОбменСБанками
ЦветКомандЗеленыйСборкаИДоставка
+ ЦветМеткиГолубой
ЦветМеткиЖелтый
ЦветМеткиЗеленый
ЦветМеткиКрасный
@@ -539,10 +540,9 @@
ЦветМеткиСерый
ЦветМеткиСиний
ЦветМеткиФиолетовый
- ЦветИнформацияОшибочна
- ЦветНадписиЛогинМониторПортала
- ЦветНавигацииСервисДоставки
ЦветМикротекста
+ ЦветНавигацииСервисДоставки
+ ЦветНадписиЛогинМониторПортала
ЦветНеактивногоРегиона
ЦветНеАктивнойСтроки
ЦветНедоступногоТекста
@@ -550,27 +550,26 @@
ЦветОбрабатываемогоПриглашенияКЭДО
ЦветОтклоненногоПриглашенияКЭДО
ЦветОтличающейсяСтрокиДокумента
- ЦветПустойГиперссылки
- ЦветПринятогоПриглашенияКЭДО
ЦветПодписи
- ЦветСерииФинансовогоАнализа
+ ЦветПринятогоПриглашенияКЭДО
+ ЦветПустойГиперссылки
+ ЦветРазделаПанелиФункций
ЦветРазделителяГруппЭлементовЭПД
- ЦветТекстаВнимание
ЦветРамкиПредпросмотраЭлектронногоДокумента
ЦветСводнойСерииДиаграммы
- ЦветТекстаДополнительныеСведения
+ ЦветСерииФинансовогоАнализа
ЦветСостоянияСерыйЭПД
ЦветСтиляТекстаФормы
ЦветТекстаАвтоматическиИзСервисаБЭД
ЦветТекстаВажнаяНадписьЭлАктированиеЕИС
- ЦветТекстаКонтрагентаДействующего
+ ЦветТекстаВнимание
ЦветТекстаВниманиеБЭД
ЦветТекстаВспомогательныхДанныхДействий
ЦветТекстаВыполненныйШагЭПД
ЦветТекстаГиперссылкаСборкаИДоставка
ЦветТекстаГруппаВетвление
ЦветТекстаДебета
- ЦветТекстаКонтрагентаПрекратившегоДеятельность
+ ЦветТекстаДополнительныеСведения
ЦветТекстаДополнительныйСборкаИДоставка
ЦветТекстаЕстьВариантыДляСопоставления
ЦветТекстаЗаголовокОтчетаВТакси
@@ -579,28 +578,30 @@
ЦветТекстаЗеленыйМРМК
ЦветТекстаИспользованнаяГиперссылкаБЭД
ЦветТекстаКнопкаПоУмолчаниюСервисДоставки
- ЦветТекстаМетки
+ ЦветТекстаКонтрагентаДействующего
ЦветТекстаКонтрагентаНеЗаполненИННКПП
- ЦветТекстаНеактуальногоСписка
+ ЦветТекстаКонтрагентаПрекратившегоДеятельность
ЦветТекстаКредита
- ЦветТекстаНевыбраннойКартинки
+ ЦветТекстаМетки
ЦветТекстаНаименованияВыбранногоМПЭПД
- ЦветТекстаНекорректногоКонтрагента
+ ЦветТекстаНаименованияОтправителяСообщенияБЭД
+ ЦветТекстаНаименованияПолучателяСообщенияБЭД
+ ЦветТекстаНеактуальногоСписка
ЦветТекстаНеважнаяНадписьБЭД
ЦветТекстаНеважнаяНадписьЭлАктированиеЕИС
- ЦветТекстаОтрицательногоЗначения
+ ЦветТекстаНевыбраннойКартинки
ЦветТекстаНеВыполненныйШагЭПД
- ЦветТекстаПоложительногоЗначения
+ ЦветТекстаНекорректногоКонтрагента
ЦветТекстаНеСопоставленногоОбъектаБЭД
ЦветТекстаНеТребуетВниманияГосИС
ЦветТекстаНеУдачнаяПроверкаМЧД
ЦветТекстаОсновнойСборкаИДоставка
ЦветТекстаОтложенаПриПроверкеГосИС
ЦветТекстаОтмененнойСтрокиДокумента
- ЦветФонаВнимание
+ ЦветТекстаОтрицательногоЗначения
ЦветТекстаОтрицательныхЗначений
ЦветТекстаПодсказкиВвода
- ЦветФонаДокументаСНекорректнымиКонтрагентамиВСпискеДокументов
+ ЦветТекстаПоложительногоЗначения
ЦветТекстаПредупреждение
ЦветТекстаПроблема
ЦветТекстаПроблемаГосИС
@@ -618,16 +619,16 @@
ЦветТекстаУспешнаяПроверкаМЧД
ЦветУспешнойОперацииГосИС
ЦветФактическихСтрокГрафикаСервисДоставки
- ЦветРазделаПанелиФункций
ЦветФонаБаннерБРД
ЦветРамкиПоляВвода
+ ЦветФонаВнимание
ЦветФонаВниманиеБИП
ЦветФонаВниманиеБРД
ЦветФонаВниманиеМЧД
ЦветФонаВсеПоля
ЦветФонаВыделения
ЦветФонаДействительнаяМЧД
- ЦветФонаОтрицательногоЗначения
+ ЦветФонаДокументаСНекорректнымиКонтрагентамиВСпискеДокументов
ЦветФонаЖелтыйБЭД
ЦветФонаЖелтыйСостояниеДокументаБЭД
ЦветФонаЗавершеннойОперации
@@ -636,21 +637,22 @@
ЦветФонаИзмененногоЗначенияПользователяГосИС
ЦветФонаИнформационнойПанелиЕИС
ЦветФонаКнопкаПоУмолчаниюСервисДоставки
- ЦветФонаПоложительногоЗначения
+ ЦветФонаКорректногоЗначенияБИП
ЦветФонаКрасныйСостояниеДокументаБЭД
- ЦветФонаНедействительнаяМЧД
ЦветФонаАктивногоМикрофона
+ ЦветФонаНедействительнаяМЧД
+ ЦветФонаНекорректногоЗначенияБИП
ЦветФонаНеОбеспечен
ЦветФонаНеТребуетВниманияГосИС
ЦветФонаОбеспеченСверхПотребности
- ЦветФонаКорректногоЗначенияБИП
+ ЦветФонаОтрицательногоЗначения
ЦветФонаПакетовДокументовБЭД
ЦветФонаПанелиФильтра
ЦветФонаПолностьюОбеспечен
- ЦветШтампаЭП
+ ЦветФонаПоложительногоЗначения
ЦветФонаПоляВводаМКБЭД
- ШрифтВажнаяНадписьПроверкиКонтрагента
- ЦветФонаНекорректногоЗначенияБИП
+ ЦветФонаПоясненияОшибкиБИП
+ ЦветФонаПредупреждения
ЦветФонаПредупрежденияБРД
ЦветФонаСкидкиТорговыхПредложений
ЦветФонаСкидкиТорговыхПредложенийОсветление
@@ -660,17 +662,17 @@
ЦветШкалыДиаграммы
ЦветШрифтаВыполненныйШагДепозитыОбменСБанками
ЦветШтампаБЭД
- ЦветФонаПоясненияОшибкиБИП
- ШрифтГиперссылка
- ШрифтГиперссылкиМониторПортала
+ ЦветШтампаЭП
+ ШрифтВажнаяНадписьПроверкиКонтрагента
+ ШрифтВажногоЗаголовкаБИП
ШрифтВажнойНадписи
- ШрифтЗаголовкаМониторПортала
+ ШрифтВажнойНадписиБИП
ШрифтВопросаВыполнения
ШрифтВыделенныйСервисДоставки
ШрифтГеографическойКарты
- ШрифтЗаголовкаНастроекНовостей
+ ШрифтГиперссылка
ШрифтГиперссылкиГосИС
- ШрифтМеток
+ ШрифтГиперссылкиМониторПортала
ШрифтГруппаОбычнаяДемоСценарии
ШрифтГруппаШагиГруппы
ШрифтДатыТитула
@@ -682,8 +684,8 @@
ШрифтЗаголовкаВсплывающейГруппы
ШрифтЗаголовкаГруппы
ШрифтЗаголовкаГруппыБИП
- ЦветФонаПредупреждения
- ШрифтНовостей
+ ШрифтЗаголовкаМониторПортала
+ ШрифтЗаголовкаНастроекНовостей
ШрифтЗаголовкаОбозначений
ШрифтЗаголовкаСпискаВыделенныйСборкаИДоставка
ШрифтЗаголовкаСпискаСборкаИДоставка
@@ -699,18 +701,18 @@
ШрифтКомандМРМК
ШрифтКомандСборкаИДоставка
ШрифтМенюСпискаСборкаИДоставка
- ШрифтОбычнаяНадписьПроверкиКонтрагента
+ ШрифтМеток
ШрифтМикроЗаголовкаЭПД
- ШрифтОченьКрупныйШрифтТекста
+ ШрифтМикротекста
ШрифтМинимальногоРазмера
ШрифтНаклонныйУП
ШрифтНеПринятыеКИсполнениюЗадачи
- ШрифтВажногоЗаголовкаБИП
- ШрифтВажнойНадписиБИП
+ ШрифтНовостей
+ ШрифтОбычнаяНадписьПроверкиКонтрагента
ШрифтОсновногоТекстаОбозначений
ШрифтОтбораСпискаВыделенныйСборкаИДоставка
ШрифтОтмененнойСтрокиДокумента
- ШрифтМикротекста
+ ШрифтОченьКрупныйШрифтТекста
ШрифтПодписиТабличногоПоляЭПД
ШрифтПустышкиСборкаИДоставка
ШрифтРазделителяЭлементовЭПД
@@ -1993,6 +1995,7 @@
МаркируемаяПродукцияТЧ
МаркируемаяПродукцияШапка
МассоваяОтправкаБЭД
+ МахShare
МашиночитаемыеДоверенностиБЭД
МедосмотрПередРейсомВыбранМПЭПД
МедосмотрПередРейсомМПЭПД
@@ -2090,11 +2093,11 @@
Минус
Многоточие
МобильноеУстройствоЭПД
- МобильныеПриложенияРаспознаванияДокументов
МодельРаспознаванияРечиДоступна
МодельРаспознаванияРечиЛокальная
МодельРаспознаванияРечиНеДоступна
МодельРаспознаванияРечиОблачная
+ МобильныеПриложенияРаспознаванияДокументов
МониторПортала1СИТСНегативноеСобытие
МониторПортала1СИТСПунктНеВыполнено
МРМЗаблокировать
@@ -2677,8 +2680,8 @@
РамкаСерая
Распаковать
РаспознаваниеДокументов
- РаспознаваниеДокументов72
РаспознаваниеРечи96
+ РаспознаваниеДокументов72
РаспределенныйРеестрФНС
Рассчитать
РассчитатьВероятностьСделки
@@ -2768,11 +2771,11 @@
СигналАктивный32
СигналНеактивный
СигналНеактивный32
- СинийФлаг
СинтезРечи96
СинтезРечиПеремотатьНаНачало
СинтезРечиПредыдущаяФраза
СинтезРечиСледующаяФраза
+ СинийФлаг
СинхронизацияДанных
СинхронизацияДанныхАнализДанных48
СинхронизацияДанныхВыгрузить
@@ -2934,6 +2937,7 @@
СтатусыДокумента
СтатусыДокументовКоммерческиеПредложения
СтатусыДоставкиЗаказовТорговыхПлощадок
+ СтатусыИспользованияУстаревшейФункциональности
СтатусыКатегорий24
СтатусыОбменаКоллекция
СтатусыОбработкиДокументовБЭД
@@ -2964,8 +2968,6 @@
СтрелкаВправоКрасная
Структура
СтруктураПодчиненности
- Сумма
- СуммаКОплатеСерыйДоставка
сфп_Загрузка_24
сфпCLON
сфпCoMagic
@@ -3094,6 +3096,8 @@
сфпФильтрМоиЗвонкиИПодразделения
сфпЧекБоксВкл
сфпЧекБоксВыкл
+ Сумма
+ СуммаКОплатеСерыйДоставка
СчитатьКартуЛояльности
ТекстовыйФайл
ТекущийЭтапСделки
@@ -3262,9 +3266,9 @@
ЦентрОповещений
ЧастыеВопросыБЭД
ЧасыПроцессОтложен
+ ЧерныйМикрофон
Чек16СборкаИДоставка
ЧекСборкаИДоставка
- ЧерныйМикрофон
ЧестныйЗнак
ШиринаКолонки
ШкалаЗначенийДиаграммы
@@ -3408,7 +3412,6 @@
РазрешенныйНаборГруппПользователей
РазрешенныйПользователь
РазрешенныйПустойНаборГруппДоступа
- РежимЗагрузкиДанныхВЦентрЭДО
РежимЗагрузкиСообщенияОбменаДаннымиПередЗапуском
РежимыЗапускаВнешнихОтчетовИОбработок
СессииОбменСБанками
@@ -6321,8 +6324,8 @@
ОбменССайтомСобытия
ОбновлениеИнформационнойБазы
ОбновлениеИнформационнойБазыБИД
- ОбновлениеИнформационнойБазыБИП
ОбновлениеИнформационнойБазыБМО
+ ОбновлениеИнформационнойБазыБИП
ОбновлениеИнформационнойБазыБПО
ОбновлениеИнформационнойБазыБРД
ОбновлениеИнформационнойБазыБСД
@@ -6414,11 +6417,11 @@
ОбработкаНовостейПереопределяемый
ОбработкаНовостейПовтИсп
ОбработкаНовостейСлужебный
- ОбработкаНовостейУТ
ОбработкаРаспознанногоТекстаДжароВинклерПовтИсп
ОбработкаРаспознанногоТекстаКлиентСервер
ОбработкаРаспознанногоТекстаКлиентСерверПовтИсп
ОбработкаРаспознанногоТекстаСервер
+ ОбработкаНовостейУТ
ОбработкаТиповИсключаемыхИзВыгрузки
ОбработкаТиповИсключаемыхИзВыгрузкиПовтИсп
ОбращенияВТехническуюПоддержкуГлобальный
@@ -6699,10 +6702,10 @@
ПакетыДокументовЭДОПовтИспНаВызов
ПакетыДокументовЭДОСлужебный
ПакетыДокументовЭДОЦентрЭДО
- ПанельАдминистрированияИСМП
ПараметрыРаспознаванияРечиКлиент
ПараметрыРаспознаванияРечиКлиентСервер
ПараметрыРаспознаванияРечиСервер
+ ПанельАдминистрированияИСМП
ПартионныйУчет
ПартионныйУчетСервер
ПартнерыИКонтрагенты
@@ -6898,8 +6901,8 @@
ПользователиСлужебныйВМоделиСервисаПовтИсп
ПользователиСлужебныйКлиент
ПользователиСлужебныйКлиентСервер
- ПользователиСлужебныйПовтИсп
ПоляВводаКлиент
+ ПользователиСлужебныйПовтИсп
ПорчаТоваровЛокализация
ПорчаТоваровУХранителяЛокализация
ПоставляемыеДанные
@@ -6936,7 +6939,6 @@
ПриглашенияЭДОИнтеграцияЦентраЭДОКлиент
ПриглашенияЭДОКлиент
ПриглашенияЭДОКлиентСервер
- ПриглашенияЭДОПовтИсп
ПриглашенияЭДОСлужебный
ПриглашенияЭДОСлужебныйВызовСервера
ПриглашенияЭДОСлужебныйКлиент
@@ -7121,7 +7123,6 @@
РаботаСПротоколомДокументаКлиент
РаботаСПротоколомДокументаКлиентСервер
РаботаСПрочтениямиВызовСервера
- РаботаСРаспоряжениямиПовтИсп
РаботаСРечьюFFmpeg
РаботаСРечьюВызовСервера
РаботаСРечьюЖурналированиеВызовСервера
@@ -7140,6 +7141,7 @@
РаботаСРечьюСинтезРечиСервер
РаботаССистемойВзаимодействияВызовСервера
РаботаССистемойВзаимодействияКлиент
+ РаботаСРаспоряжениямиПовтИсп
РаботаСТабличнымиЧастями
РаботаСТабличнымиЧастямиКлиент
РаботаСТабличнымиЧастямиКлиентСервер
@@ -7303,11 +7305,11 @@
РеализацияТоваровУслугЛокализация
РеализацияУслугПрочихАктивовКлиентЛокализация
РеализацияУслугПрочихАктивовЛокализация
- РегионализацияВЕТИС
Регистр_ДополнительнаяГрамматикаРаботыСРечьюДляПолей
Регистр_ПараметрыРаспознаванияРечи
Регистр_ПользовательскаяГрамматикаРаботыСРечью
Регистр_ТокеныСеансаРаботыСРечью
+ РегионализацияВЕТИС
РегистраторРасчетаСебестоимостиЛокализация
РегистрацииВНалоговомОрганеКлиентСервер
РегистрацияЦенНоменклатурыПоставщикаЛокализация
@@ -7490,13 +7492,13 @@
СклонениеПредставленийОбъектов
СклонениеПредставленийОбъектовВызовСервера
СклонениеПредставленийОбъектовКлиент
- СклонениеПредставленийОбъектовКлиентСервер
слкМенеджерЗащиты
слкМенеджерЗащитыКлиентПереопределяемый
слкМенеджерЗащитыПереопределяемый
слкМенеджерЗащитыПовтИсп
слкМенеджерЗащитыСервер
слкОбновлениеИнформационнойБазы
+ СклонениеПредставленийОбъектовКлиентСервер
СнимкиОтчетов
СобытияФорм
СобытияФормВЕТИС
@@ -7668,7 +7670,6 @@
СтроковыеФункцииКлиентСерверЛокализация
СтроковыеФункцииКлиентСерверРФ
СтруктураПодчиненностиПереопределяемый
- СтруктураПодчиненностиСлужебный
сфпЛицензированиеСервер
сфпЛицензированиеЭкспортныеМетоды
сфпОбщегоНазначения
@@ -7683,6 +7684,7 @@
сфпСофтФонПроСервер
сфпСофтФонПроСерверПереопределяемый
сфпСофтФонПроСерверПовтИсп
+ СтруктураПодчиненностиСлужебный
СхемаКонфигурации
СхемыЗапросов
СчетНаОплатуКлиентуЛокализация
@@ -8545,7 +8547,7 @@
ЭДО
CRM_YandexSpeller
UpdateFilesApiImplService
- bpmОбъектПроцессаПередЗаписью
+ ВариантОтчетаПередУдалением
bpmОбъектПроцессаПриЗаписи
CRM_БизнесПроцессПередЗаписью
CRM_ВыполнитьДействияПередЗаписьюПрисоединенногоФайла
@@ -8655,63 +8657,58 @@
CRM_УстановитьПрефиксИнформационнойБазыИОрганизацииНомеруДокумента
CRM_УстановитьПрефиксИнформационнойБазыИОрганизацииНомеруДокументаИнтерес
CRM_УстановитьСтатусИзмененияПометкиУдаленияДокумента
+ bpmОбъектПроцессаПередЗаписью
ВариантыОтчетовПередУдалениемИдентификатораОбъектаМетаданных
ВариантыОтчетовПриУдаленииПользователя
ВключитьИспользованиеПланаОбмена
ВключитьРегламентноеЗаданиеПриИзмененииФункциональнойОпции
- ВыполнитьДействияПередЗаписьюПрисоединенногоФайла
- ВариантОтчетаПередУдалением
- ВыполнитьДействияПередУдалениемПрисоединенногоФайла
- ВыполнитьДействияПослеПолученияДанныхУзлаВРаспределеннойИнформационнойБазе
- ВыполнитьДействияПриЗаписиПрисоединенногоФайла
- ДополнительныеОтчетыИОбработкиПередУдалениемИдентификатораОбъектаМетаданных
ВлияющийНаСтатусПоступленияКиЗДокументПередЗаписью
ВлияющийНаСтатусПоступленияКиЗДокументПриПроведении
ВыделениеДанныхRFIDСерии
ВыполнитьДействияПередЗаписьюДополнительногоРеквизита
- ДополнительныеРеквизитыОбработкаПроверкиЗаполнения
- ЗаписатьВерсиюДокумента
- ЗаписатьВерсиюОбъекта
+ ВыполнитьДействияПередЗаписьюПрисоединенногоФайла
+ ВыполнитьДействияПередУдалениемПрисоединенногоФайла
+ ВыполнитьДействияПослеПолученияДанныхУзлаВРаспределеннойИнформационнойБазе
ВыполнитьДействияПриЗаписиДополнительногоРеквизита
ВыполнитьДействияПриЗаписиНоменклатураКонтрагентовБЭД
ВыполнитьДействияПриЗаписиНоменклатурыКонтрагента
- ЗаписатьВСписокБизнесПроцессов
- ЗаписатьЗависимыеНаборыЗначенийДоступа
- ЗаписатьНаборыЗначенийДоступа
+ ВыполнитьДействияПриЗаписиПрисоединенногоФайла
+ ДополнительныеОтчетыИОбработкиПередУдалениемИдентификатораОбъектаМетаданных
+ ДополнительныеРеквизитыОбработкаПроверкиЗаполнения
ЗаблокироватьОткрытиеФормНаМобильномКлиентеЭДО
ЗаданияКЗакрытиюМесяцаПередЗаписью
- ЗаполнитьЗначениеРеквизитаУпорядочивания
+ ЗаписатьВерсиюДокумента
ЗаписатьВерсиюДокументаГИСМ
ЗаписатьВерсиюКоммерческихПредложений
+ ЗаписатьВерсиюОбъекта
+ ЗаписатьВСписокБизнесПроцессов
+ ЗаписатьЗависимыеНаборыЗначенийДоступа
+ ЗаписатьМашиночитаемуюДоверенностьВЖурнал
+ ЗаписатьНаборыЗначенийДоступа
+ ЗаполнитьВидыЭДДляСертификатаЭП
+ ЗаполнитьЗначениеРеквизитаОрганизацияПриОднофирменномУчетеЭДО
+ ЗаполнитьЗначениеРеквизитаУпорядочивания
ЗаполнитьКонтактнуюИнформацию
ЗаполнитьНаборыЗначенийДоступаТабличныхЧастей
ЗаполнитьНаборыЗначенийДоступаТабличныхЧастейДокументов
- ЗаписатьМашиночитаемуюДоверенностьВЖурнал
- ЗапретитьИспользованиеУдаляемыхОбъектовВДокументах
- ЗаполнитьВидыЭДДляСертификатаЭП
- ЗаполнитьЗначениеРеквизитаОрганизацияПриОднофирменномУчетеЭДО
- ЗапретитьИспользованиеУдаляемыхОбъектовВКонстантах
- ЗапретитьИспользованиеУдаляемыхОбъектовВНаборахЗаписей
- ЗапретитьИспользованиеУдаляемыхОбъектовВНаборахРегистровРасчета
- ЗапретитьИспользованиеУдаляемыхОбъектовВОбъектах
ЗаполнитьРеквизитыОбъекта
ЗаполнитьСловарьНоменклатурыБЭД
ЗаполнитьСозданныйДокументИзРаспознанногоДокументаБРД
ЗаполнитьСоответствиеОбъектовВЕТИСПриЗаписиДокумента
ЗаполнитьСчетФактуруИзРаспознанногоДокумента
+ ЗапретитьИспользованиеУдаляемыхОбъектовВДокументах
+ ЗапретитьИспользованиеУдаляемыхОбъектовВКонстантах
+ ЗапретитьИспользованиеУдаляемыхОбъектовВНаборахЗаписей
+ ЗапретитьИспользованиеУдаляемыхОбъектовВНаборахРегистровРасчета
+ ЗапретитьИспользованиеУдаляемыхОбъектовВОбъектах
ЗапретитьУдалениеПредопределенныхЭлементов
- ЗарегистрироватьИзмененияОбщихДанныхУзлов
- ЗарегистрироватьИзмененияФильтровОграниченияМиграцииДанных
- КонтактнаяИнформацияОбработкаПроверкиЗаполнения
- КонтрагентБИПОбъектПередЗаписьюСПАРКРиски
- КонтрагентБИПОбъектПриЗаписиСПАРКРиски
ЗарегистрироватьДанныеПервичныхДокументов
ЗарегистрироватьИзмененияДляАвтономногоРежима
ЗарегистрироватьИзмененияДляАвтономногоРежимаРегистры
ЗарегистрироватьИзмененияДокументаДляОбменаСМПТорговыйПредставитель
ЗарегистрироватьИзмененияДокументаДляОбменаСОборудованиемOffline
ЗарегистрироватьИзмененияЗаданияДляОбменаСМПЗаказы
- КонтрольНеразделенныхНаборовЗаписейПриЗаписи
+ ЗарегистрироватьИзмененияОбщихДанныхУзлов
ЗарегистрироватьИзмененияПриСменеПравилаОбменаПодключаемогоОборудования
ЗарегистрироватьИзмененияРегистраДляОбменаСОборудованиемOffline
ЗарегистрироватьИзмененияРегистраСведенийДляОбменаСМПЗаказы
@@ -8721,49 +8718,49 @@
ЗарегистрироватьИзмененияСправочникаПередЗаписьюДляОбменаСМПЗаказы
ЗарегистрироватьИзмененияСправочникаПриЗаписиДляОбменаСМПЗаказы
ЗарегистрироватьИзмененияСправочникаПриЗаписиДляОбменаСМПТорговыйПредставитель
- КонтрольНеразделенныхНаборовЗаписейПриЗаписиБСД
+ ЗарегистрироватьИзмененияФильтровОграниченияМиграцииДанных
ИнтеграцияС1СДокументооборотОбработкаЗаполненияДокументы
ИнтеграцияС1СДокументооборотОбработкаЗаполненияСправочники
ИнтеграцияС1СДокументооборотПередЗаписьюДокумента
ИнтеграцияС1СДокументооборотПередЗаписьюСправочника
ИнтеграцияС1СДокументооборотПриЗаписиКонстанты
ИсключенияПоискаСсылокПередУдалением
- КонтрольНеразделенныхНаборовЗаписейПриЗаписиДанныеНагрузкиИРентабельности
- КонтрольНеразделенныхНаборовЗаписейПриЗаписиКлассификаторФИО
- КонтрольНеразделенныхНаборовЗаписейПриЗаписиНовости
- КонтрольНеразделенныхНаборовЗаписейПриЗаписиОКВЭД
+ КонтактнаяИнформацияОбработкаПроверкиЗаполнения
+ КонтрагентБИПОбъектПередЗаписьюСПАРКРиски
+ КонтрагентБИПОбъектПриЗаписиСПАРКРиски
+ КонтрольНеразделенныхНаборовЗаписейПриЗаписи
КонтрольНеразделенныхНаборовЗаписейПриЗаписиБазоваяФункциональностьСБП
КонтрольНеразделенныхНаборовЗаписейПриЗаписиБизнесСеть
- КонтрольНеразделенныхНаборовЗаписейПриЗаписиПолучениеВнешнихКомпонент
+ КонтрольНеразделенныхНаборовЗаписейПриЗаписиБСД
КонтрольНеразделенныхНаборовЗаписейПриЗаписиВЕТИС
- КонтрольНеразделенныхНаборовЗаписейПриЗаписиПолучениеРегламентированныхОтчетов
+ КонтрольНеразделенныхНаборовЗаписейПриЗаписиДанныеНагрузкиИРентабельности
КонтрольНеразделенныхНаборовЗаписейПриЗаписиЕГАИС
КонтрольНеразделенныхНаборовЗаписейПриЗаписиЗЕРНО
КонтрольНеразделенныхНаборовЗаписейПриЗаписиИС
+ КонтрольНеразделенныхНаборовЗаписейПриЗаписиКлассификаторФИО
+ КонтрольНеразделенныхНаборовЗаписейПриЗаписиНовости
+ КонтрольНеразделенныхНаборовЗаписейПриЗаписиОКВЭД
+ КонтрольНеразделенныхНаборовЗаписейПриЗаписиПолучениеВнешнихКомпонент
+ КонтрольНеразделенныхНаборовЗаписейПриЗаписиПолучениеРегламентированныхОтчетов
КонтрольНеразделенныхНаборовЗаписейПриЗаписиПоставляемыеНастройки
КонтрольНеразделенныхНаборовЗаписейПриЗаписиРаботаСКлассификаторами
КонтрольНеразделенныхНаборовЗаписейПриЗаписиРасписанияРегламентныхЗаданий
КонтрольНеразделенныхНаборовЗаписейПриЗаписиТехнологияСервиса
- КонтрольНеразделенныхОбъектовПриЗаписи
- КонтрольНеразделенныхОбъектовПриЗаписиCRM
- КонтрольНеразделенныхОбъектовПриЗаписиБСД
- КонтрольНеразделенныхОбъектовПриЗаписиНовости
- КонтрольНеразделенныхОбъектовПриЗаписиПлюсСервис
КонтрольНеразделенныхНаборовЗаписейПриЗаписиЭДО
- КонтрольНеразделенныхОбъектовПриЗаписиПолучениеОбновленийПрограммы
- КонтрольНеразделенныхОбъектовПриЗаписиРаботаСКонтрагентами
+ КонтрольНеразделенныхОбъектовПриЗаписиCRM
+ КонтрольНеразделенныхОбъектовПриЗаписи
КонтрольНеразделенныхОбъектовПриЗаписиБизнесСеть
- КонтрольНеразделенныхОбъектовПриЗаписиСПАРКРиски
+ КонтрольНеразделенныхОбъектовПриЗаписиБСД
КонтрольНеразделенныхОбъектовПриЗаписиБЭД
КонтрольНеразделенныхОбъектовПриЗаписиЗЕРНО
КонтрольНеразделенныхОбъектовПриЗаписиИС
КонтрольНеразделенныхОбъектовПриЗаписиИСМП
+ КонтрольНеразделенныхОбъектовПриЗаписиНовости
+ КонтрольНеразделенныхОбъектовПриЗаписиПлюсСервис
+ КонтрольНеразделенныхОбъектовПриЗаписиПолучениеОбновленийПрограммы
+ КонтрольНеразделенныхОбъектовПриЗаписиРаботаСКонтрагентами
+ КонтрольНеразделенныхОбъектовПриЗаписиСПАРКРиски
КонтрольНеразделенныхОбъектовПриЗаписиТехнологияСервиса
- МиграцияПриложенийПередЗаписьюДокумента
- МиграцияПриложенийПередЗаписьюНабора
- МиграцияПриложенийПередЗаписьюНабораРасчета
- МиграцияПриложенийПередЗаписьюОбъекта
- МиграцияПриложенийПередУдалениемОбъекта
КонтрольОтраженияВУчетеЭДОПриЗаписиНоменклатурыКонтрагентов
КонтрольОтраженияВУчетеЭДОПриЗаписиУчетногоДокумента
КонтрольСозданияУзлаПланаОбмена
@@ -8773,11 +8770,11 @@
МеткиВремениДанныхЭДОПередЗаписьюНабораЗаписей
МеткиВремениДанныхЭДОПриЗаписиДоверенности
МеткиВремениДанныхЭДОПриЗаписиДокумента
- ОбновитьВнешнегоПользователя
- ОбновитьГруппыВладельцевНастроекПрав
- ОбновитьГруппыЗначенийДоступаПередЗаписью
- ОбновитьГруппыЗначенийДоступаПриЗаписи
- ОбновитьКонтактнуюИнформацию
+ МиграцияПриложенийПередЗаписьюДокумента
+ МиграцияПриложенийПередЗаписьюНабора
+ МиграцияПриложенийПередЗаписьюНабораРасчета
+ МиграцияПриложенийПередЗаписьюОбъекта
+ МиграцияПриложенийПередУдалениемОбъекта
ОбменДаннымиОбменУправлениеТорговлейБухгалтерияПредприятияЗарегистрироватьИзменение
ОбменДаннымиОбменУправлениеТорговлейБухгалтерияПредприятияЗарегистрироватьИзменениеДокумента
ОбменДаннымиОбменУправлениеТорговлейБухгалтерияПредприятияЗарегистрироватьИзменениеНабораЗаписей
@@ -8802,43 +8799,43 @@
ОбменСБанкамиВладелецЭДПриЗаписи
ОбменССайтомПередЗаписьюРегистра
ОбменССайтомПриЗаписиОбъекта
+ ОбновитьВнешнегоПользователя
+ ОбновитьГруппыВладельцевНастроекПрав
+ ОбновитьГруппыЗначенийДоступаПередЗаписью
+ ОбновитьГруппыЗначенийДоступаПриЗаписи
+ ОбновитьКонтактнуюИнформацию
ОбновитьСостояниеБизнесПроцесса
+ ОбновитьСостояниеЗапросаКоммерческихПредложенийПоставщиков
ОбновлениеВерсииДатЗапретаИзмененияПослеЗагрузкиДанных
ОбновлениеВерсииИБПередУдалениемСсылочногоОбъекта
+ ОбработатьИзменениеВложенияЗапросаКоммерческихПредложенийПоставщиков
+ ОбработатьИзменениеЗапросаКоммерческихПредложенийПоставщиков
ОбработкаПолученияФормыПользователяДляНеразделенныхПользователей
ОбработкаПредопределенныхЭлементовПередЗаписью
ОбработкаПроверкиЗаполненияПрисоединенногоФайла
- ОбновитьСостояниеЗапросаКоммерческихПредложенийПоставщиков
- ОпределитьФормуПрисоединенногоФайлаВзаимодействия
- ОпределитьФормуПрисоединенногоФайлаШаблоныСообщений
- ОбработатьИзменениеВложенияЗапросаКоммерческихПредложенийПоставщиков
- ОбработатьИзменениеЗапросаКоммерческихПредложенийПоставщиков
- ОтключитьАвтоматическуюСинхронизациюДанных
- ОтключитьИспользованиеПланаОбмена
- ОтключитьРассылкиПередУдалениемТипаПолучателейРассылки
ОповещенияКлиентамПередЗаписьюДокументы
ОповещенияКлиентамПередЗаписьюРегистры
ОповещенияКлиентамПриЗаписиДокументы
ОповещенияКлиентамПриЗаписиРегистры
ОпределитьФормуПрисоединенногоФайлаВЕТИС
- ОтменитьОтправкуДанныхУзлаВРаспределеннойИнформационнойБазе
+ ОпределитьФормуПрисоединенногоФайлаВзаимодействия
ОпределитьФормуПрисоединенногоФайлаЕГАИС
ОпределитьФормуПрисоединенногоФайлаИСМП
ОпределитьФормуПрисоединенногоФайлаМЧД
- ОчиститьИнформациюОбАвтореВерсии
+ ОпределитьФормуПрисоединенногоФайлаШаблоныСообщений
ОтветственныеЛицаДокументаОбработкаЗаполнения
ОтветственныеЛицаДокументаОбработкаПроверкиЗаполнения
ОтветственныеЛицаДокументаПриКопировании
- ОчиститьСсылкиНаУзелИнформационнойБазы
- ПередЗаписьюПользователяНовости
- ПередУдалениемПланаОбмена
- ПереопределитьПолучаемуюФормуПрисоединенногоФайлаБТС
+ ОтключитьАвтоматическуюСинхронизациюДанных
+ ОтключитьИспользованиеПланаОбмена
+ ОтключитьРассылкиПередУдалениемТипаПолучателейРассылки
+ ОтменитьОтправкуДанныхУзлаВРаспределеннойИнформационнойБазе
ОчиститьЗаданияПередУдалениемДокумента
- ПереопределитьПолучаемуюФормуПрисоединенногоФайлаСПАРКРиски
+ ОчиститьИнформациюОбАвтореВерсии
ОчиститьОтветственногоВДокументах
ОчиститьОтветственногоВСправочниках
ОчиститьОчередьЗаказовККорректировкеСтрокМерныхТоваровПередУдалениемДокумента
- ПлюсПоказатьРекомендациюОбработкаПолученияФормыДокумента
+ ОчиститьСсылкиНаУзелИнформационнойБазы
ОчиститьУзелОбменаСПодключаемымОборудованиемOffline
ПартияЗЕРНОПриЗаписи
ПередЗаписьюДокументаОбъектаУчетаЭДО
@@ -8847,18 +8844,23 @@
ПередЗаписьюМаркетплейсыСервисИнтеграции
ПередЗаписьюНастройкиПолученияЭлектронныхДокументов
ПередЗаписьюОснованияЗаказаСервисДоставки
- ПлюсПоказатьРекомендациюОбработкаПолученияФормыСправочника
+ ПередЗаписьюПользователяНовости
ПередЗаписьюСправочникаОбъектаУчетаЭДО
- ПолныйПутьКФормеПередЗаписью
+ ПередУдалениемПланаОбмена
ПередУдалениемРегистратораПроверитьНаличиеЗаписейВРезервахТоваровОрганизаций
ПереопределитьПолучаемуюФормуПрисоединенногоФайла
- ПолныйРегистрация
+ ПереопределитьПолучаемуюФормуПрисоединенногоФайлаБТС
ПереопределитьПолучаемуюФормуПрисоединенногоФайлаБЭД
- CRM_ПолныйРегистрация
+ ПереопределитьПолучаемуюФормуПрисоединенногоФайлаСПАРКРиски
ПереопределитьПолучаемуюФормуПрисоединенногоФайлаЭлАктированияЕИС
- ПолныйРегистрацияДокумента
- CRM_ПолныйРегистрацияДокумента
+ ПлюсПоказатьРекомендациюОбработкаПолученияФормыДокумента
+ ПлюсПоказатьРекомендациюОбработкаПолученияФормыСправочника
ПодготовитьДанныеДляСинхронизацииКлючейПередЗаписью
+ CRM_ПолныйРегистрация
+ ПолныйПутьКФормеПередЗаписью
+ ПолныйРегистрация
+ CRM_ПолныйРегистрацияДокумента
+ ПолныйРегистрацияДокумента
ПолныйРегистрацияКонстанты
CRM_ПолныйРегистрацияКонстанты
ПолныйРегистрацияНабора
@@ -10855,7 +10857,7 @@
сфпСофтФон
ЦенообразованиеБазовая
ЭлектронныйДокументооборотБазовая
- CRM_iCRMИспользоватьОграниченияВыгрузки
+ АвтоматическиНастраиватьРазрешенияВПрофиляхБезопасности
CRM_iCRMРегистрироватьДокументыСозданныеВТечение
CRM_iCRMРегистрироватьКлиентовСозданныхВТечение
CRM_iCRMРегистрироватьНоменклатуруИспользованнуюВТечение
@@ -11016,47 +11018,48 @@
SMS4B_ПроксиПользователь
SMS4B_ПроксиПорт
SMS4B_ПроксиСервер
+ CRM_iCRMИспользоватьОграниченияВыгрузки
АвтоматическиСоздаватьПартнеровПриОтправкеЭлектронногоЧекаПокупателю
АвтоПостановкаКлиентовНаМониторингСПАРК
АвтоПостановкаКлиентовНаМониторингСПАРКНастройка
АвтоПостановкаПоставщиковНаМониторингСПАРК
АвтоПостановкаПоставщиковНаМониторингСПАРКНастройка
АвторОповещенийПользователей
- АвтоматическиНастраиватьРазрешенияВПрофиляхБезопасности
+ АдресаСерверовМетокВремени
АдресБотаОповещенийВTelegram
АдресВебСервиса1СДокументооборот
АдресГрузополучателяБратьИзАдресаДоставки
- АдресаСерверовМетокВремени
- АдресДляУведомленийЭДО
АдресДляВосстановленияПароляУчетнойЗаписи
+ АдресДляУведомленийЭДО
АдресКриптосервиса
АдресПровайдераАутентификации
АдресПрограммногоИнтерфейсаСлужбыПоддержки
АдресПубликацииИнформационнойБазыВИнтернете
- АдресРеестраМЧД
АдресПубликацииИнформационнойБазыВЛокальнойСети
- АдресСервисаМЧДРР
+ АдресРеестраМЧД
АдресСервиса1СФреш
+ АдресСервисаМЧДРР
АдресСервисаНовостей
АдресСервисаПодключенияЭлектроннойПодписиВМоделиСервиса
АдресСервисаЦентраИдей
АдресУправленияКонференцией
АдресЦКК
АКАМ_ИспользоватьМодульТоргов
+ АккредитованныеУдостоверяющиеЦентры
АктуализироватьВзаиморасчетыПриПроведенииДокументов
АктуализироватьВзаиморасчетыПриФормированииОтчетов
АктуализироватьДанныеПриФормированииОтчетов
- АккредитованныеУдостоверяющиеЦентры
+ АутентификацияТокеномДоступаВнутреннихВызововПрограммногоИнтерфейса
БазоваяВалютаПоУмолчанию
БазоваяВерсия
- АутентификацияТокеномДоступаВнутреннихВызововПрограммногоИнтерфейса
- БлокировкаФоновогоРаспределенияРасчетов
БлокировкаОтправкиБыстрыхСообщений
+ БлокировкаФоновогоРаспределенияРасчетов
ВалютаРегламентированногоУчета
- ВалютыУпрИРеглУчетаСовпадают
ВалютаУправленческогоУчета
+ ВалютыУпрИРеглУчетаСовпадают
ВариантОбновленияВнешнихКомпонент
ВариантОбновленияКлассификаторов
+ ВариантОбновленияРегламентированныхОтчетов
ВариантОбособленияТоваровВоВнутреннемПотреблении
ВариантОбособленияТоваровВПеремещении
ВариантОбособленияТоваровВПродажах
@@ -11069,8 +11072,8 @@
ВедетсяУчетПостоянныхИВременныхРазницОбщая
ВерсииСхемОбменаГИСМ
ВерсияДанныхСмартвей
- ВариантОбновленияРегламентированныхОтчетов
ВерсияДатЗапретаИзменения
+ ВерсияКлассификатораБанков
ВерсияСхемЭлектронногоАктированияЕИС
ВестиОтдельнуюНумерациюСчетовФактурНаАвансы
ВестиСведенияДляДекларацийАлкоВРознице
@@ -11088,8 +11091,8 @@
ВидМинимальноДопустимыхЦенПродажи
ВидПланированияДоставки
ВидЦеныСтоимостиПрослеживаемыхТоваров
- ВерсияКлассификатораБанков
ВнешнийАдресУправляющегоПриложения
+ ВнутреннийАдресМенеджераСервиса
ВыбиратьВариантВыводаСкидокПриПечатиДокументовПродажи
ВыбиратьВерсиюКомиссионныхПродаж
ВыводитьQRКодНаПечатныхФормахДокументов
@@ -11101,15 +11104,15 @@
ВыводитьСерииВПечатныхФормах
ВыгружатьВнутренниеШтрихкодыШтучныхТоваров
ВыполненаПервоначальнаяРегистрацияЗаданийНеоперативногоДопроведенияДокументов
- ВнутреннийАдресМенеджераСервиса
ВыполнитьРезервноеКопированиеОбластиДанных
+ ВыполнятьЗамерыПроизводительности
ВыполнятьПоискМестИспользованияДублейНСИ
ГеографическаяСхемаДляОтчетов
- ВыполнятьЗамерыПроизводительности
+ ГлавныйУзел
ГруппаДоступаНоменклатурыИзСервиса
ГруппаДоступаПартнераПриАвтоматическомСоздании
- ГлавныйУзел
ДанныеДляИзмененияМультиязычныхРеквизитов
+ ДанныеДляОтложенногоОбновления
ДатаАвтоматическогоПолученияЭДО
ДатаВключенияОбособленногоУчетаСебестоимостиПоНазначениям
ДатаЗагрузкиОписанияФорматовДляПреобразования
@@ -11130,29 +11133,29 @@
ДатаНачалаУчетаПрослеживаемыхИмпортныхТоваров
ДатаНачалаУчетаСебестоимости
ДатаОбновленияНаВерсиюСПрочтенностью
- ДанныеДляОтложенногоОбновления
ДатаОбновленияПовторноИспользуемыхЗначенийМРО
+ ДатаОбновленияСобытийСПАРКРиски
ДатаПереходаНаПартионныйУчетВерсии22
ДатаПереходаНаЦенообразование25
ДатаПолученияДанныхСервисаСверкиРасчетов
- ДатаОбновленияСобытийСПАРКРиски
ДатаПоследнегоОбновленияКлассификатораОшибок
ДатаПоследнегоСтартаКлиентскогоСеанса
+ ДатаПоследнейВыгрузкиЗамеровПроизводительностиUTC
ДатаРозничнойПродажиТабачнойПродукцииТолькоПоМРЦ
ДатаСинхронизацииОКПД2
ДатаСинхронизацииТНВЭД
- ДатаПоследнейВыгрузкиЗамеровПроизводительностиUTC
- ДетализироватьЗаданияТорговымПредставителямПоНоменклатуре
ДатаУведомленияОНовыхЗадачах
- ДлительностьОперацииПлатежныхСистем
+ ДетализироватьЗаданияТорговымПредставителямПоНоменклатуре
ДетализироватьОбновлениеИБВЖурналеРегистрации
- ДополнительнаяКолонкаПечатныхФормДокументов
+ ДлительностьОперацииПлатежныхСистем
ДобавлятьМеткиВремениАвтоматически
+ ДополнительнаяКолонкаПечатныхФормДокументов
ДополнительныйЯзык1
+ ДополнительныйЯзык2
ДопустимоеОтклонениеОтгрузкиПриемкиМерныхТоваров
ДопустимоеОтклонениеПриОкругленииКоличества
- ДополнительныйЯзык2
ДоставлятьСерверныеОповещенияБезСистемыВзаимодействия
+ ДоступностьЛичногоКабинетаСервиса
ЕдиницаИзмеренияВеса
ЕдиницаИзмеренияДлины
ЕдиницаИзмеренияКилограммИС
@@ -11161,34 +11164,34 @@
ЕдиницаИзмеренияОбъема
ЕдиницаИзмеренияПлощади
ЕдиницаИзмеренияРазливнойПродукции
- ДоступностьЛичногоКабинетаСервиса
ЗавершатьСеансыБезПредупрежденияПоУмолчаниюВМоделиСервиса
ЗаголовокСистемы
ЗагружатьИУстанавливатьИсправленияАвтоматически
ЗагрузитьРасширенияИзменяющиеСтруктуруДанных
- ЗаполненыДвиженияАктивовПассивов
ЗагрузитьСообщениеОбменаДанными
+ ЗаполненыДвиженияАктивовПассивов
+ ЗапретитьОтображениеНебезопасногоСодержимогоВПисьмах
ЗапретитьОформлениеОперацийСИмпортнымиТоварамиБезНомеровГТД
ЗапретитьПоступлениеТоваровБезНомеровГТД
ЗапретитьФормированиеОтветногоТитулаБезДокументовУчета
ЗапретитьФормированиеФормализованныхЭДИзФайлов
- ЗапретитьОтображениеНебезопасногоСодержимогоВПисьмах
ЗапрещатьЗагрузкуФайловПоРасширению
ЗарегистрированыИзмененияДанных
+ ИдентификаторИнформационнойБазы
ИдентификаторКорневойПапкиФайлов1СДокументооборот
ИдентификаторОбсужденияФискализации
- ИдентификаторИнформационнойБазы
ИзвлекатьТекстыФайловНаСервере
ИзменятьЗаданияЗаднимЧислом
ИмяВидаПриложенияАвтономногоРабочегоМеста
+ ИмяПользователяУчетнойСистемы
ИнтеграцияС1СДокументооборотИмяПользователяДляОбмена
ИнтеграцияС1СДокументооборотПарольДляОбмена
ИнтервалЗапросаИзмененныхДанныхВЕТИС
ИнтерфейсВерсии82
- ИмяПользователяУчетнойСистемы
- ИспользованиеЗаданийТорговымПредставителям
ИнформацияОПроцедуреЗагрузки
+ ИспользованиеЗаданийТорговымПредставителям
ИспользованиеКаталогаДополнительныхОтчетовИОбработокВМоделиСервиса
+ ИспользованиеКаталогаРасширенийВМоделиСервиса
ИспользованиеКлассификаторовНоменклатуры
ИспользованиеСоглашенийСКлиентами
ИспользованиеСтарыхКлассификаторовОКПиОКВЭД
@@ -11198,8 +11201,8 @@
ИспользоватьABCXYZКлассификациюНоменклатурыПоВыручке
ИспользоватьABCXYZКлассификациюНоменклатурыПоКоличествуПродаж
ИспользоватьABCXYZКлассификациюПартнеровПоВаловойПрибыли
- ИспользованиеКаталогаРасширенийВМоделиСервиса
ИспользоватьABCXYZКлассификациюПартнеровПоВыручке
+ ИспользоватьABCXYZКлассификациюПартнеровПоКоличествуПродаж
ИспользоватьАвтоматическиеСкидкиВПродажах
ИспользоватьАвтоматическоеЗакрытиеСтрокЗаказовМерныхТоваров
ИспользоватьАвтоматическоеПолучениеИзСервисаЭДО
@@ -11212,18 +11215,18 @@
ИспользоватьАвтоматическуюОтправкуПолучениеДанныхИСМП
ИспользоватьАвтоматическуюСверткуРегистраСоответствиеНоменклатурыВЕТИС
ИспользоватьАвтоматическуюСверткуРегистраСоответствиеНоменклатурыЕГАИС
- ИспользоватьABCXYZКлассификациюПартнеровПоКоличествуПродаж
+ ИспользоватьАвтономнуюРаботуВМоделиСервиса
ИспользоватьАктыВыполненныхРаботПоНесколькимЗаказам
ИспользоватьАктыНаПередачуПрав
ИспользоватьАктыРасхожденийПослеОтгрузки
ИспользоватьАктыРасхожденийПослеПеремещения
ИспользоватьАктыРасхожденийПослеПриемки
- ИспользоватьАвтономнуюРаботуВМоделиСервиса
- ИспользоватьАналогиМатериалов
ИспользоватьАльтернативныйСерверДляЗагрузкиКурсовВалют
+ ИспользоватьАналогиМатериалов
+ ИспользоватьАнкетирование
ИспользоватьАссортимент
ИспользоватьАутентификациюОСВВебСервисе1СДокументооборота
- ИспользоватьАнкетирование
+ ИспользоватьБизнесПроцессыИЗадачи
ИспользоватьБизнесРегионы
ИспользоватьБонусныеПрограммыЛояльности
ИспользоватьБюджетирование
@@ -11231,12 +11234,12 @@
ИспользоватьВвозТоваровИзТаможенногоСоюза
ИспользоватьВвозТоваровИзТаможенногоСоюзаНеотфактурованныеПоставки
ИспользоватьВвозТоваровИзТаможенногоСоюзаТоварыВПути
- ИспользоватьБизнесПроцессыИЗадачи
+ ИспользоватьВерсионированиеОбъектов
ИспользоватьВидыСвязейМеждуФизическимиЛицами
ИспользоватьВидыСвязейПартнеров
ИспользоватьВнеоборотныеАктивы2_2
ИспользоватьВнеоборотныеАктивы2_4
- ИспользоватьВерсионированиеОбъектов
+ ИспользоватьВнешнихПользователей
ИспользоватьВнутреннееПотребление
ИспользоватьВнутреннееПотреблениеПоНесколькимЗаказам
ИспользоватьВнутреннееСогласованиеЗаказовКлиентов
@@ -11244,32 +11247,32 @@
ИспользоватьВнутреннееСогласованиеКоммерческихПредложений
ИспользоватьВнутреннееСогласованиеСоглашенийСКлиентами
ИспользоватьВнутренниеДокументыЭДО
- ИспользоватьВнешнихПользователей
+ ИспользоватьВыгрузкуВСводноеПриложение
ИспользоватьВыплатыСамозанятым
ИспользоватьГосключ
ИспользоватьГрафикиОплаты
ИспользоватьГруппыАналитическогоУчетаНоменклатуры
- ИспользоватьВыгрузкуВСводноеПриложение
+ ИспользоватьГруппыВнешнихПользователей
ИспользоватьГруппыДоступаНоменклатуры
ИспользоватьГруппыДоступаПартнеров
- ИспользоватьГруппыВнешнихПользователей
- ИспользоватьГруппыФинансовогоУчета
ИспользоватьГруппыПользователей
+ ИспользоватьГруппыФинансовогоУчета
ИспользоватьДатуИВремяВСрокахЗадач
ИспользоватьДатуНачалаЗадач
ИспользоватьДатыЗапретаЗагрузки
+ ИспользоватьДатыЗапретаИзменения
ИспользоватьДемонстрационныеСценарии
ИспользоватьДепозитыОбменСБанками
- ИспользоватьДатыЗапретаИзменения
+ ИспользоватьДифференциальноеРезервноеКопирование
ИспользоватьДоверенностиНаПолучениеТМЦ
ИспользоватьДоговорыКредитовИДепозитов
ИспользоватьДоговорыМеждуОрганизациями
ИспользоватьДоговорыСКлиентами
ИспользоватьДоговорыСПоставщиками
- ИспользоватьДифференциальноеРезервноеКопирование
ИспользоватьДополнительныеОтчетыИОбработки
ИспользоватьДополнительныеРеквизитыИСведения
ИспользоватьДополнительныйЯзык1
+ ИспользоватьДополнительныйЯзык2
ИспользоватьДопустимоеОтклонениеОтгрузкиПриемкиМерныхТоваров
ИспользоватьЕдиницыИзмеренияДляОтчетов
ИспользоватьЕжедневныеОтчеты1СДокументооборота
@@ -11285,7 +11288,7 @@
ИспользоватьЗаказыПоставщикам
ИспользоватьЗаказыПоставщикамИЗаявкиНаРасходованиеДС
ИспользоватьЗаказыХотяБыОдногоВида
- ИспользоватьДополнительныйЯзык2
+ ИспользоватьЗаметки
ИспользоватьЗаполнениеРаздела7ДекларацииПоНДС
ИспользоватьЗаполнениеРеквизитовВходящегоДокументаПоНаименованиюФайла
ИспользоватьЗапретОтгрузки
@@ -11301,7 +11304,7 @@
ИспользоватьИмпортныеЗакупкиТоваровВПути
ИспользоватьИмпортныеТовары
ИспользоватьИндивидуальныеСоглашенияСКлиентами
- ИспользоватьЗаметки
+ ИспользоватьИнтеграционнуюШину
ИспользоватьИнтеграциюС1САналитикой
ИспользоватьИнтеграциюС1СДокументооборот
ИспользоватьИнтеграциюС1СДокументооборот3
@@ -11310,7 +11313,7 @@
ИспользоватьИнтеграциюСSellmonitor
ИспользоватьИнтеграциюСWildberries
ИспользоватьИнтеграциюСоСмартвей
- ИспользоватьИнтеграционнуюШину
+ ИспользоватьИнтеграциюССистемойВзаимодействия
ИспользоватьИнтеграциюСЭТПБидзаарДляПокупателей
ИспользоватьИнтеграциюСЭТПБидзаарДляПоставщиков
ИспользоватьИнтеграциюСЯндексМаркет
@@ -11321,21 +11324,21 @@
ИспользоватьИсследованиеКачестваТоваров
ИспользоватьКартыЛояльности
ИспользоватьКачествоТоваров
- ИспользоватьИнтеграциюССистемойВзаимодействия
ИспользоватьКомандуЗаметки
+ ИспользоватьКомандуНапоминаний
ИспользоватьКомиссиюПриЗакупках
ИспользоватьКомиссиюПриЗакупкахБазовая
ИспользоватьКомиссиюПриЗакупкахНеБазовая
ИспользоватьКомиссиюПриПродажах
ИспользоватьКомиссиюПриПродажахБазовая
ИспользоватьКомиссиюПриПродажахНеБазовая
- ИспользоватьКомандуНапоминаний
+ ИспользоватьКоммерческиеПредложенияКлиентам
ИспользоватьКоммерческиеПредложенияПоставщиков
ИспользоватьКонкурентнуюРазведку
- ИспользоватьКоммерческиеПредложенияКлиентам
+ ИспользоватьКоннект
ИспользоватьКонтрольКачестваТоваров
ИспользоватьКонтрольОтраженияВУчетеЭДО
- ИспользоватьКоннект
+ ИспользоватьКонтрольТарификации
ИспользоватьКорневыеСертификатыНСПК
ИспользоватьКорректировкиПриобретений
ИспользоватьКорректировкиРеализаций
@@ -11353,7 +11356,7 @@
ИспользоватьНазначенияБезЗаказа
ИспользоватьНаложенныеПлатежиСервис1СКурьер
ИспользоватьНаложенныеПлатежиСервис1ССДЭК
- ИспользоватьКонтрольТарификации
+ ИспользоватьНапоминанияПользователя
ИспользоватьНачислениеЗарплаты
ИспользоватьНеотфактурованныеПоставки
ИспользоватьНесколькоВалют
@@ -11362,8 +11365,8 @@
ИспользоватьНесколькоКасс
ИспользоватьНесколькоКассККМ
ИспользоватьНесколькоКлассификацийЗадолженности
- ИспользоватьНапоминанияПользователя
ИспользоватьНесколькоОрганизаций
+ ИспользоватьНесколькоПроизводственныхКалендарей
ИспользоватьНесколькоРасчетныхСчетов
ИспользоватьНесколькоРасчетныхСчетовКасс
ИспользоватьНесколькоСкладов
@@ -11381,7 +11384,7 @@
ИспользоватьОбособленноеОбеспечениеЗаказов
ИспользоватьОбособленныеПодразделенияВыделенныеНаБаланс
ИспользоватьОбработкуОбъектов1СДокументооборота
- ИспользоватьНесколькоПроизводственныхКалендарей
+ ИспользоватьОбщиеНастройкиВходаПользователейСервиса
ИспользоватьОграниченияРучныхСкидокВПродажахПоПользователям
ИспользоватьОграниченияРучныхСкидокВПродажахПоСоглашениям
ИспользоватьОзнакомлениеСЭлектроннымиДокументами
@@ -11390,11 +11393,11 @@
ИспользоватьОперацииСводнойКорректировкиЗадолженностиПоПриобретению
ИспользоватьОперацииСводнойКорректировкиЗадолженностиПоРеализации
ИспользоватьОплатуПлатежнымиКартами
- ИспользоватьОбщиеНастройкиВходаПользователейСервиса
+ ИспользоватьОплатуСервиса
ИспользоватьОповещенияПользователейВTelegram
ИспользоватьОповещенияПользователейОСобытиях
ИспользоватьОповещенияПользователейПоПочте
- ИспользоватьОплатуСервиса
+ ИспользоватьОптимизированнуюЗаписьСозданияАвтономногоРабочегоМеста
ИспользоватьОрдерныеСклады
ИспользоватьОтветственноеХранение
ИспользоватьОтветственноеХранениеВПроцессеЗакупки
@@ -11403,12 +11406,12 @@
ИспользоватьОтгрузкуБезПереходаПраваСобственности2_0
ИспользоватьОтгрузкуБезПереходаПраваСобственности2_5
ИспользоватьОтложеннуюОтправкуЭлектронныхДокументов
- ИспользоватьОптимизированнуюЗаписьСозданияАвтономногоРабочегоМеста
+ ИспользоватьОтправкуSMSВШаблонахСообщений
ИспользоватьОтчетВедомостьРасчетовМеждуОрганизациями
ИспользоватьОтчетДвиженияЗаказов
ИспользоватьОтчетРасчетыМеждуОрганизациями
- ИспользоватьОтправкуSMSВШаблонахСообщений
ИспользоватьОценкуПроизводительностиСинхронизацииДанных
+ ИспользоватьПараллельнуюВыгрузкуЗагрузкуДанных
ИспользоватьПартионныйУчет
ИспользоватьПартнеровИКонтрагентов
ИспользоватьПартнеровКакКонтрагентов
@@ -11432,19 +11435,19 @@
ИспользоватьПодключаемоеОборудованиеИОплатуПлатежнымиКартами
ИспользоватьПодразделения
ИспользоватьПодтверждениеВозрастаЧерезМакс
- ИспользоватьПараллельнуюВыгрузкуЗагрузкуДанных
ИспользоватьПодчиненныеБизнесПроцессы
+ ИспользоватьПолнотекстовыйПоиск
ИспользоватьПолнотекстовыйПоискПриПодбореТоваров
ИспользоватьПорчуТоваровУХранителей
ИспользоватьПоставляемыеДанныеОрганизацийБизнесСеть
ИспользоватьПострочнуюОтгрузкуВЗаказеКлиента
ИспользоватьПоступлениеПоНесколькимЗаказам
- ИспользоватьПолнотекстовыйПоиск
ИспользоватьПочтовыйКлиент
+ ИспользоватьПризнакРассмотрено
ИспользоватьПрисоединенныеФайлы1СДокументооборота
ИспользоватьПричиныОтменыЗаказовКлиентов
ИспользоватьПричиныОтменыЗаказовПоставщикам
- ИспользоватьПризнакРассмотрено
+ ИспользоватьПроверкуКонтрагентов
ИспользоватьПроверкуПоддерживаемыхАбонентамиФорматовЭДО
ИспользоватьПроверкуСтатусовДокументовВГИСМТ
ИспользоватьПродажиНаЭкспорт
@@ -11455,15 +11458,15 @@
ИспользоватьПроизводство
ИспользоватьПроизводствоНаСтороне
ИспользоватьПросмотрPDFДокументовЭДО
- ИспользоватьПроверкуКонтрагентов
ИспользоватьПрофилиБезопасностиДляДОО
+ ИспользоватьПрофилиБезопасностиДляРасширений
ИспользоватьПроцессыИЗадачи1СДокументооборота
ИспользоватьПрочееОприходованиеТоваров
- ИспользоватьПрофилиБезопасностиДляРасширений
+ ИспользоватьПрочиеВзаимодействия
ИспользоватьПрочтениеДокументовЭДО
ИспользоватьПрямойОбменЭлектроннымиДокументами
ИспользоватьРазделениеДокументовПоОтветственнымЭДО
- ИспользоватьПрочиеВзаимодействия
+ ИспользоватьРазделениеПоОбластямДанных
ИспользоватьРазделыТаможеннойДекларацииИмпорт
ИспользоватьРаспознаваниеДокументов
ИспользоватьРасширенноеОбеспечениеПотребностей
@@ -11497,24 +11500,24 @@
ИспользоватьСервис1ССДЭК
ИспользоватьСервис1СШтамп
ИспользоватьСервисBankFeeds
- ИспользоватьРазделениеПоОбластямДанных
- ИспользоватьСервисМобильнойПодписи
ИспользоватьСервисDSS
- ИспользоватьСервисРаботаСНоменклатурой
+ ИспользоватьСервисМобильнойПодписи
ИспользоватьСервисПереводаТекста
+ ИспользоватьСервисРаботаСНоменклатурой
ИспользоватьСервисСклоненияMorpher
+ ИспользоватьСервисСПАРКРиски
ИспользоватьСерииНоменклатуры
ИспользоватьСерииНоменклатурыДляЦенообразования
ИспользоватьСертификатыНоменклатуры
ИспользоватьСертификатыОблачногоСервисаВЭДО
- ИспользоватьСервисСПАРКРиски
ИспользоватьСинхронизациюДанных
ИспользоватьСинхронизациюДанныхВЛокальномРежиме
ИспользоватьСинхронизациюДанныхВМоделиСервиса
ИспользоватьСинхронизациюДанныхВМоделиСервисаСЛокальнойПрограммой
+ ИспользоватьСинхронизациюДанныхВМоделиСервисаСПриложениемВИнтернете
ИспользоватьСкладыВТабличнойЧастиДокументовЗакупки
ИспользоватьСкладыВТабличнойЧастиДокументовПродажи
- ИспользоватьСинхронизациюДанныхВМоделиСервисаСПриложениемВИнтернете
+ ИспользоватьСкрытиеПерсональныхДанныхСубъектов
ИспользоватьСловарьСопоставленияНоменклатурыБЭД
ИспользоватьСогласованиеЗаказовКлиентов
ИспользоватьСогласованиеЗаказовНаВнутреннееПотребление
@@ -11545,7 +11548,7 @@
ИспользоватьТокенФорматаUUIDИСМП
ИспользоватьТТН
ИспользоватьУведомленияОКонтролируемыхСделках
- ИспользоватьСкрытиеПерсональныхДанныхСубъектов
+ ИспользоватьУдалениеПомеченныхОбъектов
ИспользоватьУпаковкиНоменклатуры
ИспользоватьУпаковкиНоменклатурыДляЦенообразования
ИспользоватьУпаковочныеЛисты
@@ -11578,24 +11581,24 @@
ИспользоватьФормированиеЗаказовПоставщикуПоПлану
ИспользоватьФормированиеЗаявокНаЗакупкуПоПлану
ИспользоватьФормированиеЗаявокПоПотребностям
- ИспользоватьУдалениеПомеченныхОбъектов
+ ИспользоватьХарактеристикиНоменклатуры
ИспользоватьХарактеристикиНоменклатурыДляЦенообразования
ИспользоватьЦеновыеГруппы
ИспользоватьЧастичнуюДоставкуСервис1СКурьерика
ИспользоватьЧерновикиЭлектронныхДокументов
- ИспользоватьХарактеристикиНоменклатуры
ИспользоватьШаблоныСообщений
+ ИспользоватьШифрование
ИспользоватьШтрихкодированиеПечатныхФормОбъектов
ИспользоватьЭлектронноеАктированиеВЕИС
ИспользоватьЭлектронноеАктированиеЗаказчикаВЕИС
- ИспользоватьШифрование
- ИспользоватьЭлектроннуюПочту1СДокументооборота
ИспользоватьЭлектроннуюПодписьВМоделиСервиса
+ ИспользоватьЭлектроннуюПочту1СДокументооборота
ИспользоватьЭлектроннуюПочтуВШаблонахСообщений
+ ИспользоватьЭлектронныеПодписи
ИспользуетсяКомиссионнаяПродажа20
ИспользуетсяКомиссионнаяПродажаУПКА20
ИспользуетсяКомиссионнаяПродажаУТ11
- ИспользоватьЭлектронныеПодписи
+ ИспользуетсяМиграцияПриложений
ИспользуетсяОбменСБухгалтериейПредприятия
ИспользуетсяПротоколRDPвБПО
ИспользуетсяСборкаРазборкаИСерииНоменклатуры
@@ -11603,7 +11606,6 @@
ИспользуетсяУчетВЕдиницеИзмеренияТНВЭД
ИспользуетсяЦенообразование20
ИспользуетсяЦенообразование25
- ИспользуетсяМиграцияПриложений
ИспользуютсяПрофилиБезопасности
ИсточникДанныхАдресногоКлассификатора
КаталогВременныхФайловДляLinux
@@ -11611,36 +11613,37 @@
КаталогОбменаФайламиВМоделиСервиса
КаталогОбменаФайламиВМоделиСервисаLinux
КаталогРасширенийКоличествоЭлементовВВыборке
+ КаталогРасширенийОтправлятьПревьюПриЗапросеСписка
КаталогРезервныхКопийВстроенногоХранилищаДвоичныхДанныхДляLinux
КаталогРезервныхКопийВстроенногоХранилищаДвоичныхДанныхДляWindows
- КаталогРасширенийОтправлятьПревьюПриЗапросеСписка
КаталогСообщенийОбменаДаннымиДляLinux
КаталогСообщенийОбменаДаннымиДляWindows
- КлючДоступаКСервисуЭДО
КлассификаторОшибокКриптографии
+ КлючДоступаКСервисуЭДО
+ КлючОбластиДанных
КлючПодписиТокенаДоступа1СДокументооборот
КлючСопоставленияПользователей1СДокументооборот
КодНовогоУзлаПланаОбмена
КодПоследнегоУпаковочногоЛиста
КоличествоДнейХраненияЗаархивированныхЧеков
КоличествоДнейХраненияОтложенныхЧеков
- КлючОбластиДанных
КоличествоЗамеровВПакетеЭкспорта
КоличествоМесяцевМинимальногоПериодаРассчитанныхИтогов
- КоличествоПериодовABCКлассификацииНоменклатуры
КоличествоМесяцевХраненияИсторииРассылкиОтчетов
- КоличествоПериодовXYZКлассификацииНоменклатуры
+ КоличествоПериодовABCКлассификацииНоменклатуры
КоличествоПериодовABCКлассификацииПартнеров
+ КоличествоПериодовXYZКлассификацииНоменклатуры
+ КоличествоПериодовXYZКлассификацииПартнеров
КоличествоПериодовДляАнализаНоменклатурыПродаваемойСовместно
КоличествоПериодовРасчетаТоварныхОграничений
- КоличествоПериодовXYZКлассификацииПартнеров
- КоличествоПотоковНеоперативнойОчередиЗаданий
КоличествоПотоковДлительныхОпераций
+ КоличествоПотоковНеоперативнойОчередиЗаданий
КоличествоПотоковОбновленияДоступа
- КоличествоПотоковРаспределенияВзаиморасчетов
КоличествоПотоковОбновленияИнформационнойБазы
- КомплекснаяАвтоматизация
+ КоличествоПотоковРаспределенияВзаиморасчетов
КоличествоЭлементовВТранзакцииЗагрузкиДанных
+ КомплекснаяАвтоматизация
+ КонечнаяТочкаМенеджераСервиса
КонтекстРаботыИС
КонтролироватьВыдачуПодОтчетВРазрезеЦелей
КонтролироватьЗапасыТоваровПодлежащихРезервированиюПоМереПоступления
@@ -11653,31 +11656,31 @@
КонтролироватьУникальностьНоменклатурыПоСочетаниюЗначенийРеквизитов
КонтролироватьУникальностьРабочегоНаименованияНоменклатурыИХарактеристик
КонтрольПревышенияОбособленногоОбеспеченияУнаследован
- КонечнаяТочкаМенеджераСервиса
КопироватьОбластиДанныхИзЭталонной
- ЛокализацияРФ
ЛогироватьЗапускиЗаданийОчереди
+ ЛокализацияРФ
МаксимальнаяДлительностьВыполненияИсполняющегоФоновогоЗадания
- МаксимальноеКоличествоЭлементовВДеревеОтборовНоменклатуры
МаксимальноеКоличествоИсполняющихФоновыхЗаданий
+ МаксимальноеКоличествоЭлементовВДеревеОтборовНоменклатуры
МаксимальныйРазмерПриложенияДляВыгрузкиБезРасширенияРаботыСФайлами
- МаксимальныйРазмерФайлаДляПередачиВ1СДокументооборот
МаксимальныйРазмерФайла
+ МаксимальныйРазмерФайлаДляПередачиВ1СДокументооборот
+ МаксимальныйРазмерФайлаОбластиДанных
МеждународныеРеквизитыБанковскихСчетов
МинимальнаяДостоверностьНоменклатурыПродаваемойСовместно
МинимальнаяЗначимостьНоменклатурыПродаваемойСовместно
- МаксимальныйРазмерФайлаОбластиДанных
+ МинимальныйИнтервалРегламентныхЗаданийДОИОВМоделиСервиса
МинимальныйПроцентСлучаевНоменклатурыПродаваемойСовместно
НазначатьСкидкиПоКнопкеРасчетВЧекеККМ
НаименованиеДляПечатиВидовНоменклатуры
НаименованиеКорневойПапкиФайлов1СДокументооборот
- МинимальныйИнтервалРегламентныхЗаданийДОИОВМоделиСервиса
НастройкаПодчиненногоУзлаРИБЗавершена
НастройкаПроксиСервера
+ НастройкиВходаПользователей
НастройкиВыгрузкиНоменклатуры
НастройкиЗакрытияМесяца
- НастройкиВходаПользователей
НастройкиКолонтитулов
+ НастройкиНовостей
НастройкиОбменаВЕТИС
НастройкиОбменаГосИС
НастройкиОбменаЗЕРНО
@@ -11686,23 +11689,23 @@
НастройкиОтборовНаВыгрузкуСервисаПрогнозирования
НастройкиОтборовНаЗагрузкуСервисаПрогнозирования
НастройкиОтображенияКомандПлатежныхСистем
- НастройкиНовостей
НастройкиПараллельнойВыгрузкиЗагрузкиДанных
НастройкиПодчиненногоУзлаРИБ
- НастройкиПрефиксацииШтрихкодов
НастройкиПолученияУведомленийПортала
+ НастройкиПрефиксацииШтрихкодов
НастройкиРасчетаРазмераПриложений
+ НастройкиРегистрацииСобытийДоступаКДанным
НастройкиСервисаПрогнозирования
НастройкиСканированияКодовМаркировкиИСМП
НациональныеРеквизитыБанковскихСчетов
- НастройкиРегистрацииСобытийДоступаКДанным
+ НачалоИнтервалаВремениПриоритетаОбработкиДанных
НачатПереходНаНовуюАрхитектуруВзаиморасчетов
НеБазоваяВерсия
НеВыбиратьВариантВыводаСкидокПриПечатиДокументовПродажи
НеВыгружатьИзображенияТорговыхПредложений
НеДетализироватьЗаданияТорговымПредставителямПоНоменклатуре
- НачалоИнтервалаВремениПриоритетаОбработкиДанных
НезависимоеИспользованиеДополнительныхОтчетовИОбработокВМоделиСервиса
+ НезависимоеИспользованиеРасширенийВМоделиСервиса
НеЗакрыватьЗаказыКлиентовБезПолнойОплаты
НеЗакрыватьЗаказыКлиентовБезПолнойОтгрузки
НеЗакрыватьЗаказыНаВнутреннееПотреблениеБезПолнойОтгрузки
@@ -11719,11 +11722,11 @@
НеИспользоватьНесколькоВалют
НеИспользоватьНесколькоКасс
НеИспользоватьНесколькоКассККМ
- НезависимоеИспользованиеРасширенийВМоделиСервиса
+ НеИспользоватьНесколькоОрганизаций
НеИспользоватьНесколькоРасчетныхСчетов
НеИспользоватьНесколькоСкладов
НеИспользоватьПроверкуЗаданийЗакрытияМесяцаВОтчетахРегл
- НеИспользоватьНесколькоОрганизаций
+ НеИспользоватьРазделениеПоОбластямДанных
НеИспользоватьРазделениеПоОбластямДанныхИЭтоКА
НеИспользоватьРазделениеПоОбластямДанныхИЭтоУТ
НеИспользоватьРасширенноеОбеспечениеПотребностей
@@ -11746,9 +11749,9 @@
НормативныйВидЦен
ОбновлятьКонтактнуюИнформациюПартнеровПриОтправкеЭлектронныхЧеков
ОбщиеФайлыОбменСБанками
- НеИспользоватьРазделениеПоОбластямДанных
ОграничиватьДоступНаУровнеЗаписей
ОграничиватьДоступНаУровнеЗаписейУниверсально
+ ОкончаниеИнтервалаВремениПриоритетаОбработкиДанных
ОкруглятьСуммыНДСиАкцизовДоЦелыхВЗаявленияхОВвозеТоваров
ОперацияПриЗакрытииКассовойСмены
ОписанияПроцессовНаПоддержке
@@ -11757,107 +11760,107 @@
ОптимизироватьЗапасыРаспределительногоЦентра
ОрганизацияНаКоторуюЗарегистрированаПрограмма
ОсновнаяСтрана
- ОкончаниеИнтервалаВремениПриоритетаОбработкиДанных
ОсновнойКалендарьПредприятия
+ ОсновнойЯзык
ОтветственныйВДокументах
ОтключитьАвтоматическоеДовериеПолнымПолномочиям
ОтключитьЗаполнениеТекстовыхПолномочийПоУмолчанию
ОтключитьОчередьПередачиЗаписейСкладскогоЖурналаВЕТИС
ОтключитьПодборМЧДПоКПППриПодписанииИПроверке
- ОсновнойЯзык
ОтложенноеОбновлениеВГлавномУзлеЗавершеноУспешно
ОтложенноеОбновлениеЗавершеноУспешно
+ ОтображатьЛичныйКабинетСервисаВПанелиРазделов
ОтображениеСкидокВПечатныхФормахДокументовПродажи
ОтправкаЭлектронныхЧековПослеПробитияЧека
ОтправленоЗаписей
ОтправлятьВходящиеДокументыНаУтверждение
- ОтображатьЛичныйКабинетСервисаВПанелиРазделов
+ ОтправлятьПисьмаВФорматеHTML
ОтправлятьЭлектронныеЧекиПоEmailЧерезОФД
ОтправлятьЭлектронныеЧекиПоSMSЧерезОФД
- ОтправлятьПисьмаВФорматеHTML
ОценкаПроизводительностиПериодЗаписи
ПараметрыАдминистрированияИБ
ПараметрыАдресногоКлассификатора
ПараметрыБлокировкиРаботыСВнешнимиРесурсами
ПараметрыБлокировкиРаботыССервисамиИнтернетПоддержки
ПараметрыЗапускаИнтерактивнойПроцедурыЗагрузки
- ПараметрыОбработчиковОбновления
ПараметрыИтоговИАгрегатов
+ ПараметрыОбработчиковОбновления
ПараметрыПоискаКонтрагентов
ПараметрыРезервногоКопирования
+ ПараметрыРезервногоКопированияВОблачныйАрхив20
ПараметрыСверткиИБ
ПараметрыСеансаЗагрузкиРаспознанныхДокументов
- ПараметрыРезервногоКопированияВОблачныйАрхив20
ПараметрыХраненияФайловВИБ
- ПартионныйУчетВерсии22
ПараметрыЦентраМониторинга
+ ПартионныйУчетВерсии22
+ ПервоеОбновлениеДоступаЗавершилось
ПеремещатьТоварыДругихОрганизаций
ПереоцениватьВалютныеСредстваПоДням
ПериодABCКлассификацииНоменклатуры
- ПервоеОбновлениеДоступаЗавершилось
- ПериодXYZКлассификацииНоменклатуры
ПериодABCКлассификацииПартнеров
+ ПериодXYZКлассификацииНоменклатуры
+ ПериодXYZКлассификацииПартнеров
ПериодичностьВводаСезонныхКоэффициентов
ПериодичностьДляАнализаНоменклатурыПродаваемойСовместно
ПериодРасчетаТоварныхОграничений
- ПериодXYZКлассификацииПартнеров
ПериодХраненияЗамеров
+ ПериодХраненияИсторииЗапусковЗаданийОчереди
ПериодыРезервовТоваровОрганизацийАктуальны
ПечататьБумажныйЧек
ПечататьОтдельныйСлипЧекЭквайринговойОперации
ПисьмаОбменСБанками
- ПериодХраненияИсторииЗапусковЗаданийОчереди
ПлюсСервисДоступенДляИспользования
+ ПовторитьЗагрузкуСообщенияОбменаДаннымиПередЗапуском
ПоддержкаБанковскогоИКазначейскогоСопровожденияГосконтрактов
ПоддержкаПлатежейРФ
- ПовторитьЗагрузкуСообщенияОбменаДаннымиПередЗапуском
- ПодпериодXYZКлассификацииНоменклатуры
ПоддержкаРезервногоКопирования
+ ПодпериодXYZКлассификацииНоменклатуры
+ ПодпериодXYZКлассификацииПартнеров
ПоказыватьКомандуУстановитьРасширениеМаг1с
ПоказыватьРекомендацииБизнесСеть
ПокупкаТоваровОблагаемыхНДСУПокупателя
ПользовательДляПроверкиДатЗапретаИзмененийПриВыполненииЗаданийОчередей
- ПодпериодXYZКлассификацииПартнеров
- ПорядокЗачетаОплатНакладных
ПользовательСтандартногоИнтерфейсаOData
+ ПорядокЗачетаОплатНакладных
+ ПорядокОбрабатываемыхДанных
ПорядокОформленияНакладныхРасходныхОрдеров
ПорядокРаботыПриВыполненииЗаданияВМРМК
- ПорядокОбрабатываемыхДанных
+ ПоследнееОбновлениеДоступа
ПредельноеВремяОбновленияСпискаДокументов
ПредельноеКоличествоЗаписейВРазделеДекларацииПоНДС
ПредлагатьДополнитьДокументыМногооборотнойТарой
ПредопределенныеШаблоныСообщенийОнлайнЗаказов
ПредопределенныеШаблоныСообщенийОнлайнОплат
ПредопределенныеШаблоныСообщенийСБП
- ПоследнееОбновлениеДоступа
- ПредставлениеВходящихДокументов
ПредставлениеВидаПриложенияАвтономногоРабочегоМеста
- ПрефиксВесовогоШтрихкода
+ ПредставлениеВходящихДокументов
ПредставлениеОбластиДанных
+ ПрефиксВесовогоШтрихкода
ПрефиксОбластиДанных
ПрефиксПоследнегоАвтономногоРабочегоМеста
ПрефиксСервисаДляНовостей
+ ПрефиксУзлаРаспределеннойИнформационнойБазы
ПрефиксШтрихкодовУзлаРИБ
ПрефиксШтучногоШтрихкода
ПриниматьПриглашенияЭДОАвтоматически
ПринятоЗаписей
- ПрефиксУзлаРаспределеннойИнформационнойБазы
ПриоритетОбновленияВОбластяхДанных
- ПроверятьЗаполнениеНомеровГТДПриЗакупкеУПоставщикаПоСхемеТоварыВПути
ПровайдерSMS
+ ПроверятьЗаполнениеНомеровГТДПриЗакупкеУПоставщикаПоСхемеТоварыВПути
ПроверятьИспользованиеУдаляемыхОбъектов
- ПродажаТоваровОблагаемыхНДСУПокупателя
ПроверятьЭлектронныеПодписиНаСервере
+ ПродажаТоваровОблагаемыхНДСУПокупателя
ПрофильБезопасностиИнформационнойБазы
ПутьКТомуБезУчетаРегиональныхНастроек
+ РазмерБлокаПередачиФайла
РазмерПорцииПеремещаемыхФайлов
РазрешатьПродажуАлкогольнойПродукцииБезСопоставленияЕГАИС
- РазмерБлокаПередачиФайла
РазрешенаРаботаСНовостями
РазрешенаРаботаСНовостямиЧерезИнтернет
РазрешенныеНеаккредитованныеУЦ
РазрешитьВыполнениеДООРегламентнымиЗаданиямиВМоделиСервиса
РазрешитьДоступКИнтернетСервисам
+ РазрешитьДоступКИнтернетСервисамЭлектроннойПодписи
РазрешитьОбособлениеТоваровСверхПотребности
РаспределениеДопРасходовНаТоварыВПутиОтПоставщиков
РаспределениеДопРасходовПоВыбывшимТоварам
@@ -11865,12 +11868,12 @@
РассчитыватьПредварительнуюСтоимостьРегламентнымЗаданием
РасходныеОрдераФормируютсяМенеджером
РегистрационныйНомерПрограммы
- РазрешитьДоступКИнтернетСервисамЭлектроннойПодписи
РегистрироватьИзмененияПравДоступа
- РедактироватьАдресаДоставкиТолькоВДиалоге
РегистрироватьПоказателиСерверныхОповещений
- РежимОтладки
+ РедактироватьАдресаДоставкиТолькоВДиалоге
РежимИспользованияИнформационнойБазы
+ РежимОтладки
+ РежимОчисткиФайлов
РежимРаботыСТестовымКонтуромВЕТИС
РежимРаботыСТестовымКонтуромЗЕРНО
РежимРаботыСТестовымКонтуромИСМП
@@ -11879,20 +11882,19 @@
РежимТестированияМЧД
РежимФормированияРасходныхОрдеров
СайтСоздан
- РежимОчисткиФайлов
СведенияОБлокируемыхОбъектах
- СведенияОбОперацияхСЦелевымиСредствами
СведенияОбОбновленииИБ
+ СведенияОбОперацияхСЦелевымиСредствами
СвойстваИсправленийПередОбновлениемИБ
СвойстваСПАРКРиски
СервисПереводаТекста
СинхронизироватьДанныеСПриложениемВИнтернетеПриЗавершенииРаботыПрограммы
СинхронизироватьДанныеСПриложениемВИнтернетеПриНачалеРаботыПрограммы
- СоздаватьКонтрагентовАвтоматическиБЭД
СинхронизироватьФайлы
+ СоздаватьКонтрагентовАвтоматическиБЭД
СоздаватьПодкаталогиСИменамиВладельцев
- СоздаватьЭПДляОбъектов1СДокументооборотаСредствамиИС
СоздаватьЭлектронныеПодписиНаСервере
+ СоздаватьЭПДляОбъектов1СДокументооборотаСредствамиИС
СообщениеБлокировкиПриОбновленииКонфигурации
СообщениеОбменаДаннымиИзГлавногоУзла
СостояниеОтправкиСерверныхОповещений
@@ -11901,6 +11903,7 @@
СписокРасширенийТекстовыхФайлов
СписокРасширенийФайловOpenDocument
СписокРасширенийФайловOpenDocumentОбластиДанных
+ СпособХраненияФайлов
СрокВыставленияСчетаФактуры
СрокХраненияИспользованныхКодовМаркировки
СрокХраненияОперацийОчередиЧеков
@@ -11910,10 +11913,9 @@
СрокХраненияСообщенийВ1СДокументооборот
СрокХраненияТранспортногоКонтейнераЭДО
СрокХраненияФискальныхОпераций
- СпособХраненияФайлов
СтандартныеПодсистемыВАвтономномРежиме
- СтоимостьТоваровПриОценкеРентабельностиПродажи
СтатусОбновленияКонфигурации
+ СтоимостьТоваровПриОценкеРентабельностиПродажи
сфпCLONServerIP
сфпCLONServerLogin
сфпCLONServerPassword
@@ -11986,11 +11988,12 @@
сфпСтрокаПодключенияИстории
ТекстИнформированияПользователяОНедоступностиФайлаВАрхиве
сфпТипПостобработки
+ ТипПодписиКриптографииПоУмолчанию
ТипПодписиМЧД
ТипПодписиЭД
- ТипПодписиКриптографииПоУмолчанию
- ТолькоКомиссионныеПродажи25
ТипыИнцидентовЦККАктуальны
+ ТолькоКомиссионныеПродажи25
+ УведомитьОбУстаревшейФункциональности
УдалитьБлокировкаВыполненияЗаданийНеоперативнойОчереди
УдалитьВестиУчетТабачнойПродукцииМОТП
УдалитьДатаОбязательнойМаркировкиОбувиИСМП
@@ -12001,9 +12004,10 @@
УдалитьИспользоватьСогласованиеЧерез1СДокументооборот
УдалитьКонтролироватьСтатусыКодовМаркировкиВРозницеИСМП
УдалитьКонтролироватьСтатусыКодовМаркировкиВРозницеМОТП
- УдалитьКонтролироватьСтатусыКодовМаркировкиМОТП
УдалитьCRM_СостояниеЛидаСозданоПоЗвонку
+ УдалитьКонтролироватьСтатусыКодовМаркировкиМОТП
УдалитьЛогинДоступаКСервисуMorpher
+ УдалитьНастройкиВходаПользователей
УдалитьПечататьОтдельныйСлипЧекЕГАИС
УдалитьРаспоряженияНаОтгрузкуКВыполнениюНеЗаполнен
УдалитьРаспределятьФактическиеРасчетыФоновымЗаданием
@@ -12011,20 +12015,20 @@
УдалятьКвитанцииУТМДляАСИиУ
УправлениеПредприятием
УправлениеТорговлей
- УдалитьНастройкиВходаПользователей
УсовершенствоватьПодписиАвтоматически
УсовершенствоватьПодписиСДаты
УстанавливатьПриоритетОбработкиДанныхВУказанномИнтервалеВремени
УстановленаМонопольнаяБлокировка
+ УчетнаяЗаписьДляВосстановленияПароля
УчетТМЦВЭксплуатацииWE
УчетТМЦВЭксплуатацииУПКА
УчитыватьПравилаВнутреннегоТовародвиженияПриABCКлассификацииНоменклатуры
УчитыватьПравилаВнутреннегоТовародвиженияПриXYZКлассификацииНоменклатуры
УчитыватьСебестоимостьТоваровПоНазначениям
- УчетнаяЗаписьДляВосстановленияПароля
ФайлВнешнихКомпонент
ФайлКлассификаторов
ФайлРегламентированныхОтчетов
+ ФиксироватьПервичныйИнтерес
ФиксироватьПретензии
ФормироватьВидыЗапасовПоГруппамФинансовогоУчета
ФормироватьВидыЗапасовПоПодразделениямМенеджерам
@@ -12034,15 +12038,14 @@
ФормироватьУправленческийБаланс
ФормироватьФинансовыйРезультат
ХешРасхожденийСервисаСверкиРасчетов
- ФиксироватьПервичныйИнтерес
- ХранитьУспешныеОперацииРазрешения
ХранитьИсториюРассылкиОтчетов
+ ХранитьУспешныеОперацииРазрешения
ХранитьФайлыВТомахНаДиске
+ ЧасовойПоясОбластиДанных
ШаблонЭтикеткиДляДоставки
ШаблонЭтикеткиУпаковочногоЛиста
- ЧасовойПоясОбластиДанных
- ЭтоАвтономноеРабочееМесто
CRM_ПоследнийЗапускTDLib
+ ЭтоАвтономноеРабочееМесто
bpmУсловияЭтапов
CRM_АдреснаяКнига
CRM_ВыборДатыВремени
@@ -13509,7 +13512,7 @@
ВариантыИспользованияПериодическойИнвентаризацииЯчеек
ВариантыИспользованияСервиса1СШтамп
ВариантыИспользованияХарактеристикНоменклатуры
- ВариантыИсправленияОшибокОтчетПроизодственнойЛинииИС
+ ВариантыИсправленияОшибокОтчетПроизводственнойЛинииИС
ВариантыКонтроляОплатыКлиентом
ВариантыКонтроляОплатыПоставщику
ВариантыКурсаДоговора
@@ -14946,6 +14949,7 @@
ВыполнениеОбменаДанными
ГенерацияТопологииСклада
ГенерацияШтрихкодовУпаковок
+ ГотовностьКПереходу26
ГрупповаяОбработкаРаспознанныхДокументов
ГрупповаяОтправкаЭПД
ГрупповоеИзменениеРеквизитов
@@ -14981,8 +14985,8 @@
ЗагрузкаОтчетаБанкаПоЭквайрингу
ЗагрузкаПравилРегистрацииОбъектов
ЗагрузкаТоваровИзВнешнихФайлов
- ЗагрузкаЦенПоставщикаИзВнешнихФайлов
ЗаданиеНаРаспознаваниеАудиоВидеоФайлов
+ ЗагрузкаЦенПоставщикаИзВнешнихФайлов
ЗаменаИОбъединениеЭлементов
ЗаменаСтавокНДС
ЗаполнениеАктаОНесоответствииВЕТИС
@@ -15086,8 +15090,8 @@
ПанельАдминистрированияИСМП
ПанельАдминистрированияОбменаССайтом
ПанельАдминистрированияПродажиНаOzon
- ПанельАдминистрированияПродажиЯндексМаркет
ПанельАдминистрированияРаботыСРечью
+ ПанельАдминистрированияПродажиЯндексМаркет
ПанельАдминистрированияСАТУРН
ПанельАдминистрированияУТ
ПанельАдминистрированияУчетПрослеживаемыхТоваров
@@ -15101,8 +15105,8 @@
ПанельСправочниковМаркетинг
ПанельСправочниковНСИ
ПанельСправочниковСклад
- ПанельУправленияСервисомПрогнозирования
ПараметрыРаспознаванияРечи
+ ПанельУправленияСервисомПрогнозирования
ПервоначальноеЗаполнениеРегистровПартионногоУчета
ПереносНастроекВОнлайнЗаказы
ПереносФайлов
@@ -15222,8 +15226,8 @@
СервисДоставки
СинхронизацияЭДО
Сканирование
- СкрытиеКонфиденциальнойИнформации
слкМенеджерЛицензий
+ СкрытиеКонфиденциальнойИнформации
СопоставлениеКлассификаторовЕГАИС
СопоставлениеНоменклатурыБЭД
СопоставлениеНоменклатурыЕГАИС
@@ -15231,10 +15235,10 @@
СостояниеОбеспеченияЗаказов
СправкаСПАРКРиски
СправочноеРазмещениеНоменклатуры
- СравнениеТекстов
сфпАРМ_Телефония
сфпПодключениеСистемыВзаимодействия
сфпРучнаяЗагрузкаЗвонков
+ СравнениеТекстов
СчетНаОплатуРаспознаваниеДокументов
ТекущиеДела
ТестированиеОперацийЗакрытийМесяца
@@ -15256,8 +15260,8 @@
ТранспортСообщенийОбменаПассивныйРежим
ТранспортСообщенийОбменаЯндексДиск
УдалениеНеиспользуемыхЭлементовСправочников
- УдалениеПомеченныхОбъектов
УдалитьCRM_Календарь
+ УдалениеПомеченныхОбъектов
УниверсальныйОбменДаннымиXML
УничтожениеПерсональныхДанных
УправлениеВыгрузкамиВБидзаар
@@ -15724,6 +15728,7 @@
МашиночитаемыеДоверенностиСообщений
МашиночитаемыеДоверенностиСтатусы
МашиночитаемыеДоверенностиЭД
+ МестаОсуществленияДеятельностиИСМП
МестаПоставкиДокументовДляЕИС
МестаПримененияЭлементовКонструктораВидовПродукцииИС
МестаХраненияДвоичныхДанных
@@ -15926,8 +15931,8 @@
ПодписантыДокументовЕИС
ПодпискиПолучателей
ПодписываемыеВидыЭД
- ПодтверждениеОплатыНДСВБюджет
ПолныеРаспознанныеТекстыЗаданийНаРаспознавание
+ ПодтверждениеОплатыНДСВБюджет
ПолучателиОповещенийПользователей
ПользователиБизнесСеть
ПользователиЦентраЭДО
@@ -16072,8 +16077,8 @@
СинхронизацияСтатусовДокументовСАТУРН
СкидкиТорговыхПредложений
СкидкиТорговыхПредложенийВидыЦен
- СклоненияПредставленийОбъектов
слкНастройкиМенеджераЗащитыСЛК
+ СклоненияПредставленийОбъектов
СловарьСопоставленияНоменклатурыБЭД
СлужебныеАдресныеСведения
СнимкиОтчетов
@@ -16191,7 +16196,6 @@
СтоимостьТоваров
СубъектыДляРасчетаСроковХранения
СубъектыДляСкрытияПерсональныхДанных
- СуммыДокументовВВалютахУчета
сфпАбонентыТелефонныхКниг
сфпДанныеКоллтрекинга
сфпДоступныеДляПрослушиванияПользователи
@@ -16208,6 +16212,7 @@
сфпСтатистикаРаспознаванияРечи
сфпТекущиеЗвонки
сфпТокеныДоступаAPIТелефонии
+ СуммыДокументовВВалютахУчета
СхемыОбеспечения
СчетаФактурыКомиссионерамКОформлению
СчетаФактурыКомитентовКРегистрации
@@ -16225,8 +16230,8 @@
ТорговыеПредложенияТорговойПлощадки
ТребуетсяОформлениеСчетаФактуры
УведомленияМонитораПортала
- УведомленияОПрочтении
удалитьCRM_ДанныеАвтосохранения
+ УведомленияОПрочтении
УдалитьАктуальныеДокументыЭДО
УдалитьБезопасноеХранилищеДанныхОбластейДанных
УдалитьВерсииКлассификаторовОбластейДанных
diff --git a/src/Constants/УведомитьОбУстаревшейФункциональности.xml b/src/Constants/УведомитьОбУстаревшейФункциональности.xml
new file mode 100644
index 000000000..180deda6f
--- /dev/null
+++ b/src/Constants/УведомитьОбУстаревшейФункциональности.xml
@@ -0,0 +1,58 @@
+
+
+
+
+
+ 56b0207d-c2dc-4b70-9647-595abf29ecdf
+ 303feb03-2caf-4a56-8082-e88f3bed83fb
+
+
+ df034185-d769-45a1-a082-e3b5dbe9f06d
+ 7b7df44e-6bc2-42d0-84d1-3977123be395
+
+
+ 94b6b4ec-85f3-41d7-8517-58a663e73c2e
+ 2fc1ded8-e672-45b8-a19e-b607de4f46cc
+
+
+
+ УведомитьОбУстаревшейФункциональности
+
+
+ ru
+ Уведомить об устаревшей функциональности
+
+
+
+
+ xs:boolean
+
+ true
+
+
+
+ false
+
+
+
+ false
+
+ false
+ false
+
+
+ DontCheck
+ Items
+
+
+ Auto
+
+
+ Auto
+ Managed
+ DontUse
+ false
+ false
+
+
+
\ No newline at end of file
diff --git a/src/DataProcessors/CRM_МастерРегистрацииОбращения/Forms/ФормаНовая/Ext/Form/Module.bsl b/src/DataProcessors/CRM_МастерРегистрацииОбращения/Forms/ФормаНовая/Ext/Form/Module.bsl
index c9adef9b3..092a91398 100644
--- a/src/DataProcessors/CRM_МастерРегистрацииОбращения/Forms/ФормаНовая/Ext/Form/Module.bsl
+++ b/src/DataProcessors/CRM_МастерРегистрацииОбращения/Forms/ФормаНовая/Ext/Form/Module.bsl
@@ -2452,6 +2452,10 @@
ЭлементФормы.СвязиПараметровВыбора = Новый ФиксированныйМассив(НовыеСвязиПараметровВыбора);
+ НовыйПараметр = Новый ПараметрВыбора("Отбор.СегментПартнеров", Справочники.СегментыПартнеров.ПустаяСсылка());
+ ОтборПоСегментуМассив = Новый Массив();
+ ОтборПоСегментуМассив.Добавить(НовыйПараметр);
+
Если ЭлементСоглашение <> Неопределено Тогда
СоглашениеСвязиПараметровВыбора = Новый Массив;
@@ -2462,13 +2466,23 @@
ПараметрВыбора = Новый СвязьПараметраВыбора("Отбор.Дата", "Интерес.Дата", РежимИзмененияСвязанногоЗначения.НеИзменять);
СоглашениеСвязиПараметровВыбора.Добавить(ПараметрВыбора);
+ Если Не ЗначениеЗаполнено(Интерес.Партнер) Тогда
+ ЭлементСоглашение.ПараметрыВыбора = Новый ФиксированныйМассив(ОтборПоСегментуМассив);
+ КонецЕсли;
+
ЭлементСоглашение.СвязиПараметровВыбора = Новый ФиксированныйМассив(СоглашениеСвязиПараметровВыбора);
КонецЕсли;
ЭлементСоглашениеТовары = Элементы.Найти("СоглашениеТовары");
Если ЭлементСоглашениеТовары <> Неопределено Тогда
+
ЭлементСоглашениеТовары.СвязиПараметровВыбора = Новый ФиксированныйМассив(СоглашениеСвязиПараметровВыбора);
+
+ Если Не ЗначениеЗаполнено(Интерес.Партнер) Тогда
+ ЭлементСоглашение.ПараметрыВыбора = Новый ФиксированныйМассив(ОтборПоСегментуМассив);
+ КонецЕсли;
+
КонецЕсли;
КонецПроцедуры
@@ -7816,7 +7830,7 @@
ОбязательноКЗаполнению = ?(ПроверяемыеРеквизитыИнтереса.Найти(ИмяЭлемента) = Неопределено,
Ложь, Истина);
КонецЕсли;
-
+
Если ИмяЭлемента = "Договор" Тогда
Элемент.Видимость = (ЭлементСписка.Пометка Или ОбязательноКЗаполнению)
И ЗначениеЗаполнено(Интерес.Партнер);
@@ -7827,11 +7841,12 @@
Элементы.РольКонтактногоЛица.Видимость = ЭлементСписка.Пометка
И (Элементы.ГруппаРеквизитыКлиента.Видимость Или Элементы.ГруппаРеквизитыКонтакта.Видимость);
ИначеЕсли ИмяЭлемента = "Соглашение" Тогда
- Элемент.Видимость = (ЭлементСписка.Пометка Или ОбязательноКЗаполнению)
- И ЗначениеЗаполнено(Интерес.Партнер);
+ Элемент.Видимость = (ЭлементСписка.Пометка Или ОбязательноКЗаполнению);
+ Элемент.РедактированиеТекста = ЗначениеЗаполнено(Интерес.Партнер);
ДопЭлемент = Элементы.Найти("СоглашениеТовары");
Если ДопЭлемент <> Неопределено Тогда
ДопЭлемент.Видимость = Элемент.Видимость;
+ ДопЭлемент.РедактированиеТекста = ЗначениеЗаполнено(Интерес.Партнер);
ДопЭлемент.АвтоОтметкаНезаполненного = ДопЭлемент.Видимость И ОбязательноКЗаполнению;
КонецЕсли;
ИначеЕсли ИмяЭлемента = "Контрагент" Тогда
diff --git a/src/DataProcessors/CRM_Мессенджер/Forms/ФормаМессенджера/Ext/Form.xml b/src/DataProcessors/CRM_Мессенджер/Forms/ФормаМессенджера/Ext/Form.xml
index cc44e299a..e5682b073 100644
--- a/src/DataProcessors/CRM_Мессенджер/Forms/ФормаМессенджера/Ext/Form.xml
+++ b/src/DataProcessors/CRM_Мессенджер/Forms/ФормаМессенджера/Ext/Form.xml
@@ -799,6 +799,12 @@
+
+ false
+ style:CRM_ОсновнойГолубой
+
+
+
Hyperlink
Center
@@ -1063,6 +1069,7 @@
+ AlwaysHorizontal
Usual
None
false
diff --git a/src/DataProcessors/CRM_Мессенджер/Forms/ФормаМессенджера/Ext/Form/Module.bsl b/src/DataProcessors/CRM_Мессенджер/Forms/ФормаМессенджера/Ext/Form/Module.bsl
index f4453a373..bbde3b93b 100644
--- a/src/DataProcessors/CRM_Мессенджер/Forms/ФормаМессенджера/Ext/Form/Module.bsl
+++ b/src/DataProcessors/CRM_Мессенджер/Forms/ФормаМессенджера/Ext/Form/Module.bsl
@@ -202,6 +202,8 @@
ПроверкаОшибокПолученияСообщенийМессенджераНаСервере();
+ СформироватьСмещениеВремениТекущегоАбонента();
+
CRM_ОбщегоНазначенияСервер.ЗакончитьЗамерВремениСозданияФормы(ЭтотОбъект, ВремяНачалаЗамера);
КонецПроцедуры
@@ -446,6 +448,7 @@
КонецЕсли;
ВставитьСообщениеИзШаблонаВПолеВвода(ШаблонСообщенияПриОткрытии);
+ СформироватьСмещениеВремениТекущегоАбонента();
КонецПроцедуры
@@ -4477,7 +4480,7 @@
+ ?(НовыхСообщений.Все > 0, СтрШаблон(": %1", НовыхСообщений.Все), "");
Если (глИспользуютсяДиалогиНаРабочемСтоле = Истина) Тогда
- CRM_РаботаСМессенджерамиКлиент.ВывестиОповещениеОНепрочитанныхНаРабочийСтол(НовыхСообщений);
+ CRM_РаботаСМессенджерамиКлиент.ВывестиОповещениеОНепрочитанныхНаРабочийСтол(НовыхСообщений);
КонецЕсли;
КонецПроцедуры // ОбновлениеАРМ_ОбновитьЗаголовки()
@@ -7531,6 +7534,21 @@
КонецПроцедуры
+&НаСервере
+Процедура СформироватьСмещениеВремениТекущегоАбонента()
+
+ Если ТипЗнч(ТекущийКонтакт) = Тип("СправочникСсылка.Партнеры") Тогда
+ CRM_КлиентыСервер.СформироватьСмещениеВремениТекущегоАбонента(ЭтотОбъект, ТекущийКонтакт);
+ ИначеЕсли ТипЗнч(ТекущийКонтакт) = Тип("СправочникСсылка.CRM_ПотенциальныеКлиенты") Тогда
+ CRM_КлиентыСервер.СформироватьСмещениеВремениТекущегоАбонента(ЭтотОбъект, , ТекущийКонтакт);
+ ИначеЕсли ТипЗнч(ТекущийКонтакт) = Тип("СправочникСсылка.КонтактныеЛицаПартнеров") Тогда
+ CRM_КлиентыСервер.СформироватьСмещениеВремениТекущегоАбонента(ЭтотОбъект, ТекущийКонтакт.Владелец);
+ Иначе
+ Элементы.ДекорацияСмещениеВремени.Видимость = Ложь;
+ КонецЕсли;
+
+КонецПроцедуры
+
#Область РаспознаваниеРечи
&НаСервере
diff --git a/src/DataProcessors/CRM_РаботаСМессенджеромTelegram/Ext/ManagerModule.bsl b/src/DataProcessors/CRM_РаботаСМессенджеромTelegram/Ext/ManagerModule.bsl
index a0ffe8119..da68eed1c 100644
--- a/src/DataProcessors/CRM_РаботаСМессенджеромTelegram/Ext/ManagerModule.bsl
+++ b/src/DataProcessors/CRM_РаботаСМессенджеромTelegram/Ext/ManagerModule.bsl
@@ -1019,25 +1019,27 @@
Процедура НачатьОтправкуСообщения(Компонента, Параметры, Обработчики, НачальныеСообщения)
Если Параметры.ДопПараметры.Свойство("СообщениеОснование")
- И ЗначениеЗаполнено(Параметры.ДопПараметры.СообщениеОснование) Тогда
+ И ЗначениеЗаполнено(Параметры.ДопПараметры.СообщениеОснование)
+ И ОбщегоНазначенияКлиентСервер.ЭтоЧисло(Параметры.ДопПараметры.СообщениеОснование.ID_Сообщения) Тогда
+
chat_id = Число(Параметры.ДопПараметры.СообщениеОснование.Группа);
message_id = Число(Параметры.ДопПараметры.СообщениеОснование.ID_Сообщения);
Если НачальныеСообщения[chat_id] = Неопределено
Или НачальныеСообщения[chat_id] <= message_id Тогда
Обработчик_ОтправитьСообщение(Компонента, Параметры, Обработчики);
- Иначе
+ Иначе
ЗапросКомпоненты = Новый Соответствие;
ЗапросКомпоненты.Вставить("@type", "getMessage");
ЗапросКомпоненты.Вставить("chat_id", chat_id);
ЗапросКомпоненты.Вставить("message_id", message_id);
guid = Строка(Новый УникальныйИдентификатор());
ЗапросКомпоненты.Вставить("@extra", guid);
-
+
ЗаписьJSON = Новый ЗаписьJSON;
- ЗаписьJSON.УстановитьСтроку();
- ЗаписатьJSON(ЗаписьJSON, ЗапросКомпоненты);
+ ЗаписьJSON.УстановитьСтроку();
+ ЗаписатьJSON(ЗаписьJSON, ЗапросКомпоненты);
ЗапросJSON = ЗаписьJSON.Закрыть();
-
+
Компонента.Отправить(ЗапросJSON);
Обработчик = Новый Структура;
@@ -1051,12 +1053,12 @@
ЗапросКомпоненты.Вставить("user_id", Число(Параметры.IDПользователя));
guid = Строка(Новый УникальныйИдентификатор());
ЗапросКомпоненты.Вставить("@extra", guid);
-
+
ЗаписьJSON = Новый ЗаписьJSON;
- ЗаписьJSON.УстановитьСтроку();
- ЗаписатьJSON(ЗаписьJSON, ЗапросКомпоненты);
+ ЗаписьJSON.УстановитьСтроку();
+ ЗаписатьJSON(ЗаписьJSON, ЗапросКомпоненты);
ЗапросJSON = ЗаписьJSON.Закрыть();
-
+
Компонента.Отправить(ЗапросJSON);
Обработчик = Новый Структура;
diff --git a/src/DataProcessors/БизнесСеть/Forms/ДокументыОбмена/Ext/Form/Module.bsl b/src/DataProcessors/БизнесСеть/Forms/ДокументыОбмена/Ext/Form/Module.bsl
index 3240332bf..908854753 100644
--- a/src/DataProcessors/БизнесСеть/Forms/ДокументыОбмена/Ext/Form/Module.bsl
+++ b/src/DataProcessors/БизнесСеть/Forms/ДокументыОбмена/Ext/Form/Module.bsl
@@ -747,20 +747,15 @@
ПараметрыЗапроса.Вставить("Страница", Страницы.Страница);
ПараметрыЗапроса.Вставить("РазмерСтраницы", Страницы.РазмерСтраницы);
- Задание = Новый Структура("ИмяПроцедуры, Наименование, ПараметрыПроцедуры");
- Задание.Наименование = НСтр("ru = '1С:Бизнес-сеть. Получение документов сервиса.'");
- Задание.ИмяПроцедуры = "БизнесСеть.ПолучениеДокументовСервиса";
- Задание.ПараметрыПроцедуры = ПараметрыЗапроса;
-
ПараметрыВыполнения = ДлительныеОперации.ПараметрыВыполненияВФоне(УникальныйИдентификатор);
- ПараметрыВыполнения.НаименованиеФоновогоЗадания = Задание.Наименование;
+ ПараметрыВыполнения.НаименованиеФоновогоЗадания = НСтр("ru = '1С:Бизнес-сеть. Получение документов сервиса.'");
ПараметрыВыполнения.ЗапуститьВФоне = Истина;
ПараметрыВыполнения.ОжидатьЗавершение = 0;
УстановитьВидимостьЭлементовВФоновомЗадании(Элементы, Истина);
- Возврат ДлительныеОперации.ВыполнитьВФоне(Задание.ИмяПроцедуры,
- Задание.ПараметрыПроцедуры, ПараметрыВыполнения);
+ Возврат ДлительныеОперации.ВыполнитьВФоне("БизнесСеть.ПолучениеДокументовСервиса",
+ ПараметрыЗапроса, ПараметрыВыполнения);
КонецФункции
@@ -1049,19 +1044,14 @@
КонецЦикла;
- Задание = Новый Структура("ИмяПроцедуры, Наименование, ПараметрыПроцедуры");
- Задание.Наименование = НСтр("ru = '1С:Бизнес-сеть. Загрузка документов.'");
- Задание.ИмяПроцедуры = "БизнесСеть.ЗагрузитьДокументы";
- Задание.ПараметрыПроцедуры = ТаблицаЗагрузки;
-
ПараметрыВыполнения = ДлительныеОперации.ПараметрыВыполненияВФоне(УникальныйИдентификатор);
- ПараметрыВыполнения.НаименованиеФоновогоЗадания = Задание.Наименование;
+ ПараметрыВыполнения.НаименованиеФоновогоЗадания = НСтр("ru = '1С:Бизнес-сеть. Загрузка документов.'");
ПараметрыВыполнения.ЗапуститьВФоне = Истина;
ПараметрыВыполнения.ОжидатьЗавершение = 0;
УстановитьВидимостьЭлементовВФоновомЗадании(Элементы, Истина);
- Возврат ДлительныеОперации.ВыполнитьВФоне(Задание.ИмяПроцедуры,
+ Возврат ДлительныеОперации.ВыполнитьВФоне("БизнесСеть.ЗагрузитьДокументы",
ТаблицаЗагрузки, ПараметрыВыполнения);
КонецФункции
diff --git a/src/DataProcessors/БизнесСеть/Forms/ПросмотрДокумента/Ext/Form/Module.bsl b/src/DataProcessors/БизнесСеть/Forms/ПросмотрДокумента/Ext/Form/Module.bsl
index 5ca5986b8..f5d9a348c 100644
--- a/src/DataProcessors/БизнесСеть/Forms/ПросмотрДокумента/Ext/Form/Module.bsl
+++ b/src/DataProcessors/БизнесСеть/Forms/ПросмотрДокумента/Ext/Form/Module.bsl
@@ -254,13 +254,16 @@
НаименованиеЗадания = НСтр("ru = 'Установка статуса ""Загружен"" для документа 1С:Бизнес-сеть'",
ОбщегоНазначения.КодОсновногоЯзыка());
- ИмяМетода = "БизнесСеть.УстановитьСтатусЗагружен";
ПараметрыВыполнения = ДлительныеОперации.ПараметрыВыполненияПроцедуры();
ПараметрыВыполнения.НаименованиеФоновогоЗадания = НаименованиеЗадания;
ПараметрыВыполнения.ЗапуститьВФоне = Истина;
- Возврат ДлительныеОперации.ВыполнитьПроцедуру(ПараметрыВыполнения, ИмяМетода, Организация, Идентификатор,
+ Возврат ДлительныеОперации.ВыполнитьПроцедуру(
+ ПараметрыВыполнения,
+ "БизнесСеть.УстановитьСтатусЗагружен",
+ Организация,
+ Идентификатор,
ДокументСсылка);
КонецФункции
diff --git a/src/DataProcessors/БизнесСеть/Forms/РегистрацияОрганизаций/Ext/Form/Module.bsl b/src/DataProcessors/БизнесСеть/Forms/РегистрацияОрганизаций/Ext/Form/Module.bsl
index 623c52eae..10c536421 100644
--- a/src/DataProcessors/БизнесСеть/Forms/РегистрацияОрганизаций/Ext/Form/Module.bsl
+++ b/src/DataProcessors/БизнесСеть/Forms/РегистрацияОрганизаций/Ext/Form/Module.bsl
@@ -170,9 +170,8 @@
ПараметрыВыполнения.ОжидатьЗавершение = 0;
ПараметрыВыполнения.ЗапуститьВФоне = Истина;
- ИмяПроцедуры = "БизнесСеть.ПодключитьОрганизациюПоТикетуИТСВФоне";
-
- Возврат ДлительныеОперации.ВыполнитьВФоне(ИмяПроцедуры, ПараметрыПоиска, ПараметрыВыполнения);
+ Возврат ДлительныеОперации.ВыполнитьВФоне(
+ "БизнесСеть.ПодключитьОрганизациюПоТикетуИТСВФоне", ПараметрыПоиска, ПараметрыВыполнения);
КонецФункции
diff --git a/src/DataProcessors/ВзаимодействиеМПЭПД/Forms/ВыборУчетныхЗаписейЭДО/Ext/Form.xml b/src/DataProcessors/ВзаимодействиеМПЭПД/Forms/ВыборУчетныхЗаписейЭДО/Ext/Form.xml
index 1899a5298..61c694efe 100644
--- a/src/DataProcessors/ВзаимодействиеМПЭПД/Forms/ВыборУчетныхЗаписейЭДО/Ext/Form.xml
+++ b/src/DataProcessors/ВзаимодействиеМПЭПД/Forms/ВыборУчетныхЗаписейЭДО/Ext/Form.xml
@@ -147,6 +147,10 @@
cfg:DynamicList
+
+ СписокВыбора.ИдентификаторЭДО
+ СписокВыбора.Организация
+
true
false
diff --git a/src/DataProcessors/ВиртуальнаяАгрегацияУпаковокИСМП/Forms/СозданиеУпаковки/Ext/Form/Module.bsl b/src/DataProcessors/ВиртуальнаяАгрегацияУпаковокИСМП/Forms/СозданиеУпаковки/Ext/Form/Module.bsl
index 6df3b639d..d86a323dd 100644
--- a/src/DataProcessors/ВиртуальнаяАгрегацияУпаковокИСМП/Forms/СозданиеУпаковки/Ext/Form/Module.bsl
+++ b/src/DataProcessors/ВиртуальнаяАгрегацияУпаковокИСМП/Forms/СозданиеУпаковки/Ext/Form/Module.bsl
@@ -94,7 +94,7 @@
Коэффициент = Количество * Упаковки[ЕдиницаИзмеренияСоставляющей - 1].Коэффициент;
КонецЕсли;
-Конецпроцедуры
+КонецПроцедуры
&НаКлиенте
Процедура СформироватьНаименование()
@@ -104,6 +104,6 @@
Коэффициент,
ЕдиницаИзмеренияНоменклатуры);
-Конецпроцедуры
+КонецПроцедуры
#КонецОбласти
diff --git a/src/DataProcessors/ВиртуальнаяАгрегацияУпаковокИСМП/Forms/СоставУпаковок/Ext/Form/Module.bsl b/src/DataProcessors/ВиртуальнаяАгрегацияУпаковокИСМП/Forms/СоставУпаковок/Ext/Form/Module.bsl
index 03e65ee2c..1ca99fd08 100644
--- a/src/DataProcessors/ВиртуальнаяАгрегацияУпаковокИСМП/Forms/СоставУпаковок/Ext/Form/Module.bsl
+++ b/src/DataProcessors/ВиртуальнаяАгрегацияУпаковокИСМП/Forms/СоставУпаковок/Ext/Form/Module.bsl
@@ -844,7 +844,7 @@
ОписаниеОповещения = Новый ОписаниеОповещения("ОтветНаВопросПередУдалениемУпаковки", ЭтотОбъект, ТекущаяСтрока);
ПоказатьВопрос(ОписаниеОповещения, ТекстВопроса, РежимДиалогаВопрос.ДаНет);
-Конецпроцедуры
+КонецПроцедуры
&НаКлиенте
Процедура ОтветНаВопросПередУдалениемУпаковки(Результат, ДополнительныеПараметры) Экспорт
diff --git a/src/DataProcessors/ВиртуальнаяАгрегацияУпаковокИСМП/Forms/Форма/Ext/Form/Module.bsl b/src/DataProcessors/ВиртуальнаяАгрегацияУпаковокИСМП/Forms/Форма/Ext/Form/Module.bsl
index bbc688148..63c04edea 100644
--- a/src/DataProcessors/ВиртуальнаяАгрегацияУпаковокИСМП/Forms/Форма/Ext/Form/Module.bsl
+++ b/src/DataProcessors/ВиртуальнаяАгрегацияУпаковокИСМП/Forms/Форма/Ext/Form/Module.bsl
@@ -39,10 +39,10 @@
ЦветГиперссылки = ЦветаСтиля.ЦветГиперссылкиГосИС;
ЦветЗаголовкаГруппы = ЦветаСтиля.ЦветТекстаТребуетВниманияГосИС;
ЦветНеТребуетВнимания = ЦветаСтиля.ЦветТекстаНеТребуетВниманияГосИС;
-
+
ОбработатьСохраненныеНастройки();
УправлениеЭлементамиФормыПриСоздании();
-
+
ОбщегоНазначенияСобытияФормИСПереопределяемый.ПриСозданииНаСервере(ЭтотОбъект, Отказ, СтандартнаяОбработка);
КонецПроцедуры
@@ -122,7 +122,7 @@
&НаКлиенте
Процедура ПроизвольныйСоставУпаковкиПриИзменении(Элемент)
-
+
Если НЕ ПроизвольныйСоставУпаковки Тогда
ОчиститьСоставУпаковки();
Если ЗначениеЗаполнено(ИсторическаяУпаковка) Тогда
@@ -133,32 +133,32 @@
КонецЕсли;
УправлениеЗависимымиОтИсторииЭлементами(ЭтотОбъект);
-
+
СохранитьНастройкиФормы();
-
+
КонецПроцедуры
&НаКлиенте
Процедура ИсторическаяУпаковкаПриИзменении(Элемент)
-
+
ПриИзмененииИсторическойУпаковки();
-
+
КонецПроцедуры
&НаКлиенте
Процедура КоличествоУпаковокПриИзменении(Элемент)
-
+
ИзменитьКоличествоУпаковокПриНеобходимости();
РассчитатьОстатокПоДокументу();
-
+
КонецПроцедуры
&НаКлиенте
Процедура КоличествоУпаковокРегулирование(Элемент, Направление, СтандартнаяОбработка)
-
+
ИзменитьКоличествоУпаковокПриНеобходимости();
РассчитатьОстатокПоДокументу();
-
+
КонецПроцедуры
&НаКлиенте
@@ -211,7 +211,7 @@
ПриВыбореСтрокиСоставаУпаковки(Элемент, ВыбраннаяСтрока, Поле, СтандартнаяОбработка);
Иначе
-
+
СобытияФормИСМПКлиент.ВыборЭлементаТабличнойЧастиОткрытьФормуЭлемента(ЭтотОбъект, Элемент, Поле);
КонецЕсли;
@@ -642,15 +642,15 @@
КонецЕсли;
КонецЦикла;
КонецЕсли;
-
+
Если Отказ Тогда
Возврат;
КонецЕсли;
-
+
ДобавитьНовыеУпаковкиВИтоговоеДеревоУпаковок();
-
+
Модифицированность = Истина;
-
+
Если Не Элементы.ГруппаСписокУпаковок.Видимость Тогда
ПоказатьОповещениеПользователя(
СтрШаблон(НСтр("ru = 'Создано упаковок - %1'"), КоличествоУпаковок),
@@ -717,7 +717,7 @@
ЭтотОбъект,
"ОстаткиПродукцииХарактеристика",
"ОстаткиПродукции.ХарактеристикиИспользуются");
-
+
//
ЭлементУсловногоОформления = УсловноеОформление.Элементы.Добавить();
@@ -727,7 +727,7 @@
ОтборЭлемента = ЭлементУсловногоОформления.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных(Элементы.ОстаткиПродукцииНоменклатура.ПутьКДанным);
ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.НеЗаполнено;
-
+
ЭлементУсловногоОформления.Оформление.УстановитьЗначениеПараметра(
"Текст", Новый ПолеКомпоновкиДанных("ОстаткиПродукции.ПредставлениеНоменклатуры"));
@@ -757,7 +757,7 @@
ЭтотОбъект,
"СоставУпаковкиХарактеристика",
"СоставУпаковки.ХарактеристикиИспользуются");
-
+
СобытияФормИСПереопределяемый.УстановитьУсловноеОформлениеСерийНоменклатуры(
ЭтотОбъект,
"СоставУпаковкиСерия",
@@ -773,7 +773,7 @@
ОтборЭлемента = ЭлементУсловногоОформления.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных(Элементы.СоставУпаковкиНоменклатура.ПутьКДанным);
ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.НеЗаполнено;
-
+
ЭлементУсловногоОформления.Оформление.УстановитьЗначениеПараметра(
"Текст", Новый ПолеКомпоновкиДанных("СоставУпаковки.ПредставлениеНоменклатуры"));
@@ -871,7 +871,7 @@
Элементы.ОстаткиПродукцииХарактеристика.Видимость = Ложь;
Элементы.СоставУпаковкиХарактеристика.Видимость = Ложь;
КонецЕсли;
-
+
Если НЕ ИспользоватьСерииНоменклатуры Тогда
Элементы.СоставУпаковкиГруппаСерия.Видимость = Ложь;
Элементы.СгенерироватьСерии.Видимость = Ложь;
@@ -902,7 +902,7 @@
Элементы.ИсторическаяУпаковка.Доступность = Не Форма.ПроизвольныйСоставУпаковки;
Элементы.ГруппаЦентр.Доступность = Форма.РежимФормированияМонотоварнойУпаковки
Или Форма.ПроизвольныйСоставУпаковки;
-
+
КонецПроцедуры
&НаКлиентеНаСервереБезКонтекста
@@ -923,7 +923,7 @@
Элементы.ГруппаСозданиеКоличествоУпаковок.Видимость = Не Форма.РежимФормированияМонотоварнойУпаковки;
Элементы.ГруппаЦентр.Доступность = Форма.РежимФормированияМонотоварнойУпаковки
Или Форма.ПроизвольныйСоставУпаковки;
-
+
КонецПроцедуры
&НаКлиенте
@@ -953,7 +953,7 @@
КонецЕсли;
Элементы.ОстаткиПродукции.ОтборСтрок = Новый ФиксированнаяСтруктура(СтруктураОтбора);
-
+
КонецПроцедуры
&НаКлиенте
@@ -966,13 +966,13 @@
КонецЦикла;
СтрокиЗаголовка = Новый Массив();
-
+
Если Элементы.ГруппаСписокУпаковок.Видимость Тогда
ТекстГиперссылки = "СкрытьСписокУпаковок";
Иначе
ТекстГиперссылки = "ПоказатьСписокУпаковок";
КонецЕсли;
-
+
Если СформированоУпаковок = 0 Тогда
СтрокиЗаголовка.Добавить(Новый ФорматированнаяСтрока("Нет сформированных упаковок", ШрифтЗаголовкаГруппы, ЦветЗаголовкаГруппы,, ТекстГиперссылки));
Иначе
@@ -980,23 +980,23 @@
СтрокиЗаголовка.Добавить(Новый ФорматированнаяСтрока(" - ", ШрифтЗаголовкаГруппы, ЦветЗаголовкаГруппы));
СтрокиЗаголовка.Добавить(Новый ФорматированнаяСтрока(Формат(СформированоУпаковок, "ЧН=0;"), ШрифтЗаголовкаГруппы, ЦветЗаголовкаГруппы));
КонецЕсли;
-
+
Элементы.ДекорацияСкрытьОткрытьСписокУпаковок.Заголовок = Новый ФорматированнаяСтрока(СтрокиЗаголовка);
-
+
КонецПроцедуры
&НаКлиенте
Процедура СформироватьЗаголовокКоличествоУпаковок()
-
+
МассивПодстрок = Новый Массив();
МассивПодстрок.Добавить(ПросклонятьУпаковку(КоличествоУпаковок, ТоварнаяГруппа));
-
+
Если МаксимальноеКоличествоУпаковок > 0 Тогда
МассивПодстрок.Добавить(НСтр("ru = 'из'"));
МассивПодстрок.Добавить(Формат(МаксимальноеКоличествоУпаковок, "ЧДЦ=0;"));
МассивПодстрок.Добавить(ПросклонятьВозможных(МаксимальноеКоличествоУпаковок));
КонецЕсли;
-
+
Элементы.КоличествоУпаковок.Заголовок = СтрСоединить(МассивПодстрок, " ");
КонецПроцедуры
@@ -1055,7 +1055,7 @@
КонецЕсли;
РассчитатьОстатокПоДокументу();
СформироватьЗаголовокКоличествоУпаковок();
-
+
УправлениеЗависимымиОтРежимаФормированияЭлементами(ЭтотОбъект);
УстановитьДоступностьЭлементовФормы();
@@ -1941,7 +1941,7 @@
Если Элементы.ИсторическаяУпаковка.СписокВыбора.Количество() > 0 Тогда
ИсторическаяУпаковка = Элементы.ИсторическаяУпаковка.СписокВыбора[0].Значение;
-
+
Если Не РежимФормированияМонотоварнойУпаковки
И Не ПроизвольныйСоставУпаковки
И ЗначениеЗаполнено(ИсторическаяУпаковка) Тогда
@@ -3386,14 +3386,14 @@
&НаКлиентеНаСервереБезКонтекста
Функция ПросклонятьВозможных(Количество)
-
+
СклоненияСлова = НовыйСклоненияСлова();
СклоненияСлова.ИменительныйЕдЧисло = НСтр("ru = 'возможной'");
СклоненияСлова.ИменительныйМнЧисло = НСтр("ru = 'возможных'");
СклоненияСлова.РодительныйМнЧисло = НСтр("ru = 'возможных'");
-
+
Возврат ПросклонятьПоКоличеству(Количество, СклоненияСлова);
-
+
КонецФункции
&НаКлиентеНаСервереБезКонтекста
@@ -3435,6 +3435,6 @@
КонецФункции
-#КонецОбласти
+#КонецОбласти
-#КонецОбласти
+#КонецОбласти
diff --git a/src/DataProcessors/ГенерацияШтрихкодовУпаковок/Forms/Форма/Ext/Form/Module.bsl b/src/DataProcessors/ГенерацияШтрихкодовУпаковок/Forms/Форма/Ext/Form/Module.bsl
index 53495de1c..4d8347d02 100644
--- a/src/DataProcessors/ГенерацияШтрихкодовУпаковок/Forms/Форма/Ext/Form/Module.bsl
+++ b/src/DataProcessors/ГенерацияШтрихкодовУпаковок/Forms/Форма/Ext/Form/Module.bsl
@@ -143,7 +143,7 @@
КонецЦикла;
УстановитьДоступностьХарактеристики(ЭтотОбъект);
-
+
ОбщегоНазначенияСобытияФормИСПереопределяемый.ПриСозданииНаСервере(ЭтотОбъект, Отказ, СтандартнаяОбработка);
КонецПроцедуры
@@ -758,7 +758,7 @@
Элементы.ГруппаРеквизитыGS1.Видимость = Ложь;
КонецЕсли;
-
+
Элементы.ПрефиксКомпанииGS1.АвтоОтметкаНезаполненного =
Форма.ТипШтрихкодаСтрокой = "SSCC";
Элементы.СерийныйНомерSSCC.АвтоОтметкаНезаполненного =
@@ -1078,7 +1078,7 @@
Иначе
Информация = Неопределено;
КонецЕсли;
-
+
КонецПроцедуры
&НаСервере
@@ -2468,7 +2468,7 @@
ЗаполнениеПоНастройкамЗаполнения(НастройкиЗаполнения);
КонецПроцедуры
-#КонецОбласти
+#КонецОбласти
diff --git a/src/DataProcessors/ГотовностьКПереходу26.xml b/src/DataProcessors/ГотовностьКПереходу26.xml
new file mode 100644
index 000000000..0b8c05fda
--- /dev/null
+++ b/src/DataProcessors/ГотовностьКПереходу26.xml
@@ -0,0 +1,36 @@
+
+
+
+
+
+ 49efdaaf-d0e3-4262-90d9-f0d7ef04a53f
+ 93bd757b-e2f3-4a85-9330-8961c7806ffb
+
+
+ a133d260-b3ba-41bf-a677-26983eaea718
+ 555ab35f-807b-4ac7-a665-acf312b8e4bc
+
+
+
+ ГотовностьКПереходу26
+
+
+ ru
+ Готовность к переходу на редакцию 2.6 (11.6)
+
+
+
+ true
+ DataProcessor.ГотовностьКПереходу26.Form.Форма
+
+ false
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/DataProcessors/ГотовностьКПереходу26/Ext/ManagerModule.bsl b/src/DataProcessors/ГотовностьКПереходу26/Ext/ManagerModule.bsl
new file mode 100644
index 000000000..3fbe435f2
--- /dev/null
+++ b/src/DataProcessors/ГотовностьКПереходу26/Ext/ManagerModule.bsl
@@ -0,0 +1,751 @@
+#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда
+
+#Область ПрограммныйИнтерфейс
+
+// Возвращает признак использования устаревшей функциональности при проверке вывода уведомления.
+//
+// Возвращаемое значение:
+// Булево - признак использования устаревшей функциональности в системе.
+//
+Функция ПроверитьИспользованиеУстаревшейФункциональности() Экспорт
+
+ УстановитьПривилегированныйРежим(Истина);
+
+ Если ОбщегоНазначения.РазделениеВключено() Тогда
+ ИспользуетсяУстаревшаяФункциональностьВСистеме = Ложь;
+ Иначе
+
+ ИспользуетсяУстаревшаяФункциональностьВСистеме = ИспользуетсяУстаревшаяФункциональность();
+
+ Если НЕ ИспользуетсяУстаревшаяФункциональностьВСистеме Тогда
+ УстановитьКонстантуУведомленияОбУстаревшейФункциональности(Ложь);
+ КонецЕсли;
+
+ КонецЕсли;
+
+ УстановитьПривилегированныйРежим(Ложь);
+
+ Возврат ИспользуетсяУстаревшаяФункциональностьВСистеме;
+
+КонецФункции
+
+// Возвращает признак использования устаревшей функциональности в привелигированном режиме.
+//
+// Возвращаемое значение:
+// Булево - признак использования устаревшей функциональности в системе.
+//
+Функция ИспользуетсяУстаревшаяФункциональность() Экспорт
+
+ УстановитьПривилегированныйРежим(Истина);
+ ИспользуетсяУстаревшаяФункциональность = Ложь
+
+
+
+ ИЛИ ШагКомиссионныеПродажиИспользуетсяУстаревшаяФункциональность()
+ ИЛИ ШагЦенообразованиеИспользуетсяУстаревшаяФункциональность()
+ ИЛИ ШагВзаиморасчетыИспользуетсяУстаревшаяФункциональность()
+
+ //++ Локализация
+ ИЛИ ШагПартионныйУчетИспользуетсяУстаревшаяФункциональность()
+ //-- Локализация
+
+ ИЛИ ШагRLSИспользуетсяУстаревшаяФункциональность();
+
+ УстановитьПривилегированныйРежим(Ложь);
+
+ Возврат ИспользуетсяУстаревшаяФункциональность;
+
+КонецФункции
+
+// Возвращает таблицу значений с устаревшей функциональностью.
+//
+// Параметры:
+// РассчитыватьСостояние - Булево
+//
+// Возвращаемое значение:
+// ТаблицаЗначений:
+// * Идентификатор - Число
+// * УстаревшаяФункциональность - Строка
+// * НоваяФункциональность - Строка
+// * Статус - Число
+// * Состояние - Строка
+// * Рекомендация - Строка
+// * Действие - Строка
+// * РежимДействия - Число
+// * ИспользуетсяУстаревшаяФункциональность - Булево
+// * ИспользуетсяНоваяФункциональность - Булево
+// * РекомендацияТребующаяДействий - Булево
+// * ИнформацияНеПрипятствующаяОбновлению - Булево
+// * ДатаДокумента - Дата
+// * ТребуетсяРассчитатьСостояние - Булево
+//
+Функция ТаблицаУстаревшейФункциональности(РассчитыватьСостояние) Экспорт
+
+ УстановитьПривилегированныйРежим(Истина);
+
+ Таблица = Новый ТаблицаЗначений;
+ Таблица.Колонки.Добавить("Идентификатор", ОбщегоНазначения.ОписаниеТипаЧисло(2));
+ Таблица.Колонки.Добавить("УстаревшаяФункциональность", ОбщегоНазначения.ОписаниеТипаСтрока(200));
+ Таблица.Колонки.Добавить("НоваяФункциональность", ОбщегоНазначения.ОписаниеТипаСтрока(200));
+ Таблица.Колонки.Добавить("Статус", ОбщегоНазначения.ОписаниеТипаЧисло(1));
+ Таблица.Колонки.Добавить("Состояние", ОбщегоНазначения.ОписаниеТипаСтрока(100));
+ Таблица.Колонки.Добавить("Рекомендация", ОбщегоНазначения.ОписаниеТипаСтрока(0));
+ Таблица.Колонки.Добавить("Действие", ОбщегоНазначения.ОписаниеТипаСтрока(100));
+ Таблица.Колонки.Добавить("РежимДействия", ОбщегоНазначения.ОписаниеТипаЧисло(1));
+ Таблица.Колонки.Добавить("ИспользуетсяУстаревшаяФункциональность", Новый ОписаниеТипов("Булево"));
+ Таблица.Колонки.Добавить("ИспользуетсяНоваяФункциональность", Новый ОписаниеТипов("Булево"));
+ Таблица.Колонки.Добавить("РекомендацияТребующаяДействий", Новый ОписаниеТипов("Булево"));
+ Таблица.Колонки.Добавить("ИнформацияНеПрипятствующаяОбновлению", Новый ОписаниеТипов("Булево"));
+ Таблица.Колонки.Добавить("ДатаДокумента", ОбщегоНазначения.ОписаниеТипаДата(ЧастиДаты.Дата));
+ Таблица.Колонки.Добавить("ТребуетсяРассчитатьСостояние", Новый ОписаниеТипов("Булево"));
+ Таблица.Колонки.Добавить("ЕстьДанныеПоУстаревшейФункциональности", Новый ОписаниеТипов("Булево"));
+
+
+
+
+
+ ДобавитьШагКомиссионныеПродажи(Таблица, РассчитыватьСостояние);
+ ДобавитьШагЦенообразование(Таблица, РассчитыватьСостояние);
+ ДобавитьШагВзаиморасчеты(Таблица, РассчитыватьСостояние);
+
+ //++ Локализация
+ ДобавитьШагПартионныйУчет(Таблица, РассчитыватьСостояние);
+ //-- Локализация
+
+
+ ДобавитьШагВводОстатков(Таблица, РассчитыватьСостояние);
+ ДобавитьШагRLS(Таблица, РассчитыватьСостояние);
+
+ УстановитьПривилегированныйРежим(Ложь);
+
+ Возврат Таблица;
+
+КонецФункции
+
+// Получение данных в длительной операции.
+//
+// Параметры:
+// Параметры - Структура
+// АдресХранилища - Строка
+//
+Процедура ПолучитьДанныеУстаревшейФункциональностиВФоне(Параметры, АдресХранилища) Экспорт
+
+ ТаблицаДанных = ТаблицаУстаревшейФункциональности(Истина);
+
+ ПоместитьВоВременноеХранилище(ТаблицаДанных, АдресХранилища);
+
+КонецПроцедуры
+
+// Устанавливает значение константы для показа формы уведомления об устаревшей функциональности.
+//
+// Параметры:
+// Значение - Булево - устанавливаемое значение.
+//
+Процедура УстановитьКонстантуУведомленияОбУстаревшейФункциональности(Значение) Экспорт
+
+ УстановитьПривилегированныйРежим(Истина);
+
+ Если ОбщегоНазначения.РазделениеВключено() Тогда
+ Возврат;
+ Иначе
+ Константы.УведомитьОбУстаревшейФункциональности.Установить(Значение);
+ КонецЕсли;
+
+ УстановитьПривилегированныйРежим(Ложь);
+
+КонецПроцедуры
+
+
+#КонецОбласти
+
+#Область СлужебныеПроцедурыИФункции
+
+Функция РежимДействияПереходКПомощнику()
+
+ Возврат 1;
+
+КонецФункции
+
+Функция РежимДействияПереходВРаздел()
+
+ Возврат 2;
+
+КонецФункции
+
+Функция РежимДействияПереходВСписокДокументов()
+
+ Возврат 3;
+
+КонецФункции
+
+Функция РежимДействияПереходКНастройке()
+
+ Возврат 4;
+
+КонецФункции
+
+Функция КартинкаИнформация()
+
+ Возврат 2;
+
+КонецФункции
+
+Функция КартинкаГотово()
+
+ Возврат 0;
+
+КонецФункции
+
+Функция КартинкаТребуетсяВнимание()
+
+ Возврат 1;
+
+КонецФункции
+
+Функция КартинкаНеИспользуется()
+
+ Возврат 3;
+
+КонецФункции
+
+Процедура ЗаполнитьДанныеВСтроке(Строка)
+
+ ИспользуетсяТолькоНоваяФункциональность = НЕ Строка.ИспользуетсяУстаревшаяФункциональность И Строка.ИспользуетсяНоваяФункциональность;
+ ФункциональностьНеИспользуется = НЕ Строка.ИспользуетсяУстаревшаяФункциональность И НЕ Строка.ИспользуетсяНоваяФункциональность;
+ ЕстьДанныеПоУстаревшейФункциональности = Строка.ЕстьДанныеПоУстаревшейФункциональности;
+
+ #Область Состояние
+ МожноПерейтиНа26 = Строка.ИнформацияНеПрипятствующаяОбновлению ИЛИ ИспользуетсяТолькоНоваяФункциональность ИЛИ ФункциональностьНеИспользуется;
+
+ Если МожноПерейтиНа26 Тогда
+ ТекстСостояния = НСтр("ru = 'Можно переходить на редакцию 11.6'");
+ Иначе
+ ТекстСостояния = НСтр("ru = 'Нельзя переходить на редакцию 11.6'");
+ КонецЕсли;
+
+ Если Строка.ТребуетсяРассчитатьСостояние Тогда
+ ТекстСостояния = НСтр("ru = 'Рассчитывается'");
+ КонецЕсли;
+
+ Строка.Состояние = ТекстСостояния;
+ #КонецОбласти
+
+ #Область Рекомендация
+ Рекомендация = Строка.Рекомендация;
+
+ Если Не Строка.ТребуетсяРассчитатьСостояние Тогда
+
+ Если ИспользуетсяТолькоНоваяФункциональность
+ ИЛИ ФункциональностьНеИспользуется Тогда
+ Рекомендация = НСтр("ru = 'Дополнительных действий не требуется.'");
+ ИначеЕсли Строка.РежимДействия = РежимДействияПереходКПомощнику() Тогда
+ Рекомендация = НСтр("ru = 'Воспользуйтесь помощником перехода.'");
+ КонецЕсли;
+
+ КонецЕсли;
+
+ Строка.Рекомендация = Рекомендация;
+ #КонецОбласти
+
+ #Область СтатусКартинка
+ Если ФункциональностьНеИспользуется И ЕстьДанныеПоУстаревшейФункциональности Тогда
+ Строка.Статус = КартинкаГотово();
+ ИначеЕсли ФункциональностьНеИспользуется И НЕ ЕстьДанныеПоУстаревшейФункциональности Тогда
+ Строка.Статус = КартинкаНеИспользуется();
+ ИначеЕсли Строка.ИнформацияНеПрипятствующаяОбновлению И НЕ ИспользуетсяТолькоНоваяФункциональность Тогда
+ Строка.Статус = КартинкаИнформация();
+ ИначеЕсли ИспользуетсяТолькоНоваяФункциональность Тогда
+ Строка.Статус = КартинкаГотово();
+ Иначе
+ Строка.Статус = КартинкаТребуетсяВнимание();
+ КонецЕсли;
+ #КонецОбласти
+
+ #Область Действие
+ Если Не Строка.ТребуетсяРассчитатьСостояние Тогда
+
+ Если ИспользуетсяТолькоНоваяФункциональность ИЛИ ФункциональностьНеИспользуется Тогда
+ ТекстДействия = "";
+ ИначеЕсли Строка.РежимДействия = РежимДействияПереходКПомощнику() Тогда
+ ТекстДействия = НСтр("ru = 'Помощник перехода'");
+ ИначеЕсли Строка.РежимДействия = РежимДействияПереходВСписокДокументов() Тогда
+ ТекстДействия = НСтр("ru = 'Переход к списку документов'");
+ ИначеЕсли Строка.РежимДействия = РежимДействияПереходВРаздел() Тогда
+ ТекстДействия = НСтр("ru = 'Переход к разделу администрирования'");
+ ИначеЕсли Строка.РежимДействия = РежимДействияПереходКНастройке() Тогда
+ ТекстДействия = НСтр("ru = 'Переход к настройке'");
+ КонецЕсли;
+
+ КонецЕсли;
+
+ Строка.Действие = ТекстДействия;
+ #КонецОбласти
+
+ #Область РекомендацияТребующаяДействий
+ Если ИспользуетсяТолькоНоваяФункциональность ИЛИ ФункциональностьНеИспользуется Тогда
+ Строка.РекомендацияТребующаяДействий = Ложь;
+ КонецЕсли;
+ #КонецОбласти
+
+КонецПроцедуры
+
+
+
+#Область КомиссионныеПродажи
+
+Процедура ДобавитьШагКомиссионныеПродажи(Таблица, РассчитыватьСостояние)
+
+ Строка = Таблица.Добавить();
+ Строка.Идентификатор = ШагКомиссионныеПродажиИдентификатор();
+ Строка.УстаревшаяФункциональность = НСтр("ru = 'Комиссионные продажи, версия 11.0'");
+ Строка.НоваяФункциональность = НСтр("ru = 'Комиссионные продажи, версия 11.5'");
+ Строка.РекомендацияТребующаяДействий = Истина;
+ Строка.РежимДействия = РежимДействияПереходВСписокДокументов();
+
+ Строка.ТребуетсяРассчитатьСостояние = НЕ РассчитыватьСостояние;
+ Если РассчитыватьСостояние Тогда
+
+ Строка.ИспользуетсяУстаревшаяФункциональность = ШагКомиссионныеПродажиИспользуетсяУстаревшаяФункциональность();
+ Строка.ИспользуетсяНоваяФункциональность = ШагКомиссионныеПродажиИспользуетсяНоваяФункциональность();
+ Строка.ДатаДокумента = ШагКомиссионныеПродажиДатаПоследнегоДокумента();
+ Строка.ЕстьДанныеПоУстаревшейФункциональности = ЗначениеЗаполнено(Строка.ДатаДокумента);
+
+ КонецЕсли;
+
+ Строка.Рекомендация = НСтр("ru = 'Для перехода на функциональность ""Комиссионные продажи, версия 11.5"" необходимо выполнить следующие шаги:
+ |1. Создать новые договоры передачи на комиссию с указанием в них версии 11.5 (использование договоров обязательно). Создать новые соглашения, если используются.
+ |2. Недооформленные документы (отчеты комиссионеров) в рамках соглашений и договоров версии 11.0 - дооформить по версии 11.0.
+ |3. Для остающихся товаров оформить возвраты по версии комиссии 11.0 и последующую передачу по версии 11.5.
+ |4. В настройках комиссионных продаж выбрать версию 11.5 взамен 11.0/11.5.'");
+
+
+ ЗаполнитьДанныеВСтроке(Строка);
+
+КонецПроцедуры
+
+Функция ШагКомиссионныеПродажиИдентификатор() Экспорт
+
+ Возврат 5;
+
+КонецФункции
+
+Функция ШагКомиссионныеПродажиИспользуетсяУстаревшаяФункциональность()
+
+ ЗначениеОпций = ПолучитьФункциональнуюОпцию("ИспользоватьКомиссиюПриПродажах") И ПолучитьФункциональнуюОпцию("ВыбиратьВерсиюКомиссионныхПродаж");
+
+ Если ЗначениеОпций Тогда
+ Возврат Истина;
+ Иначе
+ Возврат ШагКомиссионныеПродажиЕстьОстаткиВФинансовомУчете();
+ КонецЕсли;
+
+КонецФункции
+
+Функция ШагКомиссионныеПродажиИспользуетсяНоваяФункциональность()
+
+ Возврат ПолучитьФункциональнуюОпцию("ИспользоватьКомиссиюПриПродажах") И НЕ ПолучитьФункциональнуюОпцию("ВыбиратьВерсиюКомиссионныхПродаж");
+
+КонецФункции
+
+Функция ШагКомиссионныеПродажиДатаПоследнегоДокумента()
+
+ Дата = Дата(1, 1, 1);
+
+ Запрос = Новый Запрос(ШагКомиссионныеПродажиТекстЗапросаДатаПоследнегоДокумента());
+ Выборка = Запрос.Выполнить().Выбрать();
+ Если Выборка.Следующий() Тогда
+ Дата = Выборка.ДатаДокумента;
+ КонецЕсли;
+
+ Возврат Дата;
+
+КонецФункции
+
+Функция ШагКомиссионныеПродажиТекстЗапросаДатаПоследнегоДокумента()
+
+ Возврат
+ "ВЫБРАТЬ
+ | МАКСИМУМ(Таблица.Дата) КАК ДатаДокумента
+ |ИЗ
+ | (ВЫБРАТЬ
+ | МАКСИМУМ(ТоварыПереданные.Период) КАК Дата
+ | ИЗ
+ | РегистрНакопления.ТоварыПереданныеНаКомиссию КАК ТоварыПереданные
+ |
+ | ОБЪЕДИНИТЬ ВСЕ
+ |
+ | ВЫБРАТЬ
+ | МАКСИМУМ(Распоряжения.Дата)
+ | ИЗ
+ | Документ.ЗаказКлиента КАК Распоряжения
+ | ГДЕ
+ | Распоряжения.ХозяйственнаяОперация = ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПередачаНаКомиссию)
+ | И Распоряжения.Проведен
+ | И НЕ ЕСТЬNULL(Распоряжения.Договор.КомиссионныеПродажи25, ЛОЖЬ)
+ |
+ | ОБЪЕДИНИТЬ ВСЕ
+ |
+ | ВЫБРАТЬ
+ | МАКСИМУМ(Распоряжения.Дата)
+ | ИЗ
+ | Документ.ЗаявкаНаВозвратТоваровОтКлиента КАК Распоряжения
+ | ГДЕ
+ | Распоряжения.ХозяйственнаяОперация = ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ВозвратОтКомиссионера)
+ | И Распоряжения.Проведен
+ | И НЕ ЕСТЬNULL(Распоряжения.Договор.КомиссионныеПродажи25, ЛОЖЬ)) КАК Таблица";
+
+КонецФункции
+
+Функция ШагКомиссионныеПродажиЕстьОстаткиВФинансовомУчете()
+
+ Запрос = Новый Запрос;
+ Запрос.Текст =
+ "ВЫБРАТЬ
+ | Распоряжения.Распоряжение КАК Распоряжение
+ |ИЗ
+ | РегистрСведений.РаспоряженияНаОтгрузкуИВозвратКВыполнению КАК Распоряжения
+ |ГДЕ
+ | Распоряжения.СостояниеКОформлению <> ЗНАЧЕНИЕ(Перечисление.СостояниеОформленияДокументовПоРаспоряжению.Оформлены)
+ | И Распоряжения.ХозяйственнаяОперация = ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПередачаНаКомиссию)
+ | И НЕ ЕСТЬNULL(Распоряжения.Распоряжение.Договор.КомиссионныеПродажи25, ЛОЖЬ)
+ |;
+ |
+ |////////////////////////////////////////////////////////////////////////////////
+ |ВЫБРАТЬ
+ | ТоварыПереданные.АналитикаУчетаНоменклатуры КАК АналитикаУчетаНоменклатуры,
+ | ТоварыПереданные.Соглашение КАК Соглашение,
+ | ТоварыПереданные.Организация КАК Организация,
+ | ТоварыПереданные.ВидЗапасов КАК ВидЗапасов,
+ | ТоварыПереданные.НомерГТД КАК НомерГТД,
+ | ТоварыПереданные.КоличествоОстаток КАК КоличествоОстаток,
+ | ТоварыПереданные.КоличествоПоРНПТОстаток КАК КоличествоПоРНПТОстаток
+ |ИЗ
+ | РегистрНакопления.ТоварыПереданныеНаКомиссию.Остатки(, ) КАК ТоварыПереданные
+ |ГДЕ
+ | (ТоварыПереданные.КоличествоОстаток <> 0
+ | ИЛИ ТоварыПереданные.КоличествоПоРНПТОстаток <> 0)";
+
+ МассивРезультатов = Запрос.ВыполнитьПакет();
+ Возврат НЕ МассивРезультатов[0].Пустой() ИЛИ НЕ МассивРезультатов[1].Пустой();
+
+КонецФункции
+
+#КонецОбласти
+
+#Область Ценообразование
+
+Процедура ДобавитьШагЦенообразование(Таблица, РассчитыватьСостояние)
+
+ Строка = Таблица.Добавить();
+ Строка.Идентификатор = ШагЦенообразованиеИдентификатор();
+ Строка.УстаревшаяФункциональность = НСтр("ru = 'Ценообразование, версия 11.0'");
+ Строка.НоваяФункциональность = НСтр("ru = 'Ценообразование, версия 11.5'");
+ Строка.РежимДействия = РежимДействияПереходКПомощнику();
+
+ Строка.ТребуетсяРассчитатьСостояние = НЕ РассчитыватьСостояние;
+ Если РассчитыватьСостояние Тогда
+
+ Строка.ИспользуетсяУстаревшаяФункциональность = ШагЦенообразованиеИспользуетсяУстаревшаяФункциональность();
+ Строка.ИспользуетсяНоваяФункциональность = ШагЦенообразованиеИспользуетсяНоваяФункциональность();
+ Строка.ДатаДокумента = ШагЦенообразованиеДатаПоследнегоДокумента();
+ Строка.ЕстьДанныеПоУстаревшейФункциональности = ЗначениеЗаполнено(Строка.ДатаДокумента);
+
+ КонецЕсли;
+
+ Строка.Рекомендация = НСтр("ru = 'Воспользуйтесь помощником перехода.'");
+
+
+ ЗаполнитьДанныеВСтроке(Строка);
+
+КонецПроцедуры
+
+Функция ШагЦенообразованиеИдентификатор() Экспорт
+
+ Возврат 6;
+
+КонецФункции
+
+Функция ШагЦенообразованиеИспользуетсяУстаревшаяФункциональность()
+
+ Возврат ПолучитьФункциональнуюОпцию("ИспользоватьНесколькоВидовЦен") И ПолучитьФункциональнуюОпцию("ИспользуетсяЦенообразование20");
+
+КонецФункции
+
+Функция ШагЦенообразованиеИспользуетсяНоваяФункциональность()
+
+ Возврат ПолучитьФункциональнуюОпцию("ИспользоватьНесколькоВидовЦен") И ПолучитьФункциональнуюОпцию("ИспользуетсяЦенообразование25");
+
+КонецФункции
+
+Функция ШагЦенообразованиеДатаПоследнегоДокумента()
+
+ Дата = Дата(1, 1, 1);
+
+ Запрос = Новый Запрос(ШагЦенообразованиеТекстЗапросаДатаПоследнегоДокумента());
+ Выборка = Запрос.Выполнить().Выбрать();
+ Если Выборка.Следующий() Тогда
+ Дата = Выборка.ДатаДокумента;
+ КонецЕсли;
+
+ Возврат Дата;
+
+КонецФункции
+
+Функция ШагЦенообразованиеТекстЗапросаДатаПоследнегоДокумента()
+
+ Возврат
+ "ВЫБРАТЬ
+ | МАКСИМУМ(Период) КАК ДатаДокумента
+ |ИЗ
+ | РегистрСведений.ЦеныНоменклатуры КАК ЦеныНоменклатуры";
+
+КонецФункции
+
+#КонецОбласти
+
+#Область Взаиморасчеты
+
+Процедура ДобавитьШагВзаиморасчеты(Таблица, РассчитыватьСостояние)
+
+ Строка = Таблица.Добавить();
+ Строка.Идентификатор = ШагВзаиморасчетыИдентификатор();
+ Строка.УстаревшаяФункциональность = НСтр("ru = '""Старая"" архитектура взаиморасчетов (""оффлайн"")'");
+ Строка.НоваяФункциональность = НСтр("ru = '""Новая"" архитектура взаиморасчетов (""онлайн"")'");
+ Строка.РежимДействия = РежимДействияПереходВРаздел();
+
+ Строка.ТребуетсяРассчитатьСостояние = НЕ РассчитыватьСостояние;
+ Если РассчитыватьСостояние Тогда
+
+ Строка.ИспользуетсяУстаревшаяФункциональность = ШагВзаиморасчетыИспользуетсяУстаревшаяФункциональность();
+ Строка.ИспользуетсяНоваяФункциональность = ШагВзаиморасчетыИспользуетсяНоваяФункциональность();
+
+ КонецЕсли;
+
+ Строка.Рекомендация = НСтр("ru = 'Для перехода на новую функциональность необходимо переключить функциональную опцию.'");
+
+ ЗаполнитьДанныеВСтроке(Строка);
+
+КонецПроцедуры
+
+Функция ШагВзаиморасчетыИдентификатор() Экспорт
+
+ Возврат 7;
+
+КонецФункции
+
+Функция ШагВзаиморасчетыИспользуетсяУстаревшаяФункциональность()
+
+ Возврат НЕ ПолучитьФункциональнуюОпцию("НоваяАрхитектураВзаиморасчетов");
+
+КонецФункции
+
+Функция ШагВзаиморасчетыИспользуетсяНоваяФункциональность()
+
+ Возврат ПолучитьФункциональнуюОпцию("НоваяАрхитектураВзаиморасчетов");
+
+КонецФункции
+
+#КонецОбласти
+
+//++ Локализация
+
+#Область ПартионныйУчет
+
+Процедура ДобавитьШагПартионныйУчет(Таблица, РассчитыватьСостояние)
+
+ Строка = Таблица.Добавить();
+ Строка.Идентификатор = ШагПартионныйУчетИдентификатор();
+ Строка.УстаревшаяФункциональность = НСтр("ru = 'Партионный учет, версия 2.1'");
+ Строка.НоваяФункциональность = НСтр("ru = 'Партионный учет, версия 2.2'");
+ Строка.РекомендацияТребующаяДействий = Истина;
+ Строка.РежимДействия = РежимДействияПереходВРаздел();
+
+ Строка.ТребуетсяРассчитатьСостояние = НЕ РассчитыватьСостояние;
+ Если РассчитыватьСостояние Тогда
+
+ Строка.ИспользуетсяУстаревшаяФункциональность = ШагПартионныйУчетИспользуетсяУстаревшаяФункциональность();
+ Строка.ИспользуетсяНоваяФункциональность = ШагПартионныйУчетИспользуетсяНоваяФункциональность();
+ Строка.ДатаДокумента = ШагПартионныйУчетДатаПоследнегоДокумента();
+ Строка.ЕстьДанныеПоУстаревшейФункциональности = ЗначениеЗаполнено(Строка.ДатаДокумента);
+
+ КонецЕсли;
+
+ Строка.Рекомендация = НСтр("ru = 'Для перехода на функциональность ""Партионный учет, версия 2.2"" необходимо в настройках системы указать версию 2.2 для партионного учета и задать дату (должна быть началом месяца), начиная с которой будет действовать новая настройка.'");
+
+ ЗаполнитьДанныеВСтроке(Строка);
+
+КонецПроцедуры
+
+Функция ШагПартионныйУчетИдентификатор() Экспорт
+
+ Возврат 8;
+
+КонецФункции
+
+Функция ШагПартионныйУчетИспользуетсяУстаревшаяФункциональность()
+
+ Возврат РасчетСебестоимостиПовтИсп.ПартионныйУчетВерсии21();
+
+КонецФункции
+
+Функция ШагПартионныйУчетИспользуетсяНоваяФункциональность()
+
+ Возврат РасчетСебестоимостиПовтИсп.ПартионныйУчетВерсии22();
+
+КонецФункции
+
+Функция ШагПартионныйУчетДатаПоследнегоДокумента()
+
+ Дата = Дата(1, 1, 1);
+
+ Если РасчетСебестоимостиПовтИсп.ПартионныйУчетВерсии22() Тогда
+
+ Дата = РасчетСебестоимостиПовтИсп.ДатаПереходаНаПартионныйУчетВерсии22();
+
+ Если ЗначениеЗаполнено(Дата) И РасчетСебестоимостиПовтИсп.ИспользовалсяПартионныйУчетДоПереходаНаВерсию22(Дата-1) = Истина Тогда
+
+ Запрос = Новый Запрос;
+ Запрос.УстановитьПараметр("Дата", Дата);
+
+ Запрос.Текст =
+ "ВЫБРАТЬ
+ | МАКСИМУМ(Т.Период) КАК Период
+ |ИЗ
+ | (ВЫБРАТЬ
+ | МАКСИМУМ(Т.Период) КАК Период
+ | ИЗ
+ | РегистрНакопления.ПартииТоваровОрганизаций КАК Т
+ |ГДЕ
+ | Т.Период < &Дата
+ |
+ | ОБЪЕДИНИТЬ ВСЕ
+ |
+ | ВЫБРАТЬ
+ | МАКСИМУМ(Т.Период)
+ | ИЗ
+ | РегистрНакопления.СебестоимостьТоваров КАК Т
+ |ГДЕ
+ | Т.Период < &Дата
+ | ) КАК Т";
+
+ Выборка = Запрос.Выполнить().Выбрать();
+
+ Если Выборка.Следующий() Тогда
+ Дата = Выборка.Период;
+ КонецЕсли;
+
+ Иначе
+ Дата = Дата(1, 1, 1);
+ КонецЕсли;
+
+ ИначеЕсли РасчетСебестоимостиПовтИсп.ПартионныйУчетВерсии21() Тогда
+
+ Запрос = Новый Запрос;
+ Запрос.Текст =
+ "ВЫБРАТЬ
+ | МАКСИМУМ(Т.Период) КАК Период
+ |ИЗ
+ | (ВЫБРАТЬ
+ | МАКСИМУМ(Т.Период) КАК Период
+ | ИЗ
+ | РегистрНакопления.ПартииТоваровОрганизаций КАК Т
+ |
+ | ОБЪЕДИНИТЬ ВСЕ
+ |
+ | ВЫБРАТЬ
+ | МАКСИМУМ(Т.Период)
+ | ИЗ
+ | РегистрНакопления.СебестоимостьТоваров КАК Т) КАК Т";
+
+ Выборка = Запрос.Выполнить().Выбрать();
+
+ Если Выборка.Следующий() Тогда
+ Дата = Выборка.Период;
+ КонецЕсли;
+
+ КонецЕсли;
+
+ Возврат Дата;
+
+КонецФункции
+
+#КонецОбласти
+
+//-- Локализация
+
+#Область ВводОстатков
+
+Процедура ДобавитьШагВводОстатков(Таблица, РассчитыватьСостояние)
+
+ Строка = Таблица.Добавить();
+ Строка.Идентификатор = ШагВводОстатковИдентификатор();
+ Строка.УстаревшаяФункциональность = НСтр("ru = 'Единый документ ""Ввод остатков""'");
+ Строка.НоваяФункциональность = НСтр("ru = 'Раздельные документы ""Ввод остатков""'");
+ Строка.ИспользуетсяУстаревшаяФункциональность = Ложь;
+ Строка.ИспользуетсяНоваяФункциональность = Ложь;
+ Строка.ИнформацияНеПрипятствующаяОбновлению = Истина;
+ Строка.ТребуетсяРассчитатьСостояние = НЕ РассчитыватьСостояние;
+
+ Строка.Рекомендация = НСтр("ru = 'Дополнительных действий не требуется.'");
+
+ ЗаполнитьДанныеВСтроке(Строка);
+
+КонецПроцедуры
+
+Функция ШагВводОстатковИдентификатор() Экспорт
+
+ Возврат 12;
+
+КонецФункции
+
+#КонецОбласти
+
+#Область RLS
+
+Процедура ДобавитьШагRLS(Таблица, РассчитыватьСостояние)
+
+ Строка = Таблица.Добавить();
+ Строка.Идентификатор = ШагRLSИдентификатор();
+ Строка.УстаревшаяФункциональность = НСтр("ru = '""Стандартный"" RLS'");
+ Строка.НоваяФункциональность = НСтр("ru = '""Производительный"" RLS'");
+ Строка.ИнформацияНеПрипятствующаяОбновлению = Истина;
+ Строка.РежимДействия = РежимДействияПереходВРаздел();
+
+ Строка.ТребуетсяРассчитатьСостояние = НЕ РассчитыватьСостояние;
+ Если РассчитыватьСостояние Тогда
+
+ Строка.ИспользуетсяУстаревшаяФункциональность = ШагRLSИспользуетсяУстаревшаяФункциональность();
+ Строка.ИспользуетсяНоваяФункциональность = ШагRLSИспользуетсяНоваяФункциональность();
+
+ КонецЕсли;
+
+ Строка.Рекомендация = НСтр("ru = 'Рекомендуется заранее выполнить переход на ""Производительный"" режим RLS в редакции 11.5. В редакции 11.6 переход будет принудительным.'");
+
+
+ ЗаполнитьДанныеВСтроке(Строка);
+
+КонецПроцедуры
+
+Функция ШагRLSИдентификатор() Экспорт
+
+ Возврат 13;
+
+КонецФункции
+
+Функция ШагRLSИспользуетсяУстаревшаяФункциональность()
+
+ Возврат ПолучитьФункциональнуюОпцию("ОграничиватьДоступНаУровнеЗаписей") И НЕ ПолучитьФункциональнуюОпцию("ОграничиватьДоступНаУровнеЗаписейУниверсально");
+
+КонецФункции
+
+Функция ШагRLSИспользуетсяНоваяФункциональность()
+
+ Возврат ПолучитьФункциональнуюОпцию("ОграничиватьДоступНаУровнеЗаписей") И ПолучитьФункциональнуюОпцию("ОграничиватьДоступНаУровнеЗаписейУниверсально");
+
+КонецФункции
+
+#КонецОбласти
+
+#КонецОбласти
+
+#КонецЕсли
diff --git a/src/DataProcessors/ГотовностьКПереходу26/Forms/Форма.xml b/src/DataProcessors/ГотовностьКПереходу26/Forms/Форма.xml
new file mode 100644
index 000000000..37dfb3a08
--- /dev/null
+++ b/src/DataProcessors/ГотовностьКПереходу26/Forms/Форма.xml
@@ -0,0 +1,22 @@
+
+
+
+
\ No newline at end of file
diff --git a/src/DataProcessors/ГотовностьКПереходу26/Forms/Форма/Ext/Form.xml b/src/DataProcessors/ГотовностьКПереходу26/Forms/Форма/Ext/Form.xml
new file mode 100644
index 000000000..9e2ab7835
--- /dev/null
+++ b/src/DataProcessors/ГотовностьКПереходу26/Forms/Форма/Ext/Form.xml
@@ -0,0 +1,724 @@
+
+
\ No newline at end of file
diff --git a/src/DataProcessors/ГотовностьКПереходу26/Forms/Форма/Ext/Form/Module.bsl b/src/DataProcessors/ГотовностьКПереходу26/Forms/Форма/Ext/Form/Module.bsl
new file mode 100644
index 000000000..b915ca335
--- /dev/null
+++ b/src/DataProcessors/ГотовностьКПереходу26/Forms/Форма/Ext/Form/Module.bsl
@@ -0,0 +1,369 @@
+
+#Область ОбработчикиСобытийФормы
+
+&НаСервере
+Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
+
+ УстановитьУсловноеОформление();
+
+ ЦветВыбранногоРежима = ЦветаСтиля.ЦветТекстаФормы;
+ ЦветНеВыбранногоРежима = ЦветаСтиля.ГиперссылкаЦвет;
+
+ Элементы.ГиперссылкаВсе.ЦветФона = ЦветаСтиля.ПодсказкаСинхронизации;
+ Элементы.ГиперссылкаВсе.ЦветТекста = ЦветВыбранногоРежима;
+ Элементы.ГиперссылкаСостояниеИспользуется.ЦветТекста = ЦветНеВыбранногоРежима;
+
+ Заголовок = НСтр("ru = 'Готовность к переходу на редакцию 11.6'");
+
+ ЗаполнитьТаблицу(Ложь);
+ ЗаполнитьТекстИнформационнойСтроки();
+
+КонецПроцедуры
+
+&НаКлиенте
+Процедура ПриОткрытии(Отказ)
+
+ ПолучитьДанныеВДлительнойОперации();
+
+КонецПроцедуры
+
+#КонецОбласти
+
+#Область ОбработчикиСобытийЭлементовШапкиФормы
+
+&НаКлиенте
+Процедура ГиперссылкаВсеНажатие(Элемент)
+
+ УстановитьОтбор(Истина);
+
+КонецПроцедуры
+
+&НаКлиенте
+Процедура ГиперссылкаСостояниеИспользуетсяНажатие(Элемент)
+
+ УстановитьОтбор(Ложь);
+
+КонецПроцедуры
+
+#КонецОбласти
+
+#Область ОбработчикиСобытийЭлементовТаблицыФормыТаблицаФункциональности
+
+&НаКлиенте
+Процедура ТаблицаФункциональностиВыбор(Элемент, ВыбраннаяСтрока, Поле, СтандартнаяОбработка)
+
+ Если Поле.Имя = "ТаблицаФункциональностиОткрытьРекомендацию" Тогда
+ СтандартнаяОбработка = Ложь;
+ ТекДанные = Элементы.ТаблицаФункциональности.ТекущиеДанные;
+ Если ТекДанные.РекомендацияТребующаяДействий Тогда
+ ОткрытьФорму("Обработка.ГотовностьКПереходу26.Форма.ФормаРекомендация", Новый Структура("Текст", ТекДанные.Рекомендация)
+ ,,,,,,РежимОткрытияОкнаФормы.БлокироватьОкноВладельца);
+ КонецЕсли;
+
+ КонецЕсли;
+
+ Если Поле.Имя = "ТаблицаФункциональностиДействие" Тогда
+
+ ПроверитьВыполнитьПереходПоДействию();
+
+ КонецЕсли;
+
+КонецПроцедуры
+
+#КонецОбласти
+
+#Область ОбработчикиКомандФормы
+
+&НаКлиенте
+Процедура КомандаОбновить(Команда)
+
+ ПолучитьДанныеВДлительнойОперации();
+
+КонецПроцедуры
+
+#КонецОбласти
+
+#Область СлужебныеПроцедурыИФункции
+
+&НаКлиенте
+Процедура ПолучитьДанныеВДлительнойОперации()
+
+ ДлительнаяОперация = ПолучитьДанныеДлительнаяОперация();
+
+ Если ДлительнаяОперация = Неопределено Тогда
+ Возврат;
+ КонецЕсли;
+
+ ДополнительныеПараметры = Новый Структура;
+
+ Если ДлительнаяОперация.Статус = "Выполнено" Тогда
+
+ ПолучитьДанныеВДлительнойОперацииЗавершение(ДлительнаяОперация, ДополнительныеПараметры);
+
+ ИначеЕсли ДлительнаяОперация.Статус = "Выполняется" Тогда
+
+ ПараметрыОжидания = ДлительныеОперацииКлиент.ПараметрыОжидания(ЭтотОбъект);
+ ПараметрыОжидания.ВыводитьОкноОжидания = Ложь;
+
+ ОповещениеОЗавершении = Новый ОписаниеОповещения("ПолучитьДанныеВДлительнойОперацииЗавершение", ЭтотОбъект, ДополнительныеПараметры);
+ ДлительныеОперацииКлиент.ОжидатьЗавершение(ДлительнаяОперация, ОповещениеОЗавершении, ПараметрыОжидания);
+
+ КонецЕсли;
+
+КонецПроцедуры
+
+&НаСервере
+Функция ПолучитьДанныеДлительнаяОперация()
+
+ ПараметрыПроцедуры = Новый Структура;
+
+ ПараметрыВыполнения = ДлительныеОперации.ПараметрыВыполненияВФоне(УникальныйИдентификатор);
+ ПараметрыВыполнения.НаименованиеФоновогоЗадания = НСтр("ru = 'Получение данных об устаревшей функциональности'");
+
+ ДлительнаяОперация = ДлительныеОперации.ВыполнитьВФоне("Обработки.ГотовностьКПереходу26.ПолучитьДанныеУстаревшейФункциональностиВФоне",
+ ПараметрыПроцедуры, ПараметрыВыполнения);
+ Возврат ДлительнаяОперация;
+
+КонецФункции
+
+&НаКлиенте
+Процедура ПолучитьДанныеВДлительнойОперацииЗавершение(Результат, ДополнительныеПараметры) Экспорт
+
+ Если Результат = Неопределено Тогда
+ Возврат;
+ КонецЕсли;
+
+ Если Результат.Статус = "Ошибка" Тогда
+ ВызватьИсключение Результат.КраткоеПредставлениеОшибки;
+ КонецЕсли;
+
+ Если Результат.Статус = "Выполнено" Тогда
+ ЗаполнитьДанные(Результат.АдресРезультата);
+ КонецЕсли;
+
+КонецПроцедуры
+
+&НаКлиенте
+Процедура ЗаполнитьДанные(АдресРезультата)
+
+ ТаблицаФункциональности.Очистить();
+ ЗаполнитьТаблицуИзХранилища(АдресРезультата);
+ СкрытьКолонкиРасчетаСостояния();
+ ПроверитьВывестиНадписьОГотовностиКПереходу();
+
+КонецПроцедуры
+
+&НаСервере
+Процедура ПроверитьВывестиНадписьОГотовностиКПереходу()
+
+ ДействияВыполнены = ТаблицаФункциональности.НайтиСтроки(Новый Структура("Статус", СтатусТребуетсяДействие())).Количество() = 0;
+ Элементы.ГруппаПереходЗавершен.Видимость = ДействияВыполнены;
+ Если ДействияВыполнены Тогда
+
+ МаксимальнаяДата = Дата(1,1,1);
+ Для каждого СтрокаТЗ Из ТаблицаФункциональности Цикл
+ Если СтрокаТЗ.ДатаДокумента > МаксимальнаяДата Тогда
+ МаксимальнаяДата = СтрокаТЗ.ДатаДокумента;
+ КонецЕсли;
+ КонецЦикла;
+
+ Если МаксимальнаяДата <> Дата(1, 1, 1) Тогда
+
+ ДатаВФормате = Формат(ДобавитьМесяц(МаксимальнаяДата, 2), "ДФ='MMММ yyyy'");
+ Шаблон = НСтр("ru = 'Вы готовы к переходу на редакцию 11.6. Рекомендуемая дата: %1.'");
+
+
+ ТекстСтроки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(Шаблон, ДатаВФормате);
+
+ Иначе
+
+ ТекстСтроки = НСтр("ru = 'Вы готовы к переходу на редакцию 11.6.'");
+
+
+ КонецЕсли;
+
+ ИнформационнаяСтрокаГотово = Новый ФорматированнаяСтрока(
+ ТекстСтроки,,
+ ЦветаСтиля.РезультатУспехЦвет);
+
+ КонецЕсли;
+
+КонецПроцедуры
+
+&НаСервере
+Процедура УстановитьУсловноеОформление()
+
+ УсловноеОформление.Элементы.Очистить();
+
+ Элемент = УсловноеОформление.Элементы.Добавить();
+
+ ПолеЭлемента = Элемент.Поля.Элементы.Добавить();
+ ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных(Элементы.ТаблицаФункциональности.Имя);
+
+ ГруппаОтбора = Элемент.Отбор.Элементы.Добавить(Тип("ГруппаЭлементовОтбораКомпоновкиДанных"));
+ ГруппаОтбора.ТипГруппы = ТипГруппыЭлементовОтбораКомпоновкиДанных.ГруппаИ;
+
+ ОтборЭлемента = ГруппаОтбора.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
+ ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("ТаблицаФункциональности.ИспользуетсяУстаревшаяФункциональность");
+ ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
+ ОтборЭлемента.ПравоеЗначение = Ложь;
+
+ ОтборЭлемента = ГруппаОтбора.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
+ ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("ТаблицаФункциональности.ИспользуетсяНоваяФункциональность");
+ ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
+ ОтборЭлемента.ПравоеЗначение = Ложь;
+
+ ОтборЭлемента = ГруппаОтбора.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
+ ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("ТаблицаФункциональности.ЕстьДанныеПоУстаревшейФункциональности");
+ ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
+ ОтборЭлемента.ПравоеЗначение = Ложь;
+
+ ОтборЭлемента = ГруппаОтбора.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
+ ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("ТаблицаФункциональности.ТребуетсяРассчитатьСостояние");
+ ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
+ ОтборЭлемента.ПравоеЗначение = Ложь;
+
+ Элемент.Оформление.УстановитьЗначениеПараметра("ЦветТекста", ЦветаСтиля.ЦветТекстаОтмененнойСтрокиДокумента);
+
+КонецПроцедуры
+
+&НаКлиенте
+Процедура СкрытьКолонкиРасчетаСостояния()
+
+ Элементы.ТаблицаФункциональностиРассчитаноСостояние.Видимость = Ложь;
+ Элементы.ТаблицаФункциональностиРассчитаноСостояние1.Видимость = Ложь;
+ Элементы.ТаблицаФункциональностиРассчитаноСостояние2.Видимость = Ложь;
+
+КонецПроцедуры
+
+&НаСервере
+Процедура ЗаполнитьТекстИнформационнойСтроки()
+
+ Шаблон = НСтр("ru = 'Функциональность устарела и будет удалена в редакции 11.6. Необходимо выполнить переход на новую функциональность.
+ |После отключения устаревшей функциональности рекомендуется до перехода на редакцию 11.6 выполнить как минимум 2 закрытия месяца.
+ |Корректировка закрытых периодов, в которых система работала на старой функциональности, будет невозможна в редакции 11.6.'");
+
+
+ ИнформационнаяСтрока = Новый ФорматированнаяСтрока(Шаблон,, ЦветаСтиля.ЦветТекстаПредупреждение);
+ Элементы.ИнформационнаяПанельСтраницы.ТекущаяСтраница = Элементы.ИнформационнаяПанельСтраницаОтобразить;
+
+КонецПроцедуры
+
+&НаСервере
+Процедура ЗаполнитьТаблицу(РассчитыватьСостояние)
+
+ ТаблицаУстаревшейФункциональности = Обработки.ГотовностьКПереходу26.ТаблицаУстаревшейФункциональности(РассчитыватьСостояние);
+ ТаблицаФункциональности.Загрузить(ТаблицаУстаревшейФункциональности);
+
+КонецПроцедуры
+
+&НаСервере
+Процедура ЗаполнитьТаблицуИзХранилища(АдресРезультата)
+
+ ТаблицаУстаревшейФункциональности = ПолучитьИзВременногоХранилища(АдресРезультата);
+ ТаблицаФункциональности.Загрузить(ТаблицаУстаревшейФункциональности);
+
+КонецПроцедуры
+
+&НаКлиенте
+Процедура ПроверитьВыполнитьПереходПоДействию()
+
+ ОчиститьСообщения();
+ ТекДанные = Элементы.ТаблицаФункциональности.ТекущиеДанные;
+
+ Если ПустаяСтрока(ТекДанные.Действие) Тогда
+ Возврат;
+ КонецЕсли;
+
+ Если Не ЕстьПравоПерехода(ТекДанные.Идентификатор) Тогда
+
+ Текст = НСтр("ru = 'Недостаточно прав для перехода, обратитесь к администратору.'");
+ ОбщегоНазначенияКлиент.СообщитьПользователю(Текст);
+
+ Возврат;
+
+ КонецЕсли;
+
+ Если ТекДанные.Идентификатор = 1 Тогда
+ ИначеЕсли ТекДанные.Идентификатор = 2 Тогда
+ ИначеЕсли ТекДанные.Идентификатор = 3 Тогда
+ ИначеЕсли ТекДанные.Идентификатор = 4 Тогда
+ ИначеЕсли ТекДанные.Идентификатор = 5 Тогда
+ ОткрытьФорму("Обработка.ЖурналДокументовПродажи.Форма.СписокДокументов",, ЭтотОбъект, УникальныйИдентификатор);
+ ИначеЕсли ТекДанные.Идентификатор = 6 Тогда
+ ОткрытьФорму("Обработка.ПомощникПереходаНаЦенообразованиеВерсии25.Форма.ПереходНаЦенообразованиеВерсии25",, ЭтотОбъект, УникальныйИдентификатор);
+ ИначеЕсли ТекДанные.Идентификатор = 7 Тогда
+ ОткрытьФорму("Обработка.ПанельАдминистрированияУТ.Форма.Казначейство",, ЭтотОбъект, УникальныйИдентификатор);
+ ИначеЕсли ТекДанные.Идентификатор = 8 Тогда
+ //++ Локализация
+ ОткрытьФорму("Обработка.ПанельАдминистрированияУТ.Форма.ДопНастройкиУчетаСебестоимости",, ЭтотОбъект, УникальныйИдентификатор);
+ //-- Локализация
+ ИначеЕсли ТекДанные.Идентификатор = 9 Тогда
+ ИначеЕсли ТекДанные.Идентификатор = 10 Тогда
+ ИначеЕсли ТекДанные.Идентификатор = 11 Тогда
+ ИначеЕсли ТекДанные.Идентификатор = 12 Тогда
+ // Действий не требуется
+ ИначеЕсли ТекДанные.Идентификатор = 13 Тогда
+ ОткрытьФорму("Обработка.ПанельАдминистрированияБСП.Форма.НастройкиПользователейИПрав",, ЭтотОбъект, УникальныйИдентификатор);
+ КонецЕсли;
+
+КонецПроцедуры
+
+&НаСервереБезКонтекста
+Функция ЕстьПравоПерехода(Идентификатор)
+
+ Если Идентификатор = 1 Тогда
+ ИначеЕсли Идентификатор = 2 Тогда
+ ИначеЕсли Идентификатор = 3 Тогда
+ ИначеЕсли Идентификатор = 4 Тогда
+ ИначеЕсли Идентификатор = 5 Тогда
+ Возврат ПравоДоступа("Использование", Метаданные.Обработки.ЖурналДокументовПродажи);
+ ИначеЕсли Идентификатор = 6 Тогда
+ Возврат ПравоДоступа("Использование", Метаданные.Обработки.ПомощникПереходаНаЦенообразованиеВерсии25);
+ ИначеЕсли Идентификатор = 7 Тогда
+ Возврат ПравоДоступа("Использование", Метаданные.Обработки.ПанельАдминистрированияУТ);
+ ИначеЕсли Идентификатор = 8 Тогда
+ //++ Локализация
+ Возврат ПравоДоступа("Использование", Метаданные.Обработки.ПанельАдминистрированияУТ);
+ //-- Локализация
+ ИначеЕсли Идентификатор = 9 Тогда
+ ИначеЕсли Идентификатор = 10 Тогда
+ ИначеЕсли Идентификатор = 11 Тогда
+ ИначеЕсли Идентификатор = 12 Тогда
+ // Действий не требуется
+ Возврат Ложь;
+ ИначеЕсли Идентификатор = 13 Тогда
+ Возврат ПравоДоступа("Использование", Метаданные.Обработки.ПанельАдминистрированияБСП);
+ КонецЕсли;
+
+ Возврат Ложь;
+
+КонецФункции
+
+
+
+&НаСервере
+Процедура УстановитьОтбор(ОтобразитьВсе)
+
+ ЦветФона = ЦветаСтиля.ПодсказкаСинхронизации;
+ ФонФормы = Новый Цвет();
+
+ Элементы.ГиперссылкаВсе.ЦветФона = ?(ОтобразитьВсе, ЦветФона, ФонФормы);
+ Элементы.ГиперссылкаВсе.ЦветТекста = ?(ОтобразитьВсе, ЦветВыбранногоРежима, ЦветНеВыбранногоРежима);
+ Элементы.ГиперссылкаСостояниеИспользуется.ЦветФона = ?(ОтобразитьВсе, ФонФормы, ЦветФона);
+ Элементы.ГиперссылкаСостояниеИспользуется.ЦветТекста = ?(ОтобразитьВсе, ЦветНеВыбранногоРежима, ЦветВыбранногоРежима);
+
+ Если ОтобразитьВсе Тогда
+ Элементы.ТаблицаФункциональности.ОтборСтрок = Неопределено;
+ Иначе
+ Элементы.ТаблицаФункциональности.ОтборСтрок = Новый ФиксированнаяСтруктура("Статус", СтатусТребуетсяДействие());
+ КонецЕсли;
+
+КонецПроцедуры
+
+&НаКлиентеНаСервереБезКонтекста
+Функция СтатусТребуетсяДействие()
+ Возврат 1;
+КонецФункции
+
+#КонецОбласти
diff --git a/src/DataProcessors/ГотовностьКПереходу26/Forms/ФормаРекомендация.xml b/src/DataProcessors/ГотовностьКПереходу26/Forms/ФормаРекомендация.xml
new file mode 100644
index 000000000..dee401f5a
--- /dev/null
+++ b/src/DataProcessors/ГотовностьКПереходу26/Forms/ФормаРекомендация.xml
@@ -0,0 +1,22 @@
+
+
+
+
\ No newline at end of file
diff --git a/src/DataProcessors/ГотовностьКПереходу26/Forms/ФормаРекомендация/Ext/Form.xml b/src/DataProcessors/ГотовностьКПереходу26/Forms/ФормаРекомендация/Ext/Form.xml
new file mode 100644
index 000000000..09fbbbe9a
--- /dev/null
+++ b/src/DataProcessors/ГотовностьКПереходу26/Forms/ФормаРекомендация/Ext/Form.xml
@@ -0,0 +1,56 @@
+
+
\ No newline at end of file
diff --git a/src/DataProcessors/ГотовностьКПереходу26/Forms/ФормаРекомендация/Ext/Form/Module.bsl b/src/DataProcessors/ГотовностьКПереходу26/Forms/ФормаРекомендация/Ext/Form/Module.bsl
new file mode 100644
index 000000000..0feec2c20
--- /dev/null
+++ b/src/DataProcessors/ГотовностьКПереходу26/Forms/ФормаРекомендация/Ext/Form/Module.bsl
@@ -0,0 +1,15 @@
+
+#Область ОбработчикиСобытийФормы
+
+&НаСервере
+Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
+
+ Текст = Параметры.Текст;
+
+ ИнформационнаяСтрока = Новый ФорматированнаяСтрока(Текст);
+
+ Заголовок = НСтр("ru = 'Готовность к переходу на редакцию 11.6'");
+
+КонецПроцедуры
+
+#КонецОбласти
\ No newline at end of file
diff --git a/src/DataProcessors/ГотовностьКПереходу26/Forms/ФормаУведомления26.xml b/src/DataProcessors/ГотовностьКПереходу26/Forms/ФормаУведомления26.xml
new file mode 100644
index 000000000..5a6c763e0
--- /dev/null
+++ b/src/DataProcessors/ГотовностьКПереходу26/Forms/ФормаУведомления26.xml
@@ -0,0 +1,22 @@
+
+
+
+
\ No newline at end of file
diff --git a/src/DataProcessors/ГотовностьКПереходу26/Forms/ФормаУведомления26/Ext/Form.xml b/src/DataProcessors/ГотовностьКПереходу26/Forms/ФормаУведомления26/Ext/Form.xml
new file mode 100644
index 000000000..8a50477ca
--- /dev/null
+++ b/src/DataProcessors/ГотовностьКПереходу26/Forms/ФормаУведомления26/Ext/Form.xml
@@ -0,0 +1,67 @@
+
+
\ No newline at end of file
diff --git a/src/DataProcessors/ГотовностьКПереходу26/Forms/ФормаУведомления26/Ext/Form/Module.bsl b/src/DataProcessors/ГотовностьКПереходу26/Forms/ФормаУведомления26/Ext/Form/Module.bsl
new file mode 100644
index 000000000..641871545
--- /dev/null
+++ b/src/DataProcessors/ГотовностьКПереходу26/Forms/ФормаУведомления26/Ext/Form/Module.bsl
@@ -0,0 +1,34 @@
+
+#Область ОбработчикиСобытийФормы
+
+&НаСервере
+Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
+
+ Заголовок = НСтр("ru = 'Уведомление о удалении устаревшей функциональности в редакции 11.6'");
+
+ Текст = НСтр("ru = 'В системе используется устаревшая функциональность, которая будет удалена в редакции 11.6.
+ |Рекомендуется выполнить переход на новую функциональность.
+ |Ознакомиться со списком можно через форму ""Готовность перехода на редакцию 11.6"".
+ |'");
+ Ссылка = Новый ФорматированнаяСтрока("Готовность перехода на редакцию 11.6.",,,, "ОткрытьФормуГотовностьПерехода26");
+
+
+ ИнформационнаяСтрока = Новый ФорматированнаяСтрока(Текст, Ссылка);
+ Обработки.ГотовностьКПереходу26.УстановитьКонстантуУведомленияОбУстаревшейФункциональности(Ложь);
+
+КонецПроцедуры
+
+#КонецОбласти
+
+#Область ОбработчикиСобытийЭлементовШапкиФормы
+
+&НаКлиенте
+Процедура ИнформационнаяСтрокаОбработкаНавигационнойСсылки(Элемент, НавигационнаяСсылкаФорматированнойСтроки, СтандартнаяОбработка)
+ Если НавигационнаяСсылкаФорматированнойСтроки = "ОткрытьФормуГотовностьПерехода26" Тогда
+ СтандартнаяОбработка = Ложь;
+ ОткрытьФорму("Обработка.ГотовностьКПереходу26.Форма.Форма");
+ Закрыть();
+ КонецЕсли;
+КонецПроцедуры
+
+#КонецОбласти
diff --git a/src/DataProcessors/ГрупповаяОтправкаЭПД/Forms/ФормаГрупповойОтправки/Ext/Form/Module.bsl b/src/DataProcessors/ГрупповаяОтправкаЭПД/Forms/ФормаГрупповойОтправки/Ext/Form/Module.bsl
index df1eef218..53f547016 100644
--- a/src/DataProcessors/ГрупповаяОтправкаЭПД/Forms/ФормаГрупповойОтправки/Ext/Form/Module.bsl
+++ b/src/DataProcessors/ГрупповаяОтправкаЭПД/Forms/ФормаГрупповойОтправки/Ext/Form/Module.bsl
@@ -9,12 +9,14 @@
Параметры.Свойство("СписокИнтервал", СписокИнтервал);
// Титулы для групповой отправки
+ Элементы.ТекущийТитул.СписокВыбора.Добавить(ПредопределенноеЗначение("Перечисление.ТипыЭлементовРегламентаЭДО.ЭПЛ_Титул1"), НСтр("ru='ЭПЛ - Оформление'"));
Элементы.ТекущийТитул.СписокВыбора.Добавить(ПредопределенноеЗначение("Перечисление.ТипыЭлементовРегламентаЭДО.ЭПЛ_Титул2"), НСтр("ru='ЭПЛ - Медосмотр'"));
Элементы.ТекущийТитул.СписокВыбора.Добавить(ПредопределенноеЗначение("Перечисление.ТипыЭлементовРегламентаЭДО.ЭПЛ_Титул3"), НСтр("ru='ЭПЛ - Контроль транспорта'"));
Элементы.ТекущийТитул.СписокВыбора.Добавить(ПредопределенноеЗначение("Перечисление.ТипыЭлементовРегламентаЭДО.ЭПЛ_Титул4"), НСтр("ru='ЭПЛ - Показания (выезд)'"));
Элементы.ТекущийТитул.СписокВыбора.Добавить(ПредопределенноеЗначение("Перечисление.ТипыЭлементовРегламентаЭДО.ЭПЛ_Титул5"), НСтр("ru='ЭПЛ - Показания (заезд)'"));
Элементы.ТекущийТитул.СписокВыбора.Добавить(ПредопределенноеЗначение("Перечисление.ТипыЭлементовРегламентаЭДО.ЭПЛ_Титул6"), НСтр("ru='ЭПЛ - Медосмотр (после)'"));
+ Элементы.ТекущийТитул.СписокВыбора.Добавить(ПредопределенноеЗначение("Перечисление.ТипыЭлементовРегламентаЭДО.ЭТрН_Титул1"), НСтр("ru='ЭТрН - Оформление'"));
Элементы.ТекущийТитул.СписокВыбора.Добавить(ПредопределенноеЗначение("Перечисление.ТипыЭлементовРегламентаЭДО.ЭТрН_Титул2"), НСтр("ru='ЭТрН - Погрузка'"));
Элементы.ТекущийТитул.СписокВыбора.Добавить(ПредопределенноеЗначение("Перечисление.ТипыЭлементовРегламентаЭДО.ЭТрН_Титул4"), НСтр("ru='ЭТрН - Разгрузка'"));
@@ -352,6 +354,13 @@
Элементы.ФормаДалее.Доступность = ЗначениеЗаполнено(ТекущийТитул);
+ ТекущийТитулПриИзмененииНаСервере();
+
+КонецПроцедуры
+
+&НаСервере
+Процедура ТекущийТитулПриИзмененииНаСервере()
+ УстановитьТекущийШагПомощника();
КонецПроцедуры
&НаКлиенте
@@ -757,13 +766,29 @@
КонецПроцедуры
+&НаКлиентеНаСервереБезКонтекста
+Функция ТитулТолькоПроверяемИОтправляем(Титул)
+
+ Результат =
+ Титул = ПредопределенноеЗначение("Перечисление.ТипыЭлементовРегламентаЭДО.ЭТрН_Титул1")
+ Или
+ Титул = ПредопределенноеЗначение("Перечисление.ТипыЭлементовРегламентаЭДО.ЭПЛ_Титул1");
+
+ Возврат Результат;
+
+КонецФункции
+
&НаКлиенте
Процедура ДействиеДалее(Команда)
Если НавигацияПараметрФормы = "ВыборТитула" Тогда
НавигацияПараметрФормы = "СписокДокументов";
ИначеЕсли НавигацияПараметрФормы = "СписокДокументов" Тогда
- НавигацияПараметрФормы = "ЗаполнениеДанных";
+ Если ТитулТолькоПроверяемИОтправляем(ТекущийТитул) Тогда
+ НавигацияПараметрФормы = "Отправка";
+ Иначе
+ НавигацияПараметрФормы = "ЗаполнениеДанных";
+ КонецЕсли;
ИначеЕсли НавигацияПараметрФормы = "ЗаполнениеДанных" Тогда
НавигацияПараметрФормы = "Отправка";
ИначеЕсли НавигацияПараметрФормы = "Отправка" Тогда
@@ -778,6 +803,8 @@
ИмяОбъекта = ОбменСГИСЭПДКлиентСервер.ИмяОбъектаПоТитулу(ТекущийТитул);
ИменаРеквизитовДокумента = ПолучитьИменаРеквизитовДокумента();
+ ГрупповоеЗаполнение = 0;
+
СтруктураРеквизитов = Новый ФиксированнаяСтруктура();
ОтображаемыеВерсииТитулов = Новый Структура;
ОтображаемыеВерсииТитулов.Вставить(ЭтотОбъект.ПрефиксТитула, 0);
@@ -799,7 +826,7 @@
УстановитьТекущийШагПомощника();
ИначеЕсли НавигацияПараметрФормы = "Отправка" Тогда
- ЗаполнитьДанныеПоСтрокам();
+ ЗаполнитьДанныеПоСтрокам();
КонецЕсли;
КонецПроцедуры
@@ -1134,9 +1161,41 @@
КонецПроцедуры
+&НаСервереБезКонтекста
+Функция ПолучитьДанныеРеквизитовДляДокумента(СсылкаНаДокумент, Титул)
+
+ СсылкаНаОрганизацию = ОбщегоНазначения.ЗначениеРеквизитаОбъекта(СсылкаНаДокумент, "Организация");
+
+ ДанныеРеквизитовКонтейнер = Неопределено;
+ ОбменСГИСЭПД.ЗаполнитьТаблицуЗначенийРеквизитов(СсылкаНаДокумент, СсылкаНаОрганизацию, ДанныеРеквизитовКонтейнер, Титул);
+
+ ИнформацияПоПрефиксамТитула = ОбменСГИСЭПДКлиентСервер.ПрефиксТитулаПоЭлементуРегламентаЭДО(Титул);
+
+ МассивВерсий = ДанныеРеквизитовКонтейнер[ИнформацияПоПрефиксамТитула.ВПрограмме];
+
+ Возврат ОбменСГИСЭПДКлиентСервер.СкопироватьИзФиксированногоЗначенияРекурсивно(МассивВерсий[МассивВерсий.ВГраница()]);
+
+КонецФункции
+
&НаКлиенте
Процедура СобратьДанные(КонтейнерОтображаемойВерсии)
+ Если ТитулТолькоПроверяемИОтправляем(ТекущийТитул) Тогда
+
+ Документ = ДоступныеДокументы.НайтиПоИдентификатору(КонтейнерОтображаемойВерсии.НомерВерсии - 1);
+
+ Если Документ <> Неопределено Тогда
+
+ РеквизитыДокумента = ПолучитьДанныеРеквизитовДляДокумента(Документ.Ссылка, ТекущийТитул);
+
+ КонтейнерОтображаемойВерсии.СтруктураРеквизитовЗаполнение[КонтейнерОтображаемойВерсии.ПрефиксТитула][КонтейнерОтображаемойВерсии.НомерВерсии] = РеквизитыДокумента;
+
+ КонецЕсли;
+
+ Возврат;
+
+ КонецЕсли;
+
Если КонтейнерОтображаемойВерсии.НомерВерсии = 0 Тогда
КонтейнерРеквизитов = ЭтотОбъект;
Иначе
@@ -1329,12 +1388,19 @@
ГруппаКлючевогоРеквизита = СтрЗаменить(ИмяКлючевогоРеквизита, "ХранимыеДанные", "");
+ ТолькоПроверкаИОтправкаТекущегоТитула = ТитулТолькоПроверяемИОтправляем(ТекущийТитул);
+
Для Каждого Строка Из ДоступныеДокументы Цикл
Если Элементы.ДоступныеДокументы.ПроверитьСтроку(Строка.ПолучитьИдентификатор()) = Ложь Тогда
Продолжить;
КонецЕсли;
Строка.ПометкаПриОтправке = Истина;
КоличествоВыбраноДляОтправки = КоличествоВыбраноДляОтправки + 1;
+
+ Если ТолькоПроверкаИОтправкаТекущегоТитула Тогда
+ Продолжить;
+ КонецЕсли;
+
Для Каждого Колонка Из Элементы.ГруппаЗаполнение.ПодчиненныеЭлементы Цикл
ИмяКолонки = СтрЗаменить(Колонка.Имя, "ДоступныеДокументы", "");
Если ИмяКолонки = "ПредставлениеЗамечаний"
@@ -2150,8 +2216,12 @@
УстановитьВидимостьСтраницыСписокДокументов("Шаг2");
ИначеЕсли НавигацияПараметрФормы = "ЗаполнениеДанных" Тогда
УстановитьВидимостьСтраницыЗаполнениеДанных("Шаг3");
- ИначеЕсли НавигацияПараметрФормы = "Отправка" Или НавигацияПараметрФормы = "Отправлено" Тогда
- УстановитьВидимостьСтраницыОтправка("Шаг4");
+ ИначеЕсли НавигацияПараметрФормы = "Отправка" Или НавигацияПараметрФормы = "Отправлено" Тогда
+ Если ТитулТолькоПроверяемИОтправляем(ТекущийТитул) Тогда
+ УстановитьВидимостьСтраницыОтправка("Шаг3");
+ Иначе
+ УстановитьВидимостьСтраницыОтправка("Шаг4");
+ КонецЕсли;
Иначе
УстановитьВидимостьСтраницыНачало("Шаг1");
КонецЕсли;
@@ -2326,12 +2396,18 @@
ИменаРеквизитов = Новый Массив;
+ ИмяКлючевогоРеквизита = "";
+
МассивТипов = Новый Массив;
МассивТипов.Добавить(Тип("СправочникСсылка.ХранимыеДанныеЭПД"));
МассивТипов.Добавить(Тип("Строка"));
ТипКлючевогоРеквизита = Новый ОписаниеТипов(МассивТипов, , Новый КвалификаторыСтроки(150));
- Если ТекущийТитул = ПредопределенноеЗначение("Перечисление.ТипыЭлементовРегламентаЭДО.ЭПЛ_Титул2") Тогда
+ Если ТекущийТитул = ПредопределенноеЗначение("Перечисление.ТипыЭлементовРегламентаЭДО.ЭПЛ_Титул1") Тогда
+ ИмяКлючевогоРеквизита = "ХранимыеДанныеТитулОформлениеТранспортноеСредство";
+ ЗаголовокКлючевогоРеквизита = НСтр("ru='Транспортное средство'");
+ ИменаРеквизитов.Добавить(ИмяКлючевогоРеквизита);
+ ИначеЕсли ТекущийТитул = ПредопределенноеЗначение("Перечисление.ТипыЭлементовРегламентаЭДО.ЭПЛ_Титул2") Тогда
ИмяКлючевогоРеквизита = "ХранимыеДанныеТитулМедосмотрВодитель";
ЗаголовокКлючевогоРеквизита = НСтр("ru='Водитель'");
ИменаРеквизитов.Добавить(ИмяКлючевогоРеквизита);
@@ -2351,7 +2427,11 @@
ИмяКлючевогоРеквизита = "ХранимыеДанныеТитулМедосмотрПослеВодитель";
ЗаголовокКлючевогоРеквизита = НСтр("ru='Водитель'");
ИменаРеквизитов.Добавить(ИмяКлючевогоРеквизита);
-
+
+ ИначеЕсли ТекущийТитул = ПредопределенноеЗначение("Перечисление.ТипыЭлементовРегламентаЭДО.ЭТрН_Титул1") Тогда
+ ИмяКлючевогоРеквизита = "СсылкаТитулГрузоотправителяГрузополучатель";
+ ЗаголовокКлючевогоРеквизита = НСтр("ru='Грузополучатель'");
+ ТипКлючевогоРеквизита = Новый ОписаниеТипов("Строка");
ИначеЕсли ТекущийТитул = ПредопределенноеЗначение("Перечисление.ТипыЭлементовРегламентаЭДО.ЭТрН_Титул2") Тогда
ИмяКлючевогоРеквизита = "ХранимыеДанныеТитулГрузоотправителяТранспортноеСредство";
ЗаголовокКлючевогоРеквизита = НСтр("ru='Транспортное средство'");
@@ -2370,13 +2450,30 @@
ОписаниеКлючевогоРеквизита.АвтоОтметкаНезаполненного = Истина;
СтруктураРеквизитовТитула.Вставить(ИмяКлючевогоРеквизита, ОписаниеКлючевогоРеквизита);
- РеквизитыДобавление = Новый Массив;
-
- СтраницаТитула = Элементы.Найти("Страница" + ЭтотОбъект.ПрефиксТитула);
- СобратьРеквизитыРекурсивно(СтраницаТитула, СтруктураРеквизитовТитула);
+ Если ТитулТолькоПроверяемИОтправляем(ТекущийТитул) Тогда
+
+ Если ТекущийТитул = ПредопределенноеЗначение("Перечисление.ТипыЭлементовРегламентаЭДО.ЭТрН_Титул1") Тогда
+
+ ИмяРеквизита = "СсылкаТитулГрузоотправителяПеревозчик";
+ ОписаниеРеквизита = НовыйОписаниеРеквизита();
+ ОписаниеРеквизита.Тип = Новый ОписаниеТипов("Строка");
+ ОписаниеРеквизита.Заголовок = "Перевозчик";
+ ОписаниеРеквизита.АвтоОтметкаНезаполненного = Истина;
+ СтруктураРеквизитовТитула.Вставить(ИмяРеквизита, ОписаниеРеквизита);
+
+ КонецЕсли;
+
+ Иначе
+
+ СтраницаТитула = Элементы.Найти("Страница" + ЭтотОбъект.ПрефиксТитула);
+ СобратьРеквизитыРекурсивно(СтраницаТитула, СтруктураРеквизитовТитула);
+
+ КонецЕсли;
ОписаниеРеквизитовТекущегоТитула = ОбменСГИСЭПДКлиентСервер.СкопироватьВФиксированноеЗначенияРекурсивно(СтруктураРеквизитовТитула);
+ РеквизитыДобавление = Новый Массив;
+
ДобавленоПредставлениеЗамечаний = Ложь;
ПроверяемыеНаЗаполненностьТаблицы = Новый Массив;
Для Каждого КиЗ Из СтруктураРеквизитовТитула Цикл
@@ -2598,8 +2695,13 @@
НужныДанныеДонора = Истина;
+ Иначе
+
+ Запрос.УстановитьПараметр("ТитулДонор", ТитулДонор);
+
КонецЕсли;
+
МожноЗаполнитьПоМП = Ложь;
Если ОбщегоНазначения.ПодсистемаСуществует("ЭлектронноеВзаимодействие.ОбменСГИСЭПД.СервисВзаимодействияМПЭПД") Тогда
МодульСервисВзаимодействияМПЭПДКлиентСервер = ОбщегоНазначения.ОбщийМодуль("СервисВзаимодействияМПЭПДКлиентСервер");
@@ -2625,12 +2727,23 @@
Запрос.УстановитьПараметр("ПроверяемыеНаЗаполненностьТаблицы", ПроверяемыеНаЗаполненностьТаблицы);
ДоступныеСостоянияЭДО = Новый Массив;
- ДоступныеСостоянияЭДО.Добавить(Перечисления.СостоянияДокументовЭДО.ТребуетсяОтправка);
- ДоступныеСостоянияЭДО.Добавить(Перечисления.СостоянияДокументовЭДО.ТребуетсяПовторнаяОтправка);
- ДоступныеСостоянияЭДО.Добавить(Перечисления.СостоянияДокументовЭДО.ТребуетсяПодписание);
- ДоступныеСостоянияЭДО.Добавить(Перечисления.СостоянияДокументовЭДО.ТребуетсяУточнение);
- // Временно, сейчас нужно для ЭПЛ
- ДоступныеСостоянияЭДО.Добавить(Перечисления.СостоянияДокументовЭДО.ОжидаетсяПодтверждение);
+
+ Если ТитулТолькоПроверяемИОтправляем(ТекущийТитул) Тогда
+
+ ДоступныеСостоянияЭДО.Добавить(Перечисления.СостоянияДокументовЭДО.НеСформирован);
+ ДоступныеСостоянияЭДО.Добавить(Перечисления.СостоянияДокументовЭДО.ТребуетсяОтправка);
+ ДоступныеСостоянияЭДО.Добавить(Перечисления.СостоянияДокументовЭДО.ТребуетсяПодписание);
+
+ Иначе
+
+ ДоступныеСостоянияЭДО.Добавить(Перечисления.СостоянияДокументовЭДО.ТребуетсяОтправка);
+ ДоступныеСостоянияЭДО.Добавить(Перечисления.СостоянияДокументовЭДО.ТребуетсяПовторнаяОтправка);
+ ДоступныеСостоянияЭДО.Добавить(Перечисления.СостоянияДокументовЭДО.ТребуетсяПодписание);
+ ДоступныеСостоянияЭДО.Добавить(Перечисления.СостоянияДокументовЭДО.ТребуетсяУточнение);
+ // Временно, сейчас нужно для ЭПЛ
+ ДоступныеСостоянияЭДО.Добавить(Перечисления.СостоянияДокументовЭДО.ОжидаетсяПодтверждение);
+
+ КонецЕсли;
Запрос.УстановитьПараметр("ДоступныеСостоянияЭДО", ДоступныеСостоянияЭДО);
@@ -3242,8 +3355,14 @@
СтруктураНавигации.Вставить(НавигацияПомощниковСВозвратомЭПД.ИмяШага(1), СтруктураШагаНачало(1));
СтруктураНавигации.Вставить(НавигацияПомощниковСВозвратомЭПД.ИмяШага(2), СтруктураШагаСписокДокументов(2));
- СтруктураНавигации.Вставить(НавигацияПомощниковСВозвратомЭПД.ИмяШага(3), СтруктураШагаЗаполнениеДанных(3));
- СтруктураНавигации.Вставить(НавигацияПомощниковСВозвратомЭПД.ИмяШага(4), СтруктураШагаОтправка(4));
+
+ Если ТитулТолькоПроверяемИОтправляем(ТекущийТитул) Тогда
+ СтруктураНавигации.Вставить(НавигацияПомощниковСВозвратомЭПД.ИмяШага(3), СтруктураШагаОтправка(3));
+ Иначе
+ СтруктураНавигации.Вставить(НавигацияПомощниковСВозвратомЭПД.ИмяШага(3), СтруктураШагаЗаполнениеДанных(3));
+ СтруктураНавигации.Вставить(НавигацияПомощниковСВозвратомЭПД.ИмяШага(4), СтруктураШагаОтправка(4));
+ КонецЕсли;
+
Возврат СтруктураНавигации;
diff --git a/src/DataProcessors/ЖурналДокументовПродажи/Forms/СписокДокументов/Ext/Form/Module.bsl b/src/DataProcessors/ЖурналДокументовПродажи/Forms/СписокДокументов/Ext/Form/Module.bsl
index 1743dc910..ee45ad159 100644
--- a/src/DataProcessors/ЖурналДокументовПродажи/Forms/СписокДокументов/Ext/Form/Module.bsl
+++ b/src/DataProcessors/ЖурналДокументовПродажи/Forms/СписокДокументов/Ext/Form/Module.bsl
@@ -577,7 +577,8 @@
ЭтоКомандаТекущиеДелаЭДО = СтрНайти(Команда.Имя, "ТекущиеДелаЭДО");
ЭтоКомандаПроизвольныйДокумент = СтрНайти(Команда.Имя, "ПроизвольныйДокумент");
ЭтоКомандаОтправитьЧерезБизнесСеть = СтрНайти(Команда.Имя, "ОтправитьЧерезБизнесСеть");
- Если Не ЭтоКомандаТекущиеДелаЭДО и Не ЭтоКомандаПроизвольныйДокумент Тогда
+ ЭтоКомандаShare = СтрНайти(Команда.Имя, "Share");
+ Если Не ЭтоКомандаТекущиеДелаЭДО и Не ЭтоКомандаПроизвольныйДокумент и Не ЭтоКомандаShare Тогда
Если ТекущиеДанные <> Неопределено Тогда
ТекущийДокумент = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(ТекущиеДанные, "Ссылка");
Если ЗначениеЗаполнено(ТекущийДокумент) Тогда
@@ -626,6 +627,17 @@
ПоказатьПредупреждение(, НСтр("ru = 'Для данного типа документов отправка/получение по ЭДО не предусмотрено.'"));
Возврат;
КонецЕсли;
+
+ Если ЭтоКомандаShare Тогда
+ Если ТипЗнч(ТекущиеДанные.Ссылка) <> Тип("ДокументСсылка.РеализацияТоваровУслуг")
+ И ТипЗнч(ТекущиеДанные.Ссылка) <> Тип("ДокументСсылка.АктВыполненныхРабот")
+ И ТипЗнч(ТекущиеДанные.Ссылка) <> Тип("ДокументСсылка.РеализацияУслугПрочихАктивов")
+ И ТипЗнч(ТекущиеДанные.Ссылка) <> Тип("ДокументСсылка.КорректировкаРеализации") Тогда
+
+ ПоказатьПредупреждение(, НСтр("ru = 'Для данного типа документов не поддерживается возможность делиться по ссылке.'"));
+ Возврат;
+ КонецЕсли;
+ КонецЕсли;
ЭлектронноеВзаимодействиеКлиент.ВыполнитьПодключаемуюКомандуЭДО(Команда, ЭтаФорма, Элементы.СписокДокументыПродажи);
diff --git a/src/DataProcessors/ЖурналУчетаОригиналовПервичныхДокументов/Forms/СписокДокументов/Ext/Form.xml b/src/DataProcessors/ЖурналУчетаОригиналовПервичныхДокументов/Forms/СписокДокументов/Ext/Form.xml
index bf094a35d..140bfd8d6 100644
--- a/src/DataProcessors/ЖурналУчетаОригиналовПервичныхДокументов/Forms/СписокДокументов/Ext/Form.xml
+++ b/src/DataProcessors/ЖурналУчетаОригиналовПервичныхДокументов/Forms/СписокДокументов/Ext/Form.xml
@@ -681,6 +681,7 @@
ПО РеестрДокументов.Ссылка = СостоянияОригиналов.Владелец
ГДЕ
РеестрДокументов.Проведен
+ И НЕ РеестрДокументов.ДополнительнаяЗапись
{ГДЕ
РеестрДокументов.ДатаДокументаИБ >= &НачалоПериода
И РеестрДокументов.ДатаДокументаИБ <= &КонецПериода}
diff --git a/src/DataProcessors/ЗаполнениеКорректировкиНазначения/Forms/ФормаОбъекта/Ext/Form.xml b/src/DataProcessors/ЗаполнениеКорректировкиНазначения/Forms/ФормаОбъекта/Ext/Form.xml
index 486286af9..bc24ed0da 100644
--- a/src/DataProcessors/ЗаполнениеКорректировкиНазначения/Forms/ФормаОбъекта/Ext/Form.xml
+++ b/src/DataProcessors/ЗаполнениеКорректировкиНазначения/Forms/ФормаОбъекта/Ext/Form.xml
@@ -1003,18 +1003,13 @@
-
- 75
- 70
-
-
- ru
- По назначению %1 всего на складах потребность: %2 %4, в наличии: %3 %4
-
-
-
-
-
+
+ ИтогиНазначениеИсточник
+ None
+ false
+
+
+
@@ -1026,18 +1021,13 @@
-
+
+ ИтогиНазначениеИсточник
+ None
false
- true
-
-
- ru
- По назначению %1 всего на складах потребность: %2 %4, в наличии: %3 %4
-
-
-
-
-
+
+
+
@@ -1585,25 +1575,79 @@
-
- ИтогиОбеспечено
- true
- None
- Right
- 6
- false
- 6
- false
-
+
+
ru
- ЧДЦ=3; ЧН=0,000
+ Страницы итоги обеспечено
-
- style:ИтогиФон
-
-
-
+
+ None
+
+
+
+
+
+ ru
+ Страница итоги обеспечено
+
+
+
+
+
+ ИтогиОбеспечено
+ true
+ None
+ Right
+ 6
+ false
+ 6
+ false
+
+
+ ru
+ ЧДЦ=3; ЧН=0,000
+
+
+ style:ИтогиФон
+
+
+
+
+
+
+
+
+ ru
+ Страница итоги обеспечено превышение
+
+
+
+
+
+ ИтогиОбеспечено
+ true
+ None
+ Right
+ 6
+ false
+ 6
+ false
+
+
+ ru
+ ЧДЦ=3; ЧН=0,000
+
+
+ style:ПросроченныеДанныеЦвет
+ style:ИтогиФон
+
+
+
+
+
+
+
ИтогиУпаковка
true
@@ -1613,25 +1657,79 @@
-
- ИтогиНаСкладе
- true
- None
- Right
- 6
- false
- 6
- false
-
+
+
ru
- ЧДЦ=3; ЧН=0,000
+ Страницы итоги на складе
-
- style:ИтогиФон
-
-
-
+
+ None
+
+
+
+
+
+ ru
+ Страница итоги на складе
+
+
+
+
+
+ ИтогиНаСкладе
+ true
+ None
+ Right
+ 6
+ false
+ 6
+ false
+
+
+ ru
+ ЧДЦ=3; ЧН=0,000
+
+
+ style:ИтогиФон
+
+
+
+
+
+
+
+
+ ru
+ Страница итоги на складе превышение
+
+
+
+
+
+ ИтогиНаСкладе
+ true
+ None
+ Right
+ 6
+ false
+ 6
+ false
+
+
+ ru
+ ЧДЦ=3; ЧН=0,000
+
+
+ style:ПросроченныеДанныеЦвет
+ style:ИтогиФон
+
+
+
+
+
+
+
ИтогиУпаковка
true
@@ -1695,25 +1793,79 @@
-
- ИтогиОбеспеченоСводно
- true
- None
- Right
- 6
- false
- 6
- false
-
+
+
ru
- ЧДЦ=3; ЧН=0,000
+ Страницы итоги обеспечено сводно
-
- style:ИтогиФон
-
-
-
+
+ None
+
+
+
+
+
+ ru
+ Страница итоги обеспечено сводно
+
+
+
+
+
+ ИтогиОбеспеченоСводно
+ true
+ None
+ Right
+ 6
+ false
+ 6
+ false
+
+
+ ru
+ ЧДЦ=3; ЧН=0,000
+
+
+ style:ИтогиФон
+
+
+
+
+
+
+
+
+ ru
+ Страница итоги обеспечено сводно превышение
+
+
+
+
+
+ ИтогиОбеспеченоСводно
+ true
+ None
+ Right
+ 6
+ false
+ 6
+ false
+
+
+ ru
+ ЧДЦ=3; ЧН=0,000
+
+
+ style:ПросроченныеДанныеЦвет
+ style:ИтогиФон
+
+
+
+
+
+
+
ИтогиУпаковка
true
@@ -1723,25 +1875,79 @@
-
- ИтогиНаСкладеСводно
- true
- None
- Right
- 6
- false
- 6
- false
-
+
+
ru
- ЧДЦ=3; ЧН=0,000
+ Страницы итоги на складе сводно
-
- style:ИтогиФон
-
-
-
+
+ None
+
+
+
+
+
+ ru
+ Страница итоги на складе сводно
+
+
+
+
+
+ ИтогиНаСкладеСводно
+ true
+ None
+ Right
+ 6
+ false
+ 6
+ false
+
+
+ ru
+ ЧДЦ=3; ЧН=0,000
+
+
+ style:ИтогиФон
+
+
+
+
+
+
+
+
+ ru
+ Страница итоги на складе сводно превышение
+
+
+
+
+
+ ИтогиНаСкладеСводно
+ true
+ None
+ Right
+ 6
+ false
+ 6
+ false
+
+
+ ru
+ ЧДЦ=3; ЧН=0,000
+
+
+ style:ПросроченныеДанныеЦвет
+ style:ИтогиФон
+
+
+
+
+
+
+
ИтогиУпаковка
true
@@ -3419,16 +3625,6 @@
xs:boolean
-
-
- v8ui:Color
-
-
-
-
- v8ui:Color
-
-
@@ -4131,6 +4327,21 @@
+
+
+
+ ru
+ Итоги назначение источник
+
+
+
+ xs:string
+
+ 0
+ Variable
+
+
+
diff --git a/src/DataProcessors/ЗаполнениеКорректировкиНазначения/Forms/ФормаОбъекта/Ext/Form/Module.bsl b/src/DataProcessors/ЗаполнениеКорректировкиНазначения/Forms/ФормаОбъекта/Ext/Form/Module.bsl
index 333f65f54..8591bfd2c 100644
--- a/src/DataProcessors/ЗаполнениеКорректировкиНазначения/Forms/ФормаОбъекта/Ext/Form/Module.bsl
+++ b/src/DataProcessors/ЗаполнениеКорректировкиНазначения/Forms/ФормаОбъекта/Ext/Form/Module.bsl
@@ -51,10 +51,7 @@
ВызватьИсключение ТекстИсключения;
КонецЕсли;
-
- ЦветОтрицательногоЧисла = ЦветаСтиля.ЦветОтрицательногоЧисла;
- ЦветТекстаПоля = ЦветаСтиля.ЦветТекстаПоля;
-
+
ТолькоЗаказыОрганизации = ЗначениеЗаполнено(Организация)
И (ВидОперации = Перечисления.ВидыОперацийКорректировкиНазначения.РезервироватьИКорректировать
Или ВидОперации = Перечисления.ВидыОперацийКорректировкиНазначения.СнятьРезервПоМногимНазначениям
@@ -66,8 +63,7 @@
ВидОперацииПереключатель = ВидОперации = Перечисления.ВидыОперацийКорректировкиНазначения.РезервироватьИКорректировать;
Элементы.СтраницыОтображениеКартинкиИзлишка.ТекущаяСтраница = Элементы.СтраницаНеОтображатьКартинкуИзлишек;
- Элементы.ИтогиНазначениеИсточникСКартинкой.Заголовок = "";
- Элементы.ИтогиНазначениеИсточник.Заголовок = "";
+ ИтогиНазначениеИсточник = "";
НастроитьЭлементыФормыПоВидуОперации();
@@ -2717,7 +2713,7 @@
Элементы.СтраницыИтогиВПодвалеШагаПоСкладам.ТекущаяСтраница = Элементы.СтраницаОтображатьИтогиВПодвалеПоСкладам;
Если ТекущаяСтрока = Неопределено Тогда
Элементы.СтраницыИтогиВПодвалеШагаПоСкладам.ТекущаяСтраница = Элементы.СтраницаНеОтображатьИтогиВПодвалеПоСкладам;
- Элементы.ИтогиНазначениеИсточник.Заголовок = "";
+ ИтогиНазначениеИсточник = "";
Элементы.СтраницыОтображениеКартинкиИзлишка.ТекущаяСтраница = Элементы.СтраницаНеОтображатьКартинкуИзлишек;
Возврат;
КонецЕсли;
@@ -2740,25 +2736,25 @@
КонецЕсли;
Если ИтогиОбеспечено < 0 Или ИтогиОбеспечено > ИтогиПотребность Тогда
- Элементы.ИтогиОбеспечено.ЦветТекста = ЦветОтрицательногоЧисла;
+ Элементы.СтраницыИтогиОбеспечено.ТекущаяСтраница = Элементы.СтраницаИтогиОбеспеченоПревышение;
Иначе
- Элементы.ИтогиОбеспечено.ЦветТекста = ЦветТекстаПоля;
+ Элементы.СтраницыИтогиОбеспечено.ТекущаяСтраница = Элементы.СтраницаИтогиОбеспечено;
КонецЕсли;
Если ИтогиНаСкладе < 0 Или ИтогиНаСкладе > ИтогиПотребность Тогда
- Элементы.ИтогиНаСкладе.ЦветТекста = ЦветОтрицательногоЧисла;
+ Элементы.СтраницыИтогиНаСкладе.ТекущаяСтраница = Элементы.СтраницаИтогиНаСкладеПревышение;
Иначе
- Элементы.ИтогиНаСкладе.ЦветТекста = ЦветТекстаПоля;
+ Элементы.СтраницыИтогиНаСкладе.ТекущаяСтраница = Элементы.СтраницаИтогиНаСкладе;
КонецЕсли;
Если ИтогиОбеспеченоСводно < 0 Или ИтогиОбеспеченоСводно > ИтогиПотребностьСводно Тогда
- Элементы.ИтогиОбеспеченоСводно.ЦветТекста = ЦветОтрицательногоЧисла;
+ Элементы.СтраницыИтогиОбеспеченоСводно.ТекущаяСтраница = Элементы.СтраницаИтогиОбеспеченоСводноПревышение;
Иначе
- Элементы.ИтогиОбеспеченоСводно.ЦветТекста = ЦветТекстаПоля;
+ Элементы.СтраницыИтогиОбеспеченоСводно.ТекущаяСтраница = Элементы.СтраницаИтогиОбеспеченоСводно;
КонецЕсли;
Если ИтогиНаСкладеСводно < 0 Или ИтогиНаСкладеСводно > ИтогиПотребностьСводно Тогда
- Элементы.ИтогиНаСкладеСводно.ЦветТекста = ЦветОтрицательногоЧисла;
+ Элементы.СтраницыИтогиНаСкладеСводно.ТекущаяСтраница = Элементы.СтраницаИтогиНаСкладеСводноПревышение;
Иначе
- Элементы.ИтогиНаСкладеСводно.ЦветТекста = ЦветТекстаПоля;
+ Элементы.СтраницыИтогиНаСкладеСводно.ТекущаяСтраница = Элементы.СтраницаИтогиНаСкладеСводно;
КонецЕсли;
СтрокаИтогов = ИтогиПоНазначениям.НайтиПоИдентификатору(СтрокаИтогов.ИдентификаторСтрокиИтогов);
@@ -2789,14 +2785,15 @@
СтрокаИтоговИсточника = ИтогиИсточниковОбеспечения.НайтиПоИдентификатору(Строка.ИдентификаторСтрокиИтоговИсточника);
Если ЗначениеЗаполнено(СтрокаИтоговИсточника.ИсходноеНазначение) Тогда
Текст = НСтр("ru = 'По назначению-источнику %1 на всех складах потребность: %2 %4, в наличии: %3 %4'");
- Элементы.ИтогиНазначениеИсточник.Заголовок = СтрШаблон(Текст,
- СтрокаИтоговИсточника.ИсходноеНазначение, СтрокаИтоговИсточника.Потребность, СтрокаИтоговИсточника.Запас, ИтогиУпаковка)
Иначе
Текст = НСтр("ru = 'На всех складах необособленная потребность: %2 %4, в наличии: %3 %4'");
- Элементы.ИтогиНазначениеИсточник.Заголовок = СтрШаблон(Текст,
- СтрокаИтоговИсточника.ИсходноеНазначение, СтрокаИтоговИсточника.Потребность, СтрокаИтоговИсточника.Запас, ИтогиУпаковка)
КонецЕсли;
- Элементы.ИтогиНазначениеИсточникСКартинкой.Заголовок = Элементы.ИтогиНазначениеИсточник.Заголовок;
+ ИтогиНазначениеИсточник = СтрШаблон(
+ Текст,
+ СтрокаИтоговИсточника.ИсходноеНазначение,
+ Формат(СтрокаИтоговИсточника.Потребность, "ЧДЦ=3; ЧН=0,000"),
+ Формат(СтрокаИтоговИсточника.Запас, "ЧДЦ=3; ЧН=0,000"),
+ ИтогиУпаковка);
Если Строка.КартинкаИзлишекИсточника = 0 Тогда
Элементы.СтраницыОтображениеКартинкиИзлишка.ТекущаяСтраница = Элементы.СтраницаОтображатьКартинкуИзлишек;
Иначе
diff --git a/src/DataProcessors/ИнтерфейсДокументовЭДО/Forms/ЗагрузкаФайлов/Ext/Form/Module.bsl b/src/DataProcessors/ИнтерфейсДокументовЭДО/Forms/ЗагрузкаФайлов/Ext/Form/Module.bsl
index 21f0806ea..de2c6eca8 100644
--- a/src/DataProcessors/ИнтерфейсДокументовЭДО/Forms/ЗагрузкаФайлов/Ext/Form/Module.bsl
+++ b/src/DataProcessors/ИнтерфейсДокументовЭДО/Forms/ЗагрузкаФайлов/Ext/Form/Module.bsl
@@ -1199,7 +1199,8 @@
СтрокаФайла.Распознан = Истина;
КонецЕсли;
- Если Не ЭлектронныеДокументыЭДО.ТипДокументаПоддерживаетЗагрузкуИзФайлаВФормализованномВиде(Содержание.ТипДокумента) Тогда
+ Если Не ЭлектронныеДокументыЭДО.ТипДокументаПоддерживаетЗагрузкуИзФайлаВФормализованномВиде(
+ Содержание.ТипДокумента, Содержание.ТипРегламента) Тогда
Возврат;
КонецЕсли;
ОписаниеОшибки = "";
diff --git a/src/DataProcessors/ИнтерфейсДокументовЭДО/Forms/ПомощникФормированияДокументов/Ext/Form.xml b/src/DataProcessors/ИнтерфейсДокументовЭДО/Forms/ПомощникФормированияДокументов/Ext/Form.xml
index 14f9422dd..269546c78 100644
--- a/src/DataProcessors/ИнтерфейсДокументовЭДО/Forms/ПомощникФормированияДокументов/Ext/Form.xml
+++ b/src/DataProcessors/ИнтерфейсДокументовЭДО/Forms/ПомощникФормированияДокументов/Ext/Form.xml
@@ -997,7 +997,6 @@
- false
- ОшибкиПриФормированииДокументовПоФайлам
SearchStringRepresentation
@@ -1006,7 +1005,6 @@
- false
- ОшибкиПриФормированииДокументовПоФайлам
ViewStatusRepresentation
@@ -1015,7 +1013,6 @@
- false
- ОшибкиПриФормированииДокументовПоФайлам
SearchControl
diff --git a/src/DataProcessors/ИнтерфейсДокументовЭДО/Forms/ПроверкаПодписей/Ext/Form/Module.bsl b/src/DataProcessors/ИнтерфейсДокументовЭДО/Forms/ПроверкаПодписей/Ext/Form/Module.bsl
index d9c6bf831..716ce4c73 100644
--- a/src/DataProcessors/ИнтерфейсДокументовЭДО/Forms/ПроверкаПодписей/Ext/Form/Module.bsl
+++ b/src/DataProcessors/ИнтерфейсДокументовЭДО/Forms/ПроверкаПодписей/Ext/Form/Module.bsl
@@ -88,18 +88,15 @@
ДополнительныеПараметры = Новый Структура;
ДополнительныеПараметры.Вставить("КонтекстДиагностики", КонтекстДиагностики);
ДополнительныеПараметры.Вставить("ИдентификаторТекущегоФоновогоЗадания", ДлительнаяОперация.ИдентификаторЗадания);
- ДополнительныеПараметры.Вставить("КонтекстОжиданияОперации", КонтекстОжиданияОперации);
+ ДополнительныеПараметры.Вставить("ИдентификаторОперации", КонтекстОжиданияОперации.ИдентификаторОперации);
ДополнительныеПараметры.Вставить("ЭтоПрерываниеНаКлиенте", Ложь);
ОповещениеЗавершениеПроверкиПодписей =
Новый ОписаниеОповещения("ОбработатьЗавершениеПроверкиПодписей", ЭтотОбъект, ДополнительныеПараметры);
ОжиданиеОперацийБЭДКлиент.УстановитьОбработчикПрерывания(ОповещениеЗавершениеПроверкиПодписей, КонтекстОжиданияОперации);
- ОжиданиеОперацийБЭДКлиент.ОтметитьНачалоВыполнения(КонтекстОжиданияОперации);
ОжиданиеОперацийБЭДКлиент.ОткрытьФормуОжидания(Неопределено, КонтекстОжиданияОперации);
- ДополнительныеПараметры.Вставить("ОповещениеОЗавершении", ОповещениеЗавершениеПроверкиПодписей);
-
ОповещениеПослеПроверкиНаСервере =
Новый ОписаниеОповещения("ОбработатьРезультатПроверкиПодписейСервера", ЭтотОбъект, ДополнительныеПараметры);
@@ -128,17 +125,20 @@
Результат = ОбщегоНазначенияБЭДКлиент.РезультатВыполненияФоновогоЗадания(
НСтр("ru = 'Обработка результатов проверки подписи на сервере'"),
РезультатВыполненияФоновогоЗадания, ДополнительныеПараметры.КонтекстДиагностики);
+
+ ОповещениеЗавершениеПроверкиПодписей =
+ Новый ОписаниеОповещения("ОбработатьЗавершениеПроверкиПодписей", ЭтотОбъект, ДополнительныеПараметры);
Если Результат = Неопределено Тогда
- ВыполнитьОбработкуОповещения(ДополнительныеПараметры.ОповещениеОЗавершении, Ложь);
+ ВыполнитьОбработкуОповещения(ОповещениеЗавершениеПроверкиПодписей, Ложь);
Возврат;
КонецЕсли;
Если Результат.Успех Тогда
- ВыполнитьОбработкуОповещения(ДополнительныеПараметры.ОповещениеОЗавершении, Истина);
+ ВыполнитьОбработкуОповещения(ОповещениеЗавершениеПроверкиПодписей, Истина);
Возврат;
ИначеЕсли Не ЗначениеЗаполнено(Результат.ПодписиДляПроверки) Тогда
- ВыполнитьОбработкуОповещения(ДополнительныеПараметры.ОповещениеОЗавершении, Ложь);
+ ВыполнитьОбработкуОповещения(ОповещениеЗавершениеПроверкиПодписей, Ложь);
Возврат;
КонецЕсли;
@@ -151,7 +151,8 @@
"ПроверитьПодписиДокументаЗавершение", ЭтотОбъект, ДополнительныеПараметры);
ПараметрыПроверки.ОбработкаПроверкиПодписи = Новый ОписаниеОповещения(
- "ОбработатьРезультатПроверкиПодписиДокумента", ЭлектронныеДокументыЭДОКлиент, ПараметрыПроверки);
+ "ОбработатьРезультатПроверкиПодписиДокумента", ЭлектронныеДокументыЭДОКлиент,
+ ОбщегоНазначенияКлиент.СкопироватьРекурсивно(ПараметрыПроверки));
ПараметрыПроверки.ОперацияМенеджераКриптографии = "ПроверкаПодписи";
ПараметрыПроверки.КонтекстДиагностики = ДополнительныеПараметры.КонтекстДиагностики;
@@ -212,10 +213,9 @@
ДополнительныеПараметры.ИдентификаторТекущегоФоновогоЗадания);
КонецЕсли;
- ДополнительныеПараметры.КонтекстОжиданияОперации.ОперацияВыполняется = Ложь;
- ОжиданиеОперацийБЭДКлиент.ЗакрытьФормуОжидания(ДополнительныеПараметры.КонтекстОжиданияОперации);
-
Оповестить("ЗавершениеПроверкиПодписей");
+ ОжиданиеОперацийБЭДКлиент.ЗакрытьФормуОжиданияПоИдентификаторуОперации(
+ ДополнительныеПараметры.ИдентификаторОперации);
ЭтоРезультатДлительнойОперации =
ТипЗнч(РезультатОперации) = Тип("Структура") И РезультатОперации.Свойство("Статус");
diff --git a/src/DataProcessors/ИнтерфейсДокументовЭДО/Forms/ТекущиеДелаПоЭДО/Ext/Form.xml b/src/DataProcessors/ИнтерфейсДокументовЭДО/Forms/ТекущиеДелаПоЭДО/Ext/Form.xml
index b8365d2ba..60e1341e1 100644
--- a/src/DataProcessors/ИнтерфейсДокументовЭДО/Forms/ТекущиеДелаПоЭДО/Ext/Form.xml
+++ b/src/DataProcessors/ИнтерфейсДокументовЭДО/Forms/ТекущиеДелаПоЭДО/Ext/Form.xml
@@ -1183,6 +1183,18 @@
+
+ ВходящиеЭД.КоличествоНепрочитанныхСообщений
+ false
+
+
+ ru
+ Новые сообщения
+
+
+
+
+
true
@@ -1541,6 +1553,18 @@
+
+ ИсходящиеЭД.КоличествоНепрочитанныхСообщений
+ false
+
+
+ ru
+ Новые сообщения
+
+
+
+
+
ИсходящиеЭД.ДоговорКонтрагента
@@ -3659,13 +3683,6 @@
cfg:DynamicList
- ~ВходящиеЭД.ВидЭД
- ~ВходящиеЭД.ВладелецЭД
- ~ВходящиеЭД.Документооборот
- ~ВходящиеЭД.ИндексКатринкиПакета
- ~ВходящиеЭД.ИндексКоннектора
- ~ВходящиеЭД.ПоследнийДокументПакета
- ~ВходящиеЭД.Ссылка
ВходящиеЭД.DefaultPicture
ВходящиеЭД.ДатаПакета
ВходящиеЭД.ИдентификаторПакета
@@ -3743,7 +3760,8 @@
ИНАЧЕ СведенияОПрочтенииПереопределяемый.Прочтен
КОНЕЦ КАК Прочтен,
ЕСТЬNULL(ПроверкиЭлектронныхПодписейЭДОПереопределяемый.ЕстьНевалидныеПодписиПоМЧД, ЛОЖЬ) КАК
- ЕстьНевалидныеПодписиПоМЧД
+ ЕстьНевалидныеПодписиПоМЧД,
+ ВЫРАЗИТЬ(0 КАК Число(10)) КАК КоличествоНепрочитанныхСообщений
{ВЫБРАТЬ
КонтрольОтраженияВУчете}
ИЗ
@@ -3767,15 +3785,16 @@
ПО ЭлектронныеДокументыПереопределяемый.Ссылка = КонтрольОтраженияПереопределяемый.ЭлектронныйДокумент}
ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.СведенияОПрочтенииДокументовЭДО КАК СведенияОПрочтенииПереопределяемый
ПО ЭлектронныеДокументыПереопределяемый.Ссылка = СведенияОПрочтенииПереопределяемый.Объект
- И (СведенияОПрочтенииПереопределяемый.Пользователь = &Пользователь)
+ И СведенияОПрочтенииПереопределяемый.Пользователь = &Пользователь
ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ПроверкиЭлектронныхПодписейЭДО КАК ПроверкиЭлектронныхПодписейЭДОПереопределяемый
ПО ЭлектронныеДокументыПереопределяемый.Ссылка = ПроверкиЭлектронныхПодписейЭДОПереопределяемый.ЭлектронныйДокумент
+ {ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ТекстовыеСообщенияДокументовЭДО КАК ТекстовыеСообщенияДокументовЭДО
+ ПО ТекстовыеСообщенияДокументовЭДО.ЭлектронныйДокумент = ЭлектронныеДокументыПереопределяемый.Ссылка}
ГДЕ
ВЫБОР
КОГДА НЕ &ПоказыватьПомеченныеНаУдаление
ТОГДА НЕ ЭлектронныеДокументыПереопределяемый.ПометкаУдаления
- ИНАЧЕ
- ИСТИНА
+ ИНАЧЕ ИСТИНА
КОНЕЦ
{ГДЕ
СостоянияЭДОПереопределяемый.Состояние КАК СостояниеЭДО,
@@ -3787,6 +3806,15 @@
ГДЕ
ОбъектыУчетаДокументооборотаЭДО.ЭлектронныйДокумент = ЭлектронныеДокументыПереопределяемый.Ссылка)) КАК
ЕстьОснование,
+ (1 В
+ (ВЫБРАТЬ ПЕРВЫЕ 1
+ 1
+ ИЗ
+ РегистрСведений.ТекстовыеСообщенияДокументовЭДО КАК ТекстовыеСообщенияДокументовЭДО
+ ГДЕ
+ ВЫРАЗИТЬ(ТекстовыеСообщенияДокументовЭДО.ЭлектронныйДокумент КАК
+ Документ.ЭлектронныйДокументВходящийЭДО) = ЭлектронныеДокументыПереопределяемый.Ссылка
+ И ТекстовыеСообщенияДокументовЭДО.Прочитано = ЛОЖЬ)) КАК ЕстьНепрочитанныеСообщения,
(1 В
(ВЫБРАТЬ ПЕРВЫЕ 1
1
@@ -3795,6 +3823,555 @@
ГДЕ
ЭлектронныеДокументыПереопределяемый.Ссылка = КонтрольПереопределяемый.ЭлектронныйДокумент)) КАК
ЕстьКонтрольОтражения}
+
+ КонтрольОтраженияВУчете
+ КонтрольОтраженияВУчете
+
+
+ Дата
+ Дата
+
+
+ СостояниеЭДО
+ СостояниеЭДО
+
+
+ ru
+ Состояние ЭДО
+
+
+
+
+ ЕстьОснование
+ ЕстьОснование
+
+
+ ru
+ Есть основание
+
+
+
+
+ ЕстьКонтрольОтражения
+ ЕстьКонтрольОтражения
+
+
+ ru
+ Есть контроль отражения
+
+
+
+
+ ЭлектронныйДокумент
+ ЭлектронныйДокумент
+
+
+ ru
+ Электронный документ
+
+
+
+
+ Номер
+ Номер
+
+
+ ru
+ Номер
+
+
+
+
+ Организация
+ Организация
+
+
+ Контрагент
+ Контрагент
+
+
+ ДоговорКонтрагента
+ ДоговорКонтрагента
+
+
+ СуммаДокумента
+ СуммаДокумента
+
+
+ Ответственный
+ Ответственный
+
+
+ ДополнительнаяИнформация
+ ДополнительнаяИнформация
+
+
+ ru
+ Дополнительная информация
+
+
+
+
+ ВидДокумента
+ ВидДокумента
+
+
+ ТипДокумента
+ ТипДокумента
+
+
+ ru
+ Тип документа
+
+
+
+
+ КартинкаМК
+ КартинкаМК
+
+
+ ru
+ Картинка МК
+
+
+
+
+ Описание
+ Описание
+
+
+ ru
+ Описание
+
+
+
+
+ РежимОтображения
+ РежимОтображения
+
+
+ СписокПользователей
+ СписокПользователей
+
+
+ ОтражениеВУчете
+ ОтражениеВУчете
+
+
+ ru
+ Отражение в учете
+
+
+
+
+ ИдентификаторПакета
+ ИдентификаторПакета
+
+
+ ПредставлениеДокументовВнеОтбора
+ ПредставлениеДокументовВнеОтбора
+
+
+ ru
+ Представление документов вне отбора
+
+
+
+
+ ПервыйДокументПакета
+ ПервыйДокументПакета
+
+
+ ru
+ Первый документ пакета
+
+
+
+
+ КоличествоДокументовВПакете
+ КоличествоДокументовВПакете
+
+
+ ru
+ Количество документов в пакете
+
+
+
+
+ ДатаПакета
+ ДатаПакета
+
+
+ ru
+ Дата пакета
+
+
+
+
+ НомерСлужебный
+ НомерСлужебный
+
+
+ ru
+ Номер служебный
+
+
+
+
+ ИндексКартинкиПакета
+ ИндексКартинкиПакета
+
+
+ ru
+ Индекс картинки пакета
+
+
+
+
+ КлючСортировкиПакета
+ КлючСортировкиПакета
+
+
+ ru
+ Ключ сортировки пакета
+
+
+
+
+ ПорядокСортировкиВПакете
+ ПорядокСортировкиВПакете
+
+
+ ru
+ Порядок сортировки в пакете
+
+
+
+
+ Четность
+ Четность
+
+
+ ru
+ Четность
+
+
+
+
+ КлючДокумента
+ КлючДокумента
+
+
+ ru
+ Ключ документа
+
+
+
+
+ КлючПакета
+ КлючПакета
+
+
+ ru
+ Ключ пакета
+
+
+
+
+ Прочтен
+ Прочтен
+
+
+ ru
+ Прочтен
+
+
+
+
+ ЕстьНевалидныеПодписиПоМЧД
+ ЕстьНевалидныеПодписиПоМЧД
+
+
+ ru
+ Есть невалидные подписи по МЧД
+
+
+
+
+ КоличествоДокументов
+ КоличествоДокументов
+
+
+ КоличествоНепрочитанныхСообщений
+ КоличествоНепрочитанныхСообщений
+
+
+ ru
+ Количество непрочитанных сообщений
+
+
+
+
+ ЕстьНепрочитанныеСообщения
+ ЕстьНепрочитанныеСообщения
+
+
+ ru
+ Новые сообщения
+
+
+
+
+ ДатаАннулирования
+ ДатаАннулирования
+
+
+ ДатаПодписания
+ ДатаПодписания
+
+
+ ДатаПолучения
+ ДатаПолучения
+
+
+ ИдентификаторДокумента
+ ИдентификаторДокумента
+
+
+ ИдентификаторДокументооборота
+ ИдентификаторДокументооборота
+
+
+ ИдентификаторКонтрагента
+ ИдентификаторКонтрагента
+
+
+ ИдентификаторОрганизации
+ ИдентификаторОрганизации
+
+
+ ИдентификаторСвязи
+ ИдентификаторСвязи
+
+
+ Исправлен
+ Исправлен
+
+
+ Комментарий
+ Комментарий
+
+
+ НаОзнакомлении
+ НаОзнакомлении
+
+
+ ОбменБезПодписи
+ ОбменБезПодписи
+
+
+ ОбратныйАдрес
+ ОбратныйАдрес
+
+
+ Остановлен
+ Остановлен
+
+
+ ОтключитьКонтрольОтраженияВУчете
+ ОтключитьКонтрольОтраженияВУчете
+
+
+ ПричинаОстановки
+ ПричинаОстановки
+
+
+ СодержитМаркируемыеТовары
+ СодержитМаркируемыеТовары
+
+
+ СпособОбмена
+ СпособОбмена
+
+
+ ТипРегламента
+ ТипРегламента
+
+
+ ТребуетсяИзвещение
+ ТребуетсяИзвещение
+
+
+ ТребуетсяПодтверждение
+ ТребуетсяПодтверждение
+
+
+ ИспользоватьЦентрЭДО
+ ИспользоватьЦентрЭДО
+
+
+ УдалитьВерсияРегламента
+ УдалитьВерсияРегламента
+
+
+ УдалитьВидДокумента
+ УдалитьВидДокумента
+
+
+ УдалитьВидОшибкиПередачи
+ УдалитьВидОшибкиПередачи
+
+
+ УдалитьВидПрикладногоДокумента
+ УдалитьВидПрикладногоДокумента
+
+
+ УдалитьДатаИзмененияСостоянияЭДО
+ УдалитьДатаИзмененияСостоянияЭДО
+
+
+ УдалитьЕстьПравилаОтраженияВУчете
+ УдалитьЕстьПравилаОтраженияВУчете
+
+
+ УдалитьНаименованиеДокументаОтправителя
+ УдалитьНаименованиеДокументаОтправителя
+
+
+ УдалитьНастройкаЭДО
+ УдалитьНастройкаЭДО
+
+
+ УдалитьНомерВерсии
+ УдалитьНомерВерсии
+
+
+ УдалитьНомерДокумента
+ УдалитьНомерДокумента
+
+
+ УдалитьПричинаОтклонения
+ УдалитьПричинаОтклонения
+
+
+ УдалитьПрофильНастроекЭДО
+ УдалитьПрофильНастроекЭДО
+
+
+ УдалитьПрочитан
+ УдалитьПрочитан
+
+
+ УдалитьСостояниеЭДО
+ УдалитьСостояниеЭДО
+
+
+ УдалитьТекст
+ УдалитьТекст
+
+
+ УдалитьТипДокумента
+ УдалитьТипДокумента
+
+
+ УдалитьТипЭлементаВерсииЭД
+ УдалитьТипЭлементаВерсииЭД
+
+
+ ФорматОсновногоТитула
+ ФорматОсновногоТитула
+
+
+ ИдентификаторыОснований
+ ИдентификаторыОснований
+
+
+ УдалитьДокументыОснования
+ УдалитьДокументыОснования
+
+
+ УдалитьДополнительныеВидыЭД
+ УдалитьДополнительныеВидыЭД
+
+
+ МоментВремени
+ МоментВремени
+
+
+ ПометкаУдаления
+ ПометкаУдаления
+
+
+ Проведен
+ Проведен
+
+
+ ПоказыватьПомеченныеНаУдаление
+
+
+ ru
+ Показывать помеченные на удаление
+
+
+
+ xs:boolean
+
+
+ true
+
+
+ ДатаПереходаНаВерсиюСПрочтенностью
+
+
+ ru
+ Дата перехода на версию с прочтенностью
+
+
+
+ xs:dateTime
+
+ DateTime
+
+
+
+ true
+
+
+ РежимОтображения
+
+
+ ru
+ Режим отображения
+
+
+
+ true
+
+
+ Пользователь
+
+
+ ru
+ Пользователь
+
+
+
+ d7d2055b-d3b7-4622-a587-458be6a4fd6c
+
+
+ true
+
+
+ СписокПользователей
+
+
+ ru
+ Список пользователей
+
+
+
+ true
+
Document.ЭлектронныйДокументВходящийЭДО
@@ -3840,15 +4417,6 @@
cfg:DynamicList
- ~ИсходящиеЭД.ВидЭД
- ~ИсходящиеЭД.ВладелецФайлаЭД
- ~ИсходящиеЭД.ВладелецЭД
- ~ИсходящиеЭД.ДоговорПакета
- ~ИсходящиеЭД.Документооборот
- ~ИсходящиеЭД.ИндексКатринкиПакета
- ~ИсходящиеЭД.КонтрагентПакета
- ~ИсходящиеЭД.ОсновныеДанныеСтроки
- ~ИсходящиеЭД.Ссылка
ИсходящиеЭД.Дата
ИсходящиеЭД.ДатаПакета
ИсходящиеЭД.ИдентификаторПакета
@@ -3917,7 +4485,8 @@
ИНАЧЕ СведенияОПрочтенииПереопределяемый.Прочтен
КОНЕЦ КАК Прочтен,
ЕСТЬNULL(ПроверкиЭлектронныхПодписейЭДОПереопределяемый.ЕстьНевалидныеПодписиПоМЧД, ЛОЖЬ) КАК
- ЕстьНевалидныеПодписиПоМЧД
+ ЕстьНевалидныеПодписиПоМЧД,
+ ВЫРАЗИТЬ(0 КАК Число(10)) КАК КоличествоНепрочитанныхСообщений
{ГДЕ
СостоянияЭДОПереопределяемый.Состояние КАК СостояниеЭДО,
(1 В
@@ -3953,13 +4522,557 @@
И (СведенияОПрочтенииПереопределяемый.Пользователь = &Пользователь)
ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ПроверкиЭлектронныхПодписейЭДО КАК ПроверкиЭлектронныхПодписейЭДОПереопределяемый
ПО ЭлектронныеДокументыПереопределяемый.Ссылка = ПроверкиЭлектронныхПодписейЭДОПереопределяемый.ЭлектронныйДокумент
+ {ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ТекстовыеСообщенияДокументовЭДО КАК ТекстовыеСообщенияДокументовЭДО
+ ПО ТекстовыеСообщенияДокументовЭДО.ЭлектронныйДокумент = ЭлектронныеДокументыПереопределяемый.Ссылка}
ГДЕ
ВЫБОР
КОГДА НЕ &ПоказыватьПомеченныеНаУдаление
ТОГДА НЕ ЭлектронныеДокументыПереопределяемый.ПометкаУдаления
- ИНАЧЕ
- ИСТИНА
- КОНЕЦ
+ ИНАЧЕ ИСТИНА
+ КОНЕЦ
+{ГДЕ
+ (1 В
+ (ВЫБРАТЬ ПЕРВЫЕ 1
+ 1
+ ИЗ
+ РегистрСведений.ТекстовыеСообщенияДокументовЭДО КАК ТекстовыеСообщенияДокументовЭДО
+ ГДЕ
+ ВЫРАЗИТЬ(ТекстовыеСообщенияДокументовЭДО.ЭлектронныйДокумент КАК
+ Документ.ЭлектронныйДокументИсходящийЭДО) = ЭлектронныеДокументыПереопределяемый.Ссылка
+ И ТекстовыеСообщенияДокументовЭДО.Прочитано = ЛОЖЬ)) КАК ЕстьНепрочитанныеСообщения}
+
+ Дата
+ Дата
+
+
+ Контрагент
+ Контрагент
+
+
+ СостояниеЭДО
+ СостояниеЭДО
+
+
+ ru
+ Состояние ЭДО
+
+
+
+
+ НаПодпись
+ НаПодпись
+
+
+ ru
+ На подпись
+
+
+
+
+ ЭлектронныйДокумент
+ ЭлектронныйДокумент
+
+
+ ru
+ Электронный документ
+
+
+
+
+ Номер
+ Номер
+
+
+ ru
+ Номер
+
+
+
+
+ Организация
+ Организация
+
+
+ ДоговорКонтрагента
+ ДоговорКонтрагента
+
+
+ СуммаДокумента
+ СуммаДокумента
+
+
+ Ответственный
+ Ответственный
+
+
+ ОтражениеВУчете
+ ОтражениеВУчете
+
+
+ ru
+ Отражение в учете
+
+
+
+
+ ДополнительнаяИнформация
+ ДополнительнаяИнформация
+
+
+ ru
+ Дополнительная информация
+
+
+
+
+ ВидДокумента
+ ВидДокумента
+
+
+ КартинкаМК
+ КартинкаМК
+
+
+ ru
+ Картинка МК
+
+
+
+
+ Описание
+ Описание
+
+
+ ru
+ Описание
+
+
+
+
+ РежимОтображения
+ РежимОтображения
+
+
+ СписокПользователей
+ СписокПользователей
+
+
+ ИдентификаторПакета
+ ИдентификаторПакета
+
+
+ ПредставлениеДокументовВнеОтбора
+ ПредставлениеДокументовВнеОтбора
+
+
+ ru
+ Представление документов вне отбора
+
+
+
+
+ ПервыйДокументПакета
+ ПервыйДокументПакета
+
+
+ ru
+ Первый документ пакета
+
+
+
+
+ КоличествоДокументовВПакете
+ КоличествоДокументовВПакете
+
+
+ ru
+ Количество документов в пакете
+
+
+
+
+ ДатаПакета
+ ДатаПакета
+
+
+ ru
+ Дата пакета
+
+
+
+
+ НомерСлужебный
+ НомерСлужебный
+
+
+ ru
+ Номер служебный
+
+
+
+
+ ИндексКартинкиПакета
+ ИндексКартинкиПакета
+
+
+ ru
+ Индекс картинки пакета
+
+
+
+
+ КлючСортировкиПакета
+ КлючСортировкиПакета
+
+
+ ru
+ Ключ сортировки пакета
+
+
+
+
+ ПорядокСортировкиВПакете
+ ПорядокСортировкиВПакете
+
+
+ ru
+ Порядок сортировки в пакете
+
+
+
+
+ Четность
+ Четность
+
+
+ ru
+ Четность
+
+
+
+
+ КлючДокумента
+ КлючДокумента
+
+
+ ru
+ Ключ документа
+
+
+
+
+ КлючПакета
+ КлючПакета
+
+
+ ru
+ Ключ пакета
+
+
+
+
+ Прочтен
+ Прочтен
+
+
+ ru
+ Прочтен
+
+
+
+
+ ЕстьНевалидныеПодписиПоМЧД
+ ЕстьНевалидныеПодписиПоМЧД
+
+
+ ru
+ Есть невалидные подписи по МЧД
+
+
+
+
+ КоличествоДокументов
+ КоличествоДокументов
+
+
+ ЕстьНепрочитанныеСообщения
+ ЕстьНепрочитанныеСообщения
+
+
+ ru
+ Есть непрочитанные сообщения
+
+
+
+
+ КоличествоНепрочитанныхСообщений
+ КоличествоНепрочитанныхСообщений
+
+
+ ru
+ Новые сообщения
+
+
+
+
+ ВидПодписи
+ ВидПодписи
+
+
+ ВыгружатьДополнительныеСведения
+ ВыгружатьДополнительныеСведения
+
+
+ ДатаАннулирования
+ ДатаАннулирования
+
+
+ ДатаОтправки
+ ДатаОтправки
+
+
+ ДатаПодписания
+ ДатаПодписания
+
+
+ ИдентификаторДокумента
+ ИдентификаторДокумента
+
+
+ ИдентификаторДокументооборота
+ ИдентификаторДокументооборота
+
+
+ ИдентификаторКонтрагента
+ ИдентификаторКонтрагента
+
+
+ ИдентификаторОрганизации
+ ИдентификаторОрганизации
+
+
+ ИдентификаторСвязи
+ ИдентификаторСвязи
+
+
+ Исправлен
+ Исправлен
+
+
+ Комментарий
+ Комментарий
+
+
+ МаршрутПодписания
+ МаршрутПодписания
+
+
+ НаОзнакомлении
+ НаОзнакомлении
+
+
+ ОбменБезПодписи
+ ОбменБезПодписи
+
+
+ Остановлен
+ Остановлен
+
+
+ ПричинаОстановки
+ ПричинаОстановки
+
+
+ СодержитМаркируемыеТовары
+ СодержитМаркируемыеТовары
+
+
+ СпособОбмена
+ СпособОбмена
+
+
+ ТипРегламента
+ ТипРегламента
+
+
+ ТребуетсяИзвещение
+ ТребуетсяИзвещение
+
+
+ ТребуетсяПодтверждение
+ ТребуетсяПодтверждение
+
+
+ ИспользоватьЦентрЭДО
+ ИспользоватьЦентрЭДО
+
+
+ УдалитьВерсияРегламента
+ УдалитьВерсияРегламента
+
+
+ УдалитьВидДокумента
+ УдалитьВидДокумента
+
+
+ УдалитьВидОшибкиПередачи
+ УдалитьВидОшибкиПередачи
+
+
+ УдалитьВидПрикладногоДокумента
+ УдалитьВидПрикладногоДокумента
+
+
+ УдалитьДатаИзмененияСостоянияЭДО
+ УдалитьДатаИзмененияСостоянияЭДО
+
+
+ УдалитьДокументОснование
+ УдалитьДокументОснование
+
+
+ УдалитьДополнительныеДанные
+ УдалитьДополнительныеДанные
+
+
+ УдалитьНаименованиеДокументаОтправителя
+ УдалитьНаименованиеДокументаОтправителя
+
+
+ УдалитьНастройкаЭДО
+ УдалитьНастройкаЭДО
+
+
+ УдалитьНомерВерсии
+ УдалитьНомерВерсии
+
+
+ УдалитьПодтверждениеОбязательно
+ УдалитьПодтверждениеОбязательно
+
+
+ УдалитьПричинаОтклонения
+ УдалитьПричинаОтклонения
+
+
+ УдалитьПрофильНастроекЭДО
+ УдалитьПрофильНастроекЭДО
+
+
+ УдалитьПрочитан
+ УдалитьПрочитан
+
+
+ УдалитьСостояниеЭДО
+ УдалитьСостояниеЭДО
+
+
+ УдалитьТекст
+ УдалитьТекст
+
+
+ УдалитьТипДокумента
+ УдалитьТипДокумента
+
+
+ УдалитьТипЭлементаВерсииЭД
+ УдалитьТипЭлементаВерсииЭД
+
+
+ ФорматОсновногоТитула
+ ФорматОсновногоТитула
+
+
+ ИдентификаторыОснований
+ ИдентификаторыОснований
+
+
+ СписокПодписантов
+ СписокПодписантов
+
+
+ УдалитьДокументыОснования
+ УдалитьДокументыОснования
+
+
+ МоментВремени
+ МоментВремени
+
+
+ ПометкаУдаления
+ ПометкаУдаления
+
+
+ Проведен
+ Проведен
+
+
+ ПоказыватьПомеченныеНаУдаление
+
+
+ ru
+ Показывать помеченные на удаление
+
+
+
+ xs:boolean
+
+
+ true
+
+
+ ДатаПереходаНаВерсиюСПрочтенностью
+
+
+ ru
+ Дата перехода на версию с прочтенностью
+
+
+
+ xs:dateTime
+
+ DateTime
+
+
+
+ true
+
+
+ РежимОтображения
+
+
+ ru
+ Режим отображения
+
+
+
+ true
+
+
+ Пользователь
+
+
+ ru
+ Пользователь
+
+
+
+ d7d2055b-d3b7-4622-a587-458be6a4fd6c
+
+
+ true
+
+
+ СписокПользователей
+
+
+ ru
+ Список пользователей
+
+
+
+ true
+
Document.ЭлектронныйДокументИсходящийЭДО
diff --git a/src/DataProcessors/ИнтерфейсДокументовЭДО/Forms/ТекущиеДелаПоЭДО/Ext/Form/Module.bsl b/src/DataProcessors/ИнтерфейсДокументовЭДО/Forms/ТекущиеДелаПоЭДО/Ext/Form/Module.bsl
index 7f83cf188..77e302a81 100644
--- a/src/DataProcessors/ИнтерфейсДокументовЭДО/Forms/ТекущиеДелаПоЭДО/Ext/Form/Module.bsl
+++ b/src/DataProcessors/ИнтерфейсДокументовЭДО/Forms/ТекущиеДелаПоЭДО/Ext/Form/Module.bsl
@@ -611,8 +611,7 @@
КонецПроцедуры
&НаСервереБезКонтекста
-Процедура ВходящиеЭДПриПолученииДанныхНаСервере(ИмяЭлемента, Настройки,
- Строки)
+Процедура ВходящиеЭДПриПолученииДанныхНаСервере(ИмяЭлемента, Настройки, Строки)
Если Не ЗначениеЗаполнено(Строки) Тогда
Возврат;
@@ -634,7 +633,8 @@
УстановитьПривилегированныйРежим(Истина);
Основания = Запрос.Выполнить().Выгрузить();
УстановитьПривилегированныйРежим(Ложь);
-
+
+ ВыводитьКоличествоНовыхСообщений = Ложь;
Для каждого ТекущаяСтрока Из Строки Цикл
Данные = ТекущаяСтрока.Значение.Данные;
@@ -667,9 +667,17 @@
Иначе
Данные.ОтражениеВУчете = НСтр("ru = '<Не требуется>'");
КонецЕсли;
-
+
+ Если Данные.Свойство("КоличествоНепрочитанныхСообщений") Тогда
+ ВыводитьКоличествоНовыхСообщений = Истина;
+ КонецЕсли;
+
КонецЦикла;
+ Если ВыводитьКоличествоНовыхСообщений Тогда
+ УстановитьКоличествоНепрочитанныхСообщений(Строки, ЭлектронныеДокументы);
+ КонецЕсли;
+
РассчитатьДополнительныеПоляПакетов(Строки);
КонецПроцедуры
@@ -752,7 +760,8 @@
УстановитьПривилегированныйРежим(Истина);
Основания = Запрос.Выполнить().Выгрузить();
УстановитьПривилегированныйРежим(Ложь);
-
+
+ ВыводитьКоличествоНовыхСообщений = Ложь;
Для каждого ТекущаяСтрока Из Строки Цикл
Данные = ТекущаяСтрока.Значение.Данные;
@@ -773,9 +782,15 @@
Данные.ОтражениеВУчете = Представление;
КонецЕсли;
-
+ Если Данные.Свойство("КоличествоНепрочитанныхСообщений") Тогда
+ ВыводитьКоличествоНовыхСообщений = Истина;
+ КонецЕсли;
КонецЦикла;
+ Если ВыводитьКоличествоНовыхСообщений Тогда
+ УстановитьКоличествоНепрочитанныхСообщений(Строки, ЭлектронныеДокументы);
+ КонецЕсли;
+
РассчитатьДополнительныеПоляПакетов(Строки);
КонецПроцедуры
@@ -1679,8 +1694,7 @@
&НаКлиенте
Процедура ПоказатьКомментарийСостояния(Команда)
- ОбщегоНазначенияКлиент.ПоказатьФормуРедактированияКомментария(ТекущийКомментарийСостояния, ЭтотОбъект,
- "ТекущийКомментарийСостояния");
+ ИнтерфейсДокументовЭДОКлиент.ПоказатьКомментарийКСостояниюДокумента(ТекущийКомментарийСостояния);
КонецПроцедуры
@@ -1754,13 +1768,15 @@
СпискиРазделов.Вставить("Исправить", "ВходящиеЭД");
СпискиРазделов.Вставить("Аннулировать", "ВходящиеЭД");
СпискиРазделов.Вставить("НаКонтроле", "ВходящиеЭД");
+ СпискиРазделов.Вставить("СообщенияВх", "ВходящиеЭД");
СпискиРазделов.Вставить("Исходящие", "ИсходящиеЭД");
СпискиРазделов.Вставить("ПодписатьИсх", "ИсходящиеЭД");
СпискиРазделов.Вставить("ИсправитьИсх", "ИсходящиеЭД");
СпискиРазделов.Вставить("АннулироватьИсх", "ИсходящиеЭД");
СпискиРазделов.Вставить("НаКонтролеИсх", "ИсходящиеЭД");
-
+ СпискиРазделов.Вставить("СообщенияИсх", "ИсходящиеЭД");
+
СпискиРазделов.Вставить("Сформировать", "Сформировать");
СпискиРазделов.Вставить("Ознакомиться", "ОзнакомитьсяЭД");
@@ -1796,12 +1812,14 @@
СтраницыРазделов.Вставить("Исправить", "ВходящиеЭД");
СтраницыРазделов.Вставить("Аннулировать", "ВходящиеЭД");
СтраницыРазделов.Вставить("НаКонтроле", "ВходящиеЭД");
+ СтраницыРазделов.Вставить("СообщенияВх", "ВходящиеЭД");
СтраницыРазделов.Вставить("Исходящие", "ИсходящиеЭД");
СтраницыРазделов.Вставить("ПодписатьИсх", "ИсходящиеЭД");
СтраницыРазделов.Вставить("ИсправитьИсх", "ИсходящиеЭД");
СтраницыРазделов.Вставить("АннулироватьИсх", "ИсходящиеЭД");
СтраницыРазделов.Вставить("НаКонтролеИсх", "ИсходящиеЭД");
+ СтраницыРазделов.Вставить("СообщенияИсх", "ИсходящиеЭД");
СтраницыРазделов.Вставить("Сформировать", "СформироватьЭД");
@@ -1840,12 +1858,14 @@
ТаблицыРазделов.Вставить("Исправить", "ВходящиеЭД");
ТаблицыРазделов.Вставить("Аннулировать", "ВходящиеЭД");
ТаблицыРазделов.Вставить("НаКонтроле", "ВходящиеЭД");
+ ТаблицыРазделов.Вставить("СообщенияВх", "ВходящиеЭД");
ТаблицыРазделов.Вставить("Исходящие", "ИсходящиеЭД");
ТаблицыРазделов.Вставить("ПодписатьИсх", "ИсходящиеЭД");
ТаблицыРазделов.Вставить("ИсправитьИсх", "ИсходящиеЭД");
ТаблицыРазделов.Вставить("АннулироватьИсх", "ИсходящиеЭД");
ТаблицыРазделов.Вставить("НаКонтролеИсх", "ИсходящиеЭД");
+ ТаблицыРазделов.Вставить("СообщенияИсх", "ИсходящиеЭД");
ТаблицыРазделов.Вставить("Сформировать", "СформироватьЭД");
@@ -1900,10 +1920,10 @@
ПоляТаблицыВходящие = "ВидДокумента, ДатаПакета, Дата, Номер, СуммаДокумента, Контрагент, Организация, СостояниеЭДО,
|НаправлениеЭД, Ответственный, ДополнительнаяИнформация, ПричинаОтклонения, Описание, ОтражениеВУчете,
- |ЭлектронныйДокумент";
+ |ЭлектронныйДокумент, КоличествоНепрочитанныхСообщений";
ПоляТаблицыИсходящие = "ВидДокумента, ДатаПакета, Дата, Номер, СуммаДокумента, Контрагент, Организация, Подписи,
|СостояниеЭДО, НаправлениеЭД, Ответственный, ДополнительнаяИнформация, ПричинаОтклонения, Описание,
- |ОтражениеВУчете, ЭлектронныйДокумент";
+ |ОтражениеВУчете, ЭлектронныйДокумент, КоличествоНепрочитанныхСообщений";
ПоляТаблицыСформировать = "ВидДокумента, Дата, Номер, Документ, Контрагент, Организация, СуммаДокумента";
ПоляТаблицыКонтейнерыЭД = "Дата, Контрагент, Организация, Соглашение, Статус, Ссылка";
ПоляТаблицыПриглашения = "Контрагент, ИдентификаторКонтрагента,СпособОбменаЭД, НовыйКонтрагент,
@@ -1981,7 +2001,27 @@
ПоляРаздела = "ВидДокумента, Дата, Номер, СуммаДокумента, Контрагент, Организация, СостояниеЭДО,
|НаправлениеЭД, Ответственный, ДополнительнаяИнформация, ОтражениеВУчете, Описание";
КонецЕсли;
+
+ ИначеЕсли Раздел = "СообщенияВх" Тогда
+ ПоляТаблицы = ПоляТаблицыВходящие;
+ Если ОбщегоНазначения.ЭтоМобильныйКлиент() Тогда
+ ПоляРаздела = "СуммаДокумента, Контрагент, СостояниеЭДО, ВидДокумента, ЭлектронныйДокумент";
+ Иначе
+ ПоляРаздела = "ВидДокумента, Дата, Номер, СуммаДокумента, Контрагент, Организация, СостояниеЭДО,
+ |НаправлениеЭД, Ответственный, ДополнительнаяИнформация, ОтражениеВУчете, Описание, КоличествоНепрочитанныхСообщений";
+ КонецЕсли;
+
+ ИначеЕсли Раздел = "СообщенияИсх" Тогда
+
+ ПоляТаблицы = ПоляТаблицыВходящие;
+ Если ОбщегоНазначения.ЭтоМобильныйКлиент() Тогда
+ ПоляРаздела = "СуммаДокумента, Контрагент, СостояниеЭДО, ВидДокумента, ЭлектронныйДокумент";
+ Иначе
+ ПоляРаздела = "ВидДокумента, Дата, Номер, СуммаДокумента, Контрагент, Организация, СостояниеЭДО,
+ |НаправлениеЭД, Ответственный, ДополнительнаяИнформация, ОтражениеВУчете, Описание, КоличествоНепрочитанныхСообщений";
+ КонецЕсли;
+
ИначеЕсли Раздел = "Исходящие" Тогда
ПоляТаблицы = ПоляТаблицыИсходящие;
@@ -2242,6 +2282,7 @@
Разделы.Добавить("ИсправитьИсх");
Разделы.Добавить("АннулироватьИсх");
Разделы.Добавить("НаКонтролеИсх");
+ Разделы.Добавить("СообщенияИсх");
СоздатьГруппуОтбораПоРазделам(Разделы, НастройкиОтображения, Список.Отбор);
@@ -2258,6 +2299,7 @@
Разделы.Добавить("Исправить");
Разделы.Добавить("Аннулировать");
Разделы.Добавить("НаКонтроле");
+ Разделы.Добавить("СообщенияВх");
СоздатьГруппуОтбораПоРазделам(Разделы, НастройкиОтображения, Список.Отбор);
@@ -2577,7 +2619,17 @@
ИначеЕсли Раздел = "ПриглашенияОзнакомиться" Тогда
ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбора(ГруппаОтбора, "Ознакомиться", Истина, ВидСравненияКомпоновкиДанных.Равно, , Истина);
-
+
+ ИначеЕсли Раздел = "СообщенияВх" Или Раздел = "СообщенияИсх" Тогда
+
+ Если РежимОтображения <> "ВсеДокументы" Тогда
+
+ ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбора(ГруппаОтбора, "Ответственный", СписокПользователей, ВидСравненияКомпоновкиДанных.ВСписке, , Истина);
+
+ КонецЕсли;
+
+ ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбора(ГруппаОтбора, "ЕстьНепрочитанныеСообщения", Истина, ВидСравненияКомпоновкиДанных.Равно, , Истина);
+
КонецЕсли;
КонецПроцедуры
@@ -2719,6 +2771,10 @@
КомандыРазделов.Вставить("ПриглашенияОзнакомиться", "ВАрхивПриглашенияОтправить, Обновить, КомандыПриглашенияЭД");
КомандыРазделов.Вставить("НоменклатураКонтрагентов",
"Обновить, СопоставитьНоменклатуру, ОткрытьНоменклатуруКонтрагентов, ПравилаПоискаПоЧастиНаименования");
+ КомандыРазделов.Вставить("СообщенияВх", "Обновить, ЗакрытьПринудительно, Перенаправить, КомандыВходящиеЭД,
+ |ПоказыватьПомеченныеНаУдаление");
+ КомандыРазделов.Вставить("СообщенияИсх", "Обновить, ЗакрытьПринудительно, Перенаправить, КомандыИсходящиеЭД,
+ |ПоказыватьПомеченныеНаУдаление");
ЭлементыКоманд = Новый Соответствие;
ЭлементыКоманд.Вставить("КомандыВходящиеЭД", Элементы.ГруппаКомандыВходящиеЭД);
@@ -5324,6 +5380,13 @@
НовЗапись.Значение = "Аннулировать";
НовЗапись = СтрокаВходящие.Строки.Добавить();
НовЗапись.Значение = "НаКонтроле";
+
+ ВыполненПереходНаУниверсальныеСообщения = РегламентыЭДО.ВыполненПереходНаУниверсальныеСообщения();
+
+ Если ВыполненПереходНаУниверсальныеСообщения Тогда
+ НовЗапись = СтрокаВходящие.Строки.Добавить();
+ НовЗапись.Значение = "СообщенияВх";
+ КонецЕсли;
СтрокаИсходящие = Дерево.Строки.Добавить();
СтрокаИсходящие.Значение = "Исходящие";
@@ -5346,7 +5409,12 @@
НовЗапись.Значение = "АннулироватьИсх";
НовЗапись = СтрокаИсходящие.Строки.Добавить();
НовЗапись.Значение = "НаКонтролеИсх";
-
+
+ Если ВыполненПереходНаУниверсальныеСообщения Тогда
+ НовЗапись = СтрокаИсходящие.Строки.Добавить();
+ НовЗапись.Значение = "СообщенияИсх";
+ КонецЕсли;
+
Если Не ЭтоМобильныйКлиент Тогда
НовЗапись = Дерево.Строки.Добавить();
НовЗапись.Значение = "НоменклатураКонтрагентов";
@@ -6092,6 +6160,24 @@
КонецПроцедуры
+&НаСервереБезКонтекста
+Процедура УстановитьКоличествоНепрочитанныхСообщений(Строки, ЭлектронныеДокументы)
+
+ Если Не ЗначениеЗаполнено(ЭлектронныеДокументы) Тогда
+ Возврат;
+ КонецЕсли;
+
+ КоличествоНепрочитанныхСообщенийПоДокументам = РегистрыСведений.ТекстовыеСообщенияДокументовЭДО.КоличествоНепрочитанныхСообщенийПоДокументам(
+ ЭлектронныеДокументы);
+
+ Для Каждого ТекущаяСтрока Из Строки Цикл
+
+ Данные = ТекущаяСтрока.Значение.Данные;
+ Данные.КоличествоНепрочитанныхСообщений = КоличествоНепрочитанныхСообщенийПоДокументам[Данные.ЭлектронныйДокумент];
+
+ КонецЦикла;
+КонецПроцедуры
+
#КонецОбласти
#Область КонтрольОтраженияВУчете
diff --git a/src/DataProcessors/ИнтерфейсДокументовЭДО/Forms/ТекущиеДелаПоЭДОЛегкийИнтерфейс/Ext/Form.xml b/src/DataProcessors/ИнтерфейсДокументовЭДО/Forms/ТекущиеДелаПоЭДОЛегкийИнтерфейс/Ext/Form.xml
index 5f033b648..850854e30 100644
--- a/src/DataProcessors/ИнтерфейсДокументовЭДО/Forms/ТекущиеДелаПоЭДОЛегкийИнтерфейс/Ext/Form.xml
+++ b/src/DataProcessors/ИнтерфейсДокументовЭДО/Forms/ТекущиеДелаПоЭДОЛегкийИнтерфейс/Ext/Form.xml
@@ -3947,6 +3947,14 @@
+
+ ВходящиеЭлектронныеДокументы.СлужебноеСостояниеЭДО
+
+ false
+
+
+
+
ВходящиеЭлектронныеДокументы.ОтражениеВУчете
@@ -3961,6 +3969,18 @@
+
+ ВходящиеЭлектронныеДокументы.КоличествоНепрочитанныхСообщений
+ false
+
+
+ ru
+ Новые сообщения
+
+
+
+
+
ВходящиеЭлектронныеДокументы.ДатаПолучения
@@ -4610,6 +4630,27 @@
+
+ ИсходящиеЭлектронныеДокументы.СлужебноеСостояниеЭДО
+
+ false
+
+ EnterOnInput
+
+
+
+
+ ИсходящиеЭлектронныеДокументы.КоличествоНепрочитанныхСообщений
+ false
+
+
+ ru
+ Новые сообщения
+
+
+
+
+
ИсходящиеЭлектронныеДокументы.ОтражениеВУчете
@@ -6073,6 +6114,7 @@
ЭлектронныеДокументыПереопределяемый.СуммаДокумента КАК СуммаДокумента,
ЭлектронныеДокументыПереопределяемый.Ответственный КАК Ответственный,
СостоянияЭДОПереопределяемый.Состояние КАК СостояниеЭДО,
+ СостоянияЭДОПереопределяемый.Состояние КАК СлужебноеСостояниеЭДО,
ВЫРАЗИТЬ(СостоянияЭДОПереопределяемый.Комментарий КАК СТРОКА(100)) КАК ДополнительнаяИнформация,
ЭлектронныеДокументыПереопределяемый.ВидДокумента КАК ВидДокумента,
ЭлектронныеДокументыПереопределяемый.ВидДокумента.ТипДокумента КАК ТипДокумента,
@@ -6130,7 +6172,8 @@
ЭлектронныеДокументыПереопределяемый.ИспользоватьЦентрЭДО,
ЭлектронныеДокументыПереопределяемый.СпособОбмена,
ЭлектронныеДокументыПереопределяемый.ИдентификаторОрганизации,
- ЭлектронныеДокументыПереопределяемый.ИдентификаторДокумента
+ ЭлектронныеДокументыПереопределяемый.ИдентификаторДокумента,
+ ВЫРАЗИТЬ(0 КАК Число(10)) КАК КоличествоНепрочитанныхСообщений
{ВЫБРАТЬ
КонтрольОтраженияВУчете}
ИЗ
@@ -6157,6 +6200,8 @@
И (СведенияОПрочтенииПереопределяемый.Пользователь = &Пользователь)
ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ПроверкиЭлектронныхПодписейЭДО КАК ПроверкиЭлектронныхПодписейЭДОПереопределяемый
ПО ЭлектронныеДокументыПереопределяемый.Ссылка = ПроверкиЭлектронныхПодписейЭДОПереопределяемый.ЭлектронныйДокумент
+ {ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ТекстовыеСообщенияДокументовЭДО КАК ТекстовыеСообщенияДокументовЭДО
+ ПО ТекстовыеСообщенияДокументовЭДО.ЭлектронныйДокумент = ЭлектронныеДокументыПереопределяемый.Ссылка}
ГДЕ
(&ОтображатьУдаленные
ИЛИ НЕ ЭлектронныеДокументыПереопределяемый.ПометкаУдаления)
@@ -6170,6 +6215,15 @@
ГДЕ
ОбъектыУчетаДокументооборотаЭДО.ЭлектронныйДокумент = ЭлектронныеДокументыПереопределяемый.Ссылка)) КАК
ЕстьОснование,
+ (1 В
+ (ВЫБРАТЬ ПЕРВЫЕ 1
+ 1
+ ИЗ
+ РегистрСведений.ТекстовыеСообщенияДокументовЭДО КАК ТекстовыеСообщенияДокументовЭДО
+ ГДЕ
+ ВЫРАЗИТЬ(ТекстовыеСообщенияДокументовЭДО.ЭлектронныйДокумент КАК
+ Документ.ЭлектронныйДокументВходящийЭДО) = ЭлектронныеДокументыПереопределяемый.Ссылка
+ И ТекстовыеСообщенияДокументовЭДО.Прочитано = ЛОЖЬ)) КАК ЕстьНепрочитанныеСообщения,
(1 В
(ВЫБРАТЬ ПЕРВЫЕ 1
1
@@ -6520,162 +6574,10 @@
ИдентификаторОрганизации
ИдентификаторОрганизации
-
- ДатаАннулирования
- ДатаАннулирования
-
-
- ДатаПодписания
- ДатаПодписания
-
ИдентификаторДокумента
ИдентификаторДокумента
-
- ИдентификаторДокументооборота
- ИдентификаторДокументооборота
-
-
- ИдентификаторКонтрагента
- ИдентификаторКонтрагента
-
-
- ИдентификаторСвязи
- ИдентификаторСвязи
-
-
- Исправлен
- Исправлен
-
-
- Комментарий
- Комментарий
-
-
- НаОзнакомлении
- НаОзнакомлении
-
-
- ОбменБезПодписи
- ОбменБезПодписи
-
-
- ОбратныйАдрес
- ОбратныйАдрес
-
-
- Остановлен
- Остановлен
-
-
- ОтключитьКонтрольОтраженияВУчете
- ОтключитьКонтрольОтраженияВУчете
-
-
- ПричинаОстановки
- ПричинаОстановки
-
-
- СодержитМаркируемыеТовары
- СодержитМаркируемыеТовары
-
-
- ТребуетсяИзвещение
- ТребуетсяИзвещение
-
-
- ТребуетсяПодтверждение
- ТребуетсяПодтверждение
-
-
- УдалитьВерсияРегламента
- УдалитьВерсияРегламента
-
-
- УдалитьВидДокумента
- УдалитьВидДокумента
-
-
- УдалитьВидОшибкиПередачи
- УдалитьВидОшибкиПередачи
-
-
- УдалитьВидПрикладногоДокумента
- УдалитьВидПрикладногоДокумента
-
-
- УдалитьДатаИзмененияСостоянияЭДО
- УдалитьДатаИзмененияСостоянияЭДО
-
-
- УдалитьЕстьПравилаОтраженияВУчете
- УдалитьЕстьПравилаОтраженияВУчете
-
-
- УдалитьНаименованиеДокументаОтправителя
- УдалитьНаименованиеДокументаОтправителя
-
-
- УдалитьНастройкаЭДО
- УдалитьНастройкаЭДО
-
-
- УдалитьНомерВерсии
- УдалитьНомерВерсии
-
-
- УдалитьНомерДокумента
- УдалитьНомерДокумента
-
-
- УдалитьПричинаОтклонения
- УдалитьПричинаОтклонения
-
-
- УдалитьПрофильНастроекЭДО
- УдалитьПрофильНастроекЭДО
-
-
- УдалитьПрочитан
- УдалитьПрочитан
-
-
- УдалитьСостояниеЭДО
- УдалитьСостояниеЭДО
-
-
- УдалитьТекст
- УдалитьТекст
-
-
- УдалитьТипДокумента
- УдалитьТипДокумента
-
-
- УдалитьТипЭлементаВерсииЭД
- УдалитьТипЭлементаВерсииЭД
-
-
- ИдентификаторыОснований
- ИдентификаторыОснований
-
-
- УдалитьДокументыОснования
- УдалитьДокументыОснования
-
-
- УдалитьДополнительныеВидыЭД
- УдалитьДополнительныеВидыЭД
-
-
- МоментВремени
- МоментВремени
-
-
- Проведен
- Проведен
-
ВремяПолучения
ВремяПолучения
@@ -6686,6 +6588,36 @@
+
+ ЕстьНепрочитанныеСообщения
+ ЕстьНепрочитанныеСообщения
+
+
+ ru
+ Есть непрочитанные сообщения
+
+
+
+
+ КоличествоНепрочитанныхСообщений
+ КоличествоНепрочитанныхСообщений
+
+
+ ru
+ Количество непрочитанных сообщений
+
+
+
+
+ СлужебноеСостояниеЭДО
+ СлужебноеСостояниеЭДО
+
+
+ ru
+ Служебное состояние ЭДО
+
+
+
ДатаПереходаНаВерсиюСПрочтенностью
@@ -6862,6 +6794,7 @@
ЭлектронныеДокументыПереопределяемый.СуммаДокумента КАК СуммаДокумента,
ЭлектронныеДокументыПереопределяемый.Ответственный КАК Ответственный,
СостоянияЭДОПереопределяемый.Состояние КАК СостояниеЭДО,
+ СостоянияЭДОПереопределяемый.Состояние КАК СлужебноеСостояниеЭДО,
ВЫРАЗИТЬ("" КАК СТРОКА(300)) КАК ОтражениеВУчете,
ВЫРАЗИТЬ(СостоянияЭДОПереопределяемый.Комментарий КАК СТРОКА(100)) КАК ДополнительнаяИнформация,
ЭлектронныеДокументыПереопределяемый.ВидДокумента КАК ВидДокумента,
@@ -6907,7 +6840,8 @@
ЭлектронныеДокументыПереопределяемый.Ссылка.ВидДокумента.ТипДокумента КАК ТипДокумента,
ЭлектронныеДокументыПереопределяемый.СпособОбмена,
ЭлектронныеДокументыПереопределяемый.ИдентификаторОрганизации,
- ЭлектронныеДокументыПереопределяемый.ИдентификаторДокумента
+ ЭлектронныеДокументыПереопределяемый.ИдентификаторДокумента,
+ ВЫРАЗИТЬ(0 КАК Число(10)) КАК КоличествоНепрочитанныхСообщений
{ГДЕ
СостоянияЭДОПереопределяемый.Состояние КАК СостояниеЭДО,
(1 В
@@ -6942,9 +6876,21 @@
И (СведенияОПрочтенииПереопределяемый.Пользователь = &Пользователь)
ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ПроверкиЭлектронныхПодписейЭДО КАК ПроверкиЭлектронныхПодписейЭДОПереопределяемый
ПО ЭлектронныеДокументыПереопределяемый.Ссылка = ПроверкиЭлектронныхПодписейЭДОПереопределяемый.ЭлектронныйДокумент
+ {ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ТекстовыеСообщенияДокументовЭДО КАК ТекстовыеСообщенияДокументовЭДО
+ ПО ТекстовыеСообщенияДокументовЭДО.ЭлектронныйДокумент = ЭлектронныеДокументыПереопределяемый.Ссылка}
ГДЕ
(&ОтображатьУдаленные
- ИЛИ НЕ ЭлектронныеДокументыПереопределяемый.ПометкаУдаления)
+ ИЛИ НЕ ЭлектронныеДокументыПереопределяемый.ПометкаУдаления)
+{ГДЕ
+ (1 В
+ (ВЫБРАТЬ ПЕРВЫЕ 1
+ 1
+ ИЗ
+ РегистрСведений.ТекстовыеСообщенияДокументовЭДО КАК ТекстовыеСообщенияДокументовЭДО
+ ГДЕ
+ ВЫРАЗИТЬ(ТекстовыеСообщенияДокументовЭДО.ЭлектронныйДокумент КАК
+ Документ.ЭлектронныйДокументИсходящийЭДО) = ЭлектронныеДокументыПереопределяемый.Ссылка
+ И ТекстовыеСообщенияДокументовЭДО.Прочитано = ЛОЖЬ)) КАК ЕстьНепрочитанныеСообщения}
Контрагент
Контрагент
@@ -7285,177 +7231,43 @@
СпособОбмена
СпособОбмена
-
- ВидПодписи
- ВидПодписи
-
-
- ВыгружатьДополнительныеСведения
- ВыгружатьДополнительныеСведения
-
-
- ДатаАннулирования
- ДатаАннулирования
-
-
- ДатаОтправки
- ДатаОтправки
-
-
- ДатаПодписания
- ДатаПодписания
-
ИдентификаторДокумента
ИдентификаторДокумента
-
- ИдентификаторДокументооборота
- ИдентификаторДокументооборота
-
-
- ИдентификаторКонтрагента
- ИдентификаторКонтрагента
-
ИдентификаторОрганизации
ИдентификаторОрганизации
- ИдентификаторСвязи
- ИдентификаторСвязи
+ ЕстьНепрочитанныеСообщения
+ ЕстьНепрочитанныеСообщения
+
+
+ ru
+ Есть непрочитанные сообщения
+
+
- Исправлен
- Исправлен
+ КоличествоНепрочитанныхСообщений
+ КоличествоНепрочитанныхСообщений
+
+
+ ru
+ Количество непрочитанных сообщений
+
+
- Комментарий
- Комментарий
-
-
- МаршрутПодписания
- МаршрутПодписания
-
-
- НаОзнакомлении
- НаОзнакомлении
-
-
- ОбменБезПодписи
- ОбменБезПодписи
-
-
- Остановлен
- Остановлен
-
-
- ПричинаОстановки
- ПричинаОстановки
-
-
- СодержитМаркируемыеТовары
- СодержитМаркируемыеТовары
-
-
- ТребуетсяИзвещение
- ТребуетсяИзвещение
-
-
- ТребуетсяПодтверждение
- ТребуетсяПодтверждение
-
-
- УдалитьВерсияРегламента
- УдалитьВерсияРегламента
-
-
- УдалитьВидДокумента
- УдалитьВидДокумента
-
-
- УдалитьВидОшибкиПередачи
- УдалитьВидОшибкиПередачи
-
-
- УдалитьВидПрикладногоДокумента
- УдалитьВидПрикладногоДокумента
-
-
- УдалитьДатаИзмененияСостоянияЭДО
- УдалитьДатаИзмененияСостоянияЭДО
-
-
- УдалитьДокументОснование
- УдалитьДокументОснование
-
-
- УдалитьДополнительныеДанные
- УдалитьДополнительныеДанные
-
-
- УдалитьНаименованиеДокументаОтправителя
- УдалитьНаименованиеДокументаОтправителя
-
-
- УдалитьНастройкаЭДО
- УдалитьНастройкаЭДО
-
-
- УдалитьНомерВерсии
- УдалитьНомерВерсии
-
-
- УдалитьПодтверждениеОбязательно
- УдалитьПодтверждениеОбязательно
-
-
- УдалитьПричинаОтклонения
- УдалитьПричинаОтклонения
-
-
- УдалитьПрофильНастроекЭДО
- УдалитьПрофильНастроекЭДО
-
-
- УдалитьПрочитан
- УдалитьПрочитан
-
-
- УдалитьСостояниеЭДО
- УдалитьСостояниеЭДО
-
-
- УдалитьТекст
- УдалитьТекст
-
-
- УдалитьТипДокумента
- УдалитьТипДокумента
-
-
- УдалитьТипЭлементаВерсииЭД
- УдалитьТипЭлементаВерсииЭД
-
-
- ИдентификаторыОснований
- ИдентификаторыОснований
-
-
- СписокПодписантов
- СписокПодписантов
-
-
- УдалитьДокументыОснования
- УдалитьДокументыОснования
-
-
- МоментВремени
- МоментВремени
-
-
- Проведен
- Проведен
+ СлужебноеСостояниеЭДО
+ СлужебноеСостояниеЭДО
+
+
+ ru
+ Служебное состояние ЭДО
+
+
ДатаПереходаНаВерсиюСПрочтенностью
diff --git a/src/DataProcessors/ИнтерфейсДокументовЭДО/Forms/ТекущиеДелаПоЭДОЛегкийИнтерфейс/Ext/Form/Module.bsl b/src/DataProcessors/ИнтерфейсДокументовЭДО/Forms/ТекущиеДелаПоЭДОЛегкийИнтерфейс/Ext/Form/Module.bsl
index c1cc14bc6..1f57446b4 100644
--- a/src/DataProcessors/ИнтерфейсДокументовЭДО/Forms/ТекущиеДелаПоЭДОЛегкийИнтерфейс/Ext/Form/Module.bsl
+++ b/src/DataProcessors/ИнтерфейсДокументовЭДО/Forms/ТекущиеДелаПоЭДОЛегкийИнтерфейс/Ext/Form/Module.bsl
@@ -34,6 +34,7 @@
ЕстьОтборПоНепрочитанным = Ложь;
ПакетноеОтображение = Истина;
+ ВыполненПереходНаУниверсальныеСообщения = РегламентыЭДО.ВыполненПереходНаУниверсальныеСообщения();
ПустойКонтрагент = Метаданные.ОпределяемыеТипы.КонтрагентБЭД.Тип.ПривестиЗначение();
ТипыДоговорСКонтрагентомЭДО.ЗагрузитьЗначения(Метаданные.ОпределяемыеТипы.ДоговорСКонтрагентомЭДО.Тип.Типы());
@@ -51,12 +52,16 @@
"ТребуетВнимания", НСтр("ru = 'Требует внимания'"),, БиблиотекаКартинок.ТребуетВниманияЖелтыйШарБЭД);
Элементы.СтатусПриглашения.СписокВыбора.Вставить(0,
"ТребуетВнимания", НСтр("ru = 'Требует внимания'"),, БиблиотекаКартинок.ТребуетВниманияЖелтыйШарБЭД);
+
+ Если ВыполненПереходНаУниверсальныеСообщения Тогда
+ Элементы.Состояние.СписокВыбора.Вставить(Элементы.Состояние.СписокВыбора.Количество()-1,
+ "НовыеСообщения", НСтр("ru = 'Новые сообщения'"));
+ КонецЕсли;
Если Не НастройкиЭДО.ОтправлятьВходящиеДокументыНаУтверждение() Тогда
ЗначениеУтвердить = Элементы.Состояние.СписокВыбора.НайтиПоЗначению("Утвердить");
Элементы.Состояние.СписокВыбора.Удалить(ЗначениеУтвердить);
КонецЕсли;
- ВыполненПереходНаУниверсальныеСообщения = РегламентыЭДО.ВыполненПереходНаУниверсальныеСообщения();
ОтображениеОрганизации();
@@ -75,6 +80,7 @@
ЗаполнитьДанныеПоИспользованиюПоказаТрафикаЭлектронныхДокументов();
ИзменитьВидимостьКолонкиВУчете();
+ ИзменитьВидимостьКолонкиКоличестваСообщений();
ОбновитьЗаголовкиЭлементов();
@@ -1659,6 +1665,7 @@
СлужебныеПоляОтбора.Добавить("ИдентификаторПакета");
СлужебныеПоляОтбора.Добавить("ТипРегламента");
СлужебныеПоляОтбора.Добавить("ЭлектронныйДокумент");
+ СлужебныеПоляОтбора.Добавить("ЕстьНепрочитанныеСообщения");
ПоляОграничения = Новый Массив;
@@ -1939,7 +1946,20 @@
КонецЕсли;
- УстановитьОтборПоСостоянию(Значение, ГруппаБыстрыйОтбор, Режим);
+ ПолеСообщений = "ЕстьНепрочитанныеСообщения";
+ ЭлементыУжеДобавлены =
+ ОбщегоНазначенияКлиентСервер.НайтиЭлементыИГруппыОтбора(ГруппаБыстрыйОтбор, ПолеСообщений).Количество() <> 0;
+ Если ЭлементыУжеДобавлены Тогда
+ ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбора(ГруппаБыстрыйОтбор,
+ ПолеСообщений, Истина, ВидСравненияКомпоновкиДанных.Равно, НСтр("ru = 'Новые сообщения'"), Ложь, Режим);
+ КонецЕсли;
+
+ Если Значение = "НовыеСообщения" Тогда
+ ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбора(ГруппаБыстрыйОтбор,
+ ПолеСообщений, Истина, ВидСравненияКомпоновкиДанных.Равно, НСтр("ru = 'Новые сообщения'"), Истина, Режим);
+ Иначе
+ УстановитьОтборПоСостоянию(Значение, ГруппаБыстрыйОтбор, Режим);
+ КонецЕсли;
ИначеЕсли ПолеОтбора = "Период" Тогда
@@ -2124,7 +2144,7 @@
ИначеЕсли Значение = "ТребуетВнимания" Тогда
СписокСостояний = СостоянияДокументовТребующиеВнимания();
-
+
КонецЕсли;
Использование = СписокСостояний.Количество();
@@ -2212,6 +2232,10 @@
ИначеЕсли ДанныеСтроки.СостояниеЭДО = Перечисления.СостоянияДокументовЭДО.КонтрагентОтказалВПодписи Тогда
ДанныеСтроки.Состояние = НСтр("ru = 'Контрагент отказал'");
+
+ ИначеЕсли ДанныеСтроки.СостояниеЭДО = Перечисления.СостоянияДокументовЭДО.ЗакрытСОтклонениемПриглашения Тогда
+
+ ДанныеСтроки.Состояние = НСтр("ru = 'Контрагент отклонил приглашение'");
Иначе
@@ -2274,7 +2298,6 @@
Возврат ДанныеСтроки.СостояниеЭДО = Перечисления.СостоянияДокументовЭДО.ЗакрытПринудительно
ИЛИ ДанныеСтроки.СостояниеЭДО = Перечисления.СостоянияДокументовЭДО.ЗакрытСОтклонением
- ИЛИ ДанныеСтроки.СостояниеЭДО = Перечисления.СостоянияДокументовЭДО.ЗакрытСОтклонениемПриглашения
ИЛИ ДанныеСтроки.СостояниеЭДО = Перечисления.СостоянияДокументовЭДО.ЗакрытСОшибкойПередачи;
КонецФункции
@@ -2322,11 +2345,16 @@
ИдентификаторыДокументовПакетов.Вставить(ДанныеСтроки.КлючСортировкиПакета, СписокДокументов);
КонецЦикла;
-
+
+ ВыводитьКоличествоНовыхСообщений = Ложь;
Для Каждого ТекущаяСтрока Из Строки Цикл
ДанныеСтроки = ТекущаяСтрока.Значение.Данные;
+ Если ДанныеСтроки.Свойство("КоличествоНепрочитанныхСообщений") Тогда
+ ВыводитьКоличествоНовыхСообщений = Истина;
+ КонецЕсли;
+
Если ИспользоватьКолонкуОтражениеВУчете Тогда
ОтборОснований = Новый Структура("ЭлектронныйДокумент", ДанныеСтроки.ЭлектронныйДокумент);
@@ -2422,6 +2450,10 @@
КонецЦикла;
+ Если ВыводитьКоличествоНовыхСообщений Тогда
+ УстановитьКоличествоНепрочитанныхСообщений(Строки, Строки.ПолучитьКлючи());
+ КонецЕсли;
+
КонецПроцедуры
&НаСервере
@@ -2549,7 +2581,12 @@
Возврат;
КонецЕсли;
+ ДоступныеПоляФильтров = ПоляФильтров();
Для Каждого Фильтр Из ФильтрыСписка Цикл
+ Если ДоступныеПоляФильтров.Найти(Фильтр.Ключ) = Неопределено Тогда
+ Продолжить;
+ КонецЕсли;
+
ЭтотОбъект[Фильтр.Ключ] = Фильтр.Значение;
КонецЦикла;
@@ -2563,7 +2600,12 @@
Возврат;
КонецЕсли;
+ ДоступныеПоляФильтров = ПоляФильтров();
Для Каждого Фильтр Из ФильтрыСписка Цикл
+ Если ДоступныеПоляФильтров.Найти(Фильтр.Ключ) = Неопределено Тогда
+ Продолжить;
+ КонецЕсли;
+
ЭтотОбъект[Фильтр.Ключ] = Неопределено;
УстановитьОтборыНаСервере(, Фильтр.Ключ);
КонецЦикла;
@@ -2580,6 +2622,7 @@
&НаСервере
Процедура УстановитьФильтрыСписков()
+ ДоступныеПоляФильтров = ПоляФильтров();
Для Каждого Раздел Из ИменаСписковФормы() Цикл
Фильтры = КэшФильтровВСписках.Получить(Раздел);
Если Фильтры = Неопределено Тогда
@@ -2587,6 +2630,10 @@
КонецЕсли;
Для Каждого Фильтр Из Фильтры Цикл
+ Если ДоступныеПоляФильтров.Найти(Фильтр.Ключ) = Неопределено Тогда
+ Продолжить;
+ КонецЕсли;
+
ЭтотОбъект[Фильтр.Ключ] = Фильтр.Значение;
УстановитьОтборыНаСервере(Раздел, Фильтр.Ключ);
КонецЦикла;
@@ -2786,6 +2833,12 @@
Элементы.ИсходящиеЭлектронныеДокументыОтражениеВУчете.Видимость = ОтображатьКУчету;
КонецПроцедуры
+&НаСервере
+Процедура ИзменитьВидимостьКолонкиКоличестваСообщений()
+ Элементы.ВходящиеЭлектронныеДокументыКоличествоНепрочитанныхСообщений.Видимость = ВыполненПереходНаУниверсальныеСообщения;
+ Элементы.ИсходящиеЭлектронныеДокументыКоличествоНепрочитанныхСообщений.Видимость = ВыполненПереходНаУниверсальныеСообщения;
+КонецПроцедуры
+
&НаСервере
Процедура ОбновитьЗаголовкиЭлементов()
@@ -3121,6 +3174,7 @@
Процедура ОбновитьОбластьПросмотраНаСервере(ТекущиеДанные)
Если ТребуетсяОбновитьСчетчикиКоличестваДокументов Тогда
+ ОбновитьДинамическийСписокТекущегоРаздела();
КоличествоДокументов();
КонецЕсли;
@@ -5480,6 +5534,24 @@
КонецПроцедуры
+&НаСервереБезКонтекста
+Процедура УстановитьКоличествоНепрочитанныхСообщений(Строки, ЭлектронныеДокументы)
+
+ Если Не ЗначениеЗаполнено(ЭлектронныеДокументы) Тогда
+ Возврат;
+ КонецЕсли;
+
+ КоличествоНепрочитанныхСообщенийПоДокументам = РегистрыСведений.ТекстовыеСообщенияДокументовЭДО.КоличествоНепрочитанныхСообщенийПоДокументам(
+ ЭлектронныеДокументы);
+
+ Для Каждого ТекущаяСтрока Из Строки Цикл
+
+ Данные = ТекущаяСтрока.Значение.Данные;
+ Данные.КоличествоНепрочитанныхСообщений = КоличествоНепрочитанныхСообщенийПоДокументам[Данные.ЭлектронныйДокумент];
+
+ КонецЦикла;
+КонецПроцедуры
+
#КонецОбласти
#Область ОбработчикиКоманд
diff --git a/src/DataProcessors/ИнтерфейсДокументовЭДО/Forms/ТекущиеДелаПоЭДОЛегкийКлиентЭДО/Ext/Form.xml b/src/DataProcessors/ИнтерфейсДокументовЭДО/Forms/ТекущиеДелаПоЭДОЛегкийКлиентЭДО/Ext/Form.xml
index 77edd0e85..43f988dfc 100644
--- a/src/DataProcessors/ИнтерфейсДокументовЭДО/Forms/ТекущиеДелаПоЭДОЛегкийКлиентЭДО/Ext/Form.xml
+++ b/src/DataProcessors/ИнтерфейсДокументовЭДО/Forms/ТекущиеДелаПоЭДОЛегкийКлиентЭДО/Ext/Form.xml
@@ -428,6 +428,7 @@
Страница утвердить
+ AlwaysHorizontal
@@ -493,7 +494,7 @@
Страница недоступные команды
- HorizontalIfPossible
+ AlwaysHorizontal
@@ -567,6 +568,7 @@
Страница утвердить
+ AlwaysHorizontal
@@ -3336,6 +3338,18 @@
+
+ ВходящиеЭлектронныеДокументы.КоличествоНепрочитанныхСообщений
+ false
+
+
+ ru
+ Новые сообщения
+
+
+
+
+
ВходящиеЭлектронныеДокументы.ДатаПолучения
@@ -3804,6 +3818,18 @@
+
+ ИсходящиеЭлектронныеДокументы.КоличествоНепрочитанныхСообщений
+ false
+
+
+ ru
+ Новые сообщения
+
+
+
+
+
ИсходящиеЭлектронныеДокументы.ДатаПолучения
@@ -5277,7 +5303,8 @@
ЭлектронныеДокументыПереопределяемый.ИспользоватьЦентрЭДО,
ЭлектронныеДокументыПереопределяемый.СпособОбмена,
ЭлектронныеДокументыПереопределяемый.ИдентификаторОрганизации,
- ЭлектронныеДокументыПереопределяемый.ИдентификаторДокумента
+ ЭлектронныеДокументыПереопределяемый.ИдентификаторДокумента,
+ ВЫРАЗИТЬ(0 КАК Число(10)) КАК КоличествоНепрочитанныхСообщений
ИЗ
Документ.ЭлектронныйДокументВходящийЭДО КАК ЭлектронныеДокументыПереопределяемый
ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.СостоянияДокументовЭДО КАК СостоянияЭДОПереопределяемый
@@ -5300,6 +5327,8 @@
И (СведенияОПрочтенииПереопределяемый.Пользователь = &Пользователь)
ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ПроверкиЭлектронныхПодписейЭДО КАК ПроверкиЭлектронныхПодписейЭДОПереопределяемый
ПО ЭлектронныеДокументыПереопределяемый.Ссылка = ПроверкиЭлектронныхПодписейЭДОПереопределяемый.ЭлектронныйДокумент
+ {ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ТекстовыеСообщенияДокументовЭДО КАК ТекстовыеСообщенияДокументовЭДО
+ ПО ТекстовыеСообщенияДокументовЭДО.ЭлектронныйДокумент = ЭлектронныеДокументыПереопределяемый.Ссылка}
ГДЕ
(&ОтображатьУдаленные
ИЛИ НЕ ЭлектронныеДокументыПереопределяемый.ПометкаУдаления)
@@ -5313,6 +5342,15 @@
ГДЕ
ОбъектыУчетаДокументооборотаЭДО.ЭлектронныйДокумент = ЭлектронныеДокументыПереопределяемый.Ссылка)) КАК
ЕстьОснование,
+ (1 В
+ (ВЫБРАТЬ ПЕРВЫЕ 1
+ 1
+ ИЗ
+ РегистрСведений.ТекстовыеСообщенияДокументовЭДО КАК ТекстовыеСообщенияДокументовЭДО
+ ГДЕ
+ ВЫРАЗИТЬ(ТекстовыеСообщенияДокументовЭДО.ЭлектронныйДокумент КАК
+ Документ.ЭлектронныйДокументВходящийЭДО) = ЭлектронныеДокументыПереопределяемый.Ссылка
+ И ТекстовыеСообщенияДокументовЭДО.Прочитано = ЛОЖЬ)) КАК ЕстьНепрочитанныеСообщения,
(1 В
(ВЫБРАТЬ ПЕРВЫЕ 1
1
@@ -5639,6 +5677,40 @@
ИдентификаторОрганизации
ИдентификаторОрганизации
+
+ ИдентификаторДокумента
+ ИдентификаторДокумента
+
+
+ ВремяПолучения
+ ВремяПолучения
+
+
+ ru
+ Время получения
+
+
+
+
+ ЕстьНепрочитанныеСообщения
+ ЕстьНепрочитанныеСообщения
+
+
+ ru
+ Есть непрочитанные сообщения
+
+
+
+
+ КоличествоНепрочитанныхСообщений
+ КоличествоНепрочитанныхСообщений
+
+
+ ru
+ Количество непрочитанных сообщений
+
+
+
ДатаАннулирования
ДатаАннулирования
@@ -5647,10 +5719,6 @@
ДатаПодписания
ДатаПодписания
-
- ИдентификаторДокумента
- ИдентификаторДокумента
-
ИдентификаторДокументооборота
ИдентификаторДокументооборота
@@ -5795,16 +5863,6 @@
Проведен
Проведен
-
- ВремяПолучения
- ВремяПолучения
-
-
- ru
- Время получения
-
-
-
ДатаПереходаНаВерсиюСПрочтенностью
@@ -6013,7 +6071,8 @@
ЕстьНевалидныеПодписиПоМЧД,
ВЫРАЗИТЬ("" КАК СТРОКА(100)) КАК Состояние,
0 КАК КартинкаСтатуса,
- ЕСТЬNULL(ПакетыДокументовЭДОПереопределяемый.Дата, ЭлектронныеДокументыПереопределяемый.ДатаОтправки) КАК ДатаПолучения,
+ ЕСТЬNULL(ПакетыДокументовЭДОПереопределяемый.Дата, ЭлектронныеДокументыПереопределяемый.ДатаОтправки) КАК
+ ДатаПолучения,
ЭлектронныеДокументыПереопределяемый.Дата КАК ВремяПолучения,
ЭлектронныеДокументыПереопределяемый.ПометкаУдаления КАК ПометкаУдаления,
ЭлектронныеДокументыПереопределяемый.ТипРегламента,
@@ -6022,7 +6081,8 @@
ЭлектронныеДокументыПереопределяемый.Ссылка.ВидДокумента.ТипДокумента КАК ТипДокумента,
ЭлектронныеДокументыПереопределяемый.СпособОбмена,
ЭлектронныеДокументыПереопределяемый.ИдентификаторОрганизации,
- ЭлектронныеДокументыПереопределяемый.ИдентификаторДокумента
+ ЭлектронныеДокументыПереопределяемый.ИдентификаторДокумента,
+ ВЫРАЗИТЬ(0 КАК Число(10)) КАК КоличествоНепрочитанныхСообщений
{ГДЕ
СостоянияЭДОПереопределяемый.Состояние КАК СостояниеЭДО,
(1 В
@@ -6057,10 +6117,22 @@
И (СведенияОПрочтенииПереопределяемый.Пользователь = &Пользователь)
ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ПроверкиЭлектронныхПодписейЭДО КАК ПроверкиЭлектронныхПодписейЭДОПереопределяемый
ПО ЭлектронныеДокументыПереопределяемый.Ссылка = ПроверкиЭлектронныхПодписейЭДОПереопределяемый.ЭлектронныйДокумент
+ {ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ТекстовыеСообщенияДокументовЭДО КАК ТекстовыеСообщенияДокументовЭДО
+ ПО ТекстовыеСообщенияДокументовЭДО.ЭлектронныйДокумент = ЭлектронныеДокументыПереопределяемый.Ссылка}
ГДЕ
((&ОтображатьУдаленные
ИЛИ НЕ ЭлектронныеДокументыПереопределяемый.ПометкаУдаления)
- И СостоянияЭДОПереопределяемый.Состояние В (&СостоянияЭДОДляРазделаИсходящие))
+ И СостоянияЭДОПереопределяемый.Состояние В (&СостоянияЭДОДляРазделаИсходящие))
+{ГДЕ
+ (1 В
+ (ВЫБРАТЬ ПЕРВЫЕ 1
+ 1
+ ИЗ
+ РегистрСведений.ТекстовыеСообщенияДокументовЭДО КАК ТекстовыеСообщенияДокументовЭДО
+ ГДЕ
+ ВЫРАЗИТЬ(ТекстовыеСообщенияДокументовЭДО.ЭлектронныйДокумент КАК
+ Документ.ЭлектронныйДокументИсходящийЭДО) = ЭлектронныеДокументыПереопределяемый.Ссылка
+ И ТекстовыеСообщенияДокументовЭДО.Прочитано = ЛОЖЬ)) КАК ЕстьНепрочитанныеСообщения}
Контрагент
Контрагент
@@ -6379,6 +6451,26 @@
ИдентификаторОрганизации
ИдентификаторОрганизации
+
+ ЕстьНепрочитанныеСообщения
+ ЕстьНепрочитанныеСообщения
+
+
+ ru
+ Есть непрочитанные сообщения
+
+
+
+
+ КоличествоНепрочитанныхСообщений
+ КоличествоНепрочитанныхСообщений
+
+
+ ru
+ Количество непрочитанных сообщений
+
+
+
ВидПодписи
ВидПодписи
diff --git a/src/DataProcessors/ИнтерфейсДокументовЭДО/Forms/ТекущиеДелаПоЭДОЛегкийКлиентЭДО/Ext/Form/Module.bsl b/src/DataProcessors/ИнтерфейсДокументовЭДО/Forms/ТекущиеДелаПоЭДОЛегкийКлиентЭДО/Ext/Form/Module.bsl
index a5630790f..d1df545e4 100644
--- a/src/DataProcessors/ИнтерфейсДокументовЭДО/Forms/ТекущиеДелаПоЭДОЛегкийКлиентЭДО/Ext/Form/Module.bsl
+++ b/src/DataProcessors/ИнтерфейсДокументовЭДО/Forms/ТекущиеДелаПоЭДОЛегкийКлиентЭДО/Ext/Form/Module.bsl
@@ -49,6 +49,7 @@
ЕстьОтборПоНепрочитанным = Ложь;
ПакетноеОтображение = Истина;
+ ВыполненПереходНаУниверсальныеСообщения = РегламентыЭДО.ВыполненПереходНаУниверсальныеСообщения();
ПустойКонтрагент = Метаданные.ОпределяемыеТипы.КонтрагентБЭД.Тип.ПривестиЗначение();
@@ -65,6 +66,11 @@
Элементы.СтатусПриглашения.СписокВыбора.Вставить(0,
"ТребуетВнимания", ЗаголовокТребуетВнимания, , БиблиотекаКартинок.ТребуетВниманияЖелтыйШарБЭД);
+ Если ВыполненПереходНаУниверсальныеСообщения Тогда
+ Элементы.Состояние.СписокВыбора.Вставить(Элементы.Состояние.СписокВыбора.Количество()-1,
+ "НовыеСообщения", НСтр("ru = 'Новые сообщения'"));
+ КонецЕсли;
+
Если Не НастройкиЭДО.ОтправлятьВходящиеДокументыНаУтверждение() Тогда
ЗначениеУтвердить = Элементы.Состояние.СписокВыбора.НайтиПоЗначению("Утвердить");
Элементы.Состояние.СписокВыбора.Удалить(ЗначениеУтвердить);
@@ -86,8 +92,8 @@
ЗаполнитьДанныеПоИспользованиюПоказаТрафикаЭлектронныхДокументов();
- ВыполненПереходНаУниверсальныеСообщения = РегламентыЭДО.ВыполненПереходНаУниверсальныеСообщения();
-
+ ИзменитьВидимостьКолонкиКоличестваСообщений();
+
// СтандартныеПодсистемы.ПодключаемыеКоманды
ПараметрыРазмещенияКомандСозданияДокумента = ПодключаемыеКоманды.ПараметрыРазмещения();
ПараметрыРазмещенияКомандСозданияДокумента.КоманднаяПанель = Элементы.ГруппаКомандыСозданияДокумента;
@@ -1837,6 +1843,7 @@
СлужебныеПоляОтбора.Добавить("ИдентификаторПакета");
СлужебныеПоляОтбора.Добавить("ТипРегламента");
СлужебныеПоляОтбора.Добавить("ЭлектронныйДокумент");
+ СлужебныеПоляОтбора.Добавить("ЕстьНепрочитанныеСообщения");
ПоляОграничения = Новый Массив;
@@ -2286,7 +2293,20 @@
КонецЕсли;
- УстановитьОтборПоСостоянию(Значение, ГруппаБыстрыйОтбор, Режим);
+ ПолеСообщений = "ЕстьНепрочитанныеСообщения";
+ ЭлементыУжеДобавлены =
+ ОбщегоНазначенияКлиентСервер.НайтиЭлементыИГруппыОтбора(ГруппаБыстрыйОтбор, ПолеСообщений).Количество() <> 0;
+ Если ЭлементыУжеДобавлены Тогда
+ ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбора(ГруппаБыстрыйОтбор,
+ ПолеСообщений, Истина, ВидСравненияКомпоновкиДанных.Равно, НСтр("ru = 'Новые сообщения'"), Ложь, Режим);
+ КонецЕсли;
+
+ Если Значение = "НовыеСообщения" Тогда
+ ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбора(ГруппаБыстрыйОтбор,
+ ПолеСообщений, Истина, ВидСравненияКомпоновкиДанных.Равно, НСтр("ru = 'Новые сообщения'"), Истина, Режим);
+ Иначе
+ УстановитьОтборПоСостоянию(Значение, ГруппаБыстрыйОтбор, Режим);
+ КонецЕсли;
ИначеЕсли ПолеОтбора = "Период" Тогда
@@ -2546,6 +2566,10 @@
ДанныеСтроки.Состояние = НСтр("ru = 'Завершен с отклонением'");
+ ИначеЕсли ДанныеСтроки.СостояниеЭДО = Перечисления.СостоянияДокументовЭДО.ЗакрытСОтклонениемПриглашения Тогда
+
+ ДанныеСтроки.Состояние = НСтр("ru = 'Контрагент отклонил приглашение'");
+
Иначе
ДанныеСтроки.Состояние = НСтр("ru = 'Завершен'");
@@ -2614,7 +2638,6 @@
Возврат ДанныеСтроки.СостояниеЭДО = Перечисления.СостоянияДокументовЭДО.ЗакрытПринудительно
Или ДанныеСтроки.СостояниеЭДО = Перечисления.СостоянияДокументовЭДО.ЗакрытСОтклонением
- Или ДанныеСтроки.СостояниеЭДО = Перечисления.СостоянияДокументовЭДО.ЗакрытСОтклонениемПриглашения
Или ДанныеСтроки.СостояниеЭДО = Перечисления.СостоянияДокументовЭДО.ЗакрытСОшибкойПередачи;
КонецФункции
@@ -2656,10 +2679,16 @@
ИдентификаторыДокументовПакетов.Вставить(ДанныеСтроки.КлючСортировкиПакета, СписокДокументов);
КонецЦикла;
-
+
+ ВыводитьКоличествоНовыхСообщений = Ложь;
+
Для Каждого ТекущаяСтрока Из Строки Цикл
ДанныеСтроки = ТекущаяСтрока.Значение.Данные;
+
+ Если ДанныеСтроки.Свойство("КоличествоНепрочитанныхСообщений") Тогда
+ ВыводитьКоличествоНовыхСообщений = Истина;
+ КонецЕсли;
ПредставлениеСостояния(ДанныеСтроки);
@@ -2734,6 +2763,10 @@
КонецЦикла;
+ Если ВыводитьКоличествоНовыхСообщений Тогда
+ УстановитьКоличествоНепрочитанныхСообщений(Строки, Строки.ПолучитьКлючи());
+ КонецЕсли;
+
ОбменСКонтрагентамиПереопределяемый.ДинамическийСписокПриПолученииДанныхНаСервере(ИмяЭлемента, Настройки, Строки);
КонецПроцедуры
@@ -2814,7 +2847,12 @@
Возврат;
КонецЕсли;
+ ДоступныеПоляФильтров = ПоляФильтров();
Для Каждого Фильтр Из ФильтрыСписка Цикл
+ Если ДоступныеПоляФильтров.Найти(Фильтр.Ключ) = Неопределено Тогда
+ Продолжить;
+ КонецЕсли;
+
ЭтотОбъект[Фильтр.Ключ] = Фильтр.Значение;
КонецЦикла;
@@ -2828,7 +2866,12 @@
Возврат;
КонецЕсли;
+ ДоступныеПоляФильтров = ПоляФильтров();
Для Каждого Фильтр Из ФильтрыСписка Цикл
+ Если ДоступныеПоляФильтров.Найти(Фильтр.Ключ) = Неопределено Тогда
+ Продолжить;
+ КонецЕсли;
+
ЭтотОбъект[Фильтр.Ключ] = Неопределено;
УстановитьОтборыНаСервере(, Фильтр.Ключ);
КонецЦикла;
@@ -2853,6 +2896,7 @@
&НаСервере
Процедура УстановитьФильтрыСписков()
+ ДоступныеПоляФильтров = ПоляФильтров();
Для Каждого Раздел Из ИменаСписковФормы() Цикл
Фильтры = КэшФильтровВСписках.Получить(Раздел);
Если Фильтры = Неопределено Тогда
@@ -2860,6 +2904,10 @@
КонецЕсли;
Для Каждого Фильтр Из Фильтры Цикл
+ Если ДоступныеПоляФильтров.Найти(Фильтр.Ключ) = Неопределено Тогда
+ Продолжить;
+ КонецЕсли;
+
ЭтотОбъект[Фильтр.Ключ] = Фильтр.Значение;
УстановитьОтборыНаСервере(Раздел, Фильтр.Ключ);
КонецЦикла;
@@ -3218,6 +3266,12 @@
КонецПроцедуры
+&НаСервере
+Процедура ИзменитьВидимостьКолонкиКоличестваСообщений()
+ Элементы.ВходящиеЭлектронныеДокументыКоличествоНепрочитанныхСообщений.Видимость = ВыполненПереходНаУниверсальныеСообщения;
+ Элементы.ИсходящиеЭлектронныеДокументыКоличествоНепрочитанныхСообщений.Видимость = ВыполненПереходНаУниверсальныеСообщения;
+КонецПроцедуры
+
#КонецОбласти
#Область РаботаСПриглашениями
@@ -3533,6 +3587,7 @@
Процедура ОбновитьОбластьПросмотраНаСервере(ТекущиеДанные)
Если ТребуетсяОбновитьСчетчикиКоличестваДокументов Тогда
+ ОбновитьДинамическийСписокТекущегоРаздела();
КоличествоДокументов();
КонецЕсли;
@@ -4098,7 +4153,8 @@
Элементы.ВходящиеЭлектронныеДокументыКонтекстноеМенюГруппаРаспечататьВыгрузить.Видимость = Ложь;
Элементы.ГруппаРаспечататьВыгрузитьИсходящие.Видимость = Ложь;
Элементы.ИсходящиеЭлектронныеДокументыКонтекстноеМенюГруппаРаспечататьВыгрузить.Видимость = Ложь;
-
+
+ Элементы.ГруппаКнопокУтвердить.Видимость = Ложь;
Элементы.ГруппаКнопокУтвердитьВходящие.Видимость = Ложь;
Элементы.ГруппаКнопокПодписатьВходящие.Видимость = Ложь;
Элементы.ГруппаКнопокАннулироватьВходящие.Видимость = Ложь;
@@ -4218,6 +4274,7 @@
ПредопределенноеЗначение("Перечисление.СостоянияДокументовЭДО.ТребуетсяУтверждение") Тогда
Элементы.СтраницыКомандыСписков.ТекущаяСтраница = Элементы.СтраницаУтвердить;
+ Элементы.ГруппаКнопокУтвердить.Видимость = Истина;
Элементы.ГруппаКнопокУтвердитьВходящие.Видимость = Истина;
Элементы.ГруппаКнопокУтвердитьИсходящие.Видимость = Истина;
Элементы.ГруппаКнопокУтвердитьВходящиеКонтекстноеМеню.Видимость = Истина;
@@ -5206,6 +5263,24 @@
И ЗначениеЗаполнено(ТекущиеДанные.ГруппировкаСтроки);
КонецФункции
+&НаСервереБезКонтекста
+Процедура УстановитьКоличествоНепрочитанныхСообщений(Строки, ЭлектронныеДокументы)
+
+ Если Не ЗначениеЗаполнено(ЭлектронныеДокументы) Тогда
+ Возврат;
+ КонецЕсли;
+
+ КоличествоНепрочитанныхСообщенийПоДокументам = РегистрыСведений.ТекстовыеСообщенияДокументовЭДО.КоличествоНепрочитанныхСообщенийПоДокументам(
+ ЭлектронныеДокументы);
+
+ Для Каждого ТекущаяСтрока Из Строки Цикл
+
+ Данные = ТекущаяСтрока.Значение.Данные;
+ Данные.КоличествоНепрочитанныхСообщений = КоличествоНепрочитанныхСообщенийПоДокументам[Данные.ЭлектронныйДокумент];
+
+ КонецЦикла;
+КонецПроцедуры
+
#КонецОбласти
#Область ЗадолженностьЗаТрафикЭДО
diff --git a/src/DataProcessors/КлассификаторыВЕТИС/Forms/СозданиеХозяйствующегоСубъектаИПредприятия/Ext/Form/Module.bsl b/src/DataProcessors/КлассификаторыВЕТИС/Forms/СозданиеХозяйствующегоСубъектаИПредприятия/Ext/Form/Module.bsl
index 71d68de2c..870041825 100644
--- a/src/DataProcessors/КлассификаторыВЕТИС/Forms/СозданиеХозяйствующегоСубъектаИПредприятия/Ext/Form/Module.bsl
+++ b/src/DataProcessors/КлассификаторыВЕТИС/Forms/СозданиеХозяйствующегоСубъектаИПредприятия/Ext/Form/Module.bsl
@@ -25,7 +25,7 @@
// СтандартныеПодсистемы.КонтактнаяИнформация
ИнициализироватьПоляКонтактнойИнформации();
// Конец СтандартныеПодсистемы.КонтактнаяИнформация
-
+
УправлениеЭлементамиФормы(ЭтотОбъект);
ОбщегоНазначенияСобытияФормИСПереопределяемый.ПриСозданииНаСервере(ЭтотОбъект, Отказ, СтандартнаяОбработка);
@@ -560,7 +560,7 @@
ВыполнитьЗаполнениеРеквизитовПоИНН(РеквизитыКонтрагента);
КонецЕсли;
-
+
КонецПроцедуры
#КонецОбласти
@@ -1794,11 +1794,11 @@
Или Форма.ТипХозяйствующегоСубъекта = ПредопределенноеЗначение("Перечисление.ТипыХозяйствующихСубъектовВЕТИС.ИндивидуальныйПредприниматель")) Тогда
Элементы.ЗаполнитьПоИНН.Доступность = Истина;
-
+
Иначе
Элементы.ЗаполнитьПоИНН.Доступность = Ложь;
-
+
КонецЕсли;
КонецЕсли;
diff --git a/src/DataProcessors/МобильноеРабочееМестоКладовщика/Forms/Отбор/Ext/Form/Module.bsl b/src/DataProcessors/МобильноеРабочееМестоКладовщика/Forms/Отбор/Ext/Form/Module.bsl
index c21550ec9..404dd12ff 100644
--- a/src/DataProcessors/МобильноеРабочееМестоКладовщика/Forms/Отбор/Ext/Form/Module.bsl
+++ b/src/DataProcessors/МобильноеРабочееМестоКладовщика/Forms/Отбор/Ext/Form/Module.bsl
@@ -237,8 +237,9 @@
Иначе
- Описание = Новый ОписаниеОповещения("РезультатСканированияТовара", ЭтотОбъект);
+ Описание = Новый ОписаниеОповещения("РезультатСканированияТовара", ЭтотОбъект);
ПараметрыФормы.Вставить("ТипПоиска", "ПоискНоменклатуры");
+ ПараметрыФормы.Вставить("Организация", Организация);
КонецЕсли;
@@ -407,6 +408,7 @@
ПараметрыФормы.Вставить("Товары", ТоварыВЯчейке);
ПараметрыФормы.Вставить("Склад", Склад);
ПараметрыФормы.Вставить("Помещение", Помещение);
+ ПараметрыФормы.Вставить("Организация", Организация);
ПараметрыФормы.Вставить("ТипОперации", 2);
ПараметрыФормы.Вставить("ПоказыватьФотоТоваров", ПоказыватьФотоТоваров);
ПараметрыФормы.Вставить("Ссылка", Ссылка);
diff --git a/src/DataProcessors/МобильноеРабочееМестоКладовщика/Forms/РазмещениеВЯчейки/Ext/Form.xml b/src/DataProcessors/МобильноеРабочееМестоКладовщика/Forms/РазмещениеВЯчейки/Ext/Form.xml
index 5ed946209..67726289e 100644
--- a/src/DataProcessors/МобильноеРабочееМестоКладовщика/Forms/РазмещениеВЯчейки/Ext/Form.xml
+++ b/src/DataProcessors/МобильноеРабочееМестоКладовщика/Forms/РазмещениеВЯчейки/Ext/Form.xml
@@ -1024,6 +1024,17 @@
xs:boolean
+
+
+
+ ru
+ Организация
+
+
+
+ cfg:CatalogRef.Организации
+
+
@@ -1091,5 +1102,10 @@
+
+
+ cfg:CatalogRef.Организации
+
+
\ No newline at end of file
diff --git a/src/DataProcessors/МобильноеРабочееМестоКладовщика/Forms/РазмещениеВЯчейки/Ext/Form/Module.bsl b/src/DataProcessors/МобильноеРабочееМестоКладовщика/Forms/РазмещениеВЯчейки/Ext/Form/Module.bsl
index 301ae0e5c..030940236 100644
--- a/src/DataProcessors/МобильноеРабочееМестоКладовщика/Forms/РазмещениеВЯчейки/Ext/Form/Module.bsl
+++ b/src/DataProcessors/МобильноеРабочееМестоКладовщика/Forms/РазмещениеВЯчейки/Ext/Form/Module.bsl
@@ -7,6 +7,7 @@
Склад = Параметры.Склад;
Помещение = Параметры.Помещение;
ТипОперации = Параметры.ТипОперации;
+ Организация = Параметры.Организация;
ПоказыватьФотоТоваров = Параметры.ПоказыватьФотоТоваров;
ШтрихкодДокумента = Параметры.ШтрихкодДокумента;
ШтрихкодЯчейки = Параметры.ШтрихкодЯчейки;
@@ -483,7 +484,8 @@
&НаКлиенте
Процедура ПослеЗакрытияВопросаВыбор(Результат, Параметры) Экспорт
- Если Результат = Неопределено Тогда
+ Если Результат = Неопределено
+ Или Результат = "Отмена" Тогда
Возврат;
КонецЕсли;
@@ -501,6 +503,7 @@
Описание = Новый ОписаниеОповещения("РезультатСканированияТовара", ЭтотОбъект);
ПараметрыФормы.Вставить("ТипПоиска", "ПоискНоменклатуры");
+ ПараметрыФормы.Вставить("Организация", Организация);
КонецЕсли;
diff --git a/src/DataProcessors/МобильноеРабочееМестоКладовщика/Forms/ТоварыКРазмещениюПоЯчейкам/Ext/Form/Module.bsl b/src/DataProcessors/МобильноеРабочееМестоКладовщика/Forms/ТоварыКРазмещениюПоЯчейкам/Ext/Form/Module.bsl
index 213315c68..46570ae8b 100644
--- a/src/DataProcessors/МобильноеРабочееМестоКладовщика/Forms/ТоварыКРазмещениюПоЯчейкам/Ext/Form/Module.bsl
+++ b/src/DataProcessors/МобильноеРабочееМестоКладовщика/Forms/ТоварыКРазмещениюПоЯчейкам/Ext/Form/Module.bsl
@@ -271,7 +271,7 @@
Описание = Новый ОписаниеОповещения("ОбновитьФорму", ЭтотОбъект);
ПараметрыФормы = Новый Структура;
- ПараметрыФормы.Вставить("Ссылка", Ссылка);
+ ПараметрыФормы.Вставить("Ссылка", СтруктураНовогоРазмещения.Ссылка);
ПараметрыФормы.Вставить("ПоказыватьФотоТоваров", ПоказыватьФотоТоваров);
ПараметрыФормы.Вставить("ПорядокСканирования", ПорядокСканирования);
diff --git a/src/DataProcessors/НастройкиЭДО/Forms/НастройкаОбменаСКонтрагентом/Ext/Form/Module.bsl b/src/DataProcessors/НастройкиЭДО/Forms/НастройкаОбменаСКонтрагентом/Ext/Form/Module.bsl
index 9390e98ee..bb440c3e3 100644
--- a/src/DataProcessors/НастройкиЭДО/Forms/НастройкаОбменаСКонтрагентом/Ext/Form/Module.bsl
+++ b/src/DataProcessors/НастройкиЭДО/Forms/НастройкаОбменаСКонтрагентом/Ext/Form/Module.bsl
@@ -1576,8 +1576,13 @@
Не ПодтверждениеОбязательно И НастройкиРегламента.РедактироватьОтветнуюПодпись,
НастройкиРегламента.РедактироватьОтветнуюПодпись);
Иначе
- // Изменение реквизитов в процессе работы формы
- Элементы.НастройкаОжидатьОтветнуюПодпись.Доступность = Истина;
+ Если ЭтоФормализованныйФорматБезОтветногоТитула(НастройкаФорматЭД) Тогда
+ НастройкаОжидатьОтветнуюПодпись = Ложь;
+ Элементы.НастройкаОжидатьОтветнуюПодпись.Доступность = Ложь;
+ Иначе
+ // Изменение реквизитов в процессе работы формы
+ Элементы.НастройкаОжидатьОтветнуюПодпись.Доступность = Истина;
+ КонецЕсли;
КонецЕсли;
КонецПроцедуры
@@ -1821,6 +1826,10 @@
КонецЕсли;
КонецЕсли;
+ Если ЭтоФормализованныйФорматБезОтветногоТитула(НастройкаОтправки.Формат) Тогда
+ НастройкаОтправки.ТребуетсяОтветнаяПодпись = Ложь;
+ КонецЕсли;
+
Закрыть(НастройкаОтправки);
КонецПроцедуры
@@ -1909,6 +1918,10 @@
НастройкиИзменены = Истина;
УстановитьЗначенияПолейРегламентаЭДО();
+ Если ЭтоФормализованныйФорматБезОтветногоТитула(НастройкаФорматЭД) Тогда
+ НастройкаОжидатьОтветнуюПодпись = Ложь;
+ КонецЕсли;
+
КонецПроцедуры
&НаКлиенте
@@ -2113,4 +2126,11 @@
КонецФункции
+&НаСервереБезКонтекста
+Функция ЭтоФормализованныйФорматБезОтветногоТитула(Формат)
+
+ Возврат ЭлектронныеДокументыЭДО.ЭтоФормализованныйФорматБезОтветногоТитула(Формат);
+
+КонецФункции
+
#КонецОбласти
diff --git a/src/DataProcessors/ОбменСБанками/Forms/ВводКодаИзSMS/Ext/Form/Module.bsl b/src/DataProcessors/ОбменСБанками/Forms/ВводКодаИзSMS/Ext/Form/Module.bsl
index 70bea5828..8b4ab485e 100644
--- a/src/DataProcessors/ОбменСБанками/Forms/ВводКодаИзSMS/Ext/Form/Module.bsl
+++ b/src/DataProcessors/ОбменСБанками/Forms/ВводКодаИзSMS/Ext/Form/Module.bsl
@@ -69,7 +69,20 @@
&НаКлиенте
Процедура Подключаемый_ПерейтиПоСсылке()
- ФайловаяСистемаКлиент.ОткрытьНавигационнуюСсылку(URL);
+ Оповещение = Новый ОписаниеОповещения("ПослеОткрытияНавигационнойСсылки", ЭтотОбъект);
+ ФайловаяСистемаКлиент.ОткрытьНавигационнуюСсылку(URL, Оповещение);
+
+КонецПроцедуры
+
+&НаКлиенте
+Процедура ПослеОткрытияНавигационнойСсылки(ПриложениеЗапущено, ДополнительныеПараметры) Экспорт
+
+ Если Не ПриложениеЗапущено Тогда
+ ЗаголовокОшибки = НСтр("ru = 'Не удалось открыть веб-страницу для подтверждения платежа.'");
+ ТекстОшибки = НСтр("ru = 'Не найден браузер по умолчанию или произошел сбой при его запуске.
+ |Проверьте настройки в операционной системе приложений по умолчанию для открытия по HTTP/HTTPS.'");
+ ПоказатьОшибку(ЗаголовокОшибки, ТекстОшибки);
+ КонецЕсли;
КонецПроцедуры
diff --git a/src/DataProcessors/ОбменСКонтрагентами/Templates/ВерсииФорматовЭлектронныхДокументов/Ext/Template.xml b/src/DataProcessors/ОбменСКонтрагентами/Templates/ВерсииФорматовЭлектронныхДокументов/Ext/Template.xml
index c29d16af2..f2cd692ce 100644
--- a/src/DataProcessors/ОбменСКонтрагентами/Templates/ВерсииФорматовЭлектронныхДокументов/Ext/Template.xml
+++ b/src/DataProcessors/ОбменСКонтрагентами/Templates/ВерсииФорматовЭлектронныхДокументов/Ext/Template.xml
@@ -5205,119 +5205,107 @@
- 82
+ 101
ru
- ПрайсЛист
+ СчетОферта
- 65
+ 102
ru
- CML_4
+ ON_CHETOP_1_998_01_05_01_01
- 80
+ 103
ru
- CML 4.02
+ Счет на оплату (ЕД-7-26/29@)
- 67
+ 111
+
+
+
+
+ 112
ru
- Да
+ 19.03.2025
- 92
+ 112
- 92
+ 106
- 93
+ 107
- 87
+ 113
+
+
+
+
+ 109
ru
- Документ создан по формату, поддержка которого более не осуществляется. Рекомендуется перевести обмен с контрагентом на формат CML2.08.
+ ON_CHETOP_1_998_01_05_01_01
- 88
+ 113
- 37
+ 114
ru
- http://v8.1c.ru/edi/edi_stnd
+ https://its.1c.ru/db/garant#content:411428643:hdoc
- 88
+ 103
ru
- CommerceML, редакция 4.02
-
-
-
-
-
-
- 89
-
-
- ru
- http://v8.1c.ru/edi/edi_stnd/90/91.htm
-
-
-
-
-
-
- 65
-
-
- ru
- CML 4.02
+ Счет на оплату (ЕД-7-26/29@)
@@ -5326,6 +5314,130 @@
45
+
+
+
+ 82
+
+
+ ru
+ ПрайсЛист
+
+
+
+
+
+
+ 65
+
+
+ ru
+ CML_4
+
+
+
+
+
+
+ 80
+
+
+ ru
+ CML 4.02
+
+
+
+
+
+
+ 67
+
+
+ ru
+ Да
+
+
+
+
+
+
+ 92
+
+
+
+
+ 92
+
+
+
+
+ 93
+
+
+
+
+ 87
+
+
+ ru
+ Документ создан по формату, поддержка которого более не осуществляется. Рекомендуется перевести обмен с контрагентом на формат CML2.08.
+
+
+
+
+
+
+ 88
+
+
+
+
+ 37
+
+
+ ru
+ http://v8.1c.ru/edi/edi_stnd
+
+
+
+
+
+
+ 88
+
+
+ ru
+ CommerceML, редакция 4.02
+
+
+
+
+
+
+ 89
+
+
+ ru
+ http://v8.1c.ru/edi/edi_stnd/90/91.htm
+
+
+
+
+
+
+ 65
+
+
+ ru
+ CML 4.02
+
+
+
+
+
+
+
+ 46
@@ -5437,7 +5549,7 @@
- 46
+ 47
@@ -5560,236 +5672,112 @@
-
- 47
-
-
-
- 83
-
-
- ru
- ЗаказТовара
-
-
-
-
-
-
- 40
-
-
- ru
- CML_2_08
-
-
-
-
-
-
- 84
-
-
- ru
- CML 2.08
-
-
-
-
-
-
- 41
-
-
-
-
- 41
-
-
-
-
- 41
-
-
-
-
- 94
-
-
-
-
- 95
-
-
-
-
- 96
-
-
-
-
- 44
-
-
- ru
- urn:1C.ru:commerceml_2
-
-
-
-
-
-
- 96
-
-
- ru
- CommerceML, редакция 2.08
-
-
-
-
-
-
- 97
-
-
- ru
- http://v8.1c.ru/edi/edi_stnd/90/92.htm
-
-
-
-
-
-
- 40
-
-
- ru
- CML 2.08
-
-
-
-
-
-
48
- 82
+ 83
ru
- ОтветНаЗаказ
+ ЗаказТовара
- 65
+ 40
ru
- CML_4
+ CML_2_08
- 80
+ 84
ru
- CML 4.02
+ CML 2.08
- 67
+ 41
+
+
+
+
+ 41
+
+
+
+
+ 41
+
+
+
+
+ 94
+
+
+
+
+ 95
+
+
+
+
+ 96
+
+
+
+
+ 44
ru
- Да
+ urn:1C.ru:commerceml_2
- 92
-
-
-
-
- 92
-
-
-
-
- 93
-
-
-
-
- 87
+ 96
ru
- Документ создан по формату, поддержка которого более не осуществляется. Рекомендуется перевести обмен с контрагентом на формат CML2.08.
+ CommerceML, редакция 2.08
- 88
-
-
-
-
- 37
+ 97
ru
- http://v8.1c.ru/edi/edi_stnd
+ http://v8.1c.ru/edi/edi_stnd/90/92.htm
- 88
+ 40
ru
- CommerceML, редакция 4.02
-
-
-
-
-
-
- 89
-
-
- ru
- http://v8.1c.ru/edi/edi_stnd/90/91.htm
-
-
-
-
-
-
- 65
-
-
- ru
- CML 4.02
+ CML 2.08
@@ -5798,6 +5786,130 @@
49
+
+
+
+ 82
+
+
+ ru
+ ОтветНаЗаказ
+
+
+
+
+
+
+ 65
+
+
+ ru
+ CML_4
+
+
+
+
+
+
+ 80
+
+
+ ru
+ CML 4.02
+
+
+
+
+
+
+ 67
+
+
+ ru
+ Да
+
+
+
+
+
+
+ 92
+
+
+
+
+ 92
+
+
+
+
+ 93
+
+
+
+
+ 87
+
+
+ ru
+ Документ создан по формату, поддержка которого более не осуществляется. Рекомендуется перевести обмен с контрагентом на формат CML2.08.
+
+
+
+
+
+
+ 88
+
+
+
+
+ 37
+
+
+ ru
+ http://v8.1c.ru/edi/edi_stnd
+
+
+
+
+
+
+ 88
+
+
+ ru
+ CommerceML, редакция 4.02
+
+
+
+
+
+
+ 89
+
+
+ ru
+ http://v8.1c.ru/edi/edi_stnd/90/91.htm
+
+
+
+
+
+
+ 65
+
+
+ ru
+ CML 4.02
+
+
+
+
+
+
+
+ 50
@@ -5909,7 +6021,7 @@
- 50
+ 51
@@ -6033,7 +6145,7 @@
- 51
+ 52
@@ -6145,7 +6257,7 @@
- 52
+ 53
@@ -6269,11 +6381,11 @@
- 53
+ 54
- 111
+ 115
ru
@@ -6381,11 +6493,11 @@
- 54
+ 55
- 111
+ 115
ru
@@ -6487,11 +6599,11 @@
- 55
+ 56
- 112
+ 116
ru
@@ -6541,12 +6653,12 @@
- 113
+ 117
- 114
+ 118
@@ -6556,7 +6668,7 @@
- 115
+ 119
ru
@@ -6601,11 +6713,11 @@
- 56
+ 57
- 112
+ 116
ru
@@ -6653,12 +6765,12 @@
- 113
+ 117
- 114
+ 118
@@ -6668,7 +6780,7 @@
- 115
+ 119
ru
@@ -6702,11 +6814,11 @@
- 57
+ 58
- 112
+ 116
ru
@@ -6754,12 +6866,12 @@
- 113
+ 117
- 114
+ 118
@@ -6769,7 +6881,7 @@
- 115
+ 119
ru
@@ -6791,7 +6903,7 @@
- 116
+ 120
ru
@@ -6803,11 +6915,11 @@
- 58
+ 59
- 112
+ 116
ru
@@ -6862,12 +6974,12 @@
- 113
+ 117
- 114
+ 118
@@ -6877,7 +6989,7 @@
- 115
+ 119
ru
@@ -6922,9 +7034,9 @@
- 59
+ 60
- 117
+ 121
100
@@ -7036,9 +7148,9 @@
- 60
+ 61
- 117
+ 121
100
@@ -7156,7 +7268,7 @@
- 61
+ 62
@@ -7268,7 +7380,7 @@
- 62
+ 63
@@ -7368,7 +7480,7 @@
- 63
+ 64
@@ -7486,7 +7598,7 @@
- 64
+ 65
@@ -7604,11 +7716,11 @@
- 65
+ 66
- 118
+ 122
ru
@@ -7619,7 +7731,7 @@
- 116
+ 120
ru
@@ -7630,7 +7742,7 @@
- 119
+ 123
ru
@@ -7640,31 +7752,6 @@
-
-
- 120
-
-
-
-
- 121
-
-
-
-
- 121
-
-
-
-
- 122
-
-
-
-
- 123
-
-
124
@@ -7673,6 +7760,31 @@
125
+
+
+
+
+ 125
+
+
+
+
+ 126
+
+
+
+
+ 127
+
+
+
+
+ 128
+
+
+
+
+ 129
ru
@@ -7683,7 +7795,7 @@
- 124
+ 128
ru
@@ -7694,7 +7806,7 @@
- 126
+ 130
ru
@@ -7717,11 +7829,11 @@
- 66
+ 67
- 118
+ 122
ru
@@ -7732,7 +7844,7 @@
- 116
+ 120
ru
@@ -7743,7 +7855,7 @@
- 119
+ 123
ru
@@ -7754,12 +7866,12 @@
- 120
+ 124
- 121
+ 125
ru
@@ -7768,29 +7880,29 @@
-
-
- 121
-
-
-
-
- 122
-
-
-
-
- 123
-
-
-
-
- 124
-
-
125
+
+
+
+
+ 126
+
+
+
+
+ 127
+
+
+
+
+ 128
+
+
+
+
+ 129
ru
@@ -7824,9 +7936,9 @@
- 67
+ 68
- 117
+ 121
100
@@ -7928,11 +8040,11 @@
- 68
+ 69
- 127
+ 131
ru
@@ -7943,7 +8055,7 @@
- 128
+ 132
ru
@@ -7954,7 +8066,7 @@
- 128
+ 132
ru
@@ -7965,12 +8077,12 @@
- 129
+ 111
- 130
+ 112
ru
@@ -7981,17 +8093,7 @@
- 130
-
-
-
-
- 131
-
-
-
-
- 132
+ 112
@@ -8002,6 +8104,16 @@
134
+
+
+
+
+ 135
+
+
+
+
+ 136
ru
@@ -8012,7 +8124,7 @@
- 135
+ 113
ru
@@ -8023,7 +8135,7 @@
- 136
+ 114
ru
@@ -8034,15 +8146,15 @@
- 128
+ 132
true
- 117
- 69
- 69
+ 121
+ 70
+ 70
0
0
@@ -8053,7 +8165,7 @@
Rows
5
- 68
+ 69
-1
-1
@@ -8694,6 +8806,25 @@
1
183
+
+ 1
+ 88
+
+
+ 1
+ 105
+
+
+ 1
+ 175
+
+
+ 1
+ 1
+ 0
+ 1
+ 183
+
1
298
@@ -8798,14 +8929,6 @@
1
162
-
- 1
- 88
-
-
- 1
- 105
-
1
206
@@ -8822,15 +8945,4 @@
1
283
-
- 1
- 175
-
-
- 1
- 1
- 0
- 1
- 183
-
\ No newline at end of file
diff --git a/src/DataProcessors/ОбменСКонтрагентами/Templates/ИзвещениеОПолучении/Ext/Template.xml b/src/DataProcessors/ОбменСКонтрагентами/Templates/ИзвещениеОПолучении/Ext/Template.xml
index 106d8e3ce..c482bca15 100644
--- a/src/DataProcessors/ОбменСКонтрагентами/Templates/ИзвещениеОПолучении/Ext/Template.xml
+++ b/src/DataProcessors/ОбменСКонтрагентами/Templates/ИзвещениеОПолучении/Ext/Template.xml
@@ -3873,6 +3873,12 @@
60
+
+
+ ru
+ 0490
+
+
@@ -3979,6 +3985,12 @@
60
+
+
+ ru
+ 0492
+
+
@@ -4085,6 +4097,12 @@
60
+
+
+ ru
+ 0493
+
+
@@ -4191,6 +4209,12 @@
60
+
+
+ ru
+ 0495
+
+
diff --git a/src/DataProcessors/ОбменСКонтрагентами/Templates/ПредложениеОбАннулировании/Ext/Template.xml b/src/DataProcessors/ОбменСКонтрагентами/Templates/ПредложениеОбАннулировании/Ext/Template.xml
index e5b1799c5..87b4ddb5e 100644
--- a/src/DataProcessors/ОбменСКонтрагентами/Templates/ПредложениеОбАннулировании/Ext/Template.xml
+++ b/src/DataProcessors/ОбменСКонтрагентами/Templates/ПредложениеОбАннулировании/Ext/Template.xml
@@ -4618,6 +4618,12 @@
61
+
+
+ ru
+ 0490
+
+
@@ -4724,6 +4730,12 @@
61
+
+
+ ru
+ 0491
+
+
@@ -4830,6 +4842,12 @@
61
+
+
+ ru
+ 0492
+
+
@@ -4936,6 +4954,12 @@
61
+
+
+ ru
+ 0493
+
+
@@ -5042,6 +5066,12 @@
61
+
+
+ ru
+ 0494
+
+
diff --git a/src/DataProcessors/ОбменСКонтрагентами/Templates/УКД_ИнформацияПродавца_2020/Ext/Template.xml b/src/DataProcessors/ОбменСКонтрагентами/Templates/УКД_ИнформацияПродавца_2020/Ext/Template.xml
index bafe3e28f..3c781fbd4 100644
--- a/src/DataProcessors/ОбменСКонтрагентами/Templates/УКД_ИнформацияПродавца_2020/Ext/Template.xml
+++ b/src/DataProcessors/ОбменСКонтрагентами/Templates/УКД_ИнформацияПродавца_2020/Ext/Template.xml
@@ -1909,561 +1909,6 @@
17
-
- 99
-
-
- 96
-
-
- ru
- НомерИсходногоДокумента
-
-
-
-
-
-
- 0
-
-
-
-
- 24
-
-
-
-
- 24
-
-
-
-
- 24
-
-
-
-
- 25
-
-
-
-
- 25
-
-
-
-
-
- 100
-
-
-
-
- 98
-
-
- ru
- Устарел. Следует заполнять ИсходныеДокументы.НомерСтроки.НомерИсходногоДокумента
-
-
-
-
-
-
- 24
-
-
- ru
- 1424
-
-
-
-
-
-
- 101
-
-
-
-
- 95
-
-
- ru
- Строка
-
-
-
-
-
-
- 95
-
-
-
-
- 0
-
-
- ru
- 1000
-
-
-
-
-
- 15
-
- 10
-
-
- ru
- Файл.Документ.СвКСчФ.СчФ.НомерСчФ
-
-
-
-
-
-
-
- 18
-
- 99
-
-
- 96
-
-
- ru
- ДатаИсходногоДокумента
-
-
-
-
-
-
- 0
-
-
-
-
- 24
-
-
-
-
- 24
-
-
-
-
- 24
-
-
-
-
- 25
-
-
-
-
- 25
-
-
-
-
-
- 100
-
-
-
-
- 98
-
-
- ru
- Устарел. Следует заполнять ИсходныеДокументы.НомерСтроки.ДатаИсходногоДокумента
-
-
-
-
-
-
- 24
-
-
- ru
- 1425
-
-
-
-
-
-
- 101
-
-
-
-
- 95
-
-
- ru
- Дата
-
-
-
-
-
-
- 95
-
-
-
- 15
-
- 10
-
-
- ru
- Файл.Документ.СвКСчФ.СчФ.ДатаСчФ
-
-
-
-
-
-
-
- 19
-
- 99
-
-
- 96
-
-
- ru
- ПредставлениеИсходногоДокумента
-
-
-
-
-
-
- 0
-
-
-
-
- 24
-
-
-
-
- 24
-
-
-
-
- 24
-
-
-
-
- 25
-
-
-
-
- 25
-
-
-
-
- 100
-
-
-
-
- 98
-
-
- ru
- Устарел. Следует заполнять ИсходныеДокументы.НомерСтроки.ПредставлениеИсходногоДокумента
-"Накладная" или "акт на передачу прав" или "соглашение" и т.д.
-
-
-
-
-
-
- 24
-
-
- ru
- 1426
-
-
-
-
-
-
- 101
-
-
-
-
- 95
-
-
- ru
- Строка
-
-
-
-
-
-
- 95
-
-
-
-
- 0
-
-
- ru
- 255
-
-
-
-
-
-
-
- 20
-
- 99
-
-
- 96
-
-
- ru
- НомерИсправленияИсходногоДокумента
-
-
-
-
-
-
- 0
-
-
-
-
- 24
-
-
-
-
- 24
-
-
-
-
- 24
-
-
-
-
- 25
-
-
-
-
- 25
-
-
-
-
- 97
-
-
-
-
- 98
-
-
- ru
- Устарел. Следует заполнять ИсходныеДокументы.НомерСтроки.ИсправленияИсходногоДокумента.НомерСтроки.НомерИсправленияИсходногоДокумента
-Если значение указано, должно быть >= 1
-
-
-
-
-
-
- 24
-
-
- ru
- 1427
-
-
-
-
-
-
- 101
-
-
-
-
- 95
-
-
- ru
- Число
-
-
-
-
-
-
- 95
-
-
- ru
- 3
-
-
-
-
-
- 15
-
- 10
-
-
- ru
- Файл.Документ.СвКСчФ.СчФ.ИспрСчФ.НомИспрСчФ
-
-
-
-
-
-
-
- 21
-
- 99
-
-
- 96
-
-
- ru
- ДатаИсправленияИсходногоДокумента
-
-
-
-
-
-
- 0
-
-
-
-
- 24
-
-
-
-
- 24
-
-
-
-
- 24
-
-
-
-
- 25
-
-
-
-
- 25
-
-
-
-
- 100
-
-
-
-
- 102
-
-
- ru
- Устарел. Следует заполнять ИсходныеДокументы.НомерСтроки.ИсправленияИсходногоДокумента.НомерСтроки.ДатаИсправленияИсходногоДокумента
-
-
-
-
-
-
- 24
-
-
- ru
- 1428
-
-
-
-
-
-
- 101
-
-
-
-
- 95
-
-
- ru
- Дата
-
-
-
-
-
-
- 95
-
-
-
- 15
-
- 10
-
-
- ru
- Файл.Документ.СвКСчФ.СчФ.ИспрСчФ.ДатаИспрСчФ
-
-
-
-
-
-
-
- 22
19
@@ -2511,12 +1956,12 @@
- 100
+ 99
- 103
+ 100
@@ -2542,7 +1987,7 @@
- 104
+ 101
ru
@@ -2560,7 +2005,7 @@
- 23
+ 18
19
@@ -2612,12 +2057,12 @@
- 100
+ 99
- 103
+ 100
@@ -2627,7 +2072,7 @@
- 101
+ 102
@@ -2637,7 +2082,7 @@
- 104
+ 101
ru
@@ -2655,7 +2100,7 @@
- 24
+ 19
19
@@ -2703,12 +2148,12 @@
- 100
+ 99
- 103
+ 100
@@ -2724,7 +2169,7 @@
- 101
+ 102
@@ -2769,7 +2214,7 @@
- 25
+ 20
19
@@ -2817,12 +2262,12 @@
- 100
+ 99
- 103
+ 100
@@ -2838,7 +2283,7 @@
- 101
+ 102
@@ -2872,7 +2317,7 @@
- 26
+ 21
19
@@ -2914,12 +2359,12 @@
- 100
+ 99
- 103
+ 100
ru
@@ -2941,7 +2386,7 @@
- 101
+ 102
@@ -2980,7 +2425,7 @@
- 27
+ 22
19
@@ -3022,12 +2467,12 @@
- 100
+ 99
- 103
+ 100
@@ -3053,7 +2498,7 @@
- 104
+ 101
ru
@@ -3071,7 +2516,7 @@
- 28
+ 23
19
@@ -3113,12 +2558,12 @@
- 100
+ 99
- 103
+ 100
@@ -3128,7 +2573,7 @@
- 101
+ 102
@@ -3138,7 +2583,7 @@
- 104
+ 101
ru
@@ -3156,7 +2601,7 @@
- 29
+ 24
19
@@ -3204,7 +2649,7 @@
- 100
+ 99
@@ -3231,7 +2676,7 @@
- 101
+ 102
@@ -3271,7 +2716,7 @@
- 30
+ 25
19
@@ -3319,12 +2764,12 @@
- 100
+ 99
- 103
+ 100
@@ -3340,7 +2785,7 @@
- 101
+ 102
@@ -3374,11 +2819,11 @@
- 31
+ 26
- 105
+ 103
ru
@@ -3427,7 +2872,7 @@
- 101
+ 102
@@ -3450,11 +2895,11 @@
- 32
+ 27
- 106
+ 104
ru
@@ -3560,7 +3005,7 @@
- 33
+ 28
66
@@ -3608,12 +3053,12 @@
- 107
+ 105
- 108
+ 106
ru
@@ -3624,7 +3069,7 @@
- 109
+ 107
ru
@@ -3651,7 +3096,7 @@
- 110
+ 108
@@ -3680,7 +3125,7 @@
- 34
+ 29
66
@@ -3722,12 +3167,12 @@
- 107
+ 105
- 108
+ 106
ru
@@ -3765,7 +3210,7 @@
- 111
+ 109
@@ -3776,7 +3221,7 @@
15
- 112
+ 110
ru
@@ -3788,7 +3233,7 @@
- 35
+ 30
66
@@ -3830,12 +3275,12 @@
- 107
+ 105
- 108
+ 106
@@ -3873,7 +3318,7 @@
- 104
+ 101
ru
@@ -3890,7 +3335,7 @@
15
- 112
+ 110
ru
@@ -3902,13 +3347,13 @@
- 36
+ 31
- 113
+ 111
1
- 114
+ 112
ru
@@ -3919,7 +3364,7 @@
- 114
+ 112
@@ -3950,12 +3395,12 @@
- 107
+ 105
- 108
+ 106
@@ -3987,7 +3432,7 @@
- 115
+ 113
ru
@@ -4004,24 +3449,24 @@
15
- 112
+ 110
- 37
+ 32
- 113
+ 111
1
- 114
+ 112
- 114
+ 112
ru
@@ -4058,12 +3503,12 @@
- 107
+ 105
- 108
+ 106
ru
@@ -4090,7 +3535,7 @@
- 116
+ 114
ru
@@ -4101,7 +3546,7 @@
- 110
+ 108
@@ -4118,7 +3563,7 @@
15
- 112
+ 110
ru
@@ -4130,18 +3575,18 @@
- 38
+ 33
- 113
+ 111
1
- 114
+ 112
- 114
+ 112
ru
@@ -4172,12 +3617,12 @@
- 107
+ 105
- 108
+ 106
@@ -4198,7 +3643,7 @@
- 116
+ 114
ru
@@ -4209,7 +3654,7 @@
- 110
+ 108
@@ -4226,7 +3671,7 @@
15
- 112
+ 110
ru
@@ -4238,18 +3683,18 @@
- 39
+ 34
- 113
+ 111
1
- 114
+ 112
- 114
+ 112
ru
@@ -4280,12 +3725,12 @@
- 107
+ 105
- 108
+ 106
ru
@@ -4322,7 +3767,7 @@
Comment
0
- 117
+ 115
ru
@@ -4331,7 +3776,7 @@
1
-24
- 39
+ 34
51
1
159
@@ -4344,7 +3789,7 @@
- 110
+ 108
@@ -4355,7 +3800,7 @@
15
- 112
+ 110
ru
@@ -4367,18 +3812,18 @@
- 40
+ 35
- 113
+ 111
1
- 114
+ 112
- 114
+ 112
ru
@@ -4409,12 +3854,12 @@
- 107
+ 105
- 108
+ 106
@@ -4435,7 +3880,7 @@
- 116
+ 114
ru
@@ -4446,7 +3891,7 @@
- 110
+ 108
@@ -4463,7 +3908,7 @@
15
- 112
+ 110
ru
@@ -4475,7 +3920,7 @@
- 41
+ 36
66
@@ -4517,12 +3962,12 @@
- 107
+ 105
- 108
+ 106
@@ -4543,7 +3988,7 @@
- 116
+ 114
ru
@@ -4554,7 +3999,7 @@
- 110
+ 108
@@ -4571,7 +4016,7 @@
15
- 112
+ 110
ru
@@ -4583,7 +4028,7 @@
- 42
+ 37
66
@@ -4629,12 +4074,12 @@
- 107
+ 105
- 108
+ 106
@@ -4672,7 +4117,7 @@
- 104
+ 101
ru
@@ -4689,7 +4134,7 @@
15
- 112
+ 110
ru
@@ -4701,12 +4146,12 @@
- 43
+ 38
- 113
+ 111
- 118
+ 116
@@ -4733,12 +4178,12 @@
- 119
+ 117
- 119
+ 117
ru
@@ -4749,12 +4194,12 @@
- 107
+ 105
- 108
+ 106
@@ -4782,7 +4227,7 @@
- 115
+ 113
ru
@@ -4794,12 +4239,12 @@
- 44
+ 39
- 113
+ 111
- 118
+ 116
@@ -4842,12 +4287,12 @@
- 107
+ 105
- 108
+ 106
ru
@@ -4885,7 +4330,7 @@
- 110
+ 108
@@ -4902,7 +4347,7 @@
15
- 112
+ 110
ru
@@ -4914,12 +4359,12 @@
- 45
+ 40
- 113
+ 111
- 118
+ 116
@@ -4956,12 +4401,12 @@
- 107
+ 105
- 108
+ 106
@@ -4993,7 +4438,7 @@
- 110
+ 108
@@ -5010,7 +4455,7 @@
15
- 112
+ 110
ru
@@ -5022,12 +4467,12 @@
- 46
+ 41
- 113
+ 111
- 118
+ 116
@@ -5064,12 +4509,12 @@
- 120
+ 118
- 108
+ 106
ru
@@ -5106,7 +4551,7 @@
Comment
0
- 117
+ 115
ru
@@ -5115,7 +4560,7 @@
1
-24
- 46
+ 41
51
1
159
@@ -5128,7 +4573,7 @@
- 111
+ 109
@@ -5139,7 +4584,7 @@
15
- 112
+ 110
ru
@@ -5151,12 +4596,12 @@
- 47
+ 42
- 113
+ 111
- 118
+ 116
@@ -5193,12 +4638,12 @@
- 107
+ 105
- 108
+ 106
@@ -5230,7 +4675,7 @@
- 110
+ 108
@@ -5247,7 +4692,7 @@
15
- 112
+ 110
ru
@@ -5259,7 +4704,7 @@
- 48
+ 43
66
@@ -5302,12 +4747,12 @@
- 107
+ 105
- 108
+ 106
@@ -5323,7 +4768,7 @@
- 121
+ 119
ru
@@ -5351,7 +4796,7 @@
15
- 112
+ 110
ru
@@ -5363,7 +4808,7 @@
- 49
+ 44
66
@@ -5415,12 +4860,12 @@
- 107
+ 105
- 108
+ 106
@@ -5436,7 +4881,7 @@
- 121
+ 119
ru
@@ -5469,7 +4914,7 @@
15
- 112
+ 110
ru
@@ -5481,7 +4926,7 @@
- 50
+ 45
66
@@ -5527,12 +4972,12 @@
- 122
+ 120
- 123
+ 121
ru
@@ -5554,7 +4999,7 @@
- 121
+ 119
ru
@@ -5587,7 +5032,7 @@
15
- 112
+ 110
ru
@@ -5599,7 +5044,7 @@
- 51
+ 46
66
@@ -5645,12 +5090,12 @@
- 107
+ 105
- 108
+ 106
ru
@@ -5672,7 +5117,7 @@
- 121
+ 119
ru
@@ -5694,7 +5139,7 @@
- 124
+ 122
@@ -5705,7 +5150,7 @@
15
- 112
+ 110
ru
@@ -5717,7 +5162,7 @@
- 52
+ 47
66
@@ -5763,12 +5208,12 @@
- 107
+ 105
- 108
+ 106
@@ -5800,7 +5245,7 @@
- 124
+ 122
@@ -5823,9 +5268,9 @@
- 53
+ 48
- 113
+ 111
77
@@ -5869,17 +5314,17 @@
- 107
+ 105
- 108
+ 106
- 125
+ 123
ru
@@ -5895,7 +5340,7 @@
- 111
+ 109
ru
@@ -5906,7 +5351,7 @@
- 110
+ 108
@@ -5935,9 +5380,9 @@
- 54
+ 49
- 113
+ 111
77
@@ -5945,7 +5390,7 @@
- 126
+ 124
ru
@@ -5954,6 +5399,16 @@
+
+
+ 124
+
+
+
+
+ 125
+
+
126
@@ -5964,6 +5419,11 @@
127
+
+
+ 127
+
+
128
@@ -5972,21 +5432,6 @@
129
-
-
-
-
- 129
-
-
-
-
- 130
-
-
-
-
- 131
ru
@@ -5997,7 +5442,7 @@
- 132
+ 130
ru
@@ -6008,12 +5453,12 @@
- 126
+ 124
- 133
+ 131
ru
@@ -6024,12 +5469,12 @@
- 134
+ 132
- 126
+ 124
ru
@@ -6040,12 +5485,12 @@
- 126
+ 124
- 135
+ 133
ru
@@ -6057,9 +5502,9 @@
- 55
+ 50
- 113
+ 111
77
@@ -6067,7 +5512,7 @@
- 136
+ 134
ru
@@ -6103,17 +5548,17 @@
- 107
+ 105
- 108
+ 106
- 125
+ 123
ru
@@ -6129,7 +5574,7 @@
- 116
+ 114
ru
@@ -6140,7 +5585,7 @@
- 104
+ 101
ru
@@ -6157,7 +5602,7 @@
15
- 112
+ 110
ru
@@ -6169,12 +5614,12 @@
- 56
+ 51
66
- 136
+ 134
ru
@@ -6221,12 +5666,12 @@
- 107
+ 105
- 108
+ 106
@@ -6264,7 +5709,7 @@
- 104
+ 101
ru
@@ -6293,13 +5738,13 @@
- 57
+ 52
- 113
+ 111
1
- 137
+ 135
ru
@@ -6310,12 +5755,12 @@
- 138
+ 136
- 138
+ 136
@@ -6325,12 +5770,12 @@
- 119
+ 117
- 119
+ 117
ru
@@ -6341,12 +5786,12 @@
- 107
+ 105
- 108
+ 106
@@ -6374,7 +5819,7 @@
- 104
+ 101
ru
@@ -6386,7 +5831,7 @@
15
- 112
+ 110
ru
@@ -6398,9 +5843,9 @@
- 58
+ 53
- 113
+ 111
1
@@ -6460,7 +5905,7 @@
- 139
+ 137
ru
@@ -6471,7 +5916,7 @@
- 140
+ 138
ru
@@ -6488,7 +5933,7 @@
15
- 141
+ 139
ru
@@ -6500,9 +5945,9 @@
- 59
+ 54
- 113
+ 111
1
@@ -6581,7 +6026,7 @@
- 111
+ 109
ru
@@ -6592,7 +6037,7 @@
- 110
+ 108
@@ -6609,7 +6054,7 @@
15
- 112
+ 110
ru
@@ -6621,9 +6066,9 @@
- 60
+ 55
- 113
+ 111
1
@@ -6663,7 +6108,7 @@
- 107
+ 105
ru
@@ -6674,7 +6119,7 @@
- 108
+ 106
ru
@@ -6687,7 +6132,7 @@
- 142
+ 140
ru
@@ -6698,12 +6143,12 @@
- 143
+ 141
- 111
+ 109
ru
@@ -6714,7 +6159,7 @@
- 110
+ 108
@@ -6731,7 +6176,7 @@
15
- 112
+ 110
ru
@@ -6743,9 +6188,9 @@
- 61
+ 56
- 113
+ 111
1
@@ -6785,7 +6230,7 @@
- 107
+ 105
ru
@@ -6796,7 +6241,7 @@
- 108
+ 106
ru
@@ -6809,7 +6254,7 @@
- 142
+ 140
ru
@@ -6820,12 +6265,12 @@
- 143
+ 141
- 111
+ 109
ru
@@ -6836,7 +6281,7 @@
- 110
+ 108
@@ -6853,7 +6298,7 @@
15
- 112
+ 110
ru
@@ -6865,9 +6310,9 @@
- 62
+ 57
- 113
+ 111
77
@@ -6911,17 +6356,17 @@
- 107
+ 105
- 108
+ 106
- 144
+ 142
ru
@@ -6932,7 +6377,7 @@
- 143
+ 141
@@ -6948,7 +6393,7 @@
- 104
+ 101
ru
@@ -6965,7 +6410,7 @@
15
- 112
+ 110
ru
@@ -6977,9 +6422,9 @@
- 63
+ 58
- 113
+ 111
77
@@ -7023,7 +6468,7 @@
- 107
+ 105
ru
@@ -7034,12 +6479,12 @@
- 108
+ 106
- 144
+ 142
ru
@@ -7050,7 +6495,7 @@
- 143
+ 141
@@ -7066,7 +6511,7 @@
- 104
+ 101
ru
@@ -7083,7 +6528,7 @@
15
- 112
+ 110
ru
@@ -7095,9 +6540,9 @@
- 64
+ 59
- 113
+ 111
77
@@ -7141,17 +6586,17 @@
- 107
+ 105
- 108
+ 106
- 144
+ 142
ru
@@ -7162,7 +6607,7 @@
- 143
+ 141
@@ -7178,7 +6623,7 @@
- 104
+ 101
ru
@@ -7195,7 +6640,7 @@
15
- 112
+ 110
ru
@@ -7207,9 +6652,9 @@
- 65
+ 60
- 113
+ 111
77
@@ -7253,17 +6698,17 @@
- 107
+ 105
- 108
+ 106
- 144
+ 142
ru
@@ -7274,7 +6719,7 @@
- 143
+ 141
@@ -7290,7 +6735,7 @@
- 104
+ 101
ru
@@ -7307,7 +6752,7 @@
15
- 112
+ 110
ru
@@ -7319,9 +6764,9 @@
- 66
+ 61
- 113
+ 111
77
@@ -7365,17 +6810,17 @@
- 107
+ 105
- 108
+ 106
- 144
+ 142
ru
@@ -7386,7 +6831,7 @@
- 143
+ 141
@@ -7402,7 +6847,7 @@
- 104
+ 101
ru
@@ -7419,7 +6864,7 @@
15
- 112
+ 110
ru
@@ -7431,9 +6876,9 @@
- 67
+ 62
- 113
+ 111
77
@@ -7477,17 +6922,17 @@
- 107
+ 105
- 108
+ 106
- 144
+ 142
ru
@@ -7498,7 +6943,7 @@
- 143
+ 141
@@ -7514,7 +6959,7 @@
- 104
+ 101
ru
@@ -7531,7 +6976,7 @@
15
- 112
+ 110
ru
@@ -7543,9 +6988,9 @@
- 68
+ 63
- 113
+ 111
77
@@ -7589,17 +7034,17 @@
- 107
+ 105
- 108
+ 106
- 144
+ 142
ru
@@ -7610,7 +7055,7 @@
- 143
+ 141
@@ -7626,7 +7071,7 @@
- 104
+ 101
ru
@@ -7643,7 +7088,7 @@
15
- 112
+ 110
ru
@@ -7655,9 +7100,9 @@
- 69
+ 64
- 113
+ 111
77
@@ -7701,17 +7146,17 @@
- 107
+ 105
- 108
+ 106
- 144
+ 142
ru
@@ -7722,7 +7167,7 @@
- 143
+ 141
@@ -7738,7 +7183,7 @@
- 104
+ 101
ru
@@ -7755,7 +7200,7 @@
15
- 112
+ 110
ru
@@ -7767,9 +7212,9 @@
- 70
+ 65
- 113
+ 111
77
@@ -7861,7 +7306,7 @@
15
- 112
+ 110
ru
@@ -7873,9 +7318,9 @@
- 71
+ 66
- 113
+ 111
77
@@ -7967,7 +7412,7 @@
15
- 112
+ 110
ru
@@ -7979,9 +7424,9 @@
- 72
+ 67
- 113
+ 111
77
@@ -8068,7 +7513,7 @@
- 104
+ 101
ru
@@ -8085,7 +7530,7 @@
15
- 112
+ 110
ru
@@ -8097,9 +7542,9 @@
- 73
+ 68
- 113
+ 111
77
@@ -8186,7 +7631,7 @@
- 104
+ 101
ru
@@ -8203,7 +7648,7 @@
15
- 112
+ 110
ru
@@ -8215,9 +7660,9 @@
- 74
+ 69
- 113
+ 111
77
@@ -8230,7 +7675,7 @@
- 114
+ 112
ru
@@ -8300,7 +7745,7 @@
- 104
+ 101
ru
@@ -8317,7 +7762,7 @@
15
- 112
+ 110
ru
@@ -8329,9 +7774,9 @@
- 75
+ 70
- 113
+ 111
77
@@ -8344,7 +7789,7 @@
- 114
+ 112
ru
@@ -8414,7 +7859,7 @@
- 104
+ 101
ru
@@ -8431,7 +7876,7 @@
15
- 112
+ 110
ru
@@ -8443,9 +7888,9 @@
- 76
+ 71
- 113
+ 111
77
@@ -8532,7 +7977,7 @@
- 104
+ 101
ru
@@ -8549,7 +7994,7 @@
15
- 112
+ 110
ru
@@ -8561,9 +8006,9 @@
- 77
+ 72
- 113
+ 111
77
@@ -8650,7 +8095,7 @@
- 104
+ 101
ru
@@ -8667,7 +8112,7 @@
15
- 112
+ 110
ru
@@ -8679,9 +8124,9 @@
- 78
+ 73
- 113
+ 111
77
@@ -8694,7 +8139,7 @@
- 114
+ 112
ru
@@ -8759,7 +8204,7 @@
- 104
+ 101
ru
@@ -8776,7 +8221,7 @@
15
- 112
+ 110
ru
@@ -8788,9 +8233,9 @@
- 79
+ 74
- 113
+ 111
77
@@ -8803,7 +8248,7 @@
- 114
+ 112
ru
@@ -8868,7 +8313,7 @@
- 104
+ 101
ru
@@ -8885,7 +8330,7 @@
15
- 112
+ 110
ru
@@ -8897,9 +8342,9 @@
- 80
+ 75
- 113
+ 111
77
@@ -8981,7 +8426,7 @@
- 104
+ 101
ru
@@ -8998,7 +8443,7 @@
15
- 112
+ 110
ru
@@ -9010,9 +8455,9 @@
- 81
+ 76
- 113
+ 111
77
@@ -9094,7 +8539,7 @@
- 104
+ 101
ru
@@ -9111,7 +8556,7 @@
15
- 112
+ 110
ru
@@ -9123,9 +8568,9 @@
- 82
+ 77
- 113
+ 111
77
@@ -9212,7 +8657,7 @@
- 104
+ 101
ru
@@ -9229,7 +8674,7 @@
15
- 112
+ 110
ru
@@ -9241,9 +8686,9 @@
- 83
+ 78
- 113
+ 111
77
@@ -9330,7 +8775,7 @@
- 104
+ 101
ru
@@ -9347,7 +8792,7 @@
15
- 112
+ 110
ru
@@ -9359,18 +8804,18 @@
- 84
+ 79
- 113
+ 111
1
- 137
+ 135
- 138
+ 136
ru
@@ -9381,7 +8826,7 @@
- 138
+ 136
@@ -9397,12 +8842,12 @@
- 107
+ 105
- 108
+ 106
ru
@@ -9414,7 +8859,7 @@
11
- 124
+ 122
@@ -9425,9 +8870,9 @@
- 85
+ 80
- 113
+ 111
77
@@ -9482,7 +8927,7 @@
Comment
0
- 117
+ 115
ru
@@ -9491,7 +8936,7 @@
1
-21
- 85
+ 80
51
1
21
@@ -9531,12 +8976,12 @@
- 110
+ 108
- 104
+ 101
ru
@@ -9548,7 +8993,7 @@
15
- 112
+ 110
ru
@@ -9560,9 +9005,9 @@
- 86
+ 81
- 113
+ 111
77
@@ -9640,12 +9085,12 @@
- 110
+ 108
- 104
+ 101
ru
@@ -9657,7 +9102,7 @@
15
- 112
+ 110
ru
@@ -9669,9 +9114,9 @@
- 87
+ 82
- 113
+ 111
77
@@ -9727,7 +9172,7 @@
- 145
+ 143
ru
@@ -9754,12 +9199,12 @@
- 110
+ 108
- 104
+ 101
ru
@@ -9771,7 +9216,7 @@
15
- 112
+ 110
ru
@@ -9783,9 +9228,9 @@
- 88
+ 83
- 113
+ 111
77
@@ -9841,7 +9286,7 @@
Comment
0
- 117
+ 115
ru
@@ -9850,7 +9295,7 @@
1
-24
- 88
+ 83
51
1
24
@@ -9863,7 +9308,7 @@
- 145
+ 143
ru
@@ -9890,12 +9335,12 @@
- 110
+ 108
- 104
+ 101
ru
@@ -9907,7 +9352,7 @@
15
- 112
+ 110
ru
@@ -9919,9 +9364,9 @@
- 89
+ 84
- 113
+ 111
77
@@ -9977,7 +9422,7 @@
- 145
+ 143
ru
@@ -10004,12 +9449,12 @@
- 110
+ 108
- 104
+ 101
ru
@@ -10021,7 +9466,7 @@
15
- 112
+ 110
ru
@@ -10033,9 +9478,9 @@
- 90
+ 85
- 113
+ 111
77
@@ -10092,7 +9537,7 @@
- 145
+ 143
ru
@@ -10119,12 +9564,12 @@
- 110
+ 108
- 104
+ 101
ru
@@ -10136,7 +9581,7 @@
15
- 112
+ 110
ru
@@ -10148,9 +9593,9 @@
- 91
+ 86
- 113
+ 111
77
@@ -10205,7 +9650,7 @@
Comment
0
- 117
+ 115
ru
@@ -10215,7 +9660,7 @@
1
-21
- 91
+ 86
93
1
21
@@ -10228,7 +9673,7 @@
- 145
+ 143
ru
@@ -10255,12 +9700,12 @@
- 110
+ 108
- 104
+ 101
ru
@@ -10272,7 +9717,7 @@
15
- 112
+ 110
ru
@@ -10284,9 +9729,9 @@
- 92
+ 87
- 113
+ 111
1
@@ -10295,7 +9740,7 @@
- 146
+ 144
ru
@@ -10304,6 +9749,17 @@
+
+
+ 145
+
+
+
+
+ 146
+
+
+
147
@@ -10315,25 +9771,14 @@
+
+
+ 105
+
+
149
-
-
-
-
- 150
-
-
-
-
-
- 107
-
-
-
-
- 151
ru
@@ -10371,7 +9816,7 @@
- 115
+ 113
ru
@@ -10400,24 +9845,24 @@
- 93
+ 88
- 113
+ 111
1
- 152
+ 150
- 146
+ 144
- 153
+ 151
ru
@@ -10428,17 +9873,17 @@
- 147
+ 145
- 154
+ 152
- 155
+ 153
ru
@@ -10449,12 +9894,12 @@
- 107
+ 105
- 108
+ 106
@@ -10494,30 +9939,30 @@
- 94
+ 89
- 113
+ 111
1
- 152
+ 150
- 146
+ 144
- 153
+ 151
- 146
+ 144
ru
@@ -10528,12 +9973,12 @@
- 149
+ 147
- 150
+ 148
ru
@@ -10581,7 +10026,7 @@
- 110
+ 108
@@ -10610,30 +10055,30 @@
- 95
+ 90
- 113
+ 111
1
- 152
+ 150
- 146
+ 144
- 153
+ 151
- 146
+ 144
ru
@@ -10644,12 +10089,12 @@
- 149
+ 147
- 150
+ 148
ru
@@ -10660,12 +10105,12 @@
- 107
+ 105
- 108
+ 106
@@ -10682,23 +10127,23 @@
11
- 111
+ 109
- 110
+ 108
- 156
+ 154
15
- 112
+ 110
ru
@@ -10710,22 +10155,22 @@
- 96
+ 91
- 157
+ 155
- 147
+ 145
- 147
+ 145
- 158
+ 156
ru
@@ -10736,7 +10181,22 @@
- 147
+ 145
+
+
+
+
+ 157
+
+
+
+
+ 158
+
+
+
+
+ 158
@@ -10749,24 +10209,9 @@
160
-
-
- 160
-
-
161
-
-
-
-
- 162
-
-
-
-
- 163
ru
@@ -10777,7 +10222,7 @@
- 164
+ 162
ru
@@ -10788,7 +10233,7 @@
- 165
+ 163
ru
@@ -10799,7 +10244,7 @@
- 104
+ 101
ru
@@ -10810,17 +10255,17 @@
- 166
+ 164
- 166
+ 164
- 167
+ 165
ru
@@ -10831,53 +10276,53 @@
- 166
+ 164
- 166
+ 164
- 166
+ 164
- 166
+ 164
- 166
+ 164
- 97
+ 92
- 157
+ 155
- 147
+ 145
- 147
+ 145
- 158
+ 156
- 147
+ 145
ru
@@ -10888,17 +10333,17 @@
- 159
+ 157
- 160
+ 158
- 160
+ 158
ru
@@ -10907,19 +10352,19 @@
+
+
+ 159
+
+
+
+
+ 160
+
+
161
-
-
-
-
- 162
-
-
-
-
- 163
ru
@@ -10930,12 +10375,12 @@
- 164
+ 162
- 165
+ 163
ru
@@ -10946,7 +10391,7 @@
- 168
+ 166
ru
@@ -10957,73 +10402,73 @@
- 166
+ 164
- 166
+ 164
- 165
+ 163
- 166
+ 164
- 166
+ 164
- 166
+ 164
- 166
+ 164
- 166
+ 164
- 98
+ 93
- 157
+ 155
- 147
+ 145
- 147
+ 145
- 158
+ 156
- 147
+ 145
- 159
+ 157
ru
@@ -11034,12 +10479,12 @@
- 160
+ 158
- 160
+ 158
ru
@@ -11050,12 +10495,12 @@
- 161
+ 159
- 162
+ 160
ru
@@ -11066,7 +10511,7 @@
- 163
+ 161
ru
@@ -11077,12 +10522,12 @@
- 164
+ 162
- 167
+ 165
ru
@@ -11093,12 +10538,12 @@
- 166
+ 164
- 166
+ 164
ru
@@ -11109,12 +10554,12 @@
- 166
+ 164
- 165
+ 163
ru
@@ -11125,58 +10570,58 @@
- 166
+ 164
- 166
+ 164
- 166
+ 164
- 166
+ 164
- 166
+ 164
- 99
+ 94
- 157
+ 155
- 147
+ 145
- 147
+ 145
- 158
+ 156
- 147
+ 145
- 159
+ 157
ru
@@ -11187,12 +10632,12 @@
- 160
+ 158
- 160
+ 158
ru
@@ -11203,12 +10648,12 @@
- 161
+ 159
- 162
+ 160
ru
@@ -11219,7 +10664,7 @@
- 163
+ 161
ru
@@ -11230,12 +10675,12 @@
- 164
+ 162
- 167
+ 165
ru
@@ -11246,12 +10691,12 @@
- 166
+ 164
- 166
+ 164
ru
@@ -11262,12 +10707,12 @@
- 166
+ 164
- 165
+ 163
ru
@@ -11278,58 +10723,58 @@
- 166
+ 164
- 166
+ 164
- 166
+ 164
- 166
+ 164
- 166
+ 164
- 100
+ 95
- 157
+ 155
- 147
+ 145
- 147
+ 145
- 158
+ 156
- 147
+ 145
- 159
+ 157
ru
@@ -11340,7 +10785,17 @@
- 160
+ 158
+
+
+
+
+ 158
+
+
+
+
+ 159
@@ -11351,16 +10806,6 @@
161
-
-
-
-
- 162
-
-
-
-
- 163
ru
@@ -11371,12 +10816,12 @@
- 164
+ 162
- 167
+ 165
ru
@@ -11387,7 +10832,7 @@
- 166
+ 164
ru
@@ -11398,17 +10843,17 @@
- 166
+ 164
- 166
+ 164
- 165
+ 163
ru
@@ -11419,58 +10864,58 @@
- 166
+ 164
- 166
+ 164
- 166
+ 164
- 166
+ 164
- 166
+ 164
- 101
+ 96
- 157
+ 155
- 147
+ 145
- 147
+ 145
- 158
+ 156
- 147
+ 145
- 159
+ 157
ru
@@ -11481,7 +10926,17 @@
- 160
+ 158
+
+
+
+
+ 158
+
+
+
+
+ 159
@@ -11492,16 +10947,6 @@
161
-
-
-
-
- 162
-
-
-
-
- 163
ru
@@ -11512,12 +10957,12 @@
- 164
+ 162
- 167
+ 165
ru
@@ -11528,7 +10973,7 @@
- 166
+ 164
ru
@@ -11539,17 +10984,17 @@
- 166
+ 164
- 166
+ 164
- 165
+ 163
ru
@@ -11560,58 +11005,58 @@
- 166
+ 164
- 166
+ 164
- 166
+ 164
- 166
+ 164
- 166
+ 164
- 102
+ 97
- 157
+ 155
- 147
+ 145
- 147
+ 145
- 158
+ 156
- 147
+ 145
- 169
+ 167
ru
@@ -11622,7 +11067,17 @@
- 160
+ 158
+
+
+
+
+ 158
+
+
+
+
+ 159
@@ -11633,16 +11088,6 @@
161
-
-
-
-
- 162
-
-
-
-
- 163
ru
@@ -11653,12 +11098,12 @@
- 164
+ 162
- 167
+ 165
ru
@@ -11669,7 +11114,7 @@
- 166
+ 164
ru
@@ -11680,17 +11125,17 @@
- 166
+ 164
- 166
+ 164
- 165
+ 163
ru
@@ -11701,58 +11146,58 @@
- 166
+ 164
- 166
+ 164
- 166
+ 164
- 166
+ 164
- 166
+ 164
- 103
+ 98
- 157
+ 155
- 147
+ 145
- 147
+ 145
- 158
+ 156
- 147
+ 145
- 159
+ 157
ru
@@ -11763,7 +11208,17 @@
- 160
+ 158
+
+
+
+
+ 158
+
+
+
+
+ 159
@@ -11774,16 +11229,6 @@
161
-
-
-
-
- 162
-
-
-
-
- 163
ru
@@ -11794,12 +11239,12 @@
- 164
+ 162
- 167
+ 165
ru
@@ -11810,7 +11255,7 @@
- 166
+ 164
ru
@@ -11821,17 +11266,17 @@
- 166
+ 164
- 166
+ 164
- 165
+ 163
ru
@@ -11842,58 +11287,58 @@
- 166
+ 164
- 166
+ 164
- 166
+ 164
- 166
+ 164
- 166
+ 164
- 104
+ 99
- 157
+ 155
- 170
+ 168
- 170
+ 168
- 171
+ 169
- 170
+ 168
- 159
+ 157
ru
@@ -11902,6 +11347,16 @@
+
+
+ 170
+
+
+
+
+ 171
+
+
172
@@ -11919,22 +11374,12 @@
- 175
+ 162
- 176
-
-
-
-
- 164
-
-
-
-
- 167
+ 165
ru
@@ -11945,7 +11390,7 @@
- 166
+ 164
ru
@@ -11956,73 +11401,73 @@
- 177
+ 175
- 177
+ 175
- 178
+ 176
- 177
+ 175
- 177
+ 175
- 177
+ 175
- 177
+ 175
- 177
+ 175
- 105
+ 100
- 157
+ 155
- 170
+ 168
- 170
+ 168
- 171
+ 169
- 170
+ 168
- 159
+ 157
ru
@@ -12031,6 +11476,16 @@
+
+
+ 170
+
+
+
+
+ 171
+
+
172
@@ -12048,22 +11503,12 @@
- 175
+ 162
- 176
-
-
-
-
- 164
-
-
-
-
- 167
+ 165
ru
@@ -12074,7 +11519,7 @@
- 166
+ 164
ru
@@ -12085,73 +11530,73 @@
- 177
+ 175
- 177
+ 175
- 178
+ 176
- 177
+ 175
- 177
+ 175
- 177
+ 175
- 177
+ 175
- 177
+ 175
- 106
+ 101
- 157
+ 155
- 170
+ 168
- 170
-
-
-
-
- 171
-
-
-
-
- 170
+ 168
169
+
+
+
+
+ 168
+
+
+
+
+ 167
ru
@@ -12160,6 +11605,16 @@
+
+
+ 170
+
+
+
+
+ 171
+
+
172
@@ -12177,22 +11632,12 @@
- 175
+ 162
- 176
-
-
-
-
- 164
-
-
-
-
- 167
+ 165
ru
@@ -12203,7 +11648,7 @@
- 166
+ 164
ru
@@ -12214,73 +11659,73 @@
- 177
+ 175
- 177
+ 175
- 178
+ 176
- 177
+ 175
- 177
+ 175
- 177
+ 175
- 177
+ 175
- 177
+ 175
- 107
+ 102
- 157
+ 155
- 170
+ 168
- 170
+ 168
- 171
+ 169
- 170
+ 168
- 159
+ 157
ru
@@ -12289,6 +11734,16 @@
+
+
+ 170
+
+
+
+
+ 171
+
+
172
@@ -12306,22 +11761,12 @@
- 175
+ 162
- 176
-
-
-
-
- 164
-
-
-
-
- 167
+ 165
ru
@@ -12332,7 +11777,7 @@
- 166
+ 164
ru
@@ -12343,68 +11788,68 @@
- 177
+ 175
- 177
+ 175
- 178
+ 176
- 177
+ 175
- 177
+ 175
- 177
+ 175
- 177
+ 175
- 177
+ 175
- 108
+ 103
- 179
+ 177
- 170
+ 168
- 170
+ 168
- 171
+ 169
- 170
+ 168
@@ -12418,6 +11863,16 @@
+
+
+ 170
+
+
+
+
+ 171
+
+
172
@@ -12431,16 +11886,6 @@
174
-
-
-
-
- 175
-
-
-
-
- 176
ru
@@ -12451,12 +11896,12 @@
- 180
+ 178
- 181
+ 179
ru
@@ -12467,7 +11912,7 @@
- 140
+ 138
ru
@@ -12478,68 +11923,68 @@
- 177
+ 175
- 177
+ 175
- 178
+ 176
- 177
+ 175
- 177
+ 175
- 177
+ 175
- 177
+ 175
- 177
+ 175
- 109
+ 104
- 179
+ 177
- 170
+ 168
- 170
+ 168
- 171
+ 169
- 170
+ 168
@@ -12553,6 +11998,16 @@
+
+
+ 170
+
+
+
+
+ 171
+
+
172
@@ -12566,16 +12021,6 @@
174
-
-
-
-
- 175
-
-
-
-
- 176
ru
@@ -12586,12 +12031,12 @@
- 180
+ 178
- 182
+ 180
ru
@@ -12602,7 +12047,7 @@
- 140
+ 138
ru
@@ -12613,68 +12058,68 @@
- 177
+ 175
- 177
+ 175
- 178
+ 176
- 177
+ 175
- 177
+ 175
- 177
+ 175
- 177
+ 175
- 177
+ 175
- 110
+ 105
- 179
+ 177
- 170
+ 168
- 170
+ 168
- 171
+ 169
- 170
+ 168
@@ -12688,6 +12133,16 @@
+
+
+ 170
+
+
+
+
+ 171
+
+
172
@@ -12701,16 +12156,6 @@
174
-
-
-
-
- 175
-
-
-
-
- 176
ru
@@ -12721,12 +12166,12 @@
- 180
+ 178
- 182
+ 180
ru
@@ -12737,7 +12182,7 @@
- 140
+ 138
ru
@@ -12748,68 +12193,68 @@
- 177
+ 175
- 177
+ 175
- 178
+ 176
- 177
+ 175
- 177
+ 175
- 177
+ 175
- 177
+ 175
- 177
+ 175
- 111
+ 106
- 157
+ 155
- 170
+ 168
- 170
+ 168
- 171
+ 169
- 170
+ 168
@@ -12823,6 +12268,16 @@
+
+
+ 170
+
+
+
+
+ 171
+
+
172
@@ -12836,6 +12291,44 @@
174
+
+
+ ru
+ 3253
+
+
+
+
+
+
+ 162
+
+
+
+
+ 165
+
+
+ ru
+ Число
+
+
+
+
+
+
+ 138
+
+
+ ru
+ 19,2
+
+
+
+
+
+
+ 175
@@ -12846,10 +12339,139 @@
176
+
+
+
+
+ 175
+
+
+
+
+ 175
+
+
+
+
+ 175
+
+
+
+
+ 175
+
+
+
+
+ 175
+
+
+
+
+
+ 107
+
+ 155
+
+
+ 145
+
+
+
+
+ 145
+
+
+
+
+ 157
ru
- 3253
+ СведенияОМаркировкеДо
+
+
+
+
+
+
+ 145
+
+
+
+
+ 157
+
+
+
+
+ 181
+
+
+
+
+ 158
+
+
+
+
+ 159
+
+
+
+
+ 160
+
+
+
+
+ 161
+
+
+ ru
+ 3245
+
+
+
+
+
+
+ 182
+
+
+ ru
+ СведенияОМаркировке
+
+
+
+
+
+
+ 165
+
+
+
+
+ 166
+
+
+
+
+ 164
+
+
+
+
+ 164
+
+
+
+
+ 163
+
+
+ ru
+ Файл.Документ.ТаблКСчФ.СведТов.НомСредИдентТовДо
@@ -12861,220 +12483,43 @@
- 167
-
-
- ru
- Число
-
-
+ 164
- 140
-
-
- ru
- 19,2
-
-
+ 164
- 177
+ 164
- 177
-
-
-
-
- 178
-
-
-
-
- 177
-
-
-
-
- 177
-
-
-
-
- 177
-
-
-
-
- 177
-
-
-
-
- 177
+ 164
- 112
+ 108
- 157
+ 155
- 147
+ 145
- 147
+ 145
- 159
-
-
- ru
- СведенияОМаркировкеДо
-
-
-
-
-
-
- 147
-
-
-
-
- 159
-
-
-
-
- 183
-
-
-
-
- 160
-
-
-
-
- 161
-
-
-
-
- 162
-
-
-
-
- 163
-
-
- ru
- 3245
-
-
-
-
-
-
- 184
-
-
- ru
- СведенияОМаркировке
-
-
-
-
-
-
- 167
-
-
-
-
- 168
-
-
-
-
- 166
-
-
-
-
- 166
-
-
-
-
- 165
-
-
- ru
- Файл.Документ.ТаблКСчФ.СведТов.НомСредИдентТовДо
-
-
-
-
-
-
- 166
-
-
-
-
- 166
-
-
-
-
- 166
-
-
-
-
- 166
-
-
-
-
- 166
-
-
-
-
-
- 113
-
- 157
-
-
- 147
-
-
-
-
- 147
-
-
-
-
- 159
+ 157
ru
@@ -13085,7 +12530,22 @@
- 147
+ 145
+
+
+
+
+ 157
+
+
+
+
+ 181
+
+
+
+
+ 158
@@ -13093,11 +12553,6 @@
159
-
-
- 183
-
-
160
@@ -13106,16 +12561,6 @@
161
-
-
-
-
- 162
-
-
-
-
- 163
ru
@@ -13126,7 +12571,7 @@
- 184
+ 182
ru
@@ -13135,29 +12580,29 @@
-
-
- 167
-
-
-
-
- 168
-
-
-
-
- 166
-
-
-
-
- 166
-
-
165
+
+
+
+
+ 166
+
+
+
+
+ 164
+
+
+
+
+ 164
+
+
+
+
+ 163
ru
@@ -13168,50 +12613,50 @@
- 166
+ 164
- 166
+ 164
- 166
+ 164
- 166
+ 164
- 166
+ 164
- 114
+ 109
- 157
+ 155
- 185
+ 183
- 147
+ 145
- 147
+ 145
ru
@@ -13223,41 +12668,41 @@
4
- 186
+ 184
- 149
+ 147
- 150
+ 148
+
+
+
+
+
+ 185
+
+
+
+
+
+ 186
+
+
+
+
+ 184
187
-
-
-
-
-
- 188
-
-
-
-
- 186
-
-
-
-
-
- 189
ru
@@ -13268,7 +12713,7 @@
- 167
+ 165
ru
@@ -13279,52 +12724,52 @@
- 168
+ 166
- 168
+ 166
- 168
+ 166
- 167
+ 165
- 115
+ 110
- 190
+ 188
- 191
+ 189
- 170
+ 168
- 170
+ 168
- 192
+ 190
ru
@@ -13333,6 +12778,32 @@
+
+
+ 191
+
+
+
+
+ 147
+
+
+
+
+ 147
+
+
+ ru
+ Да
+
+
+
+
+
+
+ 192
+
+
193
@@ -13340,16 +12811,11 @@
- 149
-
-
-
-
- 149
+ 191
ru
- Да
+ 1233
@@ -13362,27 +12828,6 @@
195
-
-
-
-
- 193
-
-
- ru
- 1233
-
-
-
-
-
-
- 196
-
-
-
-
- 197
ru
@@ -13404,48 +12849,48 @@
- 198
+ 196
- 198
+ 196
- 197
+ 195
- 116
+ 111
- 190
+ 188
+
+
+ 189
+
+
+
+
+ 168
+
+
+
+
+ 168
+
+
+
+
+ 190
+
+
191
-
-
-
-
- 170
-
-
-
-
- 170
-
-
-
-
- 192
-
-
-
-
- 193
ru
@@ -13456,12 +12901,12 @@
- 149
+ 147
- 149
+ 147
ru
@@ -13472,17 +12917,17 @@
- 194
-
-
-
-
- 195
+ 192
193
+
+
+
+
+ 191
ru
@@ -13493,12 +12938,12 @@
- 196
+ 194
- 197
+ 195
ru
@@ -13509,53 +12954,53 @@
- 198
+ 196
- 198
+ 196
- 198
+ 196
- 197
+ 195
- 117
+ 112
- 190
+ 188
+
+
+ 189
+
+
+
+
+ 168
+
+
+
+
+ 168
+
+
+
+
+ 190
+
+
191
-
-
-
-
- 170
-
-
-
-
- 170
-
-
-
-
- 192
-
-
-
-
- 193
ru
@@ -13566,12 +13011,12 @@
- 149
+ 147
- 149
+ 147
ru
@@ -13580,6 +13025,27 @@
+
+
+ 192
+
+
+
+
+ 193
+
+
+
+
+ 191
+
+
+ ru
+ 1235
+
+
+
+
194
@@ -13592,13 +13058,7 @@
- 193
-
-
- ru
- 1235
-
-
+ 196
@@ -13608,50 +13068,35 @@
- 197
+ 196
- 198
-
-
-
-
- 198
-
-
-
-
- 198
-
-
-
-
- 197
+ 195
- 118
+ 113
- 157
+ 155
- 185
+ 183
- 147
+ 145
- 147
+ 145
ru
@@ -13660,9 +13105,32 @@
+
+
+ 146
+
+
+
+
+ 184
+
+
+
+
+
+ 147
+
+
148
+
+
+
+
+
+ 185
+
@@ -13673,36 +13141,13 @@
- 149
-
-
-
-
- 150
+ 184
187
-
-
-
-
-
- 188
-
-
-
-
-
- 186
-
-
-
-
-
- 189
ru
@@ -13713,61 +13158,61 @@
- 167
+ 165
- 168
+ 166
- 168
+ 166
- 168
+ 166
- 167
+ 165
- 119
+ 114
- 157
+ 155
- 185
+ 183
- 147
+ 145
- 147
+ 145
- 148
+ 146
ru
@@ -13778,28 +13223,28 @@
- 186
+ 184
- 149
+ 147
- 150
+ 148
- 187
+ 185
- 188
+ 186
ru
@@ -13810,106 +13255,10 @@
- 186
+ 184
-
-
- 189
-
-
-
-
-
- 167
-
-
- ru
- Строка
-
-
-
-
-
-
- 168
-
-
-
-
-
- 168
-
-
- ru
- 300
-
-
-
-
-
-
- 168
-
-
-
-
-
- 167
-
-
-
-
-
-
- 120
-
- 157
-
-
- 185
-
-
-
-
-
- 147
-
-
-
-
-
- 147
-
-
-
-
-
- 148
-
-
- ru
- Наименование
-
-
-
-
-
-
- 186
-
-
-
-
- 149
-
-
-
-
- 150
-
-
187
@@ -13918,7 +13267,103 @@
- 199
+ 165
+
+
+ ru
+ Строка
+
+
+
+
+
+
+ 166
+
+
+
+
+
+ 166
+
+
+ ru
+ 300
+
+
+
+
+
+
+ 166
+
+
+
+
+
+ 165
+
+
+
+
+
+
+ 115
+
+ 155
+
+
+ 183
+
+
+
+
+
+ 145
+
+
+
+
+
+ 145
+
+
+
+
+
+ 146
+
+
+ ru
+ Наименование
+
+
+
+
+
+
+ 184
+
+
+
+
+ 147
+
+
+
+
+ 148
+
+
+
+
+ 185
+
+
+
+
+
+ 197
ru
@@ -13930,19 +13375,19 @@
- 186
+ 184
- 189
+ 187
- 167
+ 165
ru
@@ -13953,13 +13398,13 @@
- 168
+ 166
- 168
+ 166
ru
@@ -13970,43 +13415,43 @@
- 168
+ 166
- 167
+ 165
- 121
+ 116
- 157
+ 155
- 185
+ 183
- 147
+ 145
- 147
+ 145
- 148
+ 146
ru
@@ -14017,29 +13462,29 @@
- 186
+ 184
- 149
+ 147
- 150
+ 148
- 187
+ 185
- 199
+ 197
ru
@@ -14050,104 +13495,7 @@
- 186
-
-
-
-
-
- 189
-
-
-
-
-
- 167
-
-
- ru
- Строка
-
-
-
-
-
-
- 168
-
-
-
-
-
- 168
-
-
- ru
- 1000
-
-
-
-
-
-
- 168
-
-
-
-
-
- 167
-
-
-
-
-
-
- 122
-
- 157
-
-
- 185
-
-
-
-
-
- 147
-
-
-
-
-
- 147
-
-
-
-
-
- 148
-
-
- ru
- ЕдиницаИзмерения
-
-
-
-
-
-
- 186
-
-
-
-
- 149
-
-
-
-
- 150
+ 184
@@ -14159,30 +13507,7 @@
- 199
-
-
- ru
- Полное наименование единицы измерения, за которую указывается цена и количество.
-
-
-
-
-
-
- 186
-
-
-
-
-
- 189
-
-
-
-
-
- 167
+ 165
ru
@@ -14193,13 +13518,133 @@
- 168
+ 166
- 168
+ 166
+
+
+ ru
+ 1000
+
+
+
+
+
+
+ 166
+
+
+
+
+
+ 165
+
+
+
+
+
+
+ 117
+
+ 155
+
+
+ 183
+
+
+
+
+
+ 145
+
+
+
+
+
+ 145
+
+
+
+
+
+ 146
+
+
+ ru
+ ЕдиницаИзмерения
+
+
+
+
+
+
+ 184
+
+
+
+
+ 147
+
+
+
+
+ 148
+
+
+
+
+
+ 185
+
+
+
+
+
+ 197
+
+
+ ru
+ Полное наименование единицы измерения, за которую указывается цена и количество.
+
+
+
+
+
+
+ 184
+
+
+
+
+
+ 187
+
+
+
+
+
+ 165
+
+
+ ru
+ Строка
+
+
+
+
+
+
+ 166
+
+
+
+
+
+ 166
ru
@@ -14210,40 +13655,40 @@
- 168
+ 166
- 167
+ 165
- 123
+ 118
- 157
+ 155
- 191
+ 189
- 170
+ 168
- 170
+ 168
- 200
+ 198
ru
@@ -14252,11 +13697,37 @@
+
+
+ 199
+
+
+
+
+ 200
+
+
201
+
+
+ 197
+
+
+
+
+ 197
+
+
+ ru
+ Код единицы измерения, за которую указывается цена и количество. Заполняется только в случае наличия в ОКЕИ.
+
+
+
+
202
@@ -14269,16 +13740,11 @@
- 199
-
-
-
-
- 199
+ 203
ru
- Код единицы измерения, за которую указывается цена и количество. Заполняется только в случае наличия в ОКЕИ.
+ Строка
@@ -14290,28 +13756,7 @@
- 205
-
-
-
-
- 205
-
-
- ru
- Строка
-
-
-
-
-
-
- 206
-
-
-
-
- 206
+ 204
ru
@@ -14322,41 +13767,41 @@
- 198
+ 196
- 197
+ 195
- 124
+ 119
- 157
+ 155
- 185
+ 183
- 147
+ 145
- 147
+ 145
- 148
+ 146
ru
@@ -14367,17 +13812,40 @@
- 186
+ 184
- 149
+ 147
- 150
+ 148
+
+
+
+
+
+ 185
+
+
+
+
+
+ 197
+
+
+ ru
+ Артикул товара.
+
+
+
+
+
+
+ 184
@@ -14389,30 +13857,7 @@
- 199
-
-
- ru
- Артикул товара.
-
-
-
-
-
-
- 186
-
-
-
-
-
- 189
-
-
-
-
-
- 167
+ 165
ru
@@ -14423,13 +13868,13 @@
- 168
+ 166
- 168
+ 166
ru
@@ -14440,40 +13885,40 @@
- 168
+ 166
- 167
+ 165
- 125
+ 120
- 157
+ 155
- 191
+ 189
- 170
+ 168
- 170
+ 168
- 192
+ 190
ru
@@ -14482,29 +13927,29 @@
+
+
+ 191
+
+
+
+
+ 147
+
+
+
+
+ 147
+
+
+
+
+ 192
+
+
193
-
-
-
-
- 149
-
-
-
-
- 149
-
-
-
-
- 194
-
-
-
-
- 195
ru
@@ -14515,7 +13960,17 @@
- 193
+ 191
+
+
+
+
+ 194
+
+
+
+
+ 195
@@ -14525,56 +13980,46 @@
- 197
+ 196
- 198
+ 196
- 198
-
-
-
-
- 198
-
-
-
-
- 197
+ 195
- 126
+ 121
- 207
+ 205
+
+
+ 206
+
+
+
+
+
+ 207
+
+
+
+
+
+ 207
+
+
+
208
-
-
-
-
-
- 209
-
-
-
-
-
- 209
-
-
-
-
-
- 210
ru
@@ -14583,19 +14028,42 @@
+
+
+ 209
+
+
+
+
+ 210
+
+
211
+
212
+
213
+
+
+ ru
+ Устарел. Штрихкод товара (или массив штрихкодов). Количество реально передаваемых штрихкодов может быть ограничено. Следует ориентироваться на суммарную длину в 1000 символов (в том числе односимвольные разделители между штрихкодами).
+
+
+
+
+
+
+ 209
@@ -14608,18 +14076,6 @@
215
-
-
- ru
- Устарел. Штрихкод товара (или массив штрихкодов). Количество реально передаваемых штрихкодов может быть ограничено. Следует ориентироваться на суммарную длину в 1000 символов (в том числе односимвольные разделители между штрихкодами).
-
-
-
-
-
-
- 211
-
@@ -14630,56 +14086,45 @@
- 217
+ 216
- 218
+ 216
- 218
-
-
-
-
- 218
-
-
-
-
-
- 217
+ 215
- 127
+ 122
- 157
+ 155
+
+
+ 189
+
+
+
+
+ 168
+
+
+
+
+ 168
+
+
191
-
-
-
-
- 170
-
-
-
-
- 170
-
-
-
-
- 193
ru
@@ -14688,29 +14133,29 @@
+
+
+ 191
+
+
+
+
+ 147
+
+
+
+
+ 147
+
+
+
+
+ 192
+
+
193
-
-
-
-
- 149
-
-
-
-
- 149
-
-
-
-
- 194
-
-
-
-
- 195
ru
@@ -14719,100 +14164,11 @@
-
-
- 193
-
-
-
-
- 196
-
-
-
-
- 197
-
-
- ru
- Строка
-
-
-
-
-
-
- 198
-
-
-
-
- 198
-
-
- ru
- 300
-
-
-
-
-
-
- 198
-
-
-
-
- 197
-
-
-
-
-
- 128
-
- 157
191
-
-
- 170
-
-
-
-
- 170
-
-
-
-
- 193
-
-
- ru
- ШтрихкодыНоменклатуры
-
-
-
-
-
-
- 193
-
-
-
-
- 149
-
-
-
-
- 149
-
-
194
@@ -14824,16 +14180,11 @@
ru
- Массив штрихкодов товара. Ограничена суммарная длина в 2000 символов (в том числе односимвольные разделители между штрихкодами)
+ Строка
-
-
- 193
-
-
196
@@ -14841,17 +14192,111 @@
- 197
+ 196
+
+
+ ru
+ 300
+
+
- 198
+ 196
- 198
+ 195
+
+
+
+
+
+ 123
+
+ 155
+
+
+ 189
+
+
+
+
+ 168
+
+
+
+
+ 168
+
+
+
+
+ 191
+
+
+ ru
+ ШтрихкодыНоменклатуры
+
+
+
+
+
+
+ 191
+
+
+
+
+ 147
+
+
+
+
+ 147
+
+
+
+
+ 192
+
+
+
+
+ 193
+
+
+ ru
+ Массив штрихкодов товара. Ограничена суммарная длина в 2000 символов (в том числе односимвольные разделители между штрихкодами)
+
+
+
+
+
+
+ 191
+
+
+
+
+ 194
+
+
+
+
+ 195
+
+
+
+
+ 196
+
+
+
+
+ 196
ru
@@ -14862,41 +14307,41 @@
- 198
+ 196
- 197
+ 195
- 129
+ 124
- 157
+ 155
- 185
+ 183
- 147
+ 145
- 147
+ 145
- 186
+ 184
ru
@@ -14907,28 +14352,28 @@
- 186
+ 184
- 149
+ 147
- 150
+ 148
- 187
+ 185
- 199
+ 197
ru
@@ -14939,73 +14384,73 @@
- 186
+ 184
- 189
+ 187
- 167
+ 165
- 168
+ 166
- 168
+ 166
- 168
+ 166
- 167
+ 165
- 130
+ 125
- 157
+ 155
- 185
+ 183
- 147
+ 145
- 147
+ 145
- 186
+ 184
ru
@@ -15014,31 +14459,31 @@
+
+
+ 184
+
+
+
+
+ 147
+
+
+
+
+ 148
+
+
+
+
+
+ 185
+
+
+
186
-
-
-
-
- 149
-
-
-
-
- 150
-
-
-
-
-
- 187
-
-
-
-
-
- 188
ru
@@ -15049,94 +14494,7 @@
- 186
-
-
-
-
-
- 189
-
-
-
-
-
- 167
-
-
-
-
-
- 168
-
-
-
-
-
- 168
-
-
-
-
-
- 168
-
-
-
-
-
- 167
-
-
-
-
-
-
- 131
-
- 157
-
-
- 185
-
-
-
-
-
- 147
-
-
-
-
-
- 147
-
-
-
-
-
- 186
-
-
- ru
- УпаковкаИБ
-
-
-
-
-
-
- 186
-
-
-
-
- 149
-
-
-
-
- 150
+ 184
@@ -15148,7 +14506,94 @@
- 188
+ 165
+
+
+
+
+
+ 166
+
+
+
+
+
+ 166
+
+
+
+
+
+ 166
+
+
+
+
+
+ 165
+
+
+
+
+
+
+ 126
+
+ 155
+
+
+ 183
+
+
+
+
+
+ 145
+
+
+
+
+
+ 145
+
+
+
+
+
+ 184
+
+
+ ru
+ УпаковкаИБ
+
+
+
+
+
+
+ 184
+
+
+
+
+ 147
+
+
+
+
+ 148
+
+
+
+
+
+ 185
+
+
+
+
+
+ 186
ru
@@ -15159,52 +14604,52 @@
- 186
+ 184
- 189
+ 187
- 167
+ 165
- 168
+ 166
- 168
+ 166
- 168
+ 166
- 167
+ 165
- 132
+ 127
- 113
+ 111
77
@@ -15217,7 +14662,7 @@
- 219
+ 217
ru
@@ -15285,7 +14730,7 @@
- 220
+ 218
ru
@@ -15302,15 +14747,15 @@
15
- 112
+ 110
- 133
+ 128
- 113
+ 111
77
@@ -15328,7 +14773,7 @@
- 221
+ 219
ru
@@ -15391,7 +14836,7 @@
- 220
+ 218
ru
@@ -15408,9 +14853,9 @@
- 134
+ 129
- 113
+ 111
77
@@ -15433,7 +14878,7 @@
- 219
+ 217
ru
@@ -15459,7 +14904,7 @@
- 222
+ 220
ru
@@ -15496,7 +14941,7 @@
- 220
+ 218
ru
@@ -15508,9 +14953,9 @@
- 135
+ 130
- 113
+ 111
77
@@ -15533,7 +14978,7 @@
- 219
+ 217
ru
@@ -15590,7 +15035,7 @@
- 220
+ 218
ru
@@ -15602,7 +15047,7 @@
- 136
+ 131
66
@@ -15696,9 +15141,9 @@
- 137
+ 132
- 113
+ 111
77
@@ -15752,7 +15197,7 @@
- 142
+ 140
ru
@@ -15779,7 +15224,7 @@
- 104
+ 101
ru
@@ -15808,9 +15253,9 @@
- 138
+ 133
- 113
+ 111
77
@@ -15864,7 +15309,7 @@
- 142
+ 140
ru
@@ -15891,7 +15336,7 @@
- 104
+ 101
ru
@@ -15920,9 +15365,9 @@
- 139
+ 134
- 113
+ 111
77
@@ -15976,7 +15421,7 @@
- 109
+ 107
ru
@@ -16003,7 +15448,7 @@
- 104
+ 101
ru
@@ -16032,9 +15477,9 @@
- 140
+ 135
- 113
+ 111
77
@@ -16088,7 +15533,7 @@
- 142
+ 140
ru
@@ -16115,7 +15560,7 @@
- 104
+ 101
ru
@@ -16132,7 +15577,7 @@
15
- 112
+ 110
ru
@@ -16144,9 +15589,9 @@
- 141
+ 136
- 113
+ 111
77
@@ -16200,7 +15645,7 @@
- 142
+ 140
ru
@@ -16227,7 +15672,7 @@
- 104
+ 101
ru
@@ -16244,7 +15689,7 @@
15
- 112
+ 110
ru
@@ -16256,9 +15701,9 @@
- 142
+ 137
- 113
+ 111
77
@@ -16312,7 +15757,7 @@
- 109
+ 107
ru
@@ -16339,7 +15784,7 @@
- 104
+ 101
ru
@@ -16356,7 +15801,7 @@
15
- 112
+ 110
ru
@@ -16368,7 +15813,7 @@
- 143
+ 138
66
@@ -16414,12 +15859,12 @@
- 107
+ 105
- 108
+ 106
@@ -16474,9 +15919,9 @@
- 144
+ 139
- 113
+ 111
77
@@ -16520,12 +15965,12 @@
- 107
+ 105
- 108
+ 106
@@ -16540,7 +15985,7 @@
- 111
+ 109
ru
@@ -16551,7 +15996,7 @@
- 110
+ 108
@@ -16568,7 +16013,7 @@
15
- 112
+ 110
ru
@@ -16580,9 +16025,9 @@
- 145
+ 140
- 113
+ 111
77
@@ -16626,12 +16071,12 @@
- 107
+ 105
- 108
+ 106
@@ -16663,7 +16108,7 @@
- 104
+ 101
ru
@@ -16680,7 +16125,7 @@
15
- 112
+ 110
ru
@@ -16692,13 +16137,13 @@
- 146
+ 141
- 113
+ 111
2
- 137
+ 135
ru
@@ -16709,7 +16154,7 @@
- 138
+ 136
@@ -16719,12 +16164,12 @@
- 119
+ 117
- 119
+ 117
ru
@@ -16735,12 +16180,12 @@
- 107
+ 105
- 108
+ 106
@@ -16768,7 +16213,7 @@
- 104
+ 101
ru
@@ -16780,18 +16225,18 @@
- 147
+ 142
- 113
+ 111
2
- 137
+ 135
- 136
+ 134
ru
@@ -16856,24 +16301,24 @@
- 110
+ 108
- 148
+ 143
- 113
+ 111
2
- 137
+ 135
- 136
+ 134
ru
@@ -16905,12 +16350,12 @@
- 107
+ 105
- 108
+ 106
@@ -16927,23 +16372,23 @@
11
- 111
+ 109
- 110
+ 108
- 156
+ 154
- 149
+ 144
66
@@ -16970,12 +16415,12 @@
- 107
+ 105
- 108
+ 106
ru
@@ -16987,7 +16432,7 @@
11
- 111
+ 109
ru
@@ -16998,7 +16443,7 @@
- 110
+ 108
@@ -17015,7 +16460,7 @@
- 150
+ 145
@@ -17066,7 +16511,7 @@
- 151
+ 146
11
@@ -17084,7 +16529,7 @@
8
- 223
+ 221
ru
@@ -17096,7 +16541,7 @@
- 152
+ 147
11
@@ -17114,7 +16559,7 @@
8
- 223
+ 221
ru
@@ -17126,7 +16571,7 @@
- 153
+ 148
11
@@ -17144,7 +16589,7 @@
8
- 223
+ 221
ru
@@ -17156,18 +16601,18 @@
- 154
+ 149
66
true
- 155
+ 150
- 224
+ 222
ru
@@ -17191,17 +16636,17 @@
- 156
+ 151
- 225
+ 223
- 147
+ 145
- 159
+ 157
ru
@@ -17212,33 +16657,33 @@
- 159
+ 157
- 183
+ 181
6
+
+ 158
+
+
+
+
+ 159
+
+
+
160
- 161
-
-
-
-
- 162
-
-
-
-
- 226
+ 224
ru
@@ -17249,7 +16694,7 @@
- 164
+ 162
ru
@@ -17258,26 +16703,6 @@
-
-
- 167
-
-
-
-
- 166
-
-
-
-
- 166
-
-
-
-
- 166
-
-
165
@@ -17285,48 +16710,68 @@
- 166
+ 164
- 166
+ 164
- 166
+ 164
- 166
+ 163
- 166
+ 164
+
+
+
+
+ 164
+
+
+
+
+ 164
+
+
+
+
+ 164
+
+
+
+
+ 164
- 157
+ 152
- 225
+ 223
- 170
+ 168
- 147
+ 145
- 159
+ 157
ru
@@ -17337,13 +16782,23 @@
- 183
+ 181
6
- 160
+ 158
+
+
+
+
+ 172
+
+
+
+
+ 173
@@ -17351,6 +16806,26 @@
174
+
+
+ 178
+
+
+
+
+ 195
+
+
+
+
+ 175
+
+
+
+
+ 175
+
+
175
@@ -17363,83 +16838,53 @@
- 180
+ 175
- 197
+ 175
- 177
+ 175
- 177
+ 175
- 177
-
-
-
-
- 178
-
-
-
-
- 177
-
-
-
-
- 177
-
-
-
-
- 177
-
-
-
-
- 177
-
-
-
-
- 177
+ 175
- 158
+ 153
- 225
+ 223
- 147
+ 145
- 147
+ 145
- 159
+ 157
- 183
+ 181
ru
@@ -17451,7 +16896,7 @@
6
- 160
+ 158
ru
@@ -17460,19 +16905,19 @@
+
+
+ 159
+
+
+
+
+ 160
+
+
161
-
-
-
-
- 162
-
-
-
-
- 163
ru
@@ -17483,12 +16928,12 @@
- 164
+ 162
- 167
+ 165
ru
@@ -17499,12 +16944,12 @@
- 166
+ 164
- 166
+ 164
ru
@@ -17515,12 +16960,12 @@
- 166
+ 164
- 165
+ 163
ru
@@ -17531,43 +16976,43 @@
- 166
+ 164
- 166
+ 164
- 166
+ 164
- 166
+ 164
- 166
+ 164
- 159
+ 154
- 225
+ 223
- 170
+ 168
- 147
+ 145
ru
@@ -17578,33 +17023,33 @@
- 159
+ 157
- 159
+ 157
6
- 160
+ 158
+
+
+
+
+ 172
+
+
+
+
+ 173
174
-
-
-
-
- 175
-
-
-
-
- 176
ru
@@ -17615,7 +17060,7 @@
- 180
+ 178
ru
@@ -17626,95 +17071,17 @@
- 197
+ 195
- 177
+ 175
- 177
-
-
-
-
- 177
-
-
-
-
- 178
-
-
-
-
- 177
-
-
-
-
- 177
-
-
-
-
- 177
-
-
-
-
- 177
-
-
-
-
- 177
-
-
-
-
-
- 160
-
- 225
-
-
- 170
-
-
-
-
- 147
-
-
-
-
- 159
-
-
- ru
- НомерСтроки
-
-
-
-
-
-
- 159
-
-
-
- 6
-
- 160
-
-
-
-
- 174
+ 175
@@ -17729,27 +17096,80 @@
- 180
+ 175
- 197
+ 175
- 177
+ 175
- 177
+ 175
- 177
+ 175
+
+
+
+
+
+ 155
+
+ 223
+
+
+ 168
+
+
+
+
+ 145
+
+
+
+
+ 157
+
+
+ ru
+ НомерСтроки
+
+
+
+
+
+
+ 157
+
+
+
+ 6
+
+ 158
+
+
+
+
+ 172
+
+
+
+
+ 173
+
+
+
+
+ 174
@@ -17759,53 +17179,78 @@
- 177
+ 195
- 177
+ 175
- 177
+ 175
- 177
+ 175
- 177
+ 176
+
+
+
+
+ 175
+
+
+
+
+ 175
+
+
+
+
+ 175
+
+
+
+
+ 175
+
+
+
+
+ 175
- 161
+ 156
- 225
+ 223
- 147
+ 145
- 147
+ 145
- 159
+ 157
- 159
+ 157
ru
@@ -17817,7 +17262,7 @@
6
- 160
+ 158
ru
@@ -17828,12 +17273,12 @@
- 161
+ 159
- 162
+ 160
ru
@@ -17844,7 +17289,7 @@
- 163
+ 161
ru
@@ -17853,6 +17298,22 @@
+
+
+ 162
+
+
+
+
+ 165
+
+
+ ru
+ Строка
+
+
+
+
164
@@ -17860,23 +17321,7 @@
- 167
-
-
- ru
- Строка
-
-
-
-
-
-
- 166
-
-
-
-
- 166
+ 164
ru
@@ -17887,12 +17332,12 @@
- 166
+ 164
- 165
+ 163
ru
@@ -17903,43 +17348,43 @@
- 166
+ 164
- 166
+ 164
- 166
+ 164
- 166
+ 164
- 166
+ 164
- 162
+ 157
- 225
+ 223
- 170
+ 168
- 147
+ 145
ru
@@ -17950,33 +17395,33 @@
- 159
+ 157
- 159
+ 157
6
- 160
+ 158
+
+
+
+
+ 172
+
+
+
+
+ 173
174
-
-
-
-
- 175
-
-
-
-
- 176
ru
@@ -17987,7 +17432,7 @@
- 180
+ 178
ru
@@ -17998,95 +17443,17 @@
- 197
+ 195
- 177
+ 175
- 177
-
-
-
-
- 177
-
-
-
-
- 178
-
-
-
-
- 177
-
-
-
-
- 177
-
-
-
-
- 177
-
-
-
-
- 177
-
-
-
-
- 177
-
-
-
-
-
- 163
-
- 225
-
-
- 170
-
-
-
-
- 147
-
-
-
-
- 159
-
-
- ru
- НомерСтроки
-
-
-
-
-
-
- 159
-
-
-
- 6
-
- 160
-
-
-
-
- 174
+ 175
@@ -18101,27 +17468,80 @@
- 180
+ 175
- 197
+ 175
- 177
+ 175
- 177
+ 175
- 177
+ 175
+
+
+
+
+
+ 158
+
+ 223
+
+
+ 168
+
+
+
+
+ 145
+
+
+
+
+ 157
+
+
+ ru
+ НомерСтроки
+
+
+
+
+
+
+ 157
+
+
+
+ 6
+
+ 158
+
+
+
+
+ 172
+
+
+
+
+ 173
+
+
+
+
+ 174
@@ -18131,53 +17551,78 @@
- 177
+ 195
- 177
+ 175
- 177
+ 175
- 177
+ 175
- 177
+ 176
+
+
+
+
+ 175
+
+
+
+
+ 175
+
+
+
+
+ 175
+
+
+
+
+ 175
+
+
+
+
+ 175
- 164
+ 159
- 225
+ 223
- 147
+ 145
- 147
+ 145
- 159
+ 157
- 159
+ 157
ru
@@ -18189,7 +17634,7 @@
6
- 160
+ 158
ru
@@ -18200,12 +17645,12 @@
- 161
+ 159
- 162
+ 160
ru
@@ -18216,7 +17661,7 @@
- 163
+ 161
ru
@@ -18225,6 +17670,22 @@
+
+
+ 162
+
+
+
+
+ 165
+
+
+ ru
+ Строка
+
+
+
+
164
@@ -18232,23 +17693,7 @@
- 167
-
-
- ru
- Строка
-
-
-
-
-
-
- 166
-
-
-
-
- 166
+ 164
ru
@@ -18259,12 +17704,12 @@
- 166
+ 164
- 165
+ 163
ru
@@ -18275,44 +17720,44 @@
- 166
+ 164
- 166
+ 164
- 166
+ 164
- 166
+ 164
- 166
+ 164
- 165
+ 160
true
- 166
+ 161
66
- 227
+ 225
ru
@@ -18350,12 +17795,12 @@
- 107
+ 105
- 108
+ 106
@@ -18365,7 +17810,7 @@
- 143
+ 141
ru
@@ -18393,7 +17838,7 @@
15
- 112
+ 110
ru
@@ -18405,13 +17850,13 @@
- 167
+ 162
66
1
- 228
+ 226
ru
@@ -18422,17 +17867,17 @@
- 229
+ 227
- 229
+ 227
- 229
+ 227
@@ -18453,12 +17898,12 @@
- 122
+ 120
- 123
+ 121
@@ -18474,7 +17919,7 @@
- 143
+ 141
ru
@@ -18485,7 +17930,7 @@
- 230
+ 228
ru
@@ -18496,12 +17941,12 @@
- 104
+ 101
- 104
+ 101
ru
@@ -18513,28 +17958,28 @@
15
- 230
+ 228
- 168
+ 163
66
- 231
+ 229
- 228
+ 226
- 228
+ 226
ru
@@ -18545,42 +17990,42 @@
- 116
+ 114
- 229
+ 227
- 119
+ 117
- 119
+ 117
- 232
+ 230
- 233
+ 231
- 229
+ 227
- 143
+ 141
ru
@@ -18602,18 +18047,18 @@
- 116
+ 114
- 116
+ 114
15
- 234
+ 232
ru
@@ -18625,27 +18070,27 @@
- 169
+ 164
66
-
-
- 231
-
-
-
-
- 228
-
-
-
-
- 228
-
-
229
+
+
+
+
+ 226
+
+
+
+
+ 226
+
+
+
+
+ 227
ru
@@ -18656,17 +18101,17 @@
- 229
+ 227
- 119
+ 117
- 119
+ 117
ru
@@ -18677,12 +18122,12 @@
- 232
+ 230
- 233
+ 231
@@ -18698,12 +18143,12 @@
- 143
+ 141
- 116
+ 114
ru
@@ -18714,12 +18159,12 @@
- 116
+ 114
- 116
+ 114
ru
@@ -18731,7 +18176,7 @@
15
- 234
+ 232
ru
@@ -18743,27 +18188,27 @@
- 170
+ 165
66
-
-
- 231
-
-
-
-
- 228
-
-
-
-
- 228
-
-
229
+
+
+
+
+ 226
+
+
+
+
+ 226
+
+
+
+
+ 227
ru
@@ -18774,27 +18219,27 @@
- 229
+ 227
- 119
+ 117
- 119
+ 117
- 232
+ 230
- 233
+ 231
ru
@@ -18805,7 +18250,7 @@
- 142
+ 140
ru
@@ -18816,12 +18261,12 @@
- 143
+ 141
- 116
+ 114
ru
@@ -18832,12 +18277,12 @@
- 116
+ 114
- 116
+ 114
ru
@@ -18849,7 +18294,7 @@
15
- 234
+ 232
ru
@@ -18861,27 +18306,27 @@
- 171
+ 166
66
- 231
+ 229
- 228
+ 226
- 228
+ 226
- 110
+ 108
ru
@@ -18897,22 +18342,22 @@
- 119
+ 117
- 119
+ 117
- 235
+ 233
- 236
+ 234
ru
@@ -18929,12 +18374,12 @@
- 143
+ 141
- 116
+ 114
ru
@@ -18945,12 +18390,12 @@
- 116
+ 114
- 116
+ 114
ru
@@ -18962,7 +18407,7 @@
15
- 234
+ 232
ru
@@ -18974,27 +18419,27 @@
- 172
+ 167
66
- 231
+ 229
- 228
+ 226
- 228
+ 226
- 110
+ 108
ru
@@ -19010,22 +18455,22 @@
- 119
+ 117
- 119
+ 117
- 235
+ 233
- 236
+ 234
ru
@@ -19042,12 +18487,12 @@
- 143
+ 141
- 116
+ 114
ru
@@ -19058,18 +18503,18 @@
- 116
+ 114
- 116
+ 114
15
- 234
+ 232
ru
@@ -19081,27 +18526,27 @@
- 173
+ 168
66
- 231
+ 229
- 228
+ 226
- 228
+ 226
- 110
+ 108
ru
@@ -19117,22 +18562,22 @@
- 119
+ 117
- 119
+ 117
- 235
+ 233
- 236
+ 234
@@ -19148,12 +18593,12 @@
- 143
+ 141
- 116
+ 114
ru
@@ -19164,12 +18609,12 @@
- 116
+ 114
- 116
+ 114
ru
@@ -19181,7 +18626,7 @@
15
- 234
+ 232
ru
@@ -19193,27 +18638,27 @@
- 174
+ 169
66
- 231
+ 229
- 228
+ 226
- 110
+ 108
- 110
+ 108
ru
@@ -19229,12 +18674,12 @@
- 119
+ 117
- 119
+ 117
ru
@@ -19245,12 +18690,12 @@
- 235
+ 233
- 236
+ 234
@@ -19266,12 +18711,12 @@
- 143
+ 141
- 116
+ 114
ru
@@ -19282,12 +18727,12 @@
- 116
+ 114
- 116
+ 114
ru
@@ -19299,7 +18744,7 @@
15
- 234
+ 232
ru
@@ -19311,27 +18756,27 @@
- 175
+ 170
66
- 231
+ 229
- 228
+ 226
- 228
+ 226
- 110
+ 108
ru
@@ -19347,12 +18792,12 @@
- 119
+ 117
- 119
+ 117
ru
@@ -19363,12 +18808,12 @@
- 235
+ 233
- 236
+ 234
@@ -19384,12 +18829,12 @@
- 143
+ 141
- 116
+ 114
ru
@@ -19400,12 +18845,12 @@
- 116
+ 114
- 116
+ 114
ru
@@ -19417,7 +18862,7 @@
15
- 234
+ 232
ru
@@ -19429,27 +18874,27 @@
- 176
+ 171
66
- 231
+ 229
- 228
+ 226
- 228
+ 226
- 110
+ 108
ru
@@ -19460,32 +18905,32 @@
- 229
+ 227
- 119
+ 117
- 119
+ 117
- 232
+ 230
- 233
+ 231
- 229
+ 227
ru
@@ -19496,12 +18941,12 @@
- 143
+ 141
- 116
+ 114
ru
@@ -19512,12 +18957,12 @@
- 116
+ 114
- 116
+ 114
ru
@@ -19529,7 +18974,7 @@
15
- 234
+ 232
ru
@@ -19541,22 +18986,22 @@
- 177
+ 172
66
- 231
+ 229
- 228
+ 226
- 228
+ 226
ru
@@ -19567,42 +19012,42 @@
- 116
+ 114
- 229
+ 227
- 119
+ 117
- 119
+ 117
- 232
+ 230
- 233
+ 231
- 229
+ 227
- 143
+ 141
ru
@@ -19624,18 +19069,18 @@
- 116
+ 114
- 116
+ 114
15
- 234
+ 232
ru
@@ -19647,27 +19092,27 @@
- 178
+ 173
66
-
-
- 231
-
-
-
-
- 228
-
-
-
-
- 228
-
-
229
+
+
+
+
+ 226
+
+
+
+
+ 226
+
+
+
+
+ 227
ru
@@ -19678,17 +19123,17 @@
- 229
+ 227
- 119
+ 117
- 119
+ 117
ru
@@ -19699,12 +19144,12 @@
- 232
+ 230
- 233
+ 231
@@ -19720,12 +19165,12 @@
- 143
+ 141
- 116
+ 114
ru
@@ -19736,12 +19181,12 @@
- 116
+ 114
- 116
+ 114
ru
@@ -19753,7 +19198,7 @@
15
- 234
+ 232
ru
@@ -19765,27 +19210,27 @@
- 179
+ 174
66
-
-
- 231
-
-
-
-
- 228
-
-
-
-
- 228
-
-
229
+
+
+
+
+ 226
+
+
+
+
+ 226
+
+
+
+
+ 227
ru
@@ -19796,17 +19241,17 @@
- 229
+ 227
- 119
+ 117
- 119
+ 117
ru
@@ -19817,12 +19262,12 @@
- 232
+ 230
- 233
+ 231
@@ -19838,12 +19283,12 @@
- 143
+ 141
- 116
+ 114
ru
@@ -19854,12 +19299,12 @@
- 116
+ 114
- 116
+ 114
ru
@@ -19871,7 +19316,7 @@
15
- 234
+ 232
ru
@@ -19883,27 +19328,27 @@
- 180
+ 175
66
- 231
+ 229
- 228
+ 226
- 228
+ 226
- 110
+ 108
ru
@@ -19919,22 +19364,22 @@
- 119
+ 117
- 119
+ 117
- 235
+ 233
- 236
+ 234
@@ -19950,12 +19395,12 @@
- 143
+ 141
- 116
+ 114
ru
@@ -19966,12 +19411,12 @@
- 116
+ 114
- 116
+ 114
ru
@@ -19983,7 +19428,7 @@
15
- 234
+ 232
ru
@@ -19995,22 +19440,22 @@
- 181
+ 176
66
- 231
+ 229
- 228
+ 226
- 228
+ 226
ru
@@ -20021,7 +19466,7 @@
- 116
+ 114
@@ -20031,22 +19476,22 @@
- 119
+ 117
- 119
+ 117
- 235
+ 233
- 236
+ 234
@@ -20056,7 +19501,7 @@
- 143
+ 141
ru
@@ -20078,18 +19523,18 @@
- 116
+ 114
- 116
+ 114
15
- 234
+ 232
ru
@@ -20101,27 +19546,27 @@
- 182
+ 177
66
-
-
- 231
-
-
-
-
- 228
-
-
-
-
- 228
-
-
229
+
+
+
+
+ 226
+
+
+
+
+ 226
+
+
+
+
+ 227
ru
@@ -20132,17 +19577,17 @@
- 229
+ 227
- 119
+ 117
- 119
+ 117
ru
@@ -20153,12 +19598,12 @@
- 232
+ 230
- 233
+ 231
@@ -20174,12 +19619,12 @@
- 143
+ 141
- 116
+ 114
ru
@@ -20190,12 +19635,12 @@
- 116
+ 114
- 116
+ 114
ru
@@ -20207,7 +19652,7 @@
15
- 234
+ 232
ru
@@ -20219,27 +19664,27 @@
- 183
+ 178
66
- 231
+ 229
- 228
+ 226
- 228
+ 226
- 110
+ 108
ru
@@ -20255,22 +19700,22 @@
- 119
+ 117
- 119
+ 117
- 235
+ 233
- 236
+ 234
@@ -20286,12 +19731,12 @@
- 143
+ 141
- 116
+ 114
ru
@@ -20302,12 +19747,12 @@
- 116
+ 114
- 116
+ 114
ru
@@ -20319,7 +19764,7 @@
15
- 234
+ 232
ru
@@ -20331,23 +19776,23 @@
- 184
+ 179
66
1
- 228
+ 226
- 228
+ 226
- 116
+ 114
ru
@@ -20356,34 +19801,34 @@
+
+
+ 235
+
+
+
+
+ 117
+
+
+
+
+ 117
+
+
+
+
+ 236
+
+
237
-
-
- 119
-
-
-
-
- 119
-
-
238
-
-
-
-
- 239
-
-
-
-
- 240
ru
@@ -20394,12 +19839,12 @@
- 143
+ 141
- 116
+ 114
ru
@@ -20427,7 +19872,7 @@
15
- 234
+ 232
ru
@@ -20439,13 +19884,13 @@
- 185
+ 180
66
1
- 228
+ 226
ru
@@ -20456,38 +19901,38 @@
- 228
+ 226
- 116
+ 114
- 237
+ 235
- 119
+ 117
- 119
+ 117
- 238
+ 236
- 239
+ 237
@@ -20503,7 +19948,7 @@
- 143
+ 141
ru
@@ -20514,7 +19959,7 @@
- 116
+ 114
ru
@@ -20542,7 +19987,7 @@
15
- 234
+ 232
ru
@@ -20554,13 +19999,13 @@
- 186
+ 181
66
2
- 228
+ 226
ru
@@ -20571,32 +20016,32 @@
- 228
+ 226
- 237
+ 235
- 119
+ 117
- 119
+ 117
- 241
+ 239
- 242
+ 240
ru
@@ -20607,12 +20052,12 @@
- 237
+ 235
- 143
+ 141
ru
@@ -20623,7 +20068,7 @@
- 116
+ 114
@@ -20639,24 +20084,24 @@
- 112
+ 110
- 187
+ 182
66
2
- 228
+ 226
- 228
+ 226
ru
@@ -20667,27 +20112,27 @@
- 237
+ 235
- 119
+ 117
- 119
+ 117
+
+
+
+
+ 239
241
-
-
-
-
- 243
ru
@@ -20698,13 +20143,28 @@
- 237
+ 235
11
- 116
+ 114
+
+
+
+
+ 108
+
+
+
+
+ 89
+
+
+
+
+ 89
@@ -20712,36 +20172,21 @@
110
-
-
- 89
-
-
-
-
- 89
-
-
-
-
- 112
-
-
- 188
+ 183
66
2
- 228
+ 226
- 228
+ 226
ru
@@ -20752,27 +20197,27 @@
- 237
+ 235
- 119
+ 117
- 119
+ 117
- 241
+ 239
- 244
+ 242
ru
@@ -20783,13 +20228,13 @@
- 237
+ 235
11
- 244
+ 242
ru
@@ -20800,7 +20245,7 @@
- 110
+ 108
@@ -20811,24 +20256,24 @@
- 112
+ 110
- 189
+ 184
66
1
- 137
+ 135
- 138
+ 136
ru
@@ -20839,7 +20284,7 @@
- 138
+ 136
@@ -20855,12 +20300,12 @@
- 107
+ 105
- 108
+ 106
@@ -20882,18 +20327,18 @@
- 104
+ 101
- 104
+ 101
15
- 234
+ 232
ru
@@ -20905,23 +20350,23 @@
- 190
+ 185
66
1
- 137
+ 135
- 138
+ 136
- 138
+ 136
ru
@@ -20943,17 +20388,17 @@
- 107
+ 105
- 108
+ 106
- 245
+ 243
ru
@@ -20965,7 +20410,7 @@
11
- 230
+ 228
ru
@@ -20976,12 +20421,12 @@
- 104
+ 101
- 104
+ 101
ru
@@ -20993,7 +20438,7 @@
15
- 246
+ 244
ru
@@ -21005,23 +20450,23 @@
- 191
+ 186
66
1
- 137
+ 135
- 138
+ 136
- 138
+ 136
ru
@@ -21033,12 +20478,12 @@
5
- 119
+ 117
- 119
+ 117
ru
@@ -21049,12 +20494,12 @@
- 107
+ 105
- 108
+ 106
@@ -21071,7 +20516,7 @@
11
- 111
+ 109
ru
@@ -21082,12 +20527,12 @@
- 104
+ 101
- 104
+ 101
ru
@@ -21099,7 +20544,7 @@
15
- 246
+ 244
ru
@@ -21111,23 +20556,23 @@
- 192
+ 187
66
1
- 137
+ 135
- 138
+ 136
- 138
+ 136
ru
@@ -21149,12 +20594,12 @@
- 107
+ 105
- 108
+ 106
@@ -21171,7 +20616,7 @@
11
- 111
+ 109
ru
@@ -21182,12 +20627,12 @@
- 104
+ 101
- 104
+ 101
ru
@@ -21199,7 +20644,7 @@
15
- 246
+ 244
ru
@@ -21211,23 +20656,23 @@
- 193
+ 188
66
1
- 137
+ 135
- 138
+ 136
- 138
+ 136
ru
@@ -21249,12 +20694,12 @@
- 107
+ 105
- 108
+ 106
@@ -21271,7 +20716,7 @@
11
- 111
+ 109
ru
@@ -21282,12 +20727,12 @@
- 104
+ 101
- 104
+ 101
ru
@@ -21299,7 +20744,7 @@
15
- 234
+ 232
ru
@@ -21311,23 +20756,23 @@
- 194
+ 189
66
1
- 137
+ 135
- 138
+ 136
- 138
+ 136
ru
@@ -21349,12 +20794,12 @@
- 107
+ 105
- 108
+ 106
@@ -21371,7 +20816,7 @@
11
- 111
+ 109
ru
@@ -21382,12 +20827,12 @@
- 104
+ 101
- 104
+ 101
ru
@@ -21399,7 +20844,7 @@
15
- 234
+ 232
ru
@@ -21411,23 +20856,23 @@
- 195
+ 190
66
1
- 137
+ 135
- 138
+ 136
- 138
+ 136
ru
@@ -21449,12 +20894,12 @@
- 107
+ 105
- 108
+ 106
@@ -21471,7 +20916,7 @@
11
- 111
+ 109
ru
@@ -21482,12 +20927,12 @@
- 104
+ 101
- 104
+ 101
ru
@@ -21499,7 +20944,7 @@
15
- 234
+ 232
ru
@@ -21511,23 +20956,23 @@
- 196
+ 191
66
1
- 137
+ 135
- 138
+ 136
- 138
+ 136
ru
@@ -21549,12 +20994,12 @@
- 107
+ 105
- 108
+ 106
@@ -21571,7 +21016,7 @@
11
- 111
+ 109
ru
@@ -21582,12 +21027,12 @@
- 104
+ 101
- 104
+ 101
ru
@@ -21599,7 +21044,7 @@
15
- 234
+ 232
ru
@@ -21611,23 +21056,23 @@
- 197
+ 192
66
1
- 137
+ 135
- 138
+ 136
- 247
+ 245
ru
@@ -21653,12 +21098,12 @@
- 107
+ 105
- 108
+ 106
@@ -21675,7 +21120,7 @@
11
- 111
+ 109
ru
@@ -21686,12 +21131,12 @@
- 104
+ 101
- 104
+ 101
ru
@@ -21703,7 +21148,7 @@
15
- 234
+ 232
ru
@@ -21715,23 +21160,23 @@
- 198
+ 193
66
1
- 137
+ 135
- 138
+ 136
- 247
+ 245
ru
@@ -21757,12 +21202,12 @@
- 107
+ 105
- 108
+ 106
@@ -21779,7 +21224,7 @@
11
- 111
+ 109
ru
@@ -21790,12 +21235,12 @@
- 104
+ 101
- 104
+ 101
ru
@@ -21807,7 +21252,7 @@
15
- 234
+ 232
ru
@@ -21819,18 +21264,18 @@
- 199
+ 194
66
1
- 137
+ 135
- 138
+ 136
ru
@@ -21841,7 +21286,7 @@
- 247
+ 245
@@ -21861,12 +21306,12 @@
- 107
+ 105
- 108
+ 106
@@ -21876,7 +21321,7 @@
- 143
+ 141
ru
@@ -21898,18 +21343,18 @@
- 104
+ 101
- 104
+ 101
15
- 234
+ 232
ru
@@ -21921,23 +21366,23 @@
- 200
+ 195
66
1
- 137
+ 135
- 138
+ 136
- 138
+ 136
ru
@@ -21949,12 +21394,12 @@
5
- 119
+ 117
- 119
+ 117
ru
@@ -21965,12 +21410,12 @@
- 107
+ 105
- 108
+ 106
@@ -21987,7 +21432,7 @@
11
- 230
+ 228
ru
@@ -21998,12 +21443,12 @@
- 104
+ 101
- 104
+ 101
ru
@@ -22015,7 +21460,7 @@
15
- 234
+ 232
ru
@@ -22027,23 +21472,23 @@
- 201
+ 196
66
1
- 137
+ 135
- 138
+ 136
- 247
+ 245
ru
@@ -22055,12 +21500,12 @@
5
- 119
+ 117
- 119
+ 117
ru
@@ -22071,12 +21516,12 @@
- 107
+ 105
- 108
+ 106
@@ -22093,7 +21538,7 @@
11
- 111
+ 109
ru
@@ -22104,12 +21549,12 @@
- 104
+ 101
- 104
+ 101
ru
@@ -22121,7 +21566,7 @@
15
- 234
+ 232
ru
@@ -22133,18 +21578,18 @@
- 202
+ 197
66
1
- 137
+ 135
- 138
+ 136
ru
@@ -22155,7 +21600,7 @@
- 247
+ 245
@@ -22165,12 +21610,12 @@
- 119
+ 117
- 119
+ 117
ru
@@ -22181,12 +21626,12 @@
- 107
+ 105
- 108
+ 106
@@ -22203,7 +21648,7 @@
11
- 230
+ 228
ru
@@ -22214,12 +21659,12 @@
- 104
+ 101
- 104
+ 101
ru
@@ -22231,7 +21676,7 @@
15
- 234
+ 232
ru
@@ -22243,13 +21688,13 @@
- 203
+ 198
66
1
- 136
+ 134
ru
@@ -22260,7 +21705,7 @@
- 247
+ 245
@@ -22276,12 +21721,12 @@
- 107
+ 105
- 108
+ 106
@@ -22309,18 +21754,18 @@
- 104
+ 101
- 104
+ 101
15
- 234
+ 232
ru
@@ -22332,13 +21777,13 @@
- 204
+ 199
66
2
- 247
+ 245
ru
@@ -22360,17 +21805,17 @@
- 107
+ 105
- 108
+ 106
- 142
+ 140
ru
@@ -22382,7 +21827,7 @@
11
- 111
+ 109
ru
@@ -22393,12 +21838,12 @@
- 104
+ 101
- 104
+ 101
ru
@@ -22410,7 +21855,7 @@
15
- 234
+ 232
ru
@@ -22422,18 +21867,18 @@
- 205
+ 200
66
- 137
+ 135
2
- 247
+ 245
ru
@@ -22455,17 +21900,17 @@
- 107
+ 105
- 108
+ 106
- 142
+ 140
ru
@@ -22477,7 +21922,7 @@
11
- 111
+ 109
ru
@@ -22488,12 +21933,12 @@
- 104
+ 101
- 104
+ 101
ru
@@ -22505,7 +21950,7 @@
15
- 234
+ 232
ru
@@ -22517,13 +21962,13 @@
- 206
+ 201
66
1
- 136
+ 134
ru
@@ -22534,7 +21979,7 @@
- 247
+ 245
@@ -22550,12 +21995,12 @@
- 107
+ 105
- 108
+ 106
@@ -22583,18 +22028,18 @@
- 104
+ 101
- 104
+ 101
15
- 234
+ 232
ru
@@ -22606,13 +22051,13 @@
- 207
+ 202
66
2
- 247
+ 245
ru
@@ -22634,12 +22079,12 @@
- 107
+ 105
- 108
+ 106
@@ -22656,7 +22101,7 @@
11
- 111
+ 109
ru
@@ -22667,12 +22112,12 @@
- 104
+ 101
- 104
+ 101
ru
@@ -22684,7 +22129,7 @@
15
- 234
+ 232
ru
@@ -22696,13 +22141,13 @@
- 208
+ 203
66
2
- 247
+ 245
ru
@@ -22724,12 +22169,12 @@
- 107
+ 105
- 108
+ 106
@@ -22746,7 +22191,7 @@
11
- 111
+ 109
ru
@@ -22757,12 +22202,12 @@
- 104
+ 101
- 104
+ 101
ru
@@ -22774,7 +22219,7 @@
15
- 234
+ 232
ru
@@ -22786,13 +22231,13 @@
- 209
+ 204
66
2
- 247
+ 245
ru
@@ -22814,12 +22259,12 @@
- 107
+ 105
- 108
+ 106
@@ -22836,7 +22281,7 @@
11
- 111
+ 109
ru
@@ -22847,12 +22292,12 @@
- 104
+ 101
- 104
+ 101
ru
@@ -22864,7 +22309,7 @@
15
- 234
+ 232
ru
@@ -22876,13 +22321,13 @@
- 210
+ 205
66
2
- 247
+ 245
ru
@@ -22904,12 +22349,12 @@
- 107
+ 105
- 108
+ 106
@@ -22926,7 +22371,7 @@
11
- 111
+ 109
ru
@@ -22937,12 +22382,12 @@
- 104
+ 101
- 104
+ 101
ru
@@ -22954,7 +22399,7 @@
15
- 234
+ 232
ru
@@ -22966,7 +22411,7 @@
- 211
+ 206
66
@@ -23008,12 +22453,12 @@
- 107
+ 105
- 108
+ 106
@@ -23041,12 +22486,12 @@
- 104
+ 101
- 104
+ 101
ru
@@ -23058,7 +22503,7 @@
15
- 234
+ 232
ru
@@ -23070,7 +22515,7 @@
- 212
+ 207
66
@@ -23112,12 +22557,12 @@
- 107
+ 105
- 108
+ 106
@@ -23145,12 +22590,12 @@
- 104
+ 101
- 104
+ 101
ru
@@ -23162,7 +22607,7 @@
15
- 234
+ 232
ru
@@ -23174,7 +22619,7 @@
- 213
+ 208
66
@@ -23184,7 +22629,7 @@
- 136
+ 134
ru
@@ -23220,12 +22665,12 @@
- 107
+ 105
- 108
+ 106
ru
@@ -23263,12 +22708,12 @@
- 104
+ 101
- 104
+ 101
ru
@@ -23280,7 +22725,7 @@
15
- 234
+ 232
ru
@@ -23293,121 +22738,121 @@
true
19
- 214
+ 209
4
- 214
+ 209
0
3
+
+ 18
+ 25
+
+
+ 19
+ 25
+
23
- 30
+ 25
24
- 30
+ 25
- 28
- 30
+ 31
+ 35
- 29
- 30
+ 32
+ 35
- 36
- 40
+ 38
+ 42
- 37
- 40
+ 39
+ 42
- 43
- 47
+ 48
+ 50
- 44
- 47
+ 52
+ 130
53
- 55
+ 130
- 57
- 135
+ 69
+ 70
- 58
- 135
+ 73
+ 74
- 74
- 75
+ 88
+ 90
- 78
- 79
+ 89
+ 90
+
+
+ 92
+ 106
93
- 95
+ 106
- 94
- 95
+ 110
+ 112
- 97
- 111
+ 111
+ 112
- 98
- 111
+ 114
+ 126
- 115
- 117
+ 128
+ 130
- 116
- 117
+ 129
+ 130
- 119
- 131
+ 132
+ 137
- 133
- 135
+ 139
+ 143
- 134
- 135
+ 141
+ 143
- 137
- 142
-
-
- 144
- 148
+ 142
+ 143
146
148
-
- 147
- 148
-
-
- 151
- 153
-
0
0
@@ -23452,8 +22897,8 @@
СведенияОМаркировке
Rows
- 155
- 164
+ 150
+ 159
-1
-1
@@ -23462,8 +22907,8 @@
СведенияОУчастниках
Rows
- 166
- 213
+ 161
+ 208
-1
-1
@@ -23974,20 +23419,11 @@
Center
Wrap
-
- #808080
-
1
107
Wrap
-
- 107
-
-
- Wrap
-
107
Wrap
@@ -23996,6 +23432,9 @@
243
Top
+
+ 107
+
162
style:FieldTextColor
diff --git a/src/DataProcessors/ОбменСКонтрагентами/Templates/УведомлениеОбУточнении/Ext/Template.xml b/src/DataProcessors/ОбменСКонтрагентами/Templates/УведомлениеОбУточнении/Ext/Template.xml
index b72ac3bc7..ad1840d77 100644
--- a/src/DataProcessors/ОбменСКонтрагентами/Templates/УведомлениеОбУточнении/Ext/Template.xml
+++ b/src/DataProcessors/ОбменСКонтрагентами/Templates/УведомлениеОбУточнении/Ext/Template.xml
@@ -4002,6 +4002,12 @@
59
+
+
+ ru
+ 0490
+
+
@@ -4108,6 +4114,12 @@
59
+
+
+ ru
+ 0492
+
+
@@ -4214,6 +4226,12 @@
59
+
+
+ ru
+ 0493
+
+
@@ -4320,6 +4338,12 @@
59
+
+
+ ru
+ 0495
+
+
diff --git a/src/DataProcessors/ОбщегоНазначенияБЭД/Forms/ОжиданиеОперации/Ext/Form/Module.bsl b/src/DataProcessors/ОбщегоНазначенияБЭД/Forms/ОжиданиеОперации/Ext/Form/Module.bsl
index e0fd47379..5f7d8be38 100644
--- a/src/DataProcessors/ОбщегоНазначенияБЭД/Forms/ОжиданиеОперации/Ext/Form/Module.bsl
+++ b/src/DataProcessors/ОбщегоНазначенияБЭД/Forms/ОжиданиеОперации/Ext/Form/Module.bsl
@@ -19,21 +19,26 @@
КонецПроцедуры
+// Параметры:
+// ИмяСобытия - Строка
+// ПараметрыОповещения - См. ОжиданиеОперацийБЭДСлужебныйКлиентСервер.НовыеПараметрыОповещенияСобытияЗакрытияФормы
+// - См. ОжиданиеОперацийБЭДКлиент.НовыйКонтекст
+// Источник - Произвольный
&НаКлиенте
-Процедура ОбработкаОповещения(ИмяСобытия, КонтекстДлительнойОперации, Источник)
+Процедура ОбработкаОповещения(ИмяСобытия, ПараметрыОповещения, Источник)
Если ИмяСобытия = ОжиданиеОперацийБЭДСлужебныйКлиентСервер.ИмяСобытияЗакрытияФормы()
Или ИмяСобытия = ОжиданиеОперацийБЭДСлужебныйКлиентСервер.ИмяСобытияПередИнтерактивнымДействием() Тогда
- Если КонтекстДлительнойОперации.ИдентификаторОперации = Параметры.ИдентификаторОперации Тогда
+ Если ПараметрыОповещения.ИдентификаторОперации = Параметры.ИдентификаторОперации Тогда
ЗакрытьФорму(Ложь);
КонецЕсли;
ИначеЕсли ИмяСобытия = ОжиданиеОперацийБЭДСлужебныйКлиентСервер.ИмяСобытияОбновленияПрогресса() Тогда
- Если КонтекстДлительнойОперации.ИдентификаторОперации = Параметры.ИдентификаторОперации Тогда
- Если КонтекстДлительнойОперации.ПараметрыОжиданияОперации.ОперацияЗавершена Тогда
- ОбновитьФормуПоПараметрам(КонтекстДлительнойОперации.ПараметрыОжиданияОперации);
+ Если ПараметрыОповещения.ИдентификаторОперации = Параметры.ИдентификаторОперации Тогда
+ Если ПараметрыОповещения.ПараметрыОжиданияОперации.ОперацияЗавершена Тогда
+ ОбновитьФормуПоПараметрам(ПараметрыОповещения.ПараметрыОжиданияОперации);
ПерейтиВСостояниеЗавершеннойОперации();
Иначе
- ОбновитьСостояниеПрогрессаДлительнойОперации(КонтекстДлительнойОперации.ПараметрыОжиданияОперации);
+ ОбновитьСостояниеПрогрессаДлительнойОперации(ПараметрыОповещения.ПараметрыОжиданияОперации);
КонецЕсли;
КонецЕсли;
КонецЕсли;
diff --git a/src/DataProcessors/ОформлениеПередачиТоваровМеждуОрганизациями/Ext/ManagerModule.bsl b/src/DataProcessors/ОформлениеПередачиТоваровМеждуОрганизациями/Ext/ManagerModule.bsl
index dd5c1982d..f922b8d09 100644
--- a/src/DataProcessors/ОформлениеПередачиТоваровМеждуОрганизациями/Ext/ManagerModule.bsl
+++ b/src/DataProcessors/ОформлениеПередачиТоваровМеждуОрганизациями/Ext/ManagerModule.bsl
@@ -2572,12 +2572,18 @@
Процедура РаспределитьШтрихКодыУпаковок(Объект)
- Таблица = Объект.ШтрихкодыУпаковок.Выгрузить(,"ШтрихкодУпаковки");
+ ШтрихкодыУпаковок = Объект.ШтрихкодыУпаковок.ВыгрузитьКолонку("ШтрихкодУпаковки");
+ Товары = ШтрихкодированиеИС.ВложенныеШтрихкодыИзвестныхУпаковок(ШтрихкодыУпаковок).МаркированныеТовары;
+ Товары.Индексы.Добавить("ШтрихкодУпаковки");
+
// Распределение по номенклатуре. Считаем что количество по штрихкодам упаковок
// не превосходит количества по табличной части товаров.
- Содержимое = ЭлектронноеВзаимодействиеИСМП.Содержимое(Таблица,,,Истина);
- Для Каждого СтрокаТЧ Из Содержимое Цикл
- ПоискОтправителя = Объект.ШтрихкодыУпаковок.НайтиСтроки(Новый Структура("ШтрихкодУпаковки", СтрокаТЧ.Штрихкод));
+ Для Каждого СтрокаТЧ Из Товары Цикл
+ УпаковкаДокумента = СтрокаТЧ.ШтрихкодУпаковки;
+ Если ЗначениеЗаполнено(СтрокаТЧ.УпаковкаВерхнегоУровня) Тогда
+ УпаковкаДокумента = СтрокаТЧ.УпаковкаВерхнегоУровня.ШтрихкодУпаковки;
+ КонецЕсли;
+ ПоискОтправителя = Объект.ШтрихкодыУпаковок.НайтиСтроки(Новый Структура("ШтрихкодУпаковки", УпаковкаДокумента));
Если ПоискОтправителя.Количество() = 0 Тогда
Продолжить;
КонецЕсли;
@@ -2591,7 +2597,7 @@
Продолжить;
КонецЕсли;
Источник = ТоварыИсточник[0];
- Количество = СтрокаТЧ.Количество;
+ Количество = ?(СтрокаТЧ.Количество = 0, 1, СтрокаТЧ.Количество);
Поиск.Вставить("Организация", Организация);
ТоварыПриемник = Объект.Товары.НайтиСтроки(Поиск);
Если ТоварыПриемник.Количество() = 0 Тогда
@@ -2613,9 +2619,6 @@
// ЕГАИС, распределение по известным справкам2.
// Считаем, что распределение по отправителю выполнено выше
Если Объект.НастройкиЕГАИС.Количество() > 0 Тогда
- Товары = ШтрихкодированиеИС.ВложенныеШтрихкодыИзвестныхУпаковок(Таблица.ВыгрузитьКолонку(
- "ШтрихкодУпаковки")).МаркированныеТовары;
- Товары.Индексы.Добавить("ШтрихкодУпаковки");
Запрос = Новый Запрос;
Запрос.УстановитьПараметр("АкцизнаяМарка", Товары.ВыгрузитьКолонку("ШтрихкодУпаковки"));
Запрос.Текст =
@@ -2635,7 +2638,7 @@
Продолжить;
КонецЕсли;
Товар = Товары.Найти(Справки2.АкцизнаяМарка, "ШтрихкодУпаковки");
- УпаковкаДокумента = Товар.УпаковкаВерхнегоУровня;
+ УпаковкаДокумента = Товар.УпаковкаВерхнегоУровня.ШтрихкодУпаковки;
Если Не ЗначениеЗаполнено(УпаковкаДокумента) Тогда
УпаковкаДокумента = Справки2.АкцизнаяМарка;
КонецЕсли;
@@ -2643,7 +2646,7 @@
Если ПоискОтправителя.Количество() = 0 Тогда
Продолжить;
КонецЕсли;
- Количество = Товар.Количество;
+ Количество = ?(Товар.Количество = 0, 1, Товар.Количество);
Поиск = СтруктураПоискаТовары();
ЗаполнитьЗначенияСвойств(Поиск, Товар);
Поиск.Вставить("ОрганизацияПолучатель", ПоискОтправителя[0].ОрганизацияПолучатель);
diff --git a/src/DataProcessors/ОформлениеПередачиТоваровМеждуОрганизациями/Forms/Форма/Ext/Form/Module.bsl b/src/DataProcessors/ОформлениеПередачиТоваровМеждуОрганизациями/Forms/Форма/Ext/Form/Module.bsl
index 83cdf5b56..bfd6d3b4c 100644
--- a/src/DataProcessors/ОформлениеПередачиТоваровМеждуОрганизациями/Forms/Форма/Ext/Form/Module.bsl
+++ b/src/DataProcessors/ОформлениеПередачиТоваровМеждуОрганизациями/Forms/Форма/Ext/Form/Module.bsl
@@ -787,7 +787,7 @@
РеквизитыДокумента = Новый Массив;
РеквизитыДокумента.Добавить("Контрагент");
РеквизитыДокумента.Добавить("Дата");
- ЗначенияРеквизитов = ОбщегоНазначенияИСВызовСервера.ЗначенияРеквизитовОбъектов(
+ ЗначенияРеквизитов = ОбщегоНазначенияУТВызовСервера.ЗначенияРеквизитовОбъектов(
ДокументыОтгрузкаТоваровИСМП, РеквизитыДокумента);
НачалоПериода = НачалоДня(ОбщегоНазначенияКлиент.ДатаСеанса());
diff --git a/src/DataProcessors/ПанельАдминистрированияБЭД/Forms/ОбщиеНастройки/Ext/Form/Module.bsl b/src/DataProcessors/ПанельАдминистрированияБЭД/Forms/ОбщиеНастройки/Ext/Form/Module.bsl
index 75314a656..e3e9c53e2 100644
--- a/src/DataProcessors/ПанельАдминистрированияБЭД/Forms/ОбщиеНастройки/Ext/Form/Module.bsl
+++ b/src/DataProcessors/ПанельАдминистрированияБЭД/Forms/ОбщиеНастройки/Ext/Form/Module.bsl
@@ -1,6 +1,5 @@
-
#Область ОписаниеПеременных
&НаКлиенте
@@ -1476,11 +1475,11 @@
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(Элементы,
"ГруппаНастройкаРегламентногоЗаданияПолучение", "Видимость", ВидимостьАвтоматическогоПолученияПоСертифиатам);
- ВидимостьАвтоматическогоПолученияПоТокенам = Не ИспользоватьАвтоматическоеПолучениеЭДПоКлючуДоступа;
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(Элементы,
"ПолучениеЭлектронныхДокументов", "Видимость", ИспользоватьАвтоматическоеПолучениеЭД);
- ВидимостьАвтоматическогоПолученияПоТокенам = Ложь;
+ МодульАвтоматическоеПолучениеЭДО = ОбщегоНазначения.ОбщийМодуль("АвтоматическоеПолучениеЭДО");
+ ВидимостьАвтоматическогоПолученияПоТокенам = МодульАвтоматическоеПолучениеЭДО.ДоступноПолучениеПоТокенам();
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(Элементы,
"ГруппаИспользоватьАвтоматическоеПолучениеПоТокенам", "Видимость", ВидимостьАвтоматическогоПолученияПоТокенам);
@@ -1914,7 +1913,7 @@
ДополнительныеПараметры = Новый Структура;
ДополнительныеПараметры.Вставить("КонтекстДиагностики", КонтекстДиагностики);
ДополнительныеПараметры.Вставить("ИдентификаторТекущегоФоновогоЗадания", ДлительнаяОперация.ИдентификаторЗадания);
- ДополнительныеПараметры.Вставить("КонтекстОжиданияОперации", КонтекстОжиданияОперации);
+ ДополнительныеПараметры.Вставить("ИдентификаторОперации", КонтекстОжиданияОперации.ИдентификаторОперации);
ДополнительныеПараметры.Вставить("ЭтоПрерываниеНаКлиенте", Ложь);
ДополнительныеПараметры.Вставить("ОбновляемыйЭлементФормы", ОбновляемыйЭлементФормы);
@@ -1922,18 +1921,19 @@
Новый ОписаниеОповещения("ОбработатьЗавершениеПроверкиПодписейМЧД", ЭтотОбъект, ДополнительныеПараметры);
ОжиданиеОперацийБЭДКлиент.УстановитьОбработчикПрерывания(ОповещениеЗавершениеПроверкиПодписей, КонтекстОжиданияОперации);
- ОжиданиеОперацийБЭДКлиент.ОтметитьНачалоВыполнения(КонтекстОжиданияОперации);
ОжиданиеОперацийБЭДКлиент.ОткрытьФормуОжидания(Неопределено, КонтекстОжиданияОперации);
- ДополнительныеПараметры.Вставить("ОповещениеОЗавершении", ОповещениеЗавершениеПроверкиПодписей);
-
ОповещениеПослеПроверкиНаСервере =
Новый ОписаниеОповещения("ОбработатьРезультатПроверкиПодписейМЧДНаСервере", ЭтотОбъект, ДополнительныеПараметры);
ПараметрыОжидания = ДлительныеОперацииКлиент.ПараметрыОжидания(ЭтотОбъект);
ПараметрыОжидания.ВыводитьОкноОжидания = Ложь;
ПараметрыОжидания.ВыводитьПрогрессВыполнения = Истина;
- ПараметрыОжидания.ОповещениеОПрогрессеВыполнения = КонтекстОжиданияОперации.ОбработчикОбновленияПрогресса;
+
+ ОповещениеОПрогрессеВыполнения =
+ Новый ОписаниеОповещения("ОбработатьОповещениеОПрогрессеВыполненияПроверкиПодписей",
+ МашиночитаемыеДоверенностиКлиент, КонтекстОжиданияОперации);
+ ПараметрыОжидания.ОповещениеОПрогрессеВыполнения = ОповещениеОПрогрессеВыполнения;
ДлительныеОперацииКлиент.ОжидатьЗавершение(ДлительнаяОперация, ОповещениеПослеПроверкиНаСервере, ПараметрыОжидания);
@@ -1960,10 +1960,9 @@
ДополнительныеПараметры.ИдентификаторТекущегоФоновогоЗадания);
КонецЕсли;
- ДополнительныеПараметры.КонтекстОжиданияОперации.ОперацияВыполняется = Ложь;
- ОжиданиеОперацийБЭДКлиент.ЗакрытьФормуОжидания(ДополнительныеПараметры.КонтекстОжиданияОперации);
-
Оповестить("ЗавершениеПроверкиПодписейМЧД");
+ ОжиданиеОперацийБЭДКлиент.ЗакрытьФормуОжиданияПоИдентификаторуОперации(
+ ДополнительныеПараметры.ИдентификаторОперации);
Если ДополнительныеПараметры.ЭтоПрерываниеНаКлиенте Тогда
@@ -2010,13 +2009,16 @@
НСтр("ru = 'Обработка результатов проверки подписи на сервере'"),
РезультатВыполненияФоновогоЗадания, ДополнительныеПараметры.КонтекстДиагностики);
+ ОповещениеЗавершениеПроверкиПодписей =
+ Новый ОписаниеОповещения("ОбработатьЗавершениеПроверкиПодписейМЧД", ЭтотОбъект, ДополнительныеПараметры);
+
Если Результат = Неопределено Тогда
- ВыполнитьОбработкуОповещения(ДополнительныеПараметры.ОповещениеОЗавершении, Ложь);
+ ВыполнитьОбработкуОповещения(ОповещениеЗавершениеПроверкиПодписей, Ложь);
Возврат;
КонецЕсли;
Если Результат.ПроверкаВыполнена = Истина Тогда
- ВыполнитьОбработкуОповещения(ДополнительныеПараметры.ОповещениеОЗавершении, Истина);
+ ВыполнитьОбработкуОповещения(ОповещениеЗавершениеПроверкиПодписей, Истина);
Возврат;
КонецЕсли;
@@ -2027,7 +2029,7 @@
ПараметрыПроверки.Вставить("ДоверенностиПроверенные", Новый Массив());
ПараметрыПроверки.Вставить("ПроверяемаяМЧД", Неопределено);
ПараметрыПроверки.Вставить("ДанныеДоверенности", Неопределено);
- ПараметрыПроверки.Вставить("ОповещениеОЗавершении", ДополнительныеПараметры.ОповещениеОЗавершении);
+ ПараметрыПроверки.Вставить("ОповещениеОЗавершении", ОповещениеЗавершениеПроверкиПодписей);
ПараметрыПроверки.Вставить("КонтекстДиагностики", ДополнительныеПараметры.КонтекстДиагностики);
МашиночитаемыеДоверенностиКлиент.ПроверитьПодписиДоверенностей(
@@ -2197,7 +2199,6 @@
Элементы.КнопкаЕстьПроблемаПолучение.Видимость = ИспользоватьАвтоматическоеПолучениеЭД;
Если Не РезультатПроверкиНастроек.ЕстьКриптоПровайдер
- Или Не РезультатПроверкиНастроек.ПроверкаПодписи
Или Не РезультатПроверкиНастроек.РежимРаботы Тогда
Элементы.КнопкаЕстьПроблемаПолученияПоТокенам.Видимость = ИспользоватьАвтоматическоеПолучениеЭДПоТокенам;
КонецЕсли;
diff --git a/src/DataProcessors/ПанельАдминистрированияИСМП/Forms/НастройкиИСМП/Ext/Form.xml b/src/DataProcessors/ПанельАдминистрированияИСМП/Forms/НастройкиИСМП/Ext/Form.xml
index 3b2966257..b09cb73d0 100644
--- a/src/DataProcessors/ПанельАдминистрированияИСМП/Forms/НастройкиИСМП/Ext/Form.xml
+++ b/src/DataProcessors/ПанельАдминистрированияИСМП/Forms/НастройкиИСМП/Ext/Form.xml
@@ -2334,6 +2334,18 @@
+
+ Hyperlink
+ Form.Command.ОткрытьСписокМОД
+
+
+ ru
+ Места осуществления деятельности
+
+
+ ShowBottom
+
+
@@ -3415,6 +3427,15 @@
ОткрытьНастройкуНоменклатурыПоТНВЭДиОКПД2
+
+
+
+ ru
+ Список мест осуществления деятельности.
+
+
+ ОткрытьСписокМОД
+
diff --git a/src/DataProcessors/ПанельАдминистрированияИСМП/Forms/НастройкиИСМП/Ext/Form/Module.bsl b/src/DataProcessors/ПанельАдминистрированияИСМП/Forms/НастройкиИСМП/Ext/Form/Module.bsl
index 2ba1badbe..b3d2750ab 100644
--- a/src/DataProcessors/ПанельАдминистрированияИСМП/Forms/НастройкиИСМП/Ext/Form/Module.bsl
+++ b/src/DataProcessors/ПанельАдминистрированияИСМП/Forms/НастройкиИСМП/Ext/Form/Module.bsl
@@ -683,6 +683,13 @@
КонецПроцедуры
+&НаКлиенте
+Процедура ОткрытьСписокМОД(Команда)
+
+ ОткрытьФорму("РегистрСведений.МестаОсуществленияДеятельностиИСМП.Форма.ФормаСписка");
+
+КонецПроцедуры
+
#КонецОбласти
#Область СлужебныеПроцедурыИФункции
@@ -1187,6 +1194,7 @@
Элементы.ГруппаНастройкиРегламентногоЗаданияОчисткиПула.ТолькоПросмотр = Не РедактированиеСрокаХранения;
Элементы.ГруппаАвтоматическоеУдалениеНеиспользованныхКодовМаркировки.ТолькоПросмотр =
Не РедактированиеАвтоматическогоУдаленияНеиспользованныхКодовМаркировки;
+ Элементы.ГруппаФоноваяПроверкаДокументовДляГИСМТ.Видимость = ОбщегоНазначения.ИнформационнаяБазаФайловая();
УстановитьНастройкиЗаданий();
diff --git a/src/DataProcessors/ПанельАдминистрированияИнтеграцияСМаркетплейсами/Forms/Форма/Ext/Form.xml b/src/DataProcessors/ПанельАдминистрированияИнтеграцияСМаркетплейсами/Forms/Форма/Ext/Form.xml
index 0622f3f8b..7c590eb20 100644
--- a/src/DataProcessors/ПанельАдминистрированияИнтеграцияСМаркетплейсами/Forms/Форма/Ext/Form.xml
+++ b/src/DataProcessors/ПанельАдминистрированияИнтеграцияСМаркетплейсами/Forms/Форма/Ext/Form.xml
@@ -1,5 +1,6 @@
-
+
ru
@@ -225,7 +225,7 @@
InCell
-
+
ДеревоОтсканированнойУпаковки.ИндексКартинкиТипУпаковки
diff --git a/src/DataProcessors/ПроверкаИПодборПродукцииИС/Forms/ИнформацияОНевозможностиДобавленияОтсканированного/Ext/Form/Module.bsl b/src/DataProcessors/ПроверкаИПодборПродукцииИС/Forms/ИнформацияОНевозможностиДобавленияОтсканированного/Ext/Form/Module.bsl
index b87d08830..720b73a2a 100644
--- a/src/DataProcessors/ПроверкаИПодборПродукцииИС/Forms/ИнформацияОНевозможностиДобавленияОтсканированного/Ext/Form/Module.bsl
+++ b/src/DataProcessors/ПроверкаИПодборПродукцииИС/Forms/ИнформацияОНевозможностиДобавленияОтсканированного/Ext/Form/Module.bsl
@@ -95,7 +95,7 @@
Если НавигационнаяСсылкаФорматированнойСтроки = "СкопироватьШтриховойКодВБуферОбмена" Тогда
СтандартнаяОбработка = Ложь;
- ОбщегоНазначенияИСКлиент.СкопироватьШтрихКодВБуферОбмена(Элементы.БуферОбмена, Штрихкод);
+ ОбщегоНазначенияИСКлиент.СкопироватьШтрихкодВБуферОбмена(Элементы.БуферОбмена, Штрихкод);
ИначеЕсли НавигационнаяСсылкаФорматированнойСтроки = "РаспечататьКодМаркировки" Тогда
diff --git a/src/DataProcessors/ПроверкаИПодборПродукцииИС/Forms/ПроверкаИПодбор/Ext/Form.xml b/src/DataProcessors/ПроверкаИПодборПродукцииИС/Forms/ПроверкаИПодбор/Ext/Form.xml
index 428755932..25ad7627b 100644
--- a/src/DataProcessors/ПроверкаИПодборПродукцииИС/Forms/ПроверкаИПодбор/Ext/Form.xml
+++ b/src/DataProcessors/ПроверкаИПодборПродукцииИС/Forms/ПроверкаИПодбор/Ext/Form.xml
@@ -619,14 +619,6 @@
-
- ДеревоМаркированнойПродукции.РазрешительныйРежимМинимальнаяРозничнаяЦена
-
- false
-
-
-
-
@@ -2493,22 +2485,6 @@
cfg:EnumRef.ГруппыСтатусовРазрешительныхДокументовИСМП
-
-
-
- ru
- Минимальная розничная цена
-
-
-
- xs:decimal
-
- 15
- 3
- Nonnegative
-
-
-
@@ -4073,11 +4049,11 @@
xs:boolean
-
+
ru
- Расчитывать хеш сумму упаковок
+ Рассчитывать хеш сумму упаковок
@@ -5756,7 +5732,7 @@
xs:boolean
-
+
xs:boolean
diff --git a/src/DataProcessors/ПроверкаИПодборПродукцииИС/Forms/ПроверкаИПодбор/Ext/Form/Module.bsl b/src/DataProcessors/ПроверкаИПодборПродукцииИС/Forms/ПроверкаИПодбор/Ext/Form/Module.bsl
index 71efdd7b1..bcf252bb7 100644
--- a/src/DataProcessors/ПроверкаИПодборПродукцииИС/Forms/ПроверкаИПодбор/Ext/Form/Module.bsl
+++ b/src/DataProcessors/ПроверкаИПодборПродукцииИС/Forms/ПроверкаИПодбор/Ext/Form/Module.bsl
@@ -2732,7 +2732,7 @@
Возврат;
КонецЕсли;
- ЗаменитьШтрихКодВСпискахУпаковок(ЭтотОбъект,СтрокаСУпаковкой.Штрихкод, Штрихкод);
+ ЗаменитьШтрихкодВСпискахУпаковок(ЭтотОбъект,СтрокаСУпаковкой.Штрихкод, Штрихкод);
СоответствиеШтрихкодовСтрокДерева.Удалить(СтрокаСУпаковкой.НормализованныйШтрихкод);
СтрокаСУпаковкой.Штрихкод = Штрихкод;
СоответствиеШтрихкодовСтрокДерева.Вставить(СтрокаСУпаковкой.Штрихкод, ИдентификаторСтрокиУпаковки);
@@ -2748,7 +2748,7 @@
КонецПроцедуры
&НаКлиентеНаСервереБезКонтекста
-Процедура ЗаменитьШтрихКодВСпискахУпаковок(Форма, СтарыйШтрихкод, НовыйШтрихкод)
+Процедура ЗаменитьШтрихкодВСпискахУпаковок(Форма, СтарыйШтрихкод, НовыйШтрихкод)
ИзменитьЗначениеШтрихкодаВСписке(СтарыйШтрихкод, НовыйШтрихкод, Форма.ДобавленныеУпаковки);
ИзменитьЗначениеШтрихкодаВСписке(СтарыйШтрихкод, НовыйШтрихкод, Форма.ДоступныеДляПроверкиУпаковки);
@@ -2764,7 +2764,7 @@
Если НайденныйЭлемент <> Неопределено Тогда
СписокШтрихкодов.Удалить(НайденныйЭлемент);
- СписокШтрихКодов.Добавить(НовыйШтрихкод);
+ СписокШтрихкодов.Добавить(НовыйШтрихкод);
КонецЕсли;
@@ -2919,7 +2919,7 @@
КонецЦикла;
- ОбработататьТаблицуПеремаркировкиСУчетомДетализации(ТаблицаПеремаркировки, ШтрихкодИДанныеУпаковки);
+ ОбработатьТаблицуПеремаркировкиСУчетомДетализации(ТаблицаПеремаркировки, ШтрихкодИДанныеУпаковки);
ПроверитьНеобходимостьПеремаркировки(ТаблицаПеремаркировки, Истина);
@@ -3053,11 +3053,11 @@
Если СтрокаРодитель <> Неопределено
И ИнтеграцияИСКлиентСервер.ЭтоУпаковка(СтрокаРодитель.ТипУпаковки) Тогда
- ИденитификаторСтрокиРодителя = СтрокаРодитель.ПолучитьИдентификатор();
+ ИдентификаторСтрокиРодителя = СтрокаРодитель.ПолучитьИдентификатор();
- Если МассивУпаковокСИзменившимсяСоставом.Найти(ИденитификаторСтрокиРодителя) = Неопределено Тогда
+ Если МассивУпаковокСИзменившимсяСоставом.Найти(ИдентификаторСтрокиРодителя) = Неопределено Тогда
- МассивУпаковокСИзменившимсяСоставом.Добавить(ИденитификаторСтрокиРодителя);
+ МассивУпаковокСИзменившимсяСоставом.Добавить(ИдентификаторСтрокиРодителя);
КонецЕсли;
@@ -3066,9 +3066,9 @@
КонецПроцедуры
&НаСервере
-Процедура ОбработататьТаблицуПеремаркировкиСУчетомДетализации(ТаблицаПеремаркировки, ШтрихкодИДанныеУпаковки)
+Процедура ОбработатьТаблицуПеремаркировкиСУчетомДетализации(ТаблицаПеремаркировки, ШтрихкодИДанныеУпаковки)
- ПроверкаИПодборПродукцииИС.ОбработататьТаблицуПеремаркировкиСУчетомДетализации(
+ ПроверкаИПодборПродукцииИС.ОбработатьТаблицуПеремаркировкиСУчетомДетализации(
ЭтотОбъект, ТаблицаПеремаркировки, ШтрихкодИДанныеУпаковки);
КонецПроцедуры
@@ -3114,7 +3114,7 @@
КонецПроцедуры
&НаКлиенте
-Процедура ПроверитьСтатусыКодовМаркировкиИзмененииФлагов() Экспорт
+Процедура ПроверитьСтатусыКодовМаркировкиПриИзмененииФлагов() Экспорт
ПроверкаСостоянияКодовМаркировки();
КонецПроцедуры
@@ -3222,7 +3222,7 @@
Если ОбщегоНазначенияИСМПКлиентСерверПовтИсп.ПродукцияПодлежитОбязательнойОнлайнПроверкеПередРозничнойПродажей(
ДопустимыйВидПродукции,
ПараметрыСканирования.ВидОперацииИСМП,
- ПараметрыСканирования.ТребуетсяПроверкаСредствамиККТ) Тогда
+ ПараметрыСканирования.ТребуетсяПроверкаСредствамиККТ Или ПараметрыСканирования.ЭтоОблачнаяККТИСМП) Тогда
НеобходимыПроверкиРозничнойПродажи = Истина;
Прервать;
@@ -3325,11 +3325,7 @@
Если СтатусКодаМаркировки.Свойство("ДанныеРазрешительнойДокументации") Тогда
СтрокаДерева.СтатусРД = СтатусКодаМаркировки.ДанныеРазрешительнойДокументации.ОбщаяГруппаСтатуса;
КонецЕсли;
-
- Если СтатусКодаМаркировки.Свойство("МинимальнаяРозничнаяЦена") Тогда
- СтрокаДерева.РазрешительныйРежимМинимальнаяРозничнаяЦена = СтатусКодаМаркировки.МинимальнаяРозничнаяЦена;
- КонецЕсли;
-
+
Если СтатусКодаМаркировки.СписокОрганизацийБлокировкиКМ <> Неопределено Тогда
СтрокаДерева.ОрганыБлокировкиКМ = СтрСоединить(
ИнтерфейсИСМПОбщегоНазначенияКлиентСервер.ОрганыВластиУстанавливающиеБлокировкуНаКМПоДаннымГИСМТ(СтатусКодаМаркировки.СписокОрганизацийБлокировкиКМ));
@@ -3802,7 +3798,7 @@
РедактированиеФормыНедоступно = Параметры.РедактированиеФормыНедоступно;
КонтролироватьСканируемуюПродукциюПоДокументуОснованию = Параметры.КонтролироватьСканируемуюПродукциюПоДокументуОснованию;
ПроверятьНеобходимостьПеремаркировки = Параметры.ПроверятьНеобходимостьПеремаркировки;
- РасчитыватьХешСуммуУпаковок = Параметры.РасчитыватьХешСуммуУпаковок;
+ РассчитыватьХешСуммуУпаковки = Параметры.РассчитыватьХешСуммуУпаковки;
ДанныеВыбораПоМаркируемойПродукции = Параметры.ДанныеВыбораПоМаркируемойПродукции;
СохраненВыборПоМаркируемойПродукции = Параметры.СохраненВыборПоМаркируемойПродукции;
ПроверкаЭлектронногоДокумента = Параметры.ПроверкаЭлектронногоДокумента;
@@ -3811,7 +3807,7 @@
РежимИсправленияОшибокПослеПередачиКодов = Параметры.РежимИсправленияОшибокПослеПередачиКодов;
НачальныеПараметры = Новый Структура;
- НачальныеПараметры.Вставить("РасчитыватьХешСуммуУпаковок", РасчитыватьХешСуммуУпаковок);
+ НачальныеПараметры.Вставить("РассчитыватьХешСуммуУпаковки", РассчитыватьХешСуммуУпаковки);
НачальныеПараметры.Вставить("ПроверятьНеобходимостьПеремаркировки", ПроверятьНеобходимостьПеремаркировки);
Если ПроверяемыйДокумент = Неопределено Тогда
@@ -4013,7 +4009,7 @@
ПараметрыПроверкиКодовМаркировки.КонтролироватьСтатусыКодовМаркировки = Истина;
- ПодключитьОбработчикОжидания("ПроверитьСтатусыКодовМаркировкиИзмененииФлагов", 0.1, Истина);
+ ПодключитьОбработчикОжидания("ПроверитьСтатусыКодовМаркировкиПриИзмененииФлагов", 0.1, Истина);
КонецЕсли;
@@ -4142,6 +4138,10 @@
// При изменении состава хранилища значений дописывать преобразование между форматами явно
// Ключевое свойство: Формат
+ Если Формат < 1 Тогда
+ ДобавитьОтсутствующуюКолонкуВКоллекцию(ДеревоМаркированнойПродукцииОбъект, "РазрешительныйРежимМинимальнаяРозничнаяЦена", ОбщегоНазначения.ОписаниеТипаЧисло(15, 3, ДопустимыйЗнак.Неотрицательный));
+ КонецЕсли;
+
Возврат;
КонецПроцедуры
@@ -4173,6 +4173,15 @@
КонецПроцедуры
+&НаСервере
+Процедура ДобавитьОтсутствующуюКолонкуВКоллекцию(Коллекция, Имя, Тип)
+
+ Если Коллекция.Колонки.Найти(Имя) = Неопределено Тогда
+ Коллекция.Колонки.Добавить(Имя, Тип);
+ КонецЕсли;
+
+КонецПроцедуры
+
&НаСервере
Процедура ВывестиДанныеПроверкиИПодбораНаФорму(ДанныеПроверкиИПодбора)
@@ -4431,10 +4440,10 @@
Если РежимПросмотра Тогда
ПроверятьНеобходимостьПеремаркировки = Ложь;
- РасчитыватьХешСуммуУпаковок = Ложь;
+ РассчитыватьХешСуммуУпаковки = Ложь;
Иначе
ПроверятьНеобходимостьПеремаркировки = НачальныеПараметры.ПроверятьНеобходимостьПеремаркировки;
- РасчитыватьХешСуммуУпаковок = НачальныеПараметры.РасчитыватьХешСуммуУпаковок;
+ РассчитыватьХешСуммуУпаковки = НачальныеПараметры.РассчитыватьХешСуммуУпаковки;
КонецЕсли;
КонецПроцедуры
@@ -5199,14 +5208,15 @@
КонецФункции
&НаСервереБезКонтекста
-Функция РазрешенОборотНемаркируемыхОстатковДляВидовПродукции(ВидыПродукции)
+Функция РазрешенОборотНемаркируемыхОстатковДляВидовПродукции(ВидыПродукции, ПараметрыСканирования)
РазрешенОборотНемаркируемыхОстатков = Новый Соответствие;
Для Каждого КлючИЗначение Из ВидыПродукции Цикл
РазрешенОборотНемаркируемыхОстатков.Вставить(
КлючИЗначение.Ключ,
- ОбщегоНазначенияИСМППовтИсп.РазрешенОборотНемаркируемыхОстатковПродукции(КлючИЗначение.Ключ));
+ ОбщегоНазначенияИСМППовтИсп.РазрешенОборотНемаркируемыхОстатковПродукции(КлючИЗначение.Ключ, ПараметрыСканирования.ДатаДокумента)
+ Или Не ОбщегоНазначенияИСМППовтИсп.ДействуетКонтрольПоВидуОперацииИПродукции(ПараметрыСканирования.ВидОперацииИСМП, КлючИЗначение.Ключ, ПараметрыСканирования.ДатаДокумента));
КонецЦикла;
Возврат РазрешенОборотНемаркируемыхОстатков;
@@ -5226,15 +5236,24 @@
КонецЦикла;
- РазрешенОборотНемаркируемыхОстатков = РазрешенОборотНемаркируемыхОстатковДляВидовПродукции(ВидыПродукции);
+ ПроверятьВозможностьОтгрузкиНемаркированныхТоваров = Ложь;
+
+ Если ПараметрыСканирования.ИСМП Тогда
+ РазрешенОборотНемаркируемыхОстатков = РазрешенОборотНемаркируемыхОстатковДляВидовПродукции(ВидыПродукции, ПараметрыСканирования);
+ ПроверятьВозможностьОтгрузкиНемаркированныхТоваров = Истина;
+ КонецЕсли;
Для Каждого СтрокаПодобраннойПродукции Из ПодобраннаяМаркируемаяПродукция Цикл
- РазрешенОборотНемаркированныхОстатков = РазрешенОборотНемаркируемыхОстатков[СтрокаПодобраннойПродукции.ВидПродукции];
- Если РазрешенОборотНемаркированныхОстатков
- И (СтрокаПодобраннойПродукции.ИндексКодаМаркировки = 6 Или СтрокаПодобраннойПродукции.ИндексКодаМаркировки = 7) Тогда
- // немаркированные остатки, не подобранные или частично подобранные
- Продолжить;
+ Если ПроверятьВозможностьОтгрузкиНемаркированныхТоваров Тогда
+
+ РазрешенОборотНемаркированныхОстатков = РазрешенОборотНемаркируемыхОстатков[СтрокаПодобраннойПродукции.ВидПродукции];
+ Если РазрешенОборотНемаркированныхОстатков
+ И СтрокаПодобраннойПродукции.Количество > СтрокаПодобраннойПродукции.КоличествоПодобрано Тогда
+ // немаркированные остатки, не подобранные или частично подобранные
+ Продолжить;
+ КонецЕсли;
+
КонецЕсли;
Если СтрокаПодобраннойПродукции.Количество <> СтрокаПодобраннойПродукции.КоличествоПодобрано Тогда
@@ -5445,8 +5464,8 @@
Если Результат.КакУчитыватьНеПроверенныеОтложенные = ВНаличии
Или ПоддерживаетсяОбъемноСортовойУчет Тогда
- ДействияПередЗаверешениемПроверки = ТребуетсяВопросПередЗавершениемПроверки();
- СоздаватьАктОРасхождениях = ДействияПередЗаверешениемПроверки.СоздаватьАктОРасхождениях;
+ ДействияПередЗавершениемПроверки = ТребуетсяВопросПередЗавершениемПроверки();
+ СоздаватьАктОРасхождениях = ДействияПередЗавершениемПроверки.СоздаватьАктОРасхождениях;
Иначе
Если ДополнительныеПараметры = Неопределено Тогда
СоздаватьАктОРасхождениях = Истина;
@@ -5859,7 +5878,7 @@
Функция ДанныеРезультатовПроверки()
РезультатыСканированияМаркируемойПродукции = Новый Структура;
- РезультатыСканированияМаркируемойПродукции.Вставить("Формат", 0);
+ РезультатыСканированияМаркируемойПродукции.Вставить("Формат", 1);
РезультатыСканированияМаркируемойПродукции.Вставить("ДеревоМаркированнойПродукции", РеквизитФормыВЗначение("ДеревоМаркированнойПродукции", Тип("ДеревоЗначений")));
РезультатыСканированияМаркируемойПродукции.Вставить("ПодобраннаяМаркируемаяПродукция", РеквизитФормыВЗначение("ПодобраннаяМаркируемаяПродукция", Тип("ТаблицаЗначений")));
РезультатыСканированияМаркируемойПродукции.Вставить("ПараметрыПроверкиКодовМаркировки", ПараметрыПроверкиКодовМаркировки);
@@ -5972,6 +5991,7 @@
ДанныеВыбора.Вставить("Серия", ТекущаяУпаковка.Серия);
ДанныеВыбора.Вставить("GTIN", ТекущаяУпаковка.GTIN);
ДанныеВыбора.Вставить("ОбработатьБезМаркировки", Ложь);
+ ДанныеВыбора.Вставить("Агрегация", Неопределено);
ДанныеВыбора.Вставить("СоставКодаМаркировки");
КонецЕсли;
КонецЕсли;
@@ -6582,7 +6602,7 @@
КонецФункции
&НаКлиенте
-Процедура ОбработатьНеНайденныйВДеревеШтрихКод(ДанныеШтрихкода, ТекущаяСтрокаДерева)
+Процедура ОбработатьНеНайденныйВДеревеШтрихкод(ДанныеШтрихкода, ТекущаяСтрокаДерева)
ИнициализироватьПараметрыСканирования();
@@ -6835,6 +6855,16 @@
ТекущаяСтрокаДерева,
ИдентификаторНайденнойСтроки);
+ ИначеЕсли ДанныеШтрихкода.ВидУпаковки = ПредопределенноеЗначение("Перечисление.ВидыУпаковокИС.Потребительская")
+ И Не РежимПодбораСуществующихУпаковок
+ И ПараметрыСканирования.КонтрольРасхожденийСДокументомОснованием Тогда
+
+ РезультатОбработки = Новый Структура;
+ РезультатОбработки.Вставить("ДанныеШтрихкода", ДанныеШтрихкода);
+ РезультатОбработки.Вставить("ТекстОшибки", НСтр("ru = 'Продукция отсутствует в данных документа.'"));
+ РезультатОбработки.Вставить("ПараметрыОшибки");
+ ШтрихкодированиеИСКлиент.ИнформироватьВРасширеннойВерсииОНевозможностиДобавления(ЭтотОбъект, РезультатОбработки, ПараметрыСканирования);
+
ИначеЕсли ЭтоАдресВременногоХранилища(ДанныеШтрихкода.АдресДереваУпаковок)
И ( ИнтеграцияИСКлиентСервер.ЭтоУпаковка(ДанныеШтрихкода.ТипУпаковки)
Или ОбщегоНазначенияИСКлиентСервер.ЭтоУпаковкаПоВиду(ДанныеШтрихкода.ВидУпаковки)) Тогда
@@ -6899,7 +6929,7 @@
Иначе
- ОбработатьНеНайденныйВДеревеШтрихКод(ДанныеШтрихкода, ТекущаяСтрокаДерева);
+ ОбработатьНеНайденныйВДеревеШтрихкод(ДанныеШтрихкода, ТекущаяСтрокаДерева);
КонецЕсли;
@@ -7706,13 +7736,9 @@
КонецЕсли;
ЗаполнитьЗначенияСвойств(НоваяСтрока, ДанныеШтрихкода);
- НоваяСтрока.ТипУпаковки = ?(ЗначениеЗаполнено(ТипУпаковки), ТипУпаковки, ПредопределенноеЗначение("Перечисление.ТипыУпаковок.МонотоварнаяУпаковка"));
- НоваяСтрока.НеСодержитсяВДанныхДокумента = Истина;
- НоваяСтрока.ВидУпаковки = ВидУпаковки;
-
- Если ОбщегоНазначенияКлиентСервер.ЕстьРеквизитИлиСвойствоОбъекта(ДанныеШтрихкода, "МинимальнаяРозничнаяЦена") Тогда
- НоваяСтрока.РазрешительныйРежимМинимальнаяРозничнаяЦена = ДанныеШтрихкода.МинимальнаяРозничнаяЦена;
- КонецЕсли;
+ НоваяСтрока.ТипУпаковки = ?(ЗначениеЗаполнено(ТипУпаковки), ТипУпаковки, ПредопределенноеЗначение("Перечисление.ТипыУпаковок.МонотоварнаяУпаковка"));
+ НоваяСтрока.НеСодержитсяВДанныхДокумента = Истина;
+ НоваяСтрока.ВидУпаковки = ВидУпаковки;
Если Не РежимПодбораСуществующихУпаковок Тогда
НоваяСтрока.СтатусПроверки = ПредопределенноеЗначение("Перечисление.СтатусыПроверкиНаличияПродукцииИС.НеЧислилась");
@@ -8839,7 +8865,7 @@
ПеремещаемаяСтрока.СтатусПроверки = СтатусПроверки;
КонецЕсли;
- МассивСтрокИзмененыхУпаковок = Новый Массив;
+ МассивСтрокИзмененныхУпаковок = Новый Массив;
Если ШтрихкодУпаковкиНазначения <> Неопределено Тогда
@@ -8861,7 +8887,7 @@
ИдентификаторПеремещеннойСтроки);
ПересчитатьИтогиПоПроверкеСодержимогоУпаковки(СтрокаНазначения, Истина, ЗагрузкаДанныхТСД);
- МассивСтрокИзмененыхУпаковок.Добавить(СтрокаНазначения.ПолучитьИдентификатор());
+ МассивСтрокИзмененныхУпаковок.Добавить(СтрокаНазначения.ПолучитьИдентификатор());
КонецЕсли;
@@ -8877,11 +8903,11 @@
Если РодительПеремещаемойСтроки <> Неопределено Тогда
ПересчитатьИтогиПоПроверкеСодержимогоУпаковки(РодительПеремещаемойСтроки, Истина, ЗагрузкаДанныхТСД);
- МассивСтрокИзмененыхУпаковок.Добавить(РодительПеремещаемойСтроки.ПолучитьИдентификатор());
+ МассивСтрокИзмененныхУпаковок.Добавить(РодительПеремещаемойСтроки.ПолучитьИдентификатор());
КонецЕсли;
- Если МассивСтрокИзмененыхУпаковок.Количество() > 0 Тогда
- ПриИзмененииМаркировкиСоставаУпаковкиМассиваСтрок(МассивСтрокИзмененыхУпаковок, Истина, КэшированныеЗначения);
+ Если МассивСтрокИзмененныхУпаковок.Количество() > 0 Тогда
+ ПриИзмененииМаркировкиСоставаУпаковкиМассиваСтрок(МассивСтрокИзмененныхУпаковок, Истина, КэшированныеЗначения);
КонецЕсли;
Элементы.ДеревоМаркированнойПродукции.ТекущаяСтрока = ИдентификаторПеремещеннойСтроки;
@@ -12838,7 +12864,7 @@
Иначе
- ШтрихкодОбработан = ОбработатьНеНайденныйВДеревеШтрихКодНаСервере(ДанныеШтрихкода, СоответствиеШтрихкодов, КэшированныеЗначения);
+ ШтрихкодОбработан = ОбработатьНеНайденныйВДеревеШтрихкодНаСервере(ДанныеШтрихкода, СоответствиеШтрихкодов, КэшированныеЗначения);
КонецЕсли;
@@ -12931,7 +12957,7 @@
КонецПроцедуры
&НаСервере
-Функция ОбработатьНеНайденныйВДеревеШтрихКодНаСервере(ДанныеШтрихкода, СоответствиеШтрихкодов, КэшированныеЗначения)
+Функция ОбработатьНеНайденныйВДеревеШтрихкодНаСервере(ДанныеШтрихкода, СоответствиеШтрихкодов, КэшированныеЗначения)
Если ДанныеШтрихкода.ВидУпаковки = ПредопределенноеЗначение("Перечисление.ВидыУпаковокИС.ПустаяСсылка")
Или ДанныеШтрихкода.ВидУпаковки = ПредопределенноеЗначение("Перечисление.ВидыУпаковокИС.Потребительская") Тогда
@@ -13351,7 +13377,7 @@
КонецЕсли;
РодительПеремещаемойСтроки = ПеремещаемаяСтрока.ПолучитьРодителя();
- МассивСтрокИзмененыхУпаковок = Новый Массив;
+ МассивСтрокИзмененныхУпаковок = Новый Массив;
Если ШтрихкодУпаковкиНазначения <> Неопределено Тогда
@@ -13376,7 +13402,7 @@
КонецЕсли;
ПересчитатьИтогиПоПроверкеСодержимогоУпаковки(СтрокаНазначения, Истина, ЗагрузкаДанныхТСД);
- МассивСтрокИзмененыхУпаковок.Добавить(СтрокаНазначения.ПолучитьИдентификатор());
+ МассивСтрокИзмененныхУпаковок.Добавить(СтрокаНазначения.ПолучитьИдентификатор());
Иначе
@@ -13391,11 +13417,11 @@
Если РодительПеремещаемойСтроки <> Неопределено Тогда
ПересчитатьИтогиПоПроверкеСодержимогоУпаковки(РодительПеремещаемойСтроки, Истина, ЗагрузкаДанныхТСД);
- МассивСтрокИзмененыхУпаковок.Добавить(РодительПеремещаемойСтроки.ПолучитьИдентификатор());
+ МассивСтрокИзмененныхУпаковок.Добавить(РодительПеремещаемойСтроки.ПолучитьИдентификатор());
КонецЕсли;
- Если МассивСтрокИзмененыхУпаковок.Количество() > 0 Тогда
- ПриИзмененииМаркировкиСоставаУпаковкиМассиваСтрок(МассивСтрокИзмененыхУпаковок, Истина, КэшированныеЗначения);
+ Если МассивСтрокИзмененныхУпаковок.Количество() > 0 Тогда
+ ПриИзмененииМаркировкиСоставаУпаковкиМассиваСтрок(МассивСтрокИзмененныхУпаковок, Истина, КэшированныеЗначения);
КонецЕсли;
Элементы.ДеревоМаркированнойПродукции.ТекущаяСтрока = ИдентификаторПеремещеннойСтроки;
@@ -14016,7 +14042,7 @@
ДетализацияСтруктурыХранения = НовыйРежимДетализации;
Если ТребуетсяПересчет Тогда
- УстановитьПризнакРасчитыватьХешСуммуУпаковокПриСменеДетализации();
+ УстановитьПризнакРассчитыватьХешСуммуУпаковкиПриСменеДетализации();
СоответствиеШтрихкодовСтрокДерева = Новый Соответствие;
ДополнитьСоответствиеШтрихкодовСтрокДереваДляКоллекции(
ДеревоМаркированнойПродукции.ПолучитьЭлементы(), СоответствиеШтрихкодовСтрокДерева);
@@ -16023,7 +16049,7 @@
КонецПроцедуры
&НаКлиенте
-Процедура УстановитьПризнакРасчитыватьХешСуммуУпаковокПриСменеДетализации()
+Процедура УстановитьПризнакРассчитыватьХешСуммуУпаковкиПриСменеДетализации()
Если РежимПросмотра Тогда
Возврат;
@@ -16032,9 +16058,9 @@
Если ДетализацияСтруктурыХранения = ПредопределенноеЗначение("Перечисление.ДетализацияСтруктурыХраненияИС.КоробаСГрупповымиУпаковками")
Или ДетализацияСтруктурыХранения = ПредопределенноеЗначение("Перечисление.ДетализацияСтруктурыХраненияИС.ПалетыСМонотоварнымиКоробами")
Или ДетализацияСтруктурыХранения = ПредопределенноеЗначение("Перечисление.ДетализацияСтруктурыХраненияИС.ГрупповыеУпаковки") Тогда
- РасчитыватьХешСуммуУпаковок = Ложь;
+ РассчитыватьХешСуммуУпаковки = Ложь;
Иначе
- РасчитыватьХешСуммуУпаковок = Истина;
+ РассчитыватьХешСуммуУпаковки = Истина;
КонецЕсли;
КонецПроцедуры
@@ -18275,9 +18301,9 @@
ОчиститьСообщения();
- ДействияПередЗаверешениемПроверки = ТребуетсяВопросПередЗавершениемПроверки(ПропуститьПроверкуКоличества);
+ ДействияПередЗавершениемПроверки = ТребуетсяВопросПередЗавершениемПроверки(ПропуститьПроверкуКоличества);
- Если ДействияПередЗаверешениемПроверки.ТребуетсяУказаниеКоличества Тогда
+ Если ДействияПередЗавершениемПроверки.ТребуетсяУказаниеКоличества Тогда
ОписаниеОповещенияПослеОтвета = Новый ОписаниеОповещения("ПослеВопросаТребуетсяУказаниеКоличества", ЭтотОбъект);
@@ -18297,18 +18323,18 @@
Возврат;
КонецЕсли;
- Если ДействияПередЗаверешениемПроверки.ТребуетсяЗаполнениеКодов Тогда
+ Если ДействияПередЗавершениемПроверки.ТребуетсяЗаполнениеКодов Тогда
ТекстПредупреждения = НСтр("ru = 'Есть упаковки, по которым не указано количество.
| Требуется отметить их как отсутствующие или дозаполнить.'");
ПоказатьПредупреждение(, ТекстПредупреждения);
Возврат;
КонецЕсли;
- Если ДействияПередЗаверешениемПроверки.ОтказПриНаличииНедопустимыхКодовМаркировки Тогда
+ Если ДействияПередЗавершениемПроверки.ОтказПриНаличииНедопустимыхКодовМаркировки Тогда
ТекстПредупреждения = НСтр("ru = 'В структуре упаковок есть недопустимые коды маркировки, проверка не может быть завершена.'");
ПоказатьПредупреждение(, ТекстПредупреждения);
Возврат;
- ИначеЕсли Не ДействияПередЗаверешениемПроверки.ТребуетсяВопросПоНепровереннымОтложенным Тогда
+ ИначеЕсли Не ДействияПередЗавершениемПроверки.ТребуетсяВопросПоНепровереннымОтложенным Тогда
ПересчитатьХешСуммыВсехУпаковокКлиент();
@@ -18318,9 +18344,9 @@
Возврат;
Иначе
Если ТребуетсяОбновлениеКлючаСессии
- И ДействияПередЗаверешениемПроверки.СоздаватьАктОРасхождениях Тогда
+ И ДействияПередЗавершениемПроверки.СоздаватьАктОРасхождениях Тогда
ДополнительныеПараметры = Новый Структура;
- ДополнительныеПараметры.Вставить("СоздаватьАктОРасхожденияхПриЗакрытии", ДействияПередЗаверешениемПроверки.СоздаватьАктОРасхождениях);
+ ДополнительныеПараметры.Вставить("СоздаватьАктОРасхожденияхПриЗакрытии", ДействияПередЗавершениемПроверки.СоздаватьАктОРасхождениях);
ДополнительныеПараметры.Вставить("ПовторныйЗапрос", Ложь);
ОповещениеПриЗапросеКлючаСессии = Новый ОписаниеОповещения("ЗапроситьКлючСессииЗавершение", ЭтотОбъект, ДополнительныеПараметры);
@@ -18329,7 +18355,7 @@
ПараметрыСканирования, ДопустимыеВидыПродукции, ОповещениеПриЗапросеКлючаСессии);
Иначе
- ЗавершитьПроверку(ДействияПередЗаверешениемПроверки.СоздаватьАктОРасхождениях);
+ ЗавершитьПроверку(ДействияПередЗавершениемПроверки.СоздаватьАктОРасхождениях);
КонецЕсли;
КонецЕсли;
@@ -18420,7 +18446,7 @@
КонецЦикла;
- ОбработататьТаблицуПеремаркировкиСУчетомДетализации(ТаблицаПеремаркировки, ШтрихкодИДанныеУпаковки);
+ ОбработатьТаблицуПеремаркировкиСУчетомДетализации(ТаблицаПеремаркировки, ШтрихкодИДанныеУпаковки);
ПроверитьНеобходимостьПеремаркировки(ТаблицаПеремаркировки, Ложь);
КонецПроцедуры
@@ -18431,7 +18457,7 @@
&НаКлиенте
Процедура ПересчитатьХешСуммыВсехУпаковокКлиент()
- Если НЕ РасчитыватьХешСуммуУпаковок Тогда
+ Если НЕ РассчитыватьХешСуммуУпаковки Тогда
Возврат;
КонецЕсли;
@@ -19411,9 +19437,9 @@
&НаКлиентеНаСервереБезКонтекста
Функция ДопустимоДобавлениеКодовМаркировкиОСУ(Форма)
-
+
Возврат Истина;
-
+
КонецФункции
&НаКлиентеНаСервереБезКонтекста
@@ -20608,7 +20634,8 @@
Если Форма.ДопустимаПроизвольнаяЕдиницаУчета Тогда
КоличествоПотребительскихУпаковокВСтруктуреУпаковок = Мин(СтрокаАгрегатор.КоличествоПотребительскихУпаковокВСтруктуреУпаковок, КоличествоКодовМаркировки);
-
+ КоличествоИС = Мин(СтрокаАгрегатор.КоличествоИС, СтрокаИзмененийПосле.Количество - СтрокаИзмененийДо.Количество);
+ СтрокаАгрегатор.КоличествоИС = СтрокаАгрегатор.КоличествоИС - КоличествоИС;
СтрокаАгрегатор.КоличествоПотребительскихУпаковокВСтруктуреУпаковок = СтрокаАгрегатор.КоличествоПотребительскихУпаковокВСтруктуреУпаковок - КоличествоПотребительскихУпаковокВСтруктуреУпаковок;
КонецЕсли;
diff --git a/src/DataProcessors/ПроверкаИПодборПродукцииИС/Forms/ФормаВводаКодаМаркировки/Ext/Form/Module.bsl b/src/DataProcessors/ПроверкаИПодборПродукцииИС/Forms/ФормаВводаКодаМаркировки/Ext/Form/Module.bsl
index 1a27b7fd8..b809741a0 100644
--- a/src/DataProcessors/ПроверкаИПодборПродукцииИС/Forms/ФормаВводаКодаМаркировки/Ext/Form/Module.bsl
+++ b/src/DataProcessors/ПроверкаИПодборПродукцииИС/Forms/ФормаВводаКодаМаркировки/Ext/Form/Module.bsl
@@ -11,7 +11,7 @@
Если ЗначениеЗаполнено(Параметры.ТекстОшибкиКонтроляКодовМаркировки) Тогда
Заголовок = НСтр("ru = 'Контроль кодов маркировок'");
Элементы.Страницы.ТекущаяСтраница = Элементы.СтраницаКонтрольКодовМаркировки;
-
+
Элементы.ТекстОшибкиКонтроляКодовМаркировки.Заголовок = Параметры.ТекстОшибкиКонтроляКодовМаркировки;
Иначе
Заголовок = НСтр("ru = 'Сканирование кода маркировки'");
@@ -128,7 +128,7 @@
ДанныеКэша = ПолучитьИзВременногоХранилища(ПараметрыСканирования.КэшМаркируемойПродукции);
КэшМаркируемойПродукции = ПоместитьВоВременноеХранилище(ДанныеКэша, УникальныйИдентификатор);
КонецЕсли;
-
+
ПоддерживаемыеТипыПодключаемогоОборудования = "СканерШтрихкода";
ОбщегоНазначенияИС.НастроитьПодключаемоеОборудование(ЭтотОбъект, ПоддерживаемыеТипыПодключаемогоОборудования);
ОбщегоНазначенияСобытияФормИСПереопределяемый.ПриСозданииНаСервере(ЭтотОбъект, Отказ, СтандартнаяОбработка);
diff --git a/src/DataProcessors/ПроверкаКодовМаркировкиИСМП/Forms/ФормаПроверки/Ext/Form/Module.bsl b/src/DataProcessors/ПроверкаКодовМаркировкиИСМП/Forms/ФормаПроверки/Ext/Form/Module.bsl
index 62c795a1a..b877076e9 100644
--- a/src/DataProcessors/ПроверкаКодовМаркировкиИСМП/Forms/ФормаПроверки/Ext/Form/Module.bsl
+++ b/src/DataProcessors/ПроверкаКодовМаркировкиИСМП/Forms/ФормаПроверки/Ext/Form/Module.bsl
@@ -218,7 +218,7 @@
Штрихкод = ЭлементыДерева[0].Штрихкод;
КонецЕсли;
КонецЕсли;
- ОбщегоНазначенияИСКлиент.СкопироватьШтрихКодВБуферОбмена(Элементы.БуферОбмена, Штрихкод);
+ ОбщегоНазначенияИСКлиент.СкопироватьШтрихкодВБуферОбмена(Элементы.БуферОбмена, Штрихкод);
КонецПроцедуры
@@ -1261,8 +1261,7 @@
ПользовательскиеПараметрыРазбораКодаМаркировки = РазборКодаМаркировкиИССлужебныйКлиентСервер.ПользовательскиеПараметрыРазбораКодаМаркировки();
ПользовательскиеПараметрыРазбораКодаМаркировки.РасширеннаяДетализация = ДанныеДляТСД.ПараметрыСканирования.СохранятьКодыМаркировкиВПулИСМП;
- ОбщиеНастройкиРазбора = РазборКодаМаркировкиИССлужебный.НастройкиРазбораКодаМаркировки(
- ДанныеДляТСД.ПараметрыСканирования.ДопустимыеВидыПродукции, Ложь);
+ ОбщиеНастройкиРазбора = РазборКодаМаркировкиИССлужебныйПовтИсп.НастройкиРазбораКодаМаркировки(, Ложь);
НастройкиРазбораКодаМаркировки = Новый Структура;
НастройкиРазбораКодаМаркировки.Вставить("Кеш", РазборКодаМаркировкиИССлужебныйКлиентСервер.ИнициализироватьНастройкиИспользующиеРезультатыПредыдущихРазборов());
@@ -1940,7 +1939,7 @@
ДанныеДляУточнения.ОКПД2 = СтрокаДанных.КодОКПД2;
ДанныеДляУточнения.ГруппаОКПД2 = СтрокаДанных.ГруппаОКПД2;
- СтрокаДанных.ВидПродукцииГИСМТПоТНВЭДОКПД2 = ИнтерфейсИСМПОбщегоНазначенияКлиентСервер.ТоварнаяГруппа(
+ СтрокаДанных.ВидПродукцииГИСМТПоТНВЭДОКПД2 = ОбщегоНазначенияИСМПКлиентСерверПовтИсп.ТоварнаяГруппа(
СтрокаДанных.ИмяТоварнойГруппы, ДанныеДляУточнения);
ПараметрыОбработки.СтрокиДляОпределенияКлюча.Добавить(СтрокаДанных);
diff --git a/src/DataProcessors/ПроверкаКодовМаркировкиИСМП/Forms/ФормаПросмотраРазрешительныхДокументов/Ext/Form/Module.bsl b/src/DataProcessors/ПроверкаКодовМаркировкиИСМП/Forms/ФормаПросмотраРазрешительныхДокументов/Ext/Form/Module.bsl
index 9daf79c62..a0acb2299 100644
--- a/src/DataProcessors/ПроверкаКодовМаркировкиИСМП/Forms/ФормаПросмотраРазрешительныхДокументов/Ext/Form/Module.bsl
+++ b/src/DataProcessors/ПроверкаКодовМаркировкиИСМП/Forms/ФормаПросмотраРазрешительныхДокументов/Ext/Form/Module.bsl
@@ -31,7 +31,7 @@
Иначе
Элементы.ГруппаОписаниеОбщегоСтатуса.Видимость = Ложь;
КонецЕсли;
-
+
КонецПроцедуры
#КонецОбласти
\ No newline at end of file
diff --git a/src/DataProcessors/РаботаСАкцизнымиМаркамиЕГАИС/Forms/ФормаВводаАкцизнойМарки/Ext/Form/Module.bsl b/src/DataProcessors/РаботаСАкцизнымиМаркамиЕГАИС/Forms/ФормаВводаАкцизнойМарки/Ext/Form/Module.bsl
index 003547bd1..2dedb27c2 100644
--- a/src/DataProcessors/РаботаСАкцизнымиМаркамиЕГАИС/Forms/ФормаВводаАкцизнойМарки/Ext/Form/Module.bsl
+++ b/src/DataProcessors/РаботаСАкцизнымиМаркамиЕГАИС/Forms/ФормаВводаАкцизнойМарки/Ext/Form/Module.bsl
@@ -26,7 +26,7 @@
ДанныеКэша = ПолучитьИзВременногоХранилища(ПараметрыСканирования.КэшМаркируемойПродукции);
КэшМаркируемойПродукции = ПоместитьВоВременноеХранилище(ДанныеКэша, УникальныйИдентификатор);
КонецЕсли;
-
+
ОбщегоНазначенияСобытияФормИСПереопределяемый.ПриСозданииНаСервере(ЭтотОбъект, Отказ, СтандартнаяОбработка);
КонецПроцедуры
@@ -236,7 +236,7 @@
ОповещениеПриЗавершении = Новый ОписаниеОповещения("РучнойВводШтрихкодаЗавершение", ЭтотОбъект);
ШтрихкодированиеИСКлиент.Подключаемый_ОткрытьФормуУточненияДанных(ЭтотОбъект, ОповещениеПриЗавершении);
-
+
КонецПроцедуры
#КонецОбласти
\ No newline at end of file
diff --git a/src/DataProcessors/РаботаСАкцизнымиМаркамиЕГАИС/Forms/ФормаВводаАкцизнойМаркиПоискНоменклатуры/Ext/Form/Module.bsl b/src/DataProcessors/РаботаСАкцизнымиМаркамиЕГАИС/Forms/ФормаВводаАкцизнойМаркиПоискНоменклатуры/Ext/Form/Module.bsl
index 7804f8113..6ccd130f1 100644
--- a/src/DataProcessors/РаботаСАкцизнымиМаркамиЕГАИС/Forms/ФормаВводаАкцизнойМаркиПоискНоменклатуры/Ext/Form/Module.bsl
+++ b/src/DataProcessors/РаботаСАкцизнымиМаркамиЕГАИС/Forms/ФормаВводаАкцизнойМаркиПоискНоменклатуры/Ext/Form/Module.bsl
@@ -32,7 +32,7 @@
СтандартныеПодсистемыСервер.СброситьРазмерыИПоложениеОкна(ЭтотОбъект);
ПоказатьИнформациюОТребуемыхДействиях();
-
+
ОбщегоНазначенияСобытияФормИСПереопределяемый.ПриСозданииНаСервере(ЭтотОбъект, Отказ, СтандартнаяОбработка);
СобытияФормИСКлиентСерверПереопределяемый.УстановитьПараметрыВыбораНоменклатуры(ЭтотОбъект, КонструкторИСОбщегоНазначенияКлиентСервер.ВидыПродукцииЕГАИСМаркируемые(), "Номенклатура");
@@ -154,7 +154,7 @@
ИначеЕсли НавигационнаяСсылкаФорматированнойСтроки = "СкопироватьШтриховойКодВБуферОбмена" Тогда
- ОбщегоНазначенияИСКлиент.СкопироватьШтрихКодВБуферОбмена(Элементы.БуферОбмена, Штрихкод);
+ ОбщегоНазначенияИСКлиент.СкопироватьШтрихкодВБуферОбмена(Элементы.БуферОбмена, Штрихкод);
КонецЕсли;
@@ -201,7 +201,7 @@
Если НавигационнаяСсылкаФорматированнойСтроки = "СкопироватьШтриховойКодВБуферОбмена" Тогда
- ОбщегоНазначенияИСКлиент.СкопироватьШтрихКодВБуферОбмена(Элементы.БуферОбмена, Штрихкод);
+ ОбщегоНазначенияИСКлиент.СкопироватьШтрихкодВБуферОбмена(Элементы.БуферОбмена, Штрихкод);
КонецЕсли;
@@ -329,7 +329,7 @@
КонецЕсли;
КонецЕсли;
-
+
КонецПроцедуры
&НаКлиенте
@@ -527,7 +527,7 @@
Элементы.Закрыть.Заголовок = НСтр("ru = 'Закрыть'");
Элементы.Закрыть.КнопкаПоУмолчанию = Истина;
Элементы.ГруппаПодвал.РастягиватьПоГоризонтали = Истина;
-
+
ТекстОшибки = НСтр("ru = 'Сопоставление с номенклатурой не однозначное, при этом данные сопоставления не соответствуют документу основанию'");
Префикс = СтрШаблон(
@@ -543,7 +543,7 @@
"СкопироватьШтриховойКодВБуферОбмена"), " ",
СтрШаблон(НСтр("ru = 'по причине:
|%1'"), ТекстОшибки));
-
+
КонецПроцедуры
&НаСервере
@@ -688,7 +688,7 @@
КонецЕсли;
ПоясняющийТекст = Новый ФорматированнаяСтрока(МассивСтрок);
-
+
КонецПроцедуры
#КонецОбласти
@@ -828,7 +828,7 @@
Элементы.Закрыть.Заголовок = НСтр("ru = 'Закрыть'");
Элементы.Закрыть.КнопкаПоУмолчанию = Истина;
Элементы.ГруппаПодвал.РастягиватьПоГоризонтали = Истина;
-
+
ТекстОшибки = НСтр("ru = 'Отсканирована неизвестная акцизная марка, при этом в документе-распоряжении нет маркируемой алкогольной продукции.'");
Префикс = НСтр("ru = 'Невозможно добавить алкогольную продукцию с кодом акцизной марки'");
@@ -919,7 +919,7 @@
Элементы.Закрыть.Заголовок = НСтр("ru = 'Закрыть'");
Элементы.Закрыть.КнопкаПоУмолчанию = Истина;
Элементы.ГруппаПодвал.РастягиватьПоГоризонтали = Истина;
-
+
ТекстОшибки = СтрШаблон(
НСтр("ru = 'Отсканирован штрихкод партионной алкогольной продукции %, при этом в документе-распоряжении
|нет такой алкогольной продукции.'"), ТипШтрихкода);
@@ -1038,7 +1038,7 @@
#КонецОбласти
-#Область ОбработкаШтрихКода
+#Область ОбработкаШтрихкода
&НаКлиенте
Процедура РучнойВводШтрихкодаЗавершение(ДанныеШтрихкода, ДополнительныеПараметры) Экспорт
@@ -1857,7 +1857,7 @@
ОповещениеПриЗавершении = Новый ОписаниеОповещения("РучнойВводШтрихкодаЗавершение", ЭтотОбъект);
ШтрихкодированиеИСКлиент.Подключаемый_ОткрытьФормуУточненияДанных(ЭтотОбъект, ОповещениеПриЗавершении);
-
+
КонецПроцедуры
#КонецОбласти
diff --git a/src/DataProcessors/РаботаСОблачнымиКлассификаторами/Forms/КлассификаторЕдиницИзмерения/Ext/Form.xml b/src/DataProcessors/РаботаСОблачнымиКлассификаторами/Forms/КлассификаторЕдиницИзмерения/Ext/Form.xml
index f21952bcc..08ca61754 100644
--- a/src/DataProcessors/РаботаСОблачнымиКлассификаторами/Forms/КлассификаторЕдиницИзмерения/Ext/Form.xml
+++ b/src/DataProcessors/РаботаСОблачнымиКлассификаторами/Forms/КлассификаторЕдиницИзмерения/Ext/Form.xml
@@ -63,7 +63,6 @@
- false
- ДеревоКлассификатора
SearchStringRepresentation
@@ -72,7 +71,6 @@
- false
- ДеревоКлассификатора
ViewStatusRepresentation
@@ -82,7 +80,6 @@
- false
- ДеревоКлассификатора
SearchControl
diff --git a/src/DataProcessors/РезультатыПроверкиПодписи/Forms/ПроверкаПолномочийДоверенностей/Ext/Form.xml b/src/DataProcessors/РезультатыПроверкиПодписи/Forms/ПроверкаПолномочийДоверенностей/Ext/Form.xml
index ab9b4a8c2..4d0017af1 100644
--- a/src/DataProcessors/РезультатыПроверкиПодписи/Forms/ПроверкаПолномочийДоверенностей/Ext/Form.xml
+++ b/src/DataProcessors/РезультатыПроверкиПодписи/Forms/ПроверкаПолномочийДоверенностей/Ext/Form.xml
@@ -153,8 +153,8 @@
ru
- Полномочия прове-
-рены мной вручную
+ Полномочия проверены
+мной вручную
Auto
diff --git a/src/DataProcessors/РезультатыПроверкиПодписи/Forms/РезультатыПроверкиПодписи/Ext/Form/Module.bsl b/src/DataProcessors/РезультатыПроверкиПодписи/Forms/РезультатыПроверкиПодписи/Ext/Form/Module.bsl
index a6ad42461..c0ae3d5a1 100644
--- a/src/DataProcessors/РезультатыПроверкиПодписи/Forms/РезультатыПроверкиПодписи/Ext/Form/Module.bsl
+++ b/src/DataProcessors/РезультатыПроверкиПодписи/Forms/РезультатыПроверкиПодписи/Ext/Form/Module.bsl
@@ -117,7 +117,7 @@
ПараметрыОшибкиКриптографии.Вставить("ДанныеПодписи", СвойстваПодписи.Подпись);
ПараметрыОшибкиКриптографии.Вставить("ДанныеСертификата", СвойстваПодписи.ДанныеСертификата);
ПараметрыОшибкиКриптографии.Вставить("Сертификат", СвойстваПодписи.СертификатСсылка);
- КриптографияБЭДСлужебныйКлиент.ОткрытьФормуРасширенногоПредставленияОшибки(Неопределено, ПараметрыОшибкиКриптографии);
+ КриптографияБЭДКлиент.ОткрытьФормуРасширенногоПредставленияОшибки(Неопределено, ПараметрыОшибкиКриптографии);
КонецПроцедуры
&НаКлиенте
@@ -135,7 +135,7 @@
СвойстваПодписиДоверенности = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(СвойстваДоверенности,
"СвойстваПодписиДоверенности", СвойстваПодписиДоверенности);
ЗаполнитьЗначенияСвойств(ПараметрыОшибкиКриптографии, СвойстваПодписиДоверенности);
- КриптографияБЭДСлужебныйКлиент.ОткрытьФормуРасширенногоПредставленияОшибки(Неопределено, ПараметрыОшибкиКриптографии);
+ КриптографияБЭДКлиент.ОткрытьФормуРасширенногоПредставленияОшибки(Неопределено, ПараметрыОшибкиКриптографии);
КонецПроцедуры
#КонецОбласти
diff --git a/src/DataProcessors/РезультатыСверкиКодовМаркировкиТОРГ2/Ext/ManagerModule.bsl b/src/DataProcessors/РезультатыСверкиКодовМаркировкиТОРГ2/Ext/ManagerModule.bsl
index a7c6cd548..9d01def66 100644
--- a/src/DataProcessors/РезультатыСверкиКодовМаркировкиТОРГ2/Ext/ManagerModule.bsl
+++ b/src/DataProcessors/РезультатыСверкиКодовМаркировкиТОРГ2/Ext/ManagerModule.bsl
@@ -1330,7 +1330,7 @@
ТаблицаШтрихкодовВерхнегоУровня = ПроверкаИПодборПродукцииИС.ПустаяТаблицаШтрихкодовВерхнегоУровня();
- ПараметрыСозданияШтрихкодов = Справочники.ШтрихкодыУпаковокТоваров.ПараметрыСозданияШтриходовУпаковокПоДеревуМаркируемойПродукции(
+ ПараметрыСозданияШтрихкодов = Справочники.ШтрихкодыУпаковокТоваров.ПараметрыСозданияШтрихкодовУпаковокПоДеревуМаркируемойПродукции(
ДеревоМаркированнойПродукции, Параметры.ПараметрыСканирования);
ПараметрыОкончанияПроверки.ТаблицаШтрихкодовВерхнегоУровня = ТаблицаШтрихкодовВерхнегоУровня;
diff --git a/src/DataProcessors/РезультатыСверкиКодовМаркировкиТОРГ2/Forms/РезультатыСверки/Ext/Form/Module.bsl b/src/DataProcessors/РезультатыСверкиКодовМаркировкиТОРГ2/Forms/РезультатыСверки/Ext/Form/Module.bsl
index 177f307ea..d4c90b7c4 100644
--- a/src/DataProcessors/РезультатыСверкиКодовМаркировкиТОРГ2/Forms/РезультатыСверки/Ext/Form/Module.bsl
+++ b/src/DataProcessors/РезультатыСверкиКодовМаркировкиТОРГ2/Forms/РезультатыСверки/Ext/Form/Module.bsl
@@ -1284,7 +1284,7 @@
КонецЦикла;
КонецЕсли;
-Конецпроцедуры
+КонецПроцедуры
&НаСервере
Процедура ВывестиРезультатыПроверкиЭДО()
diff --git a/src/DataProcessors/СервисShare/Forms/ЗагрузитьДокументПоСсылке/Ext/Form/Module.bsl b/src/DataProcessors/СервисShare/Forms/ЗагрузитьДокументПоСсылке/Ext/Form/Module.bsl
index 75aeb5d05..0485e6b56 100644
--- a/src/DataProcessors/СервисShare/Forms/ЗагрузитьДокументПоСсылке/Ext/Form/Module.bsl
+++ b/src/DataProcessors/СервисShare/Forms/ЗагрузитьДокументПоСсылке/Ext/Form/Module.bsl
@@ -5,7 +5,7 @@
СсылкаНаИнструкциюСервиса = ИнтеграцияShare.СсылкаНаИнструкциюСервиса();
- // Сбрасываем сохраннение окна, т.к. после просмотра документа окно всегда слишком широкое.
+ // Сбрасываем сохранение окна, т.к. после просмотра документа окно всегда слишком широкое.
КлючСохраненияПоложенияОкна = Новый УникальныйИдентификатор;
ИспользоватьФормуЗагрузкиДокументаПоУмолчанию = Истина;
@@ -431,9 +431,12 @@
СтандартнаяОбработка = Истина;
ИнтеграцияShareКлиентПереопределяемый.ПриЗагрузкеДокументаПоСсылке(ДанныеДокумента, СтандартнаяОбработка);
-
+
Если СтандартнаяОбработка = Ложь Тогда
- Закрыть();
+ Если Открыта() Тогда
+ Закрыть();
+ КонецЕсли;
+
Возврат;
КонецЕсли;
@@ -533,7 +536,7 @@
КонецФункции
-// Конструктуор сведений о PDF документе.
+// Конструктор сведений о PDF документе.
//
// Возвращаемое значение:
// Структура - Структура с ключами:
@@ -804,7 +807,6 @@
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(ЭлементыФормы,
ИмяЭлементаСтраницыСообщенийДляВнимания, "Видимость", ВидимостьСтраницаСообщенийДляВнимания);
- УстановитьВидимостьСтраницыСообщенийДляВнимания(ЭлементыФормы);
УстановитьВидимостьСтраницыПодвалаПоиска(ЭлементыФормы, Ложь);
КонецПроцедуры
@@ -830,13 +832,6 @@
КонецПроцедуры
-&НаКлиентеНаСервереБезКонтекста
-Процедура УстановитьВидимостьСтраницыСообщенийДляВнимания(ЭлементыФормы)
-
- УстановитьВидимостьСтраницы(ЭлементыФормы, ЭлементыФормы.СтраницыСообщенийДляВнимания);
-
-КонецПроцедуры
-
&НаКлиентеНаСервереБезКонтекста
Процедура УстановитьВидимостьСтраницы(ЭлементыФормы, ЭлементыФормыСтраницы)
@@ -962,8 +957,6 @@
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(ЭлементыФормы,
ЭлементыФормы.СтраницыПредставленияФайла.Имя, "ТекущаяСтраница", ТекущаяСтраницаПредставления);
- УстановитьВидимостьСтраницы(ЭлементыФормы, ЭлементыФормы.СтраницыПредставленияФайла);
-
КонецПроцедуры
#КонецОбласти
@@ -1027,7 +1020,7 @@
Иначе
СписокФайлов.Сортировать("ОсновнойФайл Убыв, ПредставлениеФайла Возр");
Элементы.ГруппаКолонокСкачать.Видимость = Ложь;
- Элементы.СписокФайлов.ТекущаяСтрока = 0;
+ Элементы.СписокФайлов.ТекущаяСтрока = СписокФайлов[0].ПолучитьИдентификатор();
КонецЕсли;
КонецПроцедуры
diff --git a/src/DataProcessors/СервисShare/Forms/ПоделитьсяДокументом/Ext/Form.xml b/src/DataProcessors/СервисShare/Forms/ПоделитьсяДокументом/Ext/Form.xml
index 2b39935b1..c4afd88c0 100644
--- a/src/DataProcessors/СервисShare/Forms/ПоделитьсяДокументом/Ext/Form.xml
+++ b/src/DataProcessors/СервисShare/Forms/ПоделитьсяДокументом/Ext/Form.xml
@@ -174,6 +174,12 @@
Картинка почта
+
+
+ ru
+ Отправить ссылку по электронной почте
+
+
Center
true
@@ -186,6 +192,31 @@
КартинкаПочтаНажатие
+
+
+
+ ru
+ Картинка мах
+
+
+
+
+ ru
+ Отправить ссылку в Мах
+
+
+ Center
+ true
+
+ CommonPicture.МахShare
+ false
+
+
+
+
+ КартинкаМахНажатие
+
+
@@ -193,6 +224,12 @@
Картинка whats app
+
+
+ ru
+ Отправить ссылку в WhatsApp
+
+
Center
true
@@ -212,6 +249,12 @@
Картинка телеграмм
+
+
+ ru
+ Отправить ссылку в Телеграм
+
+
Center
true
@@ -251,7 +294,6 @@
Этот документ не юридически значимый. Что это значит?
- 50
true
AlwaysHorizontal
Collapsible
@@ -267,7 +309,8 @@
- Используется для предварительного согласования данных.
- Не подписывается квалифицированной электронной подписью. <link https://v8.1c.ru/metod/article/chto-takoe-kep-i-zachem-ona-nuzhna.htm>Что это?</>
- Не отправляется через оператора ЭДО. <link https://v8.1c.ru/metod/article/operator-edo-ponyatie-i-funktsii.htm>Зачем это?</>
-- Содержимое электронного документа может не соответствовать формату утвержденному ФНС.
+- Содержимое электронного документа может не соответствовать формату
+утвержденному ФНС.
diff --git a/src/DataProcessors/СервисShare/Forms/ПоделитьсяДокументом/Ext/Form/Module.bsl b/src/DataProcessors/СервисShare/Forms/ПоделитьсяДокументом/Ext/Form/Module.bsl
index 77285c72d..b2e934b8c 100644
--- a/src/DataProcessors/СервисShare/Forms/ПоделитьсяДокументом/Ext/Form/Module.bsl
+++ b/src/DataProcessors/СервисShare/Forms/ПоделитьсяДокументом/Ext/Form/Module.bsl
@@ -42,7 +42,7 @@
КонецЕсли;
ЗаполнитьПодвалРекомендацийЭДО(ОписаниеДокумента);
-
+
КонецПроцедуры
#КонецОбласти
@@ -54,7 +54,7 @@
СтандартнаяОбработка = Ложь;
- ПерейтиПоНавигационнойСсылке(СсылкаДляСкачиванияДокумента);
+ ФайловаяСистемаКлиент.ОткрытьНавигационнуюСсылку(СсылкаДляСкачиванияДокумента);
КонецПроцедуры
@@ -67,7 +67,9 @@
&НаКлиенте
Процедура КартинкаТелеграммНажатие(Элемент)
- ПерейтиПоНавигационнойСсылке(СтрокаЗапросаВТелеграм());
+
+ ФайловаяСистемаКлиент.ОткрытьНавигационнуюСсылку(СтрокаЗапросаВТелеграм());
+
КонецПроцедуры
&НаКлиенте
@@ -88,6 +90,13 @@
РаботаСПочтовымиСообщениямиКлиент.СоздатьНовоеПисьмо(ПараметрыОтправкиЭлектронногоПисьма());
КонецПроцедуры
+&НаКлиенте
+Процедура КартинкаМахНажатие(Элемент)
+
+ ФайловаяСистемаКлиент.ОткрытьНавигационнуюСсылку(СтрокаЗапросаВМах());
+
+КонецПроцедуры
+
&НаКлиенте
Процедура ДекорацияНадписьРекомендацииОбработкаНавигационнойСсылки(Элемент, НавигационнаяСсылка, СтандартнаяОбработка)
ОбработатьНавигационныеСсылки(Элемент, НавигационнаяСсылка, СтандартнаяОбработка);
@@ -128,6 +137,23 @@
#Область СлужебныеПроцедурыИФункции
+&НаКлиенте
+Функция СтрокаЗапросаВМах()
+
+ Возврат СтрШаблон("https://max.ru/:share?text=%1",
+ ПолныйТекстСообщенияВКодировке(СсылкаДляСкачиванияДокумента, ПредставлениеДокумента));
+
+КонецФункции
+
+&НаСервереБезКонтекста
+Функция ПолныйТекстСообщенияВКодировке(Знач СсылкаДляСкачиванияДокумента, Знач ПредставлениеДокумента)
+
+ ТекстДляКодировки = СсылкаДляСкачиванияДокумента + Символы.ПС + ПредставлениеДокумента;
+
+ Возврат КодироватьСтроку(ТекстДляКодировки, СпособКодированияСтроки.КодировкаURL);
+
+КонецФункции
+
&НаКлиенте
Функция СтрокаЗапросаВТелеграм()
@@ -136,7 +162,7 @@
Возврат СтрШаблон("https://t.me/share/url?url= %1&text= %2",
СсылкаДляСкачиванияДокумента,
ТекстСообщения);
-
+
КонецФункции
&НаКлиенте
@@ -243,8 +269,8 @@
Возврат;
КонецЕсли;
- ПерейтиПоНавигационнойСсылке(СтрокаЗапросаВWhatsapp(КонтактПолучателя));
-
+ ФайловаяСистемаКлиент.ОткрытьНавигационнуюСсылку(СтрокаЗапросаВWhatsapp(КонтактПолучателя));
+
КонецПроцедуры
&НаСервере
diff --git a/src/DataProcessors/СервисДоставки/Forms/ОбщиеНастройки/Ext/Form/Module.bsl b/src/DataProcessors/СервисДоставки/Forms/ОбщиеНастройки/Ext/Form/Module.bsl
index 90d310be0..d1c206a1e 100644
--- a/src/DataProcessors/СервисДоставки/Forms/ОбщиеНастройки/Ext/Form/Module.bsl
+++ b/src/DataProcessors/СервисДоставки/Forms/ОбщиеНастройки/Ext/Form/Module.bsl
@@ -653,10 +653,8 @@
КонецЕсли;
Если ИдентификаторыФЗ.Количество() = 0 Тогда
- #Если Не ВебКлиент Тогда
- Выполнить(Кэш.АктивныеДлительныеОперации.ОпубликоватьНастройкиВСервисеИнтеграции.ПослеОбработкиПакета);
- #КонецЕсли
Кэш.АктивныеДлительныеОперации.ОпубликоватьНастройкиВСервисеИнтеграции = Неопределено;
+ Закрыть();
КонецЕсли;
КонецЕсли;
@@ -884,17 +882,13 @@
#Область ЗаписьНастроек
&НаСервере
-Функция ОпубликоватьНастройкиВСервисеИнтеграции(ЗакрытьПослеЗавершенияОперации = Ложь)
+Функция ОпубликоватьНастройкиВСервисеИнтеграции()
Если Кэш.АктивныеДлительныеОперации.ОпубликоватьНастройкиВСервисеИнтеграции <> Неопределено Тогда
Возврат Неопределено;
КонецЕсли;
ПакетОпераций = СервисДоставкиКлиентСервер.НовыйПараметрыПакетаДлительныхОпераций();
- Если ЗакрытьПослеЗавершенияОперации Тогда
- ПакетОпераций.ПослеОбработкиПакета = "Закрыть()";
- КонецЕсли;
-
ПакетПараметровДО = Новый Массив;
Для Каждого НастройкиПоОрганизации Из НастройкиСервисаИнтеграции Цикл
@@ -949,7 +943,7 @@
КонецЕсли;
Если Не Отказ И МодифицированыНастройкиСервисаИнтеграции Тогда
- ПараметрыДлительныхОпераций = ОпубликоватьНастройкиВСервисеИнтеграции(Истина);
+ ПараметрыДлительныхОпераций = ОпубликоватьНастройкиВСервисеИнтеграции();
Если ПараметрыДлительныхОпераций <> Неопределено Тогда
Для Каждого ПараметрыДО Из ПараметрыДлительныхОпераций Цикл
diff --git a/src/DataProcessors/СинхронизацияЭДО/Ext/ManagerModule.bsl b/src/DataProcessors/СинхронизацияЭДО/Ext/ManagerModule.bsl
index 8a8a473a9..009126956 100644
--- a/src/DataProcessors/СинхронизацияЭДО/Ext/ManagerModule.bsl
+++ b/src/DataProcessors/СинхронизацияЭДО/Ext/ManagerModule.bsl
@@ -105,10 +105,6 @@
Если ОбщегоНазначения.РазделениеВключено() Тогда
- Если ЭлектроннаяПодпись.ПроверятьЭлектронныеПодписиНаСервере() Тогда
- ПроверкаПодписи = 2;
- КонецЕсли;
-
Если КриптографияБЭД.ДоступнаПроверкаПодписиВОблаке() Тогда
ЕстьКриптоПровайдер = 2;
КонецЕсли;
@@ -210,8 +206,7 @@
Если Операция = Операции.ПолучениеПоТокенам Тогда
Успех = РежимРаботы
- И ЕстьКриптоПровайдер
- И ПроверкаПодписи;
+ И ЕстьКриптоПровайдер;
Иначе
diff --git a/src/DataProcessors/СопоставлениеНоменклатурыБЭД/Ext/ObjectModule.bsl b/src/DataProcessors/СопоставлениеНоменклатурыБЭД/Ext/ObjectModule.bsl
index b962d5193..6efd38bcd 100644
--- a/src/DataProcessors/СопоставлениеНоменклатурыБЭД/Ext/ObjectModule.bsl
+++ b/src/DataProcessors/СопоставлениеНоменклатурыБЭД/Ext/ObjectModule.bsl
@@ -47,6 +47,17 @@
КонецПроцедуры
+#Область ДляВызоваИзДругихПодсистем
+
+// См. СтандартныеПодсистемыСервер.ПриОпределенииМетодовРазрешенныхДляВызоваКакПроизвольныйКод
+Процедура ПриОпределенииМетодовРазрешенныхДляВызоваКакПроизвольныйКод(Методы) Экспорт
+
+ Методы.Вставить("НайтиВариантыСопоставленияНоменклатуры", Истина);
+
+КонецПроцедуры
+
+#КонецОбласти
+
#КонецОбласти
#Область СлужебныеПроцедурыИФункции
diff --git a/src/DataProcessors/СопоставлениеНоменклатурыБЭД/Forms/Форма/Ext/Form.xml b/src/DataProcessors/СопоставлениеНоменклатурыБЭД/Forms/Форма/Ext/Form.xml
index a6c0aaa55..140e61149 100644
--- a/src/DataProcessors/СопоставлениеНоменклатурыБЭД/Forms/Форма/Ext/Form.xml
+++ b/src/DataProcessors/СопоставлениеНоменклатурыБЭД/Forms/Форма/Ext/Form.xml
@@ -950,7 +950,7 @@
- ПараметрыПоискаПриИзменении
+ ОрганизацияПриИзменении
diff --git a/src/DataProcessors/СопоставлениеНоменклатурыБЭД/Forms/Форма/Ext/Form/Module.bsl b/src/DataProcessors/СопоставлениеНоменклатурыБЭД/Forms/Форма/Ext/Form/Module.bsl
index 97e833777..afa8ef8ea 100644
--- a/src/DataProcessors/СопоставлениеНоменклатурыБЭД/Forms/Форма/Ext/Form/Module.bsl
+++ b/src/DataProcessors/СопоставлениеНоменклатурыБЭД/Forms/Форма/Ext/Form/Module.bsl
@@ -233,6 +233,11 @@
ЗапуститьПоискВариантовНаКлиенте();
КонецПроцедуры
+&НаКлиенте
+Процедура ОрганизацияПриИзменении(Элемент)
+ ЗапуститьПоискВариантовНаКлиенте();
+КонецПроцедуры
+
#КонецОбласти
#Область ОбработчикиСобытийЭлементовТаблицыФормыСопоставление
@@ -1168,11 +1173,12 @@
ПараметрыМетода.Вставить("Договор", ЭтотОбъект[ИмяРеквизитаДоговор()]);
КонецЕсли;
- ИмяМетода = "Обработка.СопоставлениеНоменклатурыБЭД.МодульОбъекта.НайтиВариантыСопоставленияНоменклатуры";
-
УстановитьРежимПоискаВариантовСопоставления(Истина);
- ОперацияПоискаВариантов = ДлительныеОперации.ВыполнитьВФоне(ИмяМетода, ПараметрыМетода, ПараметрыВыполнения);
+ ОперацияПоискаВариантов = ДлительныеОперации.ВыполнитьВФоне(
+ "Обработка.СопоставлениеНоменклатурыБЭД.МодульОбъекта.НайтиВариантыСопоставленияНоменклатуры",
+ ПараметрыМетода,
+ ПараметрыВыполнения);
КонецПроцедуры
@@ -2243,7 +2249,7 @@
ДополнительныеПараметры =
СопоставлениеНоменклатурыКонтрагентов.НовыеДополнительныеПараметрыПриЗаписиНоменклатурыКонтрагентов();
- ДополнительныеПараметры.ТребуетсяПоискСсылки = Ложь;
+ ДополнительныеПараметры.ТребуетсяПоискСсылки = Истина;
ДополнительныеПараметры.ТребуетсяПоискЕдиницыИзмеренияПоОКЕИ = Ложь;
ТекстОшибкиПользователю = "";
@@ -2892,8 +2898,6 @@
УстановитьПривилегированныйРежим(Истина);
- ИмяМетода = "СопоставлениеНоменклатурыКонтрагентовСлужебный.ОбновитьСловарьИСтатистикуПоИзменениям";
-
ПараметрыВыполнения = ДлительныеОперации.ПараметрыВыполненияВФоне();
ПараметрыВыполнения.ОжидатьЗавершение = 0;
ПараметрыВыполнения.ЗапуститьВФоне = Истина;
@@ -2905,7 +2909,8 @@
СопоставлениеНоменклатурыКонтрагентовСлужебный.УстановитьИспользованиеСловаряСопоставления(Истина);
КонецЕсли;
- ДлительныеОперации.ВыполнитьПроцедуру(ПараметрыВыполнения, ИмяМетода);
+ ДлительныеОперации.ВыполнитьПроцедуру(ПараметрыВыполнения,
+ "СопоставлениеНоменклатурыКонтрагентовСлужебный.ОбновитьСловарьИСтатистикуПоИзменениям");
КонецПроцедуры
diff --git a/src/DataProcessors/ТорговыеПредложения/Forms/ФормированиеЗаказов/Ext/Form/Module.bsl b/src/DataProcessors/ТорговыеПредложения/Forms/ФормированиеЗаказов/Ext/Form/Module.bsl
index 6909126fc..59505add4 100644
--- a/src/DataProcessors/ТорговыеПредложения/Forms/ФормированиеЗаказов/Ext/Form/Module.bsl
+++ b/src/DataProcessors/ТорговыеПредложения/Forms/ФормированиеЗаказов/Ext/Form/Module.bsl
@@ -1368,7 +1368,7 @@
СменитьСтраницуКомандНавигации(Элементы.Отмена);
Элементы.СтраницыДлительнойОперации.ТекущаяСтраница = Элементы.СтраницаВПроцессе;
- Задание = Новый Структура("ИмяПроцедуры, Наименование, ПараметрыПроцедуры");
+ Задание = Новый Структура("Наименование, ПараметрыПроцедуры");
Задание.ПараметрыПроцедуры = Новый Структура;
ДополнительныеПараметры = Новый Структура;
@@ -1380,8 +1380,7 @@
Элементы.НазваниеТекущейДлительнойОперации.Заголовок = НСтр("ru = 'Подготовка документов'");
- Задание.Наименование = НСтр("ru = '1С:Бизнес-сеть. Торговые предложения. Формирование документов.'");
- Задание.ИмяПроцедуры = "Обработки.ТорговыеПредложения.СформироватьЗаказы";
+ Задание.Наименование = НаименованиеДлительнойОперацииФормированиеДокументов();
ДополнительныеПараметрыПроцедуры = Новый Структура;
ДополнительныеПараметрыПроцедуры.Вставить("ЗарегистрироватьОрганизацию", ЗарегистрироватьОрганизацию);
@@ -1411,8 +1410,7 @@
Элементы.НазваниеТекущейДлительнойОперации.Заголовок = НСтр("ru = 'Отправка документов поставщику'");
- Задание.Наименование = НСтр("ru = '1С:Бизнес-сеть. Торговые предложения. Отправка документов поставщику.'");
- Задание.ИмяПроцедуры = "Обработки.ТорговыеПредложения.ОтправитьЗаказы";
+ Задание.Наименование = НаименованиеДлительнойОперацииОтправкаДокументовПоставщику();
ДополнительныеПараметрыЗаказа = ОписаниеСопроводительнойИнформацииЗаказа();
ДополнительныеПараметрыЗаказа.СопроводительнаяИнформация = СопроводительнаяИнформация;
@@ -1438,7 +1436,7 @@
ДлительнаяОперацияЗавершение = Новый ОписаниеОповещения(
"ДлительнаяОперацияЗавершение", ЭтотОбъект, ДополнительныеПараметры);
- ДлительнаяОперация = ВыполнитьЗаданиеВФоне(Задание, УникальныйИдентификатор);
+ ДлительнаяОперация = ВыполнитьЗаданиеВФоне(Задание);
ИдентификаторЗадания = ДлительнаяОперация.ИдентификаторЗадания;
@@ -1463,13 +1461,23 @@
КонецФункции
-&НаСервереБезКонтекста
-Функция ВыполнитьЗаданиеВФоне(Знач Задание, УникальныйИдентификатор)
+&НаСервере
+Функция ВыполнитьЗаданиеВФоне(Знач Задание)
ПараметрыВыполнения = ДлительныеОперации.ПараметрыВыполненияВФоне(УникальныйИдентификатор);
ПараметрыВыполнения.НаименованиеФоновогоЗадания = Задание.Наименование;
ПараметрыВыполнения.ЗапуститьВФоне = Истина;
+ Если Задание.Наименование = НаименованиеДлительнойОперацииФормированиеДокументов() Тогда
+ ИмяПроцедуры = "Обработки.ТорговыеПредложения.СформироватьЗаказы";
+ ИначеЕсли Задание.Наименование = НаименованиеДлительнойОперацииОтправкаДокументовПоставщику() Тогда
+ ИмяПроцедуры = "Обработки.ТорговыеПредложения.ОтправитьЗаказы";
+ Иначе
+ ВызватьИсключение СтрШаблон(
+ НСтр("ru = 'Неизвестное наименование операции: %1'", ОбщегоНазначения.КодОсновногоЯзыка()),
+ Задание.Наименование);
+ КонецЕсли;
+
Если Задание.ПараметрыПроцедуры.Свойство("Товары")
И ТипЗнч(Задание.ПараметрыПроцедуры.Товары) = Тип("ДанныеФормыКоллекция") Тогда
// Преобразование типа данные формы коллекции в таблицу значений.
@@ -1490,8 +1498,7 @@
"ИдентификаторКонтрагента, Контрагент, СпособДоставки, АдресДоставки, АдресДоставкиЗначенияПолей");
КонецЕсли;
- Возврат ДлительныеОперации.ВыполнитьВФоне(Задание.ИмяПроцедуры,
- Задание.ПараметрыПроцедуры, ПараметрыВыполнения);
+ Возврат ДлительныеОперации.ВыполнитьВФоне(ИмяПроцедуры, Задание.ПараметрыПроцедуры, ПараметрыВыполнения);
КонецФункции
@@ -1692,6 +1699,16 @@
КонецПроцедуры
+&НаКлиентеНаСервереБезКонтекста
+Функция НаименованиеДлительнойОперацииФормированиеДокументов()
+ Возврат НСтр("ru = '1С:Бизнес-сеть. Торговые предложения. Формирование документов.'");
+КонецФункции
+
+&НаКлиентеНаСервереБезКонтекста
+Функция НаименованиеДлительнойОперацииОтправкаДокументовПоставщику()
+ Возврат НСтр("ru = '1С:Бизнес-сеть. Торговые предложения. Отправка документов поставщику.'");
+КонецФункции
+
#КонецОбласти
#Область Прочее
diff --git a/src/DataProcessors/ТрансграничныйОбменРБ/Ext/ManagerModule.bsl b/src/DataProcessors/ТрансграничныйОбменРБ/Ext/ManagerModule.bsl
index 38a9816e8..71efc8952 100644
--- a/src/DataProcessors/ТрансграничныйОбменРБ/Ext/ManagerModule.bsl
+++ b/src/DataProcessors/ТрансграничныйОбменРБ/Ext/ManagerModule.bsl
@@ -1691,6 +1691,176 @@
#Область Прочее
+// Возвращает наименование страны.
+//
+// Возвращаемое значение:
+// Строка
+//
+Функция НаименованиеСтраны()
+ Возврат НСтр("ru = 'Республика Беларусь'");
+КонецФункции
+
+// Заполняет состояние по входящему отклонению.
+//
+// Параметры:
+// ДанныеДляЗаполнения - см. ТрансграничныйЭДО.ДанныеДляЗаполненияСостоянияЭД
+// СостоянияЭлементовРегламента - См. РегламентыЭДО.НовыеСостоянияЭлементовРегламента
+// Состояние - ПеречислениеСсылка.СостоянияДокументовЭДО
+//
+Процедура ЗаполнитьСостояниеПоВходящемуОтклонению(ДанныеДляЗаполнения, СостоянияЭлементовРегламента, Состояние) Экспорт
+
+ СтандартныеТипы = ТрансграничныйЭДО.СтандартныеТипыДокументов();
+
+ Если ДанныеДляЗаполнения.ТипДокумента = СтандартныеТипы.ТоварнаяНакладнаяРБ
+ И ДанныеДляЗаполнения.ИдентификаторДокументооборота = ДанныеДляЗаполнения.ИдентификаторСвязи Тогда
+ Состояние = Перечисления.СостоянияДокументовЭДО.ЗакрытСОтклонением;
+ КонецЕсли;
+
+КонецПроцедуры
+
+// см. ТрансграничныйЭДО.ДополнитьКорректируемыеТипыЭД
+Процедура ДополнитьКорректируемыеТипыЭД(ТипыЭД) Экспорт
+
+ СтандартныеТипыДокументов = ТрансграничныйЭДО.СтандартныеТипыДокументов();
+ ТипыЭД.Вставить(СтандартныеТипыДокументов.ТоварнаяНакладнаяРБ, СтандартныеТипыДокументов.ТоварнаяНакладнаяРБ);
+
+КонецПроцедуры
+
+// см. ТрансграничныйЭДО.ДополнитьИсправляющиеТипыЭД
+Процедура ДополнитьИсправляющиеТипыЭД(ТипыЭД) Экспорт
+
+ СтандартныеТипыДокументов = ТрансграничныйЭДО.СтандартныеТипыДокументов();
+ ТипыЭД.Вставить(СтандартныеТипыДокументов.ТоварнаяНакладнаяРБ, Истина);
+
+КонецПроцедуры
+
+// Проверяет служебное имя дополнительного поля
+//
+// Параметры:
+// ИмяПоля - Строка
+// Формат - Строка
+//
+// Возвращаемое значение:
+// Булево
+//
+Функция ЭтоСлужебноеИмяДополнительногоПоля(ИмяПоля, Формат) Экспорт
+ Возврат ФорматыДляДополнительныхДанных()[Формат] <> Неопределено И ИмяПоля = ИмяПоляИдентификатора();
+КонецФункции
+
+// Набор форматов для дополнительных данных.
+//
+// Возвращаемое значение:
+// Соответствие из КлючИЗначение:
+// * Ключ - Строка
+// * Значение - Булево
+//
+Функция ФорматыДляДополнительныхДанных()
+
+ Результат = Новый Соответствие();
+ Форматы = ФорматыЭДО.ПоддерживаемыеФорматы();
+ Результат.Вставить(Форматы.ФНС.УПД_5_03.ИнформацияПродавца, Форматы.ФНС.УПД_5_03.ИнформацияПродавца);
+ Результат.Вставить(Форматы.ФНС.УКД2020.ИнформацияПродавца, Форматы.ФНС.УКД2020.ИнформацияПродавца);
+ Возврат Результат;
+
+КонецФункции
+
+Функция ИмяПоляИдентификатора()
+ Возврат "ВнешнийИдентификаторРБ";
+КонецФункции
+
+// Формирует данные дополнительных полей шапки трансграничного документа
+//
+// Параметры:
+// ИдентификаторКонтрагента - Строка
+// ПараметрыЗаполнения - см. ФорматыЭДО.ПараметрыЗаполненияДополнительныхПолей
+//
+// Возвращаемое значение:
+// - Неопределено
+// - Соответствие из КлючИЗначение:
+// * Ключ - Строка
+// * Значение - Строка
+//
+Функция ДанныеДополнительныхПолей(ИдентификаторКонтрагента, ПараметрыЗаполнения) Экспорт
+
+ Формат = ПараметрыЗаполнения.НастройкиОбмена.Формат;
+
+ Если НЕ ЭтоОператорРБ(ИдентификаторКонтрагента) ИЛИ ФорматыДляДополнительныхДанных()[Формат] = Неопределено Тогда
+ Возврат Неопределено;
+ КонецЕсли;
+
+ Результат = Новый Соответствие();
+ ПоддерживаемыеФорматы = ФорматыЭДО.ПоддерживаемыеФорматы();
+ Форматы = ФорматыДляДополнительныхДанных();
+ СсылкаНаОбъект = Неопределено;
+
+ Если Формат = Форматы[ПоддерживаемыеФорматы.ФНС.УПД_5_03.ИнформацияПродавца] Тогда
+
+ СсылкаНаОбъект = ПараметрыЗаполнения.СсылкаНаОбъект;
+
+ ИначеЕсли Формат = Форматы[ПоддерживаемыеФорматы.ФНС.УКД2020.ИнформацияПродавца] Тогда
+
+ СсылкаНаОбъект = ПараметрыЗаполнения.СсылкаНаОбъект;
+ Основания = ДеревоЭлектронногоДокументаБЭД.ЗначениеРеквизитаВДереве(
+ ПараметрыЗаполнения.ОписаниеДанныхЭД, "ДокументыОснованияСчетаФактуры");
+
+ Если ЗначениеЗаполнено(Основания) Тогда
+
+ Если ТипЗнч(Основания) <> Тип("Массив") Тогда
+ Основания = ОбщегоНазначенияКлиентСервер.ЗначениеВМассиве(Основания);
+ КонецЕсли;
+
+ Для Каждого Основание Из Основания Цикл // ДокументСсылка
+ Если ТипЗнч(Основание) = ТипЗнч(ПараметрыЗаполнения.СсылкаНаОбъект) Тогда
+ СсылкаНаОбъект = Основание; // ОпределяемыйТип.ОснованияЭлектронныхДокументовЭДО
+ Прервать;
+ КонецЕсли;
+ КонецЦикла;
+
+ Если НЕ ЗначениеЗаполнено(СсылкаНаОбъект) Тогда
+ СсылкаНаОбъект = Основание;
+ КонецЕсли;
+
+ КонецЕсли;
+
+ КонецЕсли;
+
+ Если ЗначениеЗаполнено(СсылкаНаОбъект) Тогда
+ Результат.Вставить(ИмяПоляИдентификатора(), Строка(СсылкаНаОбъект.УникальныйИдентификатор()));
+ Возврат Результат;
+ КонецЕсли;
+
+ Возврат Неопределено;
+
+КонецФункции
+
+// см. ТрансграничныйЭДО.ЗаполнитьПараметрыСвязиИдентификаторов
+Процедура ЗаполнитьПараметрыСвязиИдентификаторов(ПараметрыСвязи) Экспорт
+
+ Операторы = Операторы();
+
+ Для Каждого ОписаниеСвязи Из ПараметрыСвязи Цикл
+
+ ДлинаПрефикса = 3;
+ ПрефиксОператора = ВРег(Лев(ОписаниеСвязи.ИдентификаторКонтрагента, ДлинаПрефикса));
+
+ Для Каждого ОписаниеОператора Из Операторы Цикл
+
+ Если ПрефиксОператора = ВРег(Лев(ОписаниеОператора.Префикс, ДлинаПрефикса)) Тогда
+
+ ОписаниеСвязи.ОператорКонтрагента = ПрефиксОператора;
+ ОписаниеСвязи.ОператорКонтрагентаПредставление =
+ СтрШаблон("%1 (%2)", ОписаниеОператора.Наименование, НаименованиеСтраны());
+ ОписаниеСвязи.ОператорыСовпадают =
+ ОписаниеСвязи.ОператорКонтрагента = ОписаниеСвязи.ОператорОрганизации;
+
+ КонецЕсли;
+
+ КонецЦикла;
+
+ КонецЦикла;
+
+КонецПроцедуры
+
// Добавляет и заполняет строку в таблице типов элементов регламента.
//
// Параметры:
diff --git a/src/DataProcessors/ТранспортныеКонтейнерыЭДО/Forms/УдалениеФайловОтработанныхТранспортныхКонтейнеровЭДО/Ext/Form/Module.bsl b/src/DataProcessors/ТранспортныеКонтейнерыЭДО/Forms/УдалениеФайловОтработанныхТранспортныхКонтейнеровЭДО/Ext/Form/Module.bsl
index 545b63ebb..62485b3c8 100644
--- a/src/DataProcessors/ТранспортныеКонтейнерыЭДО/Forms/УдалениеФайловОтработанныхТранспортныхКонтейнеровЭДО/Ext/Form/Module.bsl
+++ b/src/DataProcessors/ТранспортныеКонтейнерыЭДО/Forms/УдалениеФайловОтработанныхТранспортныхКонтейнеровЭДО/Ext/Form/Module.bsl
@@ -101,7 +101,9 @@
Если СтрокаУдаления.Выбран Тогда
НачатьТранзакцию();
Попытка
- ОбъектУдаления = ОбщегоНазначенияБЭД.ОбъектПоСсылкеДляИзменения(СтрокаУдаления.Документ);
+ ТранспортныеКонтейнерыЭДО.ЗаблокироватьКонтейнер(СтрокаУдаления.Документ);
+
+ ОбъектУдаления = СтрокаУдаления.Документ.ПолучитьОбъект();
ОбъектУдаления.ПометкаУдаления = Истина;
ОбъектУдаления.Записать();
ЗафиксироватьТранзакцию();
diff --git a/src/DataProcessors/ТранспортныеКонтейнерыЭДО/Templates/ТипыДокументовТранспортнойИнформации/Ext/Template.xml b/src/DataProcessors/ТранспортныеКонтейнерыЭДО/Templates/ТипыДокументовТранспортнойИнформации/Ext/Template.xml
index ee20cf6c6..7db69d575 100644
--- a/src/DataProcessors/ТранспортныеКонтейнерыЭДО/Templates/ТипыДокументовТранспортнойИнформации/Ext/Template.xml
+++ b/src/DataProcessors/ТранспортныеКонтейнерыЭДО/Templates/ТипыДокументовТранспортнойИнформации/Ext/Template.xml
@@ -7557,9 +7557,205 @@
+
+ 135
+
+
+
+ 0
+
+
+ ru
+ FormalizedBillVendor
+
+
+
+
+
+
+ 0
+
+
+ ru
+ СчетНаОплату
+
+
+
+
+
+
+ 0
+
+
+ ru
+ ИнформацияОтправителя
+
+
+
+
+
+
+ 4
+
+
+ ru
+ Формализованный
+
+
+
+
+
+
+
+ 136
+
+
+
+ 0
+
+
+ ru
+ FormalizedBillVendor
+
+
+
+
+
+
+ 0
+
+
+ ru
+ СчетНаОплату
+
+
+
+
+
+
+ 0
+
+
+ ru
+ ИнформацияПолучателя
+
+
+
+
+
+
+ 4
+
+
+ ru
+ Формализованный
+
+
+
+
+
+
+
+ 137
+
+
+
+ 0
+
+
+ ru
+ FormalizedBillOfferVendor
+
+
+
+
+
+
+ 0
+
+
+ ru
+ СчетОферта
+
+
+
+
+
+
+ 3
+
+
+ ru
+ ИнформацияОтправителя
+
+
+
+
+
+
+ 4
+
+
+ ru
+ Формализованный
+
+
+
+
+
+
+
+ 138
+
+
+
+ 0
+
+
+ ru
+ FormalizedBillOfferVendor
+
+
+
+
+
+
+ 0
+
+
+ ru
+ СчетОферта
+
+
+
+
+
+
+ 3
+
+
+ ru
+ ИнформацияПолучателя
+
+
+
+
+
+
+ 4
+
+
+ ru
+ Формализованный
+
+
+
+
+
+
true
- 135
- 135
+ 139
+ 139
#000000
#000000
#000000
diff --git a/src/DataProcessors/УправлениеПродажамиНаOzon/Forms/ПодключениеКСервису/Ext/Form/Module.bsl b/src/DataProcessors/УправлениеПродажамиНаOzon/Forms/ПодключениеКСервису/Ext/Form/Module.bsl
index 2fe3f5338..9986f6146 100644
--- a/src/DataProcessors/УправлениеПродажамиНаOzon/Forms/ПодключениеКСервису/Ext/Form/Module.bsl
+++ b/src/DataProcessors/УправлениеПродажамиНаOzon/Forms/ПодключениеКСервису/Ext/Form/Module.bsl
@@ -273,6 +273,7 @@
УчетнаяЗаписьОбъект.Записать();
ИнтеграцияСМаркетплейсомOzonСервер.ЗаписатьКлючАвторизации(УчетнаяЗаписьОбъект.Ссылка, КлючAPI);
+ УчетнаяЗаписьСсылка = УчетнаяЗаписьОбъект.Ссылка;
ЗафиксироватьТранзакцию();
diff --git a/src/DataProcessors/УправлениеПродажамиНаЯндексМаркет/Ext/ManagerModule.bsl b/src/DataProcessors/УправлениеПродажамиНаЯндексМаркет/Ext/ManagerModule.bsl
index 72e8ae2a1..9de1104d4 100644
--- a/src/DataProcessors/УправлениеПродажамиНаЯндексМаркет/Ext/ManagerModule.bsl
+++ b/src/DataProcessors/УправлениеПродажамиНаЯндексМаркет/Ext/ManagerModule.bsl
@@ -1084,18 +1084,41 @@
Если ВыполнятьПоискИСозданиеКонтрагентов
И Не ЗначениеЗаполнено(НоваяСтрока.Контрагент)
И Не ПустаяСтрока(ВыборкаДанных.НаименованиеКонтрагента) Тогда
-
- ИнтеграцияСМаркетплейсамиСервер.ЗаполнитьДанныеПокупателя(
- НоваяСтрока,
- ВыборкаДанных,
- Параметры.УчетнаяЗапись,
- НастройкиУчетнойЗаписи.ВидМаркетплейса,
- ГруппаДоступа);
-
- Если ЗначениеЗаполнено(НоваяСтрока.Контрагент) Тогда
- НоваяСтрока.КонтрагентСозданПриЗагрузке = Истина;
- КонецЕсли;
+
+ КонтрагентСоздавался = Ложь;
+ ДанныеКонтрагента = Новый Структура();
+ ДанныеКонтрагента.Вставить("НаименованиеКонтрагента", ВыборкаДанных.НаименованиеКонтрагента);
+ ДанныеКонтрагента.Вставить("ИННКонтрагента", ВыборкаДанных.ИННКонтрагента);
+ ДанныеКонтрагента.Вставить("КППКонтрагента", ВыборкаДанных.КППКонтрагента);
+ ДанныеКонтрагента.Вставить("ЮридическийАдресКонтрагента", ВыборкаДанных.ЮридическийАдресКонтрагента);
+
+ СтрокиТаблицыСопоставления = ТаблицаСопоставленияДанных.НайтиСтроки(ДанныеКонтрагента);
+
+ Если СтрокиТаблицыСопоставления.Количество() > 0 Тогда
+ Для каждого СтрокаТаблицыСопоставления Из СтрокиТаблицыСопоставления Цикл
+ Если ЗначениеЗаполнено(СтрокаТаблицыСопоставления.Контрагент) Тогда
+ КонтрагентСоздавался = Истина;
+ НоваяСтрока.Контрагент = СтрокаТаблицыСопоставления.Контрагент;
+ НоваяСтрока.Партнер = СтрокаТаблицыСопоставления.Партнер;
+ Прервать;
+ КонецЕсли;
+ КонецЦикла;
+ КонецЕсли;
+
+ Если НЕ КонтрагентСоздавался Тогда
+ ИнтеграцияСМаркетплейсамиСервер.ЗаполнитьДанныеПокупателя(
+ НоваяСтрока,
+ ВыборкаДанных,
+ Параметры.УчетнаяЗапись,
+ НастройкиУчетнойЗаписи.ВидМаркетплейса,
+ ГруппаДоступа);
+ КонецЕсли;
+
+ Если ЗначениеЗаполнено(НоваяСтрока.Контрагент) Тогда
+ НоваяСтрока.КонтрагентСозданПриЗагрузке = Истина;
+ КонецЕсли;
КонецЕсли;
+
КонецЦикла;
НомерТекущейСтроки = НомерТекущейСтроки + 1;
diff --git a/src/DataProcessors/ФорматАктПриемкиСтроительныхРаботИнформацияПодрядчикаЭДО/Ext/ManagerModule.bsl b/src/DataProcessors/ФорматАктПриемкиСтроительныхРаботИнформацияПодрядчикаЭДО/Ext/ManagerModule.bsl
index affc153ac..4cabbb957 100644
--- a/src/DataProcessors/ФорматАктПриемкиСтроительныхРаботИнформацияПодрядчикаЭДО/Ext/ManagerModule.bsl
+++ b/src/DataProcessors/ФорматАктПриемкиСтроительныхРаботИнформацияПодрядчикаЭДО/Ext/ManagerModule.bsl
@@ -99,17 +99,9 @@
// * НДС0 - Строка
// * НДС5 - Строка
// * НДС7 - Строка
-// * НДС9_09 - Строка
// * НДС10 - Строка
-// * НДС16_67 - Строка
-// * НДС18_03 - Строка
// * НДС20 - Строка
// * НДС22 - Строка
-// * НДС5_105 - Строка
-// * НДС7_107 - Строка
-// * НДС10_110 - Строка
-// * НДС20_120 - Строка
-// * НДС22_122 - Строка
// * БезНДС - Строка
// * НДСАгента - Строка
//
@@ -118,17 +110,9 @@
Данные.Вставить("НДС0", "0%");
Данные.Вставить("НДС5", "5%");
Данные.Вставить("НДС7", "7%");
- Данные.Вставить("НДС9_09", "9,09%");
Данные.Вставить("НДС10", "10%");
- Данные.Вставить("НДС16_67", "16,67%");
- Данные.Вставить("НДС18_03", "18,03%");
Данные.Вставить("НДС20", "20%");
Данные.Вставить("НДС22", "22%");
- Данные.Вставить("НДС5_105", "5/105");
- Данные.Вставить("НДС7_107", "7/107");
- Данные.Вставить("НДС10_110", "10/110");
- Данные.Вставить("НДС20_120", "20/120");
- Данные.Вставить("НДС22_122", "22/122");
Данные.Вставить("БезНДС", "без НДС");
Данные.Вставить("НДСАгента", "НДС исчисляется налоговым агентом");
Возврат Новый ФиксированнаяСтруктура(Данные);
@@ -1258,12 +1242,9 @@
НалоговыеСтавки = НалоговыеСтавки();
ИнформацияПодрядчика = КонструкторЭД.ИнформацияПодрядчика();
Если ИнформацияПодрядчика.НастройкиДокумента.СпособРасчетаНДС = СпособыРасчетаНДС().ТолькоВИтогах Тогда
- Если ФорматыЭДО_ФНС.ДействуютСтавкиНДС_2026() Тогда
- ОсновнаяСтавка = НалоговыеСтавки.НДС22;
- Иначе
- ОсновнаяСтавка = НалоговыеСтавки.НДС20;
- КонецЕсли;
- Если Работа.СтавкаНДС <> ОсновнаяСтавка Тогда
+ ОсновнаяСтавка = НалоговыеСтавки.НДС22;
+ ОсновнаяСтавкаДо2026 = НалоговыеСтавки.НДС20;
+ Если Работа.СтавкаНДС <> ОсновнаяСтавка И Работа.СтавкаНДС <> ОсновнаяСтавкаДо2026 Тогда
РаботаСФайламиБЭД.ЗаполнитьСвойствоXDTO(Объект, "НалСтВИтог", Работа.СтавкаНДС, Ложь, Ошибки);
КонецЕсли;
Иначе
@@ -1807,15 +1788,12 @@
РаботаСФайламиБЭД.ЗаполнитьСвойствоXDTO(Объект, "НалСт", Ставка, Истина, Ошибки);
РаботаСФайламиБЭД.ЗаполнитьСвойствоXDTO(Объект, "НалБаза", Налог.НалоговаяБаза, Истина, Ошибки);
НалоговыеСтавки = НалоговыеСтавки();
- Если ФорматыЭДО_ФНС.ДействуютСтавкиНДС_2026() Тогда
- ОсновнаяСтавка = НалоговыеСтавки.НДС22;
- Иначе
- ОсновнаяСтавка = НалоговыеСтавки.НДС20;
- КонецЕсли;
- Если Ставка <> ОсновнаяСтавка И ЗначениеЗаполнено(Налог.ПозицииАкта) Тогда
- Для Каждого Позиция Из Налог.ПозицииАкта Цикл
- Объект.НомПозСт.Добавить(Позиция);
- КонецЦикла;
+ ОсновнаяСтавка = НалоговыеСтавки.НДС22;
+ ОсновнаяСтавкаДо2026 = НалоговыеСтавки.НДС20;
+ Если Ставка <> ОсновнаяСтавка И Ставка <> ОсновнаяСтавкаДо2026 И ЗначениеЗаполнено(Налог.ПозицииАкта) Тогда
+ Для Каждого Позиция Из Налог.ПозицииАкта Цикл
+ Объект.НомПозСт.Добавить(Позиция);
+ КонецЦикла;
КонецЕсли;
Если Ставка = НалоговыеСтавки.БезНДС Тогда
РаботаСФайламиБЭД.ЗаполнитьСвойствоXDTO(Объект, "НеобНДС", "без НДС", Истина, Ошибки);
@@ -2489,12 +2467,7 @@
КонецЕсли;
Ставка = РаботаСФайламиБЭД.ЗначениеСвойстваXDTO(Объект, "НалСтПостр");
Если Не ЗначениеЗаполнено(Ставка) Тогда
- Если ФорматыЭДО_ФНС.ДействуютСтавкиНДС_2026() Тогда
- ОсновнаяСтавка = НалоговыеСтавки().НДС22;
- Иначе
- ОсновнаяСтавка = НалоговыеСтавки().НДС20;
- КонецЕсли;
- Ставка = РаботаСФайламиБЭД.ЗначениеСвойстваXDTO(Объект, "НалСтВИтог", ОсновнаяСтавка);
+ Ставка = РаботаСФайламиБЭД.ЗначениеСвойстваXDTO(Объект, "НалСтВИтог", НалоговыеСтавки().НДС22);
КонецЕсли;
Работа.СтавкаНДС = Ставка;
СуммаНалога = РаботаСФайламиБЭД.ЗначениеСвойстваXDTO(Объект, "СумНал");
@@ -2996,12 +2969,9 @@
КонецЕсли;
Налог.НалоговаяБаза = РаботаСФайламиБЭД.ЗначениеСвойстваXDTO(Объект, "НалБаза");
ПозицииАкта = РаботаСФайламиБЭД.ЗначениеСвойстваXDTO(Объект, "НомПозСт");
- Если ФорматыЭДО_ФНС.ДействуютСтавкиНДС_2026() Тогда
- ОсновнаяСтавка = НалоговыеСтавки.НДС22;
- Иначе
- ОсновнаяСтавка = НалоговыеСтавки.НДС20;
- КонецЕсли;
- Если Ставка <> ОсновнаяСтавка И ТипЗнч(ПозицииАкта) = Тип("СписокXDTO") Тогда
+ ОсновнаяСтавка = НалоговыеСтавки.НДС22;
+ ОсновнаяСтавкаДо2026 = НалоговыеСтавки.НДС20;
+ Если Ставка <> ОсновнаяСтавка И Ставка <> ОсновнаяСтавкаДо2026 И ТипЗнч(ПозицииАкта) = Тип("СписокXDTO") Тогда
Для Каждого Позиция Из ПозицииАкта Цикл
Если ТипЗнч(Позиция) = Тип("Строка") Тогда
Налог.ПозицииАкта.Добавить(Позиция);
diff --git a/src/DataProcessors/ФорматАктПриемкиСтроительныхРаботИнформацияПодрядчикаЭДО/Ext/ObjectModule.bsl b/src/DataProcessors/ФорматАктПриемкиСтроительныхРаботИнформацияПодрядчикаЭДО/Ext/ObjectModule.bsl
index 1b329e58d..049517739 100644
--- a/src/DataProcessors/ФорматАктПриемкиСтроительныхРаботИнформацияПодрядчикаЭДО/Ext/ObjectModule.bsl
+++ b/src/DataProcessors/ФорматАктПриемкиСтроительныхРаботИнформацияПодрядчикаЭДО/Ext/ObjectModule.bsl
@@ -780,36 +780,26 @@
ТекущаяИнформацияПодрядчика = ИнформацияПодрядчика();
ОшибкиЗаполнения = ОбработчикОшибок.ПроверитьЗаполнениеДанных(ТекущаяИнформацияПодрядчика, ПроверяемыеРеквизиты);
- // Таблица 8.15
- Если Не ФорматыЭДО_ФНС.ДействуютСтавкиНДС_2026() Тогда
- НеПоддерживаемыеСтавкиНДС = Новый Массив;
- СтавкиНДС_2026 = Новый Массив;
- СтавкиНДС_2026.Добавить("9,09%");
- СтавкиНДС_2026.Добавить("16,67%");
- СтавкиНДС_2026.Добавить("18,03%");
- СтавкиНДС_2026.Добавить("22%");
- СтавкиНДС_2026.Добавить("5/105");
- СтавкиНДС_2026.Добавить("7/107");
- СтавкиНДС_2026.Добавить("10/110");
- СтавкиНДС_2026.Добавить("20/120");
- СтавкиНДС_2026.Добавить("22/122");
- Для Каждого Работа Из Этотобъект.ДанныеРабот Цикл
- Если ЗначениеЗаполнено(Работа.СтавкаНДС)
- И СтавкиНДС_2026.Найти(Работа.СтавкаНДС) <> Неопределено
- И НеПоддерживаемыеСтавкиНДС.Найти(Работа.СтавкаНДС) = Неопределено Тогда
-
- НеПоддерживаемыеСтавкиНДС.Добавить(Работа.СтавкаНДС);
-
- КонецЕсли;
- КонецЦикла;
- Для Каждого СтавкаНДС Из НеПоддерживаемыеСтавкиНДС Цикл
- ПараметрыОшибки = ОбщегоНазначенияБЭДКлиентСервер.НовыеПараметрыОшибки();
- ШаблонОшибки = НСтр("ru = 'Ставка НДС %1 не поддерживается в данном формате электронного документа.
- |Укажите другую ставку НДС.'");
- ПараметрыОшибки.ТекстОшибки = СтрШаблон(ШаблонОшибки, СтавкаНДС);
- ОшибкиЗаполнения.Добавить(ПараметрыОшибки);
- КонецЦикла;
- КонецЕсли;
+ // Таблица 8.15
+ НалоговыеСтавки = НалоговыеСтавки();
+ НеПоддерживаемыеСтавкиНДС = Новый Массив;
+ Для Каждого Работа Из Этотобъект.ДанныеРабот Цикл
+ Если ЗначениеЗаполнено(Работа.СтавкаНДС)
+ И Не ОбщегоНазначенияБЭДКлиентСервер.СтруктураСодержитЗначение(НалоговыеСтавки, Работа.СтавкаНДС)
+ И НеПоддерживаемыеСтавкиНДС.Найти(Работа.СтавкаНДС) = Неопределено Тогда
+
+ НеПоддерживаемыеСтавкиНДС.Добавить(Работа.СтавкаНДС);
+
+ КонецЕсли;
+ КонецЦикла;
+ Для Каждого СтавкаНДС Из НеПоддерживаемыеСтавкиНДС Цикл
+ ПараметрыОшибки = ОбщегоНазначенияБЭДКлиентСервер.НовыеПараметрыОшибки();
+ ШаблонОшибки = НСтр("ru = 'Ставка НДС %1 не поддерживается в данном формате электронного документа.
+ |Укажите другую ставку НДС.'");
+ ПараметрыОшибки.ТекстОшибки = СтрШаблон(ШаблонОшибки, СтавкаНДС);
+ ОшибкиЗаполнения.Добавить(ПараметрыОшибки);
+ КонецЦикла;
+
Если ЗначениеЗаполнено(ОшибкиЗаполнения) Тогда
Отказ = Истина;
КонецЕсли;
diff --git a/src/DataProcessors/ФорматУниверсальноеСообщениеЭДО/Ext/ObjectModule.bsl b/src/DataProcessors/ФорматУниверсальноеСообщениеЭДО/Ext/ObjectModule.bsl
index 575dadf88..57a924c7b 100644
--- a/src/DataProcessors/ФорматУниверсальноеСообщениеЭДО/Ext/ObjectModule.bsl
+++ b/src/DataProcessors/ФорматУниверсальноеСообщениеЭДО/Ext/ObjectModule.bsl
@@ -168,10 +168,10 @@
Функция СвСобытДок(ДанныеДляФормирования)
СвСобытДок = ПолучитьXDTOОбъект(АнонимныйТип("Файл.Документ.СвСобытДок"));
- СоотвествиеЭлементаРегламентаТипуУС = СоответствиеЭлементаРегламентаТипуУС();
+ СоответствиеЭлементовРегламентаТипуУС = СоответствиеЭлементаРегламентаТипуУС();
РаботаСФайламиБЭД.ЗаполнитьСвойствоXDTO(СвСобытДок,
"СтатусУС",
- СоотвествиеЭлементаРегламентаТипуУС[ДанныеДляФормирования.ТипЭлементаРегламента],
+ СоответствиеЭлементовРегламентаТипуУС[ДанныеДляФормирования.ТипЭлементаРегламента],
Истина);
РаботаСФайламиБЭД.ЗаполнитьСвойствоXDTO(СвСобытДок, "ТекстУС", ДанныеДляФормирования.ТекстУточнения);
diff --git a/src/DataProcessors/ЭлектронноеВзаимодействие/Templates/ПрикладноеПредставлениеРеквизитов_ru/Ext/Template.xml b/src/DataProcessors/ЭлектронноеВзаимодействие/Templates/ПрикладноеПредставлениеРеквизитов_ru/Ext/Template.xml
index 4de68e15f..3166b753e 100644
--- a/src/DataProcessors/ЭлектронноеВзаимодействие/Templates/ПрикладноеПредставлениеРеквизитов_ru/Ext/Template.xml
+++ b/src/DataProcessors/ЭлектронноеВзаимодействие/Templates/ПрикладноеПредставлениеРеквизитов_ru/Ext/Template.xml
@@ -39346,11 +39346,173 @@
1470
- true
+
+
+ 7
+
+
+ ru
+ 0490
+
+
+
+
+
+
+ 7
+
+
+ ru
+ Идентификатор статуса получателя
+
+
+
+
1471
+
+
+
+ 7
+
+
+ ru
+ 0491
+
+
+
+
+
+
+ 7
+
+
+ ru
+ Код страны получателя
+
+
+
+
+
+
+
+ 1472
+
+
+
+ 7
+
+
+ ru
+ 0492
+
+
+
+
+
+
+ 7
+
+
+ ru
+ Наименование страны получателя
+
+
+
+
+
+
+
+ 1473
+
+
+
+ 7
+
+
+ ru
+ 0493
+
+
+
+
+
+
+ 7
+
+
+ ru
+ Наименование получателя
+
+
+
+
+
+
+
+ 1474
+
+
+
+ 7
+
+
+ ru
+ 0494
+
+
+
+
+
+
+ 7
+
+
+ ru
+ Идентификатор получателя
+
+
+
+
+
+
+
+ 1475
+
+
+
+ 7
+
+
+ ru
+ 0495
+
+
+
+
+
+
+ 7
+
+
+ ru
+ Код налогоплательщика получателя
+
+
+
+
+
+
+
+ 1476
+
+ true
+
+
+
+ 1477
@@ -39377,7 +39539,7 @@
- 1472
+ 1478
@@ -39404,7 +39566,7 @@
- 1473
+ 1479
@@ -39431,7 +39593,7 @@
- 1474
+ 1480
@@ -39458,7 +39620,7 @@
- 1475
+ 1481
@@ -39485,7 +39647,7 @@
- 1476
+ 1482
@@ -39512,7 +39674,7 @@
- 1477
+ 1483
@@ -39539,7 +39701,7 @@
- 1478
+ 1484
@@ -39566,7 +39728,7 @@
- 1479
+ 1485
@@ -39593,7 +39755,7 @@
- 1480
+ 1486
@@ -39620,7 +39782,7 @@
- 1481
+ 1487
@@ -39647,7 +39809,7 @@
- 1482
+ 1488
@@ -39674,7 +39836,7 @@
- 1483
+ 1489
@@ -39701,7 +39863,7 @@
- 1484
+ 1490
@@ -39728,7 +39890,7 @@
- 1485
+ 1491
@@ -39755,7 +39917,7 @@
- 1486
+ 1492
@@ -39782,7 +39944,7 @@
- 1487
+ 1493
@@ -39809,7 +39971,7 @@
- 1488
+ 1494
@@ -39836,7 +39998,7 @@
- 1489
+ 1495
@@ -39863,7 +40025,7 @@
- 1490
+ 1496
@@ -39890,7 +40052,7 @@
- 1491
+ 1497
@@ -39917,7 +40079,7 @@
- 1492
+ 1498
@@ -39944,7 +40106,7 @@
- 1493
+ 1499
@@ -39971,7 +40133,7 @@
- 1494
+ 1500
@@ -39998,7 +40160,7 @@
- 1495
+ 1501
@@ -40025,7 +40187,7 @@
- 1496
+ 1502
@@ -40052,7 +40214,7 @@
- 1497
+ 1503
@@ -40079,7 +40241,7 @@
- 1498
+ 1504
@@ -40106,7 +40268,7 @@
- 1499
+ 1505
@@ -40133,7 +40295,7 @@
- 1500
+ 1506
@@ -40160,7 +40322,7 @@
- 1501
+ 1507
@@ -40187,7 +40349,7 @@
- 1502
+ 1508
@@ -40214,7 +40376,7 @@
- 1503
+ 1509
@@ -40241,7 +40403,7 @@
- 1504
+ 1510
@@ -40268,7 +40430,7 @@
- 1505
+ 1511
@@ -40295,13 +40457,13 @@
- 1506
+ 1512
true
- 1507
+ 1513
@@ -40328,7 +40490,7 @@
- 1508
+ 1514
@@ -40355,7 +40517,7 @@
- 1509
+ 1515
@@ -40382,7 +40544,7 @@
- 1510
+ 1516
@@ -40409,7 +40571,7 @@
- 1511
+ 1517
@@ -40436,7 +40598,7 @@
- 1512
+ 1518
@@ -40463,7 +40625,7 @@
- 1513
+ 1519
@@ -40490,7 +40652,7 @@
- 1514
+ 1520
@@ -40517,7 +40679,7 @@
- 1515
+ 1521
@@ -40544,7 +40706,7 @@
- 1516
+ 1522
@@ -40571,7 +40733,7 @@
- 1517
+ 1523
@@ -40598,7 +40760,7 @@
- 1518
+ 1524
@@ -40625,7 +40787,7 @@
- 1519
+ 1525
@@ -40652,7 +40814,7 @@
- 1520
+ 1526
@@ -40679,7 +40841,7 @@
- 1521
+ 1527
@@ -40706,7 +40868,7 @@
- 1522
+ 1528
@@ -40733,7 +40895,7 @@
- 1523
+ 1529
@@ -40760,7 +40922,7 @@
- 1524
+ 1530
@@ -40787,7 +40949,7 @@
- 1525
+ 1531
@@ -40814,7 +40976,7 @@
- 1526
+ 1532
@@ -40841,7 +41003,7 @@
- 1527
+ 1533
@@ -40868,7 +41030,7 @@
- 1528
+ 1534
@@ -40895,7 +41057,7 @@
- 1529
+ 1535
@@ -40922,7 +41084,7 @@
- 1530
+ 1536
@@ -40949,7 +41111,7 @@
- 1531
+ 1537
@@ -40976,7 +41138,7 @@
- 1532
+ 1538
@@ -41003,7 +41165,7 @@
- 1533
+ 1539
@@ -41030,7 +41192,7 @@
- 1534
+ 1540
@@ -41057,7 +41219,7 @@
- 1535
+ 1541
@@ -41084,7 +41246,7 @@
- 1536
+ 1542
@@ -41111,7 +41273,7 @@
- 1537
+ 1543
@@ -41138,7 +41300,7 @@
- 1538
+ 1544
@@ -41165,7 +41327,7 @@
- 1539
+ 1545
@@ -41192,7 +41354,7 @@
- 1540
+ 1546
@@ -41219,7 +41381,7 @@
- 1541
+ 1547
@@ -41246,7 +41408,7 @@
- 1542
+ 1548
@@ -41273,7 +41435,7 @@
- 1543
+ 1549
@@ -41300,7 +41462,7 @@
- 1544
+ 1550
@@ -41327,7 +41489,7 @@
- 1545
+ 1551
@@ -41354,7 +41516,7 @@
- 1546
+ 1552
@@ -41381,7 +41543,7 @@
- 1547
+ 1553
@@ -41408,7 +41570,7 @@
- 1548
+ 1554
@@ -41435,7 +41597,7 @@
- 1549
+ 1555
@@ -41462,7 +41624,7 @@
- 1550
+ 1556
@@ -41489,7 +41651,7 @@
- 1551
+ 1557
@@ -41516,7 +41678,7 @@
- 1552
+ 1558
@@ -41543,7 +41705,7 @@
- 1553
+ 1559
@@ -41570,7 +41732,7 @@
- 1554
+ 1560
@@ -41597,7 +41759,7 @@
- 1555
+ 1561
@@ -41624,7 +41786,7 @@
- 1556
+ 1562
@@ -41651,7 +41813,7 @@
- 1557
+ 1563
@@ -41678,7 +41840,7 @@
- 1558
+ 1564
@@ -41705,7 +41867,7 @@
- 1559
+ 1565
@@ -41732,7 +41894,7 @@
- 1560
+ 1566
@@ -41759,7 +41921,7 @@
- 1561
+ 1567
@@ -41786,7 +41948,7 @@
- 1562
+ 1568
@@ -41813,7 +41975,7 @@
- 1563
+ 1569
@@ -41840,7 +42002,7 @@
- 1564
+ 1570
@@ -41867,7 +42029,7 @@
- 1565
+ 1571
@@ -41894,7 +42056,7 @@
- 1566
+ 1572
@@ -41921,7 +42083,7 @@
- 1567
+ 1573
@@ -41948,7 +42110,7 @@
- 1568
+ 1574
@@ -41975,7 +42137,7 @@
- 1569
+ 1575
@@ -42002,7 +42164,7 @@
- 1570
+ 1576
@@ -42029,7 +42191,7 @@
- 1571
+ 1577
@@ -42056,7 +42218,7 @@
- 1572
+ 1578
@@ -42083,7 +42245,7 @@
- 1573
+ 1579
@@ -42110,13 +42272,13 @@
- 1574
+ 1580
true
- 1575
+ 1581
@@ -42143,7 +42305,7 @@
- 1576
+ 1582
@@ -42170,7 +42332,7 @@
- 1577
+ 1583
@@ -42197,7 +42359,7 @@
- 1578
+ 1584
@@ -42224,7 +42386,7 @@
- 1579
+ 1585
@@ -42251,7 +42413,7 @@
- 1580
+ 1586
@@ -42278,7 +42440,7 @@
- 1581
+ 1587
@@ -42305,7 +42467,7 @@
- 1582
+ 1588
@@ -42332,7 +42494,7 @@
- 1583
+ 1589
@@ -42359,7 +42521,7 @@
- 1584
+ 1590
@@ -42386,7 +42548,7 @@
- 1585
+ 1591
@@ -42413,7 +42575,7 @@
- 1586
+ 1592
@@ -42440,7 +42602,7 @@
- 1587
+ 1593
@@ -42467,7 +42629,7 @@
- 1588
+ 1594
@@ -42494,7 +42656,7 @@
- 1589
+ 1595
@@ -42521,7 +42683,7 @@
- 1590
+ 1596
@@ -42548,7 +42710,7 @@
- 1591
+ 1597
@@ -42575,7 +42737,7 @@
- 1592
+ 1598
@@ -42602,7 +42764,7 @@
- 1593
+ 1599
@@ -42629,7 +42791,7 @@
- 1594
+ 1600
@@ -42656,7 +42818,7 @@
- 1595
+ 1601
@@ -42683,7 +42845,7 @@
- 1596
+ 1602
@@ -42710,7 +42872,7 @@
- 1597
+ 1603
@@ -42737,7 +42899,7 @@
- 1598
+ 1604
@@ -42764,7 +42926,7 @@
- 1599
+ 1605
@@ -42791,7 +42953,7 @@
- 1600
+ 1606
@@ -42818,7 +42980,7 @@
- 1601
+ 1607
@@ -42845,7 +43007,7 @@
- 1602
+ 1608
@@ -42872,7 +43034,7 @@
- 1603
+ 1609
@@ -42899,7 +43061,7 @@
- 1604
+ 1610
@@ -42926,7 +43088,7 @@
- 1605
+ 1611
@@ -42953,7 +43115,7 @@
- 1606
+ 1612
@@ -42980,7 +43142,7 @@
- 1607
+ 1613
@@ -43007,7 +43169,7 @@
- 1608
+ 1614
@@ -43034,7 +43196,7 @@
- 1609
+ 1615
@@ -43061,7 +43223,7 @@
- 1610
+ 1616
@@ -43088,7 +43250,7 @@
- 1611
+ 1617
@@ -43115,7 +43277,7 @@
- 1612
+ 1618
@@ -43142,7 +43304,7 @@
- 1613
+ 1619
@@ -43169,7 +43331,7 @@
- 1614
+ 1620
@@ -43196,7 +43358,7 @@
- 1615
+ 1621
@@ -43223,7 +43385,7 @@
- 1616
+ 1622
@@ -43250,7 +43412,7 @@
- 1617
+ 1623
@@ -43277,7 +43439,7 @@
- 1618
+ 1624
@@ -43304,7 +43466,7 @@
- 1619
+ 1625
@@ -43331,7 +43493,7 @@
- 1620
+ 1626
@@ -43358,7 +43520,7 @@
- 1621
+ 1627
@@ -43385,7 +43547,7 @@
- 1622
+ 1628
@@ -43412,7 +43574,7 @@
- 1623
+ 1629
@@ -43439,7 +43601,7 @@
- 1624
+ 1630
@@ -43466,7 +43628,7 @@
- 1625
+ 1631
@@ -43493,7 +43655,7 @@
- 1626
+ 1632
@@ -43520,7 +43682,7 @@
- 1627
+ 1633
@@ -43547,7 +43709,7 @@
- 1628
+ 1634
@@ -43574,7 +43736,7 @@
- 1629
+ 1635
@@ -43601,7 +43763,7 @@
- 1630
+ 1636
@@ -43628,7 +43790,7 @@
- 1631
+ 1637
@@ -43655,7 +43817,7 @@
- 1632
+ 1638
@@ -43682,7 +43844,7 @@
- 1633
+ 1639
@@ -43709,7 +43871,7 @@
- 1634
+ 1640
@@ -43736,7 +43898,7 @@
- 1635
+ 1641
@@ -43763,7 +43925,7 @@
- 1636
+ 1642
@@ -43790,7 +43952,7 @@
- 1637
+ 1643
@@ -43817,7 +43979,7 @@
- 1638
+ 1644
@@ -43844,7 +44006,7 @@
- 1639
+ 1645
@@ -43871,7 +44033,7 @@
- 1640
+ 1646
@@ -43898,7 +44060,7 @@
- 1641
+ 1647
@@ -43925,7 +44087,7 @@
- 1642
+ 1648
@@ -43952,7 +44114,7 @@
- 1643
+ 1649
@@ -43979,7 +44141,7 @@
- 1644
+ 1650
@@ -44006,7 +44168,7 @@
- 1645
+ 1651
@@ -44033,7 +44195,7 @@
- 1646
+ 1652
@@ -44060,7 +44222,7 @@
- 1647
+ 1653
@@ -44087,7 +44249,7 @@
- 1648
+ 1654
@@ -44114,7 +44276,7 @@
- 1649
+ 1655
@@ -44141,7 +44303,7 @@
- 1650
+ 1656
@@ -44168,7 +44330,7 @@
- 1651
+ 1657
@@ -44195,7 +44357,7 @@
- 1652
+ 1658
@@ -44222,7 +44384,7 @@
- 1653
+ 1659
@@ -44249,7 +44411,7 @@
- 1654
+ 1660
@@ -44276,7 +44438,7 @@
- 1655
+ 1661
@@ -44303,7 +44465,7 @@
- 1656
+ 1662
@@ -44330,7 +44492,7 @@
- 1657
+ 1663
@@ -44357,7 +44519,7 @@
- 1658
+ 1664
@@ -44384,7 +44546,7 @@
- 1659
+ 1665
@@ -44411,7 +44573,7 @@
- 1660
+ 1666
@@ -44438,7 +44600,7 @@
- 1661
+ 1667
@@ -44465,7 +44627,7 @@
- 1662
+ 1668
@@ -44492,7 +44654,7 @@
- 1663
+ 1669
@@ -44519,7 +44681,7 @@
- 1664
+ 1670
@@ -44546,7 +44708,7 @@
- 1665
+ 1671
@@ -44573,7 +44735,7 @@
- 1666
+ 1672
@@ -44600,7 +44762,7 @@
- 1667
+ 1673
@@ -44627,7 +44789,7 @@
- 1668
+ 1674
@@ -44654,7 +44816,7 @@
- 1669
+ 1675
@@ -44681,7 +44843,7 @@
- 1670
+ 1676
@@ -44708,7 +44870,7 @@
- 1671
+ 1677
@@ -44735,7 +44897,7 @@
- 1672
+ 1678
@@ -44762,7 +44924,7 @@
- 1673
+ 1679
@@ -44789,7 +44951,7 @@
- 1674
+ 1680
@@ -44816,7 +44978,7 @@
- 1675
+ 1681
@@ -44843,7 +45005,7 @@
- 1676
+ 1682
@@ -44870,7 +45032,7 @@
- 1677
+ 1683
@@ -44897,7 +45059,7 @@
- 1678
+ 1684
@@ -44924,7 +45086,7 @@
- 1679
+ 1685
@@ -44951,7 +45113,7 @@
- 1680
+ 1686
@@ -44978,7 +45140,7 @@
- 1681
+ 1687
@@ -45005,7 +45167,7 @@
- 1682
+ 1688
@@ -45032,7 +45194,7 @@
- 1683
+ 1689
@@ -45059,7 +45221,7 @@
- 1684
+ 1690
@@ -45086,7 +45248,7 @@
- 1685
+ 1691
@@ -45113,7 +45275,7 @@
- 1686
+ 1692
@@ -45140,7 +45302,7 @@
- 1687
+ 1693
@@ -45167,7 +45329,7 @@
- 1688
+ 1694
@@ -45194,7 +45356,7 @@
- 1689
+ 1695
@@ -45221,7 +45383,7 @@
- 1690
+ 1696
@@ -45248,7 +45410,7 @@
- 1691
+ 1697
@@ -45275,7 +45437,7 @@
- 1692
+ 1698
@@ -45302,7 +45464,7 @@
- 1693
+ 1699
@@ -45329,7 +45491,7 @@
- 1694
+ 1700
@@ -45356,7 +45518,7 @@
- 1695
+ 1701
@@ -45383,7 +45545,7 @@
- 1696
+ 1702
@@ -45410,7 +45572,7 @@
- 1697
+ 1703
@@ -45437,7 +45599,7 @@
- 1698
+ 1704
@@ -45464,7 +45626,7 @@
- 1699
+ 1705
@@ -45491,7 +45653,7 @@
- 1700
+ 1706
@@ -45518,7 +45680,7 @@
- 1701
+ 1707
@@ -45545,7 +45707,7 @@
- 1702
+ 1708
@@ -45572,7 +45734,7 @@
- 1703
+ 1709
@@ -45599,7 +45761,7 @@
- 1704
+ 1710
@@ -45626,7 +45788,7 @@
- 1705
+ 1711
@@ -45653,7 +45815,7 @@
- 1706
+ 1712
@@ -45680,7 +45842,7 @@
- 1707
+ 1713
@@ -45707,7 +45869,7 @@
- 1708
+ 1714
@@ -45734,7 +45896,7 @@
- 1709
+ 1715
@@ -45761,7 +45923,7 @@
- 1710
+ 1716
@@ -45788,7 +45950,7 @@
- 1711
+ 1717
@@ -45815,7 +45977,7 @@
- 1712
+ 1718
@@ -45842,7 +46004,7 @@
- 1713
+ 1719
@@ -45869,7 +46031,7 @@
- 1714
+ 1720
@@ -45896,7 +46058,7 @@
- 1715
+ 1721
@@ -45923,7 +46085,7 @@
- 1716
+ 1722
@@ -45950,7 +46112,7 @@
- 1717
+ 1723
@@ -45977,7 +46139,7 @@
- 1718
+ 1724
@@ -46004,7 +46166,7 @@
- 1719
+ 1725
@@ -46031,7 +46193,7 @@
- 1720
+ 1726
@@ -46058,7 +46220,7 @@
- 1721
+ 1727
@@ -46085,7 +46247,7 @@
- 1722
+ 1728
@@ -46112,7 +46274,7 @@
- 1723
+ 1729
@@ -46139,7 +46301,7 @@
- 1724
+ 1730
@@ -46166,7 +46328,7 @@
- 1725
+ 1731
@@ -46193,7 +46355,7 @@
- 1726
+ 1732
@@ -46220,7 +46382,7 @@
- 1727
+ 1733
@@ -46247,7 +46409,7 @@
- 1728
+ 1734
@@ -46274,7 +46436,7 @@
- 1729
+ 1735
@@ -46301,7 +46463,7 @@
- 1730
+ 1736
@@ -46328,7 +46490,7 @@
- 1731
+ 1737
@@ -46355,7 +46517,7 @@
- 1732
+ 1738
@@ -46382,7 +46544,7 @@
- 1733
+ 1739
@@ -46409,7 +46571,7 @@
- 1734
+ 1740
@@ -46436,7 +46598,7 @@
- 1735
+ 1741
@@ -46463,7 +46625,7 @@
- 1736
+ 1742
@@ -46490,7 +46652,7 @@
- 1737
+ 1743
@@ -46517,7 +46679,7 @@
- 1738
+ 1744
@@ -46544,7 +46706,7 @@
- 1739
+ 1745
@@ -46571,7 +46733,7 @@
- 1740
+ 1746
@@ -46598,7 +46760,7 @@
- 1741
+ 1747
@@ -46625,7 +46787,7 @@
- 1742
+ 1748
@@ -46652,7 +46814,7 @@
- 1743
+ 1749
@@ -46679,7 +46841,7 @@
- 1744
+ 1750
@@ -46706,7 +46868,7 @@
- 1745
+ 1751
@@ -46733,7 +46895,7 @@
- 1746
+ 1752
@@ -46760,7 +46922,7 @@
- 1747
+ 1753
@@ -46787,7 +46949,7 @@
- 1748
+ 1754
@@ -46814,7 +46976,7 @@
- 1749
+ 1755
@@ -46841,7 +47003,7 @@
- 1750
+ 1756
@@ -46868,7 +47030,7 @@
- 1751
+ 1757
@@ -46895,7 +47057,7 @@
- 1752
+ 1758
@@ -46922,7 +47084,7 @@
- 1753
+ 1759
@@ -46949,7 +47111,7 @@
- 1754
+ 1760
@@ -46976,7 +47138,7 @@
- 1755
+ 1761
@@ -47003,7 +47165,7 @@
- 1756
+ 1762
@@ -47030,7 +47192,7 @@
- 1757
+ 1763
@@ -47057,7 +47219,7 @@
- 1758
+ 1764
@@ -47084,7 +47246,7 @@
- 1759
+ 1765
@@ -47111,7 +47273,7 @@
- 1760
+ 1766
@@ -47138,7 +47300,7 @@
- 1761
+ 1767
@@ -47165,7 +47327,7 @@
- 1762
+ 1768
@@ -47192,7 +47354,7 @@
- 1763
+ 1769
@@ -47219,7 +47381,7 @@
- 1764
+ 1770
@@ -47246,7 +47408,7 @@
- 1765
+ 1771
@@ -47273,7 +47435,7 @@
- 1766
+ 1772
@@ -47300,7 +47462,7 @@
- 1767
+ 1773
@@ -47327,7 +47489,7 @@
- 1768
+ 1774
@@ -47354,7 +47516,7 @@
- 1769
+ 1775
@@ -47381,7 +47543,7 @@
- 1770
+ 1776
@@ -47408,7 +47570,7 @@
- 1771
+ 1777
@@ -47435,7 +47597,7 @@
- 1772
+ 1778
@@ -47462,7 +47624,7 @@
- 1773
+ 1779
@@ -47489,7 +47651,7 @@
- 1774
+ 1780
@@ -47516,7 +47678,7 @@
- 1775
+ 1781
@@ -47543,7 +47705,7 @@
- 1776
+ 1782
@@ -47570,7 +47732,7 @@
- 1777
+ 1783
@@ -47597,7 +47759,7 @@
- 1778
+ 1784
@@ -47624,7 +47786,7 @@
- 1779
+ 1785
@@ -47651,7 +47813,7 @@
- 1780
+ 1786
@@ -47678,7 +47840,7 @@
- 1781
+ 1787
@@ -47705,7 +47867,7 @@
- 1782
+ 1788
@@ -47732,7 +47894,7 @@
- 1783
+ 1789
@@ -47759,7 +47921,7 @@
- 1784
+ 1790
@@ -47786,7 +47948,7 @@
- 1785
+ 1791
@@ -47813,7 +47975,7 @@
- 1786
+ 1792
@@ -47840,7 +48002,7 @@
- 1787
+ 1793
@@ -47867,7 +48029,7 @@
- 1788
+ 1794
@@ -47894,7 +48056,7 @@
- 1789
+ 1795
@@ -47921,7 +48083,7 @@
- 1790
+ 1796
@@ -47948,7 +48110,7 @@
- 1791
+ 1797
@@ -47975,7 +48137,7 @@
- 1792
+ 1798
@@ -48002,7 +48164,7 @@
- 1793
+ 1799
@@ -48029,7 +48191,7 @@
- 1794
+ 1800
@@ -48056,7 +48218,7 @@
- 1795
+ 1801
@@ -48083,7 +48245,7 @@
- 1796
+ 1802
@@ -48110,7 +48272,7 @@
- 1797
+ 1803
@@ -48137,7 +48299,7 @@
- 1798
+ 1804
@@ -48164,7 +48326,7 @@
- 1799
+ 1805
@@ -48191,7 +48353,7 @@
- 1800
+ 1806
@@ -48218,7 +48380,7 @@
- 1801
+ 1807
@@ -48245,7 +48407,7 @@
- 1802
+ 1808
@@ -48272,7 +48434,7 @@
- 1803
+ 1809
@@ -48299,7 +48461,7 @@
- 1804
+ 1810
@@ -48326,7 +48488,7 @@
- 1805
+ 1811
@@ -48353,7 +48515,7 @@
- 1806
+ 1812
@@ -48380,7 +48542,7 @@
- 1807
+ 1813
@@ -48407,7 +48569,7 @@
- 1808
+ 1814
@@ -48434,7 +48596,7 @@
- 1809
+ 1815
@@ -48461,7 +48623,7 @@
- 1810
+ 1816
@@ -48488,7 +48650,7 @@
- 1811
+ 1817
@@ -48515,7 +48677,7 @@
- 1812
+ 1818
@@ -48542,7 +48704,7 @@
- 1813
+ 1819
@@ -48569,7 +48731,7 @@
- 1814
+ 1820
@@ -48596,7 +48758,7 @@
- 1815
+ 1821
@@ -48623,7 +48785,7 @@
- 1816
+ 1822
@@ -48650,7 +48812,7 @@
- 1817
+ 1823
@@ -48677,7 +48839,7 @@
- 1818
+ 1824
@@ -48704,7 +48866,7 @@
- 1819
+ 1825
@@ -48731,7 +48893,7 @@
- 1820
+ 1826
@@ -48758,7 +48920,7 @@
- 1821
+ 1827
@@ -48785,7 +48947,7 @@
- 1822
+ 1828
@@ -48812,7 +48974,7 @@
- 1823
+ 1829
@@ -48839,7 +49001,7 @@
- 1824
+ 1830
@@ -48866,7 +49028,7 @@
- 1825
+ 1831
@@ -48893,7 +49055,7 @@
- 1826
+ 1832
@@ -48920,7 +49082,7 @@
- 1827
+ 1833
@@ -48947,7 +49109,7 @@
- 1828
+ 1834
@@ -48974,7 +49136,7 @@
- 1829
+ 1835
@@ -49001,7 +49163,7 @@
- 1830
+ 1836
@@ -49028,7 +49190,7 @@
- 1831
+ 1837
@@ -49055,7 +49217,7 @@
- 1832
+ 1838
@@ -49082,7 +49244,7 @@
- 1833
+ 1839
@@ -49109,7 +49271,7 @@
- 1834
+ 1840
@@ -49136,7 +49298,7 @@
- 1835
+ 1841
@@ -49163,7 +49325,7 @@
- 1836
+ 1842
@@ -49190,7 +49352,7 @@
- 1837
+ 1843
@@ -49217,7 +49379,7 @@
- 1838
+ 1844
@@ -49244,7 +49406,7 @@
- 1839
+ 1845
@@ -49271,7 +49433,7 @@
- 1840
+ 1846
@@ -49298,7 +49460,7 @@
- 1841
+ 1847
@@ -49325,7 +49487,7 @@
- 1842
+ 1848
@@ -49352,7 +49514,7 @@
- 1843
+ 1849
@@ -49379,7 +49541,7 @@
- 1844
+ 1850
@@ -49406,7 +49568,7 @@
- 1845
+ 1851
@@ -49433,7 +49595,7 @@
- 1846
+ 1852
@@ -49460,7 +49622,7 @@
- 1847
+ 1853
@@ -49487,7 +49649,7 @@
- 1848
+ 1854
@@ -49514,7 +49676,7 @@
- 1849
+ 1855
@@ -49541,7 +49703,7 @@
- 1850
+ 1856
@@ -49568,7 +49730,7 @@
- 1851
+ 1857
@@ -49595,7 +49757,7 @@
- 1852
+ 1858
@@ -49622,7 +49784,7 @@
- 1853
+ 1859
@@ -49649,7 +49811,7 @@
- 1854
+ 1860
@@ -49676,7 +49838,7 @@
- 1855
+ 1861
@@ -49703,7 +49865,7 @@
- 1856
+ 1862
@@ -49730,7 +49892,7 @@
- 1857
+ 1863
@@ -49757,7 +49919,7 @@
- 1858
+ 1864
@@ -49784,7 +49946,7 @@
- 1859
+ 1865
@@ -49811,7 +49973,7 @@
- 1860
+ 1866
@@ -49838,7 +50000,7 @@
- 1861
+ 1867
@@ -49865,7 +50027,7 @@
- 1862
+ 1868
@@ -49892,7 +50054,7 @@
- 1863
+ 1869
@@ -49919,7 +50081,7 @@
- 1864
+ 1870
@@ -49946,7 +50108,7 @@
- 1865
+ 1871
@@ -49973,7 +50135,7 @@
- 1866
+ 1872
@@ -50000,7 +50162,7 @@
- 1867
+ 1873
@@ -50027,7 +50189,7 @@
- 1868
+ 1874
@@ -50054,7 +50216,7 @@
- 1869
+ 1875
@@ -50081,7 +50243,7 @@
- 1870
+ 1876
@@ -50108,7 +50270,7 @@
- 1871
+ 1877
@@ -50135,7 +50297,7 @@
- 1872
+ 1878
@@ -50162,7 +50324,7 @@
- 1873
+ 1879
@@ -50189,7 +50351,7 @@
- 1874
+ 1880
@@ -50216,7 +50378,7 @@
- 1875
+ 1881
@@ -50243,7 +50405,7 @@
- 1876
+ 1882
@@ -50270,7 +50432,7 @@
- 1877
+ 1883
@@ -50297,7 +50459,7 @@
- 1878
+ 1884
@@ -50324,7 +50486,7 @@
- 1879
+ 1885
@@ -50339,7 +50501,7 @@
- 1880
+ 1886
@@ -50366,7 +50528,7 @@
- 1881
+ 1887
@@ -50393,7 +50555,7 @@
- 1882
+ 1888
@@ -50420,7 +50582,7 @@
- 1883
+ 1889
@@ -50447,7 +50609,7 @@
- 1884
+ 1890
@@ -50474,7 +50636,7 @@
- 1885
+ 1891
@@ -50501,7 +50663,7 @@
- 1886
+ 1892
@@ -50528,7 +50690,7 @@
- 1887
+ 1893
@@ -50555,7 +50717,7 @@
- 1888
+ 1894
@@ -50582,7 +50744,7 @@
- 1889
+ 1895
@@ -50609,7 +50771,7 @@
- 1890
+ 1896
@@ -50636,7 +50798,7 @@
- 1891
+ 1897
@@ -50663,7 +50825,7 @@
- 1892
+ 1898
@@ -50690,7 +50852,7 @@
- 1893
+ 1899
@@ -50717,7 +50879,7 @@
- 1894
+ 1900
@@ -50744,7 +50906,7 @@
- 1895
+ 1901
@@ -50771,7 +50933,7 @@
- 1896
+ 1902
@@ -50798,7 +50960,7 @@
- 1897
+ 1903
@@ -50825,7 +50987,7 @@
- 1898
+ 1904
@@ -50852,7 +51014,7 @@
- 1899
+ 1905
@@ -50879,7 +51041,7 @@
- 1900
+ 1906
@@ -50906,7 +51068,7 @@
- 1901
+ 1907
@@ -50933,7 +51095,7 @@
- 1902
+ 1908
@@ -50960,7 +51122,7 @@
- 1903
+ 1909
@@ -50987,7 +51149,7 @@
- 1904
+ 1910
@@ -51014,7 +51176,7 @@
- 1905
+ 1911
@@ -51041,7 +51203,7 @@
- 1906
+ 1912
@@ -51068,7 +51230,7 @@
- 1907
+ 1913
@@ -51095,7 +51257,7 @@
- 1908
+ 1914
1
@@ -51106,7 +51268,7 @@
- 1909
+ 1915
@@ -51133,7 +51295,7 @@
- 1910
+ 1916
@@ -51160,7 +51322,7 @@
- 1911
+ 1917
@@ -51187,7 +51349,7 @@
- 1912
+ 1918
@@ -51214,7 +51376,7 @@
- 1913
+ 1919
@@ -51241,7 +51403,7 @@
- 1914
+ 1920
@@ -51268,7 +51430,7 @@
- 1915
+ 1921
@@ -51295,7 +51457,7 @@
- 1916
+ 1922
@@ -51322,7 +51484,7 @@
- 1917
+ 1923
@@ -51349,7 +51511,7 @@
- 1918
+ 1924
@@ -51376,7 +51538,7 @@
- 1919
+ 1925
@@ -51403,7 +51565,7 @@
- 1920
+ 1926
@@ -51430,7 +51592,7 @@
- 1921
+ 1927
@@ -51457,7 +51619,7 @@
- 1922
+ 1928
@@ -51484,7 +51646,7 @@
- 1923
+ 1929
@@ -51511,7 +51673,7 @@
- 1924
+ 1930
@@ -51538,7 +51700,7 @@
- 1925
+ 1931
@@ -51565,7 +51727,7 @@
- 1926
+ 1932
@@ -51592,7 +51754,7 @@
- 1927
+ 1933
@@ -51619,7 +51781,7 @@
- 1928
+ 1934
@@ -51646,7 +51808,7 @@
- 1929
+ 1935
@@ -51673,7 +51835,7 @@
- 1930
+ 1936
@@ -51700,7 +51862,7 @@
- 1931
+ 1937
@@ -51727,7 +51889,7 @@
- 1932
+ 1938
@@ -51754,7 +51916,7 @@
- 1933
+ 1939
@@ -51781,7 +51943,7 @@
- 1934
+ 1940
@@ -51808,7 +51970,7 @@
- 1935
+ 1941
@@ -51835,7 +51997,7 @@
- 1936
+ 1942
@@ -51862,7 +52024,7 @@
- 1937
+ 1943
@@ -51889,7 +52051,7 @@
- 1938
+ 1944
@@ -51916,7 +52078,7 @@
- 1939
+ 1945
@@ -51943,7 +52105,7 @@
- 1940
+ 1946
@@ -51970,7 +52132,7 @@
- 1941
+ 1947
@@ -51997,7 +52159,7 @@
- 1942
+ 1948
@@ -52024,7 +52186,7 @@
- 1943
+ 1949
@@ -52051,7 +52213,7 @@
- 1944
+ 1950
@@ -52078,7 +52240,7 @@
- 1945
+ 1951
@@ -52105,7 +52267,7 @@
- 1946
+ 1952
@@ -52132,7 +52294,7 @@
- 1947
+ 1953
@@ -52159,7 +52321,7 @@
- 1948
+ 1954
@@ -52186,7 +52348,7 @@
- 1949
+ 1955
@@ -52213,7 +52375,7 @@
- 1950
+ 1956
@@ -52240,7 +52402,7 @@
- 1951
+ 1957
@@ -52267,7 +52429,7 @@
- 1952
+ 1958
@@ -52294,7 +52456,7 @@
- 1953
+ 1959
@@ -52321,7 +52483,7 @@
- 1954
+ 1960
@@ -52348,7 +52510,7 @@
- 1955
+ 1961
@@ -52375,7 +52537,7 @@
- 1956
+ 1962
@@ -52402,7 +52564,7 @@
- 1957
+ 1963
@@ -52429,7 +52591,7 @@
- 1958
+ 1964
@@ -52456,7 +52618,7 @@
- 1959
+ 1965
@@ -52483,7 +52645,7 @@
- 1960
+ 1966
@@ -52510,7 +52672,7 @@
- 1961
+ 1967
@@ -52537,7 +52699,7 @@
- 1962
+ 1968
@@ -52564,7 +52726,7 @@
- 1963
+ 1969
@@ -52591,7 +52753,7 @@
- 1964
+ 1970
@@ -52618,7 +52780,7 @@
- 1965
+ 1971
@@ -52645,7 +52807,7 @@
- 1966
+ 1972
@@ -52672,7 +52834,7 @@
- 1967
+ 1973
@@ -52699,7 +52861,7 @@
- 1968
+ 1974
@@ -52726,7 +52888,7 @@
- 1969
+ 1975
@@ -52753,7 +52915,7 @@
- 1970
+ 1976
@@ -52780,7 +52942,7 @@
- 1971
+ 1977
@@ -52807,7 +52969,7 @@
- 1972
+ 1978
@@ -52834,7 +52996,7 @@
- 1973
+ 1979
@@ -52861,7 +53023,7 @@
- 1974
+ 1980
@@ -52888,7 +53050,7 @@
- 1975
+ 1981
@@ -52915,7 +53077,7 @@
- 1976
+ 1982
@@ -52942,7 +53104,7 @@
- 1977
+ 1983
@@ -52969,7 +53131,7 @@
- 1978
+ 1984
@@ -52996,7 +53158,7 @@
- 1979
+ 1985
@@ -53023,7 +53185,7 @@
- 1980
+ 1986
@@ -53050,7 +53212,7 @@
- 1981
+ 1987
@@ -53077,7 +53239,7 @@
- 1982
+ 1988
@@ -53104,7 +53266,7 @@
- 1983
+ 1989
@@ -53131,7 +53293,7 @@
- 1984
+ 1990
@@ -53158,7 +53320,7 @@
- 1985
+ 1991
@@ -53185,7 +53347,7 @@
- 1986
+ 1992
@@ -53212,7 +53374,7 @@
- 1987
+ 1993
@@ -53239,7 +53401,7 @@
- 1988
+ 1994
@@ -53266,7 +53428,7 @@
- 1989
+ 1995
@@ -53293,7 +53455,7 @@
- 1990
+ 1996
@@ -53320,7 +53482,7 @@
- 1991
+ 1997
@@ -53347,7 +53509,7 @@
- 1992
+ 1998
@@ -53374,7 +53536,7 @@
- 1993
+ 1999
@@ -53401,7 +53563,7 @@
- 1994
+ 2000
@@ -53428,7 +53590,7 @@
- 1995
+ 2001
@@ -53455,7 +53617,7 @@
- 1996
+ 2002
@@ -53482,7 +53644,7 @@
- 1997
+ 2003
@@ -53509,7 +53671,7 @@
- 1998
+ 2004
@@ -53536,7 +53698,7 @@
- 1999
+ 2005
@@ -53563,7 +53725,7 @@
- 2000
+ 2006
@@ -53590,7 +53752,7 @@
- 2001
+ 2007
@@ -53617,7 +53779,7 @@
- 2002
+ 2008
@@ -53644,7 +53806,7 @@
- 2003
+ 2009
@@ -53671,7 +53833,7 @@
- 2004
+ 2010
@@ -53698,7 +53860,7 @@
- 2005
+ 2011
@@ -53725,7 +53887,7 @@
- 2006
+ 2012
@@ -53752,7 +53914,7 @@
- 2007
+ 2013
@@ -53779,7 +53941,7 @@
- 2008
+ 2014
@@ -53806,7 +53968,7 @@
- 2009
+ 2015
@@ -53833,7 +53995,7 @@
- 2010
+ 2016
@@ -53860,7 +54022,7 @@
- 2011
+ 2017
@@ -53887,7 +54049,7 @@
- 2012
+ 2018
@@ -53914,7 +54076,7 @@
- 2013
+ 2019
@@ -53941,7 +54103,7 @@
- 2014
+ 2020
@@ -53968,7 +54130,7 @@
- 2015
+ 2021
@@ -53995,7 +54157,7 @@
- 2016
+ 2022
@@ -54022,7 +54184,7 @@
- 2017
+ 2023
@@ -54049,7 +54211,7 @@
- 2018
+ 2024
@@ -54076,7 +54238,7 @@
- 2019
+ 2025
@@ -54103,7 +54265,7 @@
- 2020
+ 2026
@@ -54130,7 +54292,7 @@
- 2021
+ 2027
@@ -54157,7 +54319,7 @@
- 2022
+ 2028
@@ -54184,7 +54346,7 @@
- 2023
+ 2029
@@ -54211,7 +54373,7 @@
- 2024
+ 2030
@@ -54238,7 +54400,7 @@
- 2025
+ 2031
@@ -54265,7 +54427,7 @@
- 2026
+ 2032
@@ -54292,7 +54454,7 @@
- 2027
+ 2033
@@ -54319,7 +54481,7 @@
- 2028
+ 2034
@@ -54346,7 +54508,7 @@
- 2029
+ 2035
@@ -54373,7 +54535,7 @@
- 2030
+ 2036
@@ -54400,7 +54562,7 @@
- 2031
+ 2037
@@ -54427,7 +54589,7 @@
- 2032
+ 2038
@@ -54454,7 +54616,7 @@
- 2033
+ 2039
@@ -54481,7 +54643,7 @@
- 2034
+ 2040
@@ -54508,7 +54670,7 @@
- 2035
+ 2041
@@ -54535,7 +54697,7 @@
- 2036
+ 2042
@@ -54562,7 +54724,7 @@
- 2037
+ 2043
@@ -54589,7 +54751,7 @@
- 2038
+ 2044
@@ -54616,7 +54778,7 @@
- 2039
+ 2045
@@ -54643,7 +54805,7 @@
- 2040
+ 2046
@@ -54670,7 +54832,7 @@
- 2041
+ 2047
@@ -54697,7 +54859,7 @@
- 2042
+ 2048
@@ -54724,7 +54886,7 @@
- 2043
+ 2049
@@ -54751,7 +54913,7 @@
- 2044
+ 2050
@@ -54778,7 +54940,7 @@
- 2045
+ 2051
@@ -54805,7 +54967,7 @@
- 2046
+ 2052
@@ -54832,7 +54994,7 @@
- 2047
+ 2053
@@ -54859,7 +55021,7 @@
- 2048
+ 2054
@@ -54886,7 +55048,7 @@
- 2049
+ 2055
@@ -54913,7 +55075,7 @@
- 2050
+ 2056
@@ -54940,7 +55102,7 @@
- 2051
+ 2057
@@ -54967,7 +55129,7 @@
- 2052
+ 2058
@@ -54994,7 +55156,7 @@
- 2053
+ 2059
@@ -55021,7 +55183,7 @@
- 2054
+ 2060
@@ -55048,7 +55210,7 @@
- 2055
+ 2061
@@ -55075,7 +55237,7 @@
- 2056
+ 2062
@@ -55102,7 +55264,7 @@
- 2057
+ 2063
@@ -55129,7 +55291,7 @@
- 2058
+ 2064
@@ -55156,7 +55318,7 @@
- 2059
+ 2065
@@ -55183,7 +55345,7 @@
- 2060
+ 2066
@@ -55210,7 +55372,7 @@
- 2061
+ 2067
@@ -55237,7 +55399,7 @@
- 2062
+ 2068
@@ -55264,7 +55426,7 @@
- 2063
+ 2069
@@ -55291,7 +55453,7 @@
- 2064
+ 2070
@@ -55318,7 +55480,7 @@
- 2065
+ 2071
@@ -55345,7 +55507,7 @@
- 2066
+ 2072
@@ -55372,7 +55534,7 @@
- 2067
+ 2073
@@ -55399,7 +55561,7 @@
- 2068
+ 2074
@@ -55426,7 +55588,7 @@
- 2069
+ 2075
@@ -55453,7 +55615,7 @@
- 2070
+ 2076
@@ -55480,7 +55642,7 @@
- 2071
+ 2077
@@ -55507,7 +55669,7 @@
- 2072
+ 2078
@@ -55534,7 +55696,7 @@
- 2073
+ 2079
@@ -55561,7 +55723,7 @@
- 2074
+ 2080
@@ -55588,7 +55750,7 @@
- 2075
+ 2081
@@ -55615,7 +55777,7 @@
- 2076
+ 2082
@@ -55642,7 +55804,7 @@
- 2077
+ 2083
@@ -55669,7 +55831,7 @@
- 2078
+ 2084
@@ -55696,7 +55858,7 @@
- 2079
+ 2085
@@ -55723,7 +55885,7 @@
- 2080
+ 2086
@@ -55750,7 +55912,7 @@
- 2081
+ 2087
@@ -55777,7 +55939,7 @@
- 2082
+ 2088
@@ -55804,7 +55966,7 @@
- 2083
+ 2089
@@ -55831,7 +55993,7 @@
- 2084
+ 2090
@@ -55858,7 +56020,7 @@
- 2085
+ 2091
@@ -55885,7 +56047,7 @@
- 2086
+ 2092
@@ -55912,7 +56074,7 @@
- 2087
+ 2093
@@ -55939,7 +56101,7 @@
- 2088
+ 2094
@@ -55966,7 +56128,7 @@
- 2089
+ 2095
@@ -55993,7 +56155,7 @@
- 2090
+ 2096
@@ -56020,7 +56182,7 @@
- 2091
+ 2097
@@ -56047,7 +56209,7 @@
- 2092
+ 2098
@@ -56074,7 +56236,7 @@
- 2093
+ 2099
@@ -56101,7 +56263,7 @@
- 2094
+ 2100
@@ -56128,7 +56290,7 @@
- 2095
+ 2101
@@ -56155,7 +56317,7 @@
- 2096
+ 2102
@@ -56182,7 +56344,7 @@
- 2097
+ 2103
@@ -56209,7 +56371,7 @@
- 2098
+ 2104
@@ -56236,7 +56398,7 @@
- 2099
+ 2105
@@ -56263,7 +56425,7 @@
- 2100
+ 2106
@@ -56290,7 +56452,7 @@
- 2101
+ 2107
@@ -56317,7 +56479,7 @@
- 2102
+ 2108
@@ -56344,7 +56506,7 @@
- 2103
+ 2109
@@ -56371,7 +56533,7 @@
- 2104
+ 2110
@@ -56398,7 +56560,7 @@
- 2105
+ 2111
@@ -56425,7 +56587,7 @@
- 2106
+ 2112
@@ -56452,7 +56614,7 @@
- 2107
+ 2113
@@ -56479,7 +56641,7 @@
- 2108
+ 2114
@@ -56506,7 +56668,7 @@
- 2109
+ 2115
@@ -56533,7 +56695,7 @@
- 2110
+ 2116
@@ -56560,7 +56722,7 @@
- 2111
+ 2117
@@ -56587,7 +56749,7 @@
- 2112
+ 2118
@@ -56614,7 +56776,7 @@
- 2113
+ 2119
@@ -56641,7 +56803,7 @@
- 2114
+ 2120
@@ -56668,7 +56830,7 @@
- 2115
+ 2121
@@ -56695,7 +56857,7 @@
- 2116
+ 2122
@@ -56722,7 +56884,7 @@
- 2117
+ 2123
@@ -56749,7 +56911,7 @@
- 2118
+ 2124
@@ -56776,7 +56938,7 @@
- 2119
+ 2125
@@ -56803,7 +56965,7 @@
- 2120
+ 2126
@@ -56830,7 +56992,7 @@
- 2121
+ 2127
@@ -56857,7 +57019,7 @@
- 2122
+ 2128
1
@@ -56868,7 +57030,7 @@
- 2123
+ 2129
@@ -56895,7 +57057,7 @@
- 2124
+ 2130
@@ -56922,7 +57084,7 @@
- 2125
+ 2131
@@ -56949,7 +57111,7 @@
- 2126
+ 2132
@@ -56976,7 +57138,7 @@
- 2127
+ 2133
@@ -57003,7 +57165,7 @@
- 2128
+ 2134
@@ -57030,7 +57192,7 @@
- 2129
+ 2135
@@ -57057,13 +57219,13 @@
- 2130
+ 2136
true
- 2131
+ 2137
@@ -57090,7 +57252,7 @@
- 2132
+ 2138
@@ -57117,7 +57279,7 @@
- 2133
+ 2139
@@ -57144,7 +57306,7 @@
- 2134
+ 2140
@@ -57171,7 +57333,7 @@
- 2135
+ 2141
@@ -57198,7 +57360,7 @@
- 2136
+ 2142
@@ -57225,7 +57387,7 @@
- 2137
+ 2143
@@ -57252,7 +57414,7 @@
- 2138
+ 2144
@@ -57279,7 +57441,7 @@
- 2139
+ 2145
@@ -57306,7 +57468,7 @@
- 2140
+ 2146
@@ -57333,7 +57495,7 @@
- 2141
+ 2147
@@ -57360,7 +57522,7 @@
- 2142
+ 2148
@@ -57387,7 +57549,7 @@
- 2143
+ 2149
@@ -57414,7 +57576,7 @@
- 2144
+ 2150
@@ -57441,7 +57603,7 @@
- 2145
+ 2151
@@ -57468,7 +57630,7 @@
- 2146
+ 2152
@@ -57495,7 +57657,7 @@
- 2147
+ 2153
@@ -57522,7 +57684,7 @@
- 2148
+ 2154
@@ -57549,7 +57711,7 @@
- 2149
+ 2155
@@ -57576,7 +57738,7 @@
- 2150
+ 2156
@@ -57603,7 +57765,7 @@
- 2151
+ 2157
@@ -57630,7 +57792,7 @@
- 2152
+ 2158
@@ -57657,7 +57819,7 @@
- 2153
+ 2159
@@ -57684,7 +57846,7 @@
- 2154
+ 2160
@@ -57711,7 +57873,7 @@
- 2155
+ 2161
@@ -57738,7 +57900,7 @@
- 2156
+ 2162
@@ -57765,7 +57927,7 @@
- 2157
+ 2163
@@ -57792,7 +57954,7 @@
- 2158
+ 2164
@@ -57819,7 +57981,7 @@
- 2159
+ 2165
@@ -57846,7 +58008,7 @@
- 2160
+ 2166
@@ -57873,7 +58035,7 @@
- 2161
+ 2167
@@ -57900,7 +58062,7 @@
- 2162
+ 2168
@@ -57927,7 +58089,7 @@
- 2163
+ 2169
@@ -57954,7 +58116,7 @@
- 2164
+ 2170
@@ -57981,7 +58143,7 @@
- 2165
+ 2171
@@ -58008,7 +58170,7 @@
- 2166
+ 2172
@@ -58035,7 +58197,7 @@
- 2167
+ 2173
@@ -58062,7 +58224,7 @@
- 2168
+ 2174
@@ -58089,7 +58251,7 @@
- 2169
+ 2175
@@ -58116,7 +58278,7 @@
- 2170
+ 2176
@@ -58143,13 +58305,13 @@
- 2171
+ 2177
true
- 2172
+ 2178
@@ -58176,7 +58338,7 @@
- 2173
+ 2179
@@ -58203,7 +58365,7 @@
- 2174
+ 2180
@@ -58230,7 +58392,7 @@
- 2175
+ 2181
@@ -58257,7 +58419,7 @@
- 2176
+ 2182
@@ -58284,7 +58446,7 @@
- 2177
+ 2183
@@ -58311,7 +58473,7 @@
- 2178
+ 2184
@@ -58338,7 +58500,7 @@
- 2179
+ 2185
@@ -58365,7 +58527,7 @@
- 2180
+ 2186
@@ -58392,7 +58554,7 @@
- 2181
+ 2187
@@ -58419,7 +58581,7 @@
- 2182
+ 2188
@@ -58446,7 +58608,7 @@
- 2183
+ 2189
@@ -58473,7 +58635,7 @@
- 2184
+ 2190
@@ -58500,7 +58662,7 @@
- 2185
+ 2191
@@ -58527,7 +58689,7 @@
- 2186
+ 2192
@@ -58554,7 +58716,7 @@
- 2187
+ 2193
@@ -58581,7 +58743,7 @@
- 2188
+ 2194
@@ -58608,7 +58770,7 @@
- 2189
+ 2195
@@ -58635,7 +58797,7 @@
- 2190
+ 2196
@@ -58662,7 +58824,7 @@
- 2191
+ 2197
@@ -58689,7 +58851,7 @@
- 2192
+ 2198
@@ -58716,7 +58878,7 @@
- 2193
+ 2199
@@ -58743,7 +58905,7 @@
- 2194
+ 2200
@@ -58770,7 +58932,7 @@
- 2195
+ 2201
@@ -58797,7 +58959,7 @@
- 2196
+ 2202
@@ -58824,7 +58986,7 @@
- 2197
+ 2203
@@ -58851,7 +59013,7 @@
- 2198
+ 2204
@@ -58878,13 +59040,13 @@
- 2199
+ 2205
true
- 2200
+ 2206
@@ -58911,7 +59073,7 @@
- 2201
+ 2207
@@ -58938,7 +59100,7 @@
- 2202
+ 2208
@@ -58965,7 +59127,7 @@
- 2203
+ 2209
@@ -58992,7 +59154,7 @@
- 2204
+ 2210
@@ -59019,7 +59181,7 @@
- 2205
+ 2211
@@ -59046,7 +59208,7 @@
- 2206
+ 2212
@@ -59073,7 +59235,7 @@
- 2207
+ 2213
@@ -59100,7 +59262,7 @@
- 2208
+ 2214
@@ -59127,7 +59289,7 @@
- 2209
+ 2215
@@ -59154,7 +59316,7 @@
- 2210
+ 2216
@@ -59181,7 +59343,7 @@
- 2211
+ 2217
@@ -59208,7 +59370,7 @@
- 2212
+ 2218
@@ -59235,7 +59397,7 @@
- 2213
+ 2219
@@ -59262,7 +59424,7 @@
- 2214
+ 2220
@@ -59289,7 +59451,7 @@
- 2215
+ 2221
@@ -59316,7 +59478,7 @@
- 2216
+ 2222
@@ -59343,7 +59505,7 @@
- 2217
+ 2223
@@ -59370,7 +59532,7 @@
- 2218
+ 2224
@@ -59397,7 +59559,7 @@
- 2219
+ 2225
@@ -59424,7 +59586,7 @@
- 2220
+ 2226
@@ -59451,7 +59613,7 @@
- 2221
+ 2227
@@ -59478,7 +59640,7 @@
- 2222
+ 2228
@@ -59505,7 +59667,7 @@
- 2223
+ 2229
@@ -59532,7 +59694,7 @@
- 2224
+ 2230
@@ -59559,7 +59721,7 @@
- 2225
+ 2231
@@ -59586,7 +59748,7 @@
- 2226
+ 2232
@@ -59613,7 +59775,7 @@
- 2227
+ 2233
@@ -59640,7 +59802,7 @@
- 2228
+ 2234
@@ -59667,7 +59829,7 @@
- 2229
+ 2235
@@ -59694,7 +59856,7 @@
- 2230
+ 2236
@@ -59721,7 +59883,7 @@
- 2231
+ 2237
@@ -59748,7 +59910,7 @@
- 2232
+ 2238
@@ -59775,7 +59937,7 @@
- 2233
+ 2239
@@ -59802,7 +59964,7 @@
- 2234
+ 2240
@@ -59829,7 +59991,7 @@
- 2235
+ 2241
@@ -59856,7 +60018,7 @@
- 2236
+ 2242
@@ -59883,7 +60045,7 @@
- 2237
+ 2243
@@ -59910,7 +60072,7 @@
- 2238
+ 2244
@@ -59937,7 +60099,7 @@
- 2239
+ 2245
@@ -59964,7 +60126,7 @@
- 2240
+ 2246
@@ -59991,7 +60153,7 @@
- 2241
+ 2247
@@ -60018,7 +60180,7 @@
- 2242
+ 2248
@@ -60045,7 +60207,7 @@
- 2243
+ 2249
@@ -60072,7 +60234,7 @@
- 2244
+ 2250
@@ -60099,7 +60261,7 @@
- 2245
+ 2251
@@ -60126,7 +60288,7 @@
- 2246
+ 2252
@@ -60153,7 +60315,7 @@
- 2247
+ 2253
@@ -60180,7 +60342,7 @@
- 2248
+ 2254
@@ -60207,7 +60369,7 @@
- 2249
+ 2255
@@ -60234,7 +60396,7 @@
- 2250
+ 2256
@@ -60261,7 +60423,7 @@
- 2251
+ 2257
@@ -60288,7 +60450,7 @@
- 2252
+ 2258
@@ -60315,7 +60477,7 @@
- 2253
+ 2259
@@ -60342,7 +60504,7 @@
- 2254
+ 2260
@@ -60369,7 +60531,7 @@
- 2255
+ 2261
@@ -60396,7 +60558,7 @@
- 2256
+ 2262
@@ -60423,7 +60585,7 @@
- 2257
+ 2263
@@ -60450,7 +60612,7 @@
- 2258
+ 2264
@@ -60477,7 +60639,7 @@
- 2259
+ 2265
@@ -60504,7 +60666,7 @@
- 2260
+ 2266
@@ -60531,7 +60693,7 @@
- 2261
+ 2267
@@ -60558,7 +60720,7 @@
- 2262
+ 2268
@@ -60585,7 +60747,7 @@
- 2263
+ 2269
@@ -60612,7 +60774,7 @@
- 2264
+ 2270
@@ -60639,7 +60801,7 @@
- 2265
+ 2271
@@ -60666,7 +60828,7 @@
- 2266
+ 2272
@@ -60693,7 +60855,7 @@
- 2267
+ 2273
@@ -60720,13 +60882,13 @@
- 2268
+ 2274
true
- 2269
+ 2275
@@ -60753,7 +60915,7 @@
- 2270
+ 2276
@@ -60780,7 +60942,7 @@
- 2271
+ 2277
@@ -60807,7 +60969,7 @@
- 2272
+ 2278
@@ -60834,7 +60996,7 @@
- 2273
+ 2279
@@ -60861,7 +61023,7 @@
- 2274
+ 2280
@@ -60888,7 +61050,7 @@
- 2275
+ 2281
@@ -60915,7 +61077,7 @@
- 2276
+ 2282
@@ -60942,7 +61104,7 @@
- 2277
+ 2283
@@ -60969,7 +61131,7 @@
- 2278
+ 2284
@@ -60996,7 +61158,7 @@
- 2279
+ 2285
@@ -61023,7 +61185,7 @@
- 2280
+ 2286
@@ -61050,7 +61212,7 @@
- 2281
+ 2287
@@ -61077,7 +61239,7 @@
- 2282
+ 2288
@@ -61104,7 +61266,7 @@
- 2283
+ 2289
@@ -61131,7 +61293,7 @@
- 2284
+ 2290
@@ -61158,7 +61320,7 @@
- 2285
+ 2291
@@ -61185,7 +61347,7 @@
- 2286
+ 2292
@@ -61212,7 +61374,7 @@
- 2287
+ 2293
@@ -61239,7 +61401,7 @@
- 2288
+ 2294
@@ -61266,7 +61428,7 @@
- 2289
+ 2295
@@ -61293,7 +61455,7 @@
- 2290
+ 2296
@@ -61320,7 +61482,7 @@
- 2291
+ 2297
@@ -61347,7 +61509,7 @@
- 2292
+ 2298
@@ -61374,7 +61536,7 @@
- 2293
+ 2299
@@ -61401,7 +61563,7 @@
- 2294
+ 2300
@@ -61428,7 +61590,7 @@
- 2295
+ 2301
@@ -61455,7 +61617,7 @@
- 2296
+ 2302
@@ -61482,7 +61644,7 @@
- 2297
+ 2303
@@ -61509,7 +61671,7 @@
- 2298
+ 2304
@@ -61536,7 +61698,7 @@
- 2299
+ 2305
@@ -61563,7 +61725,7 @@
- 2300
+ 2306
@@ -61590,7 +61752,7 @@
- 2301
+ 2307
@@ -61617,7 +61779,7 @@
- 2302
+ 2308
@@ -61644,7 +61806,7 @@
- 2303
+ 2309
@@ -61671,7 +61833,7 @@
- 2304
+ 2310
@@ -61698,7 +61860,7 @@
- 2305
+ 2311
@@ -61725,7 +61887,7 @@
- 2306
+ 2312
@@ -61752,7 +61914,7 @@
- 2307
+ 2313
@@ -61779,7 +61941,7 @@
- 2308
+ 2314
@@ -61806,7 +61968,7 @@
- 2309
+ 2315
@@ -61833,7 +61995,7 @@
- 2310
+ 2316
@@ -61860,7 +62022,7 @@
- 2311
+ 2317
@@ -61887,7 +62049,7 @@
- 2312
+ 2318
@@ -61914,7 +62076,7 @@
- 2313
+ 2319
@@ -61941,7 +62103,7 @@
- 2314
+ 2320
@@ -61968,7 +62130,7 @@
- 2315
+ 2321
@@ -61995,7 +62157,7 @@
- 2316
+ 2322
@@ -62022,7 +62184,7 @@
- 2317
+ 2323
@@ -62049,7 +62211,7 @@
- 2318
+ 2324
@@ -62076,7 +62238,7 @@
- 2319
+ 2325
@@ -62103,7 +62265,7 @@
- 2320
+ 2326
@@ -62130,7 +62292,7 @@
- 2321
+ 2327
@@ -62157,7 +62319,7 @@
- 2322
+ 2328
@@ -62184,7 +62346,7 @@
- 2323
+ 2329
@@ -62211,7 +62373,7 @@
- 2324
+ 2330
@@ -62238,7 +62400,7 @@
- 2325
+ 2331
@@ -62265,7 +62427,7 @@
- 2326
+ 2332
@@ -62292,7 +62454,7 @@
- 2327
+ 2333
@@ -62319,7 +62481,7 @@
- 2328
+ 2334
@@ -62346,7 +62508,7 @@
- 2329
+ 2335
@@ -62373,7 +62535,7 @@
- 2330
+ 2336
@@ -62400,7 +62562,7 @@
- 2331
+ 2337
@@ -62427,7 +62589,7 @@
- 2332
+ 2338
@@ -62454,7 +62616,7 @@
- 2333
+ 2339
@@ -62481,7 +62643,7 @@
- 2334
+ 2340
@@ -62508,7 +62670,7 @@
- 2335
+ 2341
@@ -62535,7 +62697,7 @@
- 2336
+ 2342
@@ -62562,7 +62724,7 @@
- 2337
+ 2343
@@ -62589,7 +62751,7 @@
- 2338
+ 2344
@@ -62616,7 +62778,7 @@
- 2339
+ 2345
@@ -62643,7 +62805,7 @@
- 2340
+ 2346
@@ -62670,7 +62832,7 @@
- 2341
+ 2347
@@ -62697,7 +62859,7 @@
- 2342
+ 2348
@@ -62724,7 +62886,7 @@
- 2343
+ 2349
@@ -62751,7 +62913,7 @@
- 2344
+ 2350
@@ -62778,7 +62940,7 @@
- 2345
+ 2351
@@ -62805,7 +62967,7 @@
- 2346
+ 2352
@@ -62832,7 +62994,7 @@
- 2347
+ 2353
@@ -62859,7 +63021,7 @@
- 2348
+ 2354
@@ -62886,7 +63048,7 @@
- 2349
+ 2355
@@ -62913,7 +63075,7 @@
- 2350
+ 2356
@@ -62940,7 +63102,7 @@
- 2351
+ 2357
@@ -62967,7 +63129,7 @@
- 2352
+ 2358
@@ -62994,7 +63156,7 @@
- 2353
+ 2359
@@ -63021,7 +63183,7 @@
- 2354
+ 2360
@@ -63048,7 +63210,7 @@
- 2355
+ 2361
@@ -63075,7 +63237,7 @@
- 2356
+ 2362
@@ -63102,7 +63264,7 @@
- 2357
+ 2363
@@ -63129,7 +63291,7 @@
- 2358
+ 2364
@@ -63156,7 +63318,7 @@
- 2359
+ 2365
@@ -63183,7 +63345,7 @@
- 2360
+ 2366
@@ -63210,7 +63372,7 @@
- 2361
+ 2367
@@ -63237,7 +63399,7 @@
- 2362
+ 2368
@@ -63264,7 +63426,7 @@
- 2363
+ 2369
@@ -63291,7 +63453,7 @@
- 2364
+ 2370
@@ -63318,7 +63480,7 @@
- 2365
+ 2371
@@ -63345,7 +63507,7 @@
- 2366
+ 2372
@@ -63372,7 +63534,7 @@
- 2367
+ 2373
@@ -63399,7 +63561,7 @@
- 2368
+ 2374
@@ -63426,7 +63588,7 @@
- 2369
+ 2375
@@ -63453,7 +63615,7 @@
- 2370
+ 2376
@@ -63480,7 +63642,7 @@
- 2371
+ 2377
@@ -63507,7 +63669,7 @@
- 2372
+ 2378
@@ -63534,7 +63696,7 @@
- 2373
+ 2379
@@ -63561,7 +63723,7 @@
- 2374
+ 2380
@@ -63588,7 +63750,7 @@
- 2375
+ 2381
@@ -63615,7 +63777,7 @@
- 2376
+ 2382
@@ -63642,7 +63804,7 @@
- 2377
+ 2383
@@ -63669,7 +63831,7 @@
- 2378
+ 2384
@@ -63696,7 +63858,7 @@
- 2379
+ 2385
@@ -63723,7 +63885,7 @@
- 2380
+ 2386
@@ -63750,7 +63912,7 @@
- 2381
+ 2387
@@ -63777,7 +63939,7 @@
- 2382
+ 2388
@@ -63804,7 +63966,7 @@
- 2383
+ 2389
@@ -63831,7 +63993,7 @@
- 2384
+ 2390
@@ -63858,7 +64020,7 @@
- 2385
+ 2391
@@ -63885,7 +64047,7 @@
- 2386
+ 2392
@@ -63912,7 +64074,7 @@
- 2387
+ 2393
@@ -63939,7 +64101,7 @@
- 2388
+ 2394
@@ -63966,7 +64128,7 @@
- 2389
+ 2395
@@ -63993,7 +64155,7 @@
- 2390
+ 2396
@@ -64020,7 +64182,7 @@
- 2391
+ 2397
@@ -64047,7 +64209,7 @@
- 2392
+ 2398
@@ -64074,7 +64236,7 @@
- 2393
+ 2399
@@ -64101,7 +64263,7 @@
- 2394
+ 2400
@@ -64128,7 +64290,7 @@
- 2395
+ 2401
@@ -64155,7 +64317,7 @@
- 2396
+ 2402
@@ -64182,7 +64344,7 @@
- 2397
+ 2403
@@ -64209,7 +64371,7 @@
- 2398
+ 2404
@@ -64236,7 +64398,7 @@
- 2399
+ 2405
@@ -64263,7 +64425,7 @@
- 2400
+ 2406
@@ -64290,7 +64452,7 @@
- 2401
+ 2407
@@ -64317,7 +64479,7 @@
- 2402
+ 2408
@@ -64344,7 +64506,7 @@
- 2403
+ 2409
@@ -64371,7 +64533,7 @@
- 2404
+ 2410
@@ -64398,7 +64560,7 @@
- 2405
+ 2411
@@ -64425,7 +64587,7 @@
- 2406
+ 2412
@@ -64452,7 +64614,7 @@
- 2407
+ 2413
@@ -64479,7 +64641,7 @@
- 2408
+ 2414
@@ -64506,7 +64668,7 @@
- 2409
+ 2415
@@ -64533,7 +64695,7 @@
- 2410
+ 2416
@@ -64560,7 +64722,7 @@
- 2411
+ 2417
@@ -64587,7 +64749,7 @@
- 2412
+ 2418
@@ -64614,7 +64776,7 @@
- 2413
+ 2419
@@ -64641,7 +64803,7 @@
- 2414
+ 2420
@@ -64668,7 +64830,7 @@
- 2415
+ 2421
@@ -64695,7 +64857,7 @@
- 2416
+ 2422
@@ -64722,7 +64884,7 @@
- 2417
+ 2423
@@ -64749,7 +64911,7 @@
- 2418
+ 2424
@@ -64776,7 +64938,7 @@
- 2419
+ 2425
@@ -64803,7 +64965,7 @@
- 2420
+ 2426
@@ -64830,7 +64992,7 @@
- 2421
+ 2427
@@ -64857,7 +65019,7 @@
- 2422
+ 2428
@@ -64884,7 +65046,7 @@
- 2423
+ 2429
@@ -64911,7 +65073,7 @@
- 2424
+ 2430
@@ -64938,7 +65100,7 @@
- 2425
+ 2431
@@ -64965,7 +65127,7 @@
- 2426
+ 2432
@@ -64992,7 +65154,7 @@
- 2427
+ 2433
@@ -65019,7 +65181,7 @@
- 2428
+ 2434
@@ -65046,7 +65208,7 @@
- 2429
+ 2435
@@ -65073,7 +65235,7 @@
- 2430
+ 2436
@@ -65100,7 +65262,7 @@
- 2431
+ 2437
@@ -65127,7 +65289,7 @@
- 2432
+ 2438
@@ -65154,7 +65316,7 @@
- 2433
+ 2439
@@ -65181,7 +65343,7 @@
- 2434
+ 2440
@@ -65208,7 +65370,7 @@
- 2435
+ 2441
@@ -65235,7 +65397,7 @@
- 2436
+ 2442
@@ -65262,7 +65424,7 @@
- 2437
+ 2443
@@ -65289,7 +65451,7 @@
- 2438
+ 2444
@@ -65316,7 +65478,7 @@
- 2439
+ 2445
@@ -65343,7 +65505,7 @@
- 2440
+ 2446
@@ -65370,7 +65532,7 @@
- 2441
+ 2447
@@ -65397,7 +65559,7 @@
- 2442
+ 2448
@@ -65424,7 +65586,7 @@
- 2443
+ 2449
@@ -65451,7 +65613,7 @@
- 2444
+ 2450
@@ -65478,7 +65640,7 @@
- 2445
+ 2451
@@ -65505,7 +65667,7 @@
- 2446
+ 2452
@@ -65532,7 +65694,7 @@
- 2447
+ 2453
@@ -65559,7 +65721,7 @@
- 2448
+ 2454
@@ -65586,7 +65748,7 @@
- 2449
+ 2455
@@ -65613,7 +65775,7 @@
- 2450
+ 2456
@@ -65640,7 +65802,7 @@
- 2451
+ 2457
@@ -65667,7 +65829,7 @@
- 2452
+ 2458
@@ -65694,7 +65856,7 @@
- 2453
+ 2459
@@ -65721,7 +65883,7 @@
- 2454
+ 2460
@@ -65748,7 +65910,7 @@
- 2455
+ 2461
@@ -65775,7 +65937,7 @@
- 2456
+ 2462
@@ -65802,7 +65964,7 @@
- 2457
+ 2463
@@ -65829,7 +65991,7 @@
- 2458
+ 2464
@@ -65856,7 +66018,7 @@
- 2459
+ 2465
@@ -65883,7 +66045,7 @@
- 2460
+ 2466
@@ -65910,7 +66072,7 @@
- 2461
+ 2467
@@ -65937,7 +66099,7 @@
- 2462
+ 2468
@@ -65964,7 +66126,7 @@
- 2463
+ 2469
@@ -65991,7 +66153,7 @@
- 2464
+ 2470
@@ -66018,7 +66180,7 @@
- 2465
+ 2471
@@ -66045,7 +66207,7 @@
- 2466
+ 2472
@@ -66072,7 +66234,7 @@
- 2467
+ 2473
@@ -66099,7 +66261,7 @@
- 2468
+ 2474
@@ -66126,7 +66288,7 @@
- 2469
+ 2475
@@ -66153,7 +66315,7 @@
- 2470
+ 2476
@@ -66180,7 +66342,7 @@
- 2471
+ 2477
@@ -66207,7 +66369,7 @@
- 2472
+ 2478
@@ -66234,7 +66396,7 @@
- 2473
+ 2479
@@ -66261,7 +66423,7 @@
- 2474
+ 2480
@@ -66288,7 +66450,7 @@
- 2475
+ 2481
@@ -66315,7 +66477,7 @@
- 2476
+ 2482
@@ -66342,7 +66504,7 @@
- 2477
+ 2483
@@ -66369,7 +66531,7 @@
- 2478
+ 2484
@@ -66396,7 +66558,7 @@
- 2479
+ 2485
@@ -66423,7 +66585,7 @@
- 2480
+ 2486
@@ -66450,7 +66612,7 @@
- 2481
+ 2487
@@ -66477,7 +66639,7 @@
- 2482
+ 2488
@@ -66504,7 +66666,7 @@
- 2483
+ 2489
@@ -66531,7 +66693,7 @@
- 2484
+ 2490
@@ -66558,7 +66720,7 @@
- 2485
+ 2491
@@ -66585,7 +66747,7 @@
- 2486
+ 2492
@@ -66612,7 +66774,7 @@
- 2487
+ 2493
@@ -66639,7 +66801,7 @@
- 2488
+ 2494
@@ -66666,7 +66828,7 @@
- 2489
+ 2495
@@ -66693,7 +66855,7 @@
- 2490
+ 2496
@@ -66720,7 +66882,7 @@
- 2491
+ 2497
@@ -66747,7 +66909,7 @@
- 2492
+ 2498
@@ -66774,7 +66936,7 @@
- 2493
+ 2499
@@ -66801,7 +66963,7 @@
- 2494
+ 2500
@@ -66828,7 +66990,7 @@
- 2495
+ 2501
@@ -66855,7 +67017,7 @@
- 2496
+ 2502
@@ -66882,7 +67044,7 @@
- 2497
+ 2503
@@ -66909,7 +67071,7 @@
- 2498
+ 2504
@@ -66936,7 +67098,7 @@
- 2499
+ 2505
@@ -66963,7 +67125,7 @@
- 2500
+ 2506
@@ -66990,7 +67152,7 @@
- 2501
+ 2507
@@ -67017,7 +67179,7 @@
- 2502
+ 2508
@@ -67044,7 +67206,7 @@
- 2503
+ 2509
@@ -67071,7 +67233,7 @@
- 2504
+ 2510
@@ -67098,7 +67260,7 @@
- 2505
+ 2511
@@ -67125,7 +67287,7 @@
- 2506
+ 2512
@@ -67152,7 +67314,7 @@
- 2507
+ 2513
@@ -67179,7 +67341,7 @@
- 2508
+ 2514
@@ -67206,7 +67368,7 @@
- 2509
+ 2515
@@ -67233,7 +67395,7 @@
- 2510
+ 2516
@@ -67260,7 +67422,7 @@
- 2511
+ 2517
@@ -67287,7 +67449,7 @@
- 2512
+ 2518
@@ -67314,7 +67476,7 @@
- 2513
+ 2519
@@ -67341,7 +67503,7 @@
- 2514
+ 2520
@@ -67368,7 +67530,7 @@
- 2515
+ 2521
@@ -67395,7 +67557,7 @@
- 2516
+ 2522
@@ -67422,7 +67584,7 @@
- 2517
+ 2523
@@ -67449,7 +67611,7 @@
- 2518
+ 2524
@@ -67476,7 +67638,7 @@
- 2519
+ 2525
@@ -67503,7 +67665,7 @@
- 2520
+ 2526
@@ -67530,7 +67692,7 @@
- 2521
+ 2527
@@ -67557,7 +67719,7 @@
- 2522
+ 2528
@@ -67584,7 +67746,7 @@
- 2523
+ 2529
@@ -67611,7 +67773,7 @@
- 2524
+ 2530
@@ -67638,7 +67800,7 @@
- 2525
+ 2531
@@ -67665,7 +67827,7 @@
- 2526
+ 2532
@@ -67692,7 +67854,7 @@
- 2527
+ 2533
@@ -67719,7 +67881,7 @@
- 2528
+ 2534
@@ -67746,7 +67908,7 @@
- 2529
+ 2535
@@ -67773,7 +67935,7 @@
- 2530
+ 2536
@@ -67800,7 +67962,7 @@
- 2531
+ 2537
@@ -67827,7 +67989,7 @@
- 2532
+ 2538
@@ -67854,7 +68016,7 @@
- 2533
+ 2539
@@ -67881,7 +68043,7 @@
- 2534
+ 2540
@@ -67908,7 +68070,7 @@
- 2535
+ 2541
@@ -67935,7 +68097,7 @@
- 2536
+ 2542
@@ -67962,7 +68124,7 @@
- 2537
+ 2543
@@ -67989,7 +68151,7 @@
- 2538
+ 2544
@@ -68016,7 +68178,7 @@
- 2539
+ 2545
@@ -68043,7 +68205,7 @@
- 2540
+ 2546
@@ -68070,7 +68232,7 @@
- 2541
+ 2547
@@ -68097,7 +68259,7 @@
- 2542
+ 2548
@@ -68124,7 +68286,7 @@
- 2543
+ 2549
@@ -68151,7 +68313,7 @@
- 2544
+ 2550
@@ -68178,7 +68340,7 @@
- 2545
+ 2551
@@ -68205,7 +68367,7 @@
- 2546
+ 2552
@@ -68232,7 +68394,7 @@
- 2547
+ 2553
@@ -68259,7 +68421,7 @@
- 2548
+ 2554
@@ -68286,7 +68448,7 @@
- 2549
+ 2555
@@ -68313,7 +68475,7 @@
- 2550
+ 2556
@@ -68340,7 +68502,7 @@
- 2551
+ 2557
@@ -68367,7 +68529,7 @@
- 2552
+ 2558
@@ -68394,7 +68556,7 @@
- 2553
+ 2559
@@ -68421,7 +68583,7 @@
- 2554
+ 2560
@@ -68448,7 +68610,7 @@
- 2555
+ 2561
@@ -68475,7 +68637,7 @@
- 2556
+ 2562
@@ -68502,7 +68664,7 @@
- 2557
+ 2563
@@ -68529,7 +68691,7 @@
- 2558
+ 2564
@@ -68556,7 +68718,7 @@
- 2559
+ 2565
@@ -68583,7 +68745,7 @@
- 2560
+ 2566
@@ -68610,7 +68772,7 @@
- 2561
+ 2567
@@ -68637,7 +68799,7 @@
- 2562
+ 2568
@@ -68664,7 +68826,7 @@
- 2563
+ 2569
@@ -68691,7 +68853,7 @@
- 2564
+ 2570
@@ -68718,7 +68880,7 @@
- 2565
+ 2571
@@ -68745,7 +68907,7 @@
- 2566
+ 2572
@@ -68772,7 +68934,7 @@
- 2567
+ 2573
@@ -68799,7 +68961,7 @@
- 2568
+ 2574
@@ -68826,7 +68988,7 @@
- 2569
+ 2575
@@ -68853,7 +69015,7 @@
- 2570
+ 2576
@@ -68880,7 +69042,7 @@
- 2571
+ 2577
@@ -68907,7 +69069,7 @@
- 2572
+ 2578
@@ -68934,7 +69096,7 @@
- 2573
+ 2579
@@ -68961,7 +69123,7 @@
- 2574
+ 2580
@@ -68988,7 +69150,7 @@
- 2575
+ 2581
@@ -69015,7 +69177,7 @@
- 2576
+ 2582
@@ -69042,7 +69204,7 @@
- 2577
+ 2583
@@ -69069,7 +69231,7 @@
- 2578
+ 2584
@@ -69096,7 +69258,7 @@
- 2579
+ 2585
@@ -69123,7 +69285,7 @@
- 2580
+ 2586
@@ -69150,7 +69312,7 @@
- 2581
+ 2587
@@ -69177,7 +69339,7 @@
- 2582
+ 2588
@@ -69204,7 +69366,7 @@
- 2583
+ 2589
@@ -69231,7 +69393,7 @@
- 2584
+ 2590
@@ -69258,7 +69420,7 @@
- 2585
+ 2591
@@ -69285,7 +69447,7 @@
- 2586
+ 2592
@@ -69312,7 +69474,7 @@
- 2587
+ 2593
@@ -69339,7 +69501,7 @@
- 2588
+ 2594
@@ -69366,7 +69528,7 @@
- 2589
+ 2595
@@ -69393,7 +69555,7 @@
- 2590
+ 2596
@@ -69420,7 +69582,7 @@
- 2591
+ 2597
@@ -69447,7 +69609,7 @@
- 2592
+ 2598
@@ -69474,7 +69636,7 @@
- 2593
+ 2599
@@ -69501,7 +69663,7 @@
- 2594
+ 2600
@@ -69528,7 +69690,7 @@
- 2595
+ 2601
@@ -69555,13 +69717,13 @@
- 2596
+ 2602
true
- 2597
+ 2603
@@ -69588,7 +69750,7 @@
- 2598
+ 2604
@@ -69609,7 +69771,7 @@
- 2599
+ 2605
@@ -69636,7 +69798,7 @@
- 2600
+ 2606
@@ -69663,7 +69825,7 @@
- 2601
+ 2607
@@ -69690,7 +69852,7 @@
- 2602
+ 2608
@@ -69717,7 +69879,7 @@
- 2603
+ 2609
@@ -69738,7 +69900,7 @@
- 2604
+ 2610
@@ -69759,7 +69921,7 @@
- 2605
+ 2611
@@ -69780,7 +69942,7 @@
- 2606
+ 2612
@@ -69801,7 +69963,7 @@
- 2607
+ 2613
@@ -69822,7 +69984,7 @@
- 2608
+ 2614
@@ -69843,7 +70005,7 @@
- 2609
+ 2615
@@ -69864,7 +70026,7 @@
- 2610
+ 2616
@@ -69891,7 +70053,7 @@
- 2611
+ 2617
@@ -69918,7 +70080,7 @@
- 2612
+ 2618
@@ -69945,7 +70107,7 @@
- 2613
+ 2619
@@ -69966,7 +70128,7 @@
- 2614
+ 2620
@@ -69987,7 +70149,7 @@
- 2615
+ 2621
@@ -70008,7 +70170,7 @@
- 2616
+ 2622
@@ -70029,7 +70191,7 @@
- 2617
+ 2623
@@ -70050,7 +70212,7 @@
- 2618
+ 2624
@@ -70071,7 +70233,7 @@
- 2619
+ 2625
@@ -70092,7 +70254,7 @@
- 2620
+ 2626
@@ -70119,7 +70281,7 @@
- 2621
+ 2627
@@ -70146,7 +70308,7 @@
- 2622
+ 2628
@@ -70173,7 +70335,7 @@
- 2623
+ 2629
@@ -70194,7 +70356,7 @@
- 2624
+ 2630
@@ -70215,7 +70377,7 @@
- 2625
+ 2631
@@ -70242,7 +70404,7 @@
- 2626
+ 2632
@@ -70263,7 +70425,7 @@
- 2627
+ 2633
@@ -70284,7 +70446,7 @@
- 2628
+ 2634
@@ -70305,7 +70467,7 @@
- 2629
+ 2635
@@ -70326,7 +70488,7 @@
- 2630
+ 2636
@@ -70353,7 +70515,7 @@
- 2631
+ 2637
@@ -70380,7 +70542,7 @@
- 2632
+ 2638
@@ -70407,7 +70569,7 @@
- 2633
+ 2639
@@ -70434,7 +70596,7 @@
- 2634
+ 2640
@@ -70461,7 +70623,7 @@
- 2635
+ 2641
@@ -70488,7 +70650,7 @@
- 2636
+ 2642
@@ -70515,7 +70677,7 @@
- 2637
+ 2643
@@ -70542,7 +70704,7 @@
- 2638
+ 2644
@@ -70569,7 +70731,7 @@
- 2639
+ 2645
@@ -70590,7 +70752,7 @@
- 2640
+ 2646
@@ -70611,7 +70773,7 @@
- 2641
+ 2647
@@ -70638,7 +70800,7 @@
- 2642
+ 2648
@@ -70665,7 +70827,7 @@
- 2643
+ 2649
@@ -70692,7 +70854,7 @@
- 2644
+ 2650
@@ -70719,7 +70881,7 @@
- 2645
+ 2651
@@ -70746,7 +70908,7 @@
- 2646
+ 2652
@@ -70773,7 +70935,7 @@
- 2647
+ 2653
@@ -70800,7 +70962,7 @@
- 2648
+ 2654
@@ -70827,7 +70989,7 @@
- 2649
+ 2655
@@ -70848,7 +71010,7 @@
- 2650
+ 2656
@@ -70869,7 +71031,7 @@
- 2651
+ 2657
@@ -70890,7 +71052,7 @@
- 2652
+ 2658
@@ -70911,7 +71073,7 @@
- 2653
+ 2659
@@ -70932,7 +71094,7 @@
- 2654
+ 2660
@@ -70953,7 +71115,7 @@
- 2655
+ 2661
@@ -70974,7 +71136,7 @@
- 2656
+ 2662
@@ -71001,7 +71163,7 @@
- 2657
+ 2663
@@ -71022,7 +71184,7 @@
- 2658
+ 2664
@@ -71043,7 +71205,7 @@
- 2659
+ 2665
@@ -71070,7 +71232,7 @@
- 2660
+ 2666
@@ -71097,7 +71259,7 @@
- 2661
+ 2667
@@ -71124,7 +71286,7 @@
- 2662
+ 2668
@@ -71151,7 +71313,7 @@
- 2663
+ 2669
@@ -71172,7 +71334,7 @@
- 2664
+ 2670
@@ -71193,7 +71355,7 @@
- 2665
+ 2671
@@ -71214,7 +71376,7 @@
- 2666
+ 2672
@@ -71235,7 +71397,7 @@
- 2667
+ 2673
@@ -71256,13 +71418,13 @@
- 2668
+ 2674
true
- 2669
+ 2675
@@ -71289,7 +71451,7 @@
- 2670
+ 2676
@@ -71316,7 +71478,7 @@
- 2671
+ 2677
@@ -71343,7 +71505,7 @@
- 2672
+ 2678
@@ -71370,7 +71532,7 @@
- 2673
+ 2679
@@ -71397,7 +71559,7 @@
- 2674
+ 2680
@@ -71424,7 +71586,7 @@
- 2675
+ 2681
@@ -71451,7 +71613,7 @@
- 2676
+ 2682
@@ -71478,7 +71640,7 @@
- 2677
+ 2683
@@ -71505,7 +71667,7 @@
- 2678
+ 2684
@@ -71532,7 +71694,7 @@
- 2679
+ 2685
@@ -71559,7 +71721,7 @@
- 2680
+ 2686
@@ -71586,7 +71748,7 @@
- 2681
+ 2687
@@ -71613,7 +71775,7 @@
- 2682
+ 2688
@@ -71640,7 +71802,7 @@
- 2683
+ 2689
@@ -71667,7 +71829,7 @@
- 2684
+ 2690
@@ -71694,7 +71856,7 @@
- 2685
+ 2691
@@ -71721,7 +71883,7 @@
- 2686
+ 2692
@@ -71748,7 +71910,7 @@
- 2687
+ 2693
@@ -71775,7 +71937,7 @@
- 2688
+ 2694
@@ -71802,7 +71964,7 @@
- 2689
+ 2695
@@ -71829,7 +71991,7 @@
- 2690
+ 2696
@@ -71856,7 +72018,7 @@
- 2691
+ 2697
@@ -71883,7 +72045,7 @@
- 2692
+ 2698
@@ -71910,7 +72072,7 @@
- 2693
+ 2699
@@ -71937,7 +72099,7 @@
- 2694
+ 2700
@@ -71964,7 +72126,7 @@
- 2695
+ 2701
@@ -71991,7 +72153,7 @@
- 2696
+ 2702
@@ -72018,7 +72180,7 @@
- 2697
+ 2703
@@ -72034,7 +72196,7 @@
- 2698
+ 2704
@@ -72050,7 +72212,7 @@
- 2699
+ 2705
@@ -72077,7 +72239,7 @@
- 2700
+ 2706
@@ -72104,7 +72266,7 @@
- 2701
+ 2707
@@ -72131,7 +72293,7 @@
- 2702
+ 2708
@@ -72158,7 +72320,7 @@
- 2703
+ 2709
@@ -72185,7 +72347,7 @@
- 2704
+ 2710
@@ -72212,7 +72374,7 @@
- 2705
+ 2711
@@ -72239,7 +72401,7 @@
- 2706
+ 2712
@@ -72266,7 +72428,7 @@
- 2707
+ 2713
@@ -72293,7 +72455,7 @@
- 2708
+ 2714
@@ -72320,7 +72482,7 @@
- 2709
+ 2715
@@ -72347,7 +72509,7 @@
- 2710
+ 2716
@@ -72374,7 +72536,7 @@
- 2711
+ 2717
@@ -72401,7 +72563,7 @@
- 2712
+ 2718
@@ -72428,7 +72590,7 @@
- 2713
+ 2719
@@ -72455,7 +72617,7 @@
- 2714
+ 2720
@@ -72482,7 +72644,7 @@
- 2715
+ 2721
@@ -72509,7 +72671,7 @@
- 2716
+ 2722
@@ -72536,7 +72698,7 @@
- 2717
+ 2723
@@ -72563,7 +72725,7 @@
- 2718
+ 2724
@@ -72590,7 +72752,7 @@
- 2719
+ 2725
@@ -72617,7 +72779,7 @@
- 2720
+ 2726
@@ -72644,7 +72806,7 @@
- 2721
+ 2727
@@ -72671,7 +72833,7 @@
- 2722
+ 2728
@@ -72698,7 +72860,7 @@
- 2723
+ 2729
@@ -72725,7 +72887,7 @@
- 2724
+ 2730
@@ -72752,7 +72914,7 @@
- 2725
+ 2731
@@ -72779,7 +72941,7 @@
- 2726
+ 2732
@@ -72806,7 +72968,7 @@
- 2727
+ 2733
@@ -72833,7 +72995,7 @@
- 2728
+ 2734
@@ -72860,7 +73022,7 @@
- 2729
+ 2735
@@ -72887,7 +73049,7 @@
- 2730
+ 2736
@@ -72914,7 +73076,7 @@
- 2731
+ 2737
@@ -72941,7 +73103,7 @@
- 2732
+ 2738
@@ -72968,7 +73130,7 @@
- 2733
+ 2739
@@ -72995,7 +73157,7 @@
- 2734
+ 2740
@@ -73022,7 +73184,7 @@
- 2735
+ 2741
@@ -73049,7 +73211,7 @@
- 2736
+ 2742
@@ -73076,7 +73238,7 @@
- 2737
+ 2743
@@ -73103,7 +73265,7 @@
- 2738
+ 2744
@@ -73130,7 +73292,7 @@
- 2739
+ 2745
@@ -73157,7 +73319,7 @@
- 2740
+ 2746
@@ -73184,7 +73346,7 @@
- 2741
+ 2747
@@ -73211,13 +73373,13 @@
- 2742
+ 2748
true
- 2743
+ 2749
@@ -73244,7 +73406,7 @@
- 2744
+ 2750
@@ -73271,7 +73433,7 @@
- 2745
+ 2751
@@ -73298,7 +73460,7 @@
- 2746
+ 2752
@@ -73325,7 +73487,7 @@
- 2747
+ 2753
@@ -73352,7 +73514,7 @@
- 2748
+ 2754
@@ -73379,7 +73541,7 @@
- 2749
+ 2755
@@ -73406,7 +73568,7 @@
- 2750
+ 2756
@@ -73433,7 +73595,7 @@
- 2751
+ 2757
@@ -73460,7 +73622,7 @@
- 2752
+ 2758
@@ -73487,7 +73649,7 @@
- 2753
+ 2759
@@ -73514,7 +73676,7 @@
- 2754
+ 2760
@@ -73541,7 +73703,7 @@
- 2755
+ 2761
@@ -73568,7 +73730,7 @@
- 2756
+ 2762
@@ -73595,7 +73757,7 @@
- 2757
+ 2763
@@ -73622,7 +73784,7 @@
- 2758
+ 2764
@@ -73649,7 +73811,7 @@
- 2759
+ 2765
@@ -73676,7 +73838,7 @@
- 2760
+ 2766
@@ -73703,7 +73865,7 @@
- 2761
+ 2767
@@ -73730,7 +73892,7 @@
- 2762
+ 2768
@@ -73757,7 +73919,7 @@
- 2763
+ 2769
@@ -73784,7 +73946,7 @@
- 2764
+ 2770
@@ -73811,7 +73973,7 @@
- 2765
+ 2771
@@ -73838,7 +74000,7 @@
- 2766
+ 2772
@@ -73865,7 +74027,7 @@
- 2767
+ 2773
@@ -73892,7 +74054,7 @@
- 2768
+ 2774
@@ -73919,7 +74081,7 @@
- 2769
+ 2775
@@ -73946,7 +74108,7 @@
- 2770
+ 2776
@@ -73973,7 +74135,7 @@
- 2771
+ 2777
@@ -74000,7 +74162,7 @@
- 2772
+ 2778
@@ -74027,7 +74189,7 @@
- 2773
+ 2779
@@ -74054,7 +74216,7 @@
- 2774
+ 2780
@@ -74081,13 +74243,13 @@
- 2775
+ 2781
true
- 2776
+ 2782
@@ -74114,7 +74276,7 @@
- 2777
+ 2783
@@ -74141,7 +74303,7 @@
- 2778
+ 2784
@@ -74168,7 +74330,7 @@
- 2779
+ 2785
@@ -74195,7 +74357,7 @@
- 2780
+ 2786
@@ -74222,7 +74384,7 @@
- 2781
+ 2787
@@ -74249,7 +74411,7 @@
- 2782
+ 2788
@@ -74276,7 +74438,7 @@
- 2783
+ 2789
@@ -74303,7 +74465,7 @@
- 2784
+ 2790
@@ -74330,7 +74492,7 @@
- 2785
+ 2791
@@ -74357,7 +74519,7 @@
- 2786
+ 2792
@@ -74384,7 +74546,7 @@
- 2787
+ 2793
@@ -74411,7 +74573,7 @@
- 2788
+ 2794
@@ -74438,7 +74600,7 @@
- 2789
+ 2795
@@ -74465,7 +74627,7 @@
- 2790
+ 2796
@@ -74492,7 +74654,7 @@
- 2791
+ 2797
@@ -74519,7 +74681,7 @@
- 2792
+ 2798
@@ -74546,7 +74708,7 @@
- 2793
+ 2799
@@ -74573,7 +74735,7 @@
- 2794
+ 2800
@@ -74600,7 +74762,7 @@
- 2795
+ 2801
@@ -74627,7 +74789,7 @@
- 2796
+ 2802
@@ -74654,7 +74816,7 @@
- 2797
+ 2803
@@ -74681,7 +74843,7 @@
- 2798
+ 2804
@@ -74708,7 +74870,7 @@
- 2799
+ 2805
@@ -74735,7 +74897,7 @@
- 2800
+ 2806
@@ -74762,7 +74924,7 @@
- 2801
+ 2807
@@ -74789,7 +74951,7 @@
- 2802
+ 2808
@@ -74816,13 +74978,13 @@
- 2803
+ 2809
true
- 2804
+ 2810
@@ -74849,7 +75011,7 @@
- 2805
+ 2811
@@ -74876,7 +75038,7 @@
- 2806
+ 2812
@@ -74903,7 +75065,7 @@
- 2807
+ 2813
@@ -74930,7 +75092,7 @@
- 2808
+ 2814
@@ -74957,7 +75119,7 @@
- 2809
+ 2815
@@ -74984,7 +75146,7 @@
- 2810
+ 2816
@@ -75011,7 +75173,7 @@
- 2811
+ 2817
@@ -75038,7 +75200,7 @@
- 2812
+ 2818
@@ -75065,7 +75227,7 @@
- 2813
+ 2819
@@ -75092,7 +75254,7 @@
- 2814
+ 2820
@@ -75119,7 +75281,7 @@
- 2815
+ 2821
@@ -75146,7 +75308,7 @@
- 2816
+ 2822
@@ -75173,7 +75335,7 @@
- 2817
+ 2823
@@ -75200,7 +75362,7 @@
- 2818
+ 2824
@@ -75227,7 +75389,7 @@
- 2819
+ 2825
@@ -75254,7 +75416,7 @@
- 2820
+ 2826
@@ -75281,7 +75443,7 @@
- 2821
+ 2827
@@ -75308,7 +75470,7 @@
- 2822
+ 2828
@@ -75335,7 +75497,7 @@
- 2823
+ 2829
@@ -75362,7 +75524,7 @@
- 2824
+ 2830
@@ -75389,7 +75551,7 @@
- 2825
+ 2831
@@ -75416,7 +75578,7 @@
- 2826
+ 2832
@@ -75443,7 +75605,7 @@
- 2827
+ 2833
@@ -75470,7 +75632,7 @@
- 2828
+ 2834
@@ -75497,7 +75659,7 @@
- 2829
+ 2835
@@ -75524,7 +75686,7 @@
- 2830
+ 2836
@@ -75551,7 +75713,7 @@
- 2831
+ 2837
@@ -75578,7 +75740,7 @@
- 2832
+ 2838
@@ -75605,7 +75767,7 @@
- 2833
+ 2839
@@ -75632,7 +75794,7 @@
- 2834
+ 2840
@@ -75659,7 +75821,7 @@
- 2835
+ 2841
@@ -75686,7 +75848,7 @@
- 2836
+ 2842
@@ -75713,7 +75875,7 @@
- 2837
+ 2843
@@ -75740,7 +75902,7 @@
- 2838
+ 2844
@@ -75767,7 +75929,7 @@
- 2839
+ 2845
@@ -75794,7 +75956,7 @@
- 2840
+ 2846
@@ -75821,7 +75983,7 @@
- 2841
+ 2847
@@ -75848,7 +76010,7 @@
- 2842
+ 2848
@@ -75875,7 +76037,7 @@
- 2843
+ 2849
@@ -75902,7 +76064,7 @@
- 2844
+ 2850
@@ -75929,7 +76091,7 @@
- 2845
+ 2851
@@ -75956,7 +76118,7 @@
- 2846
+ 2852
@@ -75983,7 +76145,7 @@
- 2847
+ 2853
@@ -76010,7 +76172,7 @@
- 2848
+ 2854
@@ -76037,7 +76199,7 @@
- 2849
+ 2855
@@ -76064,7 +76226,7 @@
- 2850
+ 2856
@@ -76091,7 +76253,7 @@
- 2851
+ 2857
@@ -76118,7 +76280,7 @@
- 2852
+ 2858
@@ -76145,7 +76307,7 @@
- 2853
+ 2859
@@ -76172,7 +76334,7 @@
- 2854
+ 2860
@@ -76199,7 +76361,7 @@
- 2855
+ 2861
@@ -76226,7 +76388,7 @@
- 2856
+ 2862
@@ -76253,7 +76415,7 @@
- 2857
+ 2863
@@ -76280,7 +76442,7 @@
- 2858
+ 2864
@@ -76307,7 +76469,7 @@
- 2859
+ 2865
@@ -76334,7 +76496,7 @@
- 2860
+ 2866
@@ -76361,7 +76523,7 @@
- 2861
+ 2867
@@ -76388,7 +76550,7 @@
- 2862
+ 2868
@@ -76415,7 +76577,7 @@
- 2863
+ 2869
@@ -76442,7 +76604,7 @@
- 2864
+ 2870
@@ -76469,7 +76631,7 @@
- 2865
+ 2871
@@ -76496,7 +76658,7 @@
- 2866
+ 2872
@@ -76523,7 +76685,7 @@
- 2867
+ 2873
@@ -76550,7 +76712,7 @@
- 2868
+ 2874
@@ -76577,7 +76739,7 @@
- 2869
+ 2875
@@ -76604,7 +76766,7 @@
- 2870
+ 2876
@@ -76631,7 +76793,7 @@
- 2871
+ 2877
@@ -76658,7 +76820,7 @@
- 2872
+ 2878
@@ -76685,7 +76847,7 @@
- 2873
+ 2879
@@ -76712,7 +76874,7 @@
- 2874
+ 2880
@@ -76739,7 +76901,7 @@
- 2875
+ 2881
@@ -76766,7 +76928,7 @@
- 2876
+ 2882
@@ -76793,7 +76955,7 @@
- 2877
+ 2883
@@ -76820,7 +76982,7 @@
- 2878
+ 2884
@@ -76847,7 +77009,7 @@
- 2879
+ 2885
@@ -76874,7 +77036,7 @@
- 2880
+ 2886
@@ -76901,7 +77063,7 @@
- 2881
+ 2887
@@ -76928,7 +77090,7 @@
- 2882
+ 2888
@@ -76955,7 +77117,7 @@
- 2883
+ 2889
@@ -76982,7 +77144,7 @@
- 2884
+ 2890
@@ -77009,7 +77171,7 @@
- 2885
+ 2891
@@ -77036,7 +77198,7 @@
- 2886
+ 2892
@@ -77063,7 +77225,7 @@
- 2887
+ 2893
@@ -77090,7 +77252,7 @@
- 2888
+ 2894
@@ -77117,7 +77279,7 @@
- 2889
+ 2895
@@ -77144,7 +77306,7 @@
- 2890
+ 2896
@@ -77171,7 +77333,7 @@
- 2891
+ 2897
@@ -77198,7 +77360,7 @@
- 2892
+ 2898
@@ -77225,13 +77387,13 @@
- 2893
+ 2899
true
- 2894
+ 2900
@@ -77258,7 +77420,7 @@
- 2895
+ 2901
@@ -77285,7 +77447,7 @@
- 2896
+ 2902
@@ -77312,7 +77474,7 @@
- 2897
+ 2903
@@ -77339,7 +77501,7 @@
- 2898
+ 2904
@@ -77366,7 +77528,7 @@
- 2899
+ 2905
@@ -77393,7 +77555,7 @@
- 2900
+ 2906
@@ -77420,7 +77582,7 @@
- 2901
+ 2907
@@ -77447,7 +77609,7 @@
- 2902
+ 2908
@@ -77474,7 +77636,7 @@
- 2903
+ 2909
@@ -77501,7 +77663,7 @@
- 2904
+ 2910
@@ -77528,7 +77690,7 @@
- 2905
+ 2911
@@ -77555,7 +77717,7 @@
- 2906
+ 2912
@@ -77582,7 +77744,7 @@
- 2907
+ 2913
@@ -77609,7 +77771,7 @@
- 2908
+ 2914
@@ -77636,7 +77798,7 @@
- 2909
+ 2915
@@ -77663,7 +77825,7 @@
- 2910
+ 2916
@@ -77690,7 +77852,7 @@
- 2911
+ 2917
@@ -77717,7 +77879,7 @@
- 2912
+ 2918
@@ -77744,7 +77906,7 @@
- 2913
+ 2919
@@ -77771,7 +77933,7 @@
- 2914
+ 2920
@@ -77798,7 +77960,7 @@
- 2915
+ 2921
@@ -77825,7 +77987,7 @@
- 2916
+ 2922
@@ -77852,7 +78014,7 @@
- 2917
+ 2923
@@ -77879,7 +78041,7 @@
- 2918
+ 2924
@@ -77906,7 +78068,7 @@
- 2919
+ 2925
@@ -77933,7 +78095,7 @@
- 2920
+ 2926
@@ -77960,7 +78122,7 @@
- 2921
+ 2927
@@ -77987,7 +78149,7 @@
- 2922
+ 2928
@@ -78014,7 +78176,7 @@
- 2923
+ 2929
@@ -78041,7 +78203,7 @@
- 2924
+ 2930
@@ -78068,7 +78230,7 @@
- 2925
+ 2931
@@ -78095,7 +78257,7 @@
- 2926
+ 2932
@@ -78122,7 +78284,7 @@
- 2927
+ 2933
@@ -78149,7 +78311,7 @@
- 2928
+ 2934
@@ -78176,7 +78338,7 @@
- 2929
+ 2935
@@ -78203,7 +78365,7 @@
- 2930
+ 2936
@@ -78230,7 +78392,7 @@
- 2931
+ 2937
@@ -78257,7 +78419,7 @@
- 2932
+ 2938
@@ -78284,7 +78446,7 @@
- 2933
+ 2939
@@ -78311,7 +78473,7 @@
- 2934
+ 2940
@@ -78338,7 +78500,7 @@
- 2935
+ 2941
@@ -78365,7 +78527,7 @@
- 2936
+ 2942
@@ -78392,7 +78554,7 @@
- 2937
+ 2943
@@ -78419,13 +78581,13 @@
- 2938
+ 2944
true
- 2939
+ 2945
@@ -78452,7 +78614,7 @@
- 2940
+ 2946
@@ -78479,7 +78641,7 @@
- 2941
+ 2947
@@ -78506,7 +78668,7 @@
- 2942
+ 2948
@@ -78533,7 +78695,7 @@
- 2943
+ 2949
@@ -78560,7 +78722,7 @@
- 2944
+ 2950
@@ -78587,7 +78749,7 @@
- 2945
+ 2951
@@ -78614,7 +78776,7 @@
- 2946
+ 2952
@@ -78641,7 +78803,7 @@
- 2947
+ 2953
@@ -78668,7 +78830,7 @@
- 2948
+ 2954
@@ -78695,7 +78857,7 @@
- 2949
+ 2955
@@ -78722,7 +78884,7 @@
- 2950
+ 2956
@@ -78749,7 +78911,7 @@
- 2951
+ 2957
@@ -78776,7 +78938,7 @@
- 2952
+ 2958
@@ -78803,7 +78965,7 @@
- 2953
+ 2959
@@ -78830,7 +78992,7 @@
- 2954
+ 2960
@@ -78857,7 +79019,7 @@
- 2955
+ 2961
@@ -78884,7 +79046,7 @@
- 2956
+ 2962
@@ -78911,7 +79073,7 @@
- 2957
+ 2963
@@ -78938,7 +79100,7 @@
- 2958
+ 2964
@@ -78965,7 +79127,7 @@
- 2959
+ 2965
@@ -78992,7 +79154,7 @@
- 2960
+ 2966
@@ -79019,7 +79181,7 @@
- 2961
+ 2967
@@ -79046,7 +79208,7 @@
- 2962
+ 2968
@@ -79073,7 +79235,7 @@
- 2963
+ 2969
@@ -79100,7 +79262,7 @@
- 2964
+ 2970
@@ -79127,7 +79289,7 @@
- 2965
+ 2971
@@ -79154,7 +79316,7 @@
- 2966
+ 2972
@@ -79181,7 +79343,7 @@
- 2967
+ 2973
@@ -79208,7 +79370,7 @@
- 2968
+ 2974
@@ -79235,7 +79397,7 @@
- 2969
+ 2975
@@ -79262,7 +79424,7 @@
- 2970
+ 2976
@@ -79289,7 +79451,7 @@
- 2971
+ 2977
@@ -79316,13 +79478,13 @@
- 2972
+ 2978
true
- 2973
+ 2979
@@ -79349,7 +79511,7 @@
- 2974
+ 2980
@@ -79376,7 +79538,7 @@
- 2975
+ 2981
@@ -79403,7 +79565,7 @@
- 2976
+ 2982
@@ -79430,7 +79592,7 @@
- 2977
+ 2983
@@ -79457,7 +79619,7 @@
- 2978
+ 2984
@@ -79484,7 +79646,7 @@
- 2979
+ 2985
@@ -79511,7 +79673,7 @@
- 2980
+ 2986
@@ -79538,7 +79700,7 @@
- 2981
+ 2987
@@ -79565,7 +79727,7 @@
- 2982
+ 2988
@@ -79592,7 +79754,7 @@
- 2983
+ 2989
@@ -79619,7 +79781,7 @@
- 2984
+ 2990
@@ -79646,7 +79808,7 @@
- 2985
+ 2991
@@ -79673,7 +79835,7 @@
- 2986
+ 2992
@@ -79700,7 +79862,7 @@
- 2987
+ 2993
@@ -79727,7 +79889,7 @@
- 2988
+ 2994
@@ -79754,7 +79916,7 @@
- 2989
+ 2995
@@ -79781,7 +79943,7 @@
- 2990
+ 2996
@@ -79808,7 +79970,7 @@
- 2991
+ 2997
@@ -79835,7 +79997,7 @@
- 2992
+ 2998
@@ -79862,7 +80024,7 @@
- 2993
+ 2999
@@ -79889,7 +80051,7 @@
- 2994
+ 3000
@@ -79916,7 +80078,7 @@
- 2995
+ 3001
@@ -79943,7 +80105,7 @@
- 2996
+ 3002
@@ -79970,7 +80132,7 @@
- 2997
+ 3003
@@ -79997,7 +80159,7 @@
- 2998
+ 3004
@@ -80024,7 +80186,7 @@
- 2999
+ 3005
@@ -80051,7 +80213,7 @@
- 3000
+ 3006
@@ -80078,7 +80240,7 @@
- 3001
+ 3007
@@ -80105,7 +80267,7 @@
- 3002
+ 3008
@@ -80132,7 +80294,7 @@
- 3003
+ 3009
@@ -80159,7 +80321,7 @@
- 3004
+ 3010
@@ -80186,7 +80348,7 @@
- 3005
+ 3011
@@ -80213,7 +80375,7 @@
- 3006
+ 3012
@@ -80240,7 +80402,7 @@
- 3007
+ 3013
@@ -80267,7 +80429,7 @@
- 3008
+ 3014
@@ -80294,7 +80456,7 @@
- 3009
+ 3015
@@ -80321,7 +80483,7 @@
- 3010
+ 3016
@@ -80348,7 +80510,7 @@
- 3011
+ 3017
@@ -80375,7 +80537,7 @@
- 3012
+ 3018
@@ -80402,7 +80564,7 @@
- 3013
+ 3019
@@ -80429,7 +80591,7 @@
- 3014
+ 3020
@@ -80456,7 +80618,7 @@
- 3015
+ 3021
@@ -80483,7 +80645,7 @@
- 3016
+ 3022
@@ -80510,7 +80672,7 @@
- 3017
+ 3023
@@ -80537,7 +80699,7 @@
- 3018
+ 3024
@@ -80564,7 +80726,7 @@
- 3019
+ 3025
@@ -80591,7 +80753,7 @@
- 3020
+ 3026
@@ -80618,7 +80780,7 @@
- 3021
+ 3027
@@ -80645,7 +80807,7 @@
- 3022
+ 3028
@@ -80672,7 +80834,7 @@
- 3023
+ 3029
@@ -80699,7 +80861,7 @@
- 3024
+ 3030
@@ -80726,7 +80888,7 @@
- 3025
+ 3031
@@ -80753,7 +80915,7 @@
- 3026
+ 3032
@@ -80780,7 +80942,7 @@
- 3027
+ 3033
@@ -80807,7 +80969,7 @@
- 3028
+ 3034
@@ -80834,7 +80996,7 @@
- 3029
+ 3035
@@ -80861,7 +81023,7 @@
- 3030
+ 3036
@@ -80888,7 +81050,7 @@
- 3031
+ 3037
@@ -80915,7 +81077,7 @@
- 3032
+ 3038
@@ -80942,7 +81104,7 @@
- 3033
+ 3039
@@ -80969,7 +81131,7 @@
- 3034
+ 3040
@@ -80996,7 +81158,7 @@
- 3035
+ 3041
@@ -81023,7 +81185,7 @@
- 3036
+ 3042
@@ -81050,7 +81212,7 @@
- 3037
+ 3043
@@ -81077,7 +81239,7 @@
- 3038
+ 3044
@@ -81104,7 +81266,7 @@
- 3039
+ 3045
@@ -81131,7 +81293,7 @@
- 3040
+ 3046
@@ -81158,7 +81320,7 @@
- 3041
+ 3047
@@ -81185,7 +81347,7 @@
- 3042
+ 3048
@@ -81212,7 +81374,7 @@
- 3043
+ 3049
@@ -81239,7 +81401,7 @@
- 3044
+ 3050
@@ -81266,7 +81428,7 @@
- 3045
+ 3051
@@ -81293,7 +81455,7 @@
- 3046
+ 3052
@@ -81320,7 +81482,7 @@
- 3047
+ 3053
@@ -81347,7 +81509,7 @@
- 3048
+ 3054
@@ -81374,7 +81536,7 @@
- 3049
+ 3055
@@ -81401,7 +81563,7 @@
- 3050
+ 3056
@@ -81428,7 +81590,7 @@
- 3051
+ 3057
@@ -81455,7 +81617,7 @@
- 3052
+ 3058
@@ -81482,7 +81644,7 @@
- 3053
+ 3059
@@ -81509,7 +81671,7 @@
- 3054
+ 3060
@@ -81536,7 +81698,7 @@
- 3055
+ 3061
@@ -81563,7 +81725,7 @@
- 3056
+ 3062
@@ -81590,7 +81752,7 @@
- 3057
+ 3063
@@ -81617,7 +81779,7 @@
- 3058
+ 3064
@@ -81644,13 +81806,13 @@
- 3059
+ 3065
true
- 3060
+ 3066
@@ -81677,7 +81839,7 @@
- 3061
+ 3067
@@ -81704,7 +81866,7 @@
- 3062
+ 3068
@@ -81731,7 +81893,7 @@
- 3063
+ 3069
@@ -81758,7 +81920,7 @@
- 3064
+ 3070
@@ -81785,7 +81947,7 @@
- 3065
+ 3071
@@ -81812,7 +81974,7 @@
- 3066
+ 3072
@@ -81839,7 +82001,7 @@
- 3067
+ 3073
@@ -81866,7 +82028,7 @@
- 3068
+ 3074
@@ -81893,7 +82055,7 @@
- 3069
+ 3075
@@ -81920,7 +82082,7 @@
- 3070
+ 3076
@@ -81947,7 +82109,7 @@
- 3071
+ 3077
@@ -81974,7 +82136,7 @@
- 3072
+ 3078
@@ -82001,7 +82163,7 @@
- 3073
+ 3079
@@ -82028,7 +82190,7 @@
- 3074
+ 3080
@@ -82055,7 +82217,7 @@
- 3075
+ 3081
@@ -82082,7 +82244,7 @@
- 3076
+ 3082
@@ -82109,7 +82271,7 @@
- 3077
+ 3083
@@ -82136,7 +82298,7 @@
- 3078
+ 3084
@@ -82163,7 +82325,7 @@
- 3079
+ 3085
@@ -82190,7 +82352,7 @@
- 3080
+ 3086
@@ -82217,7 +82379,7 @@
- 3081
+ 3087
@@ -82244,7 +82406,7 @@
- 3082
+ 3088
@@ -82271,7 +82433,7 @@
- 3083
+ 3089
@@ -82298,7 +82460,7 @@
- 3084
+ 3090
@@ -82325,7 +82487,7 @@
- 3085
+ 3091
@@ -82352,7 +82514,7 @@
- 3086
+ 3092
@@ -82379,7 +82541,7 @@
- 3087
+ 3093
@@ -82406,7 +82568,7 @@
- 3088
+ 3094
@@ -82433,7 +82595,7 @@
- 3089
+ 3095
@@ -82460,7 +82622,7 @@
- 3090
+ 3096
@@ -82487,7 +82649,7 @@
- 3091
+ 3097
@@ -82514,7 +82676,7 @@
- 3092
+ 3098
@@ -82542,8 +82704,8 @@
true
9
- 3093
- 3093
+ 3099
+ 3099
Акт501_Заказчик
@@ -82578,8 +82740,8 @@
АктОРасхождениях
Rows
- 2269
- 2595
+ 2275
+ 2601
-1
-1
@@ -82598,8 +82760,8 @@
ЗапросКоммерческихПредложений
Rows
- 2597
- 2667
+ 2603
+ 2673
-1
-1
@@ -82628,8 +82790,8 @@
КоммерческоеПредложение
Rows
- 2669
- 2741
+ 2675
+ 2747
-1
-1
@@ -82678,8 +82840,8 @@
ПередачаВозвратТоваровМеждуОрганизациями
Rows
- 2131
- 2170
+ 2137
+ 2176
-1
-1
@@ -82688,8 +82850,8 @@
ПлатежноеПоручение
Rows
- 2743
- 2774
+ 2749
+ 2780
-1
-1
@@ -82698,8 +82860,8 @@
ПлатежноеТребование
Rows
- 2776
- 2802
+ 2782
+ 2808
-1
-1
@@ -82708,8 +82870,8 @@
ПоручениеНаПереводВалюты
Rows
- 2804
- 2892
+ 2810
+ 2898
-1
-1
@@ -82718,8 +82880,8 @@
ПоручениеНаПокупкуВалюты
Rows
- 2894
- 2937
+ 2900
+ 2943
-1
-1
@@ -82728,8 +82890,8 @@
ПоручениеНаПродажуВалюты
Rows
- 2939
- 2971
+ 2945
+ 2977
-1
-1
@@ -82748,8 +82910,8 @@
РаспоряжениеНаОбязательнуюПродажуВалюты
Rows
- 2973
- 3058
+ 2979
+ 3064
-1
-1
@@ -82758,8 +82920,8 @@
РегистрационныеДанные
Rows
- 1507
- 1573
+ 1513
+ 1579
-1
-1
@@ -82779,7 +82941,7 @@
Rows
1428
- 1469
+ 1475
-1
-1
@@ -82788,8 +82950,8 @@
СлужебныйДокументУведомление
Rows
- 1471
- 1505
+ 1477
+ 1511
-1
-1
@@ -82818,8 +82980,8 @@
СправкаОПодтверждающихДокументах
Rows
- 3060
- 3092
+ 3066
+ 3098
-1
-1
@@ -82878,8 +83040,8 @@
УКД_ИнформацияПокупателя
Rows
- 2123
- 2129
+ 2129
+ 2135
-1
-1
@@ -82888,8 +83050,8 @@
УКД_ИнформацияПродавца
Rows
- 1909
- 2121
+ 1915
+ 2127
-1
-1
@@ -82898,8 +83060,8 @@
УПД_ИнформацияПокупателя
Rows
- 1880
- 1907
+ 1886
+ 1913
-1
-1
@@ -82908,8 +83070,8 @@
УПД_ИнформацияПокупателя_2019
Rows
- 2172
- 2198
+ 2178
+ 2204
-1
-1
@@ -82918,8 +83080,8 @@
УПД_ИнформацияПродавца
Rows
- 1575
- 1878
+ 1581
+ 1884
-1
-1
@@ -82928,8 +83090,8 @@
УПД_ИнформацияПродавца_2019
Rows
- 2200
- 2267
+ 2206
+ 2273
-1
-1
diff --git a/src/DataProcessors/ЭлектронноеВзаимодействие/Templates/ЭД_ИдентификаторДокумента_ru/Ext/Template.xml b/src/DataProcessors/ЭлектронноеВзаимодействие/Templates/ЭД_ИдентификаторДокумента_ru/Ext/Template.xml
index 169340937..e2e037704 100644
--- a/src/DataProcessors/ЭлектронноеВзаимодействие/Templates/ЭД_ИдентификаторДокумента_ru/Ext/Template.xml
+++ b/src/DataProcessors/ЭлектронноеВзаимодействие/Templates/ЭД_ИдентификаторДокумента_ru/Ext/Template.xml
@@ -693,7 +693,7 @@
1
35
false
- Stretch
+ AutoSize
1
1
@@ -1063,6 +1063,6 @@
0
-
+
\ No newline at end of file
diff --git a/src/Documents/CRM_Интерес/Forms/ФормаДокументаНовая/Ext/Form/Module.bsl b/src/Documents/CRM_Интерес/Forms/ФормаДокументаНовая/Ext/Form/Module.bsl
index 4286ad3c1..2708fbd26 100644
--- a/src/Documents/CRM_Интерес/Forms/ФормаДокументаНовая/Ext/Form/Module.bsl
+++ b/src/Documents/CRM_Интерес/Forms/ФормаДокументаНовая/Ext/Form/Module.bsl
@@ -366,13 +366,6 @@
ПроверяемыеРеквизитыИнтереса =
CRM_КонтрольЗаполненностиРеквизитовОбъектовПовтИсп.ПроверяемыеРеквизитыИнтересаВСостоянии(ТекущееСостояние);
- // Управление элементами на форме
- CRM_УправлениеЭлементамиНаФормах.ПриСозданииНаСервере(
- ЭтотОбъект, ,
- "ГруппаДополнительно",
- ?(ЭтоПоддержка, "Поддержка", ""));
- // Конец Управление элементами на форме
-
// Поддержка
Запрос = Новый Запрос;
Запрос.Текст = "ВЫБРАТЬ ПЕРВЫЕ 1
@@ -531,6 +524,14 @@
ЭлементИнциденты.ОтображениеФигуры = ОтображениеФигурыКнопки.Нет;
КонецЕсли;
+ // Управление элементами на форме
+ // ! Блок должен располагаться в конце процедуры !
+ CRM_УправлениеЭлементамиНаФормах.ПриСозданииНаСервере(
+ ЭтотОбъект, ,
+ "ГруппаДополнительно",
+ ?(ЭтоПоддержка, "Поддержка", ""));
+ // Конец Управление элементами на форме
+
CRM_ОбщегоНазначенияСервер.ЗакончитьЗамерВремениСозданияФормы(ЭтотОбъект, ВремяНачалаЗамера);
КонецПроцедуры
diff --git a/src/Documents/АктИнвентаризацииСАТУРН/Forms/ФормаДокумента/Ext/Form/Module.bsl b/src/Documents/АктИнвентаризацииСАТУРН/Forms/ФормаДокумента/Ext/Form/Module.bsl
index cc1f8418e..310319515 100644
--- a/src/Documents/АктИнвентаризацииСАТУРН/Forms/ФормаДокумента/Ext/Form/Module.bsl
+++ b/src/Documents/АктИнвентаризацииСАТУРН/Forms/ФормаДокумента/Ext/Form/Module.bsl
@@ -959,7 +959,7 @@
Если Объект.Товары.Количество() > 0 И ЗадаватьВопрос Тогда
ТекстВопроса = НСтр("ru = 'Данные документа будут перезаполнены. Продолжить?'");
- ОписаниеОповещенияОЗавершении = Новый ОписаниеОповещения("ВопросОПерезаполнениииПоОснованиюПриЗавершении", ЭтотОбъект);
+ ОписаниеОповещенияОЗавершении = Новый ОписаниеОповещения("ВопросОПерезаполненииПоОснованиюПриЗавершении", ЭтотОбъект);
ПоказатьВопрос(ОписаниеОповещенияОЗавершении, ТекстВопроса, РежимДиалогаВопрос.ДаНет);
Иначе
@@ -971,7 +971,7 @@
КонецПроцедуры
&НаКлиенте
-Процедура ВопросОПерезаполнениииПоОснованиюПриЗавершении(Результат, Параметры) Экспорт
+Процедура ВопросОПерезаполненииПоОснованиюПриЗавершении(Результат, Параметры) Экспорт
Если Результат = КодВозвратаДиалога.Да Тогда
diff --git a/src/Documents/АктКонтроляКачестваТоваров/Ext/ManagerModule.bsl b/src/Documents/АктКонтроляКачестваТоваров/Ext/ManagerModule.bsl
index a9e95bbd4..cbc5a4b0c 100644
--- a/src/Documents/АктКонтроляКачестваТоваров/Ext/ManagerModule.bsl
+++ b/src/Documents/АктКонтроляКачестваТоваров/Ext/ManagerModule.bsl
@@ -1198,6 +1198,7 @@
КонецФункции
+
Процедура ОтразитьРаспределениеЗапасовДвижения(Запрос, ТекстыЗапроса, Регистры)
// ДВИЖЕНИЕ (А-): Снять блокировку на складе и в обеспечении с товара.
diff --git a/src/Documents/АктКонтроляКачестваТоваров/Ext/ObjectModule.bsl b/src/Documents/АктКонтроляКачестваТоваров/Ext/ObjectModule.bsl
index d382c2e20..822614be6 100644
--- a/src/Documents/АктКонтроляКачестваТоваров/Ext/ObjectModule.bsl
+++ b/src/Documents/АктКонтроляКачестваТоваров/Ext/ObjectModule.bsl
@@ -255,7 +255,6 @@
ПроведениеДокументов.ПриЗаписиДокумента(ЭтотОбъект, Отказ);
-
КонецПроцедуры
Процедура ОбработкаПроведения(Отказ, РежимПроведения)
diff --git a/src/Documents/АктПостановкиНаБалансЕГАИС/Ext/ManagerModule.bsl b/src/Documents/АктПостановкиНаБалансЕГАИС/Ext/ManagerModule.bsl
index fb45338de..c34ffbb2d 100644
--- a/src/Documents/АктПостановкиНаБалансЕГАИС/Ext/ManagerModule.bsl
+++ b/src/Documents/АктПостановкиНаБалансЕГАИС/Ext/ManagerModule.bsl
@@ -519,7 +519,7 @@
// Возвращает массив дальнейших действий с документом, требующих участия пользователя
//
// Возвращаемое значение:
-// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюЕГАИС - дальшейшие действия
+// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюЕГАИС - дальнейшие действия
//
Функция ВсеТребующиеДействия() Экспорт
@@ -535,7 +535,7 @@
// Возвращает массив дальнейших действий с документом, не требующих участия пользователя
//
// Возвращаемое значение:
-// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюЕГАИС - дальшейшие действия
+// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюЕГАИС - дальнейшие действия
//
Функция ВсеТребующиеОжидания() Экспорт
diff --git a/src/Documents/АктПостановкиНаБалансЕГАИС/Forms/ФормаДокумента/Ext/Form/Module.bsl b/src/Documents/АктПостановкиНаБалансЕГАИС/Forms/ФормаДокумента/Ext/Form/Module.bsl
index ea9109c82..e3f72078a 100644
--- a/src/Documents/АктПостановкиНаБалансЕГАИС/Forms/ФормаДокумента/Ext/Form/Module.bsl
+++ b/src/Documents/АктПостановкиНаБалансЕГАИС/Forms/ФормаДокумента/Ext/Form/Module.bsl
@@ -716,7 +716,7 @@
Если Объект.Товары.Количество() > 0 Тогда
ТекстВопроса = НСтр("ru = 'Табличная часть будет перезаполнена. Продолжить?'");
- ОписаниеОповещенияОЗавершении = Новый ОписаниеОповещения("ВопросОПерезаполнениииПоОснованиюПриЗавершении", ЭтотОбъект);
+ ОписаниеОповещенияОЗавершении = Новый ОписаниеОповещения("ВопросОПерезаполненииПоОснованиюПриЗавершении", ЭтотОбъект);
ПоказатьВопрос(ОписаниеОповещенияОЗавершении, ТекстВопроса, РежимДиалогаВопрос.ДаНет);
Иначе
@@ -1274,7 +1274,7 @@
КонецПроцедуры
&НаКлиенте
-Процедура ВопросОПерезаполнениииПоОснованиюПриЗавершении(Результат, Параметры) Экспорт
+Процедура ВопросОПерезаполненииПоОснованиюПриЗавершении(Результат, Параметры) Экспорт
Если Результат = КодВозвратаДиалога.Да Тогда
diff --git a/src/Documents/АктПримененияСАТУРН/Forms/ФормаДокумента/Ext/Form/Module.bsl b/src/Documents/АктПримененияСАТУРН/Forms/ФормаДокумента/Ext/Form/Module.bsl
index 061491689..d2c8ba531 100644
--- a/src/Documents/АктПримененияСАТУРН/Forms/ФормаДокумента/Ext/Form/Module.bsl
+++ b/src/Documents/АктПримененияСАТУРН/Forms/ФормаДокумента/Ext/Form/Module.bsl
@@ -1049,7 +1049,7 @@
Если Объект.Товары.Количество() > 0 И ЗадаватьВопрос Тогда
ТекстВопроса = НСтр("ru = 'Данные документа будут перезаполнены. Продолжить?'");
- ОписаниеОповещенияОЗавершении = Новый ОписаниеОповещения("ВопросОПерезаполнениииПоОснованиюПриЗавершении", ЭтотОбъект);
+ ОписаниеОповещенияОЗавершении = Новый ОписаниеОповещения("ВопросОПерезаполненииПоОснованиюПриЗавершении", ЭтотОбъект);
ПоказатьВопрос(ОписаниеОповещенияОЗавершении, ТекстВопроса, РежимДиалогаВопрос.ДаНет);
Иначе
@@ -1061,7 +1061,7 @@
КонецПроцедуры
&НаКлиенте
-Процедура ВопросОПерезаполнениииПоОснованиюПриЗавершении(Результат, ПараметрыОповещения) Экспорт
+Процедура ВопросОПерезаполненииПоОснованиюПриЗавершении(Результат, ПараметрыОповещения) Экспорт
Если Результат = КодВозвратаДиалога.Да Тогда
diff --git a/src/Documents/АктСписанияЕГАИС/Ext/ManagerModule.bsl b/src/Documents/АктСписанияЕГАИС/Ext/ManagerModule.bsl
index 906af4f47..1c44dc07c 100644
--- a/src/Documents/АктСписанияЕГАИС/Ext/ManagerModule.bsl
+++ b/src/Documents/АктСписанияЕГАИС/Ext/ManagerModule.bsl
@@ -602,7 +602,7 @@
// Возвращает массив дальнейших действий с документом, требующих участия пользователя
//
// Возвращаемое значение:
-// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюЕГАИС - дальшейшие действия
+// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюЕГАИС - дальнейшие действия
//
Функция ВсеТребующиеДействия() Экспорт
@@ -618,7 +618,7 @@
// Возвращает массив дальнейших действий с документом, не требующих участия пользователя
//
// Возвращаемое значение:
-// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюЕГАИС - дальшейшие действия
+// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюЕГАИС - дальнейшие действия
//
Функция ВсеТребующиеОжидания() Экспорт
diff --git a/src/Documents/АктСписанияЕГАИС/Forms/ФормаДокумента/Ext/Form/Module.bsl b/src/Documents/АктСписанияЕГАИС/Forms/ФормаДокумента/Ext/Form/Module.bsl
index 4ed653aee..081474303 100644
--- a/src/Documents/АктСписанияЕГАИС/Forms/ФормаДокумента/Ext/Form/Module.bsl
+++ b/src/Documents/АктСписанияЕГАИС/Forms/ФормаДокумента/Ext/Form/Module.bsl
@@ -645,7 +645,7 @@
Если Объект.Товары.Количество() > 0 Тогда
ТекстВопроса = НСтр("ru = 'Табличная часть будет перезаполнена. Продолжить?'");
- ОписаниеОповещенияОЗавершении = Новый ОписаниеОповещения("ВопросОПерезаполнениииПоОснованиюПриЗавершении", ЭтотОбъект);
+ ОписаниеОповещенияОЗавершении = Новый ОписаниеОповещения("ВопросОПерезаполненииПоОснованиюПриЗавершении", ЭтотОбъект);
ПоказатьВопрос(ОписаниеОповещенияОЗавершении, ТекстВопроса, РежимДиалогаВопрос.ДаНет);
Иначе
@@ -1528,7 +1528,7 @@
КонецПроцедуры
&НаКлиенте
-Процедура ВопросОПерезаполнениииПоОснованиюПриЗавершении(Результат, Параметры) Экспорт
+Процедура ВопросОПерезаполненииПоОснованиюПриЗавершении(Результат, Параметры) Экспорт
Если Результат = КодВозвратаДиалога.Да Тогда
diff --git a/src/Documents/ВнесениеСведенийОСобранномУрожаеЗЕРНО/Ext/ManagerModule.bsl b/src/Documents/ВнесениеСведенийОСобранномУрожаеЗЕРНО/Ext/ManagerModule.bsl
index 37e46b7e5..edef3f867 100644
--- a/src/Documents/ВнесениеСведенийОСобранномУрожаеЗЕРНО/Ext/ManagerModule.bsl
+++ b/src/Documents/ВнесениеСведенийОСобранномУрожаеЗЕРНО/Ext/ManagerModule.bsl
@@ -454,7 +454,7 @@
// Возвращает массив дальнейших действий с документом, требующих участия пользователя
//
// Возвращаемое значение:
-// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюЗЕРНО - дальшейшие действия.
+// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюЗЕРНО - дальнейшие действия.
//
Функция ВсеТребующиеДействия() Экспорт
@@ -471,7 +471,7 @@
// Возвращает массив дальнейших действий с документом, не требующих участия пользователя
//
// Возвращаемое значение:
-// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюЗЕРНО - дальшейшие действия.
+// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюЗЕРНО - дальнейшие действия.
//
Функция ВсеТребующиеОжидания() Экспорт
diff --git a/src/Documents/ВнесениеСведенийОСобранномУрожаеЗЕРНО/Forms/ФормаДокумента/Ext/Form/Module.bsl b/src/Documents/ВнесениеСведенийОСобранномУрожаеЗЕРНО/Forms/ФормаДокумента/Ext/Form/Module.bsl
index 74901a4c0..5b80dece3 100644
--- a/src/Documents/ВнесениеСведенийОСобранномУрожаеЗЕРНО/Forms/ФормаДокумента/Ext/Form/Module.bsl
+++ b/src/Documents/ВнесениеСведенийОСобранномУрожаеЗЕРНО/Forms/ФормаДокумента/Ext/Form/Module.bsl
@@ -768,7 +768,7 @@
Если Объект.Товары.Количество() > 0 Тогда
ТекстВопроса = НСтр("ru = 'Данные документа будут перезаполнены. Продолжить?'");
- ОписаниеОповещенияОЗавершении = Новый ОписаниеОповещения("ВопросОПерезаполнениииПоОснованиюПриЗавершении", ЭтотОбъект);
+ ОписаниеОповещенияОЗавершении = Новый ОписаниеОповещения("ВопросОПерезаполненииПоОснованиюПриЗавершении", ЭтотОбъект);
ПоказатьВопрос(ОписаниеОповещенияОЗавершении, ТекстВопроса, РежимДиалогаВопрос.ДаНет);
Иначе
@@ -780,7 +780,7 @@
КонецПроцедуры
&НаКлиенте
-Процедура ВопросОПерезаполнениииПоОснованиюПриЗавершении(Результат, Параметры) Экспорт
+Процедура ВопросОПерезаполненииПоОснованиюПриЗавершении(Результат, Параметры) Экспорт
Если Результат = КодВозвратаДиалога.Да Тогда
diff --git a/src/Documents/ВозвратВОборотИСМП/Ext/ManagerModule.bsl b/src/Documents/ВозвратВОборотИСМП/Ext/ManagerModule.bsl
index c5f8ab1c4..fdd26f678 100644
--- a/src/Documents/ВозвратВОборотИСМП/Ext/ManagerModule.bsl
+++ b/src/Documents/ВозвратВОборотИСМП/Ext/ManagerModule.bsl
@@ -327,7 +327,7 @@
// Возвращает массив дальнейших действий с документом, требующих участия пользователя
//
// Возвращаемое значение:
-// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюИСМП - дальшейшие действия
+// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюИСМП - дальнейшие действия
//
Функция ВсеТребующиеДействия() Экспорт
@@ -343,7 +343,7 @@
// Возвращает массив дальнейших действий с документом, не требующих участия пользователя
//
// Возвращаемое значение:
-// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюИСМП - дальшейшие действия
+// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюИСМП - дальнейшие действия
//
Функция ВсеТребующиеОжидания() Экспорт
@@ -734,7 +734,7 @@
КонецПроцедуры
-// Обработка данных перехода на конструктор настроек видов продуции
+// Обработка данных перехода на конструктор настроек видов продукции
//
// Параметры:
// Параметры - см. ОбновлениеИнформационнойБазы.ОсновныеПараметрыОтметкиКОбработке
@@ -747,13 +747,13 @@
КонецПроцедуры
-// Дополнтельная обработка данных при переходе на конструктор настроек.
+// Дополнительная обработка данных при переходе на конструктор настроек.
//
// Параметры:
// ДокументОбъект - ДокументОбъект.ВозвратВОборотИСМП
// ПроблемыСДанными - Соответствие из КлючИЗначение
// КешКонвертаций - см. ОбновлениеИнформационнойБазыГосИС.КешКонвертацийВидаПродукции
-Процедура ДополнтельнаяОбработкаДанныхПриПереходеНаКонструкторНастроек(ДокументОбъект, ПроблемыСДанными, КешКонвертаций) Экспорт
+Процедура ДополнительнаяОбработкаДанныхПриПереходеНаКонструкторНастроек(ДокументОбъект, ПроблемыСДанными, КешКонвертаций) Экспорт
Если КешКонвертаций.ВидыВозвратаВОборот = Неопределено Тогда
КешКонвертаций.ВидыВозвратаВОборот = ОбновлениеИнформационнойБазыИСМП.ВидыВозвратаВОборотКонструктораНастроекПоПеречислению();
diff --git a/src/Documents/ВозвратВОборотИСМП/Forms/ФормаДокумента/Ext/Form/Module.bsl b/src/Documents/ВозвратВОборотИСМП/Forms/ФормаДокумента/Ext/Form/Module.bsl
index 0c9c5d815..682aaf3a8 100644
--- a/src/Documents/ВозвратВОборотИСМП/Forms/ФормаДокумента/Ext/Form/Module.bsl
+++ b/src/Documents/ВозвратВОборотИСМП/Forms/ФормаДокумента/Ext/Form/Module.bsl
@@ -1411,7 +1411,7 @@
ТекстВопроса = НСтр("ru = 'Данные документа будут перезаполнены. Продолжить?'");
ОписаниеОповещенияОЗавершении = Новый ОписаниеОповещения(
- "ВопросОПерезаполнениииПоОснованиюПриЗавершении", ЭтотОбъект);
+ "ВопросОПерезаполненииПоОснованиюПриЗавершении", ЭтотОбъект);
ПоказатьВопрос(ОписаниеОповещенияОЗавершении, ТекстВопроса, РежимДиалогаВопрос.ДаНет);
Иначе
@@ -1423,7 +1423,7 @@
КонецПроцедуры
&НаКлиенте
-Процедура ВопросОПерезаполнениииПоОснованиюПриЗавершении(Результат, Параметры) Экспорт
+Процедура ВопросОПерезаполненииПоОснованиюПриЗавершении(Результат, Параметры) Экспорт
Если Результат = КодВозвратаДиалога.Да Тогда
diff --git a/src/Documents/ВозвратИзРегистра2ЕГАИС/Ext/ManagerModule.bsl b/src/Documents/ВозвратИзРегистра2ЕГАИС/Ext/ManagerModule.bsl
index dd43e834a..b829c76f4 100644
--- a/src/Documents/ВозвратИзРегистра2ЕГАИС/Ext/ManagerModule.bsl
+++ b/src/Documents/ВозвратИзРегистра2ЕГАИС/Ext/ManagerModule.bsl
@@ -388,7 +388,7 @@
// Возвращает массив дальнейших действий с документом, требующих участия пользователя
//
// Возвращаемое значение:
-// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюЕГАИС - дальшейшие действия
+// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюЕГАИС - дальнейшие действия
//
Функция ВсеТребующиеДействия() Экспорт
@@ -403,7 +403,7 @@
// Возвращает массив дальнейших действий с документом, требующих ожидания пользователя
//
// Возвращаемое значение:
-// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюЕГАИС - дальшейшие действия
+// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюЕГАИС - дальнейшие действия
Функция ВсеТребующиеОжидания() Экспорт
МассивДействий = Новый Массив;
diff --git a/src/Documents/ВозвратИзРегистра2ЕГАИС/Forms/ФормаДокумента/Ext/Form/Module.bsl b/src/Documents/ВозвратИзРегистра2ЕГАИС/Forms/ФормаДокумента/Ext/Form/Module.bsl
index bbcbd9c91..a4710aaba 100644
--- a/src/Documents/ВозвратИзРегистра2ЕГАИС/Forms/ФормаДокумента/Ext/Form/Module.bsl
+++ b/src/Documents/ВозвратИзРегистра2ЕГАИС/Forms/ФормаДокумента/Ext/Form/Module.bsl
@@ -488,7 +488,7 @@
Если Объект.Товары.Количество() > 0 Тогда
ТекстВопроса = НСтр("ru = 'Табличная часть будет перезаполнена. Продолжить?'");
- ОписаниеОповещенияОЗавершении = Новый ОписаниеОповещения("ВопросОПерезаполнениииПоОснованиюПриЗавершении", ЭтотОбъект);
+ ОписаниеОповещенияОЗавершении = Новый ОписаниеОповещения("ВопросОПерезаполненииПоОснованиюПриЗавершении", ЭтотОбъект);
ПоказатьВопрос(ОписаниеОповещенияОЗавершении, ТекстВопроса, РежимДиалогаВопрос.ДаНет);
Иначе
@@ -1047,7 +1047,7 @@
КонецПроцедуры
&НаКлиенте
-Процедура ВопросОПерезаполнениииПоОснованиюПриЗавершении(Результат, Параметры) Экспорт
+Процедура ВопросОПерезаполненииПоОснованиюПриЗавершении(Результат, Параметры) Экспорт
Если Результат = КодВозвратаДиалога.Да Тогда
diff --git a/src/Documents/ВозвратТоваровМеждуОрганизациями/Ext/ObjectModule.bsl b/src/Documents/ВозвратТоваровМеждуОрганизациями/Ext/ObjectModule.bsl
index 91e1d75d1..306445786 100644
--- a/src/Documents/ВозвратТоваровМеждуОрганизациями/Ext/ObjectModule.bsl
+++ b/src/Documents/ВозвратТоваровМеждуОрганизациями/Ext/ObjectModule.bsl
@@ -851,6 +851,9 @@
СтруктураЗаполненияСтавкиНДС = ПакетнаяОбработкаТабличнойЧастиКлиентСервер.ПараметрыЗаполненияСтавкиНДС(ЭтотОбъект);
СтруктураЗаполненияСтавкиНДС.ЗаполнениеНаОснованииКопирование = Истина;
СтруктураЗаполненияСтавкиНДС.Организация = ОрганизацияПолучатель;
+ Если ЗначениеЗаполнено(ДокументПередачи) Тогда
+ СтруктураЗаполненияСтавкиНДС.Дата = ОбщегоНазначения.ЗначениеРеквизитаОбъекта(ДокументПередачи, "Дата");
+ КонецЕсли;
СтруктураДействий = Новый Структура;
КэшированныеЗначения = ПакетнаяОбработкаТабличнойЧастиКлиентСервер.ПолучитьСтруктуруКэшируемыеЗначения();
diff --git a/src/Documents/ВозвратТоваровОтКлиента/Ext/ManagerModule.bsl b/src/Documents/ВозвратТоваровОтКлиента/Ext/ManagerModule.bsl
index 7198a2f76..7053a85ea 100644
--- a/src/Documents/ВозвратТоваровОтКлиента/Ext/ManagerModule.bsl
+++ b/src/Documents/ВозвратТоваровОтКлиента/Ext/ManagerModule.bsl
@@ -3194,12 +3194,26 @@
| КОГДА ТаблицаВидыЗапасов.ПериодПродажи < &НачалоМесяцаПериода
| ТОГДА ЗНАЧЕНИЕ(Перечисление.ТипыЗаписейПартий.ВозвратПрошлыхПериодов)
| ИНАЧЕ ЗНАЧЕНИЕ(Перечисление.ТипыЗаписейПартий.ВозвратНаДругойСклад)
- | КОНЕЦ КАК ТипЗаписи
+ | КОНЕЦ КАК ТипЗаписи,
+ | ВЫБОР
+ | КОГДА ТаблицаВидыЗапасов.СпособОпределенияСебестоимости В (ЗНАЧЕНИЕ(Перечисление.СпособыОпределенияСебестоимостиВозврата.Вручную),
+ | ЗНАЧЕНИЕ(Перечисление.СпособыОпределенияСебестоимостиВозврата.ИзТекущегоДокумента))
+ | ТОГДА ДАТАВРЕМЯ(1,1,1)
+ | КОГДА Реализация.ХозяйственнаяОперация = ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.РеализацияБезПереходаПраваСобственности)
+ | И Реализация.ДатаПереходаПраваСобственности <> ДАТАВРЕМЯ(1,1,1)
+ | ТОГДА Реализация.ДатаПереходаПраваСобственности
+ | ИНАЧЕ ЕСТЬNULL(РеестрДокументовРеализация.ДатаДокументаИБ, ДАТАВРЕМЯ(1,1,1))
+ | КОНЕЦ КАК ПериодПродажи
|
|ИЗ
| Документ.ВозвратТоваровОтКлиента КАК ТаблицаДокумента
| ВНУТРЕННЕЕ СОЕДИНЕНИЕ ВтТаблицаВидыЗапасов КАК ТаблицаВидыЗапасов
| ПО ИСТИНА
+ | ЛЕВОЕ СОЕДИНЕНИЕ Документ.РеализацияТоваровУслуг Как Реализация
+ | ПО Реализация.Ссылка = ТаблицаВидыЗапасов.ДокументРеализации
+ | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.РеестрДокументов КАК РеестрДокументовРеализация
+ | ПО ТаблицаВидыЗапасов.ДокументРеализации = РеестрДокументовРеализация.Ссылка
+ | И НЕ РеестрДокументовРеализация.ДополнительнаяЗапись
|ГДЕ
| ТаблицаДокумента.Ссылка В (&Ссылка)
| И ТаблицаВидыЗапасов.СпособОпределенияСебестоимости = ЗНАЧЕНИЕ(Перечисление.СпособыОпределенияСебестоимостиВозврата.ИзДокументаПродажи)
@@ -3281,12 +3295,26 @@
| КОНЕЦ КАК ХозяйственнаяОперация,
| ТаблицаВидыЗапасов.ИдентификаторСтроки КАК ИдентификаторФинЗаписи,
| ТаблицаВидыЗапасов.НастройкаХозяйственнойОперации КАК НастройкаХозяйственнойОперации,
- | ЗНАЧЕНИЕ(Перечисление.ТипыЗаписейПартий.Сторно) КАК ТипЗаписи
+ | ЗНАЧЕНИЕ(Перечисление.ТипыЗаписейПартий.Сторно) КАК ТипЗаписи,
+ | ВЫБОР
+ | КОГДА ТаблицаВидыЗапасов.СпособОпределенияСебестоимости В (ЗНАЧЕНИЕ(Перечисление.СпособыОпределенияСебестоимостиВозврата.Вручную),
+ | ЗНАЧЕНИЕ(Перечисление.СпособыОпределенияСебестоимостиВозврата.ИзТекущегоДокумента))
+ | ТОГДА ДАТАВРЕМЯ(1,1,1)
+ | КОГДА Реализация.ХозяйственнаяОперация = ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.РеализацияБезПереходаПраваСобственности)
+ | И Реализация.ДатаПереходаПраваСобственности <> ДАТАВРЕМЯ(1,1,1)
+ | ТОГДА Реализация.ДатаПереходаПраваСобственности
+ | ИНАЧЕ ЕСТЬNULL(РеестрДокументовРеализация.ДатаДокументаИБ, ДАТАВРЕМЯ(1,1,1))
+ | КОНЕЦ КАК ПериодПродажи
|
|ИЗ
| Документ.ВозвратТоваровОтКлиента КАК ТаблицаДокумента
| ВНУТРЕННЕЕ СОЕДИНЕНИЕ ВтТаблицаВидыЗапасов КАК ТаблицаВидыЗапасов
| ПО ИСТИНА
+ | ЛЕВОЕ СОЕДИНЕНИЕ Документ.РеализацияТоваровУслуг Как Реализация
+ | ПО Реализация.Ссылка = ТаблицаВидыЗапасов.ДокументРеализации
+ | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.РеестрДокументов КАК РеестрДокументовРеализация
+ | ПО ТаблицаВидыЗапасов.ДокументРеализации = РеестрДокументовРеализация.Ссылка
+ | И НЕ РеестрДокументовРеализация.ДополнительнаяЗапись
|ГДЕ
| ТаблицаДокумента.Ссылка В (&Ссылка)
| И ТаблицаВидыЗапасов.СпособОпределенияСебестоимости = ЗНАЧЕНИЕ(Перечисление.СпособыОпределенияСебестоимостиВозврата.ИзДокументаПродажи)
diff --git a/src/Documents/ВозвратТоваровОтКлиента/Forms/ФормаДокумента/Ext/Form/Module.bsl b/src/Documents/ВозвратТоваровОтКлиента/Forms/ФормаДокумента/Ext/Form/Module.bsl
index 5adce4715..ec0fc873b 100644
--- a/src/Documents/ВозвратТоваровОтКлиента/Forms/ФормаДокумента/Ext/Form/Module.bsl
+++ b/src/Documents/ВозвратТоваровОтКлиента/Forms/ФормаДокумента/Ext/Form/Module.bsl
@@ -1525,6 +1525,7 @@
ПараметрОповещения = Новый Структура;
ПараметрОповещения.Вставить("НоменклатураНабора", ТекущаяСтрока.НоменклатураНабора);
ПараметрОповещения.Вставить("ХарактеристикаНабора", ТекущаяСтрока.ХарактеристикаНабора);
+ ПараметрОповещения.Вставить("ДокументРеализации", ТекущаяСтрока.ДокументРеализации);
ПараметрОповещения.Вставить("ФормаВладелец", УникальныйИдентификатор);
Оповестить("РедактироватьНабор", ПараметрОповещения, ЭтаФорма);
diff --git a/src/Documents/ВходящаяТранспортнаяОперацияВЕТИС/Ext/ManagerModule.bsl b/src/Documents/ВходящаяТранспортнаяОперацияВЕТИС/Ext/ManagerModule.bsl
index c01710a9c..45b6c6663 100644
--- a/src/Documents/ВходящаяТранспортнаяОперацияВЕТИС/Ext/ManagerModule.bsl
+++ b/src/Documents/ВходящаяТранспортнаяОперацияВЕТИС/Ext/ManagerModule.bsl
@@ -958,7 +958,7 @@
// Возвращает массив дальнейших действий с документом, требующих участия пользователя
//
// Возвращаемое значение:
-// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюВЕТИС - дальшейшие действия
+// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюВЕТИС - дальнейшие действия
//
Функция ВсеТребующиеДействия() Экспорт
diff --git a/src/Documents/ВыводИзОборотаИСМП.xml b/src/Documents/ВыводИзОборотаИСМП.xml
index 423567f42..f26f06b89 100644
--- a/src/Documents/ВыводИзОборотаИСМП.xml
+++ b/src/Documents/ВыводИзОборотаИСМП.xml
@@ -1427,6 +1427,45 @@
Use
+
+
+ ИспользуетсяМОД
+
+
+ ru
+ Используется МОД
+
+
+
+
+ xs:boolean
+
+ false
+
+
+
+ false
+
+ false
+ false
+
+
+ false
+
+ DontCheck
+ Items
+
+
+ Auto
+ Auto
+
+
+ Auto
+ DontIndex
+ Use
+ Use
+
+
diff --git a/src/Documents/ВыводИзОборотаИСМП/Ext/ManagerModule.bsl b/src/Documents/ВыводИзОборотаИСМП/Ext/ManagerModule.bsl
index 678e7f30a..4adcb81ff 100644
--- a/src/Documents/ВыводИзОборотаИСМП/Ext/ManagerModule.bsl
+++ b/src/Documents/ВыводИзОборотаИСМП/Ext/ManagerModule.bsl
@@ -645,7 +645,7 @@
// Возвращает массив дальнейших действий с документом, требующих участия пользователя
//
// Возвращаемое значение:
-// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюИСМП - дальшейшие действия
+// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюИСМП - дальнейшие действия
//
Функция ВсеТребующиеДействия() Экспорт
@@ -662,7 +662,7 @@
// Возвращает массив дальнейших действий с документом, требующих ожидания пользователем
//
// Возвращаемое значение:
-// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюИСМП - дальшейшие действия
+// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюИСМП - дальнейшие действия
//
Функция ВсеТребующиеОжидания() Экспорт
@@ -822,7 +822,7 @@
КонецПопытки;
Иначе
- ДокументОбъект.Записать(РежимЗаписиДокумента.Запись)
+ ДокументОбъект.Записать(РежимЗаписиДокумента.Запись);
КонецЕсли;
КонецПроцедуры
@@ -975,7 +975,7 @@
КонецПроцедуры
-// Обработка данных перехода на конструктор настроек видов продуции
+// Обработка данных перехода на конструктор настроек видов продукции
//
// Параметры:
// Параметры - см. ОбновлениеИнформационнойБазы.ОсновныеПараметрыОтметкиКОбработке
@@ -988,13 +988,13 @@
КонецПроцедуры
-// Дополнтельная обработка данных при переходе на конструктор настроек.
+// Дополнительная обработка данных при переходе на конструктор настроек.
//
// Параметры:
// ДокументОбъект - ДокументОбъект.ВыводИзОборотаИСМП
// ПроблемыСДанными - Соответствие из КлючИЗначение
// КешКонвертаций - см. ОбновлениеИнформационнойБазыГосИС.КешКонвертацийВидаПродукции
-Процедура ДополнтельнаяОбработкаДанныхПриПереходеНаКонструкторНастроек(ДокументОбъект, ПроблемыСДанными, КешКонвертаций) Экспорт
+Процедура ДополнительнаяОбработкаДанныхПриПереходеНаКонструкторНастроек(ДокументОбъект, ПроблемыСДанными, КешКонвертаций) Экспорт
Если КешКонвертаций.ПричиныВыбытия = Неопределено Тогда
КешКонвертаций.ПричиныВыбытия = Перечисления.УдалитьПричиныСписанияКодовМаркировкиИСМП.ПричиныВыбытияКонструктораНастроекПоПеречислению();
@@ -1360,7 +1360,7 @@
Иначе
ОбщегоНазначенияИСКлиентСервер.ДобавитьТекстОшибки(
СообщениеJSON,
- НСтр("ru = 'Не заполнено поле ""Транспорное средство""'"));
+ НСтр("ru = 'Не заполнено поле ""Транспортное средство""'"));
КонецЕсли;
НомерТранспортногоСредства = РеквизитыТранспортногоСредства.НомерТранспортногоСредства;
Иначе
@@ -1602,7 +1602,7 @@
СообщениеJSON.Организация = Шапка.Организация;
СообщениеJSON.Описание = ОбменДаннымиИСМП.ОписаниеОперацииПередачиДанных(
Операция, ДокументСсылка);
- СообщениеJSON.ТекстОшибки = НСтр("ru = 'Нет данных для определения индентификатора исходной операции.'");
+ СообщениеJSON.ТекстОшибки = НСтр("ru = 'Нет данных для определения идентификатора исходной операции.'");
СообщениеJSON.ТребуетсяПодписание = Ложь;
СообщенияJSON.Добавить(СообщениеJSON);
@@ -1719,6 +1719,7 @@
| Шапка.ОбъемноСортовойУчет КАК ОбъемноСортовойУчет,
| Шапка.Ссылка КАК Ссылка,
| Шапка.УведомитьОбОтгрузкеНаЭкспорт КАК УведомитьОбОтгрузкеНаЭкспорт,
+ | Шапка.ИспользуетсяМОД КАК ИспользуетсяМОД,
|
| ЕСТЬNULL(Шапка.СтранаНазначения.Код, """") КАК СтранаНазначенияКод
|
@@ -1935,8 +1936,7 @@
ТелоЗапроса.Вставить("action_date", ИнтеграцияИС.ДатаUTC(Шапка.Дата));
КонецЕсли;
- Если ИспользованиеАдресаВсегда
- Или ИспользованиеАдреса И ЗначениеЗаполнено(Шапка.АдресПлощадки) Тогда
+ Если Шапка.ИспользуетсяМОД И ЗначениеЗаполнено(Шапка.АдресПлощадки) Тогда
ИдентификаторАдреса = ОбщегоНазначенияИСМП.ИдентификаторФИАСПоДаннымАдреса(Шапка.АдресПлощадки).Идентификатор;
@@ -1952,7 +1952,7 @@
КонецЕсли;
- Если ЗначениеЗаполнено(РеквизитыОрганизации.КПП)
+ Если Шапка.ИспользуетсяМОД И ЗначениеЗаполнено(РеквизитыОрганизации.КПП)
И ВыводИзОборотаКлиентСервер.ДоступноПолеКПП(ВидыПродукцииПоТоварнойГруппе, Шапка.Причина) Тогда
ТелоЗапроса.Вставить("kpp", РеквизитыОрганизации.КПП);
КонецЕсли;
@@ -2226,6 +2226,47 @@
КонецЦикла;
+ Если Шапка.ИспользуетсяМОД И ЗначениеЗаполнено(Шапка.АдресПлощадкиСтрокой) Тогда
+ ДоступнаРегистрацияМОДВГИСМТ = ВыводИзОборотаКлиентСервер.ДоступнаРегистрацияМОДВГИСМТ(ВидыПродукцииПоТоварнойГруппе);
+
+ Если ДоступнаРегистрацияМОДВГИСМТ И Не РегистрыСведений.МестаОсуществленияДеятельностиИСМП.МестоОсуществленияДеятельностиЗагруженоИзГИСМТ(
+ Шапка.Организация, Шапка.ТоварнаяГруппа, РеквизитыОрганизации.КПП, ИдентификаторАдреса) Тогда
+
+ ТоварныеГруппы = Новый Массив;
+ ТоварныеГруппы.Добавить(Шапка.ТоварнаяГруппа);
+
+ ДанныеМОДВДокументе = Новый Структура;
+ ДанныеМОДВДокументе.Вставить("КодФИАС", ИдентификаторАдреса);
+ ДанныеМОДВДокументе.Вставить("ДанныеАдреса", Шапка.АдресПлощадки);
+ ДанныеМОДВДокументе.Вставить("ДанныеАдресаСтрокой", Шапка.АдресПлощадкиСтрокой);
+ ДанныеМОДВДокументе.Вставить("КПП", РеквизитыОрганизации.КПП);
+ ДанныеМОДВДокументе.Вставить("ИНН", РеквизитыОрганизации.ИНН);
+ ДанныеМОДВДокументе.Вставить("Организация", Шапка.Организация);
+ ДанныеМОДВДокументе.Вставить("Документ", ДокументСсылка);
+ ДанныеМОДВДокументе.Вставить("Подразделение", Шапка.ПроизводственныйОбъект);
+ ДанныеМОДВДокументе.Вставить("ТоварныеГруппы", ТоварныеГруппы);
+
+ Если ДополнительныеПараметры.ПараметрыОбмена.МОДКПроверкеРегистрации <> Неопределено Тогда
+ ДополнительныеПараметры.ПараметрыОбмена.МОДКПроверкеРегистрации.Добавить(ДанныеМОДВДокументе);
+ Иначе
+ МОДКПроверкеРегистрации = Новый Массив;
+ МОДКПроверкеРегистрации.Добавить(ДанныеМОДВДокументе);
+ ДополнительныеПараметры.ПараметрыОбмена.МОДКПроверкеРегистрации = МОДКПроверкеРегистрации;
+ КонецЕсли;
+
+ ТекстСообщенияJSON = ОбменДаннымиИСМПКлиентСервер.ОбъектВТекстJSON(ТелоЗапроса, Истина);
+ СообщениеJSON.ТекстСообщенияJSON = ТекстСообщенияJSON;
+ СообщениеJSON.Операция = Перечисления.ВидыОперацийИСМП.ПовторноеФормированиеСообщений;
+ СообщениеJSON.ПараметрыЗапроса = ДополнительныеПараметры.ПараметрыОбработкиДокумента;
+ СообщениеJSON.ТребуетсяПодписание = Ложь;
+ СообщенияJSON.Добавить(СообщениеJSON);
+
+ Возврат СообщенияJSON;
+
+ КонецЕсли;
+
+ КонецЕсли;
+
ТекстСообщенияJSON = ОбменДаннымиИСМПКлиентСервер.ОбъектВТекстJSON(ТелоЗапроса, Истина);
СообщениеJSON.ТекстСообщенияJSON = ТекстСообщенияJSON;
СообщениеJSON.ПараметрыЗапроса = ПараметрыЗапроса;
diff --git a/src/Documents/ВыводИзОборотаИСМП/Forms/ФормаДокумента/Ext/Form.xml b/src/Documents/ВыводИзОборотаИСМП/Forms/ФормаДокумента/Ext/Form.xml
index 8731518a8..1d1cc635b 100644
--- a/src/Documents/ВыводИзОборотаИСМП/Forms/ФормаДокумента/Ext/Form.xml
+++ b/src/Documents/ВыводИзОборотаИСМП/Forms/ФормаДокумента/Ext/Form.xml
@@ -572,31 +572,6 @@
-
- Объект.ПроизводственныйОбъект
- false
- 28
-
-
-
- ПроизводственныйОбъектПриИзменении
- ПроизводственныйОбъектНачалоВыбора
-
-
-
- Объект.АдресПлощадкиСтрокой
- false
- 28
- true
-
-
-
- АдресПлощадкиСтрокойПриИзменении
- АдресПлощадкиСтрокойНачалоВыбора
- АдресПлощадкиСтрокойОчистка
- АдресПлощадкиСтрокойОбработкаВыбора
-
-
Объект.ИдентификаторГосударственногоКонтракта
false
@@ -604,6 +579,115 @@
+
+
+
+ ru
+ Группа адрес и МОД
+
+
+ Vertical
+ None
+ false
+
+
+
+
+
+ ru
+ Группа адрес МОД описание
+
+
+ None
+ false
+
+
+
+ Объект.ИспользуетсяМОД
+
+
+ ru
+ Передавать МОД
+
+
+ Switcher
+
+
+
+ ИспользуетсяМОДПриИзменении
+
+
+
+ false
+ style:ЦветТекстаНеТребуетВниманияГосИС
+
+
+
+
+
+
+
+
+ ru
+ Группа адрес статус проверки
+
+
+ Vertical
+ None
+ false
+
+
+
+ Объект.ПроизводственныйОбъект
+ false
+ 28
+
+
+
+ ПроизводственныйОбъектПриИзменении
+ ПроизводственныйОбъектНачалоВыбора
+
+
+
+ ПодразделениеКПП
+
+
+
+
+ Объект.АдресПлощадкиСтрокой
+ false
+ 28
+ true
+ true
+
+
+
+ АдресПлощадкиСтрокойПриИзменении
+ АдресПлощадкиСтрокойНачалоВыбора
+ АдресПлощадкиСтрокойОчистка
+ АдресПлощадкиСтрокойОбработкаВыбора
+
+
+
+ СтатусПроверкиМОД
+
+
+
+ СтатусПроверкиМОДОбработкаНавигационнойСсылки
+
+
+
+ false
+
+
+
+ РасшифровкаСтатусаПроверкиМОДОбработкаНавигационнойСсылки
+
+
+
+
+
+
Объект.СтранаНазначения
false
@@ -1908,6 +1992,32 @@
xs:boolean
+
+
+
+ ru
+ Статус проверки МОД
+
+
+
+ v8ui:FormattedString
+
+
+
+
+
+ ru
+ КПП
+
+
+
+ xs:string
+
+ 0
+ Variable
+
+
+
diff --git a/src/Documents/ВыводИзОборотаИСМП/Forms/ФормаДокумента/Ext/Form/Module.bsl b/src/Documents/ВыводИзОборотаИСМП/Forms/ФормаДокумента/Ext/Form/Module.bsl
index a9661d48f..7d2dbeb73 100644
--- a/src/Documents/ВыводИзОборотаИСМП/Forms/ФормаДокумента/Ext/Form/Module.bsl
+++ b/src/Documents/ВыводИзОборотаИСМП/Forms/ФормаДокумента/Ext/Form/Module.bsl
@@ -64,7 +64,7 @@
ОбщегоНазначенияСобытияФормИСПереопределяемый.ПриСозданииНаСервере(ЭтотОбъект, Отказ, СтандартнаяОбработка);
ОбщегоНазначенияИС.НастроитьСпискиВыбораФормыОбъекта(ЭтотОбъект);
- // СтандартныеПодсистемы.КонтактнаяИнформаци
+ // СтандартныеПодсистемы.КонтактнаяИнформация
ИнициализироватьПоляКонтактнойИнформации();
// Конец СтандартныеПодсистемы.КонтактнаяИнформация
@@ -160,7 +160,7 @@
Если Не ТоварнаяГруппаУказана()
Или РедактированиеФормыНедоступно
Или Не ПравоИзменения
- Или РедактированиеНедоступноПоСтатусуПроверкиИподбора(ЭтотОбъект) Тогда
+ Или РедактированиеНедоступноПоСтатусуПроверкиИПодбора(ЭтотОбъект) Тогда
Возврат;
КонецЕсли;
@@ -373,6 +373,10 @@
Процедура ОрганизацияПриИзменении(Элемент)
ПроизводственныйОбъектЗаполнитьСписокВыбора(ЭтотОбъект, Истина);
+ НастроитьЗависимыеЭлементыФормы(ЭтотОбъект, "ИспользуетсяМОД");
+ ЗаполнитьКПППоПроизводственномуОбъекту();
+ ЗаполнитьДоступныеАдресаМОД();
+ ОбновитьСтатусПроверкиМОД();
КонецПроцедуры
@@ -436,6 +440,8 @@
Процедура ПроизводственныйОбъектПриИзменении(Элемент)
ЗаполнитьАдресПроизводственногоОбъекта(ЭтотОбъект);
+ ЗаполнитьКПППоПроизводственномуОбъекту();
+ ОбновитьСтатусПроверкиМОД();
КонецПроцедуры
@@ -448,11 +454,22 @@
Возврат;
КонецЕсли;
- Объект.АдресПлощадкиСтрокой = ВыбранноеЗначение.Представление;
- Объект.АдресПлощадки = ВыбранноеЗначение.КонтактнаяИнформация;
- КомментарийАдресаПлощадки = ВыбранноеЗначение.Комментарий;
+ Если ВыбранноеЗначение.Свойство("Действие") Тогда
+ Если ВыбранноеЗначение.Действие = "ОткрытьСписокМОД" Тогда
+ ОткрытьСписокМестОсуществленияДеятельности();
+ ИначеЕсли ВыбранноеЗначение.Действие = "ЗаполнитьАдрес" Тогда
+ Объект.АдресПлощадкиСтрокой = ВыбранноеЗначение.ПредставлениеАдреса;
+ Объект.АдресПлощадки = ВыбранноеЗначение.ДанныеАдреса;
+ Модифицированность = Истина;
+ КонецЕсли;
+ Иначе
+ Объект.АдресПлощадкиСтрокой = ВыбранноеЗначение.Представление;
+ Объект.АдресПлощадки = ВыбранноеЗначение.КонтактнаяИнформация;
+ КомментарийАдресаПлощадки = ВыбранноеЗначение.Комментарий;
+ Модифицированность = Истина;
+ КонецЕсли;
- Модифицированность = Истина;
+ ОбновитьСтатусПроверкиМОД();
КонецПроцедуры
@@ -464,6 +481,8 @@
Объект.АдресПлощадки = "";
КомментарийАдресаПлощадки = "";
+ ОбновитьСтатусПроверкиМОД();
+
КонецПроцедуры
&НаКлиенте
@@ -475,15 +494,16 @@
Объект.АдресПлощадки = "";
Объект.АдресПлощадкиСтрокой = "";
КомментарийАдресаПлощадки = "";
- Возврат;
- КонецЕсли;
-
- // Формируем внутренние значения полей по тексту и параметрам формирования из
- // реквизита ВидКонтактнойИнформацииАдресаДоставки.
- Объект.АдресПлощадкиСтрокой = Текст;
- Объект.АдресПлощадки = ОбщегоНазначенияИСВызовСервера.ЗначенияПолейКонтактнойИнформации(
+ Иначе
+ // Формируем внутренние значения полей по тексту и параметрам формирования из
+ // реквизита ВидКонтактнойИнформацииАдресаДоставки.
+ Объект.АдресПлощадкиСтрокой = Текст;
+ Объект.АдресПлощадки = ОбщегоНазначенияИСВызовСервера.ЗначенияПолейКонтактнойИнформации(
Текст, ВидКонтактнойИнформацииАдресаПроизводственногоОбъекта);
-
+ КонецЕсли;
+
+ ОбновитьСтатусПроверкиМОД();
+
КонецПроцедуры
&НаКлиенте
@@ -607,6 +627,33 @@
КонецПроцедуры
+&НаКлиенте
+Процедура ИспользуетсяМОДПриИзменении(Элемент)
+
+ НастроитьЗависимыеЭлементыФормы(ЭтотОбъект, "ИспользуетсяМОД");
+ ОбновитьСтатусПроверкиМОД();
+ ЗаполнитьДоступныеАдресаМОД();
+
+КонецПроцедуры
+
+&НаКлиенте
+Процедура СтатусПроверкиМОДОбработкаНавигационнойСсылки(Элемент, НавигационнаяСсылкаФорматированнойСтроки, СтандартнаяОбработка)
+
+ СтандартнаяОбработка = Ложь;
+
+ ОбработкаНавигационнойСсылкиМОД(НавигационнаяСсылкаФорматированнойСтроки);
+
+КонецПроцедуры
+
+&НаКлиенте
+Процедура РасшифровкаСтатусаПроверкиМОДОбработкаНавигационнойСсылки(Элемент, НавигационнаяСсылкаФорматированнойСтроки, СтандартнаяОбработка)
+
+ СтандартнаяОбработка = Ложь;
+
+ ОбработкаНавигационнойСсылкиМОД(НавигационнаяСсылкаФорматированнойСтроки);
+
+КонецПроцедуры
+
#КонецОбласти
#Область ОбработчикиСобытийЭлементовТаблицыФормыТовары
@@ -745,7 +792,7 @@
Если РедактированиеФормыНедоступно
Или Не ПравоИзменения
- Или РедактированиеНедоступноПоСтатусуПроверкиИподбора(ЭтотОбъект) Тогда
+ Или РедактированиеНедоступноПоСтатусуПроверкиИПодбора(ЭтотОбъект) Тогда
СобытияФормИСМПКлиент.ВыборЭлементаТабличнойЧастиОткрытьФормуЭлемента(ЭтотОбъект, Элемент, Поле);
КонецЕсли;
@@ -1294,6 +1341,9 @@
УстановитьПараметрыВыбораКонтрагентаНаСервере();
УстановитьПараметрыВыбораСтраныМира();
+ ОбновитьСтатусПроверкиМОД();
+ ЗаполнитьДоступныеАдресаМОД();
+ ЗаполнитьКПППоПроизводственномуОбъекту();
КонецПроцедуры
@@ -1333,7 +1383,7 @@
ОбщегоНазначенияИСКлиентСервер.УстановитьДоступностьЭлементовФормы(Форма,
ЗависимыеОтСтатусаПроверкиИПодбора,
- Не (Форма.РедактированиеФормыНеДоступно Или РедактированиеНедоступноПоСтатусуПроверкиИподбора(Форма)));
+ Не (Форма.РедактированиеФормыНеДоступно Или РедактированиеНедоступноПоСтатусуПроверкиИПодбора(Форма)));
ВидимостьКолонокЦен = ВыводИзОборотаКлиентСервер.ДоступноПолеЦена(ВидыПродукцииПоТоварнойГруппе, Объект.Причина);
@@ -1357,11 +1407,11 @@
Иначе
Элементы.НомерТранспортногоСредства.Заголовок = НСтр("ru = 'Номер транспортного средства'");
КонецЕсли;
-
+
КонецПроцедуры
&НаКлиентеНаСервереБезКонтекста
-Функция РедактированиеНедоступноПоСтатусуПроверкиИподбора(Форма)
+Функция РедактированиеНедоступноПоСтатусуПроверкиИПодбора(Форма)
Если Форма.СтатусПроверкиИПодбора = ПредопределенноеЗначение("Перечисление.СтатусыПроверкиИПодбораИС.Выполняется")
Или Форма.СтатусПроверкиИПодбора = ПредопределенноеЗначение("Перечисление.СтатусыПроверкиИПодбораИС.Завершено") Тогда
@@ -1683,6 +1733,7 @@
СтруктураРеквизитов.Вставить("Причина");
СтруктураРеквизитов.Вставить("ВидУчета");
+ СтруктураРеквизитов.Вставить("ИспользуетсяМОД");
Элементы.ВидУчета.Видимость = ВыводИзОборотаКлиентСервер.ДоступноПолеОСУ(ВидыПродукцииПоТоварнойГруппе);
@@ -1729,6 +1780,7 @@
Или СтруктураРеквизитов.Свойство("Причина") Тогда
СтруктураРеквизитов.Вставить("ВидПервичногоДокумента");
+ СтруктураРеквизитов.Вставить("ИспользуетсяМОД");
Элементы.ВидПервичногоДокумента.СписокВыбора.Очистить();
@@ -1764,8 +1816,7 @@
Элементы.ОписаниеПричины.Видимость = ВыводИзОборотаКлиентСервер.ДоступноПолеОписаниеПричины(ВидыПродукцииПоТоварнойГруппе, Объект.Причина);
ИспользуетсяАдрес = ВыводИзОборотаКлиентСервер.ДоступноПолеАдрес(ВидыПродукцииПоТоварнойГруппе, Объект.Причина);
- Элементы.АдресПлощадкиСтрокой.Видимость = ИспользуетсяАдрес;
- Элементы.ПроизводственныйОбъект.Видимость = ИспользуетсяАдрес;
+ Элементы.АдресПлощадкиСтрокой.Видимость = ИспользуетсяАдрес;
Элементы.АдресПлощадкиСтрокой.АвтоОтметкаНезаполненного =
ВыводИзОборотаКлиентСервер.ПроверятьЗаполнениеПоляАдрес(ВидыПродукцииПоТоварнойГруппе, Объект.Причина);
@@ -1842,6 +1893,38 @@
КонецЕсли;
+ Если Инициализация
+ Или СтруктураРеквизитов.Свойство("ИспользуетсяМОД") Тогда
+
+ ПараметрыУказанияМОД = ВыводИзОборотаКлиентСервер.ПараметрыУказанияМОД(Объект.Организация,
+ ВидыПродукцииПоТоварнойГруппе, Объект.Причина);
+
+ Элементы.ГруппаАдресМОД.Видимость = ПараметрыУказанияМОД.ВозможноУказаниеМОД;
+ Элементы.ИспользуетсяМОД.Доступность = Не ПараметрыУказанияМОД.ОбязательноУказаниеМОД;
+ Элементы.ОписаниеПричиныОбязательностиУказанияМОД.Видимость = ПараметрыУказанияМОД.ОбязательноУказаниеМОД;
+
+ Если ПараметрыУказанияМОД.ОбязательноУказаниеМОД Тогда
+ Объект.ИспользуетсяМОД = Истина;
+
+ Если ПараметрыУказанияМОД.ПодконтрольныеОбъектыВетИС Тогда
+ ОписаниеОбязательностиМОД = НСтр("ru = 'Имеются подконтрольные объекты ВетИС'");
+ Иначе
+ ОписаниеОбязательностиМОД = НСтр("ru = 'Обязательно для выбранной товарной группы и причины вывода из оборота'");
+ КонецЕсли;
+
+ Элементы.ОписаниеПричиныОбязательностиУказанияМОД.Заголовок = ОписаниеОбязательностиМОД;
+
+ КонецЕсли;
+
+ Элементы.ГруппаАдресСтатусПроверки.Видимость = Объект.ИспользуетсяМОД;
+
+ ЭтоИндивидуальныйПредприниматель = ОбщегоНазначенияИСВызовСервера.ПартнерОрганизацияЭтоИндивидуальныйПредприниматель(Объект.Организация);
+
+ Элементы.ПодразделениеКПП.Видимость = Не ЭтоИндивидуальныйПредприниматель;
+ Элементы.ПроизводственныйОбъект.Видимость = Не ЭтоИндивидуальныйПредприниматель;
+
+ КонецЕсли;
+
КонецПроцедуры
&НаКлиентеНаСервереБезКонтекста
@@ -1871,6 +1954,239 @@
КонецПроцедуры
+&НаСервере
+Процедура ОбновитьСтатусПроверкиМОД(ВыбранДоступныйМОД=Ложь)
+
+ Если Не Объект.ИспользуетсяМОД Тогда
+ Возврат;
+ КонецЕсли;
+
+ ПроверкаНеВыполнялась = Истина;
+ МОДЗарегистрирован = Ложь;
+ РегистрацияНеДоступна = Не ВыводИзОборотаКлиентСервер.ДоступнаРегистрацияМОДВГИСМТ(Объект.ТоварнаяГруппа);
+
+ Если ВыбранДоступныйМОД Тогда
+ МОДЗарегистрирован = Истина;
+ ПроверкаНеВыполнялась = Ложь;
+
+ ИначеЕсли ЗначениеЗаполнено(Объект.Организация) И ЗначениеЗаполнено(Объект.ТоварнаяГруппа) Тогда
+ СписокМОД = Неопределено;
+
+ Если ЗначениеЗаполнено(Объект.АдресПлощадки) Тогда
+
+ КодФИАС = ОбщегоНазначенияИСМП.ИдентификаторФИАСПоДаннымАдреса(Объект.АдресПлощадки).Идентификатор;
+
+ Если КодФИАС <> Неопределено Тогда
+ СписокМОД = РегистрыСведений.МестаОсуществленияДеятельностиИСМП.СписокЗарегистрированныхМестОсуществленияДеятельности(
+ Объект.Организация, Объект.ТоварнаяГруппа, ПодразделениеКПП, КодФИАС, , Истина);
+
+ ПроверкаНеВыполнялась = Ложь;
+
+ Если СписокМОД.Количество() > 0 Тогда
+ МОДЗарегистрирован = Истина;
+ КонецЕсли;
+
+ КонецЕсли;
+
+ ИначеЕсли ЗначениеЗаполнено(ПодразделениеКПП) Тогда
+ СписокМОД = РегистрыСведений.МестаОсуществленияДеятельностиИСМП.СписокЗарегистрированныхМестОсуществленияДеятельности(
+ Объект.Организация, Объект.ТоварнаяГруппа, ПодразделениеКПП);
+
+ ПроверкаНеВыполнялась = Ложь;
+
+ КонецЕсли;
+
+ Если СписокМОД <> Неопределено И СписокМОД.Количество() > 0 Тогда
+ МОДЗарегистрирован = Истина;
+ КонецЕсли;
+
+ КонецЕсли;
+
+ Гиперссылка = "";
+
+ Если ПроверкаНеВыполнялась Тогда
+ ТекстСтатуса = "Не проверен";
+ ЦветТекста = ЦветаСтиля.ЦветГиперссылкиГосИС;
+ ИначеЕсли МОДЗарегистрирован Тогда
+ ТекстСтатуса = "Проверен в ГИС МТ";
+ ЦветТекста = ЦветаСтиля.ЦветГиперссылкиГосИС;
+ ИначеЕсли РегистрацияНеДоступна Тогда
+ ТекстСтатуса = "Отсутствует в ГИС МТ";
+ ЦветТекста = ЦветаСтиля.ЦветТекстаТребуетВниманияГосИС;
+ Иначе
+ ТекстСтатуса = "Зарегистрировать в ГИС МТ";
+ ЦветТекста = ЦветаСтиля.ЦветТекстаТребуетВниманияГосИС;
+ Гиперссылка = "ЗарегистрироватьМОД";
+ КонецЕсли;
+
+ МассивСтатусаПроверкиМОД = Новый Массив;
+ МассивСтатусаПроверкиМОД.Добавить(ТекстСтатуса);
+
+ СтатусПроверкиМОД = Новый ФорматированнаяСтрока(МассивСтатусаПроверкиМОД, , ЦветТекста, , Гиперссылка);
+
+ МассивРасшифровки = Новый Массив;
+ ЦветТекстаПодсказки = ЦветаСтиля.ЦветТекстаНеТребуетВниманияГосИС;
+ ШрифтГиперссылки = Новый Шрифт(, , Истина, , Истина);
+
+ МассивРасшифровки.Добавить("Просмотреть, актуализировать список МОД из ГИС МТ или добавить новый МОД можно
+ |в рабочем месте ");
+ МассивРасшифровки.Добавить(Новый ФорматированнаяСтрока("Места осуществления деятельности ИС МП.", ШрифтГиперссылки,
+ , , "ОткрытьСписокМОД"));
+
+ Элементы.РасшифровкаСтатусаПроверкиМОД.Заголовок = Новый ФорматированнаяСтрока(МассивРасшифровки, ,
+ ЦветТекстаПодсказки);
+
+
+КонецПроцедуры
+
+&НаКлиенте
+Процедура ОбработкаНавигационнойСсылкиМОД(Действие)
+
+ Если Действие = "ЗарегистрироватьМОД" Тогда
+ ПараметрыРегистрацииМОД = ИнтеграцияИСМПКлиент.ПараметрыРегистрацииМОДГИСМТ();
+ ПараметрыОткрытияФормыРегистрацииМОД = ИнтеграцияИСМПКлиент.ПараметрыОткрытияФормыРегистрацииМОДГИСМТ();
+
+ Если ЗначениеЗаполнено(Объект.Организация) Тогда
+ ПараметрыРегистрацииМОД.Организация = Объект.Организация;
+ КонецЕсли;
+
+ Если ЗначениеЗаполнено(Объект.ПроизводственныйОбъект) Тогда
+ ПараметрыРегистрацииМОД.Подразделение = Объект.ПроизводственныйОбъект;
+ КонецЕсли;
+
+ Если ЗначениеЗаполнено(ПодразделениеКПП) Тогда
+ ПараметрыРегистрацииМОД.КПП = ПодразделениеКПП;
+ КонецЕсли;
+
+ МассивТоварныхГрупп = Новый Массив;
+ Если ЗначениеЗаполнено(Объект.ТоварнаяГруппа) Тогда
+ МассивТоварныхГрупп.Добавить(Объект.ТоварнаяГруппа);
+ КонецЕсли;
+ ПараметрыРегистрацииМОД.ТоварныеГруппы = МассивТоварныхГрупп;
+
+ Если ЗначениеЗаполнено(Объект.АдресПлощадки) Тогда
+ ПараметрыРегистрацииМОД.ДанныеАдреса = Объект.АдресПлощадки;
+ ПараметрыРегистрацииМОД.ДанныеАдресаСтрокой = Объект.АдресПлощадкиСтрокой;
+ КонецЕсли;
+
+ СписокМОДКРегистрации = Новый Массив;
+ СписокМОДКРегистрации.Добавить(ПараметрыРегистрацииМОД);
+
+ ПараметрыОткрытияФормыРегистрацииМОД.НезависимаяРегистрацияМОД = Истина;
+ ПараметрыОткрытияФормыРегистрацииМОД.СписокМОДКРегистрации = СписокМОДКРегистрации;
+
+ ПослеРегистрацииМОД = Новый ОписаниеОповещения("ПослеРегистрацииМОДВГИСМТ", ЭтотОбъект);
+
+ ОткрытьФорму("РегистрСведений.МестаОсуществленияДеятельностиИСМП.Форма.ФормаРегистрацииМОДВСервисе",
+ ПараметрыОткрытияФормыРегистрацииМОД, ЭтотОбъект, , , , ПослеРегистрацииМОД,
+ РежимОткрытияОкнаФормы.БлокироватьОкноВладельца);
+
+ ИначеЕсли Действие = "ОткрытьСписокМОД" Тогда
+ ОткрытьСписокМестОсуществленияДеятельности();
+
+ КонецЕсли;
+
+КонецПроцедуры
+
+&НаСервере
+Процедура ЗаполнитьДоступныеАдресаМОД()
+
+ Элементы.АдресПлощадкиСтрокой.СписокВыбора.Очистить();
+
+ Если Объект.ИспользуетсяМОД Тогда
+ МаксимальноеКоличествоМОДВСписке = 3;
+
+ СписокМОД = РегистрыСведений.МестаОсуществленияДеятельностиИСМП.СписокЗарегистрированныхМестОсуществленияДеятельности(
+ Объект.Организация, Объект.ТоварнаяГруппа, ПодразделениеКПП, , МаксимальноеКоличествоМОДВСписке, Истина);
+
+ Для Каждого ДанныеМОД Из СписокМОД Цикл
+ ДанныеПодбора = Новый Структура;
+
+ ДанныеПодбора.Вставить("ДанныеАдреса", ДанныеМОД.ДанныеАдреса);
+ ДанныеПодбора.Вставить("ПредставлениеАдреса", ДанныеМОД.ПредставлениеАдреса);
+ ДанныеПодбора.Вставить("Действие", "ЗаполнитьАдрес");
+
+ Элементы.АдресПлощадкиСтрокой.СписокВыбора.Добавить(ДанныеПодбора, ДанныеМОД.ПредставлениеАдреса);
+
+ КонецЦикла;
+
+ Если СписокМОД.Количество() = 1 И Не ЗначениеЗаполнено(Объект.АдресПлощадкиСтрокой) Тогда
+ Объект.АдресПлощадки = СписокМОД[0].ДанныеАдреса;
+ Объект.АдресПлощадкиСтрокой = СписокМОД[0].ПредставлениеАдреса;
+
+ ОбновитьСтатусПроверкиМОД(Истина);
+
+ КонецЕсли;
+
+ ДанныеПодбора = Новый Структура;
+ ДанныеПодбора.Вставить("Действие", "ОткрытьСписокМОД");
+
+ //@skip-check new-font
+ Элементы.АдресПлощадкиСтрокой.СписокВыбора.Добавить(ДанныеПодбора,
+ Новый ФорматированнаяСтрока("Выбрать МОД из списка", Новый Шрифт(, , , , Истина),
+ ЦветаСтиля.ЦветГиперссылкиГосИС, , ""));
+
+ КонецЕсли;
+
+КонецПроцедуры
+
+&НаКлиенте
+Процедура ОткрытьСписокМестОсуществленияДеятельности()
+
+ ПараметрыОткрытияСпискаМОД = Новый Структура;
+
+ Если ЗначениеЗаполнено(Объект.Организация) Тогда
+ ПараметрыОткрытияСпискаМОД.Вставить("Организация", Объект.Организация);
+ КонецЕсли;
+
+ Если ЗначениеЗаполнено(Объект.ТоварнаяГруппа) Тогда
+ ПараметрыОткрытияСпискаМОД.Вставить("ТоварнаяГруппа", Объект.ТоварнаяГруппа);
+ КонецЕсли;
+
+ ПараметрыОткрытияСпискаМОД.Вставить("ВыборМОД", Истина);
+ ПараметрыОткрытияСпискаМОД.Вставить("КПП", ПодразделениеКПП);
+
+ ВыборМОДЗавершение = Новый ОписаниеОповещения("ВыборМестаОсуществленияДеятельностиЗавершение", ЭтотОбъект);
+ ОткрытьФорму("РегистрСведений.МестаОсуществленияДеятельностиИСМП.Форма.ФормаСписка", ПараметрыОткрытияСпискаМОД,
+ ЭтотОбъект, , , , ВыборМОДЗавершение, РежимОткрытияОкнаФормы.БлокироватьОкноВладельца);
+
+КонецПроцедуры
+
+&НаКлиенте
+Процедура ВыборМестаОсуществленияДеятельностиЗавершение(Результат, ДополнительныеПараметры) Экспорт
+
+ Если Результат = Неопределено Тогда
+ Возврат;
+ КонецЕсли;
+
+ Объект.АдресПлощадкиСтрокой = Результат.ПредставлениеАдреса;
+ Объект.АдресПлощадки = Результат.ДанныеАдреса;
+ Модифицированность = Истина;
+
+ ОбновитьСтатусПроверкиМОД(Истина);
+
+КонецПроцедуры
+
+&НаКлиенте
+Процедура ПослеРегистрацииМОДВГИСМТ(Результат, ДополнительныеПараметры) Экспорт
+
+ Если Результат = Неопределено Или Не Результат.МОДЗарегистрирован Тогда
+ Возврат;
+ КонецЕсли;
+
+ Если Не ЗначениеЗаполнено(Объект.АдресПлощадкиСтрокой) Тогда
+ ЗарегистрированныйМОД = Результат.МОД[0];
+
+ Объект.АдресПлощадкиСтрокой = ЗарегистрированныйМОД.ПредставлениеАдреса;
+ Объект.АдресПлощадки = ЗарегистрированныйМОД.ДанныеАдреса;
+ Модифицированность = Истина;
+
+ КонецЕсли;
+
+ ОбновитьСтатусПроверкиМОД(Истина);
+
+КонецПроцедуры
+
#КонецОбласти
#Область ПроизводственныйОбъект
@@ -1949,6 +2265,14 @@
КонецФункции
+&НаСервере
+Процедура ЗаполнитьКПППоПроизводственномуОбъекту()
+
+ РеквизитыОрганизации = ОбщегоНазначенияИС.ИННКППGLNОрганизации(Объект.Организация, Объект.ПроизводственныйОбъект);
+ ПодразделениеКПП = РеквизитыОрганизации.КПП;
+
+КонецПроцедуры
+
#КонецОбласти
&НаКлиенте
@@ -1985,7 +2309,7 @@
Если Объект.Товары.Количество() > 0 И ЗадаватьВопрос Тогда
ТекстВопроса = НСтр("ru = 'Данные документа будут перезаполнены. Продолжить?'");
- ОписаниеОповещенияОЗавершении = Новый ОписаниеОповещения("ВопросОПерезаполнениииПоОснованиюПриЗавершении", ЭтотОбъект);
+ ОписаниеОповещенияОЗавершении = Новый ОписаниеОповещения("ВопросОПерезаполненииПоОснованиюПриЗавершении", ЭтотОбъект);
ПоказатьВопрос(ОписаниеОповещенияОЗавершении, ТекстВопроса, РежимДиалогаВопрос.ДаНет);
Иначе
@@ -1997,7 +2321,7 @@
КонецПроцедуры
&НаКлиенте
-Процедура ВопросОПерезаполнениииПоОснованиюПриЗавершении(Результат, Параметры) Экспорт
+Процедура ВопросОПерезаполненииПоОснованиюПриЗавершении(Результат, Параметры) Экспорт
Если Результат = КодВозвратаДиалога.Да Тогда
@@ -2175,6 +2499,9 @@
Объект.ДатаПервичногоДокумента = НачалоДня(Объект.ДатаПервичногоДокумента);
КонецЕсли;
+ ЗаполнитьДоступныеАдресаМОД();
+ ОбновитьСтатусПроверкиМОД();
+
КонецПроцедуры
&НаСервере
@@ -2319,7 +2646,7 @@
ПрименитьКешШтрихкодовУпаковок();
КонецЕсли;
-Конецпроцедуры
+КонецПроцедуры
&НаСервере
Процедура ПричинаПриИзмененииНаСервере()
@@ -2351,6 +2678,8 @@
ДополнитьДоступныеВидыПервичногоДокумента();
УстановитьПараметрыВыбораКонтрагентаНаСервере();
УстановитьПараметрыВыбораСтраныМира();
+ ЗаполнитьДоступныеАдресаМОД();
+ ОбновитьСтатусПроверкиМОД();
КонецПроцедуры
diff --git a/src/Documents/ЗаказНаЭмиссиюКодовМаркировкиСУЗ/Ext/ManagerModule.bsl b/src/Documents/ЗаказНаЭмиссиюКодовМаркировкиСУЗ/Ext/ManagerModule.bsl
index 5d4012a87..78d746b6c 100644
--- a/src/Documents/ЗаказНаЭмиссиюКодовМаркировкиСУЗ/Ext/ManagerModule.bsl
+++ b/src/Documents/ЗаказНаЭмиссиюКодовМаркировкиСУЗ/Ext/ManagerModule.bsl
@@ -734,7 +734,7 @@
// Возвращает массив дальнейших действий с документом, требующих участия пользователя
//
// Возвращаемое значение:
-// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюИСМП - дальшейшие действия.
+// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюИСМП - дальнейшие действия.
//
Функция ВсеТребующиеДействия() Экспорт
@@ -764,7 +764,7 @@
// Возвращает массив дальнейших действий с документом, не требующих участия пользователя
//
// Возвращаемое значение:
-// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюИСМП - дальшейшие действия.
+// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюИСМП - дальнейшие действия.
//
Функция ВсеТребующиеОжидания() Экспорт
@@ -963,7 +963,7 @@
КонецПроцедуры
-// Обработка данных перехода на конструктор настроек видов продуции
+// Обработка данных перехода на конструктор настроек видов продукции
//
// Параметры:
// Параметры - см. ОбновлениеИнформационнойБазы.ОсновныеПараметрыОтметкиКОбработке
@@ -2878,13 +2878,13 @@
КонецФункции
-// Дополнтельная обработка данных при переходе на конструктор настроек.
+// Дополнительная обработка данных при переходе на конструктор настроек.
//
// Параметры:
// ДокументОбъект - ДокументОбъект.ЗаказНаЭмиссиюКодовМаркировкиСУЗ
// ПроблемыСДанными - Соответствие из КлючИЗначение
// КешКонвертаций - см. ОбновлениеИнформационнойБазыГосИС.КешКонвертацийВидаПродукции
-Процедура ДополнтельнаяОбработкаДанныхПриПереходеНаКонструкторНастроек(ДокументОбъект, ПроблемыСДанными, КешКонвертаций) Экспорт
+Процедура ДополнительнаяОбработкаДанныхПриПереходеНаКонструкторНастроек(ДокументОбъект, ПроблемыСДанными, КешКонвертаций) Экспорт
Для Каждого СтрокаТовары Из ДокументОбъект.Товары Цикл
diff --git a/src/Documents/ЗаказНаЭмиссиюКодовМаркировкиСУЗ/Forms/ФормаДокумента/Ext/Form/Module.bsl b/src/Documents/ЗаказНаЭмиссиюКодовМаркировкиСУЗ/Forms/ФормаДокумента/Ext/Form/Module.bsl
index ece461d0f..d2e53bb13 100644
--- a/src/Documents/ЗаказНаЭмиссиюКодовМаркировкиСУЗ/Forms/ФормаДокумента/Ext/Form/Module.bsl
+++ b/src/Documents/ЗаказНаЭмиссиюКодовМаркировкиСУЗ/Forms/ФормаДокумента/Ext/Form/Module.bsl
@@ -600,9 +600,9 @@
&НаКлиенте
Процедура ТоварыВыбор(Элемент, ВыбраннаяСтрока, Поле, СтандартнаяОбработка)
-
- ТекущиеДанные = Элемент.ТекущиеДанные;
-
+
+ ТекущиеДанные = Элементы.Товары.ТекущиеДанные;
+
Если РедактированиеФормыНедоступно
Или Не ПравоИзменения
Или (ТекущиеДанные.ЭтоНабор Или ТекущиеДанные.ЭтоГрупповаяУпаковка)
@@ -3496,7 +3496,7 @@
Если Объект.Товары.Количество() > 0 И ЗадаватьВопрос Тогда
ТекстВопроса = НСтр("ru = 'Данные документа будут перезаполнены. Продолжить?'");
- ОписаниеОповещенияОЗавершении = Новый ОписаниеОповещения("ВопросОПерезаполнениииПоОснованиюПриЗавершении", ЭтотОбъект);
+ ОписаниеОповещенияОЗавершении = Новый ОписаниеОповещения("ВопросОПерезаполненииПоОснованиюПриЗавершении", ЭтотОбъект);
ПоказатьВопрос(ОписаниеОповещенияОЗавершении, ТекстВопроса, РежимДиалогаВопрос.ДаНет);
Иначе
@@ -3508,7 +3508,7 @@
КонецПроцедуры
&НаКлиенте
-Процедура ВопросОПерезаполнениииПоОснованиюПриЗавершении(Результат, Параметры) Экспорт
+Процедура ВопросОПерезаполненииПоОснованиюПриЗавершении(Результат, Параметры) Экспорт
Если Результат = КодВозвратаДиалога.Да Тогда
diff --git a/src/Documents/ЗаказПоставщику/Ext/ManagerModule.bsl b/src/Documents/ЗаказПоставщику/Ext/ManagerModule.bsl
index 02dd38bbc..6a5ae357f 100644
--- a/src/Documents/ЗаказПоставщику/Ext/ManagerModule.bsl
+++ b/src/Documents/ЗаказПоставщику/Ext/ManagerModule.bsl
@@ -1296,7 +1296,7 @@
|ЛЕВОЕ СОЕДИНЕНИЕ
| ДатыАктуальностиЗаказовПоставщикам КАК ДатыАктуальностиРасчетов
|ПО
- | ДокументЗаказПоставщику.Ссылка = ДатыАктуальностиРасчетов.ОбъектРасчетов
+ | ДокументЗаказПоставщику.ОбъектРасчетов = ДатыАктуальностиРасчетов.ОбъектРасчетов
|ЛЕВОЕ СОЕДИНЕНИЕ
| ДатыПоступленияЗаказовПоставщикам КАК ДатыПоступленияЗаказовПоставщикам
|ПО
diff --git a/src/Documents/ЗапросАкцизныхМарокЕГАИС/Ext/ManagerModule.bsl b/src/Documents/ЗапросАкцизныхМарокЕГАИС/Ext/ManagerModule.bsl
index f66c8d6dc..3d4e85898 100644
--- a/src/Documents/ЗапросАкцизныхМарокЕГАИС/Ext/ManagerModule.bsl
+++ b/src/Documents/ЗапросАкцизныхМарокЕГАИС/Ext/ManagerModule.bsl
@@ -314,7 +314,7 @@
// Возвращает массив дальнейших действий с документом, требующих участия пользователя
//
// Возвращаемое значение:
-// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюЕГАИС - дальшейшие действия
+// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюЕГАИС - дальнейшие действия
//
Функция ВсеТребующиеДействия() Экспорт
diff --git a/src/Documents/ЗапросОстатковПартийЗЕРНО/Ext/ManagerModule.bsl b/src/Documents/ЗапросОстатковПартийЗЕРНО/Ext/ManagerModule.bsl
index f3f177139..77efb24b2 100644
--- a/src/Documents/ЗапросОстатковПартийЗЕРНО/Ext/ManagerModule.bsl
+++ b/src/Documents/ЗапросОстатковПартийЗЕРНО/Ext/ManagerModule.bsl
@@ -371,7 +371,7 @@
// Возвращает массив дальнейших действий с документом, требующих участия пользователя
//
// Возвращаемое значение:
-// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюЗЕРНО - дальшейшие действия.
+// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюЗЕРНО - дальнейшие действия.
//
Функция ВсеТребующиеДействия() Экспорт
@@ -387,7 +387,7 @@
// Возвращает массив дальнейших действий с документом, не требующих участия пользователя
//
// Возвращаемое значение:
-// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюЗЕРНО - дальшейшие действия.
+// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюЗЕРНО - дальнейшие действия.
//
Функция ВсеТребующиеОжидания() Экспорт
@@ -549,7 +549,7 @@
КонецПроцедуры
-// Обработка данных перехода на конструктор настроек видов продуции
+// Обработка данных перехода на конструктор настроек видов продукции
//
// Параметры:
// Параметры - см. ОбновлениеИнформационнойБазы.ОсновныеПараметрыОтметкиКОбработке
diff --git a/src/Documents/ЗапросОстатковПартийСАТУРН/Forms/ФормаДокумента/Ext/Form/Module.bsl b/src/Documents/ЗапросОстатковПартийСАТУРН/Forms/ФормаДокумента/Ext/Form/Module.bsl
index 77bc38d42..49290b87f 100644
--- a/src/Documents/ЗапросОстатковПартийСАТУРН/Forms/ФормаДокумента/Ext/Form/Module.bsl
+++ b/src/Documents/ЗапросОстатковПартийСАТУРН/Forms/ФормаДокумента/Ext/Form/Module.bsl
@@ -692,7 +692,7 @@
Если Объект.ОстаткиПоДаннымСАТУРН.Количество() > 0 И ЗадаватьВопрос Тогда
ТекстВопроса = НСтр("ru = 'Данные документа будут перезаполнены. Продолжить?'");
- ОписаниеОповещенияОЗавершении = Новый ОписаниеОповещения("ВопросОПерезаполнениииПоОснованиюПриЗавершении", ЭтотОбъект);
+ ОписаниеОповещенияОЗавершении = Новый ОписаниеОповещения("ВопросОПерезаполненииПоОснованиюПриЗавершении", ЭтотОбъект);
ПоказатьВопрос(ОписаниеОповещенияОЗавершении, ТекстВопроса, РежимДиалогаВопрос.ДаНет);
Иначе
@@ -704,7 +704,7 @@
КонецПроцедуры
&НаКлиенте
-Процедура ВопросОПерезаполнениииПоОснованиюПриЗавершении(Результат, Параметры) Экспорт
+Процедура ВопросОПерезаполненииПоОснованиюПриЗавершении(Результат, Параметры) Экспорт
Если Результат = КодВозвратаДиалога.Да Тогда
diff --git a/src/Documents/ЗапросСкладскогоЖурналаВЕТИС/Ext/ManagerModule.bsl b/src/Documents/ЗапросСкладскогоЖурналаВЕТИС/Ext/ManagerModule.bsl
index 2c8d6af1c..15835546a 100644
--- a/src/Documents/ЗапросСкладскогоЖурналаВЕТИС/Ext/ManagerModule.bsl
+++ b/src/Documents/ЗапросСкладскогоЖурналаВЕТИС/Ext/ManagerModule.bsl
@@ -404,7 +404,7 @@
// Возвращает массив дальнейших действий с документом, требующих участия пользователя
//
// Возвращаемое значение:
-// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюВЕТИС - дальшейшие действия
+// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюВЕТИС - дальнейшие действия
//
Функция ВсеТребующиеДействия() Экспорт
@@ -419,7 +419,7 @@
// Возвращает массив дальнейших действий с документом, ожидающих регламентных операций
//
// Возвращаемое значение:
-// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюВЕТИС - дальшейшие действия
+// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюВЕТИС - дальнейшие действия
//
Функция ВсеТребующиеОжидания() Экспорт
diff --git a/src/Documents/ЗаявкаНаДепозитОбменСБанками.xml b/src/Documents/ЗаявкаНаДепозитОбменСБанками.xml
index 2a18e7386..69f342e0c 100644
--- a/src/Documents/ЗаявкаНаДепозитОбменСБанками.xml
+++ b/src/Documents/ЗаявкаНаДепозитОбменСБанками.xml
@@ -1177,6 +1177,7 @@
+
diff --git a/src/Documents/ЗаявкаНаДепозитОбменСБанками/Forms/СрокиИУсловия/Ext/Form.xml b/src/Documents/ЗаявкаНаДепозитОбменСБанками/Forms/СрокиИУсловия/Ext/Form.xml
index a3e6b5e70..49f4d4383 100644
--- a/src/Documents/ЗаявкаНаДепозитОбменСБанками/Forms/СрокиИУсловия/Ext/Form.xml
+++ b/src/Documents/ЗаявкаНаДепозитОбменСБанками/Forms/СрокиИУсловия/Ext/Form.xml
@@ -63,34 +63,20 @@
false
-
- 1
-
-
-
-
+
+ false
true
- Vertical
- None
- false
-
-
-
- false
- true
-
-
- ru
- ● Приём заявок c 7:00 до 17:00 по Москве в рабочие дни
+
+
+ ru
+ ● Приём заявок c 7:00 до 17:00 по Москве в рабочие дни
● Перечисление денег с 7:00 до 19:00 по Москве в рабочие дни
● Возврат депозита с 5:00 до 11:00 по Москве в рабочие дни
-
-
-
-
-
-
-
+
+
+
+
+
diff --git a/src/Documents/ЗаявкаНаДепозитОбменСБанками/Forms/СрокиИУсловия/Ext/Form/Module.bsl b/src/Documents/ЗаявкаНаДепозитОбменСБанками/Forms/СрокиИУсловия/Ext/Form/Module.bsl
index a23917a09..8697dd499 100644
--- a/src/Documents/ЗаявкаНаДепозитОбменСБанками/Forms/СрокиИУсловия/Ext/Form/Module.bsl
+++ b/src/Documents/ЗаявкаНаДепозитОбменСБанками/Forms/СрокиИУсловия/Ext/Form/Module.bsl
@@ -136,46 +136,6 @@
#Область ОбработчикиСобытийЭлементовТаблицыФормыУсловияПродукта
-&НаКлиенте
-Процедура ПроверитьВыполнениеУсловийПриИзмененииОтбора()
-
- ИспользуетсяОтбор = Ложь;
- Если ИспользоватьОтборСрок Или ИспользоватьОтборСумма Тогда
- ИспользуетсяОтбор = Истина;
- КонецЕсли;
-
- ВыбраннаяСтрокаУсловия = Новый Структура;
- ВыбраннаяСтрокаУсловия.Вставить("ИндексСтроки", 0);
- ВыбраннаяСтрокаУсловия.Вставить("Ставка", 0);
-
- Для Каждого ТекущаяСтрока Из УсловияПродукта Цикл
-
- ВыполняютсяУсловия = Истина;
-
- Если ИспользуетсяОтбор Тогда
- ВыполняютсяУсловия = ОбменСБанкамиДепозитыСлужебныйКлиентСервер.ВыполняютсяУсловияПродукта(
- ТекущаяСтрока, ОтборСумма, ОтборСрок);
-
- Если ВыполняютсяУсловия
- И ВыбраннаяСтрокаУсловия.Ставка < ТекущаяСтрока.Ставка Тогда
-
- ВыбраннаяСтрокаУсловия.ИндексСтроки = УсловияПродукта.Индекс(ТекущаяСтрока);
- ВыбраннаяСтрокаУсловия.Ставка = ТекущаяСтрока.Ставка;
-
- КонецЕсли;
-
- КонецЕсли;
-
- ТекущаяСтрока.ВыполняютсяУсловия = ВыполняютсяУсловия;
-
- КонецЦикла;
-
- Если УсловияПродукта.Количество() > 0 Тогда
- Элементы.УсловияПродукта.ТекущаяСтрока = ВыбраннаяСтрокаУсловия.ИндексСтроки;
- КонецЕсли;
-
-КонецПроцедуры
-
&НаКлиенте
Процедура УсловияПродуктаВыбор(Элемент, ВыбраннаяСтрока, Поле, СтандартнаяОбработка)
СтандартнаяОбработка = Ложь;
@@ -236,6 +196,46 @@
#Область СлужебныеПроцедурыИФункции
+&НаКлиенте
+Процедура ПроверитьВыполнениеУсловийПриИзмененииОтбора()
+
+ ИспользуетсяОтбор = Ложь;
+ Если ИспользоватьОтборСрок Или ИспользоватьОтборСумма Тогда
+ ИспользуетсяОтбор = Истина;
+ КонецЕсли;
+
+ ВыбраннаяСтрокаУсловия = Новый Структура;
+ ВыбраннаяСтрокаУсловия.Вставить("ИндексСтроки", 0);
+ ВыбраннаяСтрокаУсловия.Вставить("Ставка", 0);
+
+ Для Каждого ТекущаяСтрока Из УсловияПродукта Цикл
+
+ ВыполняютсяУсловия = Истина;
+
+ Если ИспользуетсяОтбор Тогда
+ ВыполняютсяУсловия = ОбменСБанкамиДепозитыСлужебныйКлиентСервер.ВыполняютсяУсловияПродукта(
+ ТекущаяСтрока, ОтборСумма, ОтборСрок);
+
+ Если ВыполняютсяУсловия
+ И ВыбраннаяСтрокаУсловия.Ставка < ТекущаяСтрока.Ставка Тогда
+
+ ВыбраннаяСтрокаУсловия.ИндексСтроки = УсловияПродукта.Индекс(ТекущаяСтрока);
+ ВыбраннаяСтрокаУсловия.Ставка = ТекущаяСтрока.Ставка;
+
+ КонецЕсли;
+
+ КонецЕсли;
+
+ ТекущаяСтрока.ВыполняютсяУсловия = ВыполняютсяУсловия;
+
+ КонецЦикла;
+
+ Если УсловияПродукта.Количество() > 0 Тогда
+ Элементы.УсловияПродукта.ТекущаяСтрока = ВыбраннаяСтрокаУсловия.ИндексСтроки;
+ КонецЕсли;
+
+КонецПроцедуры
+
&НаКлиенте
Процедура ОбработатьВыборУсловия()
@@ -344,7 +344,8 @@
КонецПроцедуры
&НаСервере
-Процедура ДобавитьОтборУсловногоОформления(ЭлементОформления, ЛевоеЗначение, ВидСравнения = Неопределено, ПравоеЗначение = Неопределено)
+Процедура ДобавитьОтборУсловногоОформления(ЭлементОформления, ЛевоеЗначение,
+ ВидСравнения = Неопределено, ПравоеЗначение = Неопределено)
Если ВидСравнения = Неопределено Тогда
ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
diff --git a/src/Documents/ЗаявкаНаДепозитОбменСБанками/Forms/ФормаВыбораСчетаОткрытия.xml b/src/Documents/ЗаявкаНаДепозитОбменСБанками/Forms/ФормаВыбораСчетаОткрытия.xml
new file mode 100644
index 000000000..c14cf017f
--- /dev/null
+++ b/src/Documents/ЗаявкаНаДепозитОбменСБанками/Forms/ФормаВыбораСчетаОткрытия.xml
@@ -0,0 +1,21 @@
+
+
+
+
\ No newline at end of file
diff --git a/src/Documents/ЗаявкаНаДепозитОбменСБанками/Forms/ФормаВыбораСчетаОткрытия/Ext/Form.xml b/src/Documents/ЗаявкаНаДепозитОбменСБанками/Forms/ФормаВыбораСчетаОткрытия/Ext/Form.xml
new file mode 100644
index 000000000..b5e741e3f
--- /dev/null
+++ b/src/Documents/ЗаявкаНаДепозитОбменСБанками/Forms/ФормаВыбораСчетаОткрытия/Ext/Form.xml
@@ -0,0 +1,383 @@
+
+
\ No newline at end of file
diff --git a/src/Documents/ЗаявкаНаДепозитОбменСБанками/Forms/ФормаВыбораСчетаОткрытия/Ext/Form/Module.bsl b/src/Documents/ЗаявкаНаДепозитОбменСБанками/Forms/ФормаВыбораСчетаОткрытия/Ext/Form/Module.bsl
new file mode 100644
index 000000000..cdead6abd
--- /dev/null
+++ b/src/Documents/ЗаявкаНаДепозитОбменСБанками/Forms/ФормаВыбораСчетаОткрытия/Ext/Form/Module.bsl
@@ -0,0 +1,191 @@
+#Область ОбработчикиСобытийФормы
+
+&НаСервере
+Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
+
+ Если Параметры.Свойство("Организация") Тогда
+ Организация = Параметры.Организация;
+ КонецЕсли;
+
+ Если Параметры.Свойство("Банк") Тогда
+ Банк = Параметры.Банк;
+ КонецЕсли;
+
+ Если Параметры.Свойство("ДанныеОбОстатке") Тогда
+ ИнициализацияСпискаСчетов(Параметры.ДанныеОбОстатке);
+ КонецЕсли;
+
+ Элементы.Банк.ЦветТекста = ЦветаСтиля.ПоясняющийТекст;
+
+ Если СписокСчетов.Количество() > 0 Тогда
+
+ ЭлементУсловногоОформления = УсловноеОформление.Элементы.Добавить();
+
+ ОтборЭлемента = ЭлементУсловногоОформления.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
+ ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("СписокСчетов.Остаток");
+ ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
+ ОтборЭлемента.ПравоеЗначение = 0;
+
+ ОформляемоеПоле = ЭлементУсловногоОформления.Поля.Элементы.Добавить();
+ ОформляемоеПоле.Использование = Истина;
+ ОформляемоеПоле.Поле = Новый ПолеКомпоновкиДанных("СписокСчетовСуммаОстаткаСтрока");
+
+ ЦветТекстаНетОстатка = ЦветаСтиля.ЦветТекстаНеважнаяНадписьБЭД;
+ ЭлементУсловногоОформления.Оформление.УстановитьЗначениеПараметра("Текст",
+ НСтр("ru = 'Нет данных, загрузите выписку'"));
+ ЭлементУсловногоОформления.Оформление.УстановитьЗначениеПараметра("ЦветТекста", ЦветТекстаНетОстатка);
+
+ КонецЕсли;
+
+КонецПроцедуры
+
+#КонецОбласти
+
+#Область ОбработчикиСобытийЭлементовТаблицыФормыСписокСчетов
+
+&НаКлиенте
+Процедура СписокСчетовВыбор(Элемент, ВыбраннаяСтрока, Поле, СтандартнаяОбработка)
+
+ СтандартнаяОбработка = Ложь;
+ ОбработатьВыборСчета(ВыбраннаяСтрока);
+
+КонецПроцедуры
+
+&НаКлиенте
+Процедура СписокСчетовВыборЗначения(Элемент, Значение, СтандартнаяОбработка)
+
+ СтандартнаяОбработка = Ложь;
+ ОбработатьВыборСчета(Значение);
+
+КонецПроцедуры
+
+#КонецОбласти
+
+#Область СлужебныеПроцедурыИФункции
+
+&НаКлиенте
+Процедура ОбработатьВыборСчета(ИдентификаторСтроки)
+
+ ДанныеПоСчету = СписокСчетов.НайтиПоИдентификатору(ИдентификаторСтроки);
+ Если ДанныеПоСчету <> Неопределено И ЗначениеЗаполнено(ДанныеПоСчету.Ссылка) Тогда
+ Закрыть(ДанныеПоСчету.Ссылка);
+ КонецЕсли;
+
+КонецПроцедуры
+
+&НаСервере
+Процедура ИнициализацияСпискаСчетов(ДанныеОбОстатке)
+
+ ШаблонНаименования = "Справочник.%1";
+
+ СправочникБанки = ОбщегоНазначенияБЭДПовтИсп.ИмяПрикладногоСправочника("Банки");
+ Если Не ЗначениеЗаполнено(СправочникБанки) Тогда
+ Возврат;
+ КонецЕсли;
+
+ СправочникБанковскиеСчета = ОбщегоНазначенияБЭДПовтИсп.ИмяПрикладногоСправочника("БанковскиеСчетаОрганизаций");
+ Если Не ЗначениеЗаполнено(СправочникБанковскиеСчета) Тогда
+ Возврат;
+ КонецЕсли;
+
+ ИмяРеквизитаНомерСчета = ОбменСБанкамиСлужебный.ИмяПрикладногоРеквизита(
+ "БанковскийСчетОрганизации.НомерСчета");
+
+ ИмяРеквизитаБанк = ОбменСБанкамиСлужебный.ИмяПрикладногоРеквизита(
+ "БанковскийСчетОрганизации.Банк");
+
+ ИмяРеквизитаОрганизация = ОбменСБанкамиСлужебный.ИмяПрикладногоРеквизита(
+ "БанковскийСчетОрганизации.Организация");
+
+ СправочникБанковскиеСчетаМетаданные = ОбщегоНазначения.ОбъектМетаданныхПоПолномуИмени(
+ СтрШаблон(ШаблонНаименования, СправочникБанковскиеСчета));
+
+ ЕстьРеквизитДатаЗакрытия = Ложь;
+ ИмяРеквизитаСчетЗакрыт = "ДатаЗакрытия";
+ РеквизитСправочникаДатаЗакрытия = СправочникБанковскиеСчетаМетаданные.Реквизиты.Найти(ИмяРеквизитаСчетЗакрыт);
+
+ Если Не РеквизитСправочникаДатаЗакрытия = Неопределено
+ И ОбщегоНазначенияКлиентСервер.ЕстьРеквизитИлиСвойствоОбъекта(РеквизитСправочникаДатаЗакрытия, "Тип")
+ И ОбщегоНазначения.ОписаниеТипаСостоитИзТипа(РеквизитСправочникаДатаЗакрытия.Тип, Тип("Дата")) Тогда
+ ЕстьРеквизитДатаЗакрытия = Истина;
+ КонецЕсли;
+
+ ТекстЗапроса =
+ "ВЫБРАТЬ
+ | NULL КАК Организация,
+ | NULL КАК Банк,
+ | NULL КАК НомерСчета,
+ | БанковскиеСчета.Ссылка КАК Ссылка,
+ | БанковскиеСчета.Наименование КАК Наименование
+ |ИЗ
+ | СправочникБанковскиеСчета КАК БанковскиеСчета
+ |ГДЕ
+ | &ПолеОтбораОрганизации = &Организация
+ | И &ПолеОтбораБанк = &Банк
+ | И БанковскиеСчета.ПометкаУдаления = ЛОЖЬ
+ | И &СчетДействует";
+
+ ШаблонПоля = "БанковскиеСчета.%1 КАК Организация";
+ ШаблонОтбора = "БанковскиеСчета.%1";
+ Если ЗначениеЗаполнено(ИмяРеквизитаОрганизация) Тогда
+ ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "NULL КАК Организация",
+ СтрШаблон(ШаблонПоля, ИмяРеквизитаОрганизация));
+ ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&ПолеОтбораОрганизации",
+ СтрШаблон(ШаблонОтбора, ИмяРеквизитаОрганизация));
+ КонецЕсли;
+
+ ШаблонПоля = "БанковскиеСчета.%1 КАК Банк";
+ Если ЗначениеЗаполнено(ИмяРеквизитаБанк) Тогда
+ ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "NULL КАК Банк",
+ СтрШаблон(ШаблонПоля, ИмяРеквизитаБанк));
+ ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&ПолеОтбораБанк",
+ СтрШаблон(ШаблонОтбора, ИмяРеквизитаБанк));
+ КонецЕсли;
+
+ ШаблонПоля = "БанковскиеСчета.%1 КАК НомерСчета";
+ Если ЗначениеЗаполнено(ИмяРеквизитаНомерСчета) Тогда
+ ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "NULL КАК НомерСчета",
+ СтрШаблон(ШаблонПоля, ИмяРеквизитаНомерСчета));
+ КонецЕсли;
+
+ ШаблонПоля = "БанковскиеСчета.%1 = ДАТАВРЕМЯ(1, 1, 1)";
+ Если ЕстьРеквизитДатаЗакрытия Тогда
+ ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&СчетДействует",
+ СтрШаблон(ШаблонПоля, ИмяРеквизитаСчетЗакрыт));
+ КонецЕсли;
+
+ ШаблонТаблицы = "Справочник.%1";
+
+ ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "СправочникБанковскиеСчета",
+ СтрШаблон(ШаблонТаблицы, СправочникБанковскиеСчета));
+
+ Запрос = Новый Запрос;
+ Запрос.Текст = ТекстЗапроса;
+ Запрос.УстановитьПараметр("Организация", Организация);
+ Запрос.УстановитьПараметр("Банк", Банк);
+ Если Не ЕстьРеквизитДатаЗакрытия Тогда
+ Запрос.УстановитьПараметр("СчетДействует", Истина);
+ КонецЕсли;
+
+ РезультатВыборка = Запрос.Выполнить().Выбрать();
+
+ Пока РезультатВыборка.Следующий() Цикл
+
+ СтрокаТаблицы = СписокСчетов.Добавить();
+ ЗаполнитьЗначенияСвойств(СтрокаТаблицы, РезультатВыборка);
+ ДанныеПоСчету = ДанныеОбОстатке.Получить(РезультатВыборка.НомерСчета);
+ Если ДанныеПоСчету <> Неопределено Тогда
+ ЗаполнитьЗначенияСвойств(СтрокаТаблицы, ДанныеПоСчету);
+ СтрокаТаблицы.ДатаВыписки = СтрШаблон(НСтр("ru = 'Выписка от %1'"), ДанныеПоСчету.ДатаФормирования);
+ СтрокаТаблицы.СуммаОстаткаСтрока = СтрШаблон(НСтр("ru = '%1 Выписка от %2'"),
+ Формат(ДанныеПоСчету.Остаток, "ЧЦ=15; ЧДЦ=2"),
+ Формат(ДанныеПоСчету.ДатаФормирования, НСтр("ru='ДФ=''dd.MM.yyyy HH:mm:ss'''")));
+ КонецЕсли;
+
+ КонецЦикла;
+
+ СписокСчетов.Сортировать("Остаток Убыв");
+
+КонецПроцедуры
+
+#КонецОбласти
\ No newline at end of file
diff --git a/src/Documents/ЗаявкаНаДепозитОбменСБанками/Forms/ФормаДокумента/Ext/Form.xml b/src/Documents/ЗаявкаНаДепозитОбменСБанками/Forms/ФормаДокумента/Ext/Form.xml
index c892fd51d..a56b7690c 100644
--- a/src/Documents/ЗаявкаНаДепозитОбменСБанками/Forms/ФормаДокумента/Ext/Form.xml
+++ b/src/Documents/ЗаявкаНаДепозитОбменСБанками/Forms/ФормаДокумента/Ext/Form.xml
@@ -106,12 +106,6 @@
Группа предупреждение не доступен обмен
-
-
- ru
- Предупреждение об отказе банка
-
-
Usual
NormalSeparation
false
@@ -288,7 +282,9 @@
38
+ 20
false
+ false
Vertical
None
Usual
@@ -579,19 +575,85 @@
Счет
+ true
DontUse
СтраницаПредложения_СчетОткрытияПриИзменении
+ СтраницаПредложения_СчетОткрытияНачалоВыбора
-
- false
- false
-
-
-
+
+
+
+ ru
+ Остаток по счету
+
+
+ true
+ AlwaysHorizontal
+ Half
+ None
+ false
+ false
+ DontUse
+
+
+
+
+
+ ru
+ Остаток:
+
+
+ Right
+ Right
+ Center
+
+
+
+ СтраницаПредложения_ОстатокПоСчетуТекстОбработкаНавигационнойСсылки
+
+
+
+ Right
+ Center
+
+ CommonPicture.ДлительнаяОперация16
+ false
+
+
+
+
+
+
+
+ ru
+ Страница предложения остаток по счету картинка обновить
+
+
+
+
+ ru
+ Обновить по данным выписки банка.
+
+
+ Right
+ Center
+ true
+
+ StdPicture.Refresh
+ true
+
+
+
+
+ СтраницаПредложения_ОстатокПоСчетуКартинкаОбновитьНажатие
+
+
+
+
@@ -701,12 +763,6 @@
Предложения
-
-
- ru
- Группа страница
-
-
50
false
false
@@ -720,12 +776,6 @@
Информация
-
-
- ru
- Группа страница
-
-
50
false
false
@@ -841,12 +891,6 @@
Страница подтверждение
-
-
- ru
- Группа страница заявка
-
-
AlwaysHorizontal
Double
false
@@ -949,11 +993,13 @@
true
true
true
+ true
DontUse
СтраницаПодтверждение_СчетОткрытияПриИзменении
+ СтраницаПодтверждение_СчетОткрытияНачалоВыбора
@@ -1561,12 +1607,6 @@
Страница заявка на депозит
-
-
- ru
- Группа страница заявка
-
-
false
Vertical
Double
@@ -1927,12 +1967,6 @@
false
false
-
-
- ru
- Отступ командной панели
-
-
@@ -3008,6 +3042,120 @@
+
+
+
+ ru
+ Остатки по данным банка
+
+
+
+ v8:ValueTable
+
+
+
+
+
+ ru
+ Организация
+
+
+
+ cfg:DefinedType.Организация
+
+
+
+
+
+ ru
+ Банк
+
+
+
+ cfg:DefinedType.БанкОбменСБанками
+
+
+
+
+
+ ru
+ Выписка банка
+
+
+
+ cfg:DocumentRef.СообщениеОбменСБанками
+
+
+
+
+
+ ru
+ Дата остатка
+
+
+
+ xs:dateTime
+
+ DateTime
+
+
+
+
+
+
+ ru
+ Дата формирования
+
+
+
+ xs:dateTime
+
+ DateTime
+
+
+
+
+
+
+ ru
+ Номер счета
+
+
+
+ xs:string
+
+ 40
+ Variable
+
+
+
+
+
+
+ ru
+ Остаток
+
+
+
+ xs:decimal
+
+ 15
+ 2
+ Any
+
+
+
+
+
+
+
+
+ ru
+ Длительная операция загрузка остатков
+
+
+
+
diff --git a/src/Documents/ЗаявкаНаДепозитОбменСБанками/Forms/ФормаДокумента/Ext/Form/Module.bsl b/src/Documents/ЗаявкаНаДепозитОбменСБанками/Forms/ФормаДокумента/Ext/Form/Module.bsl
index d3a01ed4b..bfff03c14 100644
--- a/src/Documents/ЗаявкаНаДепозитОбменСБанками/Forms/ФормаДокумента/Ext/Form/Module.bsl
+++ b/src/Documents/ЗаявкаНаДепозитОбменСБанками/Forms/ФормаДокумента/Ext/Form/Module.bsl
@@ -63,12 +63,17 @@
СостояниеПодготовлено = "Подготовлено";
СостояниеНаПодписи = "НаПодписи";
+ Элементы.СтраницаПредложения_ОстатокПоСчетуТекст.Заголовок = " ";
+ Элементы.СтраницаПредложения_ОстатокПоСчетуКартинка.Видимость = Ложь;
+ Элементы.СтраницаПредложения_ОстатокПоСчетуКартинкаОбновить.Видимость = Ложь;
+
Если Не ЗначениеЗаполнено(СостояниеЗаявкиНаДепозит)
Или СостояниеЗаявкиНаДепозит = СостояниеПодготовлено
Или СостояниеЗаявкиНаДепозит = СостояниеНаПодписи Тогда
ИмяРеквизитаБанк = ОбменСБанкамиСлужебный.ИмяПрикладногоРеквизита("БанковскийСчетОрганизации.Банк");
- ИмяРеквизитаОрганизация = ОбменСБанкамиСлужебный.ИмяПрикладногоРеквизита("БанковскийСчетОрганизации.Организация");
+ ИмяРеквизитаОрганизация =
+ ОбменСБанкамиСлужебный.ИмяПрикладногоРеквизита("БанковскийСчетОрганизации.Организация");
МассивПараметров = Новый Массив;
Если ЗначениеЗаполнено(ИмяРеквизитаБанк) Тогда
@@ -82,11 +87,14 @@
КонецЕсли;
Если МассивПараметров.Количество() > 0 Тогда
- Элементы.СтраницаПредложения_СчетОткрытия.СвязиПараметровВыбора = Новый ФиксированныйМассив(МассивПараметров);
- Элементы.СтраницаПодтверждение_СчетОткрытия.СвязиПараметровВыбора = Новый ФиксированныйМассив(МассивПараметров);
+ Элементы.СтраницаПредложения_СчетОткрытия.СвязиПараметровВыбора =
+ Новый ФиксированныйМассив(МассивПараметров);
+ Элементы.СтраницаПодтверждение_СчетОткрытия.СвязиПараметровВыбора =
+ Новый ФиксированныйМассив(МассивПараметров);
КонецЕсли;
- РезультатЗапускаЗадания = ОбменСБанкамиДепозитыВызовСервера.ЗапускЗаданияОбновленияДанныхДепозитныхПродуктов(Ложь);
+ РезультатЗапускаЗадания =
+ ОбменСБанкамиДепозитыВызовСервера.ЗапускЗаданияОбновленияДанныхДепозитныхПродуктов(Ложь);
ДлительнаяОперация = РезультатЗапускаЗадания.ДлительнаяОперация;
СоздатьЭлементыПредложенийБанка(10);
@@ -165,7 +173,8 @@
Если НовоеСостояниеЗаявки = СостояниеВОбработке И ЗапуститьОжиданиеОбработкиЗаявкиНаДепозит Тогда
ЗапуститьОжиданиеОбработкиЗаявкиНаДепозит = Ложь;
- ПодключитьОбработчикОжидания("Подключаемый_ОжиданиеЗавершенияОбработкиОтправленныхЗаявокНаДепозит", 10, Истина);
+ ПодключитьОбработчикОжидания("Подключаемый_ОжиданиеЗавершенияОбработкиОтправленныхЗаявокНаДепозит",
+ 10, Истина);
КонецЕсли;
КонецЕсли;
@@ -232,7 +241,8 @@
Процедура ОрганизацияПриИзменении(Элемент)
МожноПовторитьЗапросПредложений = Ложь;
- Объект.СчетОрганизации = Неопределено;
+ ПараметрыРасчетаДепозита.РезультатПредварительногоРасчета = Неопределено;
+
Если ЗначениеЗаполнено(Объект.Организация) Тогда
Если Объект.Организация = ПараметрыПредложений.Организация Тогда
@@ -241,17 +251,30 @@
РезультатПолученияДанныхПредложений = ЗаполнитьПредложенияБанков();
Если ЗначениеЗаполнено(РезультатПолученияДанныхПредложений.ОшибкаПолученияПредложений) Тогда
МожноПовторитьЗапросПредложений = Истина;
- ПараметрыРасчетаДепозита.РезультатПредварительногоРасчета = Неопределено;
НастроитьСтраницуПредложения();
- СтраницаПредложенияПоказатьСообщение("Ошибка", РезультатПолученияДанныхПредложений.ОшибкаПолученияПредложений);
+ СтраницаПредложенияПоказатьСообщение("Ошибка",
+ РезультатПолученияДанныхПредложений.ОшибкаПолученияПредложений);
ПоказатьСтраницу("Предложения");
Возврат;
КонецЕсли;
ПолученыДанныеПредложений = РезультатПолученияДанныхПредложений.ЕстьПредложенияБанков;
+
КонецЕсли;
+ Если ПолученыДанныеПредложений Тогда
+ Если Не ЗначениеЗаполнено(Объект.СчетОрганизации) Тогда
+ Объект.СчетОрганизации = ЗаполнитьСчетОрганизацииПоУмолчанию(Объект.Организация,
+ Объект.Банк, Объект.Валюта);
+ КонецЕсли;
+ ПроверитьИПолучитьОстаткиПоДаннымБанка();
+ КонецЕсли;
+
КонецЕсли;
- ПараметрыРасчетаДепозита.РезультатПредварительногоРасчета = Неопределено;
+
+ Если Не ЗначениеЗаполнено(Объект.Организация) Или Не ПолученыДанныеПредложений Тогда
+ УстановитьОстаткиПоСчету(Истина);
+ КонецЕсли;
+
НастроитьСтраницуПредложения();
ПоказатьСтраницу("Предложения");
@@ -295,6 +318,9 @@
ПриИзмененииПараметраДепозита();
КонецЕсли;
+ СкрытьОстаток = Не ЗначениеЗаполнено(Объект.СчетОрганизации);
+ УстановитьОстаткиПоСчету(СкрытьОстаток);
+
УстановитьДоступностьКомандыСтраницаПредложения_Далее();
КонецПроцедуры
@@ -303,15 +329,35 @@
Процедура СтраницаПредложения_СчетОткрытияПриИзменении(Элемент)
УстановитьДоступностьКомандыСтраницаПредложения_Далее();
+ СкрытьОстаток = Не ЗначениеЗаполнено(Объект.СчетОрганизации);
+ УстановитьОстаткиПоСчету(СкрытьОстаток);
+
+КонецПроцедуры
+
+&НаКлиенте
+Процедура СтраницаПредложения_СчетОткрытияНачалоВыбора(Элемент, ДанныеВыбора, ВыборДобавлением, СтандартнаяОбработка)
+
+ СчетОткрытияНачалоВыбора(СтандартнаяОбработка);
КонецПроцедуры
&НаКлиенте
Процедура СтраницаПодтверждение_СчетОткрытияПриИзменении(Элемент)
- Элементы.СтраницаПодтверждение_Далее.Доступность = Истина;
- Элементы.ГруппаСтраницаПодтверждение_Информация.Видимость = Ложь;
- ПараметрыРасчетаДепозита.РезультатРасчетаВБанке = Неопределено;
+ Если ЗначениеЗаполнено(Объект.СчетОрганизации) Тогда
+
+ Элементы.СтраницаПодтверждение_Далее.Доступность = Истина;
+ Элементы.ГруппаСтраницаПодтверждение_Информация.Видимость = Ложь;
+ ПараметрыРасчетаДепозита.РезультатРасчетаВБанке = Неопределено;
+
+ КонецЕсли;
+
+КонецПроцедуры
+
+&НаКлиенте
+Процедура СтраницаПодтверждение_СчетОткрытияНачалоВыбора(Элемент, ДанныеВыбора, ВыборДобавлением, СтандартнаяОбработка)
+
+ СчетОткрытияНачалоВыбора(СтандартнаяОбработка);
КонецПроцедуры
@@ -366,6 +412,41 @@
КонецПроцедуры
+&НаКлиенте
+Процедура СтраницаПредложения_ОстатокПоСчетуТекстОбработкаНавигационнойСсылки(Элемент,
+ НавигационнаяСсылкаФорматированнойСтроки, СтандартнаяОбработка)
+
+ СтандартнаяОбработка = Ложь;
+
+ ПараметрыОтбора = Новый Структура("НомерСчета", НомерСчета(Объект.СчетОрганизации));
+
+ НайденныеСтроки = ОстаткиПоДаннымБанка.НайтиСтроки(ПараметрыОтбора);
+
+ Если НайденныеСтроки.Количество() > 0 Тогда
+
+ СтрокаОстатка = НайденныеСтроки[0];
+ ВыпискаСсылка = СтрокаОстатка.ВыпискаБанка;
+ ПараметрыФормыВыписки = Новый Структура;
+ ПараметрыФормыВыписки.Вставить("ПоказатьОстаток", Истина);
+
+ ПараметрыОткрытия = Новый Структура;
+ ПараметрыОткрытия.Вставить("Уникальность", Истина);
+
+ ПараметрыОткрытия.Вставить("ПараметрыФормы", ПараметрыФормыВыписки);
+
+ ОбменСБанкамиСлужебныйКлиент.ОткрытьЭДДляПросмотра(ВыпискаСсылка, ПараметрыОткрытия, ЭтотОбъект);
+
+ КонецЕсли;
+
+КонецПроцедуры
+
+&НаКлиенте
+Процедура СтраницаПредложения_ОстатокПоСчетуКартинкаОбновитьНажатие(Элемент)
+
+ ПолучитьОстаткиПоДаннымБанка();
+
+КонецПроцедуры
+
#КонецОбласти
#Область ОбработчикиСобытийЭлементовТаблицыФормыПрисоединенныеФайлыТаблица
@@ -394,6 +475,15 @@
Процедура Далее(Команда)
ОчиститьСообщения();
+ НомерШагПодтверждение = 2;
+ Если Не ЗначениеЗаполнено(Объект.СчетОрганизации) И НавигацияНомерШага <= НомерШагПодтверждение Тогда
+
+ ТекстСообщения = ОбщегоНазначенияКлиентСервер.ТекстОшибкиЗаполнения("Поле", "Заполнение", "Счет");
+ ОбщегоНазначенияКлиент.СообщитьПользователю(ТекстСообщения, , "Объект.СчетОрганизации");
+ Возврат;
+
+ КонецЕсли;
+
СледующийШаг = СтрШаблон("Шаг%1", НавигацияНомерШага+1);
ОбработатьИзменениеШага(СледующийШаг);
@@ -463,8 +553,9 @@
&НаКлиенте
Процедура ПовторитьЗапросПредложений(Команда)
- РезультатЗапускаЗадания = ОбменСБанкамиДепозитыВызовСервера.ЗапускЗаданияОбновленияДанныхДепозитныхПродуктов(Истина);
- ДлительнаяОперация = РезультатЗапускаЗадания.ДлительнаяОперация;
+ РезультатЗапускаЗадания =
+ ОбменСБанкамиДепозитыВызовСервера.ЗапускЗаданияОбновленияДанныхДепозитныхПродуктов(Истина);
+ ДлительнаяОперация = РезультатЗапускаЗадания.ДлительнаяОперация;
ЗапущеноЗадание = ЗначениеЗаполнено(ДлительнаяОперация);
Если ЗапущеноЗадание Тогда
@@ -597,6 +688,21 @@
Возврат;
КонецЕсли;
+ СостояниеПодготовлено = "Подготовлено";
+
+ НужноПолучатьОстаткиПоДаннымБанка = Ложь;
+ Если Не ЗначениеЗаполнено(СостояниеЗаявкиНаДепозит)
+ Или СостояниеЗаявкиНаДепозит = СостояниеПодготовлено Тогда
+
+ НужноПолучатьОстаткиПоДаннымБанка = Истина;
+
+ КонецЕсли;
+
+ Если ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(
+ РезультатПолученияДанныхПредложений, "ЕстьПредложенияБанков", Ложь) И НужноПолучатьОстаткиПоДаннымБанка Тогда
+ ПроверитьИПолучитьОстаткиПоДаннымБанка();
+ КонецЕсли;
+
КонецПроцедуры
&НаКлиенте
@@ -663,7 +769,7 @@
// Выполняет расчет предложений и обновляет данные предложений банков на форме.
// При этом:
-// - если передан параметры КлючПродукта устанавливает продукт первым в таблице.
+// - если передан параметр КлючПродукта устанавливает продукт первым в таблице.
// - если переданы параметры КлючПродукта и ВыбранноеУсловие устанавливает выбранное условие
// как текущее условие продукта.
//
@@ -689,7 +795,7 @@
Результат.Вставить("ОдинБанк", Ложь);
Результат.Вставить("УсловияТекущегоПродукта", Новый Массив);
- Если ПрочитатьИзХранилища И ЗначениеЗаполнено(АдресХранилищаПредложенийБанков) Тогда
+ Если ПрочитатьИзХранилища И ЭтоАдресВременногоХранилища(АдресХранилищаПредложенийБанков) Тогда
ДанныеПродуктыБанков = ПолучитьИзВременногоХранилища(АдресХранилищаПредложенийБанков);
Иначе
ДанныеПродуктыБанков = ОбменСБанкамиДепозитыСлужебный.ДанныеДепозитныхПродуктов(Объект.Организация);
@@ -698,14 +804,15 @@
Результат.ОшибкаПолученияПредложений = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(
ДанныеПродуктыБанков, "ОшибкаПолученияПредложений", "");
- Если Не ЗначениеЗаполнено(ДанныеПродуктыБанков.Продукты) Или Не ЗначениеЗаполнено(ДанныеПродуктыБанков.Условия) Тогда
+ Если Не ЗначениеЗаполнено(ДанныеПродуктыБанков.Продукты)
+ Или Не ЗначениеЗаполнено(ДанныеПродуктыБанков.Условия) Тогда
Возврат Результат;
КонецЕсли;
Результат.ЕстьПредложенияБанков = Истина;
Если Не ПрочитатьИзХранилища Тогда
- Если Не ЗначениеЗаполнено(АдресХранилищаПредложенийБанков) Тогда
+ Если Не ЭтоАдресВременногоХранилища(АдресХранилищаПредложенийБанков) Тогда
АдресХранилищаПредложенийБанков = ПоместитьВоВременноеХранилище(
ДанныеПродуктыБанков, УникальныйИдентификатор);
Иначе
@@ -900,9 +1007,13 @@
КонецЕсли;
Объект.Доход = Предложение.Доход;
ИтогоДоход = Объект.СуммаДепозита + Предложение.Доход;
- Объект.Банк = Предложение.Банк;
- Объект.СчетОрганизации = ЗаполнитьСчетОрганизацииПоУмолчанию(Объект.Организация,
+
+ Если Объект.Банк <> Предложение.Банк Тогда
+ Объект.Банк = Предложение.Банк;
+ Объект.СчетОрганизации = ЗаполнитьСчетОрганизацииПоУмолчанию(Объект.Организация,
Объект.Банк, Объект.Валюта);
+ КонецЕсли;
+
УстановитьДоступностьКомандыСтраницаПредложения_Далее();
Объект.Капитализация = Предложение.Капитализация;
@@ -1072,21 +1183,31 @@
КонецЕсли;
СсылкаНаЭДЗаявки = ОбменСБанкамиСлужебный.СообщениеОбменаПоВладельцу(СсылкаНаЗаявку);
- СсылкаЗапросаЭД = ОбменСБанкамиДепозитыСлужебный.СформироватьЗапросСостоянияЗаявкиНаДепозит(СсылкаНаЭДЗаявки, СформироватьИзвещение);
+ СсылкаЗапросаЭД = ОбменСБанкамиДепозитыСлужебный.СформироватьЗапросСостоянияЗаявкиНаДепозит(
+ СсылкаНаЭДЗаявки, СформироватьИзвещение);
Возврат СсылкаЗапросаЭД;
КонецФункции
-&НаСервереБезКонтекста
+&НаКлиенте
Функция ЗаполнитьСчетОрганизацииПоУмолчанию(Организация, Банк, Валюта)
+ Если Не ЗначениеЗаполнено(Организация) Или Не ЗначениеЗаполнено(Банк) Или Не ЗначениеЗаполнено(Валюта) Тогда
+ Возврат Неопределено;
+ КонецЕсли;
+ Возврат ЗаполнитьСчетОрганизацииПоУмолчаниюНаСервере(Организация, Банк, Валюта);
+КонецФункции
+
+&НаСервереБезКонтекста
+Функция ЗаполнитьСчетОрганизацииПоУмолчаниюНаСервере(Организация, Банк, Валюта)
Возврат ОбменСБанкамиСлужебный.СчетОрганизацииВБанкеПоУмолчанию(Организация, Банк, Валюта);
КонецФункции
&НаКлиенте
Процедура Подключаемый_ОжиданиеЗавершенияОбработкиОтправленныхЗаявокНаДепозит()
- ПараметрыПриложенияНастройкиСДаннымиСессии = ОбменСБанкамиСлужебныйКлиент.ЗначениеИзКеша("НастройкиОбменаСДаннымиСессии");
+ ПараметрыПриложенияНастройкиСДаннымиСессии = ОбменСБанкамиСлужебныйКлиент.ЗначениеИзКеша(
+ "НастройкиОбменаСДаннымиСессии");
Если ПараметрыПриложенияНастройкиСДаннымиСессии = Неопределено Тогда
Возврат;
КонецЕсли;
@@ -1165,7 +1286,7 @@
&НаКлиенте
Процедура ПроверкаЗавершенияОбработкиОтправленныхЗаявокНаДепозит(Результат, ДополнительныеПараметры) Экспорт
- Если ТипЗнч(Результат) <> Тип("Структура") Тогда;
+ Если ТипЗнч(Результат) <> Тип("Структура") Тогда
Возврат;
КонецЕсли;
@@ -1175,7 +1296,8 @@
Возврат;
КонецЕсли;
- ПараметрыПриложенияНастройкиСДаннымиСессии = ОбменСБанкамиСлужебныйКлиент.ЗначениеИзКеша("НастройкиОбменаСДаннымиСессии");
+ ПараметрыПриложенияНастройкиСДаннымиСессии =
+ ОбменСБанкамиСлужебныйКлиент.ЗначениеИзКеша("НастройкиОбменаСДаннымиСессии");
Если ПараметрыПриложенияНастройкиСДаннымиСессии = Неопределено Тогда
Возврат;
@@ -1188,9 +1310,11 @@
Возврат;
КонецЕсли;
+ Коэффициент = 1000;
+
ДлительностьСессии = (Результат.УниверсальнаяДатаОбновленияСессии
- ПараметрыПриложенияДанныеСессии.УниверсальнаяДатаОбновленияСессии)
- / 1000;
+ / Коэффициент;
Если ДлительностьСессии > ОбменСБанкамиСлужебныйКлиентСервер.ДлительностьОткрытойСессииОбменаСБанком() Тогда
Возврат;
@@ -1202,31 +1326,41 @@
КонецЕсли;
ДлительностьТекущейСессии = (ТекущаяУниверсальнаяДатаВМиллисекундах()
- - Результат.УниверсальнаяДатаОбновленияСессии) / 1000;
+ - Результат.УниверсальнаяДатаОбновленияСессии) / Коэффициент;
Если ДлительностьТекущейСессии >= ВремяЖизниСессии Тогда
Возврат;
КонецЕсли;
+ КоэффициентВремяЖизниСессии = 0.50;
НовоеСостояниеЗаявки = СостояниеЗаявкиНаДепозитПоЭД(Объект.Ссылка);
- ДлительностьПаузы = Окр(ВремяЖизниСессии * 0.50 - ДлительностьТекущейСессии);
+ ДлительностьПаузы = Окр(ВремяЖизниСессии * КоэффициентВремяЖизниСессии - ДлительностьТекущейСессии);
- Если НовоеСостояниеЗаявки = "ВОбработке" Тогда
-
- ПодключитьОбработчикОжидания("Подключаемый_ОжиданиеЗавершенияОбработкиОтправленныхЗаявокНаДепозит", ДлительностьПаузы, Истина);
- ПараметрыПриложенияДанныеСессии.ИдентификаторЗаданияОжидания = "";
-
- ИначеЕсли НовоеСостояниеЗаявки = "Исполнено" Тогда
+ СостояниеИсполнено = "Исполнено";
+ СостояниеОтклонено = "Отклонено";
+
+ Если НовоеСостояниеЗаявки = СостояниеИсполнено Тогда
ЗаявкаИсполнена = Истина;
ОжидаетсяСтатусЗаявки = Ложь;
ПодключитьОбработчикОжидания("Подключаемый_ОбновитьДанныеЗаявки", 1, Истина);
- ИначеЕсли НовоеСостояниеЗаявки = "Отклонено" Тогда
+ ИначеЕсли НовоеСостояниеЗаявки = СостояниеОтклонено Тогда
ОжидаетсяСтатусЗаявки = Ложь;
ОбработатьСостояниеЗаявкиНаДепозит();
+ Иначе
+ // Иначе состояние заявки еще не изменилось.
+ ПараметрыПриложенияДанныеСессии.ИдентификаторЗаданияОжидания = "";
+ // Если длительность паузы меньше 1 секунды, то выполняем обработчик сразу
+ Если ДлительностьПаузы < 1 Тогда
+ Подключаемый_ОжиданиеЗавершенияОбработкиОтправленныхЗаявокНаДепозит();
+ Иначе
+ ПодключитьОбработчикОжидания("Подключаемый_ОжиданиеЗавершенияОбработкиОтправленныхЗаявокНаДепозит",
+ ДлительностьПаузы, Истина);
+ КонецЕсли;
+
КонецЕсли;
КонецПроцедуры
@@ -1246,7 +1380,8 @@
Если ЗначениеЗаполнено(СообщениеОбмена) И СостояниеЗаявкиНаДепозит = "НаПодписи" Тогда
МассивСообщенийОбмена = Новый Массив;
МассивСообщенийОбмена.Добавить(СообщениеОбмена);
- ОбменСБанкамиСлужебныйКлиент.ПодготовитьОкружениеИПодписатьДокументыКодомИзSMS(НастройкаОбмена, МассивСообщенийОбмена);
+ ОбменСБанкамиСлужебныйКлиент.ПодготовитьОкружениеИПодписатьДокументыКодомИзSMS(
+ НастройкаОбмена, МассивСообщенийОбмена);
Иначе
ОбменСБанкамиКлиент.СформироватьПодписатьОтправитьЭД(Объект.Ссылка, СообщениеОбмена);
КонецЕсли;
@@ -1436,7 +1571,8 @@
&НаСервереБезКонтекста
Функция ПолучитьДанныеДляЗапросаРасчетаДепозита(Организация, Банк, ПараметрыДепозита)
- Возврат ОбменСБанкамиДепозитыСлужебный.СформироватьДанныеЗапросаРасчетаДепозита(Организация, Банк, ПараметрыДепозита);
+ Возврат ОбменСБанкамиДепозитыСлужебный.СформироватьДанныеЗапросаРасчетаДепозита(
+ Организация, Банк, ПараметрыДепозита);
КонецФункции
&НаСервереБезКонтекста
@@ -1633,8 +1769,7 @@
ПродуктБанка = ПродуктыБанков.НайтиПоИдентификатору(ПредложениеБанка);
- Если ЗначениеЗаполнено(Объект.СчетОрганизации)
- И Не ПродуктБанка = Неопределено И ЗначениеЗаполнено(ПродуктБанка.ИдентификаторУсловия) Тогда
+ Если Не ПродуктБанка = Неопределено И ЗначениеЗаполнено(ПродуктБанка.ИдентификаторУсловия) Тогда
ДоступностьЭлемента = Истина;
@@ -1764,15 +1899,16 @@
КонецЕсли;
- ГруппаДетали = Элементы.Добавить(СтрШаблон("ГруппаДетали_%1", ИндексСтрокой), Тип("ГруппаФормы"), ГруппаПредложение);
+ ГруппаДетали = Элементы.Добавить(СтрШаблон("ГруппаДетали_%1", ИндексСтрокой), Тип("ГруппаФормы"),
+ ГруппаПредложение);
ГруппаДетали.Вид = ВидГруппыФормы.ОбычнаяГруппа;
ГруппаДетали.Группировка = ГруппировкаПодчиненныхЭлементовФормы.Горизонтальная;
ГруппаДетали.Заголовок = НСтр("ru = 'Детали'");
ГруппаДетали.ОтображатьЗаголовок = Ложь;
ГруппаДетали.Отображение = ОтображениеОбычнойГруппы.Нет;
- ДекорацияОтступОписания = Элементы.Добавить(СтрШаблон("ДекорацияОтступОписания_%1", ИндексСтрокой), Тип("ДекорацияФормы"),
- ГруппаДетали);
+ ДекорацияОтступОписания = Элементы.Добавить(СтрШаблон("ДекорацияОтступОписания_%1", ИндексСтрокой),
+ Тип("ДекорацияФормы"), ГруппаДетали);
ДекорацияОтступОписания.Заголовок = "";
ДекорацияОтступОписания.Вид = ВидДекорацииФормы.Надпись;
ДекорацияОтступОписания.Ширина = 1;
@@ -1785,7 +1921,8 @@
ГруппаОписание.Отображение = ОтображениеОбычнойГруппы.Нет;
ГруппаОписание.РастягиватьПоГоризонтали = Истина;
- ГруппаОписание = Элементы.Добавить(СтрШаблон("ГруппаОписаниеДетали_%1", ИндексСтрокой), Тип("ГруппаФормы"), ГруппаДетали);
+ ГруппаОписание = Элементы.Добавить(СтрШаблон("ГруппаОписаниеДетали_%1", ИндексСтрокой), Тип("ГруппаФормы"),
+ ГруппаДетали);
ГруппаОписание.Вид = ВидГруппыФормы.ОбычнаяГруппа;
ГруппаОписание.Группировка = ГруппировкаПодчиненныхЭлементовФормы.Вертикальная;
ГруппаОписание.Заголовок = НСтр("ru = 'Описание продукта и условия'");
@@ -1805,8 +1942,8 @@
ДекорацияОписание.АвтоМаксимальнаяШирина = Ложь;
ДекорацияОписание.РастягиватьПоГоризонтали = Истина;
- ДекорацияСрокиИУсловия = Элементы.Добавить(СтрШаблон("СрокиИУсловияПредложение_%1", ИндексСтрокой), Тип("ДекорацияФормы"),
- ГруппаОписание);
+ ДекорацияСрокиИУсловия = Элементы.Добавить(СтрШаблон("СрокиИУсловияПредложение_%1", ИндексСтрокой),
+ Тип("ДекорацияФормы"), ГруппаОписание);
ДекорацияСрокиИУсловия.Вид = ВидДекорацииФормы.Надпись;
ДекорацияСрокиИУсловия.Заголовок = НСтр("ru = 'Сроки и условия'");
ДекорацияСрокиИУсловия.Гиперссылка = Истина;
@@ -1863,7 +2000,8 @@
Если ЕстьУсловие Тогда
НаименованиеПродукта = СтрШаблон(НСтр("ru = '%1%% %2'"), ТекСтрока.Ставка, ТекСтрока.Наименование);
Иначе
- НаименованиеПродукта = СтрШаблон(НСтр("ru = '%1%% до %2'"), ТекСтрока.СтавкаМаксимум, ТекСтрока.Наименование);
+ НаименованиеПродукта = СтрШаблон(
+ НСтр("ru = '%1%% до %2'"), ТекСтрока.СтавкаМаксимум, ТекСтрока.Наименование);
КонецЕсли;
Если Не ОдинБанк Тогда
@@ -1950,7 +2088,8 @@
ВыбранныйПродукт = ТекущийПродукт.КлючПродукта;
КонецЕсли;
- РезультатПолученияДанных = ЗаполнитьПредложенияБанковНаСервере(ПараметрыПользователя, Истина, ВыбранныйПродукт, ВыбранноеУсловие);
+ РезультатПолученияДанных = ЗаполнитьПредложенияБанковНаСервере(ПараметрыПользователя, Истина, ВыбранныйПродукт,
+ ВыбранноеУсловие);
Если Не РезультатПолученияДанных.ЕстьПредложенияБанков Тогда
Возврат;
КонецЕсли;
@@ -1959,6 +2098,8 @@
ПараметрыПредложений.Организация = Объект.Организация;
ПараметрыПредложений.УсловияТекущегоПродукта = РезультатПолученияДанных.УсловияТекущегоПродукта;
+ ПараметрыПредложений.ПользовательУказалПараметры = Ложь;
+
ЗаполнитьПараметрыДепозита();
УстановитьДоступностьЭлементовСтраницыПредложение(Истина);
УстановитьДоступностьКомандыСтраницаПредложения_Далее();
@@ -2001,13 +2142,12 @@
ИначеЕсли Ошибка.КодОшибки = "2302" Тогда
- ОписаниеОшибки = НСтр("ru = '2302 На указанном счете недостаточно средств,'")
- + НСтр("ru = 'пожалуйста, выберите другой счет.'");
+ ОписаниеОшибки =
+ НСтр("ru = '2302 На указанном счете недостаточно средств, пожалуйста, выберите другой счет.'");
ЭлементОписанияОшибки = Элементы.СтраницаПодтверждение_ПредупреждениеОписание;
Элементы.СтраницаПодтверждение_СчетОткрытия.ТолькоПросмотр = Ложь;
ЕстьПредупреждение = Истина;
ПовторитьРасчет = Истина;
- БлокироватьОтправку = Истина;
ИначеЕсли Ошибка.КодОшибки = "2303" Тогда
@@ -2094,7 +2234,8 @@
Если УстарелиДанныеЗаявки Тогда
Если ДоступенОбменДепозитами И НастройкаОбменаПоддерживаетДепозиты Тогда
ТекстОшибки =
- НСтр("ru = 'Данные расчета не актуальны, невозможно отправить заявку. Создайте и отправьте новую заявку'");
+ НСтр("ru = 'Данные расчета не актуальны, невозможно отправить заявку.
+ |Создайте и отправьте новую заявку'");
Иначе
ТекстОшибки = "";
КонецЕсли;
@@ -2430,7 +2571,8 @@
НоваяСтрока.Ссылка = ДанныеФайла.Ссылка;
НоваяСтрока.Наименование = ОбменСБанкамиСлужебныйКлиентСервер.ПредставлениеПрисоединенногоФайла(
ДанныеФайла.Наименование, ДанныеФайла.Расширение);
- НоваяСтрока.ИндексКартинки = РаботаСФайламиБЭДКлиентСервер.ИндексКартинкиПоРасширениюФайла(ДанныеФайла.Расширение);
+ НоваяСтрока.ИндексКартинки =
+ РаботаСФайламиБЭДКлиентСервер.ИндексКартинкиПоРасширениюФайла(ДанныеФайла.Расширение);
КонецЦикла;
@@ -2523,46 +2665,23 @@
Функция НавигацияПомощника()
СтруктураНавигации = Новый Структура;
- СтруктураНавигации.Вставить(ИмяШага(1), СтруктураШагаНачало(1));
- СтруктураНавигации.Вставить(ИмяШага(2), СтруктураШагаПодтверждение(2));
- СтруктураНавигации.Вставить(ИмяШага(3), СтруктураШагаРезультат(3));
+
+ СтруктураНавигации.Вставить(ИмяШага(1), СтруктураШага(1, НСтр("ru='Начало'"), "Начало"));
+ СтруктураНавигации.Вставить(ИмяШага(2), СтруктураШага(2, НСтр("ru='Подтверждение'"), "Подтверждение"));
+ СтруктураНавигации.Вставить(ИмяШага(3), СтруктураШага(3, НСтр("ru='Открытие'"), "Открытие"));
Возврат СтруктураНавигации;
КонецФункции
&НаСервере
-Функция СтруктураШагаНачало(НомерШага)
+Функция СтруктураШага(НомерШага, ТекстНавигации, НавигацияПараметрФормы)
СтруктураШага = НовыйСтруктураШага();
СтруктураШага.ИмяПомощника = ИмяПомощника();
СтруктураШага.НомерШага = НомерШага;
- СтруктураШага.ТекстНавигации = НСтр("ru='Начало'");
- СтруктураШага.СтруктураПараметровФормы.НавигацияПараметрФормы = "Начало";
- Возврат СтруктураШага;
-
-КонецФункции
-
-&НаСервере
-Функция СтруктураШагаПодтверждение(НомерШага)
-
- СтруктураШага = НовыйСтруктураШага();
- СтруктураШага.ИмяПомощника = ИмяПомощника();
- СтруктураШага.НомерШага = НомерШага;
- СтруктураШага.ТекстНавигации = НСтр("ru='Подтверждение'");
- СтруктураШага.СтруктураПараметровФормы.НавигацияПараметрФормы = "Подтверждение";
- Возврат СтруктураШага;
-
-КонецФункции
-
-&НаСервере
-Функция СтруктураШагаРезультат(НомерШага)
-
- СтруктураШага = НовыйСтруктураШага();
- СтруктураШага.ИмяПомощника = ИмяПомощника();
- СтруктураШага.НомерШага = НомерШага;
- СтруктураШага.ТекстНавигации = НСтр("ru='Открытие'");
- СтруктураШага.СтруктураПараметровФормы.НавигацияПараметрФормы = "Открытие";
+ СтруктураШага.ТекстНавигации = ТекстНавигации;
+ СтруктураШага.СтруктураПараметровФормы.НавигацияПараметрФормы = НавигацияПараметрФормы;
Возврат СтруктураШага;
КонецФункции
@@ -2585,13 +2704,6 @@
КонецФункции
-&НаКлиентеНаСервереБезКонтекста
-Функция МаксимальноеЧислоШагов()
-
- Возврат 3;
-
-КонецФункции
-
&НаКлиентеНаСервереБезКонтекста
Функция НовыйСтруктураШага()
@@ -2741,23 +2853,240 @@
КонецЦикла;
- // Очистка неиспользуемых шагов навигации
- МаксимальноеЧислоШагов = МаксимальноеЧислоШагов();
- Если КоличествоШагов < МаксимальноеЧислоШагов Тогда
- Для НомерШага = КоличествоШагов + 1 По МаксимальноеЧислоШагов Цикл
-
- ЭлементФормы = Элементы.Найти(ИмяШага(НомерШага));
- Если ЭлементФормы <> Неопределено Тогда
- ЭлементФормы.Заголовок = "";
- КонецЕсли;
-
- КонецЦикла;
- КонецЕсли;
-
КонецПроцедуры
#КонецОбласти
#КонецОбласти
+#Область ОстаткиПоДаннымБанка
+
+&НаКлиенте
+Процедура СчетОткрытияНачалоВыбора(СтандартнаяОбработка)
+
+ СтандартнаяОбработка = Ложь;
+ ПараметрыФормы = Новый Структура;
+ ОстаткиПоСчетам = ПодготовитьОстаткиПоБанкуДляФормыВыбора();
+
+ ПараметрыФормы.Вставить("ДанныеОбОстатке", ОстаткиПоСчетам);
+ ПараметрыФормы.Вставить("Организация", Объект.Организация);
+ ПараметрыФормы.Вставить("Банк", Объект.Банк);
+
+ ОписаниеОповещенияОЗакрытии = Новый ОписаниеОповещения("ПослеВыбораСчетаОткрытия", ЭтотОбъект);
+
+ ОткрытьФорму("Документ.ЗаявкаНаДепозитОбменСБанками.Форма.ФормаВыбораСчетаОткрытия",
+ ПараметрыФормы, ЭтотОбъект, , , , ОписаниеОповещенияОЗакрытии, РежимОткрытияОкнаФормы.БлокироватьОкноВладельца);
+
+КонецПроцедуры
+
+&НаКлиенте
+Процедура ПослеВыбораСчетаОткрытия(ВыбранноеЗначение, ДополнительныеПараметры) Экспорт
+
+ Если Не ЗначениеЗаполнено(ВыбранноеЗначение) Тогда
+ Возврат;
+ КонецЕсли;
+
+ Объект.СчетОрганизации = ВыбранноеЗначение;
+ УстановитьДоступностьКомандыСтраницаПредложения_Далее();
+ УстановитьОстаткиПоСчету();
+
+КонецПроцедуры
+
+&НаКлиенте
+Функция ПодготовитьОстаткиПоБанкуДляФормыВыбора()
+
+ Результат = Новый Соответствие;
+ ПараметрыОтбора = Новый Структура("Банк", Объект.Банк);
+ ОстаткиПоБанку = ОстаткиПоДаннымБанка.НайтиСтроки(ПараметрыОтбора);
+
+ Для Каждого СтрокаСчета Из ОстаткиПоБанку Цикл
+
+ ПараметрыОстаткаПоСчету = НовыйПараметрыДанныхОстаткаПоСчету();
+
+ ЗаполнитьЗначенияСвойств(ПараметрыОстаткаПоСчету, СтрокаСчета);
+ Результат.Вставить(СтрокаСчета.НомерСчета, ПараметрыОстаткаПоСчету);
+
+ КонецЦикла;
+
+ Возврат Результат;
+
+КонецФункции
+
+&НаКлиенте
+Функция НовыйПараметрыДанныхОстаткаПоСчету()
+
+ Результат = Новый Структура;
+
+ Результат.Вставить("ДатаФормирования", Дата(1, 1, 1));
+ Результат.Вставить("Остаток", 0);
+
+ Возврат Результат;
+
+КонецФункции
+
+&НаКлиенте
+Процедура ПроверитьИПолучитьОстаткиПоДаннымБанка()
+
+ ПараметрыОтбора = Новый Структура("Организация", Объект.Организация);
+ НайденныеСтроки = ОстаткиПоДаннымБанка.НайтиСтроки(ПараметрыОтбора);
+
+ Если НайденныеСтроки.Количество() = 0 Тогда
+
+ ПолучитьОстаткиПоДаннымБанка();
+
+ Возврат;
+
+ КонецЕсли;
+
+ УстановитьОстаткиПоСчету();
+
+КонецПроцедуры
+
+&НаКлиенте
+Процедура ПолучитьОстаткиПоДаннымБанка()
+
+ ИдентификаторЗапущенногоЗадания = Неопределено;
+
+ Если ЗначениеЗаполнено(ДлительнаяОперацияЗагрузкаОстатков) Тогда
+ ИдентификаторЗапущенногоЗадания = ДлительнаяОперацияЗагрузкаОстатков.ИдентификаторЗадания;
+ КонецЕсли;
+
+ Элементы.СтраницаПредложения_ОстатокПоСчетуТекст.Заголовок = НСтр("ru='Остаток: пожалуйста, подождите'");
+ Элементы.СтраницаПредложения_ОстатокПоСчетуКартинкаОбновить.Видимость = Ложь;
+ Элементы.СтраницаПредложения_ОстатокПоСчетуКартинка.Видимость = Истина;
+
+ ДлительнаяОперацияЗагрузкаОстатков = ЗапускЗаданияПолучитьОстаткиПоСчетамВыписки(
+ Объект.Организация, УникальныйИдентификатор, ИдентификаторЗапущенногоЗадания);
+
+ Если ЗначениеЗаполнено(ДлительнаяОперацияЗагрузкаОстатков)
+ И Не ДлительнаяОперацияЗагрузкаОстатков.Статус = "Выполнено" Тогда
+
+ ОповещениеОЗавершении = Новый ОписаниеОповещения("ПослеПолученияОстатковПоСчетамВыписки", ЭтотОбъект);
+ ПараметрыОжидания = ДлительныеОперацииКлиент.ПараметрыОжидания(Неопределено);
+ ПараметрыОжидания.ВыводитьОкноОжидания = Ложь;
+
+ ДлительныеОперацииКлиент.ОжидатьЗавершение(ДлительнаяОперацияЗагрузкаОстатков,
+ ОповещениеОЗавершении, ПараметрыОжидания);
+
+ Иначе
+
+ ПослеПолученияОстатковПоСчетамВыписки(ДлительнаяОперацияЗагрузкаОстатков, Неопределено);
+
+ КонецЕсли;
+
+КонецПроцедуры
+
+&НаСервереБезКонтекста
+Функция ЗапускЗаданияПолучитьОстаткиПоСчетамВыписки(Организация, УникальныйИдентификатор,
+ ИдентификаторЗадания = Неопределено)
+
+ Если ЗначениеЗаполнено(ИдентификаторЗадания) Тогда
+ ДлительныеОперации.ОтменитьВыполнениеЗадания(ИдентификаторЗадания);
+ КонецЕсли;
+
+ Возврат ОбменСБанкамиДепозитыВызовСервера.ЗапускЗаданияПолучитьОстаткиПоСчетамВыписки(
+ Организация, УникальныйИдентификатор);
+
+КонецФункции
+
+&НаКлиенте
+Процедура ПослеПолученияОстатковПоСчетамВыписки(Результат, ДополнительныеПараметры) Экспорт
+
+ Если Результат = Неопределено Тогда
+
+ Элементы.СтраницаПредложения_ОстатокПоСчетуТекст.Заголовок = " ";
+ Элементы.СтраницаПредложения_ОстатокПоСчетуКартинка.Видимость = Ложь;
+ Возврат;
+
+ КонецЕсли;
+
+ ЗагрузитьОстаткиПоСчетамВыпискиНаСервере(Результат.АдресРезультата);
+ ДлительнаяОперацияЗагрузкаОстатков = Неопределено;
+ ПодключитьОбработчикОжидания("Подключаемый_ПослеЗагрузкиОстатковПоСчетамОрганизации", 1, Истина);
+
+КонецПроцедуры
+
+&НаКлиенте
+Процедура Подключаемый_ПослеЗагрузкиОстатковПоСчетамОрганизации()
+
+ Элементы.СтраницаПредложения_ОстатокПоСчетуКартинка.Видимость = Ложь;
+ Элементы.СтраницаПредложения_ОстатокПоСчетуКартинкаОбновить.Видимость = Истина;
+ УстановитьОстаткиПоСчету();
+
+КонецПроцедуры
+
+&НаКлиенте
+Процедура УстановитьОстаткиПоСчету(СкрытьОстаток = Ложь)
+
+ Элементы.СтраницаПредложения_ОстатокПоСчетуКартинка.Видимость = Ложь;
+ Элементы.СтраницаПредложения_ОстатокПоСчетуКартинкаОбновить.Видимость = Истина;
+
+ РеквизитыОрганизацииЗаполнены = Ложь;
+ Если ЗначениеЗаполнено(Объект.Организация) И ЗначениеЗаполнено(Объект.СчетОрганизации) Тогда
+ РеквизитыОрганизацииЗаполнены = Истина;
+ КонецЕсли;
+
+ Если Не РеквизитыОрганизацииЗаполнены Или СкрытьОстаток Тогда
+ Элементы.СтраницаПредложения_ОстатокПоСчетуТекст.Заголовок = " ";
+ Элементы.СтраницаПредложения_ОстатокПоСчетуКартинкаОбновить.Видимость = Ложь;
+ Возврат;
+ КонецЕсли;
+
+ ПараметрыОтбора = Новый Структура("НомерСчета", НомерСчета(Объект.СчетОрганизации));
+ НайденныеСтроки = ОстаткиПоДаннымБанка.НайтиСтроки(ПараметрыОтбора);
+
+ Если НайденныеСтроки.Количество() > 0 Тогда
+
+ СтрокаОстатка = НайденныеСтроки[0];
+ СуммаОстаткаСтрока = Формат(СтрокаОстатка.Остаток, "ЧЦ=15; ЧДЦ=2");
+ ДатаОстаткаСтрока = Формат(СтрокаОстатка.ДатаФормирования, НСтр("ru='ДФ=''dd.MM.yy HH:mm'''"));
+ ТекстОстатокПоСчету = СтрШаблон(
+ НСтр("ru = 'Остаток: %1 Выписка от %2'"),
+ СуммаОстаткаСтрока,
+ ДатаОстаткаСтрока);
+ ТекстОстатокПоСчету = СтроковыеФункцииКлиент.ФорматированнаяСтрока(ТекстОстатокПоСчету);
+ Элементы.СтраницаПредложения_ОстатокПоСчетуТекст.Заголовок = ТекстОстатокПоСчету;
+ Иначе
+ Элементы.СтраницаПредложения_ОстатокПоСчетуТекст.Заголовок = СтроковыеФункцииКлиент.ФорматированнаяСтрока(
+ НСтр("ru = 'Остаток: Нет данных. Загрузите выписку'"));
+ КонецЕсли;
+
+КонецПроцедуры
+
+&НаСервере
+Процедура ЗагрузитьОстаткиПоСчетамВыпискиНаСервере(АдресРезультата)
+
+ Если Не ЭтоАдресВременногоХранилища(АдресРезультата) Тогда
+ Возврат;
+ КонецЕсли;
+
+ ОстаткиОрганизацииПоДаннымБанка = ПолучитьИзВременногоХранилища(АдресРезультата);
+
+ ПараметрыОтбора = Новый Структура("Организация", Объект.Организация);
+ НайденныеСтроки = ОстаткиПоДаннымБанка.НайтиСтроки(ПараметрыОтбора);
+
+ Индекс = НайденныеСтроки.Количество() -1;
+
+ Пока Индекс >= 0 Цикл
+
+ ОстаткиПоДаннымБанка.Удалить(НайденныеСтроки[Индекс]);
+ Индекс = Индекс - 1;
+
+ КонецЦикла;
+
+ ОбщегоНазначенияКлиентСервер.ДополнитьТаблицу(ОстаткиОрганизацииПоДаннымБанка,
+ ОстаткиПоДаннымБанка);
+
+КонецПроцедуры
+
+&НаСервереБезКонтекста
+Функция НомерСчета(СчетСсылка)
+
+ ИмяРеквизитаОрганизация = ОбменСБанкамиСлужебный.ИмяПрикладногоРеквизита("БанковскийСчетОрганизации.НомерСчета");
+ Возврат ОбщегоНазначения.ЗначениеРеквизитаОбъекта(СчетСсылка, ИмяРеквизитаОрганизация);
+
+КонецФункции
+
+#КонецОбласти
+
#КонецОбласти
diff --git a/src/Documents/ЗаявкаНаДепозитОбменСБанками/Forms/ФормаСписка/Ext/Form.xml b/src/Documents/ЗаявкаНаДепозитОбменСБанками/Forms/ФормаСписка/Ext/Form.xml
index 1f5a8237a..e16ade70d 100644
--- a/src/Documents/ЗаявкаНаДепозитОбменСБанками/Forms/ФормаСписка/Ext/Form.xml
+++ b/src/Documents/ЗаявкаНаДепозитОбменСБанками/Forms/ФормаСписка/Ext/Form.xml
@@ -181,16 +181,22 @@
-
- Список.Ставка
-
-
-
Список.Валюта
+
+ Список.Ставка
+
+
+ ru
+ Ставка, %
+
+
+
+
+
Список.СрокДепозита
false
diff --git a/src/Documents/ЗаявкаНаЗакупку/Ext/ManagerModule.bsl b/src/Documents/ЗаявкаНаЗакупку/Ext/ManagerModule.bsl
index f4a482cd1..4e658275f 100644
--- a/src/Documents/ЗаявкаНаЗакупку/Ext/ManagerModule.bsl
+++ b/src/Documents/ЗаявкаНаЗакупку/Ext/ManagerModule.bsl
@@ -1018,12 +1018,11 @@
| ТабличнаяЧасть.ВидЦеныПоставщика КАК ВидЦеныПоставщика,
| ТабличнаяЧасть.Цена КАК Цена,
| ТабличнаяЧасть.СтавкаНДС КАК СтавкаНДС,
- | МИНИМУМ(ТабличнаяЧасть.НомерСтроки) КАК НомерСтроки,
- | СУММА(Остатки.Количество) КАК Количество,
- | МАКСИМУМ(ТабличнаяЧасть.Упаковка) КАК Упаковка,
+ | ТабличнаяЧасть.НомерСтроки КАК НомерСтроки,
+ | Остатки.Количество КАК Количество,
+ | ТабличнаяЧасть.Упаковка КАК Упаковка,
| Шапка.Подразделение КАК ПодразделениеШапки,
| Шапка.Склад КАК СкладШапки,
- | КОЛИЧЕСТВО(РАЗЛИЧНЫЕ ТабличнаяЧасть.НомерСтроки) КАК КоличествоСвернутыхСтрокЗаявки,
| ТабличнаяЧасть.Сумма КАК Сумма,
| ТабличнаяЧасть.СуммаНДС КАК СуммаНДС,
| ТабличнаяЧасть.СуммаСНДС КАК СуммаСНДС,
@@ -1052,40 +1051,7 @@
| ПО ТабличнаяЧасть.Договор = ДоговорыКонтрагентов.Ссылка
|ГДЕ
| ТабличнаяЧасть.Ссылка = &ЗаявкаНаЗакупку
- | И ТабличнаяЧасть.НомерСтроки В(&НомераСтрок)
- |
- |СГРУППИРОВАТЬ ПО
- | ТабличнаяЧасть.Подразделение,
- | ТабличнаяЧасть.Цена,
- | ТабличнаяЧасть.ВидЦеныПоставщика,
- | ТабличнаяЧасть.Склад,
- | ТабличнаяЧасть.Соглашение,
- | ТабличнаяЧасть.СтавкаНДС,
- | Шапка.Ссылка,
- | ТабличнаяЧасть.Номенклатура,
- | ТабличнаяЧасть.Договор,
- | ТабличнаяЧасть.Характеристика,
- | ТабличнаяЧасть.Назначение,
- | ТабличнаяЧасть.НоменклатураПартнера,
- | ТабличнаяЧасть.Контрагент,
- | ТабличнаяЧасть.Партнер,
- | Шапка.Организация,
- | Шапка.Валюта,
- | Шапка.ЦенаВключаетНДС,
- | Шапка.Подразделение,
- | Шапка.Склад,
- | ТабличнаяЧасть.Сумма,
- | ТабличнаяЧасть.СуммаНДС,
- | ТабличнаяЧасть.СуммаСНДС,
- | ТабличнаяЧасть.КоличествоУпаковок,
- | Остатки.Количество <> ТабличнаяЧасть.Количество,
- |
- | ВЫБОР КОГДА ЕСТЬNULL(ДоговорыКонтрагентов.ПорядокРасчетов,
- | ЗНАЧЕНИЕ(Перечисление.ПорядокРасчетов.ПустаяСсылка)) = ЗНАЧЕНИЕ(Перечисление.ПорядокРасчетов.ПоДоговорамКонтрагентов) ТОГДА
- | ДоговорыКонтрагентов.НаправлениеДеятельности
- | ИНАЧЕ
- | ЗНАЧЕНИЕ(Справочник.НаправленияДеятельности.ПустаяСсылка)
- | КОНЕЦ";
+ | И ТабличнаяЧасть.НомерСтроки В(&НомераСтрок)";
#КонецОбласти
ПоляШапки = Новый Массив;
@@ -1103,7 +1069,6 @@
ИсключаемыеКолонкиТаблицы = Новый Массив;
ИсключаемыеКолонкиТаблицы.Добавить("НомерСтроки");
- ИсключаемыеКолонкиТаблицы.Добавить("КоличествоСвернутыхСтрокЗаявки");
ИсключаемыеКолонкиТаблицы.Добавить("ТребуетсяПересчет");
ОбщегоНазначенияКлиентСервер.ДополнитьМассив(ИсключаемыеКолонкиТаблицы, ПоляШапки);
@@ -1173,8 +1138,7 @@
ОписаниеЗаказа.Вставить("МинимальныйНомерИсходнойСтроки", Товары[0].НомерСтроки);
Товары.Колонки.Удалить("НомерСтроки");
- ОписаниеЗаказа.Вставить("ОбработаноИсходныхСтрок", Товары.Итог("КоличествоСвернутыхСтрокЗаявки"));
- Товары.Колонки.Удалить("КоличествоСвернутыхСтрокЗаявки");
+ ОписаниеЗаказа.Вставить("ОбработаноИсходныхСтрок", Товары.Количество());
ОписаниеЗаказов.Добавить(ОписаниеЗаказа);
diff --git a/src/Documents/ЗаявкаНаКонтрольКачестваТоваров/Ext/ManagerModule.bsl b/src/Documents/ЗаявкаНаКонтрольКачестваТоваров/Ext/ManagerModule.bsl
index 43d668e61..1c74dc6f9 100644
--- a/src/Documents/ЗаявкаНаКонтрольКачестваТоваров/Ext/ManagerModule.bsl
+++ b/src/Documents/ЗаявкаНаКонтрольКачестваТоваров/Ext/ManagerModule.bsl
@@ -1070,6 +1070,7 @@
КонецПроцедуры
+
Функция АдаптированныйТекстЗапросаДвиженийПоРегистру(ИмяРегистра) Экспорт
ПолноеИмяДокумента = "Документ.ЗаявкаНаКонтрольКачестваТоваров";
diff --git a/src/Documents/ЗаявкаНаКонтрольКачестваТоваров/Ext/ObjectModule.bsl b/src/Documents/ЗаявкаНаКонтрольКачестваТоваров/Ext/ObjectModule.bsl
index c15fb9954..a69b72f14 100644
--- a/src/Documents/ЗаявкаНаКонтрольКачестваТоваров/Ext/ObjectModule.bsl
+++ b/src/Documents/ЗаявкаНаКонтрольКачестваТоваров/Ext/ObjectModule.bsl
@@ -83,7 +83,6 @@
// Механизм "Контролируемые партии".
КонтрольКачества.СоздатьОбновитьКонтролируемуюПартиюПриЗаписиДокумента(ЭтотОбъект);
-
КонецПроцедуры
Процедура ОбработкаПроведения(Отказ, РежимПроведения)
diff --git a/src/Documents/ЗаявкаНаРасходованиеДенежныхСредств/Ext/ManagerModule.bsl b/src/Documents/ЗаявкаНаРасходованиеДенежныхСредств/Ext/ManagerModule.bsl
index 0a13ebf23..6b947ef5b 100644
--- a/src/Documents/ЗаявкаНаРасходованиеДенежныхСредств/Ext/ManagerModule.bsl
+++ b/src/Documents/ЗаявкаНаРасходованиеДенежныхСредств/Ext/ManagerModule.bsl
@@ -2814,7 +2814,7 @@
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ОплатаПоКредитам),
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПеречислениеНаДепозиты),
| ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ВыдачаЗаймов)) ТОГДА
- | ЕСТЬNULL(ТаблицаРасшифровкаПлатежа.ДоговорКредитаДепозитаНаправлениеДеятельности, ЗНАЧЕНИЕ(Справочник.НаправленияДеятельности.ПустаяСсылка))
+ | ЗНАЧЕНИЕ(Справочник.НаправленияДеятельности.ПустаяСсылка)
| ИНАЧЕ
| ЕСТЬNULL(ТаблицаРасшифровкаПлатежа.ОбъектРасчетовНаправлениеДеятельности, ЗНАЧЕНИЕ(Справочник.НаправленияДеятельности.ПустаяСсылка))
| КОНЕЦ КАК НаправлениеДеятельности
@@ -5892,6 +5892,21 @@
//++ Локализация
+ ЗапросМаксимальнаяГраница = Новый Запрос;
+ ЗапросМаксимальнаяГраница.Текст =
+ "ВЫБРАТЬ
+ | МАКСИМУМ(ЗаявкаНаРасходованиеДенежныхСредств.Дата) КАК Дата
+ |ИЗ
+ | Документ.ЗаявкаНаРасходованиеДенежныхСредств КАК ЗаявкаНаРасходованиеДенежныхСредств";
+
+ ВыборкаДаты = ЗапросМаксимальнаяГраница.Выполнить().Выбрать();
+
+ Если ВыборкаДаты.Следующий() Тогда
+ ДатаПоследнейПорции = ВыборкаДаты.Дата;
+ Иначе
+ Возврат;
+ КонецЕсли;
+
ПараметрыВыборки = Параметры.ПараметрыВыборки;
ПараметрыВыборки.ПолныеИменаОбъектов = ПустаяСсылка().Метаданные().ПолноеИмя();
ПараметрыВыборки.СпособВыборки = ОбновлениеИнформационнойБазы.СпособВыборкиСсылки();
@@ -5900,51 +5915,91 @@
Запрос = Новый Запрос;
Запрос.Текст =
- "ВЫБРАТЬ
+ "ВЫБРАТЬ ПЕРВЫЕ 10000
| ЗаявкаНаРасходованиеДенежныхСредств.Ссылка КАК Ссылка,
| ЗаявкаНаРасходованиеДенежныхСредств.ИННПлательщика КАК ИННПлательщика,
| ЗаявкаНаРасходованиеДенежныхСредств.КПППлательщика КАК КПППлательщика,
| ЗаявкаНаРасходованиеДенежныхСредств.ТекстПлательщика КАК ТекстПлательщика,
- | ЗаявкаНаРасходованиеДенежныхСредств.ПеречислениеВБюджет КАК ПеречислениеВБюджет
+ | ЗаявкаНаРасходованиеДенежныхСредств.Дата КАК Дата
|ИЗ
| Документ.ЗаявкаНаРасходованиеДенежныхСредств КАК ЗаявкаНаРасходованиеДенежныхСредств
|ГДЕ
- | ЗаявкаНаРасходованиеДенежныхСредств.ИННПлательщика = """"
- | ИЛИ ЗаявкаНаРасходованиеДенежныхСредств.КПППлательщика = """"
- | ИЛИ ВЫРАЗИТЬ(ЗаявкаНаРасходованиеДенежныхСредств.ТекстПлательщика КАК СТРОКА(1024)) = """"
+ | (ЗаявкаНаРасходованиеДенежныхСредств.ИННПлательщика = """"
+ | ИЛИ ЗаявкаНаРасходованиеДенежныхСредств.КПППлательщика = """"
+ | ИЛИ (ВЫРАЗИТЬ(ЗаявкаНаРасходованиеДенежныхСредств.ТекстПлательщика КАК СТРОКА(1024))) = """")
+ | И ЗаявкаНаРасходованиеДенежныхСредств.Дата <= &ДатаПоследнейПорции
+ | И НЕ ЗаявкаНаРасходованиеДенежныхСредств.Ссылка В (&ИсключаемыеДокументы)
|
|УПОРЯДОЧИТЬ ПО
| ЗаявкаНаРасходованиеДенежныхСредств.Дата УБЫВ";
- ЗарегистрированныеДокументы = Запрос.Выполнить().Выгрузить();
+ РазмерПакета = 10000;
+ ИсключаемыеДокументы = Новый Массив;
- ЗапросДанных = Новый Запрос;
- ЗапросДанных.Текст = ТекстЗапросаРеквизитовПлательщикаСГруппировкойПоДокументам();
- ЗапросДанных.УстановитьПараметр("ПроверяемыеДокументы", ЗарегистрированныеДокументы);
- ВыборкаДанныхПоДокументам = ЗапросДанных.Выполнить().Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);
-
- СписокДокументов = Новый Массив;
-
- Для Каждого ТекущийДокумент Из ЗарегистрированныеДокументы Цикл
+ Пока Истина Цикл
- НайденныеРеквизитыПлательщика = РеквизитыПлательщикаПоДокументу(
- ВыборкаДанныхПоДокументам, ТекущийДокумент.Ссылка, ТекущийДокумент.ПеречислениеВБюджет);
-
- Если ПустаяСтрока(ТекущийДокумент.ИННПлательщика)
- И Не ПустаяСтрока(НайденныеРеквизитыПлательщика.ИННПлательщика) Тогда
- СписокДокументов.Добавить(ТекущийДокумент.Ссылка);
- ИначеЕсли ПустаяСтрока(ТекущийДокумент.КПППлательщика)
- И Не ПустаяСтрока(НайденныеРеквизитыПлательщика.КПППлательщика) Тогда
- СписокДокументов.Добавить(ТекущийДокумент.Ссылка);
- ИначеЕсли ПустаяСтрока(ТекущийДокумент.ТекстПлательщика)
- И Не ПустаяСтрока(НайденныеРеквизитыПлательщика.ТекстПлательщика) Тогда
- СписокДокументов.Добавить(ТекущийДокумент.Ссылка);
+ Запрос.УстановитьПараметр("ДатаПоследнейПорции", ДатаПоследнейПорции);
+ Запрос.УстановитьПараметр("ИсключаемыеДокументы", ИсключаемыеДокументы);
+ ПакетДокументов = Запрос.Выполнить().Выгрузить();
+
+ Если ПакетДокументов.Количество() = 0 Тогда
+ Прервать;
КонецЕсли;
+ ЗапросДанных = Новый Запрос;
+ ЗапросДанных.Текст = ТекстЗапросаРеквизитовПлательщикаСГруппировкойПоДокументам();
+ ЗапросДанных.УстановитьПараметр("ПроверяемыеДокументы", ПакетДокументов);
+ ВыборкаДанныхПоДокументам = ЗапросДанных.Выполнить().Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);
+
+ РеквизитыПлательщикаПоДокументу = РеквизитыПлательщикаПоДокументам(ВыборкаДанныхПоДокументам);
+
+ СписокДокументов = Новый Массив;
+
+ Для Каждого ТекущийДокумент Из ПакетДокументов Цикл
+
+ РеквизитыПлательщика = РеквизитыПлательщикаПоДокументу.Получить(ТекущийДокумент.Ссылка);
+
+ Если РеквизитыПлательщика = Неопределено Тогда
+ Продолжить;
+ КонецЕсли;
+
+ Если ПустаяСтрока(ТекущийДокумент.ИННПлательщика)
+ И Не ПустаяСтрока(РеквизитыПлательщика.ИННПлательщика) Тогда
+ СписокДокументов.Добавить(ТекущийДокумент.Ссылка);
+ ИначеЕсли ПустаяСтрока(ТекущийДокумент.КПППлательщика)
+ И Не ПустаяСтрока(РеквизитыПлательщика.КПППлательщика) Тогда
+ СписокДокументов.Добавить(ТекущийДокумент.Ссылка);
+ ИначеЕсли ПустаяСтрока(ТекущийДокумент.ТекстПлательщика)
+ И Не ПустаяСтрока(РеквизитыПлательщика.ТекстПлательщика) Тогда
+ СписокДокументов.Добавить(ТекущийДокумент.Ссылка);
+ КонецЕсли;
+
+ КонецЦикла;
+
+ ОбновлениеИнформационнойБазы.ОтметитьКОбработке(Параметры, СписокДокументов);
+
+ Если ПакетДокументов.Количество() < РазмерПакета Тогда
+ Прервать;
+ КонецЕсли;
+
+ ПоследняяСтрокаПорции = ПакетДокументов.Получить(ПакетДокументов.Количество() - 1);
+
+ Если ДатаПоследнейПорции <> ПоследняяСтрокаПорции.Дата Тогда
+ ИсключаемыеДокументы = Новый Массив;
+ КонецЕсли;
+
+ ДатаПоследнейПорции = ПоследняяСтрокаПорции.Дата;
+
+ Для Каждого СтрокаПакета Из ПакетДокументов Цикл
+
+ Если СтрокаПакета.Дата = ДатаПоследнейПорции Тогда
+ ИсключаемыеДокументы.Добавить(СтрокаПакета.Ссылка);
+ КонецЕсли;
+
+ КонецЦикла;
+
КонецЦикла;
- ОбновлениеИнформационнойБазы.ОтметитьКОбработке(Параметры, СписокДокументов);
-
//-- Локализация
КонецПроцедуры
@@ -6006,6 +6061,8 @@
ЗапросДанных.УстановитьПараметр("ПроверяемыеДокументы", ОбновляемыеДанные);
ВыборкаПоДокументам = ЗапросДанных.Выполнить().Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);
+ РеквизитыПлательщикаПоДокументу = РеквизитыПлательщикаПоДокументам(ВыборкаПоДокументам);
+
Пока Документ.Следующий() Цикл
ПричинаИсключения = "";
@@ -6033,33 +6090,36 @@
Если ДокументОбъект <> Неопределено Тогда
- РеквизитыПлательщика = РеквизитыПлательщикаПоДокументу(
- ВыборкаПоДокументам, Документ.Ссылка, ДокументОбъект.ПеречислениеВБюджет);
-
- Если ПустаяСтрока(ДокументОбъект.ИННПлательщика)
- И Не ПустаяСтрока(РеквизитыПлательщика.ИННПлательщика) Тогда
- ДокументОбъект.ИННПлательщика = РеквизитыПлательщика.ИННПлательщика;
- КонецЕсли;
+ РеквизитыПлательщика = РеквизитыПлательщикаПоДокументу.Получить(Документ.Ссылка);
+
+ Если РеквизитыПлательщика <> Неопределено Тогда
- Если ПустаяСтрока(ДокументОбъект.КПППлательщика)
- И Не ПустаяСтрока(РеквизитыПлательщика.КПППлательщика) Тогда
-
- ДействуетПриказ58н = ПлатежиВБюджетКлиентСервер.ДействуетПриказ58н_202604(ДокументОбъект.Дата);
-
- Если ДействуетПриказ58н
- И ДокументОбъект.ТипНалога = Справочники.ВидыНалоговВзносов.ЕдиныйНалоговыйПлатеж Тогда
- РеквизитыПлательщика.КПППлательщика = "0";
+ Если ПустаяСтрока(ДокументОбъект.ИННПлательщика)
+ И Не ПустаяСтрока(РеквизитыПлательщика.ИННПлательщика) Тогда
+ ДокументОбъект.ИННПлательщика = РеквизитыПлательщика.ИННПлательщика;
+ КонецЕсли;
+
+ Если ПустаяСтрока(ДокументОбъект.КПППлательщика)
+ И Не ПустаяСтрока(РеквизитыПлательщика.КПППлательщика) Тогда
+
+ ДействуетПриказ58н = ПлатежиВБюджетКлиентСервер.ДействуетПриказ58н_202604(ДокументОбъект.Дата);
+
+ Если ДействуетПриказ58н
+ И ДокументОбъект.ТипНалога = Справочники.ВидыНалоговВзносов.ЕдиныйНалоговыйПлатеж Тогда
+ РеквизитыПлательщика.КПППлательщика = "0";
+ КонецЕсли;
+
+ ДокументОбъект.КПППлательщика = РеквизитыПлательщика.КПППлательщика;
+
КонецЕсли;
- ДокументОбъект.КПППлательщика = РеквизитыПлательщика.КПППлательщика;
+ Если ПустаяСтрока(ДокументОбъект.ТекстПлательщика)
+ И Не ПустаяСтрока(РеквизитыПлательщика.ТекстПлательщика) Тогда
+ ДокументОбъект.ТекстПлательщика = РеквизитыПлательщика.ТекстПлательщика;
+ КонецЕсли;
КонецЕсли;
- Если ПустаяСтрока(ДокументОбъект.ТекстПлательщика)
- И Не ПустаяСтрока(РеквизитыПлательщика.ТекстПлательщика) Тогда
- ДокументОбъект.ТекстПлательщика = РеквизитыПлательщика.ТекстПлательщика;
- КонецЕсли;
-
ПричинаИсключения = "Запись";
Если ДокументОбъект.Модифицированность() Тогда
@@ -6168,6 +6228,7 @@
| ИНАЧЕ ЕСТЬNULL(ОрганизацииИсторияНаименований.Период, ДАТАВРЕМЯ(1, 1, 1))
| КОНЕЦ КАК НачалоДействия,
| ИсходныеДанные.Ссылка КАК Документ,
+ | ИсходныеДанные.ПеречислениеВБюджет КАК ПеречислениеВБюджет,
| 0 КАК Признак
|ПОМЕСТИТЬ ИсторияЗначенийРеквизитов
|ИЗ
@@ -6200,6 +6261,7 @@
| ИНАЧЕ ЕСТЬNULL(РегистрацииВНалоговомОргане.Период, ДАТАВРЕМЯ(1, 1, 1))
| КОНЕЦ,
| ИсходныеДанные.Ссылка,
+ | ИсходныеДанные.ПеречислениеВБюджет КАК ПеречислениеВБюджет,
| 1
|ИЗ
| ИсходныеДанные КАК ИсходныеДанные
@@ -6221,6 +6283,7 @@
| ТекущиеРеквизитыОрганизации.ИНН,
| ИсходныеДанные.Дата,
| ИсходныеДанные.Ссылка,
+ | ИсходныеДанные.ПеречислениеВБюджет КАК ПеречислениеВБюджет,
| 2
|ИЗ
| ИсходныеДанные КАК ИсходныеДанные
@@ -6245,6 +6308,7 @@
|////////////////////////////////////////////////////////////////////////////////
|ВЫБРАТЬ
| ИсторияЗначенийРеквизитов.Документ КАК Документ,
+ | ИсторияЗначенийРеквизитов.ПеречислениеВБюджет КАК ПеречислениеВБюджет,
| ИсторияЗначенийРеквизитов.ЗначениеРеквизита КАК ЗначениеРеквизита,
| ИсторияЗначенийРеквизитов.Признак КАК Признак
|ИЗ
@@ -6258,17 +6322,18 @@
КонецФункции
-Функция РеквизитыПлательщикаПоДокументу(ВыборкаПоДокументам, Документ, ЭтоПеречислениеВБюджет)
+Функция РеквизитыПлательщикаПоДокументам(ВыборкаПоДокументам)
- Отбор = Новый Структура("Документ", Документ);
+ Результат = Новый Соответствие;
- РеквизитыПлательщика = Новый Структура;
- РеквизитыПлательщика.Вставить("ИННПлательщика", "");
- РеквизитыПлательщика.Вставить("КПППлательщика", "");
- РеквизитыПлательщика.Вставить("ТекстПлательщика", "");
- ВыборкаПоДокументам.Сбросить();
-
- Если ВыборкаПоДокументам.НайтиСледующий(Отбор) Тогда
+ Пока ВыборкаПоДокументам.Следующий() Цикл
+
+ ЭтоПеречислениеВБюджет = Ложь;
+
+ РеквизитыПлательщика = Новый Структура;
+ РеквизитыПлательщика.Вставить("ИННПлательщика", "");
+ РеквизитыПлательщика.Вставить("КПППлательщика", "");
+ РеквизитыПлательщика.Вставить("ТекстПлательщика", "");
ДанныеПлательщика = ВыборкаПоДокументам.Выбрать();
@@ -6282,14 +6347,18 @@
РеквизитыПлательщика.ИННПлательщика = ДанныеПлательщика.ЗначениеРеквизита;
КонецЕсли;
+ ЭтоПеречислениеВБюджет = ДанныеПлательщика.ПеречислениеВБюджет;
+
КонецЦикла;
- КонецЕсли;
+ ОбработатьРеквизитПлательщика(РеквизитыПлательщика.КПППлательщика, ЭтоПеречислениеВБюджет);
+ ОбработатьРеквизитПлательщика(РеквизитыПлательщика.ИННПлательщика, ЭтоПеречислениеВБюджет);
- ОбработатьРеквизитПлательщика(РеквизитыПлательщика.КПППлательщика, ЭтоПеречислениеВБюджет);
- ОбработатьРеквизитПлательщика(РеквизитыПлательщика.ИННПлательщика, ЭтоПеречислениеВБюджет);
+ Результат.Вставить(ВыборкаПоДокументам.Документ, РеквизитыПлательщика);
+
+ КонецЦикла;
- Возврат РеквизитыПлательщика;
+ Возврат Результат;
КонецФункции
diff --git a/src/Documents/ИмпортПродукцииСАТУРН/Forms/ФормаДокумента/Ext/Form/Module.bsl b/src/Documents/ИмпортПродукцииСАТУРН/Forms/ФормаДокумента/Ext/Form/Module.bsl
index 1840b446a..5bd08144a 100644
--- a/src/Documents/ИмпортПродукцииСАТУРН/Forms/ФормаДокумента/Ext/Form/Module.bsl
+++ b/src/Documents/ИмпортПродукцииСАТУРН/Forms/ФормаДокумента/Ext/Form/Module.bsl
@@ -863,7 +863,7 @@
Если Объект.Товары.Количество() > 0 И ЗадаватьВопрос Тогда
ТекстВопроса = НСтр("ru = 'Данные документа будут перезаполнены. Продолжить?'");
- ОписаниеОповещенияОЗавершении = Новый ОписаниеОповещения("ВопросОПерезаполнениииПоОснованиюПриЗавершении", ЭтотОбъект);
+ ОписаниеОповещенияОЗавершении = Новый ОписаниеОповещения("ВопросОПерезаполненииПоОснованиюПриЗавершении", ЭтотОбъект);
ПоказатьВопрос(ОписаниеОповещенияОЗавершении, ТекстВопроса, РежимДиалогаВопрос.ДаНет);
Иначе
@@ -875,7 +875,7 @@
КонецПроцедуры
&НаКлиенте
-Процедура ВопросОПерезаполнениииПоОснованиюПриЗавершении(Результат, Параметры) Экспорт
+Процедура ВопросОПерезаполненииПоОснованиюПриЗавершении(Результат, Параметры) Экспорт
Если Результат = КодВозвратаДиалога.Да Тогда
diff --git a/src/Documents/ИнвентаризацияПродукцииВЕТИС/Ext/ManagerModule.bsl b/src/Documents/ИнвентаризацияПродукцииВЕТИС/Ext/ManagerModule.bsl
index 1b64ede59..97366715c 100644
--- a/src/Documents/ИнвентаризацияПродукцииВЕТИС/Ext/ManagerModule.bsl
+++ b/src/Documents/ИнвентаризацияПродукцииВЕТИС/Ext/ManagerModule.bsl
@@ -423,7 +423,7 @@
// Возвращает массив дальнейших действий с документом, требующих участия пользователя
//
// Возвращаемое значение:
-// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюВЕТИС - дальшейшие действия
+// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюВЕТИС - дальнейшие действия
//
Функция ВсеТребующиеДействия() Экспорт
@@ -441,7 +441,7 @@
// Возвращает массив дальнейших действий с документом, требующих ожидания выполнения регламентной операции
//
// Возвращаемое значение:
-// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюВЕТИС - дальшейшие действия
+// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюВЕТИС - дальнейшие действия
//
Функция ВсеТребующиеОжидания() Экспорт
diff --git a/src/Documents/ИнвентаризацияПродукцииВЕТИС/Forms/ФормаДокумента/Ext/Form/Module.bsl b/src/Documents/ИнвентаризацияПродукцииВЕТИС/Forms/ФормаДокумента/Ext/Form/Module.bsl
index b9ea2d9d0..b54df1854 100644
--- a/src/Documents/ИнвентаризацияПродукцииВЕТИС/Forms/ФормаДокумента/Ext/Form/Module.bsl
+++ b/src/Documents/ИнвентаризацияПродукцииВЕТИС/Forms/ФормаДокумента/Ext/Form/Module.bsl
@@ -3611,7 +3611,7 @@
#КонецОбласти
&НаКлиенте
-Процедура ВопросОПерезаполнениииПоОснованиюПриЗавершении(Результат, Параметры) Экспорт
+Процедура ВопросОПерезаполненииПоОснованиюПриЗавершении(Результат, Параметры) Экспорт
Если Результат = КодВозвратаДиалога.Да Тогда
@@ -3738,7 +3738,7 @@
Если Объект.Товары.Количество() > 0 Тогда
ТекстВопроса = НСтр("ru = 'Данные документа будут перезаполнены. Продолжить?'");
- ОписаниеОповещенияОЗавершении = Новый ОписаниеОповещения("ВопросОПерезаполнениииПоОснованиюПриЗавершении", ЭтотОбъект);
+ ОписаниеОповещенияОЗавершении = Новый ОписаниеОповещения("ВопросОПерезаполненииПоОснованиюПриЗавершении", ЭтотОбъект);
ПоказатьВопрос(ОписаниеОповещенияОЗавершении, ТекстВопроса, РежимДиалогаВопрос.ДаНет);
Иначе
diff --git a/src/Documents/ИсходящаяТранспортнаяОперацияВЕТИС/Ext/ManagerModule.bsl b/src/Documents/ИсходящаяТранспортнаяОперацияВЕТИС/Ext/ManagerModule.bsl
index cefd1a176..3593ff766 100644
--- a/src/Documents/ИсходящаяТранспортнаяОперацияВЕТИС/Ext/ManagerModule.bsl
+++ b/src/Documents/ИсходящаяТранспортнаяОперацияВЕТИС/Ext/ManagerModule.bsl
@@ -755,7 +755,7 @@
// Возвращает массив дальнейших действий с документом, требующих участия пользователя
//
// Возвращаемое значение:
-// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюВЕТИС - дальшейшие действия
+// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюВЕТИС - дальнейшие действия
//
Функция ВсеТребующиеДействия() Экспорт
@@ -775,7 +775,7 @@
// Возвращает массив дальнейших действий с документом, требующих ожидания регламентной операции
//
// Возвращаемое значение:
-// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюВЕТИС - дальшейшие действия
+// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюВЕТИС - дальнейшие действия
//
Функция ВсеТребующиеОжидания() Экспорт
diff --git a/src/Documents/КорректировкаПриобретения/Ext/ManagerModule.bsl b/src/Documents/КорректировкаПриобретения/Ext/ManagerModule.bsl
index 240ce586d..1d691dbfc 100644
--- a/src/Documents/КорректировкаПриобретения/Ext/ManagerModule.bsl
+++ b/src/Documents/КорректировкаПриобретения/Ext/ManagerModule.bsl
@@ -9950,7 +9950,11 @@
| ТаблицаТовары.Серия КАК Серия,
| ТаблицаТовары.СтатусУказанияСерий КАК СтатусУказанияСерий,
| ТаблицаТовары.Содержание КАК Содержание,
- | ТаблицаТовары.Упаковка КАК Упаковка,
+ | ВЫБОР
+ | КОГДА ТаблицаТовары.Упаковка = ТаблицаТовары.Номенклатура.ЕдиницаИзмерения
+ | ТОГДА ЗНАЧЕНИЕ(Справочник.УпаковкиЕдиницыИзмерения.ПустаяСсылка)
+ | ИНАЧЕ ТаблицаТовары.Упаковка
+ | КОНЕЦ КАК Упаковка,
| ВЫБОР
| КОГДА ТаблицаТовары.КоличествоУпаковок = 0
| ТОГДА ТаблицаТовары.Количество
@@ -10016,7 +10020,11 @@
| ИНАЧЕ 0
| КОНЕЦ КАК СтатусУказанияСерий,
| """" КАК Содержание,
- | ТаблицаТовары.Упаковка КАК Упаковка,
+ | ВЫБОР
+ | КОГДА ТаблицаТовары.Упаковка = ТаблицаТовары.Номенклатура.ЕдиницаИзмерения
+ | ТОГДА ЗНАЧЕНИЕ(Справочник.УпаковкиЕдиницыИзмерения.ПустаяСсылка)
+ | ИНАЧЕ ТаблицаТовары.Упаковка
+ | КОНЕЦ КАК Упаковка,
| ТаблицаТовары.КоличествоУпаковок КАК КоличествоУпаковок,
| ТаблицаТовары.Количество КАК Количество,
| ТаблицаТовары.КоличествоПоРНПТ КАК КоличествоПоРНПТ,
diff --git a/src/Documents/КорректировкаПриобретения/Ext/ObjectModule.bsl b/src/Documents/КорректировкаПриобретения/Ext/ObjectModule.bsl
index f7f9d0b92..67e3d6a5d 100644
--- a/src/Documents/КорректировкаПриобретения/Ext/ObjectModule.bsl
+++ b/src/Documents/КорректировкаПриобретения/Ext/ObjectModule.bsl
@@ -2904,7 +2904,11 @@
| НовыеДанныеИзТаблицы.Назначение,
| НовыеДанныеИзТаблицы.Серия,
| НовыеДанныеИзТаблицы.Содержание,
- | НовыеДанныеИзТаблицы.Упаковка,
+ | ВЫБОР
+ | КОГДА НовыеДанныеИзТаблицы.Упаковка = НовыеДанныеИзТаблицы.Номенклатура.ЕдиницаИзмерения
+ | ТОГДА ЗНАЧЕНИЕ(Справочник.УпаковкиЕдиницыИзмерения.ПустаяСсылка)
+ | ИНАЧЕ НовыеДанныеИзТаблицы.Упаковка
+ | КОНЕЦ КАК Упаковка,
| НовыеДанныеИзТаблицы.ЗаказПоставщику,
| НовыеДанныеИзТаблицы.Склад,
| НовыеДанныеИзТаблицы.Сделка,
@@ -2937,7 +2941,11 @@
| НовыеДанныеИзТаблицы.Назначение,
| НовыеДанныеИзТаблицы.Серия,
| НовыеДанныеИзТаблицы.Содержание,
- | НовыеДанныеИзТаблицы.Упаковка,
+ | ВЫБОР
+ | КОГДА НовыеДанныеИзТаблицы.Упаковка = НовыеДанныеИзТаблицы.Номенклатура.ЕдиницаИзмерения
+ | ТОГДА ЗНАЧЕНИЕ(Справочник.УпаковкиЕдиницыИзмерения.ПустаяСсылка)
+ | ИНАЧЕ НовыеДанныеИзТаблицы.Упаковка
+ | КОНЕЦ,
| НовыеДанныеИзТаблицы.ЗаказПоставщику,
| НовыеДанныеИзТаблицы.Склад,
| НовыеДанныеИзТаблицы.Сделка,
diff --git a/src/Documents/КорректировкаРасчетовСПодотчетнымиЛицами.xml b/src/Documents/КорректировкаРасчетовСПодотчетнымиЛицами.xml
index fcc066a40..26eef4d43 100644
--- a/src/Documents/КорректировкаРасчетовСПодотчетнымиЛицами.xml
+++ b/src/Documents/КорректировкаРасчетовСПодотчетнымиЛицами.xml
@@ -232,6 +232,7 @@
AutoFill
AccumulationRegister.ДенежныеСредстваУПодотчетныхЛиц
+ AccumulationRegister.УдалитьПрочиеДоходы
InformationRegister.ИсправленияДокументов
AccumulationRegister.ПрочиеРасходы
InformationRegister.СуммыДокументовВВалютахУчета
diff --git a/src/Documents/КорректировкаРеализации/Ext/ObjectModule.bsl b/src/Documents/КорректировкаРеализации/Ext/ObjectModule.bsl
index 0f700ae13..fe113f70a 100644
--- a/src/Documents/КорректировкаРеализации/Ext/ObjectModule.bsl
+++ b/src/Documents/КорректировкаРеализации/Ext/ObjectModule.bsl
@@ -1497,6 +1497,9 @@
Если ТипКорректировки = Перечисления.ТипыКорректировки.КорректировкаДоВводаОстатковУслугИПрочихАктивов
Или ТипЗнч(ДокументОснование) = Тип("ДокументСсылка.РеализацияУслугПрочихАктивов") Тогда
+ ВидыЗапасовКорректировкаВыручки.Очистить();
+ ВидыЗапасовОприходование.Очистить();
+ ВидыЗапасовСписание.Очистить();
Возврат;
КонецЕсли;
@@ -1778,18 +1781,9 @@
СтрокаТоваров.СуммаНДСУпр = -СтрокаРасхождений.СуммаНДСУпр;
КонецЕсли;
- Если КорректировкаРеализации2_5 Тогда
- Если НачалоГода(Дата) = НачалоГода(ОбщегоНазначения.ЗначениеРеквизитаОбъекта(ДокументОснование, "Дата")) Тогда
- СтрокаТоваров.НаДоходыРасходы = Ложь;
- Иначе
- СтрокаТоваров.НаДоходыРасходы = ОтразитьВПрибылиУбыткахПрошлыхЛет
- И КорректироватьНалоговуюБазуПрошлогоПериода;
- КонецЕсли;
- Иначе
- СтрокаТоваров.НаДоходыРасходы =
- СтрокаРасхождений.ВариантОтражения = Перечисления.ВариантыОтраженияКорректировокРеализаций.СписатьНаРасходы
- Или СтрокаРасхождений.ВариантОтражения = Перечисления.ВариантыОтраженияКорректировокРеализаций.ОтразитьНаПрочихДоходах;
- КонецЕсли;
+ СтрокаТоваров.НаДоходыРасходы =
+ СтрокаРасхождений.ВариантОтражения = Перечисления.ВариантыОтраженияКорректировокРеализаций.СписатьНаРасходы
+ Или СтрокаРасхождений.ВариантОтражения = Перечисления.ВариантыОтраженияКорректировокРеализаций.ОтразитьНаПрочихДоходах;
СтрокаТоваров.АналитикаУчетаНаборов = СтрокаРасхождений.АналитикаУчетаНаборов;
КонецЕсли;
@@ -2005,18 +1999,9 @@
СтрокаТоваров.ВидЗапасов = СтрокаЗапасы.ВидЗапасов;
- Если КорректировкаРеализации2_5 Тогда
- Если НачалоГода(Дата) = НачалоГода(ОбщегоНазначения.ЗначениеРеквизитаОбъекта(ДокументОснование, "Дата")) Тогда
- СтрокаТоваров.НаДоходыРасходы = Ложь;
- Иначе
- СтрокаТоваров.НаДоходыРасходы = ОтразитьВПрибылиУбыткахПрошлыхЛет
- И КорректироватьНалоговуюБазуПрошлогоПериода;
- КонецЕсли;
- Иначе
- СтрокаТоваров.НаДоходыРасходы =
- СтрокаРасхождений.ВариантОтражения = Перечисления.ВариантыОтраженияКорректировокРеализаций.СписатьНаРасходы
- Или СтрокаРасхождений.ВариантОтражения = Перечисления.ВариантыОтраженияКорректировокРеализаций.ОтразитьНаПрочихДоходах;
- КонецЕсли;
+ СтрокаТоваров.НаДоходыРасходы =
+ СтрокаРасхождений.ВариантОтражения = Перечисления.ВариантыОтраженияКорректировокРеализаций.СписатьНаРасходы
+ Или СтрокаРасхождений.ВариантОтражения = Перечисления.ВариантыОтраженияКорректировокРеализаций.ОтразитьНаПрочихДоходах;
КонецЦикла;
ИменаКолонокГруппировки = ИменаКолонокГруппировки + ", " + "ВидЗапасов, НаДоходыРасходы";
diff --git a/src/Documents/МаркировкаТоваровИСМП/Ext/ManagerModule.bsl b/src/Documents/МаркировкаТоваровИСМП/Ext/ManagerModule.bsl
index 112030d27..750321887 100644
--- a/src/Documents/МаркировкаТоваровИСМП/Ext/ManagerModule.bsl
+++ b/src/Documents/МаркировкаТоваровИСМП/Ext/ManagerModule.bsl
@@ -1497,7 +1497,7 @@
// Параметры:
// ПараметрыЗаполнения - Структура - структура, содержащая следующие ключи:
// ДанныеОтчета - ТаблицаЗначений - Данные объекта ДанныеОтчетаПроизводственнойЛинии;
-// РежимОбработки - ПеречислениеСсылка.ВариантыИсправленияОшибокОтчетПроизодственнойЛинииИС - вариант удаления строк в дереве упаковок.
+// РежимОбработки - ПеречислениеСсылка.ВариантыИсправленияОшибокОтчетПроизводственнойЛинииИС - вариант удаления строк в дереве упаковок.
// ВыделенныеСтроки - Массив - данные выделенных строк отчета (структура "Штрихкод, ШтрихкодУпаковки").
// АдресРезультата - Строка - адрес временного хранилища, в которое будут помещены результаты выполнения.
Процедура ПодготовитьДанныеЗаполненияОтчетПроизводственноЛинии(ПараметрыЗаполнения, АдресРезультата) Экспорт
@@ -1543,9 +1543,9 @@
КонецЦикла;
УдалитьВложенныеСтроки = Ложь;
- Если РежимОбработки = Перечисления.ВариантыИсправленияОшибокОтчетПроизодственнойЛинииИС.РасформироватьАгрегат Тогда
+ Если РежимОбработки = Перечисления.ВариантыИсправленияОшибокОтчетПроизводственнойЛинииИС.РасформироватьАгрегат Тогда
УдалитьВложенныеСтроки = Ложь;
- ИначеЕсли РежимОбработки = Перечисления.ВариантыИсправленияОшибокОтчетПроизодственнойЛинииИС.УдалятьАгрегат Тогда
+ ИначеЕсли РежимОбработки = Перечисления.ВариантыИсправленияОшибокОтчетПроизводственнойЛинииИС.УдалятьАгрегат Тогда
УдалитьВложенныеСтроки = Истина;
КонецЕсли;
@@ -1589,7 +1589,7 @@
// Возвращает массив дальнейших действий с документом, требующих участия пользователя
//
// Возвращаемое значение:
-// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюИСМП - дальшейшие действия
+// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюИСМП - дальнейшие действия
Функция ВсеТребующиеДействия() Экспорт
МассивДействий = Новый Массив;
@@ -1616,7 +1616,7 @@
// Возвращает массив дальнейших действий с документом, требующих ожидания пользователем
//
// Возвращаемое значение:
-// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюИСМП - дальшейшие действия
+// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюИСМП - дальнейшие действия
Функция ВсеТребующиеОжидания() Экспорт
МассивДействий = Новый Массив;
@@ -1996,7 +1996,7 @@
КонецПроцедуры
-// Обработка данных перехода на конструктор настроек видов продуции
+// Обработка данных перехода на конструктор настроек видов продукции
//
// Параметры:
// Параметры - см. ОбновлениеИнформационнойБазы.ОсновныеПараметрыОтметкиКОбработке
@@ -3148,6 +3148,8 @@
ВОтчетеОНанесенииИспользоватьОбъем = МаркировкаТоваровКлиентСервер.ВОтчетеОНанесенииИспользоватьОбъем(СообщениеJSON.ТоварнаяГруппа);
ВОтчетеОНанесенииИспользоватьВес = МаркировкаТоваровКлиентСервер.ВОтчетеОНанесенииИспользоватьВес(СообщениеJSON.ТоварнаяГруппа);
+ КоличествоЕдиницИспользование = КоличествоЕдиницИспользованиеПоТоварнойГруппе(СообщениеJSON.ТоварнаяГруппа);
+
Для Каждого СтрокаКодМаркировки Из ПолныеКодыМаркировки Цикл
Если ТекущийИдентификаторПроисхожденияВЕТИС <> СтрокаКодМаркировки.ИдентификаторПроисхожденияВЕТИС
@@ -3206,7 +3208,9 @@
ПолныйКодМаркировки = ШтрихкодированиеОбщегоНазначенияИСКлиентСервер.Base64ВШтрихкод(СтрокаКодМаркировки.ПолныйКодМаркировки);
Если ЗначениеЗаполнено(СтрокаКодМаркировки.Количество) Тогда
- Если Лев(Прав(ПолныйКодМаркировки, 6), 2) = "93"
+ Если КоличествоЕдиницИспользование Тогда
+ ПолныйКодМаркировки = ПолныйКодМаркировки + РазделительGS + КоличествоЕдиницКодаМаркировкиСтрокой(СтрокаКодМаркировки.Количество);
+ ИначеЕсли Лев(Прав(ПолныйКодМаркировки, 6), 2) = "93"
Или Лев(Прав(ПолныйКодМаркировки, 46), 2) = "92" Тогда
Если ВОтчетеОНанесенииИспользоватьОбъем Тогда
ПолныйКодМаркировки = ПолныйКодМаркировки + РазделительGS + РазборКодаМаркировкиИССлужебныйКлиентСервер.ОбъемКодаМаркировкиСтрокой(СтрокаКодМаркировки.Количество);
@@ -5093,6 +5097,16 @@
ДанныеПродукции = ИнтеграцияИСВызовСервера.КоэффициентВесОбъемУпаковок(НоменклатураДокумента);
КонецЕсли;
+ КоличествоЕдиницИспользование = КоличествоЕдиницИспользованиеПоТоварнойГруппе(Шапка.ТоварнаяГруппа);
+ Если КоличествоЕдиницИспользование Тогда
+ КоличествоЕдиницДанные = КоличествоЕдиницПолучитьДанные(Шапка.Ссылка);
+ Если КоличествоЕдиницДанные = Неопределено Тогда
+ КоличествоЕдиницИспользование = Ложь;
+ Иначе
+ КоличествоЕдиницКэш = Новый Соответствие;
+ КонецЕсли;
+ КонецЕсли;
+
ПолныеКодыМаркировки = ИнициализироватьПолныеКодыМаркировки();
КодыМаркировки = ШтрихкодированиеИСМП.НоваяТаблицаПоискаКодаМаркировкиВПуле(ВидыПродукцииПоТоварнойГруппе);
@@ -5128,7 +5142,34 @@
Если ТребуетсяПередатьКодМаркировки Тогда
- Если МаркировкаТоваровКлиентСервер.ВОтчетеОНанесенииИспользоватьОбъем(ВидыПродукцииПоТоварнойГруппе) Тогда
+ Если КоличествоЕдиницИспользование Тогда
+
+ КэшНоменклатура = КоличествоЕдиницКэш[СтрокаТЧМаркированныеТовары.Номенклатура];
+ Если КэшНоменклатура = Неопределено Тогда
+ КоличествоЕдиницКэш.Вставить(СтрокаТЧМаркированныеТовары.Номенклатура, Новый Соответствие);
+ КэшНоменклатура = КоличествоЕдиницКэш[СтрокаТЧМаркированныеТовары.Номенклатура];
+ КонецЕсли;
+
+ КоличествоЕдиниц = КэшНоменклатура[СтрокаТЧМаркированныеТовары.Характеристика];
+ Если КоличествоЕдиниц = Неопределено Тогда
+ СтруктураПоиска = Новый Структура;
+ СтруктураПоиска.Вставить("Номенклатура", СтрокаТЧМаркированныеТовары.Номенклатура);
+ СтруктураПоиска.Вставить("Характеристика", СтрокаТЧМаркированныеТовары.Характеристика);
+ НайденныеСтроки = КоличествоЕдиницДанные.НайтиСтроки(СтруктураПоиска);
+ Если НайденныеСтроки.Количество() = 0 Тогда
+ КоличествоЕдиниц = 0;
+ Иначе
+ КоличествоЕдиниц = НайденныеСтроки[0].КоличествоЕдиниц;
+ КонецЕсли;
+ КэшНоменклатура.Вставить(СтрокаТЧМаркированныеТовары.Характеристика, КоличествоЕдиниц);
+ КонецЕсли;
+
+ Если КоличествоЕдиниц > 0 Тогда
+ СтрокаТЧМаркированныеТовары.ТребуетВзвешивания = Истина;
+ СтрокаТЧМаркированныеТовары.Количество = КоличествоЕдиниц;
+ КонецЕсли;
+
+ ИначеЕсли МаркировкаТоваровКлиентСервер.ВОтчетеОНанесенииИспользоватьОбъем(ВидыПродукцииПоТоварнойГруппе) Тогда
Если КонструкторИСМПОбщегоНазначенияКлиентСервер.ЭтоВидПродукцииИСМПЕГАИС(ВидыПродукцииПоТоварнойГруппе) Тогда
ОбъемЕГАИС = ОбъемАлкогольнойПродукции[СтрокаТЧМаркированныеТовары.Номенклатура];
@@ -5216,6 +5257,16 @@
СоответствиеGTIN.Вставить(СтрокаТЧМаркированныеТовары.GTIN, ДанныеGTIN);
КонецЕсли;
+ Если ДоступноПолеСодержаниеЭтиловогоСпирта
+ И СтрокаРодитель <> Неопределено
+ И СтрокаРодитель.ВидУпаковки = Перечисления.ВидыУпаковокИС.Групповая
+ И СоответствиеGTIN[СтрокаРодитель.GTIN] = Неопределено Тогда
+ ДанныеGTIN = Новый Структура;
+ ДанныеGTIN.Вставить("Номенклатура", СтрокаТЧМаркированныеТовары.Номенклатура);
+ ДанныеGTIN.Вставить("Характеристика", СтрокаТЧМаркированныеТовары.Характеристика);
+ СоответствиеGTIN.Вставить(СтрокаРодитель.GTIN, ДанныеGTIN);
+ КонецЕсли;
+
КонецЦикла;
Если Не Повторно
@@ -8002,6 +8053,55 @@
#КонецОбласти
+Функция КоличествоЕдиницИспользованиеПоТоварнойГруппе(ТоварнаяГруппа) Экспорт
+
+ Возврат ОбщегоНазначения.ЗначениеРеквизитаОбъекта(ТоварнаяГруппа, "Имя") = "radio";
+
+КонецФункции
+
+Функция КоличествоЕдиницПолучитьДанные(Документ)
+
+ Файл = КоличествоЕдиницПолучитьФайл(Документ);
+
+ Если Файл <> Неопределено Тогда
+ ТекстСообщенияXML = ПротоколОбменаИС.ТекстСообщенияXMLИзПротокола(Файл);
+ Данные = ОбщегоНазначения.ЗначениеИзСтрокиXML(ТекстСообщенияXML);
+ Если ТипЗнч(Данные) = Тип("ТаблицаЗначений")
+ И Данные.Количество() > 0 Тогда
+ Возврат Данные;
+ КонецЕсли;
+ КонецЕсли;
+
+ Возврат Неопределено;
+
+КонецФункции
+
+Функция КоличествоЕдиницПолучитьФайл(Документ) Экспорт
+
+ Запрос = Новый Запрос;
+ Запрос.УстановитьПараметр("Документ", Документ);
+ Запрос.Текст =
+ "ВЫБРАТЬ ПЕРВЫЕ 1
+ | Файл.Ссылка КАК Ссылка
+ |ИЗ
+ | Справочник.ИСМППрисоединенныеФайлы КАК Файл
+ |ГДЕ
+ | Файл.ВладелецФайла = &Документ
+ | И Файл.Наименование = ""ДанныеВложенныхЕдиниц""";
+
+ Выборка = Запрос.Выполнить().Выбрать();
+ Если Выборка.Следующий() Тогда
+ Возврат Выборка.Ссылка;
+ КонецЕсли;
+
+ Возврат Неопределено;
+
+КонецФункции
+
+Функция КоличествоЕдиницКодаМаркировкиСтрокой(Количество) Экспорт
+ Возврат "30" + Формат(Количество, "ЧГ=0;");
+КонецФункции
+
#КонецОбласти
#КонецЕсли
diff --git a/src/Documents/МаркировкаТоваровИСМП/Forms/РежимИсправленияОшибок/Ext/Form.xml b/src/Documents/МаркировкаТоваровИСМП/Forms/РежимИсправленияОшибок/Ext/Form.xml
index e347a0e4a..dbeb68314 100644
--- a/src/Documents/МаркировкаТоваровИСМП/Forms/РежимИсправленияОшибок/Ext/Form.xml
+++ b/src/Documents/МаркировкаТоваровИСМП/Forms/РежимИсправленияОшибок/Ext/Form.xml
@@ -45,7 +45,7 @@
Расформировать агрегат, содержащий коды с ошибками
- Enum.ВариантыИсправленияОшибокОтчетПроизодственнойЛинииИС.EnumValue.РасформироватьАгрегат
+ Enum.ВариантыИсправленияОшибокОтчетПроизводственнойЛинииИС.EnumValue.РасформироватьАгрегат
@@ -117,7 +117,7 @@
Удалить агрегат, содержащий коды с ошибками
- Enum.ВариантыИсправленияОшибокОтчетПроизодственнойЛинииИС.EnumValue.УдалятьАгрегат
+ Enum.ВариантыИсправленияОшибокОтчетПроизводственнойЛинииИС.EnumValue.УдалятьАгрегат
@@ -189,7 +189,7 @@
Удалить строку с ошибкой
- Enum.ВариантыИсправленияОшибокОтчетПроизодственнойЛинииИС.EnumValue.УдалятьСтрокуОтчета
+ Enum.ВариантыИсправленияОшибокОтчетПроизводственнойЛинииИС.EnumValue.УдалятьСтрокуОтчета
@@ -258,7 +258,7 @@
- cfg:EnumRef.ВариантыИсправленияОшибокОтчетПроизодственнойЛинииИС
+ cfg:EnumRef.ВариантыИсправленияОшибокОтчетПроизводственнойЛинииИС
@@ -285,7 +285,7 @@
- cfg:EnumRef.ВариантыИсправленияОшибокОтчетПроизодственнойЛинииИС
+ cfg:EnumRef.ВариантыИсправленияОшибокОтчетПроизводственнойЛинииИС
diff --git a/src/Documents/МаркировкаТоваровИСМП/Forms/РежимИсправленияОшибок/Ext/Form/Module.bsl b/src/Documents/МаркировкаТоваровИСМП/Forms/РежимИсправленияОшибок/Ext/Form/Module.bsl
index 1f1fb62c2..65f84e458 100644
--- a/src/Documents/МаркировкаТоваровИСМП/Forms/РежимИсправленияОшибок/Ext/Form/Module.bsl
+++ b/src/Documents/МаркировкаТоваровИСМП/Forms/РежимИсправленияОшибок/Ext/Form/Module.bsl
@@ -8,7 +8,7 @@
КонецЕсли;
РежимИсправления = Параметры.РежимИсправления;
-
+
ОбщегоНазначенияСобытияФормИСПереопределяемый.ПриСозданииНаСервере(ЭтотОбъект, Отказ, СтандартнаяОбработка);
КонецПроцедуры
diff --git a/src/Documents/МаркировкаТоваровИСМП/Forms/ФормаДокумента/Ext/Form.xml b/src/Documents/МаркировкаТоваровИСМП/Forms/ФормаДокумента/Ext/Form.xml
index 6e61f8ec3..a9599a0ff 100644
--- a/src/Documents/МаркировкаТоваровИСМП/Forms/ФормаДокумента/Ext/Form.xml
+++ b/src/Documents/МаркировкаТоваровИСМП/Forms/ФормаДокумента/Ext/Form.xml
@@ -3561,7 +3561,7 @@
- cfg:EnumRef.ВариантыИсправленияОшибокОтчетПроизодственнойЛинииИС
+ cfg:EnumRef.ВариантыИсправленияОшибокОтчетПроизводственнойЛинииИС
diff --git a/src/Documents/МаркировкаТоваровИСМП/Forms/ФормаДокумента/Ext/Form/Module.bsl b/src/Documents/МаркировкаТоваровИСМП/Forms/ФормаДокумента/Ext/Form/Module.bsl
index 0725140b4..3bc3ac87f 100644
--- a/src/Documents/МаркировкаТоваровИСМП/Forms/ФормаДокумента/Ext/Form/Module.bsl
+++ b/src/Documents/МаркировкаТоваровИСМП/Forms/ФормаДокумента/Ext/Form/Module.bsl
@@ -1,7 +1,7 @@
#Область ОписаниеПеременных
&НаКлиенте
-Перем КэшированныеЗначения; //используется механизмом обработки изменения реквизитов ТЧ
+Перем КэшированныеЗначения; // используется механизмом обработки изменения реквизитов ТЧ
#КонецОбласти
@@ -166,7 +166,7 @@
Или РедактированиеФормыНедоступно
Или Не ПравоИзменения
Или Объект.ОтчетПроизводственнойЛинии
- Или РедактированиеНедоступноПоСтатусуПроверкиИподбора(ЭтотОбъект) Тогда
+ Или РедактированиеНедоступноПоСтатусуПроверкиИПодбора(ЭтотОбъект) Тогда
Возврат;
КонецЕсли;
@@ -189,12 +189,14 @@
// Запись документа при смене операции / организации / вида продукции (с очисткой штрихкодов)
Если Не Отказ Тогда
- Если СтатусПроверкиИПодбора <> РегистрыСведений.СтатусыПроверкиИПодбораИС.ТекущийСтатус(ТекущийОбъект.Ссылка, 0)Тогда
+ Если СтатусПроверкиИПодбора <> РегистрыСведений.СтатусыПроверкиИПодбораИС.ТекущийСтатус(ТекущийОбъект.Ссылка, 0) Тогда
РегистрыСведений.СтатусыПроверкиИПодбораДокументовИС.ОчиститьРезультатыПроверкиДокумента(ТекущийОбъект.Ссылка);
КонецЕсли;
ОбновитьЗаписатьПараметрыОбновленияСтатуса(Отказ, ТекущийОбъект);
+ КоличествоЕдиницЗаписать(ТекущийОбъект.Ссылка);
+
КонецЕсли;
КонецПроцедуры
@@ -213,6 +215,8 @@
ИнтеграцияИСПереопределяемый.ЗаполнитьСлужебныеРеквизитыВКоллекции(ЭтотОбъект, Объект.Товары);
+ КоличествоЕдиницЗаполнить();
+
ЗаполнитьПредставлениеСертификацииЛицензииНаНедра();
ЗаполнитьПредставлениеТаможеннойДекларации();
ЗаполнитьПредставлениеПервичногоДокумента();
@@ -526,7 +530,7 @@
НанесениеКодов.Найти(Объект.Операция) <> Неопределено
И Объект.ОтчетПроизводственнойЛинии
И Не КонструкторИСОбщегоНазначенияКлиентСервер.ЭтоПродукцияМОТП(ВидыПродукцииПоТоварнойГруппе));
- Действия.Вставить("ОчиститьВариантВыполенияАгрегации", ОчиститьВариантВыполненияАгрегации);
+ Действия.Вставить("ОчиститьВариантВыполненияАгрегации", ОчиститьВариантВыполненияАгрегации);
Действия.Вставить("ИзменениеДальнейшегоДействия",
ЭтоСменаНанесениеКодов
Или ЭтоСменаАгрегации
@@ -1167,7 +1171,7 @@
Если РедактированиеФормыНедоступно
Или Не ПравоИзменения
- Или РедактированиеНедоступноПоСтатусуПроверкиИподбора(ЭтотОбъект) Тогда
+ Или РедактированиеНедоступноПоСтатусуПроверкиИПодбора(ЭтотОбъект) Тогда
СобытияФормИСМПКлиент.ВыборЭлементаТабличнойЧастиОткрытьФормуЭлемента(ЭтотОбъект, Элемент, Поле);
КонецЕсли;
@@ -1725,7 +1729,7 @@
Иначе
ПослеИзмененияРежимУдаленияСтрокиОтчета(
- ПредопределенноеЗначение("Перечисление.ВариантыИсправленияОшибокОтчетПроизодственнойЛинииИС.УдалятьСтрокуОтчета"),
+ ПредопределенноеЗначение("Перечисление.ВариантыИсправленияОшибокОтчетПроизводственнойЛинииИС.УдалятьСтрокуОтчета"),
ДополнительныеПараметры);
КонецЕсли;
@@ -2892,6 +2896,8 @@
КонецЕсли;
КонецЕсли;
+ КоличествоЕдиницДобавитьРеквизит();
+
ИнтеграцияИСМП.НастроитьВидимостьКолонкиКоличестваКодовМаркировки(ЭтотОбъект);
ШтрихкодированиеОбщегоНазначенияИС.ВосстановитьНастройкиВыбораМаркируемойПродукции(ЭтотОбъект, Объект.Ссылка);
@@ -3577,7 +3583,7 @@
ОбщегоНазначенияИСКлиентСервер.УстановитьДоступностьЭлементовФормы(Форма,
ЗависимыеОтСтатусаПроверкиИПодбора,
- Не (Форма.РедактированиеФормыНеДоступно Или РедактированиеНедоступноПоСтатусуПроверкиИподбора(Форма))
+ Не (Форма.РедактированиеФормыНеДоступно Или РедактированиеНедоступноПоСтатусуПроверкиИПодбора(Форма))
И Не Форма.РежимИсправленияОшибокПослеПередачиКодов);
Элементы.ТоварыСтатусПроверкиГосИС.Видимость = Не Форма.РедактированиеФормыНеДоступно;
@@ -3596,7 +3602,7 @@
КонецПроцедуры
&НаКлиентеНаСервереБезКонтекста
-Функция РедактированиеНедоступноПоСтатусуПроверкиИподбора(Форма)
+Функция РедактированиеНедоступноПоСтатусуПроверкиИПодбора(Форма)
Если Форма.СтатусПроверкиИПодбора = ПредопределенноеЗначение("Перечисление.СтатусыПроверкиИПодбораИС.Выполняется")
Или Форма.СтатусПроверкиИПодбора = ПредопределенноеЗначение("Перечисление.СтатусыПроверкиИПодбораИС.Завершено") Тогда
@@ -4046,7 +4052,7 @@
КонецЕсли;
Если Не ЗначениеЗаполнено(РежимУдаленияСтрокиОтчета) Тогда
- РежимУдаленияСтрокиОтчета = ПредопределенноеЗначение("Перечисление.ВариантыИсправленияОшибокОтчетПроизодственнойЛинииИС.РасформироватьАгрегат");
+ РежимУдаленияСтрокиОтчета = ПредопределенноеЗначение("Перечисление.ВариантыИсправленияОшибокОтчетПроизводственнойЛинииИС.РасформироватьАгрегат");
КонецЕсли;
ДанныеОтчетаЗагруженыВРегистр = Ложь;
@@ -4924,7 +4930,7 @@
Если Объект.Товары.Количество() > 0 И ЗадаватьВопрос Тогда
ТекстВопроса = НСтр("ru = 'Данные документа будут перезаполнены. Продолжить?'");
- ОписаниеОповещенияОЗавершении = Новый ОписаниеОповещения("ВопросОПерезаполнениииПоОснованиюПриЗавершении", ЭтотОбъект);
+ ОписаниеОповещенияОЗавершении = Новый ОписаниеОповещения("ВопросОПерезаполненииПоОснованиюПриЗавершении", ЭтотОбъект);
ПоказатьВопрос(ОписаниеОповещенияОЗавершении, ТекстВопроса, РежимДиалогаВопрос.ДаНет);
Иначе
@@ -4936,7 +4942,7 @@
КонецПроцедуры
&НаКлиенте
-Процедура ВопросОПерезаполнениииПоОснованиюПриЗавершении(Результат, Параметры) Экспорт
+Процедура ВопросОПерезаполненииПоОснованиюПриЗавершении(Результат, Параметры) Экспорт
Если Результат = КодВозвратаДиалога.Да Тогда
@@ -5156,7 +5162,7 @@
Объект.ДанныеОтчетаПроизводственнойЛинии.Очистить();
КонецЕсли;
- Если Действия.ОчиститьВариантВыполенияАгрегации Тогда
+ Если Действия.ОчиститьВариантВыполненияАгрегации Тогда
Объект.ВариантВыполненияАгрегации = ПредопределенноеЗначение("Перечисление.ВариантыВыполненияАгрегацииИСМП.ПустаяСсылка");
КонецЕсли;
@@ -5794,7 +5800,7 @@
Результат.Вставить("КОпределениюВидаУпаковки", Неопределено);
Результат.Вставить("ТекстОшибки", "");
- // В данных отчета произодственной линии полная информация о вложенных потребительских упаковках
+ // В данных отчета производственной линии полная информация о вложенных потребительских упаковках
ДанныеОтчета = Объект.ДанныеОтчетаПроизводственнойЛинии.Выгрузить(, "ЗначениеШтрихкода, ФорматBase64");
ДанныеОтчета.Колонки.Добавить("ЗначениеШтрихкодаУпаковки", Новый ОписаниеТипов("Строка"));
@@ -5979,7 +5985,7 @@
РежимУдаленияСтрокиОтчета = Результат;
- Если Результат = ПредопределенноеЗначение("Перечисление.ВариантыИсправленияОшибокОтчетПроизодственнойЛинииИС.УдалятьСтрокуОтчета") Тогда
+ Если Результат = ПредопределенноеЗначение("Перечисление.ВариантыИсправленияОшибокОтчетПроизводственнойЛинииИС.УдалятьСтрокуОтчета") Тогда
МассивСтрокКУдалению = Новый Массив;
Для Каждого ИдентификаторСтроки Из ДополнительныеПараметры.ИдентификаторыСтрок Цикл
@@ -6371,6 +6377,8 @@
Форма.Элементы.ДатаПроизводстваТовар.Формат = ФорматДатыПроизводства;
Форма.Элементы.ДатаПроизводстваТовар.ФорматРедактирования = ФорматДатыПроизводства;
+ КоличествоЕдиницУстановитьВидимость(Форма);
+
КонецПроцедуры
&НаКлиенте
@@ -6998,15 +7006,15 @@
КонецПроцедуры
&НаСервере
-Процедура ЗаполнитьСписокВыбораЭлементовШапки(Инициалзиация, ЕстьИдентификаторВЕТИС)
+Процедура ЗаполнитьСписокВыбораЭлементовШапки(Инициализация, ЕстьИдентификаторВЕТИС)
- Если Инициалзиация Тогда
+ Если Инициализация Тогда
ЗаполнитьСписокВыбораЭлементаФорма("Номенклатура",, Ложь);
КонецЕсли;
Если ХарактеристикиИспользуются Тогда
СтруктураОтбора = Новый Структура("Номенклатура", Номенклатура);
- ЗаполнитьСписокВыбораЭлементаФорма("Характеристика", СтруктураОтбора, Не Инициалзиация);
+ ЗаполнитьСписокВыбораЭлементаФорма("Характеристика", СтруктураОтбора, Не Инициализация);
Иначе
Элементы.Характеристика.СписокВыбора.Очистить();
КонецЕсли;
@@ -7015,14 +7023,14 @@
И (ХарактеристикиИспользуются И ЗначениеЗаполнено(Характеристика)
Или Не ХарактеристикиИспользуются) Тогда
СтруктураОтбора = Новый Структура("Номенклатура, Характеристика", Номенклатура, Характеристика);
- ЗаполнитьСписокВыбораЭлементаФорма("Серия", СтруктураОтбора, Не Инициалзиация);
+ ЗаполнитьСписокВыбораЭлементаФорма("Серия", СтруктураОтбора, Не Инициализация);
Иначе
Элементы.Серия.СписокВыбора.Очистить();
КонецЕсли;
Если ЕстьИдентификаторВЕТИС Тогда
СтруктураОтбора = Новый Структура("Номенклатура, Характеристика, Серия", Номенклатура, Характеристика, Серия);
- ЗаполнитьСписокВыбораЭлементаФорма("ИдентификаторПроисхожденияВЕТИС", СтруктураОтбора, Не Инициалзиация);
+ ЗаполнитьСписокВыбораЭлементаФорма("ИдентификаторПроисхожденияВЕТИС", СтруктураОтбора, Не Инициализация);
Иначе
Элементы.ИдентификаторПроисхожденияВЕТИС.СписокВыбора.Очистить();
КонецЕсли;
@@ -7244,7 +7252,7 @@
ПрименитьКешШтрихкодовУпаковок();
КонецЕсли;
-Конецпроцедуры
+КонецПроцедуры
&НаКлиенте
Процедура ПриИзмененииСоздаватьШтрихкодыУпаковок()
@@ -7353,4 +7361,143 @@
КонецПроцедуры
+&НаСервере
+Процедура КоличествоЕдиницДобавитьРеквизит()
+
+ Если Элементы.Найти("ТоварыКоличествоЕдиниц") = Неопределено Тогда
+ ДобавляемыеРеквизиты = Новый Массив;
+ ДобавляемыеРеквизиты.Добавить(
+ Новый РеквизитФормы(
+ "КоличествоЕдиниц",
+ ОбщегоНазначения.ОписаниеТипаЧисло(8, 0, ДопустимыйЗнак.Неотрицательный),
+ "Объект.Товары",
+ "Единиц (AI30)",
+ Истина));
+ ИзменитьРеквизиты(ДобавляемыеРеквизиты);
+
+ ПолеФормы = Элементы.Вставить(
+ "ТоварыКоличествоЕдиниц",
+ Тип("ПолеФормы"),
+ Элементы.Товары,
+ Элементы.ТоварыКоличествоПотребительскихУпаковок);
+
+ ПолеФормы.Вид = ВидПоляФормы.ПолеВвода;
+ ПолеФормы.ПутьКДанным = "Объект.Товары.КоличествоЕдиниц";
+ КонецЕсли;
+
+ КоличествоЕдиницЗаполнить();
+
+КонецПроцедуры
+
+&НаКлиентеНаСервереБезКонтекста
+Процедура КоличествоЕдиницУстановитьВидимость(Форма)
+
+ Форма.Элементы.ТоварыКоличествоЕдиниц.Видимость = КоличествоЕдиницИспользование(Форма);
+
+КонецПроцедуры
+
+&НаКлиентеНаСервереБезКонтекста
+Функция КоличествоЕдиницИспользование(Форма)
+
+ Возврат
+ (ЗначениеЗаполнено(Форма.Объект.ОперацияНанесения)
+ Или ИнтеграцияИСМПСлужебныйКлиентСервер.ОперацииМаркировки(Форма.Объект.Операция).ЭтоОперацияНанесения)
+ И КоличествоЕдиницИспользованиеПоТоварнойГруппе(Форма.Объект.ТоварнаяГруппа);
+
+КонецФункции
+
+&НаСервереБезКонтекста
+Функция КоличествоЕдиницИспользованиеПоТоварнойГруппе(ТоварнаяГруппа)
+
+ Возврат Документы.МаркировкаТоваровИСМП.КоличествоЕдиницИспользованиеПоТоварнойГруппе(ТоварнаяГруппа);
+
+КонецФункции
+
+&НаСервере
+Процедура КоличествоЕдиницЗаполнить()
+
+ Файл = КоличествоЕдиницПолучитьФайл(Объект.Ссылка);
+
+ Если Файл <> Неопределено Тогда
+ ТекстСообщенияXML = ПротоколОбменаИС.ТекстСообщенияXMLИзПротокола(Файл);
+ Данные = ОбщегоНазначения.ЗначениеИзСтрокиXML(ТекстСообщенияXML);
+ Если ТипЗнч(Данные) = Тип("ТаблицаЗначений")
+ И Данные.Количество() > 0 Тогда
+ СтруктураПоиска = Новый Структура;
+ Для Каждого СтрокаДанных Из Данные Цикл
+ СтруктураПоиска.Вставить("Номенклатура", СтрокаДанных.Номенклатура);
+ СтруктураПоиска.Вставить("Характеристика", СтрокаДанных.Характеристика);
+ НайденныеСтроки = Объект.Товары.НайтиСтроки(СтруктураПоиска);
+ Для Каждого НайденнаяСтрока Из НайденныеСтроки Цикл
+ НайденнаяСтрока.КоличествоЕдиниц = СтрокаДанных.КоличествоЕдиниц;
+ КонецЦикла;
+ КонецЦикла;
+ КонецЕсли;
+ КонецЕсли;
+
+КонецПроцедуры
+
+&НаСервере
+Процедура КоличествоЕдиницЗаписать(Ссылка)
+
+ Файл = КоличествоЕдиницПолучитьФайл(Ссылка);
+ ЕстьФайл = Файл <> Неопределено;
+
+ ДанныеДляЗаписи = КоличествоЕдиницДанныеДляЗаписи();
+ ЕстьДанныеДляЗаписи = ДанныеДляЗаписи.Количество() > 0;
+
+ Если ЕстьФайл Или ЕстьДанныеДляЗаписи Тогда
+
+ ТекстСообщенияXML = ОбщегоНазначения.ЗначениеВСтрокуXML(ДанныеДляЗаписи);
+ ДвоичныеДанные = ПолучитьДвоичныеДанныеИзСтроки(ТекстСообщенияXML, КодировкаТекста.UTF8);
+ АдресФайлаВоВременномХранилище = ПоместитьВоВременноеХранилище(ДвоичныеДанные);
+
+ ПараметрыФайла = Новый Структура;
+ ПараметрыФайла.Вставить("Автор", Пользователи.АвторизованныйПользователь());
+ ПараметрыФайла.Вставить("ВладелецФайлов", Ссылка);
+ ПараметрыФайла.Вставить("ИмяБезРасширения", "ДанныеВложенныхЕдиниц");
+ ПараметрыФайла.Вставить("РасширениеБезТочки", "xml");
+ ПараметрыФайла.Вставить("ВремяИзмененияУниверсальное");
+
+ Если ЕстьФайл Тогда
+ ПараметрыФайла.Вставить("АдресФайлаВоВременномХранилище", АдресФайлаВоВременномХранилище);
+ ПараметрыФайла.Вставить("АдресВременногоХранилищаТекста", "");
+ РаботаСФайлами.ОбновитьФайл(Файл, ПараметрыФайла);
+ Иначе
+ Файл = РаботаСФайлами.ДобавитьФайл(
+ ПараметрыФайла,
+ АдресФайлаВоВременномХранилище,,,
+ Справочники.ИСМППрисоединенныеФайлы.ПолучитьСсылку());
+ КонецЕсли;
+
+ КонецЕсли;
+
+КонецПроцедуры
+
+&НаСервере
+Функция КоличествоЕдиницДанныеДляЗаписи()
+
+ Результат = Новый ТаблицаЗначений;
+ Результат = Объект.Товары.Выгрузить(Новый Массив, "Номенклатура,Характеристика,КоличествоЕдиниц");
+
+ Если КоличествоЕдиницИспользование(ЭтотОбъект) Тогда
+ Для Каждого Строка Из Объект.Товары Цикл
+ Если Строка.КоличествоЕдиниц > 0 Тогда
+ СтрокаРезультата = Результат.Добавить();
+ ЗаполнитьЗначенияСвойств(СтрокаРезультата, Строка);
+ КонецЕсли;
+ КонецЦикла;
+ КонецЕсли;
+
+ Возврат Результат;
+
+КонецФункции
+
+&НаСервереБезКонтекста
+Функция КоличествоЕдиницПолучитьФайл(Документ)
+
+ Возврат Документы.МаркировкаТоваровИСМП.КоличествоЕдиницПолучитьФайл(Документ);
+
+КонецФункции
+
#КонецОбласти
diff --git a/src/Documents/НакладнаяСАТУРН/Forms/ФормаДокумента/Ext/Form/Module.bsl b/src/Documents/НакладнаяСАТУРН/Forms/ФормаДокумента/Ext/Form/Module.bsl
index 9c3e1091c..27f5916d8 100644
--- a/src/Documents/НакладнаяСАТУРН/Forms/ФормаДокумента/Ext/Form/Module.bsl
+++ b/src/Documents/НакладнаяСАТУРН/Forms/ФормаДокумента/Ext/Form/Module.bsl
@@ -1521,7 +1521,7 @@
Если Объект.Товары.Количество() > 0 И ЗадаватьВопрос Тогда
ТекстВопроса = НСтр("ru = 'Данные документа будут перезаполнены. Продолжить?'");
- ОписаниеОповещенияОЗавершении = Новый ОписаниеОповещения("ВопросОПерезаполнениииПоОснованиюПриЗавершении", ЭтотОбъект);
+ ОписаниеОповещенияОЗавершении = Новый ОписаниеОповещения("ВопросОПерезаполненииПоОснованиюПриЗавершении", ЭтотОбъект);
ПоказатьВопрос(ОписаниеОповещенияОЗавершении, ТекстВопроса, РежимДиалогаВопрос.ДаНет);
Иначе
@@ -1533,7 +1533,7 @@
КонецПроцедуры
&НаКлиенте
-Процедура ВопросОПерезаполнениииПоОснованиюПриЗавершении(Результат, Параметры) Экспорт
+Процедура ВопросОПерезаполненииПоОснованиюПриЗавершении(Результат, Параметры) Экспорт
Если Результат = КодВозвратаДиалога.Да Тогда
@@ -1670,7 +1670,7 @@
КонецЕсли;
Если Не Модифицированность Тогда
- Если Не ПроверятьОбъектПроведен ТОгда
+ Если Не ПроверятьОбъектПроведен Тогда
Если (ДополнительныеПараметры.НавигационнаяСсылкаФорматированнойСтроки = "ВернутьНакладную"
Или ДополнительныеПараметры.НавигационнаяСсылкаФорматированнойСтроки = "ПодтвердитьУтерюГруза")
И Не ЗначениеЗаполнено(Объект.ДатаПолучения) Тогда
diff --git a/src/Documents/ОбъединениеЗаписейСкладскогоЖурналаВЕТИС/Ext/ManagerModule.bsl b/src/Documents/ОбъединениеЗаписейСкладскогоЖурналаВЕТИС/Ext/ManagerModule.bsl
index c768aa5c9..1e12675d6 100644
--- a/src/Documents/ОбъединениеЗаписейСкладскогоЖурналаВЕТИС/Ext/ManagerModule.bsl
+++ b/src/Documents/ОбъединениеЗаписейСкладскогоЖурналаВЕТИС/Ext/ManagerModule.bsl
@@ -444,7 +444,7 @@
// Возвращает массив дальнейших действий с документом, требующих участия пользователя
//
// Возвращаемое значение:
-// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюВЕТИС - дальшейшие действия
+// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюВЕТИС - дальнейшие действия
//
Функция ВсеТребующиеДействия() Экспорт
diff --git a/src/Documents/ОбъединениеЗаписейСкладскогоЖурналаВЕТИС/Forms/ФормаДокумента/Ext/Form/Module.bsl b/src/Documents/ОбъединениеЗаписейСкладскогоЖурналаВЕТИС/Forms/ФормаДокумента/Ext/Form/Module.bsl
index 29ebcd0e8..c970d619c 100644
--- a/src/Documents/ОбъединениеЗаписейСкладскогоЖурналаВЕТИС/Forms/ФормаДокумента/Ext/Form/Module.bsl
+++ b/src/Documents/ОбъединениеЗаписейСкладскогоЖурналаВЕТИС/Forms/ФормаДокумента/Ext/Form/Module.bsl
@@ -247,12 +247,12 @@
ИначеЕсли Поле = Элементы.ОбъединяемыеЗаписиСкладскогоЖурналаЗаписьСкладскогоЖурналаПродукция
И ЗначениеЗаполнено(ТекущиеДанные.ЗаписьСкладскогоЖурнала) Тогда
- ПродукцияЗаписи = ИнтеграцияВЕТИСВызовСервера.ЗначениеРеквизитаОбъекта(ТекущиеДанные.ЗаписьСкладскогоЖурнала, "Продукция");
+ ПродукцияЗаписи = ПродукцияЗаписиСкладскогоЖурнала(ТекущиеДанные.ЗаписьСкладскогоЖурнала);
Если ЗначениеЗаполнено(ПродукцияЗаписи) Тогда
ПоказатьЗначение(, ПродукцияЗаписи);
КонецЕсли;
- КонецЕсли;
+ КонецЕсли;
КонецПроцедуры
@@ -1407,6 +1407,11 @@
КонецПроцедуры
+&НаСервереБезКонтекста
+Функция ПродукцияЗаписиСкладскогоЖурнала(ЗаписьСкладскогоЖурнала)
+ Возврат ОбщегоНазначения.ЗначениеРеквизитаОбъекта(ЗаписьСкладскогоЖурнала, "Продукция");
+КонецФункции
+
#КонецОбласти
#КонецОбласти
diff --git a/src/Documents/ОперацияСЭлектроннымБилетом/Ext/ManagerModule.bsl b/src/Documents/ОперацияСЭлектроннымБилетом/Ext/ManagerModule.bsl
index 4c229a45c..33d3cd8d3 100644
--- a/src/Documents/ОперацияСЭлектроннымБилетом/Ext/ManagerModule.bsl
+++ b/src/Documents/ОперацияСЭлектроннымБилетом/Ext/ManagerModule.bsl
@@ -517,12 +517,13 @@
// Возвращает имена ключевых реквизитов электронного билета, от которых зависит проведение
//
// Параметры:
-// ДляСинхронизации - Булево - признак получения имен всех реквизитов, оказывающих влияние на результат проведения.
+// ДляСинхронизации - Булево - признак получения имен всех реквизитов, оказывающих влияние на результат проведения
+// ИсключаемыеРеквизиты - Произвольный, Массив из Строка - массив реквизитов, которые будут исключены из результата.
//
// Возвращаемое значение:
// Массив из Строка
//
-Функция КлючевыеРеквизитыЭлектронногоБилета(ДляСинхронизации = Истина) Экспорт
+Функция КлючевыеРеквизитыЭлектронногоБилета(ДляСинхронизации = Истина, ИсключаемыеРеквизиты = Неопределено) Экспорт
КлючевыеРеквизиты = Новый Массив;
@@ -565,6 +566,10 @@
КлючевыеРеквизиты.Добавить("Проведен");
КонецЕсли;
+ Если ИсключаемыеРеквизиты <> Неопределено Тогда
+ Возврат ОбщегоНазначенияКлиентСервер.РазностьМассивов(КлючевыеРеквизиты, ИсключаемыеРеквизиты);
+ КонецЕсли;
+
Возврат КлючевыеРеквизиты;
КонецФункции
@@ -4123,8 +4128,9 @@
| ДанныеОперации.Ссылка = &СсылкаНаДокумент
| И НЕ ДанныеОперации.ЭлектронныйБилет = ЗНАЧЕНИЕ(Документ.ОперацияСЭлектроннымБилетом.ПустаяСсылка)";
- КлючевыеРеквизиты = КлючевыеРеквизитыЭлектронногоБилета();
- КлючевыеРеквизитыУдаленнойОперации = КлючевыеРеквизитыЭлектронногоБилета(Ложь);
+ ИсключаемыеРеквизиты = ОбщегоНазначенияКлиентСервер.ЗначениеВМассиве("Дата");
+ КлючевыеРеквизиты = КлючевыеРеквизитыЭлектронногоБилета(, ИсключаемыеРеквизиты);
+ КлючевыеРеквизитыУдаленнойОперации = КлючевыеРеквизитыЭлектронногоБилета(Ложь, ИсключаемыеРеквизиты);
ПоляЗапроса = Новый Массив;
Для Каждого КлючевойРеквизит Из КлючевыеРеквизиты Цикл
diff --git a/src/Documents/ОстаткиЕГАИС/Ext/ManagerModule.bsl b/src/Documents/ОстаткиЕГАИС/Ext/ManagerModule.bsl
index a2e619b45..1a326ccfa 100644
--- a/src/Documents/ОстаткиЕГАИС/Ext/ManagerModule.bsl
+++ b/src/Documents/ОстаткиЕГАИС/Ext/ManagerModule.bsl
@@ -350,7 +350,7 @@
// Возвращает массив дальнейших действий с документом, требующих участия пользователя
//
// Возвращаемое значение:
-// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюЕГАИС - дальшейшие действия
+// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюЕГАИС - дальнейшие действия
//
Функция ВсеТребующиеДействия() Экспорт
@@ -365,7 +365,7 @@
// Возвращает массив дальнейших действий с документом, не требующих участия пользователя
//
// Возвращаемое значение:
-// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюЕГАИС - дальшейшие действия
+// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюЕГАИС - дальнейшие действия
//
Функция ВсеТребующиеОжидания() Экспорт
diff --git a/src/Documents/ОтгрузкаТоваровИСМП/Ext/ManagerModule.bsl b/src/Documents/ОтгрузкаТоваровИСМП/Ext/ManagerModule.bsl
index c8bf1f717..2d20a2e9a 100644
--- a/src/Documents/ОтгрузкаТоваровИСМП/Ext/ManagerModule.bsl
+++ b/src/Documents/ОтгрузкаТоваровИСМП/Ext/ManagerModule.bsl
@@ -500,7 +500,7 @@
// Возвращает массив дальнейших действий с документом, требующих участия пользователя
//
// Возвращаемое значение:
-// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюИСМП - дальшейшие действия
+// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюИСМП - дальнейшие действия
//
Функция ВсеТребующиеДействия() Экспорт
@@ -516,7 +516,7 @@
// Возвращает массив дальнейших действий с документом, требующих ожидания пользователя
//
// Возвращаемое значение:
-// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюИСМП - дальшейшие действия
+// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюИСМП - дальнейшие действия
//
Функция ВсеТребующиеОжидания() Экспорт
@@ -885,7 +885,7 @@
КонецПроцедуры
-// Обработка данных перехода на конструктор настроек видов продуции
+// Обработка данных перехода на конструктор настроек видов продукции
//
// Параметры:
// Параметры - см. ОбновлениеИнформационнойБазы.ОсновныеПараметрыОтметкиКОбработке
diff --git a/src/Documents/ОтгрузкаТоваровИСМП/Ext/ObjectModule.bsl b/src/Documents/ОтгрузкаТоваровИСМП/Ext/ObjectModule.bsl
index af1775fe3..fd48279a4 100644
--- a/src/Documents/ОтгрузкаТоваровИСМП/Ext/ObjectModule.bsl
+++ b/src/Documents/ОтгрузкаТоваровИСМП/Ext/ObjectModule.bsl
@@ -91,7 +91,8 @@
НепроверяемыеРеквизиты.Добавить("Товары.ИдентификаторПроисхожденияВЕТИССтрокой");
НепроверяемыеРеквизиты.Добавить("Товары.ИдентификаторПроисхожденияВЕТИС");
- Если ИнтеграцияИСМПВЕТИСКлиентСервер.ЭтоВидПродукцииИСМПВЕТИС(ТоварнаяГруппа) Тогда
+ Если ИнтеграцияИСМПВЕТИСКлиентСервер.ЭтоВидПродукцииИСМПВЕТИС(ТоварнаяГруппа)
+ И ОтгрузкаТоваровКлиентСервер.ДоступноПолеИдентификаторПроисхождения(ВидыПродукцииПоТоварнойГруппе, Операция) Тогда
ИнтеграцияИСМП.ПроверкаЗаполненияИдентификатораПроисхожденияВЕТИС(ЭтотОбъект, Отказ);
КонецЕсли;
diff --git a/src/Documents/ОтгрузкаТоваровИСМП/Forms/ФормаДокумента/Ext/Form/Module.bsl b/src/Documents/ОтгрузкаТоваровИСМП/Forms/ФормаДокумента/Ext/Form/Module.bsl
index 19cb3f041..3d0f7361b 100644
--- a/src/Documents/ОтгрузкаТоваровИСМП/Forms/ФормаДокумента/Ext/Form/Module.bsl
+++ b/src/Documents/ОтгрузкаТоваровИСМП/Forms/ФормаДокумента/Ext/Form/Module.bsl
@@ -151,7 +151,7 @@
Если Не ТоварнаяГруппаУказана()
Или РедактированиеФормыНедоступно
Или Не ПравоИзменения
- Или РедактированиеНедоступноПоСтатусуПроверкиИподбора(ЭтотОбъект) Тогда
+ Или РедактированиеНедоступноПоСтатусуПроверкиИПодбора(ЭтотОбъект) Тогда
Возврат;
КонецЕсли;
@@ -413,7 +413,7 @@
Если РедактированиеФормыНедоступно
Или Не ПравоИзменения
- Или РедактированиеНедоступноПоСтатусуПроверкиИподбора(ЭтотОбъект) Тогда
+ Или РедактированиеНедоступноПоСтатусуПроверкиИПодбора(ЭтотОбъект) Тогда
СобытияФормИСМПКлиент.ВыборЭлементаТабличнойЧастиОткрытьФормуЭлемента(ЭтотОбъект, Элемент, Поле);
КонецЕсли;
@@ -1327,7 +1327,7 @@
ОбщегоНазначенияИСКлиентСервер.УстановитьДоступностьЭлементовФормы(Форма,
ЗависимыеОтСтатусаПроверкиИПодбора,
- Не (Форма.РедактированиеФормыНеДоступно Или РедактированиеНедоступноПоСтатусуПроверкиИподбора(Форма)));
+ Не (Форма.РедактированиеФормыНеДоступно Или РедактированиеНедоступноПоСтатусуПроверкиИПодбора(Форма)));
ДоступноПолеGTIN = МаркировкаТоваровКлиентСервер.ДоступноПолеGTIN(ВидыПродукцииПоТоварнойГруппе, Операция);
@@ -1343,7 +1343,7 @@
КонецПроцедуры
&НаКлиентеНаСервереБезКонтекста
-Функция РедактированиеНедоступноПоСтатусуПроверкиИподбора(Форма)
+Функция РедактированиеНедоступноПоСтатусуПроверкиИПодбора(Форма)
Если Форма.СтатусПроверкиИПодбора = ПредопределенноеЗначение("Перечисление.СтатусыПроверкиИПодбораИС.Выполняется")
Или Форма.СтатусПроверкиИПодбора = ПредопределенноеЗначение("Перечисление.СтатусыПроверкиИПодбораИС.Завершено") Тогда
@@ -1716,7 +1716,7 @@
Если Объект.Товары.Количество() > 0 И ЗадаватьВопрос Тогда
ТекстВопроса = НСтр("ru = 'Данные документа будут перезаполнены. Продолжить?'");
- ОписаниеОповещенияОЗавершении = Новый ОписаниеОповещения("ВопросОПерезаполнениииПоОснованиюПриЗавершении", ЭтотОбъект);
+ ОписаниеОповещенияОЗавершении = Новый ОписаниеОповещения("ВопросОПерезаполненииПоОснованиюПриЗавершении", ЭтотОбъект);
ПоказатьВопрос(ОписаниеОповещенияОЗавершении, ТекстВопроса, РежимДиалогаВопрос.ДаНет);
Иначе
@@ -1728,7 +1728,7 @@
КонецПроцедуры
&НаКлиенте
-Процедура ВопросОПерезаполнениииПоОснованиюПриЗавершении(Результат, Параметры) Экспорт
+Процедура ВопросОПерезаполненииПоОснованиюПриЗавершении(Результат, Параметры) Экспорт
Если Результат = КодВозвратаДиалога.Да Тогда
@@ -1924,7 +1924,7 @@
ОбщегоНазначенияКлиент.СообщитьПользователю(ТекстСообщения, , "Объект.ДатаВыводаИзОборота");
КонецЕсли;
-Конецпроцедуры
+КонецПроцедуры
#Область GTIN
@@ -2068,7 +2068,7 @@
ПрименитьКешШтрихкодовУпаковок();
КонецЕсли;
-Конецпроцедуры
+КонецПроцедуры
&НаСервере
Процедура ЗаполнитьСписокВыбораGTINПоСтроке(ТекущаяСтрока, ДанныеСтроки)
diff --git a/src/Documents/ОтчетЕГАИС/Ext/ManagerModule.bsl b/src/Documents/ОтчетЕГАИС/Ext/ManagerModule.bsl
index 9a51afefb..f54b14acf 100644
--- a/src/Documents/ОтчетЕГАИС/Ext/ManagerModule.bsl
+++ b/src/Documents/ОтчетЕГАИС/Ext/ManagerModule.bsl
@@ -396,7 +396,7 @@
// Возвращает массив дальнейших действий с документом, требующих участия пользователя
//
// Возвращаемое значение:
-// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюЕГАИС - дальшейшие действия
+// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюЕГАИС - дальнейшие действия
//
Функция ВсеТребующиеДействия() Экспорт
@@ -412,7 +412,7 @@
// Возвращает массив дальнейших действий с документом, не требующих участия пользователя
//
// Возвращаемое значение:
-// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюЕГАИС - дальшейшие действия
+// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюЕГАИС - дальнейшие действия
//
Функция ВсеТребующиеОжидания() Экспорт
diff --git a/src/Documents/ОтчетИСМП/Ext/ManagerModule.bsl b/src/Documents/ОтчетИСМП/Ext/ManagerModule.bsl
index db3739135..ab3c24535 100644
--- a/src/Documents/ОтчетИСМП/Ext/ManagerModule.bsl
+++ b/src/Documents/ОтчетИСМП/Ext/ManagerModule.bsl
@@ -374,7 +374,7 @@
// Возвращает массив дальнейших действий с документом, требующих участия пользователя
//
// Возвращаемое значение:
-// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюИСМП - дальшейшие действия
+// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюИСМП - дальнейшие действия
Функция ВсеТребующиеДействия() Экспорт
МассивДействий = Новый Массив;
@@ -390,7 +390,7 @@
// Возвращает массив дальнейших действий с документом, требующих ожидания
//
// Возвращаемое значение:
-// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюИСМП - дальшейшие действия
+// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюИСМП - дальнейшие действия
Функция ВсеТребующиеОжидания() Экспорт
МассивДействий = Новый Массив;
@@ -598,7 +598,7 @@
КонецПроцедуры
-// Обработка данных перехода на конструктор настроек видов продуции
+// Обработка данных перехода на конструктор настроек видов продукции
//
// Параметры:
// Параметры - см. ОбновлениеИнформационнойБазы.ОсновныеПараметрыОтметкиКОбработке
diff --git a/src/Documents/ОтчетОПроизводствеЕГАИС/Ext/ManagerModule.bsl b/src/Documents/ОтчетОПроизводствеЕГАИС/Ext/ManagerModule.bsl
index 1e57864d5..0e2a4016d 100644
--- a/src/Documents/ОтчетОПроизводствеЕГАИС/Ext/ManagerModule.bsl
+++ b/src/Documents/ОтчетОПроизводствеЕГАИС/Ext/ManagerModule.bsl
@@ -545,7 +545,7 @@
// Возвращает массив дальнейших действий с документом, требующих участия пользователя
//
// Возвращаемое значение:
-// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюЕГАИС - дальшейшие действия
+// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюЕГАИС - дальнейшие действия
//
Функция ВсеТребующиеДействия() Экспорт
@@ -561,7 +561,7 @@
// Возвращает массив дальнейших действий с документом, не требующих участия пользователя
//
// Возвращаемое значение:
-// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюЕГАИС - дальшейшие действия
+// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюЕГАИС - дальнейшие действия
//
Функция ВсеТребующиеОжидания() Экспорт
diff --git a/src/Documents/ОтчетОПроизводствеЕГАИС/Forms/ФормаДокумента/Ext/Form/Module.bsl b/src/Documents/ОтчетОПроизводствеЕГАИС/Forms/ФормаДокумента/Ext/Form/Module.bsl
index 5faa1960e..cfebc83d6 100644
--- a/src/Documents/ОтчетОПроизводствеЕГАИС/Forms/ФормаДокумента/Ext/Form/Module.bsl
+++ b/src/Documents/ОтчетОПроизводствеЕГАИС/Forms/ФормаДокумента/Ext/Form/Module.bsl
@@ -1194,7 +1194,7 @@
Если Объект.Товары.Количество() > 0 Тогда
ТекстВопроса = НСтр("ru = 'Табличная часть будет перезаполнена. Продолжить?'");
- ОписаниеОповещенияОЗавершении = Новый ОписаниеОповещения("ВопросОПерезаполнениииПоОснованиюПриЗавершении", ЭтотОбъект);
+ ОписаниеОповещенияОЗавершении = Новый ОписаниеОповещения("ВопросОПерезаполненииПоОснованиюПриЗавершении", ЭтотОбъект);
ПоказатьВопрос(ОписаниеОповещенияОЗавершении, ТекстВопроса, РежимДиалогаВопрос.ДаНет);
Иначе
@@ -2124,7 +2124,7 @@
НастройкиРазбораКодаМаркировки.Вставить("Общие", РазборКодаМаркировкиИССлужебныйПовтИсп.НастройкиРазбораКодаМаркировки());
НастройкиРазбораКодаМаркировки.Вставить("Пользовательские", ПользовательскиеПараметрыРазбораКодаМаркировки);
- ДанныеШтрихкода = ШтрихКоды[0];
+ ДанныеШтрихкода = Штрихкоды[0];
Если ДанныеШтрихкода.ФорматBase64 Тогда
Штрихкод = ШтрихкодированиеОбщегоНазначенияИСКлиентСервер.Base64ВШтрихкод(ДанныеШтрихкода.Штрихкод);
@@ -2655,7 +2655,7 @@
КонецПроцедуры
&НаКлиенте
-Процедура ВопросОПерезаполнениииПоОснованиюПриЗавершении(Результат, Параметры) Экспорт
+Процедура ВопросОПерезаполненииПоОснованиюПриЗавершении(Результат, Параметры) Экспорт
Если Результат = КодВозвратаДиалога.Да Тогда
diff --git a/src/Documents/ОтчетОРозничныхВозвратах/Forms/ФормаДокумента/Ext/Form/Module.bsl b/src/Documents/ОтчетОРозничныхВозвратах/Forms/ФормаДокумента/Ext/Form/Module.bsl
index aeefd4214..a23f1baec 100644
--- a/src/Documents/ОтчетОРозничныхВозвратах/Forms/ФормаДокумента/Ext/Form/Module.bsl
+++ b/src/Documents/ОтчетОРозничныхВозвратах/Forms/ФормаДокумента/Ext/Form/Module.bsl
@@ -760,6 +760,7 @@
ПараметрОповещения = Новый Структура;
ПараметрОповещения.Вставить("НоменклатураНабора", ТекущаяСтрока.НоменклатураНабора);
ПараметрОповещения.Вставить("ХарактеристикаНабора", ТекущаяСтрока.ХарактеристикаНабора);
+ ПараметрОповещения.Вставить("ДокументРеализации", ТекущаяСтрока.ДокументРеализации);
ПараметрОповещения.Вставить("ФормаВладелец", УникальныйИдентификатор);
Оповестить("РедактироватьНабор", ПараметрОповещения, ЭтотОбъект);
diff --git a/src/Documents/ОтчетОРозничныхПродажах/Forms/ФормаДокумента/Ext/Form/Module.bsl b/src/Documents/ОтчетОРозничныхПродажах/Forms/ФормаДокумента/Ext/Form/Module.bsl
index d94d49903..0f8521e41 100644
--- a/src/Documents/ОтчетОРозничныхПродажах/Forms/ФормаДокумента/Ext/Form/Module.bsl
+++ b/src/Documents/ОтчетОРозничныхПродажах/Forms/ФормаДокумента/Ext/Form/Module.bsl
@@ -736,6 +736,7 @@
ПараметрОповещения = Новый Структура;
ПараметрОповещения.Вставить("НоменклатураНабора", ТекущаяСтрока.НоменклатураНабора);
ПараметрОповещения.Вставить("ХарактеристикаНабора", ТекущаяСтрока.ХарактеристикаНабора);
+ ПараметрОповещения.Вставить("ДокументРеализации", ТекущаяСтрока.ДокументРеализации);
ПараметрОповещения.Вставить("ФормаВладелец", УникальныйИдентификатор);
Оповестить("РедактироватьНабор", ПараметрОповещения, ЭтотОбъект);
diff --git a/src/Documents/ОтчетОбИмпортеЕГАИС/Ext/ManagerModule.bsl b/src/Documents/ОтчетОбИмпортеЕГАИС/Ext/ManagerModule.bsl
index 5c8ab7609..0fa5c2bf4 100644
--- a/src/Documents/ОтчетОбИмпортеЕГАИС/Ext/ManagerModule.bsl
+++ b/src/Documents/ОтчетОбИмпортеЕГАИС/Ext/ManagerModule.bsl
@@ -422,7 +422,7 @@
// Возвращает массив дальнейших действий с документом, требующих участия пользователя
//
// Возвращаемое значение:
-// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюЕГАИС - дальшейшие действия
+// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюЕГАИС - дальнейшие действия
//
Функция ВсеТребующиеДействия() Экспорт
@@ -438,7 +438,7 @@
// Возвращает массив дальнейших действий с документом, не требующих участия пользователя
//
// Возвращаемое значение:
-// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюЕГАИС - дальшейшие действия
+// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюЕГАИС - дальнейшие действия
//
Функция ВсеТребующиеОжидания() Экспорт
diff --git a/src/Documents/ОтчетОбИмпортеЕГАИС/Forms/ФормаДокумента/Ext/Form/Module.bsl b/src/Documents/ОтчетОбИмпортеЕГАИС/Forms/ФормаДокумента/Ext/Form/Module.bsl
index a7aad4850..1975a9172 100644
--- a/src/Documents/ОтчетОбИмпортеЕГАИС/Forms/ФормаДокумента/Ext/Form/Module.bsl
+++ b/src/Documents/ОтчетОбИмпортеЕГАИС/Forms/ФормаДокумента/Ext/Form/Module.bsl
@@ -909,7 +909,7 @@
Если Объект.Товары.Количество() > 0 Тогда
ТекстВопроса = НСтр("ru = 'Табличная часть будет перезаполнена. Продолжить?'");
- ОписаниеОповещенияОЗавершении = Новый ОписаниеОповещения("ВопросОПерезаполнениииПоОснованиюПриЗавершении", ЭтотОбъект);
+ ОписаниеОповещенияОЗавершении = Новый ОписаниеОповещения("ВопросОПерезаполненииПоОснованиюПриЗавершении", ЭтотОбъект);
ПоказатьВопрос(ОписаниеОповещенияОЗавершении, ТекстВопроса, РежимДиалогаВопрос.ДаНет);
Иначе
@@ -1844,7 +1844,7 @@
НастройкиРазбораКодаМаркировки.Вставить("Общие", РазборКодаМаркировкиИССлужебныйПовтИсп.НастройкиРазбораКодаМаркировки());
НастройкиРазбораКодаМаркировки.Вставить("Пользовательские", ПользовательскиеПараметрыРазбораКодаМаркировки);
- ДанныеШтрихкода = ШтрихКоды[0];
+ ДанныеШтрихкода = Штрихкоды[0];
Если ДанныеШтрихкода.ФорматBase64 Тогда
Штрихкод = ШтрихкодированиеОбщегоНазначенияИСКлиентСервер.Base64ВШтрихкод(ДанныеШтрихкода.Штрихкод);
@@ -2108,7 +2108,7 @@
КонецПроцедуры
&НаКлиенте
-Процедура ВопросОПерезаполнениииПоОснованиюПриЗавершении(Результат, Параметры) Экспорт
+Процедура ВопросОПерезаполненииПоОснованиюПриЗавершении(Результат, Параметры) Экспорт
Если Результат = КодВозвратаДиалога.Да Тогда
diff --git a/src/Documents/ОформлениеСДИЗЗЕРНО/Ext/ManagerModule.bsl b/src/Documents/ОформлениеСДИЗЗЕРНО/Ext/ManagerModule.bsl
index c39bffa03..73dd29a2f 100644
--- a/src/Documents/ОформлениеСДИЗЗЕРНО/Ext/ManagerModule.bsl
+++ b/src/Documents/ОформлениеСДИЗЗЕРНО/Ext/ManagerModule.bsl
@@ -161,7 +161,7 @@
// Возвращает массив дальнейших действий с документом, требующих участия пользователя
//
// Возвращаемое значение:
-// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюЗЕРНО - дальшейшие действия.
+// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюЗЕРНО - дальнейшие действия.
//
Функция ВсеТребующиеДействия() Экспорт
@@ -181,7 +181,7 @@
// Возвращает массив дальнейших действий с документом, требующих ожидания
//
// Возвращаемое значение:
-// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюЗЕРНО - дальшейшие действия.
+// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюЗЕРНО - дальнейшие действия.
//
Функция ВсеТребующиеОжидания() Экспорт
@@ -1097,7 +1097,7 @@
КонецПроцедуры
-// Обработка данных перехода на конструктор настроек видов продуции
+// Обработка данных перехода на конструктор настроек видов продукции
//
// Параметры:
// Параметры - см. ОбновлениеИнформационнойБазы.ОсновныеПараметрыОтметкиКОбработке
diff --git a/src/Documents/ОформлениеСДИЗЗЕРНО/Forms/ФормаВыбораОснованияКорректировочногоСДИЗ/Ext/Form/Module.bsl b/src/Documents/ОформлениеСДИЗЗЕРНО/Forms/ФормаВыбораОснованияКорректировочногоСДИЗ/Ext/Form/Module.bsl
index 47dc4251a..a5a86c06e 100644
--- a/src/Documents/ОформлениеСДИЗЗЕРНО/Forms/ФормаВыбораОснованияКорректировочногоСДИЗ/Ext/Form/Module.bsl
+++ b/src/Documents/ОформлениеСДИЗЗЕРНО/Forms/ФормаВыбораОснованияКорректировочногоСДИЗ/Ext/Form/Module.bsl
@@ -26,7 +26,7 @@
КонецЦикла;
ДоступныеТипыДокументаОснования = Новый ОписаниеТипов(ДоступныеТипыПрикладныхДокументов);
-
+
Элементы.ДокументОснование.ОграничениеТипа = ДоступныеТипыДокументаОснования;
КонецПроцедуры
diff --git a/src/Documents/ОформлениеСДИЗЗЕРНО/Forms/ФормаДокумента/Ext/Form/Module.bsl b/src/Documents/ОформлениеСДИЗЗЕРНО/Forms/ФормаДокумента/Ext/Form/Module.bsl
index ffbd5999a..905d18bab 100644
--- a/src/Documents/ОформлениеСДИЗЗЕРНО/Forms/ФормаДокумента/Ext/Form/Module.bsl
+++ b/src/Documents/ОформлениеСДИЗЗЕРНО/Forms/ФормаДокумента/Ext/Form/Module.bsl
@@ -2289,7 +2289,7 @@
Если Объект.Товары.Количество() > 0 Тогда
ТекстВопроса = НСтр("ru = 'Данные документа будут перезаполнены. Продолжить?'");
- ОписаниеОповещенияОЗавершении = Новый ОписаниеОповещения("ВопросОПерезаполнениииПоОснованиюПриЗавершении", ЭтотОбъект);
+ ОписаниеОповещенияОЗавершении = Новый ОписаниеОповещения("ВопросОПерезаполненииПоОснованиюПриЗавершении", ЭтотОбъект);
ПоказатьВопрос(ОписаниеОповещенияОЗавершении, ТекстВопроса, РежимДиалогаВопрос.ДаНет);
Иначе
@@ -2301,7 +2301,7 @@
КонецПроцедуры
&НаКлиенте
-Процедура ВопросОПерезаполнениииПоОснованиюПриЗавершении(Результат, Параметры) Экспорт
+Процедура ВопросОПерезаполненииПоОснованиюПриЗавершении(Результат, Параметры) Экспорт
Если Результат = КодВозвратаДиалога.Да Тогда
diff --git a/src/Documents/ПередачаВРегистр2ЕГАИС/Ext/ManagerModule.bsl b/src/Documents/ПередачаВРегистр2ЕГАИС/Ext/ManagerModule.bsl
index 4b86eaa04..b857d3cfa 100644
--- a/src/Documents/ПередачаВРегистр2ЕГАИС/Ext/ManagerModule.bsl
+++ b/src/Documents/ПередачаВРегистр2ЕГАИС/Ext/ManagerModule.bsl
@@ -390,7 +390,7 @@
// Возвращает массив дальнейших действий с документом, требующих участия пользователя
//
// Возвращаемое значение:
-// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюЕГАИС - дальшейшие действия
+// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюЕГАИС - дальнейшие действия
//
Функция ВсеТребующиеДействия() Экспорт
@@ -405,7 +405,7 @@
// Возвращает массив дальнейших действий с документом, требующих ожидания пользователем
//
// Возвращаемое значение:
-// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюЕГАИС - дальшейшие действия
+// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюЕГАИС - дальнейшие действия
//
Функция ВсеТребующиеОжидания() Экспорт
diff --git a/src/Documents/ПередачаВРегистр2ЕГАИС/Forms/ФормаДокумента/Ext/Form/Module.bsl b/src/Documents/ПередачаВРегистр2ЕГАИС/Forms/ФормаДокумента/Ext/Form/Module.bsl
index 184799fc1..793ab9afc 100644
--- a/src/Documents/ПередачаВРегистр2ЕГАИС/Forms/ФормаДокумента/Ext/Form/Module.bsl
+++ b/src/Documents/ПередачаВРегистр2ЕГАИС/Forms/ФормаДокумента/Ext/Form/Module.bsl
@@ -517,7 +517,7 @@
Если Объект.Товары.Количество() > 0 Тогда
ТекстВопроса = НСтр("ru = 'Табличная часть будет перезаполнена. Продолжить?'");
- ОписаниеОповещенияОЗавершении = Новый ОписаниеОповещения("ВопросОПерезаполнениииПоОснованиюПриЗавершении", ЭтотОбъект);
+ ОписаниеОповещенияОЗавершении = Новый ОписаниеОповещения("ВопросОПерезаполненииПоОснованиюПриЗавершении", ЭтотОбъект);
ПоказатьВопрос(ОписаниеОповещенияОЗавершении, ТекстВопроса, РежимДиалогаВопрос.ДаНет);
Иначе
@@ -1128,7 +1128,7 @@
КонецПроцедуры
&НаКлиенте
-Процедура ВопросОПерезаполнениииПоОснованиюПриЗавершении(Результат, Параметры) Экспорт
+Процедура ВопросОПерезаполненииПоОснованиюПриЗавершении(Результат, Параметры) Экспорт
Если Результат = КодВозвратаДиалога.Да Тогда
diff --git a/src/Documents/ПеремаркировкаТоваровИСМП/Ext/ManagerModule.bsl b/src/Documents/ПеремаркировкаТоваровИСМП/Ext/ManagerModule.bsl
index cf8f7f5a6..428e3a4da 100644
--- a/src/Documents/ПеремаркировкаТоваровИСМП/Ext/ManagerModule.bsl
+++ b/src/Documents/ПеремаркировкаТоваровИСМП/Ext/ManagerModule.bsl
@@ -495,7 +495,7 @@
// Возвращает массив дальнейших действий с документом, требующих участия пользователя
//
// Возвращаемое значение:
-// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюИСМП - дальшейшие действия
+// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюИСМП - дальнейшие действия
//
Функция ВсеТребующиеДействия() Экспорт
@@ -513,7 +513,7 @@
// Возвращает массив дальнейших действий с документом, требующих ожидания пользователем
//
// Возвращаемое значение:
-// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюИСМП - дальшейшие действия
+// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюИСМП - дальнейшие действия
//
Функция ВсеТребующиеОжидания() Экспорт
@@ -930,7 +930,7 @@
КонецПроцедуры
-// Обработка данных перехода на конструктор настроек видов продуции
+// Обработка данных перехода на конструктор настроек видов продукции
//
// Параметры:
// Параметры - см. ОбновлениеИнформационнойБазы.ОсновныеПараметрыОтметкиКОбработке
@@ -1365,7 +1365,7 @@
РезультатОбработки = ШтрихкодированиеОбщегоНазначенияИС.ИнициализироватьРезультатОбработкиШтрихкода(Неопределено, ДанныеШтрихкода);
РезультатОбработки.Вставить("Номенклатура", ДанныеШтрихкода.Номенклатура);
РезультатОбработки.Вставить("Характеристика", ДанныеШтрихкода.Характеристика);
- РезультатОбработки.Вставить("КодМаркировки", ДанныеШтрихкода.ШтрихКодУпаковки);
+ РезультатОбработки.Вставить("КодМаркировки", ДанныеШтрихкода.ШтрихкодУпаковки);
Возврат РезультатОбработки;
КонецФункции
@@ -1377,7 +1377,7 @@
РезультатОбработки.ВидыПродукции = ДанныеШтрихкода.ВидыПродукцииКодаМаркировки;
РезультатОбработки.Вставить("Номенклатура", ДанныеШтрихкода.Номенклатура);
РезультатОбработки.Вставить("Характеристика", ДанныеШтрихкода.Характеристика);
- РезультатОбработки.Вставить("КодМаркировки", ДанныеШтрихкода.ШтрихКодУпаковки);
+ РезультатОбработки.Вставить("КодМаркировки", ДанныеШтрихкода.ШтрихкодУпаковки);
РезультатОбработки.ИспользоватьОбработкуНаКлиенте = Истина;
Возврат РезультатОбработки;
@@ -1390,7 +1390,7 @@
РезультатОбработки.ВидыПродукции = ДанныеШтрихкода.ВидыПродукцииКодаМаркировки;
РезультатОбработки.Вставить("Номенклатура", ДанныеШтрихкода.Номенклатура);
РезультатОбработки.Вставить("Характеристика", ДанныеШтрихкода.Характеристика);
- РезультатОбработки.Вставить("КодМаркировки", ДанныеШтрихкода.ШтрихКодУпаковки);
+ РезультатОбработки.Вставить("КодМаркировки", ДанныеШтрихкода.ШтрихкодУпаковки);
Если ДанныеШтрихкода.ЭтоКодВводаОстатков Тогда
РезультатОбработки.Вставить("МаркировкаОстатков", Истина);
РезультатОбработки.Вставить("СпособВводаВОборот", Перечисления.СпособыВводаВОборотСУЗ.МаркировкаОстатков);
diff --git a/src/Documents/ПеремаркировкаТоваровИСМП/Forms/ФормаДокумента/Ext/Form/Module.bsl b/src/Documents/ПеремаркировкаТоваровИСМП/Forms/ФормаДокумента/Ext/Form/Module.bsl
index b8300314d..e6ece7634 100644
--- a/src/Documents/ПеремаркировкаТоваровИСМП/Forms/ФормаДокумента/Ext/Form/Module.bsl
+++ b/src/Documents/ПеремаркировкаТоваровИСМП/Forms/ФормаДокумента/Ext/Form/Module.bsl
@@ -1985,7 +1985,7 @@
ТекстВопроса = НСтр("ru = 'Данные документа будут перезаполнены. Продолжить?'");
ОписаниеОповещенияОЗавершении = Новый ОписаниеОповещения(
- "ВопросОПерезаполнениииПоОснованиюПриЗавершении", ЭтотОбъект);
+ "ВопросОПерезаполненииПоОснованиюПриЗавершении", ЭтотОбъект);
ПоказатьВопрос(ОписаниеОповещенияОЗавершении, ТекстВопроса, РежимДиалогаВопрос.ДаНет);
Иначе
@@ -1997,7 +1997,7 @@
КонецПроцедуры
&НаКлиенте
-Процедура ВопросОПерезаполнениииПоОснованиюПриЗавершении(Результат, Параметры) Экспорт
+Процедура ВопросОПерезаполненииПоОснованиюПриЗавершении(Результат, Параметры) Экспорт
Если Результат = КодВозвратаДиалога.Да Тогда
diff --git a/src/Documents/ПеремещениеМеждуМОДИСМП/Ext/ManagerModule.bsl b/src/Documents/ПеремещениеМеждуМОДИСМП/Ext/ManagerModule.bsl
index 10c7f1bd2..f45acad0e 100644
--- a/src/Documents/ПеремещениеМеждуМОДИСМП/Ext/ManagerModule.bsl
+++ b/src/Documents/ПеремещениеМеждуМОДИСМП/Ext/ManagerModule.bsl
@@ -103,7 +103,7 @@
// Возвращает массив дальнейших действий с документом, требующих участия пользователя
//
// Возвращаемое значение:
-// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюИСМП - дальшейшие действия
+// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюИСМП - дальнейшие действия
//
Функция ВсеТребующиеДействия() Экспорт
@@ -120,7 +120,7 @@
// Возвращает массив дальнейших действий с документом, требующих ожидания пользователя
//
// Возвращаемое значение:
-// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюИСМП - дальшейшие действия
+// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюИСМП - дальнейшие действия
//
Функция ВсеТребующиеОжидания() Экспорт
diff --git a/src/Documents/ПеремещениеМеждуМОДИСМП/Forms/ФормаДокумента/Ext/Form/Module.bsl b/src/Documents/ПеремещениеМеждуМОДИСМП/Forms/ФормаДокумента/Ext/Form/Module.bsl
index e08c95dcf..6ed0add57 100644
--- a/src/Documents/ПеремещениеМеждуМОДИСМП/Forms/ФормаДокумента/Ext/Form/Module.bsl
+++ b/src/Documents/ПеремещениеМеждуМОДИСМП/Forms/ФормаДокумента/Ext/Form/Module.bsl
@@ -981,7 +981,7 @@
Если Объект.Товары.Количество() > 0 Тогда
ТекстВопроса = НСтр("ru = 'Данные документа будут перезаполнены. Продолжить?'");
- ОписаниеОповещенияОЗавершении = Новый ОписаниеОповещения("ВопросОПерезаполнениииПоОснованиюПриЗавершении", ЭтотОбъект);
+ ОписаниеОповещенияОЗавершении = Новый ОписаниеОповещения("ВопросОПерезаполненииПоОснованиюПриЗавершении", ЭтотОбъект);
ПоказатьВопрос(ОписаниеОповещенияОЗавершении, ТекстВопроса, РежимДиалогаВопрос.ДаНет);
Иначе
@@ -993,7 +993,7 @@
КонецПроцедуры
&НаКлиенте
-Процедура ВопросОПерезаполнениииПоОснованиюПриЗавершении(Результат, Параметры) Экспорт
+Процедура ВопросОПерезаполненииПоОснованиюПриЗавершении(Результат, Параметры) Экспорт
Если Результат = КодВозвратаДиалога.Да Тогда
diff --git a/src/Documents/ПеремещениеТоваров/Forms/ФормаДокумента/Ext/Form/Module.bsl b/src/Documents/ПеремещениеТоваров/Forms/ФормаДокумента/Ext/Form/Module.bsl
index b97b6547b..73089a902 100644
--- a/src/Documents/ПеремещениеТоваров/Forms/ФормаДокумента/Ext/Form/Module.bsl
+++ b/src/Documents/ПеремещениеТоваров/Forms/ФормаДокумента/Ext/Form/Module.bsl
@@ -2662,6 +2662,9 @@
ПараметрыУказанияСерийВрем = Новый Структура(ПараметрыУказанияСерий);
ПараметрыУказанияСерийВрем.ИмяПоляСклад = "Склад";
+ ПараметрыУказанияСерийВрем.ИмяПоляСкладОтправитель = Неопределено;
+ ПараметрыУказанияСерийВрем.ИмяПоляСкладПолучатель = Неопределено;
+
ПараметрыУказанияСерийПроверкаКоличества = Новый ФиксированнаяСтруктура(ПараметрыУказанияСерийВрем);
Если Объект.Статус = ПредопределенноеЗначение("Перечисление.СтатусыПеремещенийТоваров.Принято") Тогда
diff --git a/src/Documents/ПланПримененияСАТУРН/Forms/ФормаДокумента/Ext/Form/Module.bsl b/src/Documents/ПланПримененияСАТУРН/Forms/ФормаДокумента/Ext/Form/Module.bsl
index 74b62e7ac..df1ef95a6 100644
--- a/src/Documents/ПланПримененияСАТУРН/Forms/ФормаДокумента/Ext/Form/Module.bsl
+++ b/src/Documents/ПланПримененияСАТУРН/Forms/ФормаДокумента/Ext/Form/Module.bsl
@@ -813,7 +813,7 @@
Если Объект.Товары.Количество() > 0 И ЗадаватьВопрос Тогда
ТекстВопроса = НСтр("ru = 'Данные документа будут перезаполнены. Продолжить?'");
- ОписаниеОповещенияОЗавершении = Новый ОписаниеОповещения("ВопросОПерезаполнениииПоОснованиюПриЗавершении", ЭтотОбъект);
+ ОписаниеОповещенияОЗавершении = Новый ОписаниеОповещения("ВопросОПерезаполненииПоОснованиюПриЗавершении", ЭтотОбъект);
ПоказатьВопрос(ОписаниеОповещенияОЗавершении, ТекстВопроса, РежимДиалогаВопрос.ДаНет);
Иначе
@@ -825,7 +825,7 @@
КонецПроцедуры
&НаКлиенте
-Процедура ВопросОПерезаполнениииПоОснованиюПриЗавершении(Результат, Параметры) Экспорт
+Процедура ВопросОПерезаполненииПоОснованиюПриЗавершении(Результат, Параметры) Экспорт
Если Результат = КодВозвратаДиалога.Да Тогда
diff --git a/src/Documents/ПогашениеСДИЗЗЕРНО/Ext/ManagerModule.bsl b/src/Documents/ПогашениеСДИЗЗЕРНО/Ext/ManagerModule.bsl
index 01792ad18..1a93b0f51 100644
--- a/src/Documents/ПогашениеСДИЗЗЕРНО/Ext/ManagerModule.bsl
+++ b/src/Documents/ПогашениеСДИЗЗЕРНО/Ext/ManagerModule.bsl
@@ -547,7 +547,7 @@
// Возвращает массив дальнейших действий с документом, требующих участия пользователя
//
// Возвращаемое значение:
-// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюЗЕРНО - дальшейшие действия.
+// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюЗЕРНО - дальнейшие действия.
//
Функция ВсеТребующиеДействия() Экспорт
@@ -728,7 +728,7 @@
КонецПроцедуры
-// Обработка данных перехода на конструктор настроек видов продуции
+// Обработка данных перехода на конструктор настроек видов продукции
//
// Параметры:
// Параметры - см. ОбновлениеИнформационнойБазы.ОсновныеПараметрыОтметкиКОбработке
diff --git a/src/Documents/ПогашениеСДИЗЗЕРНО/Forms/ФормаСпискаДокументов/Ext/Form/Module.bsl b/src/Documents/ПогашениеСДИЗЗЕРНО/Forms/ФормаСпискаДокументов/Ext/Form/Module.bsl
index caf38fc4c..1e2f98f77 100644
--- a/src/Documents/ПогашениеСДИЗЗЕРНО/Forms/ФормаСпискаДокументов/Ext/Form/Module.bsl
+++ b/src/Documents/ПогашениеСДИЗЗЕРНО/Forms/ФормаСпискаДокументов/Ext/Form/Module.bsl
@@ -551,12 +551,7 @@
ДанныеОтбора = ИнтеграцияЗЕРНОКлиентСервер.РеквизитыПодбораСДИЗПриГашении();
ПерваяЗаписьОбработана = Ложь;
- ТребуемыеРеквизиты = Новый Массив();
- Для Каждого КлючИЗначение Из ДанныеОтбора Цикл
- ТребуемыеРеквизиты.Добавить(КлючИЗначение.Ключ);
- КонецЦикла;
-
- РеквизитыСДИЗов = ОбщегоНазначенияИСВызовСервера.ЗначенияРеквизитовОбъектов(ВыделенныеСтроки, СтрСоединить(ТребуемыеРеквизиты, ","));
+ РеквизитыСДИЗов = РеквизитыСДИЗДляПроверкиВозможностиВводаПогашения(ВыделенныеСтроки);
Для Каждого ВыделеннаяСтрока Из ВыделенныеСтроки Цикл
РеквизитыСДИЗ = РеквизитыСДИЗов[ВыделеннаяСтрока];
@@ -578,6 +573,20 @@
КонецФункции
+&НаСервереБезКонтекста
+Функция РеквизитыСДИЗДляПроверкиВозможностиВводаПогашения(СсылкиНаДокументы)
+
+ ДанныеОтбора = ИнтеграцияЗЕРНОКлиентСервер.РеквизитыПодбораСДИЗПриГашении();
+
+ ТребуемыеРеквизиты = Новый Массив();
+ Для Каждого КлючИЗначение Из ДанныеОтбора Цикл
+ ТребуемыеРеквизиты.Добавить(КлючИЗначение.Ключ);
+ КонецЦикла;
+
+ Возврат ОбщегоНазначения.ЗначенияРеквизитовОбъектов(СсылкиНаДокументы, СтрСоединить(ТребуемыеРеквизиты, ","));
+
+КонецФункции
+
&НаСервере
Функция ПолучитьСДИЗПоОтбору(Знач СтрокаОтбора, МассивСДИЗ)
diff --git a/src/Documents/ПодключениеКегаКОборудованиюРозливаИСМП/Ext/ManagerModule.bsl b/src/Documents/ПодключениеКегаКОборудованиюРозливаИСМП/Ext/ManagerModule.bsl
index 081bf34df..3ff3af5e3 100644
--- a/src/Documents/ПодключениеКегаКОборудованиюРозливаИСМП/Ext/ManagerModule.bsl
+++ b/src/Documents/ПодключениеКегаКОборудованиюРозливаИСМП/Ext/ManagerModule.bsl
@@ -358,7 +358,7 @@
// Возвращает массив дальнейших действий с документом, требующих участия пользователя
//
// Возвращаемое значение:
-// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюИСМП - дальшейшие действия
+// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюИСМП - дальнейшие действия
//
Функция ВсеТребующиеДействия() Экспорт
@@ -374,7 +374,7 @@
// Возвращает массив дальнейших действий с документом, требующих ожидания пользователем
//
// Возвращаемое значение:
-// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюИСМП - дальшейшие действия
+// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюИСМП - дальнейшие действия
//
Функция ВсеТребующиеОжидания() Экспорт
diff --git a/src/Documents/ПриемкаТоваровИСМП/Ext/ManagerModule.bsl b/src/Documents/ПриемкаТоваровИСМП/Ext/ManagerModule.bsl
index 3d3185ae3..88c0a0450 100644
--- a/src/Documents/ПриемкаТоваровИСМП/Ext/ManagerModule.bsl
+++ b/src/Documents/ПриемкаТоваровИСМП/Ext/ManagerModule.bsl
@@ -560,7 +560,7 @@
// Возвращает массив дальнейших действий с документом, требующих участия пользователя
//
// Возвращаемое значение:
-// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюИСМП - дальшейшие действия
+// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюИСМП - дальнейшие действия
//
Функция ВсеТребующиеДействия() Экспорт
@@ -578,7 +578,7 @@
// Возвращает массив дальнейших действий с документом, не требующих участия пользователя
//
// Возвращаемое значение:
-// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюИСМП - дальшейшие действия
+// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюИСМП - дальнейшие действия
//
Функция ВсеТребующиеОжидания() Экспорт
@@ -1027,7 +1027,7 @@
КонецПроцедуры
-// Обработка данных перехода на конструктор настроек видов продуции
+// Обработка данных перехода на конструктор настроек видов продукции
//
// Параметры:
// Параметры - см. ОбновлениеИнформационнойБазы.ОсновныеПараметрыОтметкиКОбработке
diff --git a/src/Documents/ПриемкаТоваровИСМП/Ext/ObjectModule.bsl b/src/Documents/ПриемкаТоваровИСМП/Ext/ObjectModule.bsl
index 739ca1a54..f98cd9c88 100644
--- a/src/Documents/ПриемкаТоваровИСМП/Ext/ObjectModule.bsl
+++ b/src/Documents/ПриемкаТоваровИСМП/Ext/ObjectModule.bsl
@@ -50,7 +50,8 @@
НепроверяемыеРеквизиты.Добавить("Товары.ИдентификаторПроисхожденияВЕТИССтрокой");
НепроверяемыеРеквизиты.Добавить("Товары.ИдентификаторПроисхожденияВЕТИС");
- Если ИнтеграцияИСМПВЕТИСКлиентСервер.ЭтоВидПродукцииИСМПВЕТИС(ТоварнаяГруппа) Тогда
+ Если ИнтеграцияИСМПВЕТИСКлиентСервер.ЭтоВидПродукцииИСМПВЕТИС(ТоварнаяГруппа)
+ И ОтгрузкаТоваровКлиентСервер.ДоступноПолеИдентификаторПроисхождения(ВидыПродукцииПоТоварнойГруппе, Операция) Тогда
ИнтеграцияИСМП.ПроверкаЗаполненияИдентификатораПроисхожденияВЕТИС(ЭтотОбъект, Отказ);
КонецЕсли;
diff --git a/src/Documents/ПриемкаТоваровИСМП/Forms/ФормаДокумента/Ext/Form/Module.bsl b/src/Documents/ПриемкаТоваровИСМП/Forms/ФормаДокумента/Ext/Form/Module.bsl
index 1e1f98804..bb01d8406 100644
--- a/src/Documents/ПриемкаТоваровИСМП/Forms/ФормаДокумента/Ext/Form/Module.bsl
+++ b/src/Documents/ПриемкаТоваровИСМП/Forms/ФормаДокумента/Ext/Form/Module.bsl
@@ -1278,7 +1278,7 @@
КонецПроцедуры
&НаКлиенте
-Процедура ВопросОПерезаполнениииПоОснованиюПриЗавершении(Результат, Параметры) Экспорт
+Процедура ВопросОПерезаполненииПоОснованиюПриЗавершении(Результат, Параметры) Экспорт
Если Результат = КодВозвратаДиалога.Да Тогда
diff --git a/src/Documents/ПроизводственнаяОперацияВЕТИС/Ext/ManagerModule.bsl b/src/Documents/ПроизводственнаяОперацияВЕТИС/Ext/ManagerModule.bsl
index 6944d8f65..e72ce74f1 100644
--- a/src/Documents/ПроизводственнаяОперацияВЕТИС/Ext/ManagerModule.bsl
+++ b/src/Documents/ПроизводственнаяОперацияВЕТИС/Ext/ManagerModule.bsl
@@ -423,7 +423,7 @@
// Возвращает массив дальнейших действий с документом, требующих участия пользователя
//
// Возвращаемое значение:
-// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюВЕТИС - дальшейшие действия
+// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюВЕТИС - дальнейшие действия
//
Функция ВсеТребующиеДействия() Экспорт
diff --git a/src/Documents/ПроизводственнаяОперацияВЕТИС/Forms/ФормаДокумента/Ext/Form/Module.bsl b/src/Documents/ПроизводственнаяОперацияВЕТИС/Forms/ФормаДокумента/Ext/Form/Module.bsl
index 2a1a33f8a..55e67c0a7 100644
--- a/src/Documents/ПроизводственнаяОперацияВЕТИС/Forms/ФормаДокумента/Ext/Form/Module.bsl
+++ b/src/Documents/ПроизводственнаяОперацияВЕТИС/Forms/ФормаДокумента/Ext/Form/Module.bsl
@@ -1264,7 +1264,7 @@
Если Объект.Товары.Количество() > 0 ИЛИ Объект.Сырье.Количество() > 0 Тогда
ТекстВопроса = НСтр("ru = 'Табличные части документа будут перезаполнены. Продолжить?'");
- ОписаниеОповещенияОЗавершении = Новый ОписаниеОповещения("ВопросОПерезаполнениииПоОснованиюПриЗавершении", ЭтотОбъект);
+ ОписаниеОповещенияОЗавершении = Новый ОписаниеОповещения("ВопросОПерезаполненииПоОснованиюПриЗавершении", ЭтотОбъект);
ПоказатьВопрос(ОписаниеОповещенияОЗавершении, ТекстВопроса, РежимДиалогаВопрос.ДаНет);
Иначе
@@ -1276,7 +1276,7 @@
КонецПроцедуры
&НаКлиенте
-Процедура ВопросОПерезаполнениииПоОснованиюПриЗавершении(Результат, Параметры) Экспорт
+Процедура ВопросОПерезаполненииПоОснованиюПриЗавершении(Результат, Параметры) Экспорт
Если Результат = КодВозвратаДиалога.Да Тогда
diff --git a/src/Documents/ПроизводственнаяОперацияСАТУРН/Forms/ФормаДокумента/Ext/Form/Module.bsl b/src/Documents/ПроизводственнаяОперацияСАТУРН/Forms/ФормаДокумента/Ext/Form/Module.bsl
index ba966e26c..f1122def5 100644
--- a/src/Documents/ПроизводственнаяОперацияСАТУРН/Forms/ФормаДокумента/Ext/Form/Module.bsl
+++ b/src/Documents/ПроизводственнаяОперацияСАТУРН/Forms/ФормаДокумента/Ext/Form/Module.bsl
@@ -1290,7 +1290,7 @@
Если Объект.Товары.Количество() > 0 И ЗадаватьВопрос Тогда
ТекстВопроса = НСтр("ru = 'Данные документа будут перезаполнены. Продолжить?'");
- ОписаниеОповещенияОЗавершении = Новый ОписаниеОповещения("ВопросОПерезаполнениииПоОснованиюПриЗавершении", ЭтотОбъект);
+ ОписаниеОповещенияОЗавершении = Новый ОписаниеОповещения("ВопросОПерезаполненииПоОснованиюПриЗавершении", ЭтотОбъект);
ПоказатьВопрос(ОписаниеОповещенияОЗавершении, ТекстВопроса, РежимДиалогаВопрос.ДаНет);
Иначе
@@ -1302,7 +1302,7 @@
КонецПроцедуры
&НаКлиенте
-Процедура ВопросОПерезаполнениииПоОснованиюПриЗавершении(Результат, Параметры) Экспорт
+Процедура ВопросОПерезаполненииПоОснованиюПриЗавершении(Результат, Параметры) Экспорт
Если Результат = КодВозвратаДиалога.Да Тогда
diff --git a/src/Documents/РазрешениеНаОтгрузкуИСМП/Ext/ManagerModule.bsl b/src/Documents/РазрешениеНаОтгрузкуИСМП/Ext/ManagerModule.bsl
index 022cd7444..4b4af4e47 100644
--- a/src/Documents/РазрешениеНаОтгрузкуИСМП/Ext/ManagerModule.bsl
+++ b/src/Documents/РазрешениеНаОтгрузкуИСМП/Ext/ManagerModule.bsl
@@ -94,7 +94,7 @@
// Возвращает массив дальнейших действий с документом, требующих участия пользователя
//
// Возвращаемое значение:
-// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюИСМП - дальшейшие действия
+// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюИСМП - дальнейшие действия
//
Функция ВсеТребующиеДействия() Экспорт
@@ -111,7 +111,7 @@
// Возвращает массив дальнейших действий с документом, требующих ожидания пользователя
//
// Возвращаемое значение:
-// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюИСМП - дальшейшие действия
+// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюИСМП - дальнейшие действия
//
Функция ВсеТребующиеОжидания() Экспорт
diff --git a/src/Documents/РазрешениеНаОтгрузкуИСМП/Forms/ФормаДокумента/Ext/Form/Module.bsl b/src/Documents/РазрешениеНаОтгрузкуИСМП/Forms/ФормаДокумента/Ext/Form/Module.bsl
index 7377e71f3..b9d890b7d 100644
--- a/src/Documents/РазрешениеНаОтгрузкуИСМП/Forms/ФормаДокумента/Ext/Form/Module.bsl
+++ b/src/Documents/РазрешениеНаОтгрузкуИСМП/Forms/ФормаДокумента/Ext/Form/Module.bsl
@@ -934,7 +934,7 @@
// если включена проверка документов ГИС МТ и ЭД отправлен на предварительную проверку, но еще ее не прошел,
// ожидаем ответа от ГИС МТ, потому как нет точного понимания, что ошибок при проверке не найдено
- Если РезультатПроверкиГИСМТ.ПроверкаОтключена
+ Если Не РезультатПроверкиГИСМТ.ПроверкаОтключена
И РезультатПроверкиГИСМТ.ОтправленНаПредварительнуюПроверку
И Не РезультатПроверкиГИСМТ.ВыполненаПредварительнаяПроверка
И СтатусИСМП = ПредопределенноеЗначение("Перечисление.СтатусыОбработкиРазрешенийНаОтгрузкуИСМП.Черновик") Тогда
diff --git a/src/Documents/РеализацияТоваровУслуг/Ext/ManagerModule.bsl b/src/Documents/РеализацияТоваровУслуг/Ext/ManagerModule.bsl
index b4439027a..b1ca003ba 100644
--- a/src/Documents/РеализацияТоваровУслуг/Ext/ManagerModule.bsl
+++ b/src/Documents/РеализацияТоваровУслуг/Ext/ManagerModule.bsl
@@ -9375,6 +9375,7 @@
| Сумма
| ) КАК СкидкиНаценки,
| ЗаказКлиента.АдресДоставкиЗначенияПолей КАК АдресДоставкиЗначенияПолей,
+ | ЗаказКлиента.АдресДоставкиЗначение КАК АдресДоставкиЗначение,
|
| ВЫБОР
| КОГДА НЕ &ИспользуетсяДоставка20
diff --git a/src/Documents/СообщениеОбменСБанками/Forms/ЭлектронныйДокумент/Ext/Form.xml b/src/Documents/СообщениеОбменСБанками/Forms/ЭлектронныйДокумент/Ext/Form.xml
index d58fca209..00fa9df09 100644
--- a/src/Documents/СообщениеОбменСБанками/Forms/ЭлектронныйДокумент/Ext/Form.xml
+++ b/src/Documents/СообщениеОбменСБанками/Forms/ЭлектронныйДокумент/Ext/Form.xml
@@ -1295,6 +1295,17 @@
+
+
+
+ ru
+ Показать остаток
+
+
+
+ xs:boolean
+
+
@@ -1594,6 +1605,11 @@
+
+
+ xs:boolean
+
+
diff --git a/src/Documents/СообщениеОбменСБанками/Forms/ЭлектронныйДокумент/Ext/Form/Module.bsl b/src/Documents/СообщениеОбменСБанками/Forms/ЭлектронныйДокумент/Ext/Form/Module.bsl
index c6d6ccb5b..de726b6a3 100644
--- a/src/Documents/СообщениеОбменСБанками/Forms/ЭлектронныйДокумент/Ext/Form/Module.bsl
+++ b/src/Documents/СообщениеОбменСБанками/Forms/ЭлектронныйДокумент/Ext/Form/Module.bsl
@@ -36,6 +36,8 @@
Элементы.ГруппаОсновныхКоманд.Видимость = Ложь;
КонецЕсли;
+ ПоказатьОстаток = Параметры.ПоказатьОстаток;
+
ПараметрыЖурналирования = ОбменСБанкамиСлужебныйВызовСервера.ПараметрыЖурналирования(Объект.НастройкаОбмена);
ИспользоватьЖурналирование = ПараметрыЖурналирования.ИспользоватьЖурналирование;
КаталогДляЖурналирования = ПараметрыЖурналирования.КаталогДляЖурналирования;
@@ -63,6 +65,12 @@
Отказ = Истина;
КонецЕсли;
+ Если ПоказатьОстаток Тогда
+ ОбластьИсходящийОстаток = ТабличныйДокументФормы.Области.Найти("ИсходящийОстаток");
+ Элементы.ТабличныйДокумент.УстановитьВыделенныеОбласти(ОбщегоНазначенияКлиентСервер.ЗначениеВМассиве(
+ ОбластьИсходящийОстаток));
+ КонецЕсли;
+
КонецПроцедуры
&НаКлиенте
@@ -1642,6 +1650,7 @@
Если РезультатЗадания.Статус = "Ошибка" Тогда
ВидОперации = НСтр("ru = 'Отправка запроса статуса платежа в Сбербанк'");
ОбработкаНеисправностейБЭДВызовСервера.ОбработатьОшибку(ВидОперации,
+ ОбщегоНазначенияБЭДКлиентСервер.ПодсистемыБЭД().ОбменСБанками,
РезультатЗадания.ПодробноеПредставлениеОшибки, РезультатЗадания.КраткоеПредставлениеОшибки,
Объект.НастройкаОбмена);
Иначе // выполнено
diff --git a/src/Documents/СообщениеОбменСБанками/Templates/ЭД_ВыпискаБанка_ru/Ext/Template.xml b/src/Documents/СообщениеОбменСБанками/Templates/ЭД_ВыпискаБанка_ru/Ext/Template.xml
index 2d5804996..c2fa7cb9f 100644
--- a/src/Documents/СообщениеОбменСБанками/Templates/ЭД_ВыпискаБанка_ru/Ext/Template.xml
+++ b/src/Documents/СообщениеОбменСБанками/Templates/ЭД_ВыпискаБанка_ru/Ext/Template.xml
@@ -1568,6 +1568,17 @@
9c848332-8fbe-4208-8544-5b3cf52e88db
+
+ ИсходящийОстаток
+
+ Rectangle
+ 15
+ 15
+ 10
+ 10
+ 9c848332-8fbe-4208-8544-5b3cf52e88db
+
+
НазваниеБанка1
diff --git a/src/Documents/СписаниеБезналичныхДенежныхСредств/Ext/ManagerModule.bsl b/src/Documents/СписаниеБезналичныхДенежныхСредств/Ext/ManagerModule.bsl
index c6b2e475d..066972a3a 100644
--- a/src/Documents/СписаниеБезналичныхДенежныхСредств/Ext/ManagerModule.bsl
+++ b/src/Documents/СписаниеБезналичныхДенежныхСредств/Ext/ManagerModule.bsl
@@ -9568,58 +9568,114 @@
//++ Локализация
+ ЗапросМаксимальнаяГраница = Новый Запрос;
+ ЗапросМаксимальнаяГраница.Текст =
+ "ВЫБРАТЬ
+ | МАКСИМУМ(СписаниеБезналичныхДенежныхСредств.Дата) КАК Дата
+ |ИЗ
+ | Документ.СписаниеБезналичныхДенежныхСредств КАК СписаниеБезналичныхДенежныхСредств";
+
+ ВыборкаДаты = ЗапросМаксимальнаяГраница.Выполнить().Выбрать();
+
+ Если ВыборкаДаты.Следующий() Тогда
+ ДатаПоследнейПорции = ВыборкаДаты.Дата;
+ Иначе
+ Возврат;
+ КонецЕсли;
+
ПараметрыВыборки = Параметры.ПараметрыВыборки;
ПараметрыВыборки.ПолныеИменаОбъектов = ПустаяСсылка().Метаданные().ПолноеИмя();
ПараметрыВыборки.СпособВыборки = ОбновлениеИнформационнойБазы.СпособВыборкиСсылки();
+ ПараметрыВыборки.ПоляУпорядочиванияПриРаботеПользователей.Добавить("Дата УБЫВ");
+ ПараметрыВыборки.ПоляУпорядочиванияПриОбработкеДанных.Добавить("Дата УБЫВ");
Запрос = Новый Запрос;
Запрос.Текст =
- "ВЫБРАТЬ
+ "ВЫБРАТЬ ПЕРВЫЕ 10000
| СписаниеБезналичныхДенежныхСредств.Ссылка КАК Ссылка,
| СписаниеБезналичныхДенежныхСредств.Дата КАК Дата,
| СписаниеБезналичныхДенежныхСредств.ИННПлательщика КАК ИННПлательщика,
| СписаниеБезналичныхДенежныхСредств.КПППлательщика КАК КПППлательщика,
- | СписаниеБезналичныхДенежныхСредств.ТекстПлательщика КАК ТекстПлательщика,
- | СписаниеБезналичныхДенежныхСредств.ПеречислениеВБюджет КАК ПеречислениеВБюджет
+ | СписаниеБезналичныхДенежныхСредств.ТекстПлательщика КАК ТекстПлательщика
|ИЗ
| Документ.СписаниеБезналичныхДенежныхСредств КАК СписаниеБезналичныхДенежныхСредств
|ГДЕ
| (СписаниеБезналичныхДенежныхСредств.ИННПлательщика = """"
| ИЛИ СписаниеБезналичныхДенежныхСредств.КПППлательщика = """"
| ИЛИ (ВЫРАЗИТЬ(СписаниеБезналичныхДенежныхСредств.ТекстПлательщика КАК СТРОКА(1024))) = """")
+ | И СписаниеБезналичныхДенежныхСредств.Дата <= &ДатаПоследнейПорции
+ | И НЕ СписаниеБезналичныхДенежныхСредств.Ссылка В (&ИсключаемыеДокументы)
|
|УПОРЯДОЧИТЬ ПО
| Дата УБЫВ";
- ЗарегистрированныеДокументы = Запрос.Выполнить().Выгрузить();
+ РазмерПакета = 10000;
+ ИсключаемыеДокументы = Новый Массив;
- ЗапросДанных = Новый Запрос;
- ЗапросДанных.Текст = ТекстЗапросаРеквизитовПлательщикаСГруппировкойПоДокументам();
- ЗапросДанных.УстановитьПараметр("ПроверяемыеДокументы", ЗарегистрированныеДокументы);
- ВыборкаДанныхПоДокументам = ЗапросДанных.Выполнить().Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);
-
- СписокДокументов = Новый Массив;
-
- Для Каждого ТекущийДокумент Из ЗарегистрированныеДокументы Цикл
+ Пока Истина Цикл
- НайденныеРеквизитыПлательщика = РеквизитыПлательщикаПоДокументу(
- ВыборкаДанныхПоДокументам, ТекущийДокумент.Ссылка, ТекущийДокумент.ПеречислениеВБюджет);
-
- Если ПустаяСтрока(ТекущийДокумент.ИННПлательщика)
- И Не ПустаяСтрока(НайденныеРеквизитыПлательщика.ИННПлательщика) Тогда
- СписокДокументов.Добавить(ТекущийДокумент.Ссылка);
- ИначеЕсли ПустаяСтрока(ТекущийДокумент.КПППлательщика)
- И Не ПустаяСтрока(НайденныеРеквизитыПлательщика.КПППлательщика) Тогда
- СписокДокументов.Добавить(ТекущийДокумент.Ссылка);
- ИначеЕсли ПустаяСтрока(ТекущийДокумент.ТекстПлательщика)
- И Не ПустаяСтрока(НайденныеРеквизитыПлательщика.ТекстПлательщика) Тогда
- СписокДокументов.Добавить(ТекущийДокумент.Ссылка);
+ Запрос.УстановитьПараметр("ДатаПоследнейПорции", ДатаПоследнейПорции);
+ Запрос.УстановитьПараметр("ИсключаемыеДокументы", ИсключаемыеДокументы);
+ ПакетДокументов = Запрос.Выполнить().Выгрузить();
+
+ Если ПакетДокументов.Количество() = 0 Тогда
+ Прервать;
КонецЕсли;
+ ЗапросДанных = Новый Запрос;
+ ЗапросДанных.Текст = ТекстЗапросаРеквизитовПлательщикаСГруппировкойПоДокументам();
+ ЗапросДанных.УстановитьПараметр("ПроверяемыеДокументы", ПакетДокументов);
+ ВыборкаДанныхПоДокументам = ЗапросДанных.Выполнить().Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);
+
+ РеквизитыПлательщикаПоДокументу = РеквизитыПлательщикаПоДокументам(ВыборкаДанныхПоДокументам);
+
+ СписокДокументов = Новый Массив;
+
+ Для Каждого ТекущийДокумент Из ПакетДокументов Цикл
+
+ РеквизитыПлательщика = РеквизитыПлательщикаПоДокументу.Получить(ТекущийДокумент.Ссылка);
+
+ Если РеквизитыПлательщика = Неопределено Тогда
+ Продолжить;
+ КонецЕсли;
+
+ Если ПустаяСтрока(ТекущийДокумент.ИННПлательщика)
+ И Не ПустаяСтрока(РеквизитыПлательщика.ИННПлательщика) Тогда
+ СписокДокументов.Добавить(ТекущийДокумент.Ссылка);
+ ИначеЕсли ПустаяСтрока(ТекущийДокумент.КПППлательщика)
+ И Не ПустаяСтрока(РеквизитыПлательщика.КПППлательщика) Тогда
+ СписокДокументов.Добавить(ТекущийДокумент.Ссылка);
+ ИначеЕсли ПустаяСтрока(ТекущийДокумент.ТекстПлательщика)
+ И Не ПустаяСтрока(РеквизитыПлательщика.ТекстПлательщика) Тогда
+ СписокДокументов.Добавить(ТекущийДокумент.Ссылка);
+ КонецЕсли;
+
+ КонецЦикла;
+
+ ОбновлениеИнформационнойБазы.ОтметитьКОбработке(Параметры, СписокДокументов);
+
+ Если ПакетДокументов.Количество() < РазмерПакета Тогда
+ Прервать;
+ КонецЕсли;
+
+ ПоследняяСтрокаПорции = ПакетДокументов.Получить(ПакетДокументов.Количество() - 1);
+
+ Если ДатаПоследнейПорции <> ПоследняяСтрокаПорции.Дата Тогда
+ ИсключаемыеДокументы = Новый Массив;
+ КонецЕсли;
+
+ ДатаПоследнейПорции = ПоследняяСтрокаПорции.Дата;
+
+ Для Каждого СтрокаПакета Из ПакетДокументов Цикл
+
+ Если СтрокаПакета.Дата = ДатаПоследнейПорции Тогда
+ ИсключаемыеДокументы.Добавить(СтрокаПакета.Ссылка);
+ КонецЕсли;
+
+ КонецЦикла;
+
КонецЦикла;
- ОбновлениеИнформационнойБазы.ОтметитьКОбработке(Параметры, СписокДокументов);
-
//-- Локализация
КонецПроцедуры
@@ -9681,6 +9737,8 @@
ЗапросДанных.УстановитьПараметр("ПроверяемыеДокументы", ОбновляемыеДанные);
ВыборкаПоДокументам = ЗапросДанных.Выполнить().Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);
+ РеквизитыПлательщикаПоДокументу = РеквизитыПлательщикаПоДокументам(ВыборкаПоДокументам);
+
Пока Документ.Следующий() Цикл
ПричинаИсключения = "";
@@ -9708,33 +9766,36 @@
Если ДокументОбъект <> Неопределено Тогда
- РеквизитыПлательщика = РеквизитыПлательщикаПоДокументу(
- ВыборкаПоДокументам, Документ.Ссылка, ДокументОбъект.ПеречислениеВБюджет);
-
- Если ПустаяСтрока(ДокументОбъект.ИННПлательщика)
- И Не ПустаяСтрока(РеквизитыПлательщика.ИННПлательщика) Тогда
- ДокументОбъект.ИННПлательщика = РеквизитыПлательщика.ИННПлательщика;
- КонецЕсли;
+ РеквизитыПлательщика = РеквизитыПлательщикаПоДокументу.Получить(Документ.Ссылка);
+
+ Если РеквизитыПлательщика <> Неопределено Тогда
- Если ПустаяСтрока(ДокументОбъект.КПППлательщика)
- И Не ПустаяСтрока(РеквизитыПлательщика.КПППлательщика) Тогда
-
- ДействуетПриказ58н = ПлатежиВБюджетКлиентСервер.ДействуетПриказ58н_202604(ДокументОбъект.Дата);
-
- Если ДействуетПриказ58н
- И ДокументОбъект.ТипНалога = Справочники.ВидыНалоговВзносов.ЕдиныйНалоговыйПлатеж Тогда
- РеквизитыПлательщика.КПППлательщика = "0";
+ Если ПустаяСтрока(ДокументОбъект.ИННПлательщика)
+ И Не ПустаяСтрока(РеквизитыПлательщика.ИННПлательщика) Тогда
+ ДокументОбъект.ИННПлательщика = РеквизитыПлательщика.ИННПлательщика;
+ КонецЕсли;
+
+ Если ПустаяСтрока(ДокументОбъект.КПППлательщика)
+ И Не ПустаяСтрока(РеквизитыПлательщика.КПППлательщика) Тогда
+
+ ДействуетПриказ58н = ПлатежиВБюджетКлиентСервер.ДействуетПриказ58н_202604(ДокументОбъект.Дата);
+
+ Если ДействуетПриказ58н
+ И ДокументОбъект.ТипНалога = Справочники.ВидыНалоговВзносов.ЕдиныйНалоговыйПлатеж Тогда
+ РеквизитыПлательщика.КПППлательщика = "0";
+ КонецЕсли;
+
+ ДокументОбъект.КПППлательщика = РеквизитыПлательщика.КПППлательщика;
+
КонецЕсли;
- ДокументОбъект.КПППлательщика = РеквизитыПлательщика.КПППлательщика;
+ Если ПустаяСтрока(ДокументОбъект.ТекстПлательщика)
+ И Не ПустаяСтрока(РеквизитыПлательщика.ТекстПлательщика) Тогда
+ ДокументОбъект.ТекстПлательщика = РеквизитыПлательщика.ТекстПлательщика;
+ КонецЕсли;
КонецЕсли;
- Если ПустаяСтрока(ДокументОбъект.ТекстПлательщика)
- И Не ПустаяСтрока(РеквизитыПлательщика.ТекстПлательщика) Тогда
- ДокументОбъект.ТекстПлательщика = РеквизитыПлательщика.ТекстПлательщика;
- КонецЕсли;
-
ПричинаИсключения = "Запись";
Если ДокументОбъект.Модифицированность() Тогда
@@ -9843,6 +9904,7 @@
| ИНАЧЕ ЕСТЬNULL(ОрганизацииИсторияНаименований.Период, ДАТАВРЕМЯ(1, 1, 1))
| КОНЕЦ КАК НачалоДействия,
| ИсходныеДанные.Ссылка КАК Документ,
+ | ИсходныеДанные.ПеречислениеВБюджет КАК ПеречислениеВБюджет,
| 0 КАК Признак
|ПОМЕСТИТЬ ИсторияЗначенийРеквизитов
|ИЗ
@@ -9875,6 +9937,7 @@
| ИНАЧЕ ЕСТЬNULL(РегистрацииВНалоговомОргане.Период, ДАТАВРЕМЯ(1, 1, 1))
| КОНЕЦ,
| ИсходныеДанные.Ссылка,
+ | ИсходныеДанные.ПеречислениеВБюджет КАК ПеречислениеВБюджет,
| 1
|ИЗ
| ИсходныеДанные КАК ИсходныеДанные
@@ -9896,6 +9959,7 @@
| ТекущиеРеквизитыОрганизации.ИНН,
| ИсходныеДанные.Дата,
| ИсходныеДанные.Ссылка,
+ | ИсходныеДанные.ПеречислениеВБюджет КАК ПеречислениеВБюджет,
| 2
|ИЗ
| ИсходныеДанные КАК ИсходныеДанные
@@ -9920,6 +9984,7 @@
|////////////////////////////////////////////////////////////////////////////////
|ВЫБРАТЬ
| ИсторияЗначенийРеквизитов.Документ КАК Документ,
+ | ИсторияЗначенийРеквизитов.ПеречислениеВБюджет КАК ПеречислениеВБюджет,
| ИсторияЗначенийРеквизитов.ЗначениеРеквизита КАК ЗначениеРеквизита,
| ИсторияЗначенийРеквизитов.Признак КАК Признак
|ИЗ
@@ -9933,17 +9998,18 @@
КонецФункции
-Функция РеквизитыПлательщикаПоДокументу(ВыборкаПоДокументам, Документ, ЭтоПеречислениеВБюджет)
+Функция РеквизитыПлательщикаПоДокументам(ВыборкаПоДокументам)
- Отбор = Новый Структура("Документ", Документ);
+ Результат = Новый Соответствие;
- РеквизитыПлательщика = Новый Структура;
- РеквизитыПлательщика.Вставить("ИННПлательщика", "");
- РеквизитыПлательщика.Вставить("КПППлательщика", "");
- РеквизитыПлательщика.Вставить("ТекстПлательщика", "");
- ВыборкаПоДокументам.Сбросить();
-
- Если ВыборкаПоДокументам.НайтиСледующий(Отбор) Тогда
+ Пока ВыборкаПоДокументам.Следующий() Цикл
+
+ ЭтоПеречислениеВБюджет = Ложь;
+
+ РеквизитыПлательщика = Новый Структура;
+ РеквизитыПлательщика.Вставить("ИННПлательщика", "");
+ РеквизитыПлательщика.Вставить("КПППлательщика", "");
+ РеквизитыПлательщика.Вставить("ТекстПлательщика", "");
ДанныеПлательщика = ВыборкаПоДокументам.Выбрать();
@@ -9957,14 +10023,18 @@
РеквизитыПлательщика.ИННПлательщика = ДанныеПлательщика.ЗначениеРеквизита;
КонецЕсли;
+ ЭтоПеречислениеВБюджет = ДанныеПлательщика.ПеречислениеВБюджет;
+
КонецЦикла;
- КонецЕсли;
+ ОбработатьРеквизитПлательщика(РеквизитыПлательщика.КПППлательщика, ЭтоПеречислениеВБюджет);
+ ОбработатьРеквизитПлательщика(РеквизитыПлательщика.ИННПлательщика, ЭтоПеречислениеВБюджет);
- ОбработатьРеквизитПлательщика(РеквизитыПлательщика.КПППлательщика, ЭтоПеречислениеВБюджет);
- ОбработатьРеквизитПлательщика(РеквизитыПлательщика.ИННПлательщика, ЭтоПеречислениеВБюджет);
+ Результат.Вставить(ВыборкаПоДокументам.Документ, РеквизитыПлательщика);
+
+ КонецЦикла;
- Возврат РеквизитыПлательщика;
+ Возврат Результат;
КонецФункции
diff --git a/src/Documents/СписаниеКодовМаркировкиИСМП/Ext/ManagerModule.bsl b/src/Documents/СписаниеКодовМаркировкиИСМП/Ext/ManagerModule.bsl
index bf7d8a61a..5514e5876 100644
--- a/src/Documents/СписаниеКодовМаркировкиИСМП/Ext/ManagerModule.bsl
+++ b/src/Documents/СписаниеКодовМаркировкиИСМП/Ext/ManagerModule.bsl
@@ -473,7 +473,7 @@
// Возвращает массив дальнейших действий с документом, требующих участия пользователя
//
// Возвращаемое значение:
-// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюИСМП - дальшейшие действия
+// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюИСМП - дальнейшие действия
//
Функция ВсеТребующиеДействия() Экспорт
@@ -490,7 +490,7 @@
// Возвращает массив дальнейших действий с документом, требующих ожидания пользователем
//
// Возвращаемое значение:
-// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюИСМП - дальшейшие действия
+// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюИСМП - дальнейшие действия
//
Функция ВсеТребующиеОжидания() Экспорт
@@ -773,7 +773,7 @@
КонецПроцедуры
-// Обработка данных перехода на конструктор настроек видов продуции
+// Обработка данных перехода на конструктор настроек видов продукции
//
// Параметры:
// Параметры - см. ОбновлениеИнформационнойБазы.ОсновныеПараметрыОтметкиКОбработке
@@ -786,13 +786,13 @@
КонецПроцедуры
-// Дополнтельная обработка данных при переходе на конструктор настроек.
+// Дополнительная обработка данных при переходе на конструктор настроек.
//
// Параметры:
// ДокументОбъект - ДокументОбъект.СписаниеКодовМаркировкиИСМП
// ПроблемыСДанными - Соответствие из КлючИЗначение
// КешКонвертаций - см. ОбновлениеИнформационнойБазыГосИС.КешКонвертацийВидаПродукции
-Процедура ДополнтельнаяОбработкаДанныхПриПереходеНаКонструкторНастроек(ДокументОбъект, ПроблемыСДанными, КешКонвертаций) Экспорт
+Процедура ДополнительнаяОбработкаДанныхПриПереходеНаКонструкторНастроек(ДокументОбъект, ПроблемыСДанными, КешКонвертаций) Экспорт
ЗаполнитьОперациюПриПереходеНаКонструкторНастроек(ДокументОбъект, ПроблемыСДанными, КешКонвертаций);
ЗаполнитьПричинуСписанияПриПереходеНаКонструкторНастроек(ДокументОбъект, ПроблемыСДанными, КешКонвертаций);
diff --git a/src/Documents/СписаниеКодовМаркировкиИСМП/Forms/ФормаДокумента/Ext/Form/Module.bsl b/src/Documents/СписаниеКодовМаркировкиИСМП/Forms/ФормаДокумента/Ext/Form/Module.bsl
index 10e7ca7d3..f82d1c2a1 100644
--- a/src/Documents/СписаниеКодовМаркировкиИСМП/Forms/ФормаДокумента/Ext/Form/Module.bsl
+++ b/src/Documents/СписаниеКодовМаркировкиИСМП/Forms/ФормаДокумента/Ext/Form/Module.bsl
@@ -153,7 +153,7 @@
Или РедактированиеФормыНедоступно
Или Не ПравоИзменения
Или Объект.ОтчетПроизводственнойЛинии
- Или РедактированиеНедоступноПоСтатусуПроверкиИподбора(ЭтотОбъект) Тогда
+ Или РедактированиеНедоступноПоСтатусуПроверкиИПодбора(ЭтотОбъект) Тогда
Возврат;
КонецЕсли;
@@ -654,7 +654,7 @@
Если РедактированиеФормыНедоступно
Или Не ПравоИзменения
- Или РедактированиеНедоступноПоСтатусуПроверкиИподбора(ЭтотОбъект) Тогда
+ Или РедактированиеНедоступноПоСтатусуПроверкиИПодбора(ЭтотОбъект) Тогда
СобытияФормИСМПКлиент.ВыборЭлементаТабличнойЧастиОткрытьФормуЭлемента(ЭтотОбъект, Элемент, Поле);
КонецЕсли;
@@ -1960,7 +1960,7 @@
Если Объект.Товары.Количество() > 0 И ЗадаватьВопрос Тогда
ТекстВопроса = НСтр("ru = 'Данные документа будут перезаполнены. Продолжить?'");
- ОписаниеОповещенияОЗавершении = Новый ОписаниеОповещения("ВопросОПерезаполнениииПоОснованиюПриЗавершении", ЭтотОбъект);
+ ОписаниеОповещенияОЗавершении = Новый ОписаниеОповещения("ВопросОПерезаполненииПоОснованиюПриЗавершении", ЭтотОбъект);
ПоказатьВопрос(ОписаниеОповещенияОЗавершении, ТекстВопроса, РежимДиалогаВопрос.ДаНет);
Иначе
@@ -1972,7 +1972,7 @@
КонецПроцедуры
&НаКлиенте
-Процедура ВопросОПерезаполнениииПоОснованиюПриЗавершении(Результат, Параметры) Экспорт
+Процедура ВопросОПерезаполненииПоОснованиюПриЗавершении(Результат, Параметры) Экспорт
Если Результат = КодВозвратаДиалога.Да Тогда
@@ -2231,7 +2231,7 @@
ЗависимыеОтСтатусаПроверкиИПодбора.Добавить("ТоварыКонтекстноеМенюУдалить");
ОбщегоНазначенияИСКлиентСервер.УстановитьДоступностьЭлементовФормы(Форма, ЗависимыеОтСтатусаПроверкиИПодбора,
- Не (Форма.РедактированиеФормыНеДоступно Или РедактированиеНедоступноПоСтатусуПроверкиИподбора(Форма))
+ Не (Форма.РедактированиеФормыНеДоступно Или РедактированиеНедоступноПоСтатусуПроверкиИПодбора(Форма))
И Не Форма.РежимИсправленияОшибокПослеПередачиКодов);
Форма.Элементы.ТоварыСтатусПроверкиГосИС.Видимость = Не Форма.РедактированиеФормыНеДоступно;
@@ -2405,7 +2405,7 @@
КонецПроцедуры
&НаКлиентеНаСервереБезКонтекста
-Функция РедактированиеНедоступноПоСтатусуПроверкиИподбора(Форма)
+Функция РедактированиеНедоступноПоСтатусуПроверкиИПодбора(Форма)
Если Форма.СтатусПроверкиИПодбора = ПредопределенноеЗначение("Перечисление.СтатусыПроверкиИПодбораИС.Выполняется")
Или Форма.СтатусПроверкиИПодбора = ПредопределенноеЗначение("Перечисление.СтатусыПроверкиИПодбораИС.Завершено") Тогда
diff --git a/src/Documents/СписаниеПартийЗЕРНО/Ext/ManagerModule.bsl b/src/Documents/СписаниеПартийЗЕРНО/Ext/ManagerModule.bsl
index 06467b6f4..86d5d5f34 100644
--- a/src/Documents/СписаниеПартийЗЕРНО/Ext/ManagerModule.bsl
+++ b/src/Documents/СписаниеПартийЗЕРНО/Ext/ManagerModule.bsl
@@ -416,7 +416,7 @@
// Возвращает массив дальнейших действий с документом, требующих участия пользователя
//
// Возвращаемое значение:
-// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюЗЕРНО - дальшейшие действия.
+// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюЗЕРНО - дальнейшие действия.
//
Функция ВсеТребующиеДействия() Экспорт
@@ -432,7 +432,7 @@
// Возвращает массив дальнейших действий с документом, не требующих участия пользователя
//
// Возвращаемое значение:
-// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюЗЕРНО - дальшейшие действия.
+// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюЗЕРНО - дальнейшие действия.
//
Функция ВсеТребующиеОжидания() Экспорт
@@ -597,7 +597,7 @@
КонецПроцедуры
-// Обработка данных перехода на конструктор настроек видов продуции
+// Обработка данных перехода на конструктор настроек видов продукции
//
// Параметры:
// Параметры - см. ОбновлениеИнформационнойБазы.ОсновныеПараметрыОтметкиКОбработке
diff --git a/src/Documents/СписаниеПартийЗЕРНО/Forms/ФормаДокумента/Ext/Form/Module.bsl b/src/Documents/СписаниеПартийЗЕРНО/Forms/ФормаДокумента/Ext/Form/Module.bsl
index 24c9b6934..89b9da57b 100644
--- a/src/Documents/СписаниеПартийЗЕРНО/Forms/ФормаДокумента/Ext/Form/Module.bsl
+++ b/src/Documents/СписаниеПартийЗЕРНО/Forms/ФормаДокумента/Ext/Form/Module.bsl
@@ -949,7 +949,7 @@
Если Объект.Товары.Количество() > 0 Тогда
ТекстВопроса = НСтр("ru = 'Данные документа будут перезаполнены. Продолжить?'");
- ОписаниеОповещенияОЗавершении = Новый ОписаниеОповещения("ВопросОПерезаполнениииПоОснованиюПриЗавершении", ЭтотОбъект);
+ ОписаниеОповещенияОЗавершении = Новый ОписаниеОповещения("ВопросОПерезаполненииПоОснованиюПриЗавершении", ЭтотОбъект);
ПоказатьВопрос(ОписаниеОповещенияОЗавершении, ТекстВопроса, РежимДиалогаВопрос.ДаНет);
Иначе
@@ -961,7 +961,7 @@
КонецПроцедуры
&НаКлиенте
-Процедура ВопросОПерезаполнениииПоОснованиюПриЗавершении(Результат, Параметры) Экспорт
+Процедура ВопросОПерезаполненииПоОснованиюПриЗавершении(Результат, Параметры) Экспорт
Если Результат = КодВозвратаДиалога.Да Тогда
diff --git a/src/Documents/СчетФактураНалоговыйАгент/Ext/ManagerModule.bsl b/src/Documents/СчетФактураНалоговыйАгент/Ext/ManagerModule.bsl
index 21286c077..36c417816 100644
--- a/src/Documents/СчетФактураНалоговыйАгент/Ext/ManagerModule.bsl
+++ b/src/Documents/СчетФактураНалоговыйАгент/Ext/ManagerModule.bsl
@@ -1221,6 +1221,9 @@
|
|СГРУППИРОВАТЬ ПО
| ДокументыПоступления.ОснованиеОплаты
+ |
+ |УПОРЯДОЧИТЬ ПО
+ | Документ
|;
|
|////////////////////////////////////////////////////////////////////////////////
@@ -2191,12 +2194,13 @@
СтрокаРезультата.НДСУпр = МассивНДСУпр[Индекс];
КонецЕсли;
- СтрокаРезультата.ИдентификаторФинЗаписи = Новый УникальныйИдентификатор();
Если Реквизиты.СФПоАренде Тогда
ЗаполнитьЗначенияСвойств(СтрокаРезультата, СтрокаОплаты, "НастройкаХозяйственнойОперации");
- Если ЗначениеЗаполнено(СтрокаПоступления.АналитикаРасходов) Тогда
- СтрокаРезультата.ИдентификаторФинЗаписи = СтрокаПоступления.АналитикаРасходов.УникальныйИдентификатор();
- КонецЕсли;
+ КонецЕсли;
+ Если ЗначениеЗаполнено(СтрокаПоступления.АналитикаРасходов) Тогда
+ СтрокаРезультата.ИдентификаторФинЗаписи = СтрокаПоступления.АналитикаРасходов.УникальныйИдентификатор();
+ Иначе
+ СтрокаРезультата.ИдентификаторФинЗаписи = Новый УникальныйИдентификатор();
КонецЕсли;
Индекс = Индекс + 1;
diff --git a/src/Documents/ТТНВходящаяЕГАИС/Ext/ManagerModule.bsl b/src/Documents/ТТНВходящаяЕГАИС/Ext/ManagerModule.bsl
index 82e6de793..68aba5c02 100644
--- a/src/Documents/ТТНВходящаяЕГАИС/Ext/ManagerModule.bsl
+++ b/src/Documents/ТТНВходящаяЕГАИС/Ext/ManagerModule.bsl
@@ -787,7 +787,7 @@
// Возвращает массив дальнейших действий с документом, требующих участия пользователя
//
// Возвращаемое значение:
-// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюЕГАИС - дальшейшие действия
+// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюЕГАИС - дальнейшие действия
//
Функция ВсеТребующиеДействия() Экспорт
@@ -807,7 +807,7 @@
// Возвращает массив дальнейших действий с документом, не требующих участия пользователя
//
// Возвращаемое значение:
-// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюЕГАИС - дальшейшие действия
+// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюЕГАИС - дальнейшие действия
//
Функция ВсеТребующиеОжидания() Экспорт
@@ -2299,6 +2299,8 @@
ДокументОбъект = ПараметрыОкончанияПроверки.ПроверяемыйДокумент.ПолучитьОбъект();
+ ИзмененныеСтроки = Новый Массив;
+
Товары = ДокументОбъект.Товары;
Для Каждого СтрокаТовары Из Товары Цикл
СтрокаТовары.КоличествоФакт = 0;
@@ -2316,13 +2318,21 @@
НайденныеСтроки = Товары.НайтиСтроки(ПараметрыОтбора);
Для Каждого СтрокаТовары Из НайденныеСтроки Цикл
- ЗаполнитьПоСтроке = Мин(Заполнить, СтрокаТовары.Количество - СтрокаТовары.КоличествоФакт);
- Если ЗаполнитьПоСтроке = 0 Тогда
- Продолжить;
+
+ Если СтрокаТовары.Номенклатура <> СтрокаТаблицы.Номенклатура
+ Или СтрокаТовары.Характеристика <> СтрокаТаблицы.Характеристика
+ Или СтрокаТовары.Серия <> СтрокаТаблицы.Серия Тогда
+ СтрокаТовары.Номенклатура = СтрокаТаблицы.Номенклатура;
+ СтрокаТовары.Характеристика = СтрокаТаблицы.Характеристика;
+ СтрокаТовары.Серия = СтрокаТаблицы.Серия;
+ ИзмененныеСтроки.Добавить(СтрокаТовары);
КонецЕсли;
+
+ ЗаполнитьПоСтроке = Мин(Заполнить, СтрокаТовары.Количество - СтрокаТовары.КоличествоФакт);
СтрокаТовары.КоличествоФакт = СтрокаТовары.КоличествоФакт + ЗаполнитьПоСтроке;
Заполнить = Заполнить - ЗаполнитьПоСтроке;
КонецЦикла;
+
Если Заполнить > 0 И НайденныеСтроки.Количество() Тогда
СтрокаТовары = НайденныеСтроки[0];
СтрокаТовары.КоличествоФакт = СтрокаТовары.КоличествоФакт + Заполнить;
@@ -2330,6 +2340,8 @@
КонецЦикла;
+ ОбработатьСтрокиТабличнойЧасти(ДокументОбъект, ИзмененныеСтроки);
+
ДокументОбъект.АкцизныеМарки.Очистить();
ЗаполнитьАкцизныеМарки(ДокументОбъект, ПараметрыОкончанияПроверки.ДеревоМаркированнойПродукции);
@@ -2362,6 +2374,22 @@
КонецПроцедуры
+Процедура ОбработатьСтрокиТабличнойЧасти(ДокументОбъект, ИзмененныеСтроки)
+
+ ПараметрыУказанияСерий = ПараметрыУказанияСерий(ДокументОбъект);
+ Склад = ОбщегоНазначения.ЗначениеРеквизитаОбъекта(ДокументОбъект.Грузополучатель, "ТорговыйОбъект");
+
+ СтруктураДействий = Новый Структура;
+ СтруктураДействий.Вставить("ПроверитьСериюРассчитатьСтатус", Новый Структура("Склад, ПараметрыУказанияСерий", Склад, ПараметрыУказанияСерий));
+
+ Для Каждого СтрокаТЧ Из ИзмененныеСтроки Цикл
+
+ ИнтеграцияИСПереопределяемый.ОбработатьСтрокуТабличнойЧасти(СтрокаТЧ, СтруктураДействий, ДокументОбъект);
+
+ КонецЦикла;
+
+КонецПроцедуры
+
// Входящие акцизные марки.
//
// Параметры:
diff --git a/src/Documents/ТТНИсходящаяЕГАИС/Ext/ManagerModule.bsl b/src/Documents/ТТНИсходящаяЕГАИС/Ext/ManagerModule.bsl
index 020e235d6..15d22ce47 100644
--- a/src/Documents/ТТНИсходящаяЕГАИС/Ext/ManagerModule.bsl
+++ b/src/Documents/ТТНИсходящаяЕГАИС/Ext/ManagerModule.bsl
@@ -994,7 +994,7 @@
// Возвращает массив дальнейших действий с документом, требующих участия пользователя
//
// Возвращаемое значение:
-// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюЕГАИС - дальшейшие действия
+// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюЕГАИС - дальнейшие действия
//
Функция ВсеТребующиеДействия() Экспорт
@@ -1014,7 +1014,7 @@
// Возвращает массив дальнейших действий с документом, не требующих участия пользователя
//
// Возвращаемое значение:
-// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюЕГАИС - дальшейшие действия
+// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюЕГАИС - дальнейшие действия
//
Функция ВсеТребующиеОжидания() Экспорт
diff --git a/src/Documents/ТТНИсходящаяЕГАИС/Forms/ПредложениеНаВозвратИзРегистра2/Ext/Form/Module.bsl b/src/Documents/ТТНИсходящаяЕГАИС/Forms/ПредложениеНаВозвратИзРегистра2/Ext/Form/Module.bsl
index 29e56767c..458b9746e 100644
--- a/src/Documents/ТТНИсходящаяЕГАИС/Forms/ПредложениеНаВозвратИзРегистра2/Ext/Form/Module.bsl
+++ b/src/Documents/ТТНИсходящаяЕГАИС/Forms/ПредложениеНаВозвратИзРегистра2/Ext/Form/Module.bsl
@@ -15,7 +15,7 @@
ДокументОснование = Параметры.ДокументОснование;
СформироватьТекстДокументаЕГАИС();
-
+
ОбщегоНазначенияСобытияФормИСПереопределяемый.ПриСозданииНаСервере(ЭтотОбъект, Отказ, СтандартнаяОбработка);
КонецПроцедуры
@@ -108,12 +108,12 @@
ДокументыПоОснованию = ИнтеграцияЕГАИСВызовСервера.ДокументыПоОснованию(ДокументОснование);
Данные = ИнтеграцияЕГАИС.ДанныеДокументаЕГАИС(Метаданные.Документы.ВозвратИзРегистра2ЕГАИС, ДокументыПоОснованию, СтатусыОформления);
-
+
ФорматированныеСтроки = Новый Массив;
ФорматированныеСтроки.Добавить(Данные.ТекстНадписи);
ТекстДокументаЕГАИС = Новый ФорматированнаяСтрока(ФорматированныеСтроки);
-
+
КонецПроцедуры
#КонецОбласти
\ No newline at end of file
diff --git a/src/Documents/ТТНИсходящаяЕГАИС/Forms/ФормаДокумента/Ext/Form/Module.bsl b/src/Documents/ТТНИсходящаяЕГАИС/Forms/ФормаДокумента/Ext/Form/Module.bsl
index ac39b9436..d99af145d 100644
--- a/src/Documents/ТТНИсходящаяЕГАИС/Forms/ФормаДокумента/Ext/Form/Module.bsl
+++ b/src/Documents/ТТНИсходящаяЕГАИС/Forms/ФормаДокумента/Ext/Form/Module.bsl
@@ -1,7 +1,7 @@
#Область ОписаниеПеременных
&НаКлиенте
-Перем КэшированныеЗначения; //используется механизмом обработки изменения реквизитов ТЧ
+Перем КэшированныеЗначения; // используется механизмом обработки изменения реквизитов ТЧ
#КонецОбласти
@@ -805,7 +805,7 @@
Если Объект.Товары.Количество() > 0 Тогда
ТекстВопроса = НСтр("ru = 'Табличная часть будет перезаполнена. Продолжить?'");
- ОписаниеОповещенияОЗавершении = Новый ОписаниеОповещения("ВопросОПерезаполнениииПоОснованиюПриЗавершении", ЭтотОбъект);
+ ОписаниеОповещенияОЗавершении = Новый ОписаниеОповещения("ВопросОПерезаполненииПоОснованиюПриЗавершении", ЭтотОбъект);
ПоказатьВопрос(ОписаниеОповещенияОЗавершении, ТекстВопроса, РежимДиалогаВопрос.ДаНет);
Иначе
@@ -1873,7 +1873,7 @@
Модифицированность = Истина;
КонецЕсли;
- Если ЗначениеЗаполнено(Объект.ДокументОснование)Тогда
+ Если ЗначениеЗаполнено(Объект.ДокументОснование) Тогда
Если ТипЗнч(ДополнительныеПараметры) <> Тип("Структура")
Или ДополнительныеПараметры.Свойство("ОбработатьПерезаполнение") Тогда
ПерезаполнитьПоОснованиюСервер();
@@ -1885,7 +1885,7 @@
КонецПроцедуры
&НаКлиенте
-Процедура ВопросОПерезаполнениииПоОснованиюПриЗавершении(Результат, Параметры) Экспорт
+Процедура ВопросОПерезаполненииПоОснованиюПриЗавершении(Результат, Параметры) Экспорт
Если Результат = КодВозвратаДиалога.Да Тогда
diff --git a/src/Documents/ТелефонныйЗвонок/Forms/сфпФормаДокумента/Ext/Form.xml b/src/Documents/ТелефонныйЗвонок/Forms/сфпФормаДокумента/Ext/Form.xml
index fdfb39199..273581a34 100644
--- a/src/Documents/ТелефонныйЗвонок/Forms/сфпФормаДокумента/Ext/Form.xml
+++ b/src/Documents/ТелефонныйЗвонок/Forms/сфпФормаДокумента/Ext/Form.xml
@@ -693,6 +693,38 @@
+
+
+
+ ru
+ Группа смещение времени
+
+
+
+
+ ru
+ Группа смещение времени
+
+
+ AlwaysHorizontal
+ None
+ false
+
+
+
+ 7
+
+
+
+
+ 25
+ false
+ style:CRM_ОсновнойГолубой
+
+
+
+
+
diff --git a/src/Documents/ТелефонныйЗвонок/Forms/сфпФормаДокумента/Ext/Form/Module.bsl b/src/Documents/ТелефонныйЗвонок/Forms/сфпФормаДокумента/Ext/Form/Module.bsl
index 012ceb445..995b6157c 100644
--- a/src/Documents/ТелефонныйЗвонок/Forms/сфпФормаДокумента/Ext/Form/Module.bsl
+++ b/src/Documents/ТелефонныйЗвонок/Forms/сфпФормаДокумента/Ext/Form/Module.bsl
@@ -43,7 +43,7 @@
Если Параметры.Свойство("СпозиционироватьсяНаРеквизите")
И ЗначениеЗаполнено(Параметры.СпозиционироватьсяНаРеквизите) Тогда
СпозиционироватьсяНаРеквизите = Параметры.СпозиционироватьсяНаРеквизите;
- КонецЕсли;
+ КонецЕсли;
// -CRM
Если Объект.Ссылка.Пустая() Тогда
@@ -226,6 +226,8 @@
CRM_РаботаСЯзыковымиМоделямиСервер.ПриСозданииНаСервере(ЭтотОбъект, "ГруппаАссистент");
+ СформироватьСмещениеВремениТекущегоАбонента();
+
CRM_ОбщегоНазначенияСервер.ЗакончитьЗамерВремениСозданияФормы(ЭтотОбъект, ВремяНачалаЗамера);
// -CRM
@@ -1472,14 +1474,15 @@
сфпЗаполнитьВладельцаКонтакта();
УстановитьВидимостьКонтакта();
УстановитьЗаголовокФормы();
-
+
+ СформироватьСмещениеВремениТекущегоАбонента();
СформироватьОписаниеКаналаИсточника();
ДоступностьПервичногоИнтереса();
ЗаполнитьГруппуИнтереса();
Модифицированность = Истина;
-
+
КонецПроцедуры
&НаКлиенте
@@ -1725,7 +1728,7 @@
МассивЭлементов.Добавить(Элементы.ПричинаОтклонения);
МассивЭлементов.Добавить(Элементы.КомментарийСостоянияЛида);
МассивЭлементов.Добавить(Элементы.ДекорацияЗаголовокСостояниеЛида);
- МассивЭлементов.Добавить(Элементы.ДекорацияСостояниеЛида);
+ МассивЭлементов.Добавить(Элементы.ДекорацияСостояниеЛида);
МассивЭлементов.Добавить(Элементы.СостояниеЛида);
МассивЭлементов.Добавить(Элементы.ФормаОтклонитьОбращение);
МассивЭлементов.Добавить(Элементы.CRM_ОтметитьОбработанным);
@@ -2139,6 +2142,21 @@
КонецПроцедуры
+&НаСервере
+Процедура СформироватьСмещениеВремениТекущегоАбонента()
+
+ Если ТипЗнч(сфпВладелец) = Тип("СправочникСсылка.Партнеры") Тогда
+ CRM_КлиентыСервер.СформироватьСмещениеВремениТекущегоАбонента(ЭтотОбъект, сфпВладелец);
+ Элементы.ГруппаСмещениеВремени.Видимость = Элементы.ДекорацияСмещениеВремени.Видимость;
+ ИначеЕсли ТипЗнч(Объект.АбонентКонтакт) = Тип("СправочникСсылка.CRM_ПотенциальныеКлиенты") Тогда
+ CRM_КлиентыСервер.СформироватьСмещениеВремениТекущегоАбонента(ЭтотОбъект, , сфпВладелец);
+ Элементы.ГруппаСмещениеВремени.Видимость = Элементы.ДекорацияСмещениеВремени.Видимость;
+ Иначе
+ Элементы.ГруппаСмещениеВремени.Видимость = Ложь;
+ КонецЕсли;
+
+КонецПроцедуры
+
#КонецОбласти
#Область РаспознаваниеРечи
diff --git a/src/Documents/ТранспортнаяНакладнаяЕГАИС/Ext/ManagerModule.bsl b/src/Documents/ТранспортнаяНакладнаяЕГАИС/Ext/ManagerModule.bsl
index dad239d2d..8cd5ebc5c 100644
--- a/src/Documents/ТранспортнаяНакладнаяЕГАИС/Ext/ManagerModule.bsl
+++ b/src/Documents/ТранспортнаяНакладнаяЕГАИС/Ext/ManagerModule.bsl
@@ -381,7 +381,7 @@
// Возвращает массив дальнейших действий с документом, требующих участия пользователя
//
// Возвращаемое значение:
-// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюЕГАИС - дальшейшие действия
+// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюЕГАИС - дальнейшие действия
//
Функция ВсеТребующиеДействия() Экспорт
@@ -397,7 +397,7 @@
// Возвращает массив дальнейших действий с документом, не требующих участия пользователя
//
// Возвращаемое значение:
-// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюЕГАИС - дальшейшие действия
+// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюЕГАИС - дальнейшие действия
//
Функция ВсеТребующиеОжидания() Экспорт
diff --git a/src/Documents/УведомлениеОПланируемомИмпортеЕГАИС/Ext/ManagerModule.bsl b/src/Documents/УведомлениеОПланируемомИмпортеЕГАИС/Ext/ManagerModule.bsl
index c17d71aff..9942814bd 100644
--- a/src/Documents/УведомлениеОПланируемомИмпортеЕГАИС/Ext/ManagerModule.bsl
+++ b/src/Documents/УведомлениеОПланируемомИмпортеЕГАИС/Ext/ManagerModule.bsl
@@ -389,7 +389,7 @@
// Возвращает массив дальнейших действий с документом, требующих участия пользователя
//
// Возвращаемое значение:
-// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюЕГАИС - дальшейшие действия
+// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюЕГАИС - дальнейшие действия
//
Функция ВсеТребующиеДействия() Экспорт
@@ -405,7 +405,7 @@
// Возвращает массив дальнейших действий с документом, не требующих участия пользователя
//
// Возвращаемое значение:
-// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюЕГАИС - дальшейшие действия
+// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюЕГАИС - дальнейшие действия
//
Функция ВсеТребующиеОжидания() Экспорт
diff --git a/src/Documents/УведомлениеОПланируемомИмпортеЕГАИС/Forms/ФормаДокумента/Ext/Form/Module.bsl b/src/Documents/УведомлениеОПланируемомИмпортеЕГАИС/Forms/ФормаДокумента/Ext/Form/Module.bsl
index 75addd039..e022d72cd 100644
--- a/src/Documents/УведомлениеОПланируемомИмпортеЕГАИС/Forms/ФормаДокумента/Ext/Form/Module.bsl
+++ b/src/Documents/УведомлениеОПланируемомИмпортеЕГАИС/Forms/ФормаДокумента/Ext/Form/Module.bsl
@@ -510,7 +510,7 @@
Если Объект.Товары.Количество() > 0 Тогда
ТекстВопроса = НСтр("ru = 'Табличная часть будет перезаполнена. Продолжить?'");
- ОписаниеОповещенияОЗавершении = Новый ОписаниеОповещения("ВопросОПерезаполнениииПоОснованиюПриЗавершении", ЭтотОбъект);
+ ОписаниеОповещенияОЗавершении = Новый ОписаниеОповещения("ВопросОПерезаполненииПоОснованиюПриЗавершении", ЭтотОбъект);
ПоказатьВопрос(ОписаниеОповещенияОЗавершении, ТекстВопроса, РежимДиалогаВопрос.ДаНет);
Иначе
@@ -1217,7 +1217,7 @@
КонецПроцедуры
&НаКлиенте
-Процедура ВопросОПерезаполнениииПоОснованиюПриЗавершении(Результат, Параметры) Экспорт
+Процедура ВопросОПерезаполненииПоОснованиюПриЗавершении(Результат, Параметры) Экспорт
Если Результат = КодВозвратаДиалога.Да Тогда
diff --git a/src/Documents/УведомлениеОбОстаткахПрослеживаемыхТоваров/Forms/ФормаДокумента/Ext/Form/Module.bsl b/src/Documents/УведомлениеОбОстаткахПрослеживаемыхТоваров/Forms/ФормаДокумента/Ext/Form/Module.bsl
index 6fbef3444..9548b5adb 100644
--- a/src/Documents/УведомлениеОбОстаткахПрослеживаемыхТоваров/Forms/ФормаДокумента/Ext/Form/Module.bsl
+++ b/src/Documents/УведомлениеОбОстаткахПрослеживаемыхТоваров/Forms/ФормаДокумента/Ext/Form/Module.bsl
@@ -278,7 +278,7 @@
Если Поле.Имя = "ТоварыНомерГТД" Тогда
ПоказатьЗначение(,ТекущаяСтрока.НомерГТД);
ИначеЕсли Поле.Имя = "ТоварыАналитикаУчетаНоменклатуры" Тогда
- Номенклатура = ИнтеграцияИСВызовСервера.ЗначениеРеквизитаОбъекта(ТекущаяСтрока.АналитикаУчетаНоменклатуры,"Номенклатура");
+ Номенклатура = ОбщегоНазначенияУТВызовСервера.ЗначениеРеквизитаОбъекта(ТекущаяСтрока.АналитикаУчетаНоменклатуры,"Номенклатура");
ПоказатьЗначение(,Номенклатура);
КонецЕсли;
diff --git a/src/Documents/УстановкаЦенНоменклатуры/Forms/ФормаСписка/Ext/Form.xml b/src/Documents/УстановкаЦенНоменклатуры/Forms/ФормаСписка/Ext/Form.xml
index 7e75f762b..28e7cf4e8 100644
--- a/src/Documents/УстановкаЦенНоменклатуры/Forms/ФормаСписка/Ext/Form.xml
+++ b/src/Documents/УстановкаЦенНоменклатуры/Forms/ФормаСписка/Ext/Form.xml
@@ -39,6 +39,19 @@
ПриЗакрытии
+
+ 70
+ false
+ style:ПросроченныеДанныеЦвет
+
+
+ ru
+ Информирование об удалении устаревшей функциональности
+
+
+
+
+
diff --git a/src/Documents/УстановкаЦенНоменклатуры/Forms/ФормаСписка/Ext/Form/Module.bsl b/src/Documents/УстановкаЦенНоменклатуры/Forms/ФормаСписка/Ext/Form/Module.bsl
index a7722c332..12a5a7b70 100644
--- a/src/Documents/УстановкаЦенНоменклатуры/Forms/ФормаСписка/Ext/Form/Module.bsl
+++ b/src/Documents/УстановкаЦенНоменклатуры/Forms/ФормаСписка/Ext/Form/Module.bsl
@@ -50,6 +50,8 @@
ВерсионированиеОбъектов.ПриСозданииНаСервере(ЭтотОбъект);
// Конец СтандартныеПодсистемы.ВерсионированиеОбъектов
+ ЦенообразованиеКлиентСервер.УстановитьСвойстваДекорацииИнформированиеОбУдаленииЦенообразованияВерсии20(Элементы);
+
КонецПроцедуры
&НаКлиенте
diff --git a/src/Documents/УточнениеСведенийОКодахМаркировкиИСМП/Ext/ManagerModule.bsl b/src/Documents/УточнениеСведенийОКодахМаркировкиИСМП/Ext/ManagerModule.bsl
index 81e89bf26..fd0428351 100644
--- a/src/Documents/УточнениеСведенийОКодахМаркировкиИСМП/Ext/ManagerModule.bsl
+++ b/src/Documents/УточнениеСведенийОКодахМаркировкиИСМП/Ext/ManagerModule.bsl
@@ -443,7 +443,7 @@
// Возвращает массив дальнейших действий с документом, требующих участия пользователя
//
// Возвращаемое значение:
-// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюИСМП - дальшейшие действия
+// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюИСМП - дальнейшие действия
//
Функция ВсеТребующиеДействия() Экспорт
@@ -460,7 +460,7 @@
// Возвращает массив дальнейших действий с документом, требующих ожидания пользователем
//
// Возвращаемое значение:
-// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюИСМП - дальшейшие действия
+// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюИСМП - дальнейшие действия
//
Функция ВсеТребующиеОжидания() Экспорт
@@ -740,7 +740,7 @@
КонецПроцедуры
-// Обработка данных перехода на конструктор настроек видов продуции
+// Обработка данных перехода на конструктор настроек видов продукции
//
// Параметры:
// Параметры - см. ОбновлениеИнформационнойБазы.ОсновныеПараметрыОтметкиКОбработке
diff --git a/src/Documents/УточнениеСведенийОКодахМаркировкиИСМП/Forms/ФормаДокумента/Ext/Form/Module.bsl b/src/Documents/УточнениеСведенийОКодахМаркировкиИСМП/Forms/ФормаДокумента/Ext/Form/Module.bsl
index 158ff2b38..0a98c21d3 100644
--- a/src/Documents/УточнениеСведенийОКодахМаркировкиИСМП/Forms/ФормаДокумента/Ext/Form/Module.bsl
+++ b/src/Documents/УточнениеСведенийОКодахМаркировкиИСМП/Forms/ФормаДокумента/Ext/Form/Module.bsl
@@ -1329,7 +1329,7 @@
ОбщегоНазначенияИСКлиентСервер.УстановитьДоступностьЭлементовФормы(Форма,
ЗависимыеОтСтатусаПроверкиИПодбора,
- Не (Форма.РедактированиеФормыНеДоступно Или РедактированиеНедоступноПоСтатусуПроверкиИподбора(Форма)));
+ Не (Форма.РедактированиеФормыНеДоступно Или РедактированиеНедоступноПоСтатусуПроверкиИПодбора(Форма)));
Элементы.ТоварыСтатусПроверкиГосИС.Видимость = Не Форма.РедактированиеФормыНеДоступно;
@@ -2387,7 +2387,7 @@
Если Объект.Товары.Количество() > 0 И ЗадаватьВопрос Тогда
ТекстВопроса = НСтр("ru = 'Данные документа будут перезаполнены. Продолжить?'");
- ОписаниеОповещенияОЗавершении = Новый ОписаниеОповещения("ВопросОПерезаполнениииПоОснованиюПриЗавершении", ЭтотОбъект);
+ ОписаниеОповещенияОЗавершении = Новый ОписаниеОповещения("ВопросОПерезаполненииПоОснованиюПриЗавершении", ЭтотОбъект);
ПоказатьВопрос(ОписаниеОповещенияОЗавершении, ТекстВопроса, РежимДиалогаВопрос.ДаНет);
Иначе
@@ -2399,7 +2399,7 @@
КонецПроцедуры
&НаКлиенте
-Процедура ВопросОПерезаполнениииПоОснованиюПриЗавершении(Результат, Параметры) Экспорт
+Процедура ВопросОПерезаполненииПоОснованиюПриЗавершении(Результат, Параметры) Экспорт
Если Результат = КодВозвратаДиалога.Да Тогда
@@ -2424,7 +2424,7 @@
КонецПроцедуры
&НаКлиентеНаСервереБезКонтекста
-Функция РедактированиеНедоступноПоСтатусуПроверкиИподбора(Форма)
+Функция РедактированиеНедоступноПоСтатусуПроверкиИПодбора(Форма)
Если Форма.СтатусПроверкиИПодбора = ПредопределенноеЗначение("Перечисление.СтатусыПроверкиИПодбораИС.Выполняется")
Или Форма.СтатусПроверкиИПодбора = ПредопределенноеЗначение("Перечисление.СтатусыПроверкиИПодбораИС.Завершено") Тогда
diff --git a/src/Documents/ФормированиеПартийЗЕРНО/Ext/ManagerModule.bsl b/src/Documents/ФормированиеПартийЗЕРНО/Ext/ManagerModule.bsl
index 1156cd79c..f6dbf7f9c 100644
--- a/src/Documents/ФормированиеПартийЗЕРНО/Ext/ManagerModule.bsl
+++ b/src/Documents/ФормированиеПартийЗЕРНО/Ext/ManagerModule.bsl
@@ -454,7 +454,7 @@
// Возвращает массив дальнейших действий с документом, требующих участия пользователя
//
// Возвращаемое значение:
-// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюЗЕРНО - дальшейшие действия.
+// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюЗЕРНО - дальнейшие действия.
//
Функция ВсеТребующиеДействия() Экспорт
@@ -470,7 +470,7 @@
// Возвращает массив дальнейших действий с документом, не требующих участия пользователя
//
// Возвращаемое значение:
-// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюЗЕРНО - дальшейшие действия.
+// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюЗЕРНО - дальнейшие действия.
//
Функция ВсеТребующиеОжидания() Экспорт
@@ -638,7 +638,7 @@
КонецПроцедуры
-// Обработка данных перехода на конструктор настроек видов продуции
+// Обработка данных перехода на конструктор настроек видов продукции
//
// Параметры:
// Параметры - см. ОбновлениеИнформационнойБазы.ОсновныеПараметрыОтметкиКОбработке
diff --git a/src/Documents/ФормированиеПартийЗЕРНО/Forms/ФормаДокумента/Ext/Form/Module.bsl b/src/Documents/ФормированиеПартийЗЕРНО/Forms/ФормаДокумента/Ext/Form/Module.bsl
index 88019cb2d..d4a486331 100644
--- a/src/Documents/ФормированиеПартийЗЕРНО/Forms/ФормаДокумента/Ext/Form/Module.bsl
+++ b/src/Documents/ФормированиеПартийЗЕРНО/Forms/ФормаДокумента/Ext/Form/Module.bsl
@@ -2661,7 +2661,7 @@
Если Объект.Товары.Количество() > 0 Тогда
ТекстВопроса = НСтр("ru = 'Данные документа будут перезаполнены. Продолжить?'");
- ОписаниеОповещенияОЗавершении = Новый ОписаниеОповещения("ВопросОПерезаполнениииПоОснованиюПриЗавершении", ЭтотОбъект);
+ ОписаниеОповещенияОЗавершении = Новый ОписаниеОповещения("ВопросОПерезаполненииПоОснованиюПриЗавершении", ЭтотОбъект);
ПоказатьВопрос(ОписаниеОповещенияОЗавершении, ТекстВопроса, РежимДиалогаВопрос.ДаНет);
Иначе
@@ -2673,7 +2673,7 @@
КонецПроцедуры
&НаКлиенте
-Процедура ВопросОПерезаполнениииПоОснованиюПриЗавершении(Результат, Параметры) Экспорт
+Процедура ВопросОПерезаполненииПоОснованиюПриЗавершении(Результат, Параметры) Экспорт
Если Результат = КодВозвратаДиалога.Да Тогда
diff --git a/src/Documents/ФормированиеПартийЗЕРНО/Forms/ФормаСпискаДокументов/Ext/Form/Module.bsl b/src/Documents/ФормированиеПартийЗЕРНО/Forms/ФормаСпискаДокументов/Ext/Form/Module.bsl
index cba4b5494..5ff6bf23c 100644
--- a/src/Documents/ФормированиеПартийЗЕРНО/Forms/ФормаСпискаДокументов/Ext/Form/Module.bsl
+++ b/src/Documents/ФормированиеПартийЗЕРНО/Forms/ФормаСпискаДокументов/Ext/Form/Module.bsl
@@ -714,8 +714,8 @@
КонецЕсли;
ПерваяЗаписьОбработана = Ложь;
-
- РеквизитыИсследований = ОбщегоНазначенияИСВызовСервера.ЗначенияРеквизитовОбъектов(ВыделенныеСтроки, "Товаропроизводитель");
+
+ РеквизитыИсследований = ТоваропроизводительДокументов(ВыделенныеСтроки);
Для Каждого ВыделеннаяСтрока Из ВыделенныеСтроки Цикл
ТоваропроизводительСтроки = РеквизитыИсследований[ВыделеннаяСтрока].Товаропроизводитель;
@@ -735,6 +735,11 @@
КонецФункции
+&НаСервереБезКонтекста
+Функция ТоваропроизводительДокументов(СсылкиНаДокументы)
+ Возврат ОбщегоНазначения.ЗначенияРеквизитовОбъектов(СсылкиНаДокументы, "Товаропроизводитель");
+КонецФункции
+
#КонецОбласти
#КонецОбласти
\ No newline at end of file
diff --git a/src/Documents/ФормированиеПартийИзДругихПартийЗЕРНО/Ext/ManagerModule.bsl b/src/Documents/ФормированиеПартийИзДругихПартийЗЕРНО/Ext/ManagerModule.bsl
index 3217cc911..70701fdae 100644
--- a/src/Documents/ФормированиеПартийИзДругихПартийЗЕРНО/Ext/ManagerModule.bsl
+++ b/src/Documents/ФормированиеПартийИзДругихПартийЗЕРНО/Ext/ManagerModule.bsl
@@ -414,7 +414,7 @@
// Возвращает массив дальнейших действий с документом, требующих участия пользователя
//
// Возвращаемое значение:
-// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюЗЕРНО - дальшейшие действия.
+// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюЗЕРНО - дальнейшие действия.
//
Функция ВсеТребующиеДействия() Экспорт
@@ -430,7 +430,7 @@
// Возвращает массив дальнейших действий с документом, не требующих участия пользователя
//
// Возвращаемое значение:
-// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюЗЕРНО - дальшейшие действия.
+// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюЗЕРНО - дальнейшие действия.
//
Функция ВсеТребующиеОжидания() Экспорт
@@ -589,7 +589,7 @@
КонецПроцедуры
-// Обработка данных перехода на конструктор настроек видов продуции
+// Обработка данных перехода на конструктор настроек видов продукции
//
// Параметры:
// Параметры - см. ОбновлениеИнформационнойБазы.ОсновныеПараметрыОтметкиКОбработке
diff --git a/src/Documents/ФормированиеПартийПриПроизводствеЗЕРНО/Ext/ManagerModule.bsl b/src/Documents/ФормированиеПартийПриПроизводствеЗЕРНО/Ext/ManagerModule.bsl
index ab4e10dc2..5cfc57d6f 100644
--- a/src/Documents/ФормированиеПартийПриПроизводствеЗЕРНО/Ext/ManagerModule.bsl
+++ b/src/Documents/ФормированиеПартийПриПроизводствеЗЕРНО/Ext/ManagerModule.bsl
@@ -407,7 +407,7 @@
// Возвращает массив дальнейших действий с документом, требующих участия пользователя
//
// Возвращаемое значение:
-// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюЗЕРНО - дальшейшие действия.
+// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюЗЕРНО - дальнейшие действия.
//
Функция ВсеТребующиеДействия() Экспорт
@@ -423,7 +423,7 @@
// Возвращает массив дальнейших действий с документом, не требующих участия пользователя
//
// Возвращаемое значение:
-// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюЗЕРНО - дальшейшие действия.
+// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюЗЕРНО - дальнейшие действия.
//
Функция ВсеТребующиеОжидания() Экспорт
diff --git a/src/Documents/ЧекЕГАИС/Ext/ManagerModule.bsl b/src/Documents/ЧекЕГАИС/Ext/ManagerModule.bsl
index 5d735f360..35810253a 100644
--- a/src/Documents/ЧекЕГАИС/Ext/ManagerModule.bsl
+++ b/src/Documents/ЧекЕГАИС/Ext/ManagerModule.bsl
@@ -461,7 +461,7 @@
// Возвращает массив дальнейших действий по взаимодействию ЕГАИС действий.
//
// Возвращаемое значение:
-// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюЕГАИС - дальшейшие действия
+// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюЕГАИС - дальнейшие действия
//
Функция ВсеТребующиеДействия() Экспорт
diff --git a/src/Documents/ЧекЕГАИС/Forms/ФормаДокумента/Ext/Form/Module.bsl b/src/Documents/ЧекЕГАИС/Forms/ФормаДокумента/Ext/Form/Module.bsl
index f9d60f856..a8ae16604 100644
--- a/src/Documents/ЧекЕГАИС/Forms/ФормаДокумента/Ext/Form/Module.bsl
+++ b/src/Documents/ЧекЕГАИС/Forms/ФормаДокумента/Ext/Form/Module.bsl
@@ -664,7 +664,7 @@
Если Объект.Товары.Количество() > 0 Тогда
ТекстВопроса = НСтр("ru = 'Табличная часть будет перезаполнена. Продолжить?'");
- ОписаниеОповещенияОЗавершении = Новый ОписаниеОповещения("ВопросОПерезаполнениииПоОснованиюПриЗавершении", ЭтотОбъект);
+ ОписаниеОповещенияОЗавершении = Новый ОписаниеОповещения("ВопросОПерезаполненииПоОснованиюПриЗавершении", ЭтотОбъект);
ПоказатьВопрос(ОписаниеОповещенияОЗавершении, ТекстВопроса, РежимДиалогаВопрос.ДаНет);
Иначе
@@ -1428,7 +1428,7 @@
КонецПроцедуры
&НаКлиенте
-Процедура ВопросОПерезаполнениииПоОснованиюПриЗавершении(Результат, Параметры) Экспорт
+Процедура ВопросОПерезаполненииПоОснованиюПриЗавершении(Результат, Параметры) Экспорт
Если Результат = КодВозвратаДиалога.Да Тогда
diff --git a/src/Documents/ЧекЕГАИСВозврат/Ext/ManagerModule.bsl b/src/Documents/ЧекЕГАИСВозврат/Ext/ManagerModule.bsl
index ac4aa585a..ecdcbc3ec 100644
--- a/src/Documents/ЧекЕГАИСВозврат/Ext/ManagerModule.bsl
+++ b/src/Documents/ЧекЕГАИСВозврат/Ext/ManagerModule.bsl
@@ -255,7 +255,7 @@
// Возвращает массив дальнейших действий по взаимодействию ЕГАИС действий.
//
// Возвращаемое значение:
-// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюЕГАИС - дальшейшие действия
+// Массив из ПеречислениеСсылка.ДальнейшиеДействияПоВзаимодействиюЕГАИС - дальнейшие действия
//
Функция ВсеТребующиеДействия() Экспорт
diff --git a/src/Documents/ЧекЕГАИСВозврат/Forms/ФормаДокумента/Ext/Form/Module.bsl b/src/Documents/ЧекЕГАИСВозврат/Forms/ФормаДокумента/Ext/Form/Module.bsl
index c96bdaa5e..1a38ddce6 100644
--- a/src/Documents/ЧекЕГАИСВозврат/Forms/ФормаДокумента/Ext/Form/Module.bsl
+++ b/src/Documents/ЧекЕГАИСВозврат/Forms/ФормаДокумента/Ext/Form/Module.bsl
@@ -669,7 +669,7 @@
Если Объект.Товары.Количество() > 0 Тогда
ТекстВопроса = НСтр("ru = 'Табличная часть будет перезаполнена. Продолжить?'");
- ОписаниеОповещенияОЗавершении = Новый ОписаниеОповещения("ВопросОПерезаполнениииПоОснованиюПриЗавершении", ЭтотОбъект);
+ ОписаниеОповещенияОЗавершении = Новый ОписаниеОповещения("ВопросОПерезаполненииПоОснованиюПриЗавершении", ЭтотОбъект);
ПоказатьВопрос(ОписаниеОповещенияОЗавершении, ТекстВопроса, РежимДиалогаВопрос.ДаНет);
Иначе
@@ -1384,7 +1384,7 @@
КонецПроцедуры
&НаКлиенте
-Процедура ВопросОПерезаполнениииПоОснованиюПриЗавершении(Результат, Параметры) Экспорт
+Процедура ВопросОПерезаполненииПоОснованиюПриЗавершении(Результат, Параметры) Экспорт
Если Результат = КодВозвратаДиалога.Да Тогда
diff --git a/src/Documents/ЧекККМ/Forms/ФормаОплатыЭСФСС/Ext/Form/Module.bsl b/src/Documents/ЧекККМ/Forms/ФормаОплатыЭСФСС/Ext/Form/Module.bsl
index ba6b68db0..c95d245df 100644
--- a/src/Documents/ЧекККМ/Forms/ФормаОплатыЭСФСС/Ext/Form/Module.bsl
+++ b/src/Documents/ЧекККМ/Forms/ФормаОплатыЭСФСС/Ext/Form/Module.bsl
@@ -1459,6 +1459,8 @@
ВыполнитьОбработкуОповещения(
Новый ОписаниеОповещения("ОтменитьОплату", ВладелецФормы, ДополнительныеПараметры),
Истина);
+
+ ПолучитьОбновленныеДанныеПоТоварарамФСС();
ИначеЕсли ОтветНаВопрос = "ЗакрытьФорму" Тогда
diff --git a/src/Documents/ЭлектроннаяТранспортнаяНакладная/Forms/ОсновнаяФорма/Ext/Form.xml b/src/Documents/ЭлектроннаяТранспортнаяНакладная/Forms/ОсновнаяФорма/Ext/Form.xml
index b78929bdb..b25ca4293 100644
--- a/src/Documents/ЭлектроннаяТранспортнаяНакладная/Forms/ОсновнаяФорма/Ext/Form.xml
+++ b/src/Documents/ЭлектроннаяТранспортнаяНакладная/Forms/ОсновнаяФорма/Ext/Form.xml
@@ -2044,7 +2044,7 @@
ru
- Статус грузоотправителя (грузоотправитель является / не является экспедитором)
+ Автоматическая отправка QR-кода водителям на электронную почту
Auto
diff --git a/src/Documents/ЭлектроннаяТранспортнаяНакладная/Forms/ОсновнаяФорма/Ext/Form/Module.bsl b/src/Documents/ЭлектроннаяТранспортнаяНакладная/Forms/ОсновнаяФорма/Ext/Form/Module.bsl
index 942160404..336562068 100644
--- a/src/Documents/ЭлектроннаяТранспортнаяНакладная/Forms/ОсновнаяФорма/Ext/Form/Module.bsl
+++ b/src/Documents/ЭлектроннаяТранспортнаяНакладная/Forms/ОсновнаяФорма/Ext/Form/Module.bsl
@@ -874,11 +874,6 @@
КонецПроцедуры
-
-
-
-
-
&НаСервере
Процедура СкопироватьИныхПолучателейИзТитулаГрузоотправителя()
@@ -1237,6 +1232,14 @@
Элементы.КартинкаОпасныйГруз.Видимость = ОбменСГИСЭПДКлиентСервер.ПолучитьКоличествоСтрокТаблицыИзСтруктурыФормы(ЭтотОбъект, "ТитулГрузоотправителяСведенияОбОпасныхГрузах") > 0;
+ Объект.ЭтоКонтейнернаяПеревозка = ОбменСГИСЭПДКлиентСервер.ПолучитьЗначениеРеквизитаИзСтруктурыФормы(ЭтотОбъект, "ЭтоКонтейнернаяПеревозка", Ложь);
+
+ ПараметрыОповещения = Новый Структура;
+ ПараметрыОповещения.Вставить("УникальныйИдентификаторОбновляемойФормы", ЭтотОбъект.УникальныйИдентификатор);
+ ПараметрыОповещения.Вставить("ИмяКнопки", "ЗаполнитьТитулГрузоотправителяСопроводительныеДокументы");
+ ПараметрыОповещения.Вставить("ИдентификаторСтроки", Неопределено);
+ ИзменитьОформлениеКнопок(Новый ФиксированнаяСтруктура(ПараметрыОповещения));
+
КонецПроцедуры
&НаКлиенте
diff --git a/src/Documents/ЭлектроннаяТранспортнаяНакладная/Forms/ТитулГрузоотправителяСведенияОПереадресовке/Ext/Form.xml b/src/Documents/ЭлектроннаяТранспортнаяНакладная/Forms/ТитулГрузоотправителяСведенияОПереадресовке/Ext/Form.xml
index 10f0578ff..f616cb87e 100644
--- a/src/Documents/ЭлектроннаяТранспортнаяНакладная/Forms/ТитулГрузоотправителяСведенияОПереадресовке/Ext/Form.xml
+++ b/src/Documents/ЭлектроннаяТранспортнаяНакладная/Forms/ТитулГрузоотправителяСведенияОПереадресовке/Ext/Form.xml
@@ -123,6 +123,9 @@
+
+ ТитулГрузоотправителяЛицоИмеющееПолномочияПереадресовкиПриИзменении
+
diff --git a/src/Documents/ЭлектроннаяТранспортнаяНакладная/Forms/ТитулГрузоотправителяСведенияОПереадресовке/Ext/Form/Module.bsl b/src/Documents/ЭлектроннаяТранспортнаяНакладная/Forms/ТитулГрузоотправителяСведенияОПереадресовке/Ext/Form/Module.bsl
index f7f906e26..314f17ec6 100644
--- a/src/Documents/ЭлектроннаяТранспортнаяНакладная/Forms/ТитулГрузоотправителяСведенияОПереадресовке/Ext/Form/Module.bsl
+++ b/src/Documents/ЭлектроннаяТранспортнаяНакладная/Forms/ТитулГрузоотправителяСведенияОПереадресовке/Ext/Form/Module.bsl
@@ -35,6 +35,14 @@
КонецФункции
+&НаКлиенте
+Процедура ТитулГрузоотправителяЛицоИмеющееПолномочияПереадресовкиПриИзменении(Элемент)
+
+ ИзменитьОформлениеКнопок(Новый Структура ("ИмяКнопки, ИдентификаторСтроки",
+ "ЗаполнитьТитулГрузоотправителяПолномочияПереадресовки", Неопределено));
+
+КонецПроцедуры
+
&НаКлиенте
Процедура ЗаполнитьТитулГрузоотправителяПолномочияПереадресовки(Команда)
@@ -105,19 +113,15 @@
ОбменСГИСЭПДКлиент.ТаблицаПриНачалеРедактирования(Элемент, ЭтотОбъект, НоваяСтрока, Копирование);
-
КонецПроцедуры
&НаКлиенте
Процедура ТитулГрузоотправителяОтветственныйЗаПереадресовкуАдресаЭлектроннойПочтыПриНачалеРедактирования(Элемент, НоваяСтрока, Копирование)
ОбменСГИСЭПДКлиент.ТаблицаПриНачалеРедактирования(Элемент, ЭтотОбъект, НоваяСтрока, Копирование);
-
-
+
КонецПроцедуры
-
-
&НаКлиенте
Процедура ОбработкаОповещения(ИмяСобытия, Параметр, Источник)
diff --git a/src/Documents/ЭлектроннаяТранспортнаяНакладная/Templates/СоответствиеИменРеквизитов/Ext/Template.xml b/src/Documents/ЭлектроннаяТранспортнаяНакладная/Templates/СоответствиеИменРеквизитов/Ext/Template.xml
index 9cfcb0880..85af5cf31 100644
--- a/src/Documents/ЭлектроннаяТранспортнаяНакладная/Templates/СоответствиеИменРеквизитов/Ext/Template.xml
+++ b/src/Documents/ЭлектроннаяТранспортнаяНакладная/Templates/СоответствиеИменРеквизитов/Ext/Template.xml
@@ -25059,7 +25059,7 @@
ru
- ЗаполнитьТитулГрузоотправителяСопроводительныеДокументы|ТитулГрузоотправителяВедомостьНаКонтейнерНаименование
+ ЗаполнитьТитулГрузоотправителяСопроводительныеДокументы|ЗаполнитьТитулГрузоотправителяВедомостьНаКонтейнерНаименование|ТитулГрузоотправителяВедомостьНаКонтейнерНаименование
@@ -25147,7 +25147,7 @@
ru
- ЗаполнитьТитулГрузоотправителяСопроводительныеДокументы|ТитулГрузоотправителяВедомостьНаКонтейнерНомер
+ ЗаполнитьТитулГрузоотправителяСопроводительныеДокументы|ЗаполнитьТитулГрузоотправителяВедомостьНаКонтейнерНаименование|ТитулГрузоотправителяВедомостьНаКонтейнерНомер
@@ -25241,7 +25241,7 @@
ru
- ЗаполнитьТитулГрузоотправителяСопроводительныеДокументы|ТитулГрузоотправителяВедомостьНаКонтейнерДата
+ ЗаполнитьТитулГрузоотправителяСопроводительныеДокументы|ЗаполнитьТитулГрузоотправителяВедомостьНаКонтейнерНаименование|ТитулГрузоотправителяВедомостьНаКонтейнерДата
@@ -25456,6 +25456,12 @@
9
+
+
+ ru
+ ЗаполнитьТитулГрузоотправителяСопроводительныеДокументы|ЗаполнитьТитулГрузоотправителяВедомостьНаКонтейнерНаименование|ТитулГрузоотправителяРеквизитыСторонВедомостиНаКонтейнер
+
+
@@ -193504,7 +193510,7 @@
ru
- Грузополучатель
+ Грузополучатель
diff --git a/src/Documents/ЭлектронныйДокументВходящийЭДО/Forms/ПодборДокументовУчета/Ext/Form/Module.bsl b/src/Documents/ЭлектронныйДокументВходящийЭДО/Forms/ПодборДокументовУчета/Ext/Form/Module.bsl
index 44ecb9bad..cf803a1e2 100644
--- a/src/Documents/ЭлектронныйДокументВходящийЭДО/Forms/ПодборДокументовУчета/Ext/Form/Module.bsl
+++ b/src/Documents/ЭлектронныйДокументВходящийЭДО/Forms/ПодборДокументовУчета/Ext/Form/Module.bsl
@@ -4,6 +4,8 @@
&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
+ ЭлектронныеДокументыЭДО.ПроверитьПравоСозданияДокументов();
+
Параметры.Свойство("ДокументРаспознан", ДокументРаспознан);
Если Не Параметры.Свойство("ЭлектронныйДокумент", Документооборот)
@@ -201,19 +203,16 @@
ПараметрыЗаполнения = ЭлектронныеДокументыЭДО.ДанныеДокументовДляОтраженияВУчете(ЭлектронныеДокументы);
Если ЗначениеЗаполнено(ПараметрыЗаполнения) Тогда
+ НачатьТранзакцию();
Попытка
- НачатьТранзакцию();
- Блокировка = Новый БлокировкаДанных;
- ЭлементБлокировки = Блокировка.Добавить("Документ.ЭлектронныйДокументВходящийЭДО");
- ЭлементБлокировки.УстановитьЗначение("Ссылка", Документооборот);
- ЭлементБлокировки.Режим = РежимБлокировкиДанных.Исключительный;
- Блокировка.Заблокировать();
+ ЭлектронныеДокументыЭДО.ЗаблокироватьДокументДляИзменения(Документооборот, Истина);
ОбъектыУчета = ИнтеграцияЭДО.ОбъектыУчетаАктуальногоЭлектронногоДокумента(Документооборот);
Если Не ЗначениеЗаполнено(ОбъектыУчета) Тогда
ИнтеграцияЭДО.ОтразитьДанныеЭлектронногоДокументаСКонтролем(ПараметрыЗаполнения[0], СпособОбработки);
КонецЕсли;
+
ЗафиксироватьТранзакцию();
Исключение
ОтменитьТранзакцию();
@@ -410,10 +409,11 @@
ДокументыОснования.Загрузить(ОбъектыУчетаДокументооборотов(Документооборот));
- Реквизиты = "ВидДокумента, ВидДокумента.ТипДокумента";
+ Реквизиты = "ВидДокумента, ВидДокумента.ТипДокумента, ФорматОсновногоТитула";
РеквизитыДокументооборота = ЭлектронныеДокументыЭДО.СвойстваДокумента(Документооборот, Реквизиты);
ВидДокумента = РеквизитыДокументооборота.ВидДокумента;
ТипДокумента = РеквизитыДокументооборота.ВидДокументаТипДокумента;
+ ФорматОсновногоТитула = РеквизитыДокументооборота.ФорматОсновногоТитула;
// Определим основной вид ЭД.
Если ПараметрыПроизвольногоДокумента <> Неопределено
@@ -576,6 +576,12 @@
Элементы.ФормаПерезаполнитьТекущий.Видимость = Ложь;
КонецЕсли;
+ СостояниеЭДО = ЭлектронныеДокументыЭДО.СостояниеДокумента(Документооборот);
+ Если Не ИнтеграцияЭДО.ДоступноОтражениеВУчете(ФорматОсновногоТитула, ТипДокумента, СостояниеЭДО) Тогда
+ Элементы.ГруппаСоздать.Видимость = Ложь;
+ Элементы.ФормаСоздатьДокумент.Видимость = Ложь;
+ КонецЕсли;
+
КонецПроцедуры
#КонецОбласти
diff --git a/src/Documents/ЭлектронныйДокументВходящийЭДО/Forms/ФормаПросмотра/Ext/Form.xml b/src/Documents/ЭлектронныйДокументВходящийЭДО/Forms/ФормаПросмотра/Ext/Form.xml
index 4450eba90..e5f5016c5 100644
--- a/src/Documents/ЭлектронныйДокументВходящийЭДО/Forms/ФормаПросмотра/Ext/Form.xml
+++ b/src/Documents/ЭлектронныйДокументВходящийЭДО/Forms/ФормаПросмотра/Ext/Form.xml
@@ -1093,6 +1093,9 @@
TabsOnTop
+
+ ГруппаСтраницыПриСменеСтраницы
+
@@ -3251,6 +3254,17 @@
xs:boolean
+
+
+
+ ru
+ Устанавливать прочтение сообщений
+
+
+
+ xs:boolean
+
+
diff --git a/src/Documents/ЭлектронныйДокументВходящийЭДО/Forms/ФормаПросмотра/Ext/Form/Module.bsl b/src/Documents/ЭлектронныйДокументВходящийЭДО/Forms/ФормаПросмотра/Ext/Form/Module.bsl
index 2fad4456e..a285b0394 100644
--- a/src/Documents/ЭлектронныйДокументВходящийЭДО/Forms/ФормаПросмотра/Ext/Form/Module.bsl
+++ b/src/Documents/ЭлектронныйДокументВходящийЭДО/Forms/ФормаПросмотра/Ext/Form/Module.bsl
@@ -15,7 +15,6 @@
ВызватьИсключение НСтр("ru = 'Документ не предназначен для интерактивного ввода.'");
КонецЕсли;
-
УстановитьУсловноеОформление();
УстановитьЗаголовокФормы();
@@ -24,7 +23,9 @@
Если РаботаСПрочтениямиВызовСервера.УстановитьСвойствоПрочтен(Объект.Ссылка, Истина) Тогда
ОповеститьОПрочтении = Истина;
КонецЕсли;
- КонецЕсли;
+
+ УстанавливатьПрочтениеСообщений = Истина;
+ КонецЕсли;
// ЭлектронноеВзаимодействие.ОбменСКонтрагентами.КонтекстныеПодсказкиБЭД
КонтекстныеПодсказкиБЭД.КонтекстныеПодсказки_ПриСозданииНаСервере(ЭтотОбъект,
@@ -121,7 +122,11 @@
Прервать;
КонецЕсли;
КонецЦикла;
-
+
+ ИначеЕсли ИмяСобытия =
+ ИнтерфейсДокументовЭДОКлиент.ИмяСобытияИзменениеДанныхСопоставленияНоменклатурыДокумента()
+ И Параметр.Найти(Объект.Ссылка) <> Неопределено Тогда
+ ПослеИзмененияДанныхСопоставленияНоменклатуры();
КонецЕсли;
// ЭлектронноеВзаимодействие.ОбменСКонтрагентами.КонтекстныеПодсказкиБЭД
@@ -308,6 +313,16 @@
КонецПроцедуры
+&НаКлиенте
+Процедура ГруппаСтраницыПриСменеСтраницы(Элемент, ТекущаяСтраница)
+
+ Если ТекущаяСтраница.Имя = "СтраницаСообщения" И УстанавливатьПрочтениеСообщений Тогда
+ УстановитьПрочтениеСообщенийДокумента(Объект.Ссылка);
+ УстанавливатьПрочтениеСообщений = Ложь;
+ КонецЕсли;
+
+КонецПроцедуры
+
#КонецОбласти
#Область ОбработчикиСобытийЭлементовТаблицыФормыСхемаРегламента
@@ -723,7 +738,7 @@
&НаКлиенте
Процедура ПоказатьКомментарийСостояния(Команда)
- ОбщегоНазначенияКлиент.ПоказатьФормуРедактированияКомментария(КомментарийСостояния, ЭтотОбъект);
+ ИнтерфейсДокументовЭДОКлиент.ПоказатьКомментарийКСостояниюДокумента(КомментарийСостояния);
КонецПроцедуры
@@ -907,7 +922,7 @@
ПакетнаяОбработка = СостоянияПакетаОднородно И ЗначениеЗаполнено(ИдентификаторПакета);
- ОтказатьсяОтПодписанияОбьектов(ПакетнаяОбработка);
+ ОтказатьсяОтПодписанияОбъектов(ПакетнаяОбработка);
КонецПроцедуры
@@ -916,22 +931,7 @@
ПакетнаяОбработка = Ложь;
- ОтказатьсяОтПодписанияОбьектов(ПакетнаяОбработка);
-
-КонецПроцедуры
-
-&НаКлиенте
-Процедура ОтказатьсяОтПодписанияОбьектов(ПакетнаяОбработка)
-
- ОбъектыДействий = ИнтерфейсДокументовЭДОКлиентСервер.НовыеОбъектыДействийПоЭДО();
- Если ПакетнаяОбработка Тогда
- ОбъектыДействий.ПакетыДокументов.Добавить(ИдентификаторПакета);
- Иначе
- ОбъектыДействий.ЭлектронныеДокументы.Добавить(Объект.Ссылка);
- КонецЕсли;
-
- ОписаниеОповещения = Новый ОписаниеОповещения("ПослеВыполненияДействийПоЭДО", ЭтотОбъект, Новый Соответствие);
- ЭлектронныеДокументыЭДОКлиент.ОтказатьсяОтПодписания(ОбъектыДействий, ОписаниеОповещения);
+ ОтказатьсяОтПодписанияОбъектов(ПакетнаяОбработка);
КонецПроцедуры
@@ -939,7 +939,7 @@
Процедура ЗапроситьУточнение(Команда)
ПакетнаяОбработка = СостоянияПакетаОднородно И ЗначениеЗаполнено(ИдентификаторПакета);
- ЗапроситьУточнениеПоОбьектам(ПакетнаяОбработка);
+ ЗапроситьУточнениеПоОбъектам(ПакетнаяОбработка);
КонецПроцедуры
@@ -947,22 +947,7 @@
Процедура ЗапроситьУточнениеДокумент(Команда)
ПакетнаяОбработка = Ложь;
- ЗапроситьУточнениеПоОбьектам(ПакетнаяОбработка);
-
-КонецПроцедуры
-
-&НаКлиенте
-Процедура ЗапроситьУточнениеПоОбьектам(ПакетнаяОбработка)
-
- ОбъектыДействий = ИнтерфейсДокументовЭДОКлиентСервер.НовыеОбъектыДействийПоЭДО();
- Если ПакетнаяОбработка И ЗначениеЗаполнено(ИдентификаторПакета) Тогда
- ОбъектыДействий.ПакетыДокументов.Добавить(ИдентификаторПакета);
- Иначе
- ОбъектыДействий.ЭлектронныеДокументы.Добавить(Объект.Ссылка);
- КонецЕсли;
-
- ОписаниеОповещения = Новый ОписаниеОповещения("ПослеВыполненияДействийПоЭДО", ЭтотОбъект, Новый Соответствие);
- ЭлектронныеДокументыЭДОКлиент.ЗапроситьУточнение(ОбъектыДействий, ОписаниеОповещения);
+ ЗапроситьУточнениеПоОбъектам(ПакетнаяОбработка);
КонецПроцедуры
@@ -2452,6 +2437,41 @@
ИнтерфейсДокументовЭДО.ОчиститьСопроводительнуюЗаписку(ЭтотОбъект);
КонецПроцедуры
+&НаСервереБезКонтекста
+Процедура УстановитьПрочтениеСообщенийДокумента(ЭлектронныйДокумент)
+ РегистрыСведений.ТекстовыеСообщенияДокументовЭДО.УстановитьПрочтениеСообщенийДокумента(ЭлектронныйДокумент);
+КонецПроцедуры
+
+&НаКлиенте
+Процедура ЗапроситьУточнениеПоОбъектам(ПакетнаяОбработка)
+
+ ОбъектыДействий = ИнтерфейсДокументовЭДОКлиентСервер.НовыеОбъектыДействийПоЭДО();
+ Если ПакетнаяОбработка И ЗначениеЗаполнено(ИдентификаторПакета) Тогда
+ ОбъектыДействий.ПакетыДокументов.Добавить(ИдентификаторПакета);
+ Иначе
+ ОбъектыДействий.ЭлектронныеДокументы.Добавить(Объект.Ссылка);
+ КонецЕсли;
+
+ ОписаниеОповещения = Новый ОписаниеОповещения("ПослеВыполненияДействийПоЭДО", ЭтотОбъект, Новый Соответствие);
+ ЭлектронныеДокументыЭДОКлиент.ЗапроситьУточнение(ОбъектыДействий, ОписаниеОповещения);
+
+КонецПроцедуры
+
+&НаКлиенте
+Процедура ОтказатьсяОтПодписанияОбъектов(ПакетнаяОбработка)
+
+ ОбъектыДействий = ИнтерфейсДокументовЭДОКлиентСервер.НовыеОбъектыДействийПоЭДО();
+ Если ПакетнаяОбработка Тогда
+ ОбъектыДействий.ПакетыДокументов.Добавить(ИдентификаторПакета);
+ Иначе
+ ОбъектыДействий.ЭлектронныеДокументы.Добавить(Объект.Ссылка);
+ КонецЕсли;
+
+ ОписаниеОповещения = Новый ОписаниеОповещения("ПослеВыполненияДействийПоЭДО", ЭтотОбъект, Новый Соответствие);
+ ЭлектронныеДокументыЭДОКлиент.ОтказатьсяОтПодписания(ОбъектыДействий, ОписаниеОповещения);
+
+КонецПроцедуры
+
#Область ОтражениеВУчете
&НаСервере
@@ -2667,9 +2687,8 @@
ЕстьПравоОбработкиДокумента = ЭлектронныеДокументыЭДО.ЕстьПравоОбработкиДокументов();
Если ЕстьПравоОбработкиДокумента Тогда
- Элементы.ГруппаСоздатьДокументУчета.Видимость = Не ЕстьОдинДУ
- И (ЭлементСхемы.ФормированиеПоОбъектуУчета
- Или ЭлементСхемы.ТипДокумента = Перечисления.ТипыДокументовЭДО.Прикладной);
+ Элементы.ГруппаСоздатьДокументУчета.Видимость = Не ЕстьОдинДУ
+ И ИнтеграцияЭДО.ДоступноОтражениеВУчете(Объект.ФорматОсновногоТитула, ЭлементСхемы.ТипДокумента, СостояниеЭДО);
ИначеЕсли ЕстьОдинДУ Тогда
Элементы.ГруппаСоздатьДокументУчета.Видимость = Ложь;
Иначе
@@ -2943,14 +2962,14 @@
&НаКлиенте
Процедура ЗавершитьСопоставлениеНоменклатуры(Результат, ДополнительныеПараметры) Экспорт
- ЗавершитьСопоставлениеНоменклатурыНаСервере();
+ ПослеИзмененияДанныхСопоставленияНоменклатуры();
Оповестить(ИнтерфейсДокументовЭДОКлиент.ИмяСобытияОбновленияТекущихДелЭДО());
КонецПроцедуры
&НаСервере
-Процедура ЗавершитьСопоставлениеНоменклатурыНаСервере()
+Процедура ПослеИзмененияДанныхСопоставленияНоменклатуры()
Если ЗначениеЗаполнено(ИдентификаторПакета) Тогда
ОбъектыКонтроля = СоставПакета.ВыгрузитьЗначения();
@@ -3015,6 +3034,7 @@
Процедура ОбработатьВыборСозданияДокументаУчетаЗавершение(КонтекстДиагностики, ДополнительныеПараметры) Экспорт
ОбработкаНеисправностейБЭДКлиент.ОбработатьОшибки(КонтекстДиагностики);
+ ПослеИзмененияДанныхСопоставленияНоменклатуры();
КонецПроцедуры
diff --git a/src/Documents/ЭлектронныйДокументВходящийЭДО/Forms/ФормаПросмотраЛегкийИнтерфейс/Ext/Form.xml b/src/Documents/ЭлектронныйДокументВходящийЭДО/Forms/ФормаПросмотраЛегкийИнтерфейс/Ext/Form.xml
index 5f19472cf..403139362 100644
--- a/src/Documents/ЭлектронныйДокументВходящийЭДО/Forms/ФормаПросмотраЛегкийИнтерфейс/Ext/Form.xml
+++ b/src/Documents/ЭлектронныйДокументВходящийЭДО/Forms/ФормаПросмотраЛегкийИнтерфейс/Ext/Form.xml
@@ -1810,6 +1810,9 @@
+
+ ГруппаСтраницыПанельЗакладокПриСменеСтраницы
+
@@ -3866,6 +3869,17 @@
+
+
+
+ ru
+ Устанавливать прочтение сообщений
+
+
+
+ xs:boolean
+
+
diff --git a/src/Documents/ЭлектронныйДокументВходящийЭДО/Forms/ФормаПросмотраЛегкийИнтерфейс/Ext/Form/Module.bsl b/src/Documents/ЭлектронныйДокументВходящийЭДО/Forms/ФормаПросмотраЛегкийИнтерфейс/Ext/Form/Module.bsl
index a72899e8c..42eca6b8c 100644
--- a/src/Documents/ЭлектронныйДокументВходящийЭДО/Forms/ФормаПросмотраЛегкийИнтерфейс/Ext/Form/Module.bsl
+++ b/src/Documents/ЭлектронныйДокументВходящийЭДО/Forms/ФормаПросмотраЛегкийИнтерфейс/Ext/Form/Module.bsl
@@ -16,6 +16,8 @@
ОбменСКонтрагентамиПереопределяемый.ПриПроверкиГотовностиЭлектронногоДокумента(ЭтотОбъект, ТолькоПросмотр);
+ УстанавливатьПрочтениеСообщений = Истина;
+
Если ЭтоМобильныйКлиент Тогда
МК_НастроитьЭлементыФормы();
КонецЕсли;
@@ -199,6 +201,16 @@
Модифицированность = Истина;
КонецПроцедуры
+&НаКлиенте
+Процедура ГруппаСтраницыПанельЗакладокПриСменеСтраницы(Элемент, ТекущаяСтраница)
+
+ Если ТекущаяСтраница.Имя = "СтраницаСообщения" И УстанавливатьПрочтениеСообщений Тогда
+ УстановитьПрочтениеСообщенийДокумента(Объект.Ссылка);
+ УстанавливатьПрочтениеСообщений = Ложь;
+ КонецЕсли;
+
+КонецПроцедуры
+
#КонецОбласти // ОбработчикиСобытийЭлементовШапкиФормы
#Область ОбработчикиСобытийЭлементовТаблицыФормыСоставПакета
@@ -829,7 +841,7 @@
&НаКлиенте
Процедура СостояниеОбработкаНажатия(Команда)
- ОбщегоНазначенияКлиент.ПоказатьФормуРедактированияКомментария(КомментарийСостояния, ЭтотОбъект);
+ ИнтерфейсДокументовЭДОКлиент.ПоказатьКомментарийКСостояниюДокумента(КомментарийСостояния);
КонецПроцедуры
&НаКлиенте
@@ -1180,6 +1192,11 @@
НастройкиЭДО.УстановитьИспользованиеПросмотраPDFДокументовЭДО(ВключитьПоле);
КонецПроцедуры
+&НаСервереБезКонтекста
+Процедура УстановитьПрочтениеСообщенийДокумента(ЭлектронныйДокумент)
+ РегистрыСведений.ТекстовыеСообщенияДокументовЭДО.УстановитьПрочтениеСообщенийДокумента(ЭлектронныйДокумент);
+КонецПроцедуры
+
#КонецОбласти // ОбработчикиКоманд
#Область СлужебныеПроцедурыИФункции_МобильныйКлиент
diff --git a/src/Documents/ЭлектронныйДокументВходящийЭДО/Forms/ФормаПросмотраЛегкийКлиентЭДО/Ext/Form.xml b/src/Documents/ЭлектронныйДокументВходящийЭДО/Forms/ФормаПросмотраЛегкийКлиентЭДО/Ext/Form.xml
index d7e678ea3..d025f20f3 100644
--- a/src/Documents/ЭлектронныйДокументВходящийЭДО/Forms/ФормаПросмотраЛегкийКлиентЭДО/Ext/Form.xml
+++ b/src/Documents/ЭлектронныйДокументВходящийЭДО/Forms/ФормаПросмотраЛегкийКлиентЭДО/Ext/Form.xml
@@ -1417,6 +1417,9 @@
+
+ ГруппаСтраницыПанельЗакладокПриСменеСтраницы
+
@@ -3371,6 +3374,17 @@
+
+
+
+ ru
+ Устанавливать прочтение сообщений
+
+
+
+ xs:boolean
+
+
diff --git a/src/Documents/ЭлектронныйДокументВходящийЭДО/Forms/ФормаПросмотраЛегкийКлиентЭДО/Ext/Form/Module.bsl b/src/Documents/ЭлектронныйДокументВходящийЭДО/Forms/ФормаПросмотраЛегкийКлиентЭДО/Ext/Form/Module.bsl
index 8d45c4812..69a7b18ef 100644
--- a/src/Documents/ЭлектронныйДокументВходящийЭДО/Forms/ФормаПросмотраЛегкийКлиентЭДО/Ext/Form/Module.bsl
+++ b/src/Documents/ЭлектронныйДокументВходящийЭДО/Forms/ФормаПросмотраЛегкийКлиентЭДО/Ext/Form/Module.bsl
@@ -14,6 +14,8 @@
ОповеститьОПрочтении = Истина;
КонецЕсли;
+ УстанавливатьПрочтениеСообщений = Истина;
+
// СтандартныеПодсистемы.ПодключаемыеКоманды
ПараметрыРазмещения = ПодключаемыеКоманды.ПараметрыРазмещения();
ПараметрыРазмещения.КоманднаяПанель = Элементы.ГруппаПанельКоманд;
@@ -184,6 +186,14 @@
КонецПроцедуры
+&НаКлиенте
+Процедура ГруппаСтраницыПанельЗакладокПриСменеСтраницы(Элемент, ТекущаяСтраница)
+ Если ТекущаяСтраница.Имя = "СтраницаСообщения" И УстанавливатьПрочтениеСообщений Тогда
+ УстановитьПрочтениеСообщенийДокумента(Объект.Ссылка);
+ УстанавливатьПрочтениеСообщений = Ложь;
+ КонецЕсли;
+КонецПроцедуры
+
#КонецОбласти // ОбработчикиСобытийЭлементовШапкиФормы
#Область ОбработчикиСобытийЭлементовТаблицыФормыСоставПакета
@@ -519,7 +529,7 @@
&НаКлиенте
Процедура СостояниеОбработкаНажатия(Команда)
- ОбщегоНазначенияКлиент.ПоказатьФормуРедактированияКомментария(КомментарийСостояния, ЭтотОбъект);
+ ИнтерфейсДокументовЭДОКлиент.ПоказатьКомментарийКСостояниюДокумента(КомментарийСостояния);
КонецПроцедуры
&НаКлиенте
@@ -980,6 +990,11 @@
НастройкиЭДО.УстановитьИспользованиеПросмотраPDFДокументовЭДО(ВключитьПоле);
КонецПроцедуры
+&НаСервереБезКонтекста
+Процедура УстановитьПрочтениеСообщенийДокумента(ЭлектронныйДокумент)
+ РегистрыСведений.ТекстовыеСообщенияДокументовЭДО.УстановитьПрочтениеСообщенийДокумента(ЭлектронныйДокумент);
+КонецПроцедуры
+
#Область ПодключаемыеКоманды
// СтандартныеПодсистемы.ПодключаемыеКоманды
diff --git a/src/Documents/ЭлектронныйДокументИсходящийЭДО/Forms/ФормаПросмотра/Ext/Form.xml b/src/Documents/ЭлектронныйДокументИсходящийЭДО/Forms/ФормаПросмотра/Ext/Form.xml
index 470eadd1e..0e55db1b4 100644
--- a/src/Documents/ЭлектронныйДокументИсходящийЭДО/Forms/ФормаПросмотра/Ext/Form.xml
+++ b/src/Documents/ЭлектронныйДокументИсходящийЭДО/Forms/ФормаПросмотра/Ext/Form.xml
@@ -951,7 +951,6 @@
- false
- СхемаРегламента
SearchStringRepresentation
@@ -960,7 +959,6 @@
- false
- СхемаРегламента
ViewStatusRepresentation
@@ -970,7 +968,6 @@
- false
- СхемаРегламента
SearchControl
@@ -1036,6 +1033,9 @@
TabsOnTop
+
+ ГруппаСтраницыПриСменеСтраницы
+
@@ -1575,7 +1575,6 @@
- false
- Подписи
SearchStringRepresentation
@@ -1584,7 +1583,6 @@
- false
- Подписи
ViewStatusRepresentation
@@ -1594,7 +1592,6 @@
- false
- Подписи
SearchControl
@@ -1716,7 +1713,6 @@
- false
- СхемаМаршрутаПодписания
SearchStringRepresentation
@@ -1725,7 +1721,6 @@
- false
- СхемаМаршрутаПодписания
ViewStatusRepresentation
@@ -1735,7 +1730,6 @@
- false
- СхемаМаршрутаПодписания
SearchControl
@@ -3231,6 +3225,17 @@
xs:boolean
+
+
+
+ ru
+ Устанавливать прочтение сообщений
+
+
+
+ xs:boolean
+
+
diff --git a/src/Documents/ЭлектронныйДокументИсходящийЭДО/Forms/ФормаПросмотра/Ext/Form/Module.bsl b/src/Documents/ЭлектронныйДокументИсходящийЭДО/Forms/ФормаПросмотра/Ext/Form/Module.bsl
index 2cae20dcb..08604eac0 100644
--- a/src/Documents/ЭлектронныйДокументИсходящийЭДО/Forms/ФормаПросмотра/Ext/Form/Module.bsl
+++ b/src/Documents/ЭлектронныйДокументИсходящийЭДО/Forms/ФормаПросмотра/Ext/Form/Module.bsl
@@ -23,6 +23,8 @@
Если РаботаСПрочтениямиВызовСервера.УстановитьСвойствоПрочтен(Объект.Ссылка, Истина) Тогда
ОповеститьОПрочтении = Истина;
КонецЕсли;
+
+ УстанавливатьПрочтениеСообщений = Истина;
КонецЕсли;
// ЭлектронноеВзаимодействие.ОбменСКонтрагентами.КонтекстныеПодсказкиБЭД
@@ -414,6 +416,16 @@
КонецПроцедуры
+&НаКлиенте
+Процедура ГруппаСтраницыПриСменеСтраницы(Элемент, ТекущаяСтраница)
+
+ Если ТекущаяСтраница.Имя = "СтраницаСообщения" И УстанавливатьПрочтениеСообщений Тогда
+ УстановитьПрочтениеСообщенийДокумента(Объект.Ссылка);
+ УстанавливатьПрочтениеСообщений = Ложь;
+ КонецЕсли;
+
+КонецПроцедуры
+
#КонецОбласти
#Область ОбработчикиСобытийЭлементовТаблицыФормыСхемаРегламента
@@ -856,7 +868,7 @@
&НаКлиенте
Процедура ПоказатьКомментарийСостояния(Команда)
- ОбщегоНазначенияКлиент.ПоказатьФормуРедактированияКомментария(КомментарийСостояния, ЭтотОбъект);
+ ИнтерфейсДокументовЭДОКлиент.ПоказатьКомментарийКСостояниюДокумента(КомментарийСостояния);
КонецПроцедуры
@@ -1198,7 +1210,7 @@
Процедура ЗапроситьУточнение(Команда)
ПакетнаяОбработка = СостоянияПакетаОднородно И ЗначениеЗаполнено(ИдентификаторПакета);
- ЗапроситьУточнениеПоОбьектам(ПакетнаяОбработка);
+ ЗапроситьУточнениеПоОбъектам(ПакетнаяОбработка);
КонецПроцедуры
@@ -1206,22 +1218,7 @@
Процедура ЗапроситьУточнениеДокумент(Команда)
ПакетнаяОбработка = Ложь;
- ЗапроситьУточнениеПоОбьектам(ПакетнаяОбработка);
-
-КонецПроцедуры
-
-&НаКлиенте
-Процедура ЗапроситьУточнениеПоОбьектам(ПакетнаяОбработка)
-
- ОбъектыДействий = ИнтерфейсДокументовЭДОКлиентСервер.НовыеОбъектыДействийПоЭДО();
- Если ПакетнаяОбработка И ЗначениеЗаполнено(ИдентификаторПакета) Тогда
- ОбъектыДействий.ПакетыДокументов.Добавить(ИдентификаторПакета);
- Иначе
- ОбъектыДействий.ЭлектронныеДокументы.Добавить(Объект.Ссылка);
- КонецЕсли;
-
- ОписаниеОповещения = Новый ОписаниеОповещения("ПослеВыполненияДействийПоЭДО", ЭтотОбъект, Новый Соответствие);
- ЭлектронныеДокументыЭДОКлиент.ЗапроситьУточнение(ОбъектыДействий, ОписаниеОповещения);
+ ЗапроситьУточнениеПоОбъектам(ПакетнаяОбработка);
КонецПроцедуры
@@ -2332,7 +2329,20 @@
Возврат;
КонецЕсли;
- Если Не ЭлектронныеДокументыЭДО.ТипДокументаПоддерживаетЗагрузкуИзФайлаВФормализованномВиде(ТипДокумента) Тогда
+ ТипРегламентаПоИмени = Неопределено;
+ Если РезультатРаспознания.Свойство("ТипРегламента") Тогда
+ ТипРегламентаПоИмени = ОбщегоНазначенияБЭД.ЗначениеПеречисленияПоИмени(РезультатРаспознания.ТипРегламента,
+ Метаданные.Перечисления.ТипыРегламентовЭДО, Ложь);
+ КонецЕсли;
+
+ Если ЗначениеЗаполнено(ТипРегламентаПоИмени) Тогда
+ Объект.ТипРегламента = ТипРегламентаПоИмени;
+ Иначе
+ Объект.ТипРегламента = Перечисления.ТипыРегламентовЭДО.УПД;
+ КонецЕсли;
+
+ Если Не ЭлектронныеДокументыЭДО.ТипДокументаПоддерживаетЗагрузкуИзФайлаВФормализованномВиде(
+ ТипДокумента, Объект.ТипРегламента) Тогда
Возврат;
КонецЕсли;
@@ -2352,17 +2362,7 @@
ЗаполнитьЗначенияСвойств(ЭлементСхемы, Объект);
Объект.МаршрутПодписания = МаршрутыПодписанияБЭД.МаршрутОднойДоступнойПодписью();
- ТипРегламентаПоИмени = Неопределено;
- Если РезультатРаспознания.Свойство("ТипРегламента") Тогда
- ТипРегламентаПоИмени = ОбщегоНазначенияБЭД.ЗначениеПеречисленияПоИмени(РезультатРаспознания.ТипРегламента,
- Метаданные.Перечисления.ТипыРегламентовЭДО, Ложь);
- КонецЕсли;
- Если ЗначениеЗаполнено(ТипРегламентаПоИмени) Тогда
- Объект.ТипРегламента = ТипРегламентаПоИмени;
- Иначе
- Объект.ТипРегламента = Перечисления.ТипыРегламентовЭДО.УПД;
- КонецЕсли;
Если РезультатРаспознания.Свойство("СуммаДокумента") Тогда
Объект.СуммаДокумента = РезультатРаспознания.СуммаДокумента;
КонецЕсли;
@@ -3903,6 +3903,26 @@
КонецПроцедуры
+&НаСервереБезКонтекста
+Процедура УстановитьПрочтениеСообщенийДокумента(ЭлектронныйДокумент)
+ РегистрыСведений.ТекстовыеСообщенияДокументовЭДО.УстановитьПрочтениеСообщенийДокумента(ЭлектронныйДокумент);
+КонецПроцедуры
+
+&НаКлиенте
+Процедура ЗапроситьУточнениеПоОбъектам(ПакетнаяОбработка)
+
+ ОбъектыДействий = ИнтерфейсДокументовЭДОКлиентСервер.НовыеОбъектыДействийПоЭДО();
+ Если ПакетнаяОбработка И ЗначениеЗаполнено(ИдентификаторПакета) Тогда
+ ОбъектыДействий.ПакетыДокументов.Добавить(ИдентификаторПакета);
+ Иначе
+ ОбъектыДействий.ЭлектронныеДокументы.Добавить(Объект.Ссылка);
+ КонецЕсли;
+
+ ОписаниеОповещения = Новый ОписаниеОповещения("ПослеВыполненияДействийПоЭДО", ЭтотОбъект, Новый Соответствие);
+ ЭлектронныеДокументыЭДОКлиент.ЗапроситьУточнение(ОбъектыДействий, ОписаниеОповещения);
+
+КонецПроцедуры
+
#Область ЗаписатьДокумент
&НаКлиенте
diff --git a/src/Documents/ЭлектронныйДокументИсходящийЭДО/Forms/ФормаПросмотраЛегкийИнтерфейс/Ext/Form.xml b/src/Documents/ЭлектронныйДокументИсходящийЭДО/Forms/ФормаПросмотраЛегкийИнтерфейс/Ext/Form.xml
index 3a7411fe5..3b91c35c4 100644
--- a/src/Documents/ЭлектронныйДокументИсходящийЭДО/Forms/ФормаПросмотраЛегкийИнтерфейс/Ext/Form.xml
+++ b/src/Documents/ЭлектронныйДокументИсходящийЭДО/Forms/ФормаПросмотраЛегкийИнтерфейс/Ext/Form.xml
@@ -1325,7 +1325,6 @@
- false
- СоставПакета
SearchStringRepresentation
@@ -1334,7 +1333,6 @@
- false
- СоставПакета
ViewStatusRepresentation
@@ -1343,7 +1341,6 @@
- false
- СоставПакета
SearchControl
@@ -1917,6 +1914,9 @@
+
+ ГруппаСтраницыПанельЗакладокПриСменеСтраницы
+
@@ -2771,7 +2771,6 @@
- false
- Подписи
SearchStringRepresentation
@@ -2780,7 +2779,6 @@
- false
- Подписи
ViewStatusRepresentation
@@ -2790,7 +2788,6 @@
- false
- Подписи
SearchControl
@@ -2996,7 +2993,6 @@
- false
- СхемаМаршрутаПодписания
SearchStringRepresentation
@@ -3005,7 +3001,6 @@
- false
- СхемаМаршрутаПодписания
ViewStatusRepresentation
@@ -3015,7 +3010,6 @@
- false
- СхемаМаршрутаПодписания
SearchControl
@@ -4802,6 +4796,17 @@
fd:FormattedDocument
+
+
+
+ ru
+ Устанавливать прочтение сообщений
+
+
+
+ xs:boolean
+
+
diff --git a/src/Documents/ЭлектронныйДокументИсходящийЭДО/Forms/ФормаПросмотраЛегкийИнтерфейс/Ext/Form/Module.bsl b/src/Documents/ЭлектронныйДокументИсходящийЭДО/Forms/ФормаПросмотраЛегкийИнтерфейс/Ext/Form/Module.bsl
index a1308eaba..b3456cd05 100644
--- a/src/Documents/ЭлектронныйДокументИсходящийЭДО/Forms/ФормаПросмотраЛегкийИнтерфейс/Ext/Form/Module.bsl
+++ b/src/Documents/ЭлектронныйДокументИсходящийЭДО/Forms/ФормаПросмотраЛегкийИнтерфейс/Ext/Form/Module.bsl
@@ -22,6 +22,8 @@
ОповеститьОПрочтении = Истина;
КонецЕсли;
+ УстанавливатьПрочтениеСообщений = Истина;
+
Если ЭтоМобильныйКлиент Тогда
МК_НастроитьЭлементыФормы();
КонецЕсли;
@@ -313,6 +315,14 @@
КонецПроцедуры
+&НаКлиенте
+Процедура ГруппаСтраницыПанельЗакладокПриСменеСтраницы(Элемент, ТекущаяСтраница)
+ Если ТекущаяСтраница.Имя = "СтраницаСообщения" И УстанавливатьПрочтениеСообщений Тогда
+ УстановитьПрочтениеСообщенийДокумента(Объект.Ссылка);
+ УстанавливатьПрочтениеСообщений = Ложь;
+ КонецЕсли;
+КонецПроцедуры
+
#КонецОбласти // ОбработчикиСобытийЭлементовШапкиФормы
#Область ОбработчикиСобытийЭлементовТаблицыФормыСоставПакета
@@ -1079,7 +1089,7 @@
&НаКлиенте
Процедура СостояниеОбработкаНажатия(Команда)
- ОбщегоНазначенияКлиент.ПоказатьФормуРедактированияКомментария(КомментарийСостояния, ЭтотОбъект);
+ ИнтерфейсДокументовЭДОКлиент.ПоказатьКомментарийКСостояниюДокумента(КомментарийСостояния);
КонецПроцедуры
&НаКлиенте
@@ -3966,6 +3976,11 @@
НастройкиЭДО.УстановитьИспользованиеПросмотраPDFДокументовЭДО(ВключитьПоле);
КонецПроцедуры
+&НаСервереБезКонтекста
+Процедура УстановитьПрочтениеСообщенийДокумента(ЭлектронныйДокумент)
+ РегистрыСведений.ТекстовыеСообщенияДокументовЭДО.УстановитьПрочтениеСообщенийДокумента(ЭлектронныйДокумент);
+КонецПроцедуры
+
#КонецОбласти // ОбработчикиКоманд
#Область СлужебныеПроцедурыИФункции_МобильныйКлиент
diff --git a/src/Documents/ЭлектронныйДокументИсходящийЭДО/Forms/ФормаПросмотраЛегкийКлиентЭДО/Ext/Form.xml b/src/Documents/ЭлектронныйДокументИсходящийЭДО/Forms/ФормаПросмотраЛегкийКлиентЭДО/Ext/Form.xml
index 8fd8d520f..f384045f8 100644
--- a/src/Documents/ЭлектронныйДокументИсходящийЭДО/Forms/ФормаПросмотраЛегкийКлиентЭДО/Ext/Form.xml
+++ b/src/Documents/ЭлектронныйДокументИсходящийЭДО/Forms/ФормаПросмотраЛегкийКлиентЭДО/Ext/Form.xml
@@ -1373,7 +1373,6 @@
- false
- СоставПакета
SearchStringRepresentation
@@ -1382,7 +1381,6 @@
- false
- СоставПакета
ViewStatusRepresentation
@@ -1391,7 +1389,6 @@
- false
- СоставПакета
SearchControl
@@ -1556,6 +1553,9 @@
+
+ ГруппаСтраницыПанельЗакладокПриСменеСтраницы
+
@@ -2439,7 +2439,6 @@
- false
- Подписи
SearchStringRepresentation
@@ -2448,7 +2447,6 @@
- false
- Подписи
ViewStatusRepresentation
@@ -2458,7 +2456,6 @@
- false
- Подписи
SearchControl
@@ -4270,6 +4267,17 @@
+
+
+
+ ru
+ Устанавливать прочтение сообщений
+
+
+
+ xs:boolean
+
+
diff --git a/src/Documents/ЭлектронныйДокументИсходящийЭДО/Forms/ФормаПросмотраЛегкийКлиентЭДО/Ext/Form/Module.bsl b/src/Documents/ЭлектронныйДокументИсходящийЭДО/Forms/ФормаПросмотраЛегкийКлиентЭДО/Ext/Form/Module.bsl
index fd3393f75..a47f5e4d6 100644
--- a/src/Documents/ЭлектронныйДокументИсходящийЭДО/Forms/ФормаПросмотраЛегкийКлиентЭДО/Ext/Form/Module.bsl
+++ b/src/Documents/ЭлектронныйДокументИсходящийЭДО/Forms/ФормаПросмотраЛегкийКлиентЭДО/Ext/Form/Module.bsl
@@ -21,6 +21,8 @@
ОповеститьОПрочтении = Истина;
КонецЕсли;
+ УстанавливатьПрочтениеСообщений = Истина;
+
// СтандартныеПодсистемы.ПодключаемыеКоманды
ПараметрыРазмещения = ПодключаемыеКоманды.ПараметрыРазмещения();
ПараметрыРазмещения.КоманднаяПанель = Элементы.ГруппаПанельКоманд;
@@ -335,6 +337,13 @@
КонецПроцедуры
+&НаКлиенте
+Процедура ГруппаСтраницыПанельЗакладокПриСменеСтраницы(Элемент, ТекущаяСтраница)
+ Если ТекущаяСтраница.Имя = "СтраницаСообщения" И УстанавливатьПрочтениеСообщений Тогда
+ УстановитьПрочтениеСообщенийДокумента(Объект.Ссылка);
+ УстанавливатьПрочтениеСообщений = Ложь;
+ КонецЕсли;
+КонецПроцедуры
#КонецОбласти // ОбработчикиСобытийЭлементовШапкиФормы
#Область ОбработчикиСобытийЭлементовТаблицыФормыСоставПакета
@@ -1054,7 +1063,7 @@
&НаКлиенте
Процедура СостояниеОбработкаНажатия(Команда)
- ОбщегоНазначенияКлиент.ПоказатьФормуРедактированияКомментария(КомментарийСостояния, ЭтотОбъект);
+ ИнтерфейсДокументовЭДОКлиент.ПоказатьКомментарийКСостояниюДокумента(КомментарийСостояния);
КонецПроцедуры
&НаКлиенте
@@ -3939,6 +3948,11 @@
НастройкиЭДО.УстановитьИспользованиеПросмотраPDFДокументовЭДО(ВключитьПоле);
КонецПроцедуры
+&НаСервереБезКонтекста
+Процедура УстановитьПрочтениеСообщенийДокумента(ЭлектронныйДокумент)
+ РегистрыСведений.ТекстовыеСообщенияДокументовЭДО.УстановитьПрочтениеСообщенийДокумента(ЭлектронныйДокумент);
+КонецПроцедуры
+
#Область ПодключаемыеКоманды
// СтандартныеПодсистемы.ПодключаемыеКоманды
diff --git a/src/Documents/ЭлектронныйЗаказЗаявка.xml b/src/Documents/ЭлектронныйЗаказЗаявка.xml
index 89316f983..a2feafeda 100644
--- a/src/Documents/ЭлектронныйЗаказЗаявка.xml
+++ b/src/Documents/ЭлектронныйЗаказЗаявка.xml
@@ -1522,7 +1522,7 @@
-
+
diff --git a/src/Documents/ЭлектронныйЗаказЗаявка/Forms/ТитулПеревозчикаОснованиеВладенияТСРеквизитыСторон.xml b/src/Documents/ЭлектронныйЗаказЗаявка/Forms/ОснованиеВладенияТСРеквизитыСторон.xml
similarity index 92%
rename from src/Documents/ЭлектронныйЗаказЗаявка/Forms/ТитулПеревозчикаОснованиеВладенияТСРеквизитыСторон.xml
rename to src/Documents/ЭлектронныйЗаказЗаявка/Forms/ОснованиеВладенияТСРеквизитыСторон.xml
index fa5cbb144..cf47ecd13 100644
--- a/src/Documents/ЭлектронныйЗаказЗаявка/Forms/ТитулПеревозчикаОснованиеВладенияТСРеквизитыСторон.xml
+++ b/src/Documents/ЭлектронныйЗаказЗаявка/Forms/ОснованиеВладенияТСРеквизитыСторон.xml
@@ -2,7 +2,7 @@