Как рассчитывается себестоимость в 1С:УПП при партионном учете и как проверить формулы распределения?

Программист 1С v8.3 (Обычные формы) Управленческий учет Промышленность, строительство и АПК
← На главную

Вопрос расчета себестоимости на производственном предприятии — один из самых сложных и регулярных в практике разработчиков и бухгалтеров. Особенно остро он встает, когда руководство или финансовая служба требуют предоставить детальный расчет «в цифрах»: что конкретно программа взяла за основу, на что разделила и как получила итоговую сумму себестоимости единицы продукции.

В отличие от режима РАУЗ (расширенной аналитики учета затрат), где расчет строится на решении систем линейных алгебраических уравнений (СЛАУ) методом Гаусса, в классическом партионном учете 1С:УПП вся математика распределения абсолютно прозрачна, последовательна и поддается стопроцентной ручной проверке. Разберем детально, как устроены эти механизмы, какие формулы использует программа и как проверить расчеты самостоятельно.

Распределение по базе «По объему продаж»: экономический смысл и риски

Рассмотрим один из главных вопросов: действительно ли распределение косвенных затрат по базе «По объему продаж» (или по выручке) работает корректно только при полной продаже выпущенной продукции?

Да, это абсолютно верно. Использование данной базы для распределения производственных затрат при наличии остатков на складах приводит к серьезным искажениям себестоимости.

Выясним причину этого явления на конкретном примере. Предположим, наше предприятие за месяц произвело 100 единиц товара «Продукция А».

Когда программа начнет рассчитывать базу распределения по объему продаж, она обратится к регистру накопления Продажи. В качестве базы (веса) для распределения она увидит только количество «10» (фактически проданный объем). Все 100 000 рублей ОПР будут распределены исключительно на выпуск этих 10 единиц!

Проанализируем результат такого распределения:

  1. Себестоимость каждой из 10 проданных единиц искусственно увеличится на 10 000 рублей за счет накладных расходов.
  2. Оставшиеся на складе 90 единиц продукции вообще не получат доли этих косвенных затрат. Они останутся числиться на балансе по заниженной себестоимости (только по прямым материальным затратам).

Если же по какой-то номенклатурной группе выпуск в течение месяца был, а продаж не случилось вообще, база распределения окажется равной нулю. В этом случае документ РасчетСебестоимостиВыпуска (РСВ) выдаст ошибку распределения, и затраты останутся «висеть» в незавершенном производстве (НЗП) либо на счетах затрат.

Вывод: Способ распределения «По объему продаж» категорически не рекомендуется использовать для производственных затрат (счета 20, 23, 25). Его сфера применения — исключительно коммерческие расходы (счет 44) или распределение в торговых организациях без собственного производства. Для производственных нужд лучше использовать базы «По объему выпуска» или «По плановой себестоимости».

Математическая формула расчета распределения затрат

В партионном учете распределение любых косвенных расходов (а также нематериальных прямых затрат) на выпуск конкретной продукции подчиняется простой математической пропорции. Формула распределения выглядит следующим образом:

ДоляЗатрат_i = (ПоказательБазы_i / СуммаПоказателейБазы) * СуммаЗатрат

Где:

Рассмотрим подробнее числовой пример распределения по базе «По объему выпуска». Пусть на одном подразделении выпускаются два изделия:

Сумма показателей базы (общий выпуск) равна: 300 + 200 = 500 шт.

Рассчитаем долю затрат для каждого изделия:

Влияют ли серии продукции на расчет себестоимости?

Этот вопрос часто задают бухгалтеры, пытающиеся сопоставить данные партий. Влияние серий зависит исключительно от настроек вашей учетной политики в 1С:УПП:

  1. Ведение партионного учета по сериям включено (в настройках параметров учета): В этом случае серия является полноценным разрезом аналитики как на складах, так и в незавершенном производстве (НЗП). При автоматическом расчете базы (например, по объему выпуска) программа рассчитает показатели распределения детально по каждой серии продукции. Косвенные затраты распределятся точечно.
  2. Учет по сериям в НЗП отключен: Распределение затрат на выпуск происходит «котловым» методом на уровне Номенклатуры. Полученная итоговая сумма распределенных затрат затем просто усредняется (делится пропорционально количеству) по всем выпущенным за месяц сериям этой номенклатуры. Это может приводить к тому, что специфические затраты одной серии «размазываются» по остальным.
  3. Ручной ввод баз распределения: Если используется способ распределения «Вручную», вы можете зарегистрировать точные коэффициенты с помощью документа УстановкаБазыРаспределенияЗатрат, где можно жестко зафиксировать базу в разрезе конкретных серий продукции.

