ВыполнитьДействиеОбменаДляУзлаИнформационнойБазы (БСП)

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

Выполнить действие обмена для узла информационной базы. Выполняет отправку или получение данных для узла информационной базы используя любой из

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

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

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

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

ВыполнитьОбменДаннымиДляУзлаИнформационнойБазыЧерезФайлИлиСтроку (БСП)

ВыполнитьДействиеСценарияОбменаДаннымиВоВторойИнформационнойБазе (БСП)

ВыполнитьДействиеСценарияОбменаДаннымиВПервойИнформационнойБазе (БСП)

СостоянияОбменовДанными (БСП)

ВыполнитьДействиеСценарияОбменаДаннымиВПервойИнформационнойБазеИзНеразделенногоСеанса (БСП)

ВыполнитьДействиеСценарияОбменаДаннымиВоВторойИнформационнойБазеИзНеразделенногоСеанса (БСП)

ВыполнитьОбменДаннымиДляУзлаИнформационнойБазы (БСП)

ВыполнитьОбменДаннымиДляУзлаИнформационнойБазыЗавершениеДлительнойОперации (БСП)

ВыполнитьДействияПослеЗагрузкиПользователяИнформационнойБазы (БСП)

Синтакс-помощник БСП с нейросетевым ассистентом