1. Алгоритм расчета доп. расходов
Упрощенно доп. расходы в ERP 2.4 (УТ 11.4, КА 2.4) рассчитываются по следующему алгоритму. Каждый месяц определяются так называемые (в терминах кода ERP) узлы корректировок (ВтУзлыКорректировки) и цепочки перемещений (ВтПеремещенияСписания). На основе этих таблиц составляется система линейных уравнений, решениями которой являются цены доп. расходов на каждом из узлов. Узел – это комбинация измерений регистра накопления «Себестоимость товаров», по которой в рассчитываемом месяце были движения. Пример одного узла:
Аналитика учета номенклатуры = Пшеница; Склад А
Раздел учета = Товары на складах
Вид запасов = Собственный товар; Организация: Промресурс
Организация = Промресурс
Партия = Приобретение товаров и услуг ПР00-000022 от 07.07.2024 12:00:00
Аналитика учета партий = Поставщик: База "Продукты"; Контрагент: База "Продукты"; Ставка НДС: 18%; Вид ценности: Товары
Аналитика финансового учета = Неопределено
Вид деятельности НДС = Продажа облагается НДС.
В общем виде система уравнений выглядит следующим образом:
Количество(узел1)*Цена(узел1) — Количество(узел2)*Цена(узел2) ……- Количество(узелN)*Цена(узелN) = Доп. расходы (узел1)
Количество(узел2)*Цена(узел2) — Количество(узел1)*Цена(узел1) ……- Количество(узелN)*Цена(узелN) = Доп. расходы (узел2)
…….
Количество(узелN)*Цена(узелN) — Количество(узел1)*Цена(узел1) ……- Количество(узелN-1)*Цена(узелN-1) = Доп. расходы (узелN)
Каждое уравнение можно представить в виде:
Количество(узел1)*Цена(узел1) = Доп. расходы (узел1) + Количество(узел2)*Цена(узел2) …… + Количество(узелN)*Цена(узелN).
т.е. стоимость доп. расходов на узле1 равна доп. расходам, которые были на узле на начало месяца, плюс доп. расходы, которые были распределены в течение месяца на узел1, плюс доп. расходы, которые были перемещены в течение месяца с других узлов.
Составим и решим систему линейных уравнений на примере трех узлов. Для наглядности рассматриваются только два измерения – Аналитика учета номенклатуры и Партия. Остальные измерения совпадают.
Узел 1: Пшеница, Склад А; Приобретение 22
Узел 2: Пшеница, Склад Б; Приобретение 22
Узел 3: Пшеница, Склад В; Приобретение 22.
В демо базе ERP отразим следующие операции:
Движения на Узле 1 (Склад А):
— Купили 100 единиц пшеницы
— Распределены доп. расходы «Транспортные услуги» на сумму 220,82 USD.
— Распределены доп. расходы «Экспертиза» на сумму 56,42 USD.
— Переместили 15 единиц на склад Б
— Переместили 10 единиц со склада В
Движения на Узле 2 (Склад Б):
— Переместили 15 единиц со склада А
— Распределены доп. расходы «Транспортные услуги» на сумму 113,98 USD.
— Переместили 10 единиц на склад В
Движения на Узле 3 (Склад B):
— Переместили 10 единиц со склада Б
— Переместили 10 единиц на склад А.
Для упрощения, остатков на начало месяца на рассматриваемых узлах не было.
Все движения можно увидеть на скрине отчета:
Теперь для каждого из узлов составим уравнение:
110*Цена(узел1) – 10*Цена(узел3) = 277,24
15*Цена(узел2) – 15*Цена(узел1) = 113,98
10*Цена(узел3) – 10*Цена(узел2) = 0
Или в каноническом виде:
110*Цена(узел1) + 0*Цена(узел2) – 10*Цена(узел3) = 277,24
-15*Цена(узел1) + 15*Цена(узел2) + 0*Цена(узел3) = 113,98
0*Цена(узел1) – 10*Цена(узел2) + 10*Цена(узел3) = 0
Итак, имеем три уравнения с тремя неизвестными: Цена(узел1), Цена(узел2) и Цена(узел3).
Решить систему линейных уравнений можно разными способами, например в Excel:
https://lumpics.ru/how-solve-system-equations-excel/
или средствами 1С:
//infostart.ru/public/1027730/
В результате получаем:
Цена(узел1) = 3,532267
Цена(узел2) = 11,13093
Цена(узел3) = 11,13093
Проверим, например, списание с Узла 1:
15*3,532267 = 52,984005
или остаток на Узле 1:
95*3,532267 = 335,565365
Как можно видеть, рассчитанные значения после округления совпадают с суммами доп. расходов в Ведомости по партиям.
2. Детализация до статей расходов
Поняв, как рассчитываются доп. расходы, рассчитаем теперь доп. расходы с детализацией до статей расходов. В ERP 2.4 в режиме «Партионный учет версия 2.2» такой детализации пока нет, хотя планы реализовать имеются. Например, здесь https://partners.v8.1c.ru/forum/topic/1624895 представители из фирмы 1С собирают пожелания.
Идея проста, добавим в комбинацию измерений еще одну аналитику – Статью расходов, а рассчитанные цены будем хранить в отдельном регистре:
После добавления еще одного измерения в рассматриваемом примере количество узлов увеличивается:
Узел 1: Пшеница, Склад А; Приобретение 22; Доп. расходы Транспортные услуги
Узел 2: Пшеница, Склад А; Приобретение 22; Доп. расходы Экспертиза
Узел 3: Пшеница, Склад Б; Приобретение 22; Доп. расходы Транспортные услуги
Узел 4: Пшеница, Склад Б; Приобретение 22; Доп. расходы Экспертиза
Узел 5: Пшеница, Склад В; Приобретение 22; Доп. расходы Транспортные услуги
Узел 6: Пшеница, Склад В; Приобретение 22; Доп. расходы Экспертиза
Составим уравнение для каждого из узлов:
110*Цена(узел1) – 10*Цена(узел5) = 220,82
110*Цена(узел2) – 10*Цена(узел6) = 56,42
15*Цена(узел3) – 15*Цена(узел1) = 113,98
15*Цена(узел4) – 15*Цена(узел2) = 0
10*Цена(узел5) – 10*Цена(узел3) = 0
10*Цена(узел6) – 10*Цена(узел4) = 0
Или в каноническом виде:
110*Цена(узел1) + 0*Цена(узел2) + 0*Цена(узел3) + 0*Цена(узел4) — 10*Цена(узел5) + 0*Цена(узел6) = 220,82
0*Цена(узел1) + 110*Цена(узел2) + 0*Цена(узел3) + 0*Цена(узел4) + 0*Цена(узел5) — 10*Цена(узел6) = 56,42
-15*Цена(узел1) + 0*Цена(узел2) + 15*Цена(узел3) + 0*Цена(узел4) + 0*Цена(узел5) + 0*Цена(узел6) = 113,98
0*Цена(узел1) — 15*Цена(узел2) + 0*Цена(узел3) + 15*Цена(узел4) + 0*Цена(узел5) + 0*Цена(узел6) = 0
0*Цена(узел1) + 0*Цена(узел2) — 10*Цена(узел3) + 0*Цена(узел4) + 10*Цена(узел5) + 0*Цена(узел6) = 0
0*Цена(узел1) + 0*Цена(узел2) + 0*Цена(узел3) — 10*Цена(узел4) + 0*Цена(узел5) + 10*Цена(узел6) = 0
Решив СЛУ, получаем следующие цены:
Цена(узел1) = 2,968067
Цена(узел2) = 0,5642
Цена(узел3) = 10,56673
Цена(узел4) = 0,5642
Цена(узел5) = 10,56673
Цена(узел6) = 0,5642
Проверим, что цены, рассчитанные с детализацией до статей расходов, бьются с ценами, которые были рассчитаны без такой детализации:
Цена(узел1) + Цена(узел2) = 3,532267
Цена(узел3) + Цена(узел4) = 11,13093
Цена(узел5) + Цена(узел6) = 11,13093
В файле, прилагаемом к публикации, расширение для ERP 2.4.6.160 с реализацией расчета цен доп. расходов с детализацией до статей расходов. Расчет не претендует на универсальность, в нем, например, не учитываются передачи между организациями. Для компании, для которой делался расчет, этого было достаточно. Версия платформы должна быть не ниже 8.3.14.1565.