Как проверить расчет программы в цифрах: пошаговая инструкция

Бухгалтерам важно увидеть расчет воочию. Чтобы не перекапывать программный код конфигурации, воспользуемся тем, что 1С:УПП сама сохраняет все промежуточные расчеты в базу данных при проведении документа РасчетСебестоимостиВыпуска.

Разберем по шагам, как получить и проверить эти данные:

Шаг 1. Анализируем исходные затраты
Откройте отчет Ведомость по учету затрат (или Анализ движения МПЗ и затрат) с детализацией до статей затрат и подразделений. Зафиксируйте сумму затрат, которую необходимо было распределить (например, дебетовый оборот счета 25 по конкретной статье).

Шаг 2. Находим рассчитанную программу базу
В системе существуют специальные технологические регистры, куда документ РСВ записывает вычисленные коэффициенты. Откройте через «Операции» -> «Регистры сведений» следующие регистры:

Сделайте в регистре отбор по вашему подразделению, статье затрат и периоду (месяцу расчета).

Шаг 3. Сопоставляем цифры
В регистре сведений вы увидите готовые коэффициенты в колонках База и База остаток НЗП. Записи будут детализированы до уровня номенклатурных групп, продукции, характеристик и серий.

Сложите все показатели по колонке База в рамках одной группы распределения — это ваш знаменатель. Теперь возьмите показатель конкретной строки продукции, разделите его на этот знаменатель и умножьте на общую сумму затрат из Шага 1. Вы получите точную сумму распределения, рассчитанную программой.

Шаг 4. Анализ запроса распределения (для программиста)
Если вы хотите понять, откуда именно программа берет данные для баз распределения в коде, вам необходимо изучить алгоритм формирования запроса в общем модуле. Рассмотрим упрощенный концептуальный пример того, как формируется запрос к базе распределения по объему выпуска:


Запрос = Новый Запрос;
Запрос.Текст = 
    "ВЫБРАТЬ
    |	ВыпускПродукции.Подразделение КАК Подразделение,
    |	ВыпускПродукции.НоменклатурнаяГруппа КАК НоменклатурнаяГруппа,
    |	ВыпускПродукции.Продукция КАК Продукция,
    |	СУММА(ВыпускПродукции.Количество) КАК КоличествоВыпуска
    |ИЗ
    |	РегистрНакопления.ВыпускПродукцииПредоставленныеУслуги КАК ВыпускПродукции
    |ГДЕ
    |	ВыпускПродукции.Период МЕЖДУ &НачалоПериода И &КонецПериода
    |СГРУППИРОВАТЬ ПО
    |	ВыпускПродукции.Подразделение,
    |	ВыпускПродукции.НоменклатурнаяГруппа,
    |	ВыпускПродукции.Продукция";

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

Практический совет: создание тестового примера

Если бухгалтерия продолжает сомневаться в корректности расчетов, самым надежным способом наглядно продемонстрировать логику работы системы будет создание мини-модели:

  1. Создайте копию рабочей базы данных.
  2. Разверните тестовый период, введите в нем выпуск всего 3–4 изделий с простыми и понятными спецификациями.
  3. Отразите затраты с удобными круглыми суммами (например, ровно 100 000 рублей на оплату труда или аренду).
  4. Запустите документ Расчет себестоимости с разными настройками баз распределения в способах распределения статей затрат.
  5. Продемонстрируйте бухгалтерам и руководству, как меняются итоговые цифры в отчете Выпуск продукции и услуги при смене баз. Наглядный пример на круглых числах снимает 99% всех вопросов о «скрытых формулах» программы.
← На главную