Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
20 мая 2024, 07:21

Запись в регистр накоплений

Автор D-503, 16 апр 2010, 17:05

0 Пользователей и 1 гость просматривают эту тему.

D-503

Вопрос такой:
В документе (например ПриходнаяНакладная) при формировании движения в регистре накопления (например ОстаткиМатериалов) помощью конструктора движений, конструктор генерирует код:

Процедура ОбработкаПроведения(Отказ, Режим)
   //{{__КОНСТРУКТОР_ДВИЖЕНИЙ_РЕГИСТРОВ
   // Данный фрагмент построен конструктором.
   // При повторном использовании конструктора, внесенные вручную изменения будут утеряны!!!
   Для Каждого ТекСтрокаМатериалы Из Материалы Цикл
      // регистр ОстаткиМатериалов Приход
      Движение = Движения.ОстаткиМатериалов.Добавить();
      Движение.ВидДвижения = ВидДвиженияНакопления.Приход;
      Движение.Период = Дата;
      Движение.Материал = ТекСтрокаМатериалы.Материал;
      Движение.Склад = Склад;
      Движение.Количество = ТекСтрокаМатериалы.Количество;
   //КонецЦикла;
   //Для Каждого ТекСтрокаМатериалы Из Материалы Цикл
      // регистр СтоимостьМатериалов Приход
      Движение = Движения.СтоимостьМатериалов.Добавить();
      Движение.ВидДвижения = ВидДвиженияНакопления.Приход;
      Движение.Период = Дата;
      Движение.Материал = ТекСтрокаМатериалы.Материал;
      Движение.Стоимость = ТекСтрокаМатериалы.Сумма;
   КонецЦикла;
   //}}__КОНСТРУКТОР_ДВИЖЕНИЙ_РЕГИСТРОВ
КонецПроцедуры

В коде отсутствует строчка: Движения.ОстаткиМатериалов.Записать(); И при этом все равно записи в регистре появляются!!! Что за фигня? И в чем тогда назначение метода Записать?

З.Ы. Не ругайте, я пока новичок jytykk

Slin

После обработки проведения движения автоматически записываются. Такое неявное поведение рекомендуется фирмой 1С, особенно в конфигурациях, ориентированных на многопользовательскую работу.
Назначение метода "Записать" обычное, какое всегда было :). Его рекомендуется использовать только, если необходимо получить записи в регистрах до окончания обработки проведения. Обычно используется при выполнении расчетных задач.

P.S. Насколько помню, автоматическая запись движений появилось в 8.1.

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск