Оператор прекращения обработки исключительной ситуации
Синтаксис
Оператор ВызватьИсключение
имеет простой синтаксис:
ВызватьИсключение;
А также альтернативный англоязычный синтаксис:
Raise;
Описание
Оператор ВызватьИсключение
используется для преждевременного прекращения обработки исключительной ситуации в конструкции Попытка…КонецПопытки.
Следует отметить, что во встроенном языке 1С:Предприятие 7.7 не поддерживаются исключения, определенные пользователем. Поэтому, оператор ВызватьИсключение
может располагаться только внутри блока, ограниченного ключевыми словами Исключение
и КонецПопытки
. При нарушении этого требования синтаксический анализатор выдаст ошибку: «Неопознанный оператор».
Пример использования
Пример кода с использованием оператора ВызватьИсключение
//в документ добавлен новый реквизит табличной части <Цена> //теперь необходимо заполнить цены во всех документах ДокументыМенеджер = СоздатьОбъект("Документ.РеализацияТМЦ"); ДокументыМенеджер.ВыбратьДокументы(ДатаНачала, ДатаОкончания); Пока ДокументыМенеджер.ПолучитьДокумент() = 1 Цикл Попытка ДокументОбъект = СоздатьОбъект("Документ.РеализацияТМЦ"); ДокументОбъект.НайтиДокумент(ДокументыМенеджер.ТекущийДокумент()); //ошибка деления на ноль в обработке одного документа не должна приводить к прекращению всей обработки ДокументОбъект.ВыбратьСтроки(); Пока ДокументОбъект.ПолучитьСтроку() = 1 Цикл ДокументОбъект.Цена = ДокументОбъект.Сумма / ДокументОбъект.Количество; КонецЦикла; ДокументОбъект.Записать(); Исключение //информация обо всех ошибках выводится в окно сообщений Сообщить("" + ДокументОбъект + ": " + ОписаниеОшибки(), "!!!"); Если Найти(ОписаниеОшибки(), "Деление на 0") = 0 Тогда //обработка прекратится при любой другой ошибке ВызватьИсключение; КонецЕсли; КонецПопытки; КонецЦикла;