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

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

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

// Точка входа для выполнения итерации обмена данными - загрузки и выгрузки данных для узла плана обмена.
//
// Параметры:
//  УзелИнформационнойБазы - ПланОбменаСсылка - узел плана обмена, для которого выполняется итерация обмена данными.
//  ПараметрыОбменаДляУзла - Структура - содержит следующие параметры:
//    * ВыполнятьЗагрузку - Булево - флаг необходимости выполнять загрузку данных.
//        Необязательный, значение по умолчанию Истина.
//    * ВыполнятьВыгрузку - Булево - флаг необходимости выполнять выгрузку данных.
//        Необязательный, значение по умолчанию Истина.
//    * ВидТранспортаСообщенийОбмена - ПеречислениеСсылка.ВидыТранспортаСообщенийОбмена - вид транспорта, 
//        который будет использоваться в процессе обмена данными. 
//        Если в РС значение не задано, то значение по умолчанию - Перечисления.ВидыТранспортаСообщенийОбмена.FILE.
//        Необязательный, значение по умолчанию Неопределено.
//    * ДлительнаяОперация - Булево - содержит сведения о том, является ли операция длительной.
//        Необязательный, значение по умолчанию Ложь.
//    * ИдентификаторОперации - Строка - содержит идентификатор длительной операции в виде строки.
//        Необязательный, значение по умолчанию пустая строка.
//    * ИдентификаторФайла - Строка - идентификатор файла сообщения в сервисе.
//        Необязательный, значение по умолчанию пустая строка.
//    * ДлительнаяОперацияРазрешена - Булево - содержит признак того, что длительная операция разрешена.
//        Необязательный, значение по умолчанию Ложь.
//    * ПараметрыАутентификации - Структура - содержит параметры аутентификации для обмена через Web-сервис.
//        Необязательный, значение по умолчанию Неопределено.
//    * ТолькоПараметры - Булево - содержит признак выборочной загрузки данных при обмене РИБ.
//        Необязательный, значение по умолчанию Ложь.
//  Отказ - Булево - флаг отказа; поднимается в случае возникновения ошибки при выполнении обмена.
//  ДополнительныеПараметры - Структура - зарезервировано для служебного использования.
// 
Процедура ВыполнитьОбменДаннымиДляУзлаИнформационнойБазы(УзелИнформационнойБазы,
		ПараметрыОбмена, Отказ, ДополнительныеПараметры = Неопределено) Экспорт
		
	Если ДополнительныеПараметры = Неопределено Тогда
		ДополнительныеПараметры = Новый Структура;
	КонецЕсли;
		
	ДействиеЗагрузка = Перечисления.ДействияПриОбмене.ЗагрузкаДанных;
	ДействиеВыгрузка = Перечисления.ДействияПриОбмене.ВыгрузкаДанных;
	
	ПроверитьВозможностьВыполненияОбменов();
	
	ПроверитьИспользованиеОбменаДанными();
	
	// Обмен через внешнее соединение.
	Если ПараметрыОбмена.ВидТранспортаСообщенийОбмена = Перечисления.ВидыТранспортаСообщенийОбмена.COM Тогда
		
		ПроверитьВозможностьВнешнегоСоединения();
		
		Если ПараметрыОбмена.ВыполнятьЗагрузку Тогда
			ВыполнитьДействиеОбменаДляУзлаИнформационнойБазыПоВнешнемуСоединению(Отказ,
				УзелИнформационнойБазы, ДействиеЗагрузка, Неопределено);
		КонецЕсли;
		
		Если ПараметрыОбмена.ВыполнятьВыгрузку Тогда
			ВыполнитьДействиеОбменаДляУзлаИнформационнойБазыПоВнешнемуСоединению(Отказ,
				УзелИнформационнойБазы, ДействиеВыгрузка, Неопределено, ПараметрыОбмена.СообщениеДляСопоставленияДанных);
		КонецЕсли;
		
	ИначеЕсли ПараметрыОбмена.ВидТранспортаСообщенийОбмена = Перечисления.ВидыТранспортаСообщенийОбмена.WS Тогда // Обмен через Web-сервис
		
		Если ПараметрыОбмена.ВыполнятьЗагрузку Тогда
			ВыполнитьДействиеОбменаДляУзлаИнформационнойБазыЧерезWebСервис(Отказ,
				УзелИнформационнойБазы, ДействиеЗагрузка, ПараметрыОбмена);
		КонецЕсли;
		
		Если ПараметрыОбмена.ВыполнятьВыгрузку Тогда
			ВыполнитьДействиеОбменаДляУзлаИнформационнойБазыЧерезWebСервис(Отказ,
				УзелИнформационнойБазы, ДействиеВыгрузка, ПараметрыОбмена);
		КонецЕсли;
			
	Иначе // Обмен через обычные каналы связи.
		
		ТолькоПараметры = ПараметрыОбмена.ТолькоПараметры;
		ВидТранспортаСообщенийОбмена = ПараметрыОбмена.ВидТранспортаСообщенийОбмена;
		
		Если ПараметрыОбмена.ВыполнятьЗагрузку Тогда
			ВыполнитьДействиеОбменаДляУзлаИнформационнойБазы(Отказ, УзелИнформационнойБазы,
				ДействиеЗагрузка, ВидТранспортаСообщенийОбмена, ТолькоПараметры, ДополнительныеПараметры);
		КонецЕсли;
		
		Если ПараметрыОбмена.ВыполнятьВыгрузку Тогда
			ВыполнитьДействиеОбменаДляУзлаИнформационнойБазы(Отказ, УзелИнформационнойБазы,
				ДействиеВыгрузка, ВидТранспортаСообщенийОбмена, ТолькоПараметры, ДополнительныеПараметры);
		КонецЕсли;
		
	КонецЕсли;
	
КонецПроцедуры

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

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

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

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

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

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

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

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

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

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

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

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

1С Менеджер конфигураций