|
Прекращение работы 1С при возникновении ошибки. | ☑ | ||
---|---|---|---|---|
0
Demonius
10.02.17
✎
18:36
|
Система 1С:Предприятие 8.3 при возникновении восстановимой ошибки дает возможность пользователю продолжить работу.
Однако это может чревато изменением логики работы конфигурации, например когда ошибка происходит в обработчике. Каким образом можно забрать у пользователя право на эту возможность? |
|||
1
PR
10.02.17
✎
18:39
|
(0) Не страдай фигней
|
|||
2
jsmith82
10.02.17
✎
18:41
|
Никак. Только на уровне конфигурации.
|
|||
3
Demonius
10.02.17
✎
18:43
|
И как это сделать на уровне конфигурации?
|
|||
4
jsmith82
10.02.17
✎
18:47
|
(3) Ловишь ошибку и блокируешь дальнейшее развитие бизнес-процесса.
|
|||
5
lubitelxml
10.02.17
✎
18:51
|
отловить глючный код, загнать в "попытка"
|
|||
6
Demonius
10.02.17
✎
18:54
|
Человеку свойственно ошибаться, в том числе, программисту 1С. Верно? Хотелось бы, чтобы пользователь при возникновении ошибки сообщил разработчику, а не сам принимал решение о продолжении работы. Ибо это чревато нарушением логики работы системы.
|
|||
7
lubitelxml
10.02.17
✎
18:55
|
(6) ну так пишите нормально код, таких проблем не будет
|
|||
8
lubitelxml
10.02.17
✎
18:56
|
(6) я тебе в (5) описал как поймать ошибку, дальше можешь что угодно делать - хоть форму свою нарисуй для отправки кода ошибки разработчику, хоть гифку покажи. В чем вопрос?
|
|||
9
Demonius
10.02.17
✎
19:03
|
Все ваши рекомендации разумны. Но гарантировать на 100%, что конфигурация, переданная заказчику будет работать корректно ВСЕГДА не сможет гарантировать ни один разработчик. Верно? Пользователь обычно не будет заморачиваться сообщениями разработчику. Чисто по-человечески, пользователь не будет терять свое время, а просто продолжит работу. Я тоже поступил бы также. Ибо считал бы, что раз система мне дает выбор, значит ошибка не критична.
Я так понимаю, что это право у пользователя на принятие решения о продолжении работы никак нельзя забрать? |
|||
10
lubitelxml
10.02.17
✎
19:06
|
(9) напиши в 1с свои пожелания, возможно они к ним прислушаются! :))))))))))))))
|
|||
11
Demonius
10.02.17
✎
19:07
|
(10) Да, спасибо за совет :)))
|
|||
12
jsmith82
10.02.17
✎
19:09
|
Ошибки бывают критические, не критические и намеренные (для проверки чего-нибудь, когда не хочется писать огромную функцию)
Для критических делается ВызватьИсключение |
|||
13
jsmith82
10.02.17
✎
19:10
|
Пишите нормальный код и все дела
Придумал, тоже |
|||
14
Demonius
10.02.17
✎
19:20
|
(13) Не будьте идеалистом. В любом СЛОЖНОМ коде ВСЕГДА есть ошибки разработчика, на которые накладываются различные аппаратные сбои, сбои операционной системы, обновления 1С опять же и пр.
Вы никогда не сможете предусмотреть ВСЕ и ГАРАНТИРОВАТЬ. При возникновении ошибки выполнения вы бы подумали об изменении кода, а пользователь просто нажимает ДА, не сильно задумываясь о последствиях. |
|||
15
Demonius
10.02.17
✎
19:21
|
Как забрать у пользователя ПРАВО решать, продолжать работу или нет?
|
|||
16
Мимохожий Однако
10.02.17
✎
19:23
|
(14) Волшебные таблетки есть только у прапорщика
|
|||
17
Demonius
10.02.17
✎
19:31
|
В принципе я решил свою проблему локально. Если возникает ошибка при выполнении кода обработчика, то, к примеру, сохраняется старое значение переменной Отказ = ЛОЖЬ. Происходит откат и считается, что обработка цепочки произошла успешно. Поэтому, во избежание подобного теперь буду явно в начале обработчика писать Отказ = ИСТИНА.
Но глобальный вопрос, как забрать ПРАВО решать у пользователя остается. |
|||
18
Мимохожий Однако
10.02.17
✎
19:34
|
(17) Этот вопрос к разработчикам 1С и не на форум
|
|||
19
lubitelxml
10.02.17
✎
19:35
|
(17) покури ЖКК
|
|||
20
lubitelxml
10.02.17
✎
19:35
|
ЖКК = Синксис-справочник
|
|||
21
lubitelxml
10.02.17
✎
19:36
|
Синтакс-помощник - Ctrl+F1
|
|||
22
jsmith82
10.02.17
✎
19:36
|
(17) Ты как-то неправильно мыслишь, чел
В принципе невозможно забрать у пользователя право на уровне платформы Тебе ничто не мешает изменить конфу - вперед |
|||
23
Nirvana
10.02.17
✎
21:10
|
У пользователя в принципе нет выбора, продолжать ли работу при ошибке или нет. При любой ошибке прерывается операция, при которой произошла эта ошибка. Если была открыта транзакция - она отменяется.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |