Перейти к содержанию
bslls:MissingCodeTryCatchEx

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

  • Тип: Ошибка
  • Важность: Важный
  • Включена по умолчанию: Да
  • Теги: standard, badpractice

Описание диагностики

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

Неправильно

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

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

Правильно

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

Источники

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

  • #std499, п. 3.2: Перехват исключений в коде — Диагностика «Конструкция "Попытка...Исключение...КонецПопытки" не содержит кода в исключении (MissingCodeTryCatchEx)» проверяет условие пункта 3.2 стандарта std499.

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