|
Как гарантированно поймать исключение | ☑ | ||
---|---|---|---|---|
0
Ndochp
14.11.14
✎
19:04
|
Столкнулся со следующей бедой - не открываются некоторые старые регламентированные отчеты - пишут ошибку.
Решил составить списочек таких "битых" отчетов. Пишу: Для каждого СтрокаТЧ из РегОтчеты Цикл Попытка СтрокаТЧ.Документ.ПолучитьФорму().Открыть(); СтрокаТЧ.ОткрытиеУспешно = "Успешно"; Исключение СтрокаТЧ.ОткрытиеУспешно = "Ошибка"; КонецПопытки; КонецЦикла; В итоге на экран вылетает исключение и ждет пока я ОК нажму, а потом алгоритм отрабатывает по ветке "Успешно". Конечно там алгоритм через ЖПО написан, в перед открытием формы документа выставляется отказ и вызывается основная форма отчета, которая тоже уходит в отказ, а в общем модуле вызывается конкретная форма рег отчета, но блин. Из попытки исключения мы в общем то не выходим же. Подскажите кто-нибудь идею, как ловить ошибку открытия формы без интерактивных океев. |
|||
1
Banned
14.11.14
✎
19:05
|
похоже там уже ловятся исключения.
Так что увы ((( |
|||
2
Banned
14.11.14
✎
19:05
|
Хотя как вариант - попробовать в транзакции....
И поймать в "этой транзакции уже происходили...." |
|||
3
Ndochp
14.11.14
✎
19:21
|
Не вариант. Если я после ошибки ставлю ДОкумент.Сохранить() внутри транзакции, то все успешно сохраняется.
АФАИР "Уже происходили" выдается только при ошибках работы с бд - неудачное чтение или запись. А у меня все падает в коде. |
|||
4
Ненавижу 1С
гуру
14.11.14
✎
19:30
|
то есть все таки все исключения таки глушатся?
|
|||
5
второй Вах
14.11.14
✎
19:44
|
надо ТС уволить, что бы не тормозил в ТЧ. и сделать так
Попытка Для каждого СтрокаТЧ из РегОтчеты Цикл СтрокаТЧ.Документ.ПолучитьФорму().Открыть(); СтрокаТЧ.ОткрытиеУспешно = "Успешно"; КонецЦикла; Исключение СтрокаТЧ.ОткрытиеУспешно = "Ошибка"; КонецПопытки; |
|||
6
Жан Пердежон
14.11.14
✎
19:50
|
(5) изыди
|
|||
7
второй Вах
14.11.14
✎
20:01
|
(6) Попытку надо вставлять в ПриНачалеРаботыСистемы, а че ты посоветовал в Сообщить при ЗавершениеРаботы
|
|||
8
programmer1c
14.11.14
✎
21:18
|
А в чем собственно задача: побаловаться или надо открыть отчеты,чтобы они начали функционировать.Если второе,тогда опиши ошибку.1-е не факт, что они битые,а просто,наверное, они и не должны работать в обновленных конф.,а если должны,то что значит "битые",битыи может быть внеш отчет и его уже никак не поднимешь.А если они "битые", ибо кто-то ручками залазил,то скопируй из старых релизов конф. их и переставь.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |