0

Процедура ПриУдаленииДокумента

Процедура выполняется при интерактивном удалении документа.

Синтаксис

Процедура ПриУдаленииДокумента() имеет следующий синтаксис:

Процедура ПриУдаленииДокумента(Документ, РежимУдаления)
    ...
КонецПроцедуры

А также альтернативный англоязычный синтаксис:

Procedure OnDeleteDoc(Document, DeletionMode)
    ...
EndProcedure

Параметры

Описание параметров функции ПриУдаленииДокумента()

Имя параметра Тип Описание
Документ* Документ Параметр содержит удаляемый документ информационной базы
РежимУдаления Число Параметр содержит режим удаления объекта ИБ

возможные варианты:
1 Непосредственное удаление
0 Пометка на удаление
* — обязательный параметр

Описание

Предопределенная процедура ПриУдаленииДокумента() выполняется системой при попытке интерактивного удаления документа пользователем, когда он выбирает пункт «Удалить» («Пометить на удаление») контекстного меню журнала документов. Будет объект удален или помечен на удаление, зависит от значения настройки «Режим удаления объектов«, заданной в параметрах системы.

По-умолчанию, система не выполняет каких-либо проверок. В итоге документ помечается на удаление или удаляется безвозвратно из базы данных. Для того, чтобы переопределить стандартное поведение системы (например, для проверки полномочий пользователя), необходимо разместить определение данной процедуры в глобальном модуле, а в теле процедуры описать требуемый алгоритм поведения системы.

Если по каким-либо причинам удаление документа запрещено, достаточно установить в теле процедуры  статус возврата равным нулю и документ удален не будет.

Пример использования

Пример кода с использованием процедуры ПриУдаленииДокумента()

Процедура ПриУдаленииДокумента(Документ, РежимУдаления)
	
	Если ЭтоПолныеПрава = 0 И РежимУдаления = 1 Тогда
	    Предупреждение("У Вас нет полномочий на непосредственное удаление документов!");
            СтатусВозврата(0);
	    Возврат;
	КонецЕсли;
	
КонецПроцедуры //ПриУдаленииДокумента()

Поделиться страницей в соц.сетях

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *