0

Оператор Попытка … Исключение … КонецПопытки

Оператор выполняет обработку ошибок и исключительных ситуаций

Синтаксис

Оператор Попытка .. Исключение имеет следующий синтаксис:

Попытка
    // Операторы программы
Исключение
    // Операторы обработки исключения 
    [ВызватьИсключение;]
КонецПопытки;

А также альтернативный англоязычный синтаксис:

Try
    // program operators
Except
    // exception operators
    [Raise;]
EndTry;

Описание

Оператор Попытка .. Исключение .. КонецПопытки управляет ходом выполнением программы, обрабатывая ошибочные (исключительные) ситуации, которые могут возникнуть при выполнении кода на встроенном языке 1С:Предприятие 8.

Если в ходе выполнения операторов программы, расположенных в блоке Попытка .. Исключение, произошла ошибка (в т.ч. в вызовах вложенных процедур и функций), их выполнение прерывается, а управление передается на первый оператор после ключевого слова Исключение. После выполнения операторов обработки исключения, расположенных в блоке Исключение .. КонецПопытки, управление передается на первый оператор после ключевого слова КонецПопытки.

Если же операторы программы, расположенные в блоке Попытка .. Исключение, выполнились без ошибок, то операторы, расположенные в блоке Исключение .. КонецПопытки, будут пропущены и управление будет передано на первый оператор после ключевого слова КонецПопытки.

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

Если в последовательности операторов, расположенных в блоке Исключение .. КонецПопытки, выполняется оператор ВызватьИсключение, генерируется исключение, которое обрабатывается вышестоящим обработчиком Попытка .. Исключение .. КонецПопытки. Если такового нет, исключительная ситуация обрабатывается системно с прекращением выполнения программного модуля (пользователю будет выдана ошибка).

Внимание! Хотя платформой не предусмотрены исключения, определяемые пользователем, с помощью оператора ВызватьИсключение можно прерывать выполнение программы в нужный момент (в т.ч. с выдачей сообщения об ошибке пользователю)

Доступность

Версия Поддержка
8.1 Сервер, Клиент, Внешнее соединение
8.2 Сервер, Толстый клиент, Тонкий клиент, Веб-клиент, Внешнее соединение
8.3 Сервер, Толстый клиент, Тонкий клиент, Веб-клиент, Внешнее соединение, Мобильный автономный сервер, Мобильный клиент, Мобильное приложение

Пример использования

Пример кода с использованием оператора Попытка:

тзПродажи = Новый ТаблицаЗначений;
тзПродажи.Колонки.Добавить("Сумма");
//...
Попытка
    СреднееЗначение = тзПродажи.Итог("Сумма") / тзПродажи.Количество();
Исключение
    Сообщить(ОписаниеОшибки());
КонецПопытки;
//Результат:
//{ВнешняяОбработка.ТестФорм.Форма.ОбычнаяФорма.Форма(14)}: Деление на 0

Читайте также:

Поделиться страницей в соц.сетях

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *