ПослеОпределенияПолучателей (БСП)

Автор: 1С
ОбщийМодуль.ОбменДаннымиВМоделиСервиса
БСП

После определения получателей. Обработчик "После определения получателей".

// Обработчик "После определения получателей".
// Вызывается при регистрации объектов в плане обмена.
// Устанавливает константу-признак изменения данных
// и отсылает менеджеру сервиса сообщение об изменении с номером текущей области.
//
// Параметры:
//   Данные         - СправочникОбъект, ДокументОбъект - Объект для получения значений реквизитов и других свойств.
//   Получатели     - Массив - Массив элементов типа ПланОбменаСсылка.<Имя> - Узлы плана обмена.
//   ИмяПланаОбмена - Строка - имя плана обмена, как оно задано в конфигураторе.
//
Процедура ПослеОпределенияПолучателей(Данные, Получатели, ИмяПланаОбмена) Экспорт
	
	Если Не ОбщегоНазначения.ПодсистемаСуществует("ТехнологияСервиса") Тогда
		Возврат;
	КонецЕсли;
	
	МодульРаботаВМоделиСервиса = ОбщегоНазначения.ОбщийМодуль("РаботаВМоделиСервиса");
	
	Если ОбщегоНазначения.РазделениеВключено() Тогда
		
		Если Данные.ОбменДанными.Загрузка Тогда
			Возврат;
		КонецЕсли;
		
		Если Получатели.Количество() > 0
			И ОбменДаннымиВМоделиСервисаПовтИсп.ЭтоПланОбменаСинхронизацииДанных(ИмяПланаОбмена)
			И Не ПолучитьФункциональнуюОпцию("ЗарегистрированыИзмененияДанных") Тогда
			
			Если МодульРаботаВМоделиСервиса.СеансЗапущенБезРазделителей() Тогда
				
				УстановитьПризнакИзмененияДанных();
			Иначе
				
				Попытка
					ФоновыеЗадания.Выполнить("ОбменДаннымиВМоделиСервиса.УстановитьПризнакИзмененияДанных",, "1");
				Исключение
					ЗаписьЖурналаРегистрации(НСтр("ru = 'Обмен данными'", ОбщегоНазначения.КодОсновногоЯзыка()),
						УровеньЖурналаРегистрации.Ошибка, , , ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()));
				КонецПопытки;
			КонецЕсли;
			
		КонецЕсли;
		
	Иначе
		
		// Выгружаем в сервис изменения только для прикладных данных (разделенных
		// разделителем ОбластьДанныхОсновныеДанные).
		Если АвтономнаяРаботаСлужебный.ЭтоАвтономноеРабочееМесто()
			И Не МодульРаботаВМоделиСервиса.ЭтоРазделенныйОбъектМетаданных(Данные.Метаданные(),
				МодульРаботаВМоделиСервиса.РазделительОсновныхДанных()) Тогда
			
			ОбщегоНазначенияКлиентСервер.УдалитьЗначениеИзМассива(Получатели, АвтономнаяРаботаСлужебный.ПриложениеВСервисе());
		КонецЕсли;
		
	КонецЕсли;
	
КонецПроцедуры

///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2019, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются 
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////

Рекомендации

Похожие публикации

ПолучитьСвойстваСертификатовНаКлиентеПослеПолученияХранилищаПолучателей (БСП)

ПолучитьСвойстваСертификатовНаКлиентеПослеПолученияВсехСертификатовПолучателей (БСП)

СформироватьСписокПолучателейРассылки (БСП)

ИнициализироватьСтруктуруПолучатели (БСП)

ВсеПолучатели (БСП)

ПриВыбореРеквизитовОбъекта (БСП)

РезультатАнализаОшибочныхПолучателей (БСП)

ПолучитьПредставленияПолучателейВходящегоПисьма (БСП)

Обновлятор-1С: групповое (пакетное) обновление и обслуживание всех баз за один раз