Почему не заполняется серия в регистре Товары к оформлению поступления при перемещении товаров

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

При работе в системе 1С:ERP Управление предприятием (особенно в версиях 2.1 и 2.4) пользователи часто сталкиваются с ситуацией, когда после проведения документа Перемещение товаров в регистре накопления ТоварыКОформлениюПоступления измерение Серия остается пустым. Это приводит к тому, что остатки в регистре «зависают», а при оформлении складских ордеров возникают отрицательные остатки по конкретным сериям и положительные — по пустым значениям. Разберем подробно, почему это происходит и как правильно настроить систему.

Механика работы регистра Товары к оформлению поступления

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

Разберем ситуацию: если в финансовом документе серия не зафиксирована в движениях, а на складе кладовщик указал конкретную серию, система видит рассогласование. Для регистра ТоварыКОформлениюПоступления это выглядит так: по данным «офиса» пришел товар без серии, а по данным «склада» принят товар с серией. В итоге регистр не закрывается, и в отчетах по оформлению поступлений мы видим «хвосты».

Влияние статусов документа Перемещение товаров

Основная причина, по которой серии не попадают в регистр при первичном проведении, заключается в использовании статусов. Рассмотрим логику работы документа:

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

Как показывает практика, именно в момент перехода документа в статус «Принят» механизмы проведения ERP транслируют серии из табличной части документа в регистр ТоварыКОформлениюПоступления. Если документ завис в промежуточном статусе, серии в движениях по приходу не появятся.

Настройка политики учета серий

Выясним причину, по которой поведение системы может отличаться на разных складах. Все дело в справочнике ПолитикиУчетаСерий. Проанализируем два основных сценария:

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

Сценарий 2: Учет серий только как справочная информация (номера ГТД, сроки годности без учета по остаткам). Здесь серии могут указываться только в ордерах. Однако, если конфигурация настроена так, что серии должны фигурировать в финансовом учете, правило «финального статуса» продолжает действовать.

Можно ли отключить статусы перемещений?

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

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

Автоматизация установки статуса «Принят»

Если ручная установка статуса каждым кладовщиком или менеджером неудобна, рассмотрим варианты автоматизации. Стандартного фонового задания для этого нет, так как статус «Принят» подразумевает осознанное действие — подтверждение приемки.

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

Рассмотрим пример программного кода для такой автоматизации:


Процедура ПриОбработкеПриходногоОрдера(Источник, Отказ, РежимПроведения)
    // Проверяем, что ордер проведен и принят
    Если Источник.Статус = Перечисления.СтатусыПриходныхОрдеровНаТовары.Принят Тогда
        Распоряжение = Источник.Распоряжение;
        
        // Если распоряжением является Перемещение товаров
        Если ТипЗнч(Распоряжение) = Тип("ДокументСсылка.ПеремещениеТоваров") Тогда
            ОбъектПеремещение = Распоряжение.ПолучитьОбъект();
            
            // Проверяем, не установлен ли уже финальный статус
            Если ОбъектПеремещение.Статус <> Перечисления.СтатусыПеремещенийТоваров.Принят Тогда
                ОбъектПеремещение.Статус = Перечисления.СтатусыПеремещенийТоваров.Принят;
                Попытка
                    ОбъектПеремещение.Записать(РежимЗаписиДокумента.Проведение);
                Исключение
                    // Обработка ошибок блокировки или заполнения
                    ЗаписьЖурналаРегистрации("Автостатус", УровеньЖурналаРегистрации.Ошибка, , , ОписаниеОшибки());
                КонецПопытки;
            КонецЕсли;
        КонецЕсли;
    КонецЕсли;
КонецПроцедуры

Рекомендации по корректному закрытию регистра

Для того чтобы в регистре ТоварыКОформлениюПоступления не возникало расхождений по сериям, рекомендуем придерживаться следующего алгоритма:

Разбор данной ситуации показывает, что в 1С:ERP статус документа — это не просто информационный флаг, а управляющий элемент, влияющий на формирование движений в регистрах накопления. Правильное понимание жизненного цикла документа Перемещение товаров позволяет избежать типовых ошибок учета серийного товара.

← На главную