1
0
mirror of https://github.com/Bayselonarrend/OpenIntegrations.git synced 2024-12-25 02:42:28 +02:00

Параметр out для вывода результата в файл

This commit is contained in:
Anton Titovets 2024-04-10 13:31:28 +03:00
parent 8f48226408
commit 718b2760eb
2 changed files with 43 additions and 5 deletions

View File

@ -7,6 +7,7 @@
Перем Парсер;
Перем Отладка;
Перем Тестирование;
Перем ФайлВывода;
#Область СлужебныеПроцедурыИФункции
@ -78,6 +79,7 @@
УстановитьРежимОтладки(Параметры);
УстановитьРежимТеста(Параметры);
УстановитьФайлВывода(Параметры);
Если Отладка Или Тестирование Тогда
@ -117,7 +119,7 @@
КонецЕсли;
Справка.ВывестиСообщениеИсключения(Информация);
КонецПопытки;
КонецПроцедуры
@ -181,10 +183,6 @@
КонецЕсли;
Если ТипЗнч(Вывод) = Тип("ДвоичныеДанные") Тогда
Вывод = Base64Строка(Вывод);
КонецЕсли;
КонецПроцедуры
Функция СформироватьСтрокуВызоваМетода(Знач ПереданныеПараметры, Знач ПараметрыМетода, Знач Модуль, Знач Метод)
@ -248,6 +246,15 @@
КонецПроцедуры
Процедура УстановитьФайлВывода(Знач Параметры)
Вывод = Параметры["--out"];
Если ЗначениеЗаполнено(Вывод) Тогда
ФайлВывода = Вывод;
КонецЕсли;
КонецПроцедуры
Процедура СообщитьРезультат(Знач Текст, Знач Статус = "")
@ -255,10 +262,39 @@
Статус = СтатусСообщения.БезСтатуса;
КонецЕсли;
Если ЗначениеЗаполнено(ФайлВывода) Тогда
Текст = ЗаписатьЗначениеВФайл(Текст, ФайлВывода);
КонецЕсли;
Сообщить(Текст, Статус);
КонецПроцедуры
Функция ЗаписатьЗначениеВФайл(Знач Значение, Знач Путь)
ЕдиницаДанных = 1024 * 1024;
Если ТипЗнч(Значение) = Тип("ДвоичныеДанные") Тогда
Значение.Записать(Путь);
Иначе
ТекстовыйДокумент = Новый ТекстовыйДокумент();
ТекстовыйДокумент.УстановитьТекст(Значение);
ТекстовыйДокумент.Записать(Путь);
КонецЕсли;
ЗаписанныйФайл = Новый Файл(Путь);
Если ЗаписанныйФайл.Существует() Тогда
Возврат "Файл размера "
+ Строка(ЗаписанныйФайл.Размер() / ЕдиницаДанных)
+ " МБ был записан в "
+ ЗаписанныйФайл.ПолноеИмя;
Иначе
ВызватьИсключение "Файл не был записан! Используйте флаг --debug для полчения дополнительной информации";
КонецЕсли;
КонецФункции
#КонецОбласти
#КонецОбласти

View File

@ -34,6 +34,8 @@
| Стандартные опции:
| --help - выводит справку по текущей команде или методу. Аналогично вызову команды без опций
| --debug - флаг, отвечающий за предоставление более подробной информации при работе программы
| --out - опция пути к файлу сохранения результата. Обязательна для методов скачивания файлов
| (двоичных данных). В остальных случаях можно использовать стандартные механизмы (>)
|", СтатусСообщения.Информация);
Сообщить("Полную документацию можно найти по адресу: https://opi.neocities.org" + Символы.ПС