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

Использование #Вставка без &ИзменениеИКонтроль (InsertionWithoutChangeAndValidate)

Тип Поддерживаются
языки
Важность Включена
по умолчанию
Время на
исправление (мин)
Теги
Ошибка BSL Критичный Да 1 error

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

Директива #Вставка / #КонецВставки используется в теле метода (процедуры или функции), который не помечен аннотацией &ИзменениеИКонтроль (&ChangeAndValidate). Это приводит к ошибке компиляции модуля.

Директивы #Вставка и #КонецВставки предназначены для вставки кода расширения конфигурации. Платформа разрешает их использование только в методах с аннотацией &ИзменениеИКонтроль, которые явно декларируют намерение изменять код расширяемого объекта.

Вставка на уровне модуля (вне методов) аннотации не требует и диагностикой не помечается.

Примеры

Неправильно

Процедура ДобавитьРеквизит()

    #Вставка
    ... // код вставки
    #КонецВставки

КонецПроцедуры

Правильно

&ИзменениеИКонтроль
Процедура ДобавитьРеквизит()

    #Вставка
    ... // код вставки
    #КонецВставки

КонецПроцедуры

См. также

Сниппеты

Экранирование кода

// BSLLS:InsertionWithoutChangeAndValidate-off
// BSLLS:InsertionWithoutChangeAndValidate-on

Параметр конфигурационного файла

"InsertionWithoutChangeAndValidate": false