Проверка существования метаданных в коде
Обращение в коде к объектам метаданных, которых не существует, может привести к ошибкам типа:
-
"Неизвестное имя формы"
-
"Недопустимое значение параметра"
-
"Поле объекта не обнаружено"
-
"Тип не определен"
-
и так далее
Например:
ОткрытьФорму("Справочник.Справочник1.Форма.СтараяФормаЭлемента");
Форма СтараяФормаЭлемента
отсутствует у объекта Справочник1
и попытка открытия формы приведет к ошибке "Неизвестное имя формы".
Особенности:
- Параметр
Проверять существование по всех конфигурациях проекта (учитывать сводный контекст)
включает проверку по сводному контексту проекта. Если проект содержит несколько конфигураций и расширений, при значении параметраtrue
имя таблицы объекта метаданных считается верным, если присутствует хотя бы в одной из конфигураций проекта (в любой). При значенииfalse
(по умолчанию) объект метаданных должен обязательно присутствовать в той конфигурации, которой принадлежит вызывающий модуль. - Расчет сводного контекста отключается параметром
sonar.bsl.denyCumulativeContextComputation
.
Экранирование кода
// sonar:VerifyMetadata:off
// sonar:VerifyMetadata:on