Возникает перед непосредственным удалением объекта из базы данных.
Синтаксис
ПередУдалением(<Отказ>)Полное описание, параметры и ограничения
СправочникОбъект.<Имя справочника>.ПередУдалением (CatalogObject.<Catalog name>.BeforeDelete)
СправочникОбъект.<Имя справочника> (CatalogObject.<Catalog name>)
ПередУдалением (BeforeDelete)
Доступен, начиная с версии 8.0.
Синтаксис:
ПередУдалением(<Отказ>)
Параметры:
<Отказ>
Тип: Булево.
Признак отказа от удаления объекта. Если в теле процедуры-обработчика установить данному параметру значение Истина, удаление выполнено не будет.
Значение по умолчанию: Ложь.
Описание:
Возникает перед непосредственным удалением объекта из базы данных.
Доступность:
Сервер, толстый клиент, внешнее соединение, мобильное приложение (сервер), мобильный автономный сервер.
Замечание:
Безопасный режим на время исполнения данного обработчика будет отключен. Данное замечание не относится к обработчикам событий, расположенным в расширении конфигурации.
Использование в версии:
Доступен, начиная с версии 8.0.
Методическая информация
Практические примеры
Разрешить удаление только снятого с продажи товара
ПередУдалением относится к физическому удалению, а не к установке пометки удаления.
Где и как запускать
Модуль объекта или набора записей, указанный в подготовке. Обработчик вызывается платформой; не вызывайте его как обычную команду формы.
Подготовка
В отдельной учебной конфигурации создайте неиерархический справочник УчебныеТовары: строковый код длиной 10 с автонумерацией, наименование длиной 100.
Добавьте реквизиты Цена (Число 15.2) и СнятСПродажи (Булево). Для Цена не включайте автоматический запрет отрицательного знака: в примере его проверяет код.
Откройте Справочники → УчебныеТовары → Модуль объекта. Обработчики размещаются на уровне модуля, не внутри команды формы. Обновите только учебную базу и проверяйте её элементы.
Проверяйте только специально созданный учебный элемент. Снимите его с продажи и запишите до повторного удаления.
Процедура ПередУдалением(Отказ)
Если Не СнятСПродажи Тогда
Отказ = Истина;
Сообщить("Сначала снимите учебный товар с продажи");
КонецЕсли;
КонецПроцедурыРазбор по шагам
Платформа начинает удаление объекта и вызывает обработчик.
Для активного товара устанавливаем Отказ.
Для снятого товара оставляем решение стандартной обработке удаления.
Как проверить результат
Физическое удаление активного учебного товара отменяется.
После снятия с продажи удаление разрешено, если нет ссылок и иных ограничений.
Ожидаемый результат
Удаление ограничено бизнес-правилом активности товара.
На что обратить внимание
Пометка удаления сама по себе не вызывает этот обработчик.
Не удаляйте настоящие справочные данные для проверки урока.
Пример не запускался в вашей базе. Перед применением проверьте его в указанном учебном контексте.