После определения получателей. Обработчик "После определения получателей".
// Обработчик "После определения получателей".
// Вызывается при регистрации объектов в плане обмена.
// Устанавливает константу-признак изменения данных
// и отсылает менеджеру сервиса сообщение об изменении с номером текущей области.
//
// Параметры:
// Данные - СправочникОбъект, ДокументОбъект - Объект для получения значений реквизитов и других свойств.
// Получатели - Массив - Массив элементов типа ПланОбменаСсылка.<Имя> - Узлы плана обмена.
// ИмяПланаОбмена - Строка - имя плана обмена, как оно задано в конфигураторе.
//
Процедура ПослеОпределенияПолучателей(Данные, Получатели, ИмяПланаОбмена) Экспорт
Если Не ОбщегоНазначения.ПодсистемаСуществует("ТехнологияСервиса") Тогда
Возврат;
КонецЕсли;
МодульРаботаВМоделиСервиса = ОбщегоНазначения.ОбщийМодуль("РаботаВМоделиСервиса");
Если ОбщегоНазначения.РазделениеВключено() Тогда
Если Данные.ОбменДанными.Загрузка Тогда
Возврат;
КонецЕсли;
Если Получатели.Количество() > 0
И ОбменДаннымиВМоделиСервисаПовтИсп.ЭтоПланОбменаСинхронизацииДанных(ИмяПланаОбмена)
И Не ПолучитьФункциональнуюОпцию("ЗарегистрированыИзмененияДанных") Тогда
Если МодульРаботаВМоделиСервиса.СеансЗапущенБезРазделителей() Тогда
УстановитьПризнакИзмененияДанных();
Иначе
Попытка
ФоновыеЗадания.Выполнить("ОбменДаннымиВМоделиСервиса.УстановитьПризнакИзмененияДанных",, "1");
Исключение
ЗаписьЖурналаРегистрации(НСтр("ru = 'Обмен данными'", ОбщегоНазначения.КодОсновногоЯзыка()),
УровеньЖурналаРегистрации.Ошибка, , , ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()));
КонецПопытки;
КонецЕсли;
КонецЕсли;
Иначе
// Выгружаем в сервис изменения только для прикладных данных (разделенных
// разделителем ОбластьДанныхОсновныеДанные).
Если АвтономнаяРаботаСлужебный.ЭтоАвтономноеРабочееМесто()
И Не МодульРаботаВМоделиСервиса.ЭтоРазделенныйОбъектМетаданных(Данные.Метаданные(),
МодульРаботаВМоделиСервиса.РазделительОсновныхДанных()) Тогда
ОбщегоНазначенияКлиентСервер.УдалитьЗначениеИзМассива(Получатели, АвтономнаяРаботаСлужебный.ПриложениеВСервисе());
КонецЕсли;
КонецЕсли;
КонецПроцедуры
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2019, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
ПолучитьСвойстваСертификатовНаКлиентеПослеПолученияХранилищаПолучателей (БСП)
ПолучитьСвойстваСертификатовНаКлиентеПослеПолученияВсехСертификатовПолучателей (БСП)
СформироватьСписокПолучателейРассылки (БСП)
ИнициализироватьСтруктуруПолучатели (БСП)
ПриВыбореРеквизитовОбъекта (БСП)
Канал FastCode 1C в Телеграм! Шаблоны кода, статьи, полезные советы, курсы по 1С (8К участников)