mirror of
https://github.com/Bayselonarrend/OpenIntegrations.git
synced 2024-12-25 02:42:28 +02:00
Параметр out для вывода результата в файл
This commit is contained in:
parent
8f48226408
commit
718b2760eb
@ -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 для полчения дополнительной информации";
|
||||
КонецЕсли;
|
||||
|
||||
КонецФункции
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
#КонецОбласти
|
||||
|
@ -34,6 +34,8 @@
|
||||
| Стандартные опции:
|
||||
| --help - выводит справку по текущей команде или методу. Аналогично вызову команды без опций
|
||||
| --debug - флаг, отвечающий за предоставление более подробной информации при работе программы
|
||||
| --out - опция пути к файлу сохранения результата. Обязательна для методов скачивания файлов
|
||||
| (двоичных данных). В остальных случаях можно использовать стандартные механизмы (>)
|
||||
|", СтатусСообщения.Информация);
|
||||
|
||||
Сообщить("Полную документацию можно найти по адресу: https://opi.neocities.org" + Символы.ПС
|
||||
|
Loading…
Reference in New Issue
Block a user