Имя: Пароль:
1C
1С v8
8.3 - Проведение документа, запись в регистр накоплений
0 lisicin
 
02.12.16
04:19
Здравствуйте, очередной вопрос по поводу адаптации документа под конфигурацию БП 3.0 и УФ. Прошу подсказать, как реализуется проведение документа

В модуле объекта:

Процедура ОбработкаПроведения(Отказ, РежимПроведения)
    ТаблицаДвижений = Движения.Закупка.Выгрузить();
    Движения.Закупка.мПериод = Дата;
    ТаблицаДвижений.Очистить();
    ОбщегоНазначенияБПВызовСервера.ЗагрузитьВТаблицуЗначений(Товары.Выгрузить(), ТаблицаДвижений);
    ТаблицаДвижений.ЗаполнитьЗначения(Организация,"Организация");
    ТаблицаДвижений.ЗаполнитьЗначения(Контрагент,"Контрагент");
    Если ТаблицаДвижений.Количество() > 0 Тогда
        Если БезКг Тогда
        Для Каждого Стр из ТаблицаДвижений Цикл
            Стр.КоличествоЛ = 0;    
        КонецЦикла;
        КонецЕсли;
        Движения.Закупка.мТаблицаДвижений = ТаблицаДвижений;
        Движения.Закупка.ВыполнитьПриход();
    КонецЕсли;    
КонецПроцедуры

Модуль набора записей регистра накоплений:

Процедура ВыполнитьПриход() Экспорт

    ОбщегоНазначения.ВыполнитьДвижениеПоРегистру(ЭтотОбъект, ВидДвиженияНакопления.Приход);

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

ОбщегоНазначения.ВыполнитьДвижениеПоРегистру() - в БП 3.0 нету, чем и как реализовывать запись в регистр накоплений?
1 lisicin
 
02.12.16
05:02
Заменил обращение к модулю набора записей регистра накоплений на

Движения.Закупка.Записывать = Истина;
    Движения.Закупка.Очистить();
Для Каждого Стр из ТаблицаДвижений Цикл
        Движение = Движения.Закупка.Добавить();
        Движение.ВидДвижения = ВидДвиженияНакопления.Приход;
        Движение.Период = Дата;
        Движение.Номенклатура = Стр.Номенклатура;
        \\прочие реквизиты
    КонецЦикла;

Тупо, прямолинейно, но вроде работает. Насколько адекватен данный вариант и как сделать грамотно?
2 Курцвейл
 
02.12.16
06:45
(1) Это адекватно.

А еще адекватно научиться пользоваться конструктором движений, который можно вызвать в окне редактирования Документа на закладке "Движения"
(имейте ввиду, что старый код сотрется);

В случае сложного механизма проведения конструктор помогает быстро набросать шаблон для дальнейшей модернизации, заменяя кодописание.

https://its.1c.ru/db/content/v839doc/src/руководство%20разработчика/_img/img00503.gif?_=1480511740
3 h-sp
 
02.12.16
09:58
(1) что-то ты пишешь это на лютом 8.1, а не на 8.3. Открой всё-таки БП 3.0 посмотри проведение документов, там всё по-другому делается.
4 h-sp
 
02.12.16
09:59
Компьютеры — прекрасное средство для решения проблем, которых до их появления не было.