ЗагрузитьФайлИсправления (БСП)

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

Загрузить файл исправления.

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