ПодтвердитьОбработкуФайлаОбменаДанными (БСП)

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

Подтвердить обработку файла обмена данными. Выполняет отправляет подтверждение загрузки файла обмена на Портал 1С:ИТС.

// Выполняет отправляет подтверждение загрузки файла обмена на Портал 1С:ИТС.
//
// Параметры:
//  ИдентификаторОбмена - Строка - идентификатор обмена данными на Портале 1С:ИТС;
//  ИдентификаторФайла  - Строка - идентификатор файла обмена в сервисе;
//
// Возвращаемое значение:
//   Структура - содержит результат операции:
//    *КодОшибки - Строка - код ошибки сервиса обмена данными;
//    *СообщениеОбОшибке - Строка - описание ошибки для пользователя;
//
Функция ПодтвердитьОбработкуФайлаОбменаДанными(ИдентификаторОбмена, ИдентификаторФайла) Экспорт
	
	ЗаписатьИнформациюВЖурналРегистрации(
		НСтр("ru = 'Начало отправки подтверждения загрузки файла.'"),
		Ложь);
	
	РезультатОперации = Новый Структура;
	РезультатОперации.Вставить("КодОшибки",              "");
	РезультатОперации.Вставить("СообщениеОбОшибке",      "");
	
	ПараметрыПодключения = ИнициализироватьПараметрыПодключения();
	
	URLОперации = URLОперацииСервиса("/package/confirm");
	
	Результат = ДанныеАутентификации(URLОперации);
	
	Если Результат.Ошибка Тогда
		РезультатОперации.КодОшибки = КодОшибкиНеверныйЛогинИлиПароль();
		РезультатОперации.СообщениеОбОшибке = Результат.ИнформацияОбОшибке;
		Возврат РезультатОперации;
	КонецЕсли;
	
	ПараметрыЗапросаJSON = packageconfirm(
		ИдентификаторОбмена,
		ИдентификаторФайла,
		Результат.ДанныеАутентификации,
		ИнтернетПоддержкаПользователей.ДополнительныеПараметрыВызоваОперацииСервиса());
	
	Заголовки = Новый Соответствие;
	Заголовки.Вставить("Content-Type", "application/json");
	
	ПараметрыОтправки = Новый Структура;
	ПараметрыОтправки.Вставить("Метод"                   , "POST");
	ПараметрыОтправки.Вставить("ФорматОтвета"            , 1);
	ПараметрыОтправки.Вставить("Заголовки"               , Заголовки);
	ПараметрыОтправки.Вставить("ДанныеДляОбработки"      , ПараметрыЗапросаJSON);
	ПараметрыОтправки.Вставить("ФорматДанныхДляОбработки", 1);
	ПараметрыОтправки.Вставить("НастройкиПрокси"         , ПараметрыПодключения.НастройкиПроксиСервера);
	ПараметрыОтправки.Вставить("Таймаут"                 , 30);
	
	// Вызов операции сервиса.
	РезультатОтправки = ИнтернетПоддержкаПользователей.ЗагрузитьСодержимоеИзИнтернет(
		URLОперации,
		,
		,
		ПараметрыОтправки);
	
	Если Не ПустаяСтрока(РезультатОтправки.КодОшибки) Тогда
		
		РезультатОперации.КодОшибки         = ПереопределитьКодОшибкиСервиса(РезультатОтправки.КодСостояния);
		РезультатОперации.СообщениеОбОшибке = ПереопределитьСообщениеПользователю(РезультатОперации.КодОшибки);
		
		ЧастиСтрок = Новый Массив;
		ЧастиСтрок.Добавить(НСтр("ru = 'Не удалось отправить подтверждение загрузки файла обмена.'"));
		ЧастиСтрок.Добавить(Символы.ПС);
		ЧастиСтрок.Добавить(РезультатОперации.СообщениеОбОшибке);
		ЧастиСтрок.Добавить(Символы.ПС);
		ЧастиСтрок.Добавить(Символы.ПС);
		ЧастиСтрок.Добавить(СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
			НСтр("ru = 'Техническая информация об ошибке:
				|При отправке подтверждения загрузки файла сервис вернул ошибку.
				|URL: %1
				|Код ошибки: %2
				|Подробная информация:
				|%3'"),
			URLОперации,
			РезультатОтправки.КодОшибки,
			РезультатОтправки.ИнформацияОбОшибке));
		
		ИнформацияОбОшибке = Новый ФорматированнаяСтрока(ЧастиСтрок);
		
		ЗаписатьИнформациюВЖурналРегистрации(
			Строка(ИнформацияОбОшибке),
			Истина);
		
		Возврат РезультатОперации;
		
	КонецЕсли;
	
	ЗаписатьИнформациюВЖурналРегистрации(
		НСтр("ru = 'Завершена отправка подтверждения о загрузке файла.'"),
		Ложь);
	
	Возврат РезультатОперации;
	
КонецФункции

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

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

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

ФайлОбменаДанными (БСП)

ВыполнитьОбменДаннымиОбработкаКоманды (БСП)

ОписаниеФайлаОбменаДанными (БСП)

ПараметрыОбменаДаннымиЧерезФайлИлиСтроку (БСП)

ОткрытьПомощникСопоставленияОбъектовОбработкаКоманды (БСП)

ИнтерактивнаяОбработкаПовторитьЗагрузкуСообщенияОбменаДаннымиПередЗапуском (БСП)

ОткрытьФайлВыгрузки (БСП)

ОткрытьФайлЗагрузки (БСП)

ПередЗагрузкойФайлаОбменаДанными (БСП)

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