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

BSL174 — Запрет незаполненных значений у измерений регистров

Кратко

Запрет незаполненных значений у измерений регистров

Идентификаторы

Поле Значение
Код правила BSL174
Совместимый псевдоним DenyIncompleteValues
Серьёзность WARNING
Включено по умолчанию Да
Реализовано Да
Теги transaction, error-handling

Поведение

  • Публичный идентификатор BSL174 и псевдоним DenyIncompleteValues стабильны.
  • Правило сообщает о случаях, описанных на этой странице.
  • Подавления и проектная конфигурация применяются до публикации результата.
  • Для выполнения правила не требуется внешний анализатор или сетевой доступ.

Настройка и подавление

Код BSL### — основной стабильный идентификатор. Совместимый псевдоним принимается в select, ignore и совместимых блоковых комментариях.

[tool.onec-hbk-bsl]
select = ["BSL174"]
ignore = ["DenyIncompleteValues"]

Все три семейства подавлений работают для текущей строки и диапазона. Если открывающий комментарий стоит после кода, он действует только на эту строку. Используйте любой один вариант:

  • noqa:
Значение = "пример";  // noqa: BSL174
  • bsl-disable (совместимый вариант):
Значение = "пример";  // bsl-disable: BSL174
  • совместимый BSLLS-вариант:
Значение = "пример";  // BSLLS:DenyIncompleteValues-off

Если тот же открывающий комментарий стоит на отдельной строке, он начинает диапазон. Закройте его парным маркером того же семейства:

// noqa: BSL174
// код без этой диагностики
// noqa-enable: BSL174

// bsl-disable: BSL174
// код без этой диагностики
// bsl-enable: BSL174

// BSLLS:DenyIncompleteValues-off
// код без этой диагностики
// BSLLS:DenyIncompleteValues-on

Чтобы отключить правило до конца файла, не добавляйте закрывающий noqa-enable, bsl-enable или BSLLS:…-on.

Открывающий и закрывающий маркеры должны принадлежать одному семейству.

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

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

Проверку на заполненность измерений удобно выполнять с помощью простых встроенных средств платформы, а именно, флага "Запрет незаполненных значений" для измерения регистра. В этом случае платформа самостоятельно будет проверять заполненность измерений и не нужно дополнительно контролировать заполнение измерения ни при программной обработке регистров, ни при интерактивной обработке. Фактически записи с незаполненным измерением не имеют смысла в информационной базе, каким бы образом они в нее ни попали: в результате интерактивного ввода или в результате выполнения программного кода.

Без установки указанного флага могут возникать различные ситуации, которые приводят к проблемам или усложняют сопровождение систем 1С. Например, - пользователи смогут интерактивно указать пустые значения - или разработчики могут при разработке ошибаться, не указывая значения измерения при подготовке записей регистра.

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

Правило применяется для следующих регистров: - сведений - накопления - бухгалтерских - расчетных

Примеры

Источники