Вход | Регистрация
 

В 8.3.15 появился стек ошибок

В 8.3.15 появился стек ошибок
Я
   Tonik992
 
13.10.19 - 20:45
Появился стек ошибок, а как из ИнформацияОбОшибке() его вытащить - не понятно. В свойствах есть информация только о номере строки текущего модуля.
ПодробноеПредставлениеОшибке(ИнформацияОбОшибке()) - покажет полный стек ошибки, что очень странно.

Незадокументированная фича или что я делаю не так? Как выскребсти полный стек ошибок программным способом?
   Tonik992
 
1 - 13.10.19 - 20:46
Выскребсти так, чтобы он был в структурированном виде, как при вызове метода ИнформацияОбОшибке()
   H A D G E H O G s
 
2 - 13.10.19 - 21:08
Ну обойди рекусривно
   Tonik992
 
3 - 13.10.19 - 21:12
(2) Не понял идею.
   ПросТак
 
4 - 13.10.19 - 21:16
(3)Трангессивным способом.
   H A D G E H O G s
 
5 - 13.10.19 - 21:17
ИнформацияОбОшибке (ErrorInfo)
Причина (Cause)
Использование:
Только чтение.
Описание:
Тип: ИнформацияОбОшибке, Неопределено.
Содержит информацию о причине для данной ошибки. Если таковой не было, то Неопределено.
Доступность:
Тонкий клиент, веб-клиент, мобильный клиент, сервер, толстый клиент, внешнее соединение, мобильное приложение (клиент), мобильное приложение (сервер).
Использование в версии:
Доступен, начиная с версии 8.1.
   H A D G E H O G s
 
6 - 13.10.19 - 21:18
Доступен, начиная с версии 8.1.
   Tonik992
 
7 - 13.10.19 - 21:19
(5) в свойстве "Причина" - Неопределено.
Неопределено как в самом "низу" стека, так и в самом верху.
   H A D G E H O G s
 
8 - 13.10.19 - 21:29
(7) Попробуй записать свойство ИнформацияОбОшибке в переменную и потом уже смотреть в отладчике, ну или выведи в Сообщить()
   Tonik992
 
9 - 13.10.19 - 21:36
(8) Все это проделал. Неопределено в любом случае.

Примерный стек вызова:
МодульДокумента -> ОбщийМодуль1.Операция1() -> ОбщийМодуль2.Операция2() -> ОбщийМодуль3.Операция3()

В процедура ОбщийМодуль3.Операция3() возникает ошибка "Поле объекта не обнаружено".
В модуле объекта, в исключении, ИнформацияОбОшибке() отображает место возникновения ошибки в ОбщийМодуль3.Операция3(). Стека не видно, а в свойстве "Причина" через Сообщить() не выводит ничего.
   Tonik992
 
10 - 13.10.19 - 21:42
ПодробноеПредставлениеОшибке(ИнформацияОбОшибке()) показывает прекрасную картину:

Поле объекта не обнаружено (ошибка)
{ОбщийМодуль.Расчет2.Модуль(57)}: тест = Запись.ошибка;
{ОбщийМодуль.Расчет.Модуль(49)}: Расчет2.вложение1(Запись);
{Документ.ВводПроизвольныхНачисленийИУдержаний.МодульОбъекта(29)}: Расчет.РассчитатьЗаписи(Ссылка);

Видимо это новшество пока только в таком виде можно использовать.
   RomanYS
 
11 - 13.10.19 - 21:49
(10) Норм. В совместимости работает?
   Tonik992
 
12 - 13.10.19 - 21:58
(11) Да, даже с 8.3.10 работает.
   Tonik992
 
13 - 13.10.19 - 22:00
(11) Это не просто норм. Это даже словами не описать.

Список тем форума
Рекламное место пустует  Рекламное место пустует
Ошибка? Это не ошибка, это системная функция.
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.