Перейти к содержанию
v8cs:empty-except-statement

Конструкция "Попытка...Исключение...КонецПопытки" не содержит кода в исключении (empty-except-statement)

  • Категория: bsl

Недопустимо перехватывать любые исключения, бесследно для системного администратора.

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

Неправильно

Попытка
// код, приводящий к вызову исключения
....
Исключение // перехват любых исключений
КонецПопытки;

Правильно

Попытка
// код, приводящий к вызову исключения
....
Исключение
// Пояснение причин перехвата всех исключений "незаметно" от пользователя.
// ....
// И запись события в журнал регистрации для системного администратора.
ЗаписьЖурналаРегистрации(НСтр("ru = 'Выполнение операции'"),
    УровеньЖурналаРегистрации.Ошибка,,,
    ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()));
КонецПопытки;

Подавление проверки

В случаях когда отсутствующий код в блоке исключения является особенностью проектирования, есть возможность подавить срабатывание проверки на конкретном выражении и оставить поясняющий комментарий:

// @skip-check empty-except-statement - не отлавливаем исключение потому что...
Попытка
  ...
Исключение
КонецПопытки;

См.

Соответствие стандартам

Источник диагностики