ВыполнитьОбновлениеНастроекПодключенияКонечнойТочки (БСП)

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

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

// Только для внутреннего использования.
Процедура ВыполнитьОбновлениеНастроекПодключенияКонечнойТочки(Отказ, КонечнаяТочка, НастройкиПодключенияОтправителя, НастройкиПодключенияПолучателя) Экспорт
	
	УстановитьПривилегированныйРежим(Истина);
	
	СтрокаСообщенияОбОшибке = "";
	
	ВерсииКорреспондента = ВерсииКорреспондента(НастройкиПодключенияОтправителя);
	ВерсияКорреспондента_2_0_1_6 = (ВерсииКорреспондента.Найти("2.0.1.6") <> Неопределено);
	
	Если ВерсияКорреспондента_2_0_1_6 Тогда
		WSПрокси = ПолучитьWSПрокси_2_0_1_6(НастройкиПодключенияОтправителя, СтрокаСообщенияОбОшибке);
	Иначе
		WSПрокси = ПолучитьWSПрокси(НастройкиПодключенияОтправителя, СтрокаСообщенияОбОшибке);
	КонецЕсли;
	
	Если WSПрокси = Неопределено Тогда
		Отказ = Истина;
		ЗаписьЖурналаРегистрации(СобытиеЖурналаРегистрацииПодключениеКонечнойТочки(), УровеньЖурналаРегистрации.Ошибка,,, СтрокаСообщенияОбОшибке);
		Возврат;
	КонецЕсли;
	
	Попытка
		Если ВерсияКорреспондента_2_0_1_6 Тогда
			WSПрокси.TestConnectionRecipient(СериализаторXDTO.ЗаписатьXDTO(НастройкиПодключенияПолучателя), КодЭтогоУзла());
		Иначе
			WSПрокси.TestConnectionRecipient(ЗначениеВСтрокуВнутр(НастройкиПодключенияПолучателя), КодЭтогоУзла());
		КонецЕсли;
	Исключение
		Отказ = Истина;
		ЗаписьЖурналаРегистрации(СобытиеЖурналаРегистрацииПодключениеКонечнойТочки(), УровеньЖурналаРегистрации.Ошибка,,, ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()));
		Возврат;
	КонецПопытки;
	
	НачатьТранзакцию();
	Попытка
		
		// Обновляем настройки подключения.
		СтруктураЗаписи = Новый Структура;
		СтруктураЗаписи.Вставить("КонечнаяТочка", КонечнаяТочка);
		
		СтруктураЗаписи.Вставить("АдресВебСервиса", НастройкиПодключенияОтправителя.WSURLВебСервиса);
		СтруктураЗаписи.Вставить("ИмяПользователя", НастройкиПодключенияОтправителя.WSИмяПользователя);
		СтруктураЗаписи.Вставить("Пароль",          НастройкиПодключенияОтправителя.WSПароль);
		СтруктураЗаписи.Вставить("ЗапомнитьПароль", Истина);
		
		// добавляем запись в РС
		РегистрыСведений.НастройкиТранспортаОбменаСообщениями.ОбновитьЗапись(СтруктураЗаписи);
		
		Если Не КонечнаяТочка = ПланыОбмена.ОбменСообщениями.ЭтотУзел() Тогда
			Если ВерсияКорреспондента_2_0_1_6 Тогда
				WSПрокси.UpdateConnectionSettings(КодЭтогоУзла(), СериализаторXDTO.ЗаписатьXDTO(НастройкиПодключенияПолучателя));
			Иначе
				WSПрокси.UpdateConnectionSettings(КодЭтогоУзла(), ЗначениеВСтрокуВнутр(НастройкиПодключенияПолучателя));
			КонецЕсли;
		КонецЕсли;
		
		ЗафиксироватьТранзакцию();
	Исключение
		ОтменитьТранзакцию();
		Отказ = Истина;
		ЗаписьЖурналаРегистрации(СобытиеЖурналаРегистрацииПодключениеКонечнойТочки(), УровеньЖурналаРегистрации.Ошибка,,,
				ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()));
		Возврат;
	КонецПопытки;
	
КонецПроцедуры

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

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

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

ОбновитьНастройкиПодключенияКонечнойТочки (БСП)

ВыполнитьПодключениеКонечнойТочкиНаСторонеПолучателя (БСП)

ВыполнитьПодключениеКонечнойТочкиНаСторонеОтправителя (БСП)

ПодключитьКонечнуюТочку (БСП)

СобытиеЖурналаРегистрацииПодключениеКонечнойТочки (БСП)

ЗаблокироватьКонечныеТочки (БСП)

УстановитьКодЭтойКонечнойТочки (БСП)

КонечнаяТочкаМенеджераСервиса (БСП)

ПриУстановкеКонечнойТочкиМенеджераСервиса (БСП)

TurboConf ИР адаптер 1.82