Описание встроенного языка системы 1С Предприятие

       

ОбработкаПроведения


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

Синтаксис:

ОбработкаПроведения(<3нач>)

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

Posting

Параметры:



<3нач>

Необязательный параметр. Идентификатор перемен­ной, в которую системой будет передано значение па­раметра, если проведение документа запущено про­граммно при помощи метода Провести. Использовать данное значение можно, например, для того, чтобы в процедуре ОбработкаПроведения правильно отрабо­тать режим проведения, т. к. в случае вызова метода Провести это будет программный, а не интерактив­ный и не групповой (см. ГрупповаяОбработка) спо­соб проведения документа.

Описание:

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

Вызов процедуры ОбработкаПроведения производится в системе 1С:Предприятие неявно при выполнении проведения документа в любом ре­жиме (интерактивное проведение документа, групповое проведение, программ­ная инициализация проведения при помощи метода Провести). Если прове­дение документа запущено программно, то система подставляет фактическое значение параметра <3нач>, содержащее значение параметра, заданного при вызове метода Провести.

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

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




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

Для корректного выполнения алгоритма проведения документа в Модуле документа доступны методы ИтогиАктуальны и ГрупповаяОбработка, кото­рые позволяют правильно определить режим проведения документа (см. «Рабо­та с документами»).

Данная предопределенная процедура может располагаться только в Моду­лях документов (см. «Виды программных модулей»).

Пример:

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

   Регистр.ТовЗап.Склад = Склад;

   ВыбратьСтроки();

   Пока( ПолучитьСтроку() > 0) Цикл

      Регистр.ТовЗап.Товар = Товар;

      Регистр.ТовЗап.Количество = Количество;

      Регистр.ТовЗап.ДвижениеРасходВыполнить();

   КонецЦикла;

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

См. также: СтатусВозврата, МтогиАктуальны, ГрупповаяОбработка, Провести


Содержание раздела