Как распределить дополнительные расходы на перемещение товаров между складами в 1С

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

При ведении учета в программе 1С часто возникает классическая задача: товар перевозится со склада на склад (например, в другой город или на транзитную точку), при этом транспортная компания выставляет счет за услуги перевозки. Логично, что эти затраты должны увеличить фактическую себестоимость перемещенного товара. Однако стандартный документ «Поступление доп. расходов» в старых конфигурациях (таких как 1С:УПП 1.3 или 1С:Бухгалтерия) невозможно ввести на основании документа «Перемещение товаров».

В этой статье мы подробно разберем, как решить эту проблему в различных версиях программ 1С, проанализируем методологические аспекты учета при партионном учете и РАУЗ, а также посмотрим, как эта задача изящно решается в современных ERP-системах.

---

Методология: почему возникает сложность?

Чтобы понять, как правильно отразить операцию, выясним причину ограничений программы. В традиционном партионном учете 1С партией (документом-источником) считается документ поступления (например, ПоступлениеТоваровУслуг или ОприходованиеТоваров). Именно эти документы делают записи в регистры партий и фиксируют первоначальную стоимость.

Документ ПеремещениеТоваров партией не является — он лишь переносит существующую партию с одного склада на другой (изменяя аналитику хранения). Попытка "повесить" доп. расходы напрямую на перемещение ломает логику партионного учета, так как программа не понимает, к какой именно исходной партии закупки привязать эти расходы. Отсюда возникает необходимость поиска обходных путей или изменения схемы учета.

---

Решение 1. Использование механизма ТЗР при Расширенной аналитике (РАУЗ)

Если на вашем предприятии в 1С:УПП 1.3 включен режим РАУЗ (Расширенная аналитика учета затрат), вам не потребуется вносить изменения в код программы. Система позволяет распределить затраты на себестоимость перемещенных товаров с помощью механизма распределения прочих затрат.

Рассмотрим этот процесс по шагам:

  1. Отражение затрат на доставку: Оформляем услуги перевозчика документом ПоступлениеТоваровУслуг (на вкладке "Услуги") или документом ОтражениеПрочихЗатрат.
  2. Настройка аналитики: Указываем статью затрат со следующими свойствами:
    • Характер затрат: Транспортно-заготовительные расходы (ТЗР).
    • Вид затрат: Материальные (или Прочие).
    • Способ распределения: Выбираем необходимый способ (например, "По объему", "По весу" или "По стоимости" номенклатуры).
  3. Регистрация связи с номенклатурой: Накопленные на этой статье затраты в конце месяца распределяются документом РаспределениеПрочихЗатрат. В нем указывается, на какие именно номенклатурные позиции и склады должны лечь данные расходы.
  4. Расчет себестоимости: При проведении регламентного документа РасчетСебестоимостиВыпуска в конце месяца программа автоматически распределит ТЗР по формуле и увеличит себестоимость товаров на конечном складе.

---

Решение 2. Доработка документа «Поступление доп. расходов» при партионном учете

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

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

Проанализируем пример кода для заполнения табличной части документа "Поступление доп. расходов" на основании выбранного перемещения:


