mirror of
https://github.com/Bayselonarrend/OpenIntegrations.git
synced 2025-02-09 13:47:03 +02:00
Преобразование OPI -> OInt (workflow)
This commit is contained in:
parent
5bcb905dc7
commit
596d84d0d3
@ -584,6 +584,7 @@
|
||||
АдресЗагрузки = Ответ.Заголовки["Location"];
|
||||
|
||||
Если Не ЗначениеЗаполнено(АдресЗагрузки) Тогда
|
||||
OPI_Инструменты.ОбработатьОтвет(Ответ);
|
||||
Возврат Ответ;
|
||||
КонецЕсли;
|
||||
|
||||
@ -627,11 +628,13 @@
|
||||
ОтветПроверки = OPI_Инструменты.Put(АдресЗагрузки, "", ДопЗаголовки, Ложь, Истина);
|
||||
|
||||
Если ОтветПроверки.КодСостояния >= 200 И ОтветПроверки.КодСостояния < 300 Тогда
|
||||
OPI_Инструменты.ОбработатьОтвет(ОтветПроверки);
|
||||
Возврат ОтветПроверки;
|
||||
ИначеЕсли ОтветПроверки.КодСостояния = 308 Тогда
|
||||
ЗагруженныеДанные = Ответ.Заголовки["Range"];
|
||||
Иначе
|
||||
Возврат Ответ;
|
||||
OPI_Инструменты.ОбработатьОтвет(Ответ);
|
||||
Возврат Ответ;
|
||||
КонецЕсли;
|
||||
|
||||
Иначе
|
||||
@ -639,6 +642,7 @@
|
||||
КонецЕсли;
|
||||
|
||||
Если Не ЗначениеЗаполнено(ЗагруженныеДанные) Тогда
|
||||
OPI_Инструменты.ОбработатьОтвет(Ответ);
|
||||
Возврат Ответ;
|
||||
КонецЕсли;
|
||||
|
||||
@ -646,24 +650,26 @@
|
||||
МассивИнформации = СтрРазделить(ЗагруженныеДанные, "-", Ложь);
|
||||
|
||||
Если Не МассивИнформации.Количество() = 2 Тогда
|
||||
OPI_Инструменты.ОбработатьОтвет(Ответ);
|
||||
Возврат Ответ;
|
||||
КонецЕсли;
|
||||
|
||||
ТекущаяПозиция = Число(МассивИнформации[1]) + 1;
|
||||
// ЧтениеДанных.Закрыть();
|
||||
|
||||
СтрТекущаяПозиция = OPI_Инструменты.ЧислоВСтроку(ТекущаяПозиция);
|
||||
Процент = Строка(Цел(ТекущаяПозиция / ОбщийРазмер * 100));
|
||||
СтрТекущаяПозицияМБ = OPI_Инструменты.ЧислоВСтроку(ТекущаяПозиция / 1024 / 1024);
|
||||
СтрОбщийРазмерМБ = OPI_Инструменты.ЧислоВСтроку(ОбщийРазмер / 1024 / 1024);
|
||||
Процент = Строка(Цел(ТекущаяПозиция / ОбщийРазмер * 100));
|
||||
|
||||
Сообщить(СтрТекущаяПозиция + "/" + СтрОбщийРазмер + " ( " + Процент + "% )");
|
||||
Сообщить(СтрТекущаяПозиция + "/" + СтрОбщийРазмер + " МБ ( " + Процент + "% )");
|
||||
|
||||
ВыполнитьСборкуМусора();
|
||||
ОсвободитьОбъект(ТекущиеДанные);
|
||||
|
||||
КонецЦикла;
|
||||
|
||||
OPI_Инструменты.ОбработатьОтвет(Ответ);
|
||||
Возврат Ответ;
|
||||
|
||||
|
||||
КонецФункции
|
||||
|
||||
#КонецОбласти
|
||||
|
@ -95,6 +95,39 @@
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
#Область Прочее
|
||||
|
||||
Процедура ОбработатьОтвет(Ответ, Знач ПолныйОтвет = Ложь) Экспорт
|
||||
|
||||
Если ПолныйОтвет Или ТипЗнч(Ответ) = Тип("HTTPОтвет") Тогда
|
||||
Возврат;
|
||||
КонецЕсли;
|
||||
|
||||
GZip = "gzip";
|
||||
НужнаРаспаковка =
|
||||
Ответ.Заголовки.Получить("Content-Encoding") = GZip
|
||||
Или Ответ.Заголовки.Получить("content-encoding") = GZip;
|
||||
|
||||
Если НужнаРаспаковка Тогда
|
||||
Ответ = РаспаковатьОтвет(Ответ);
|
||||
КонецЕсли;
|
||||
|
||||
Ответ = ?(ТипЗнч(Ответ) = Тип("HTTPОтвет"), Ответ.ПолучитьТелоКакДвоичныеДанные(), Ответ);
|
||||
|
||||
Если ТипЗнч(Ответ) = Тип("ДвоичныеДанные") Тогда
|
||||
|
||||
Попытка
|
||||
Ответ = JsonВСтруктуру(Ответ);
|
||||
Исключение
|
||||
Возврат;
|
||||
КонецПопытки;
|
||||
|
||||
КонецЕсли;
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
#Область Служебные
|
||||
@ -494,35 +527,6 @@
|
||||
|
||||
КонецФункции
|
||||
|
||||
Процедура ОбработатьОтвет(Ответ, Знач ПолныйОтвет = Ложь)
|
||||
|
||||
Если ПолныйОтвет Тогда
|
||||
Возврат;
|
||||
КонецЕсли;
|
||||
|
||||
GZip = "gzip";
|
||||
НужнаРаспаковка =
|
||||
Ответ.Заголовки.Получить("Content-Encoding") = GZip
|
||||
Или Ответ.Заголовки.Получить("content-encoding") = GZip;
|
||||
|
||||
Если НужнаРаспаковка Тогда
|
||||
Ответ = РаспаковатьОтвет(Ответ);
|
||||
КонецЕсли;
|
||||
|
||||
Ответ = ?(ТипЗнч(Ответ) = Тип("HTTPОтвет"), Ответ.ПолучитьТелоКакДвоичныеДанные(), Ответ);
|
||||
|
||||
Если ТипЗнч(Ответ) = Тип("ДвоичныеДанные") Тогда
|
||||
|
||||
Попытка
|
||||
Ответ = JsonВСтруктуру(Ответ);
|
||||
Исключение
|
||||
Возврат;
|
||||
КонецПопытки;
|
||||
|
||||
КонецЕсли;
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура УстановитьТелоЗапроса(Запрос, Знач Параметры, Знач JSON)
|
||||
|
||||
Коллекция = ТипЗнч(Параметры) = Тип("Структура")
|
||||
|
Loading…
x
Reference in New Issue
Block a user