85
Результатом работы конструктора является автоматически
сформированный программный код в модуле объекта документа, а именно
программный код процедуры «ОбработкаПроведения». Отметим, что текст
процедуры может быть написан и полностью вручную, без использования
конструктора, либо текст, сформированный конструктором может
использоваться как шаблон для написания программистом своего текста.
Данная процедура является центральной процедурой модуля объекта
документа любого вида, именно она вызывается на исполнение при
проведении документа, именно в ней запрограммированы все движения по
регистрам учета. Текст процедуры «ОбработкаПроведения» документа
«Поступление ТМЦ» приведен ниже.
Процедура ОбработкаПроведения(Отказ, Режим)
Если Фирма.Пустая() Тогда
Предупреждение("Заполните фирму!", 60,
"Проведение.");
Отказ = истина;
Возврат;
КонецЕсли;
Если Контрагент.Пустая() Тогда
Предупреждение("Заполните контрагента!", 60,
"Проведение.");
Отказ = истина;
Возврат;
КонецЕсли;
Если Склад.Пустая() Тогда
Предупреждение("Заполните склад!", 60,
"Проведение.");
Отказ = истина;
Возврат;
КонецЕсли;
Для Каждого ТекСтрокаНоменклатура Из Номенклатура Цикл
Если ТекСтрокаНоменклатура.Номенклатура.Пустая() Тогда
Предупреждение("Заполните склад!", 60,
"Проведение.");
Отказ = истина;
Возврат;
КонецЕсли;
// регистр Остатки Приход
Движение = Движения.Остатки.Добавить();
Движение.ВидДвижения = ВидДвиженияНакопления.Приход;
Движение.Период = Дата;
Движение.Фирма = Фирма;
Движение.Склад = Склад;