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

Использование методов "НайтиПоНаименованию", "НайтиПоКоду" и "НайтиПоНомеру" (UsingFindElementByString)

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

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

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

Константные значения данных из ИБ рекомендуется указывать в константах ИБ, предопределенных элементах метаданных.

Примеры

Неправильно:

Должность = Справочники.Должности.НайтиПоНаименованию("Ведущий бухгалтер");
или
Должность = Справочники.Должности.НайтиПоКоду("00-0000001");

или

ОбъектНазначения = Документы.ПередачаТоваровМеждуОрганизациями.НайтиПоНомеру("0000-000001", ТекущаяДата());

Допустимо использование:

Справочники.Валюты.НайтиПоКоду(ТекущиеДанные.КодВалютыЦифровой);
Справочники.КлассификаторБанков.НайтиПоКоду(СведенияОБанке.БИК);

Документы.Реализация.НайтиПоНомеру(НомерДокумента);

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

Нет подтверждённых связей со стандартами.

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