Процедура ЗаполнитьПоПеремещению(ДокументПеремещения) Экспорт
    
    // Очищаем табличную часть товаров в документе доп. расходов
    Товары.Очистить();
    
    // Запрашиваем товары из документа перемещения
    Запрос = Новый Запрос;
    Запрос.Текст = 
        "ВЫБРАТЬ
        |   ПеремещениеТоваровТовары.Номенклатура КАК Номенклатура,
        |   ПеремещениеТоваровТовары.Количество КАК Количество,
        |   ПеремещениеТоваровТовары.ЕдиницаИзмерения КАК ЕдиницаИзмерения,
        |   ПеремещениеТоваровТовары.Коэффициент КАК Коэффициент,
        |   ПеремещениеТоваровТовары.Качество КАК Качество
        |ИЗ
        |   Документ.ПеремещениеТоваров.Товары КАК ПеремещениеТоваровТовары
        |ГДЕ
        |   ПеремещениеТоваровТовары.Ссылка = &Ссылка";
        
    Запрос.УстановитьПараметр("Ссылка", ДокументПеремещения);
    РезультатЗапроса = Запрос.Выполнить();
    
    Если Не РезультатЗапроса.Пустой() Тогда
        Выборка = РезультатЗапроса.Выбрать();
        Пока Выборка.Следующий() Цикл
            НоваяСтрока = Товары.Добавить();
            ЗаполнитьЗначенияСвойств(НоваяСтрока, Выборка);
            
            // Пытаемся определить исходный документ партии для корректного списания
            // (В реальной задаче здесь может потребоваться поиск по регистру "Партии товаров на складах")
            // НоваяСтрока.ДокументПартии = НайтиИсходнуюПартию(Выборка.Номенклатура, ДокументПеремещения);
        КонецЦикла;
    КонецЕсли;

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

При использовании этого метода важно понимать: так как доп. расходы будут распределены на исходные партии, себестоимость этих партий увеличится "задним числом". Если часть партии к этому моменту уже списана или продана, программа скорректирует стоимость списания при последующем перепроведении документов.

---

Решение 3. Использование транзитного склада (без программирования)

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

Разберем эту схему по шагам:

  1. Создаем виртуальный склад «Товары в пути».
  2. Оформляем документ ПеремещениеТоваров со склада-отправителя на склад «Товары в пути».
  3. Пока товар числится на транзитном складе, мы оформляем документ ПоступлениеДопРасходов, но привязываем его к первоначальному документу поступления (по которому товар закупался), указав в качестве склада именно склад «Товары в пути». Таким образом, себестоимость партии увеличивается целенаправленно на транзитной точке.
  4. Вторым документом ПеремещениеТоваров переносим товар с транзитного склада на конечный склад в другом городе. Товар уезжает уже с увеличенной себестоимостью.

---

Решение в современных конфигурациях (1С:ERP 2.5 / 1С:КА 2.5)

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

Рассмотрим, как распределить расходы на перемещение в 1С:ERP:

  1. Создание статьи расходов: Перейдем в настройки правил учета и создадим новую статью расходов (например, "Транспортные расходы при перемещении"). Настроим ее параметры:
    • В поле «Расходы возникают» указываем: При складском хранении, перемещении, обработке.
    • В поле «Относятся» выбираем: На себестоимость товаров.
    • В качестве «Аналитики расходов» выбираем тип документа: Перемещение товаров.
    • Выбираем правило распределения (например, пропорционально весу или стоимости).
  2. Отражение затрат: При получении акта от транспортной компании вводим документ ПриобретениеУслугИПрочихАктивов. В табличной части выбираем нашу статью расходов, а в качестве аналитики указываем конкретный документ ПеремещениеТоваров.
  3. Получение результата: В конце месяца при выполнении регламентной процедуры «Закрытие месяца» система самостоятельно распределит накопленные суммы на себестоимость товаров, указанных в выбранном перемещении. Никаких ручных корректировок и доработок кода не требуется!

---

Методологическое предостережение для бухгалтеров (ФСБУ 5/2019)

Решая задачу распределения расходов на перемещение для управленческого учета, важно не совершить методологическую ошибку в бухгалтерском и налоговом учете.

Согласно действующему стандарту ФСБУ 5/2019 «Запасы», затраты на внутреннее перемещение запасов между складами и подразделениями предприятия, осуществляемые после их первоначального признания (приемки на первый склад), по общему правилу не включаются в фактическую себестоимость товаров.

Такие затраты должны признаваться коммерческими расходами (расходами на продажу) текущего периода:

  1. В бухгалтерском учете услуги перевозчика отражаются по дебету счета 44.01 («Расходы на продажу»).
  2. В налоговом учете эти расходы списываются в уменьшение прибыли в полном объеме в текущем месяце (их не нужно нормировать как транспортные расходы на доставку от поставщика по ст. 320 НК РФ, так как это внутреннее перемещение).

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

← На главную