Оборотный регистр накопления 1с «Продажи» позволяет сохранять данные об оборотах и остатках в разрезе измерений.
Регистры накопления могут быть регистрами остатков и регистрами оборотов.
Оборотный регистр накопления 1с “Продажи”
Во-первых создадим оборотный регистр накопления “Продажи”.
На закладке «Данные» создадим измерения регистра:
- «Номенклатура», тип СправочникСсылка.Номенклатура,
- «Контрагент», тип СправочникСсылка.Контрагенты
- «Продавец», тип СправочникСсылка.Сотрудники.
У регистра будет три ресурса:
- «Количество», тип Число(15,3), неотрицательное;
- «Выручка», тип Число(15,2), неотрицательное;
- «Себестоимость», тип Число(15,2), неотрицательное.
Во-вторых настроим движение по этому регистру.
Этот регистр будет обрабатываться документом «РасходМатериалов», Для документа «РасходМатериалов» добавим движение через конструктор движений:
В Выражении напротив “Себестоимость” вручную поставим число 0. Для проверки созданного движения создадим новый документ “РасходМатериалов” в режиме 1с: Предприятие. Проведем документ и проверим его движение по регистру “Продажи”
В-третьих настроим документ “РасходМатериалов” для расчета поля “Себестоимость”. Добавить реквизит «Себестоимость» типа «Число(15,2)» и “ЦенаЗакупки” типа «Число(15,2)», в табличные части «Материалы» документа «РасходМатериалов».
В форме документа предусмотреть автоматическое заполнение поля “ЦенаЗакупки” по значениям регистра сведений «ЦеныПоставщиков», который будет создан ниже.
В четвертых создадим регистр Сведений “ЦеныПоставщика”.
На вкладке “Данные” зададим измерения и ресурсы регистра, согласно картинке. Все измерения обязательно связать со справочниками Номенклатура, ВидыЦен, Контрагенты соответственно.
В Справочник «Видыцен» добавим Предопределенный элемент «Закупочные».
Для документа «ПриходМатериалов» добавим движение по регистры «ЦеныПоставщика».
Создадим отчет «ЦеныПоставщика».
Далее завершим настройку поля «Себестоимоть» в Документе «РасходМатериалов». В табличную часть «Материалы» для поля «ЦенаЗакупки», напишем код заполнения поля из регистра «ЦеныПоставщиков»( аналогично заполнению поля “Цены” при создании документа Установка цен).
В завершении вычислим поле «Себестоимость» в зависимости от «ЦенаЗакупки» и «Количество». Для этого создадим процедуру в общем модуле для расчета себестоимости, аналогично процедуре расчета суммы. Пример кода ниже:
Движение регистра «Продажи» изменим запись с учетом поля «Себестоимость».
Нами создам оборотный регистр “Продажи” и по нему проведено движение.