Движения документа - это записи в регистрах, которые создаются в процессе проведения документа и отражают изменения, производимые Документом.
Откроем окно редактирования объекта конфигурации Документ ПриходнаяНакладная.
Перейдем на закладку Движения и в списке регистров конфигурации отметим регистр накопления ОстаткиМатериалов (рис. 4.3).
Рис. 4.3. Отметим регистр накопления и воспользуемся конструктором движений
Сразу после отметки выбранного регистра становится доступной кнопка Конструктор движений (рис. 4.4).
В списке Регистры перечислены регистры, в которых документ может создавать движения.
В нашем случае там пока один регистр ОстаткиМатериалов.
В списке Реквизиты документа должны находиться исходные данные для создания движений.
А в таблице Поле – Выражение должны быть заданы формулы, по которым будут вычисляться значения измерений и ресурсов регистра при записи движений.
Рис. 4.4. Конструктор движений
По умолчанию конструктор предлагает создавать движения прихода (Тип движения регистра - Приход, символ + рядом с названием регистра) по регистру ОстаткиМатериалов.
Это вполне подходит, так как документ ПриходнаяНакладная и должен приходовать материалы.
В поле выбора Табличная часть выберем табличную часть нашего документа - Материалы.
Список реквизитов документа автоматически заполнится реквизитами нашей табличной части.
Нажимаем кнопку Заполнить выражения.
В нижнем окне сформируется соответствие полей и выражений (рис. 4.5).
Рис. 4.5. Выберем табличную часть и нажмем Заполнить выражения
Конструктор движений установил соответствия: в качестве материала в регистр будет записан материал из табличной части документа, в качестве склада - склад, указанный в шапке документа, а в качестве количества - количество из табличной части документа.
Нажимаем кнопку ОК и смотрим, какой текст сформировалконструктор в модуле объекта (листинг 4.1).
Листинг 4.1. Процедура ОбработкаПроведения()
Конструктор создал обработчик события ОбработкаПроведения объекта конфигурации Документ и поместил его в модуль объекта.
Внутри обработчика расположен цикл, который предназначен для перебора строк табличной части нашего документа.
В цикле обращение к табличной части документа происходит по имени (Материалы), а строки табличной части документа представляют собой коллекцию значений, для перебора которой можно использовать конструкцию