You've already forked OpenIntegrations
mirror of
https://github.com/Bayselonarrend/OpenIntegrations.git
synced 2025-08-10 22:41:43 +02:00
CLI: Фикс сохранения ошибок в файл при заполненном out
This commit is contained in:
@@ -510,6 +510,7 @@
|
||||
КонецЕсли;
|
||||
|
||||
ФайлРезультата = ПолучитьИмяВременногоФайла();
|
||||
|
||||
СтрокаЗапуска = Oint + " " + Библиотека + " " + Метод;
|
||||
|
||||
Для Каждого Опция Из Опции Цикл
|
||||
@@ -526,6 +527,22 @@
|
||||
|
||||
ЗапуститьПриложение(СтрокаЗапуска + " --out """ + ФайлРезультата + """", , Истина);
|
||||
|
||||
Результат = ПрочестьРезультатCLI(ФайлРезультата);
|
||||
|
||||
ЗаписатьВызовCLI(Библиотека, Метод, Опции);
|
||||
|
||||
Попытка
|
||||
УдалитьФайлы(ФайлРезультата);
|
||||
Исключение
|
||||
Сообщить("Не удалось удалить временный файл после теста!");
|
||||
КонецПопытки;
|
||||
|
||||
Возврат Результат;
|
||||
|
||||
КонецФункции
|
||||
|
||||
Функция ПрочестьРезультатCLI(Знач ФайлРезультата)
|
||||
|
||||
Попытка
|
||||
|
||||
ЧтениеJSON = Новый ЧтениеJSON();
|
||||
@@ -545,14 +562,6 @@
|
||||
|
||||
КонецПопытки;
|
||||
|
||||
ЗаписатьВызовCLI(Библиотека, Метод, Опции);
|
||||
|
||||
Попытка
|
||||
УдалитьФайлы(ФайлРезультата);
|
||||
Исключение
|
||||
Сообщить("Не удалось удалить временный файл после теста!");
|
||||
КонецПопытки;
|
||||
|
||||
Возврат Результат;
|
||||
|
||||
КонецФункции
|
||||
|
@@ -73,7 +73,7 @@
|
||||
Парсер.ДобавитьКоманду(Команда);
|
||||
|
||||
Иначе
|
||||
Справка.ВывестиСообщениеИсключения("Команда");
|
||||
Справка.ВывестиСообщениеИсключения("Команда", ФайлВывода);
|
||||
КонецЕсли;
|
||||
|
||||
КонецПроцедуры
|
||||
@@ -118,7 +118,7 @@
|
||||
ПараметрыМетода = ТаблицаПараметров.НайтиСтроки(ОтборКоманды);
|
||||
|
||||
Если Не ЗначениеЗаполнено(ПараметрыМетода) Тогда
|
||||
Справка.ВывестиСообщениеИсключения("Метод");
|
||||
Справка.ВывестиСообщениеИсключения("Метод", ФайлВывода);
|
||||
КонецЕсли;
|
||||
|
||||
Если Параметры.Количество() = ЧислоСтандартныхПараметров Или Параметры["--help"] Тогда
|
||||
@@ -285,7 +285,7 @@
|
||||
|
||||
КонецЕсли;
|
||||
|
||||
Справка.ВывестиСообщениеИсключения(Информация);
|
||||
Справка.ВывестиСообщениеИсключения(Информация, ФайлВывода);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
@@ -380,7 +380,7 @@
|
||||
Информация = КраткоеПредставлениеОшибки(ИнформацияОбОшибке());
|
||||
КонецЕсли;
|
||||
|
||||
Справка.ВывестиСообщениеИсключения(Информация);
|
||||
Справка.ВывестиСообщениеИсключения(Информация, ФайлВывода);
|
||||
|
||||
КонецПопытки;
|
||||
|
||||
|
@@ -158,7 +158,9 @@
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура ВывестиСообщениеИсключения(Знач Причина) Экспорт
|
||||
Процедура ВывестиСообщениеИсключения(Знач Причина, Знач ФайлВывода = "") Экспорт
|
||||
|
||||
ФайлВывода = Строка(ФайлВывода);
|
||||
|
||||
Если Причина = "Команда" Тогда
|
||||
Текст = "Некорректная команда! Проверьте правильность ввода";
|
||||
@@ -176,6 +178,20 @@
|
||||
Текст = Символы.ПС + Текст + Символы.ПС;
|
||||
|
||||
Сообщить(Текст, СтатусСообщения.ОченьВажное);
|
||||
|
||||
Если ЗначениеЗаполнено(ФайлВывода) Тогда
|
||||
|
||||
ТекстДД = ПолучитьДвоичныеДанныеИзСтроки(Текст);
|
||||
|
||||
Попытка
|
||||
ТекстДД.Записать(ФайлВывода);
|
||||
Сообщить("Сообщение об ошибке сохранено в файл: " + ФайлВывода, СтатусСообщения.Внимание);
|
||||
Исключение
|
||||
Сообщить("Не удалось сохранить ошибку в файл вывода: " + ОписаниеОшибки(), СтатусСообщения.Внимание);
|
||||
КонецПопытки;
|
||||
|
||||
КонецЕсли;
|
||||
|
||||
ЗавершитьРаботу(Код);
|
||||
|
||||
КонецПроцедуры
|
||||
|
Reference in New Issue
Block a user