Имя: Пароль:
1C
 
Баг-репорт внешней обработки
0 Stim
 
22.01.16
16:07
Написали мы супер-пупер крутую внешнюю обработку.
Разослали её пользователям и клиентам.

В процессе работы у них возникают ошибки и нам нужно их исправить. Удаленно подключаться ко всем не получается, кроме того, нужна отладка для точного анализа.

Хорошо бы в эту внешнюю обработку встроить баг-репорт, чтобы при возникновении какой-либо ошибки(любой) пользователь смог бы отправить данные ошибки нам, разработчикам.

Да, что-то типа отчета о ошибке в винде.


Как это можно сделать легко и красиво в уже существующих обработках?
1 Nuobu
 
22.01.16
16:08
(0) Открыть форму, в которой описана ошибка, а внизу приписка - отправьте это на нашу почту, чтобы мы её исправили.
2 Stim
 
22.01.16
16:10
(1) нужно отправить еще значения переменных, при которых эта ошибка возникла, иначе нет никакого смысла
3 Живой Ископаемый
 
22.01.16
16:10
В АйОс используются ФреймВорки и сервисы, на которые отправляются баг-репорты...
4 Nuobu
 
22.01.16
16:11
(3) Я, например, буду против, если 1С сама, без моего ведома, будет лезть в нет и что-то куда-то отправлять.
5 FIXXXL
 
22.01.16
16:12
(2) собирай в структуру что нужно
выводи в отдельное окно с кнопкой "Отправить разрабам"
6 Локи-13
 
22.01.16
16:14
(2) это нужна поддержка на уровне платформы
либо все процедуры и функции в попытку исключение вносить
7 Stim
 
22.01.16
16:17
Можно ли как-то обрабатывать исключения всех процедур и функций обработки? Например, открывая её основную форму модально из другой обработки?
8 Nuobu
 
22.01.16
16:19
(7) Нет конечно.
Напиши так:

Проц ВЫполнитьСПопыткой(Текст)
Попытка
Выполнить(Текст)
Исключение
КонецПопытки;
КонецПроц
9 Stim
 
22.01.16
16:21
(8) такое не пойдет. в каждой процедуре и функции не будешь писать
10 mikecool
 
22.01.16
16:22
написали супер-пупер, а это не осиливаете? ))
11 Живой Ископаемый
 
22.01.16
16:23
Пиши в логи, если крашится, то при следующем запуске бери последнюю порцию лога и предлагай его отправить тебе
12 Nuobu
 
22.01.16
16:30
(11) Я так понял, что насано так:
КакойТоРеквизит = Число(Ячейка.Значение);

А человеку влом писать так:

Попытка
КакойтоРеквизит = Число(Ячейка.Значение);
Исключение
ТекстОшибки = ТекстОшибки + Символы.ПС + ОписаниеОшибки();
Конецпопытки;
13 Nuobu
 
22.01.16
16:30
(12) насано = написано  ))
14 Живой Ископаемый
 
22.01.16
16:31
мне все равно, задача-то сама по себе интересная...
Программист всегда исправляет последнюю ошибку.