Шаг 242 - Как удалять документы, которые управляют справочниками

Я уже заикался об этом в шаге "Шаг 225 - Изучаем справочники – Запрет ручного исправления". Ну, мол есть целый ряд задач именно по управлению справочниками. Все хорошо, но вот такая ситуация. Есть документ, который создает элемент справочника. Добавляется он в момент проведения. А вот когда Вы делаете документ не проведенным элемент справочника должен удалиться. Вот этот процесс отмены проведения нам и нужно контролировать.

ОбработкаУдаленияПроведения
Предопределенная процедура обработки удаления проведения документа.

Синтаксис:

ОбработкаУдаленияПроведения()

Англоязычный синоним:

UnPostingProcess

Описание:
Процедура ОбработкаУдаленияПроведения — предопределенная процедура. Она не является встроенной процедурой языка. Для нее определено только название и синтаксис. Тело процедуры должно быть написано разработчиком конфигурации в Модуле документа (см. <Виды программных модулей>). Вызов процедуры ОбработкаУдаленияПроведения производится в системе 1C:Предприятие неявно при отмене проведения документа или при удалении проведенных документов в любом режиме — интерактивно или программно. (см. СделатьНеПроведенным, Удалить).

Замечание. В предопределенных процедурах ОбработкаПроведения и ОбработкаУдаленияПроведения система 1C:Предприятие сама выполняет все действия через транзакцию (см. <Процедуры работы с транзакциями>), поэтому никаких специальных действий по обработке транзакций в этих предопределенных процедурах предпринимать не нужно.

Если в данной предопределенной процедуре установить статус возврата — 0 (например, если данному пользователю нельзя отменять проведение документа), то отмена проведения документа не будет выполнена и будет отменена системная транзакция.

Замечание. В предопределенных процедурах ОбработкаУдаленияПроведения и ОбработкаПроведения нельзя использовать элементы интерактивного управления (например, операторы Предупреждение, Вопрос, ВвестиЧисло и т. п.), т. к. в этом случае при открытой транзакции система ожидает отклика пользователя, а все остальные пользователи ждут завершения транзакции (в результате документы у всех остальных пользователей в этот момент не могут проводиться). Если в конфигурации необходимо при проведении документа выдавать пользователю некоторые сообщения, то следует использовать операторы Сообщить или Состояние.

Вот используя эту процедуру и нужно удалять элемент из справочника.


Предыдущий Шаг | Следующий Шаг | Оглавление
Автор Каев Артем.