Описание проблемы, ошибки, которую надо диагностировать
Разработчики допускают ошибки, когда генерируют обработчик для подписки на событие средствами платформы, а потом изменяют событие в подписке. В названии процедуры-обработчика может остаться прежнее событие, причем при совпадении сигнатур этих событий платформа не выдаст ошибку.
Ссылка на источник, подтверждающее нарушение либо обоснование наличия проблемы
Описанная ситуация усложняет понимание кода и вводит в заблуждение других разработчиков. Возможно, на это даже есть стандарт.
Описание проблемы, ошибки, которую надо диагностировать
Разработчики допускают ошибки, когда генерируют обработчик для подписки на событие средствами платформы, а потом изменяют событие в подписке. В названии процедуры-обработчика может остаться прежнее событие, причем при совпадении сигнатур этих событий платформа не выдаст ошибку.
Ссылка на источник, подтверждающее нарушение либо обоснование наличия проблемы
Описанная ситуация усложняет понимание кода и вводит в заблуждение других разработчиков. Возможно, на это даже есть стандарт.
Параметры диагностики
Тип Статья на русском
Важность Статья на русском
Тэги Статья на русском
STANDARD
- "Нарушение стандартов 1С"LOCKINOS
- "Не будет работать в другой ОС"SQL
- "Проблема с запросом"PERFORMANCE
- "Проблема производительности"BRAINOVERLOAD
- "Непонятный код"BADPRACTICE
- "Плохая практика программирования"CLUMSY
- "Излишние действия"DESIGN
- "Ошибка в проектировании"SUSPICIOUS
- "Подозрительный код"UNPREDICTABLE
- "Непредсказуемо работающий код"DEPRECATED
- "Устаревшая функциональность"ERROR
- "Ошибочная конструкция"LOCALIZE
- "Проблемы локализации"Время на исправление (минут)
1 минута
Дополнительная информация
:heavy_check_mark: Правильно:
КонтрагентыПередЗаписью
ПередЗаписью
МойМодуль.КонтрагентыПередЗаписью
:heavy_check_mark: Правильно:
КонтрагентыМояПодписка
ПередЗаписью
МойМодуль.КонтрагентыПередЗаписью
Как видно из этих двух примеров, имя подписки не должно влиять на срабатывание диагностики.
:x: НЕправильно:
КонтрагентыМояПодписка
ПередЗаписью
МойМодуль.КонтрагентыПриЗаписи
В этом примере имеется явное несовпадение события и имени обработчика.
:heavy_check_mark: Правильно:
КонтрагентыМояПодписка
ПередЗаписью
МойМодуль.МойОбработчик
Допускается ситуация, когда имя обработчика может вообще не содержать имени какого-либо события и в этом случае нарушения нет.