Почему не заполняются серии в приходном ордере при адресном хранении и как это исправить

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

При работе в современных конфигурациях 1С, таких как 1С:ERP 2, Комплексная автоматизация 2 или Управление торговлей 11, пользователи часто сталкиваются с ситуацией: в документе Приобретение товаров и услуг серии указаны, но при создании Приходного ордера на товары на адресный склад табличная часть с сериями остается пустой несмотря на контроль количества. При попытке заполнить их вручную или через команду «Заполнить по распоряжению» система выдает ошибку или просто игнорирует действие. Давайте подробно разберем, почему это происходит, какая логика заложена разработчиками и как можно решить эту задачу.

Анализируем причину: почему система блокирует заполнение?

Первым делом проанализируем ситуацию на уровне программного кода. Если мы заглянем в модуль менеджера документа Приходный ордер на товары, то обнаружим жесткую проверку, которая выполняется функцией СкладыСервер.ИспользоватьАдресноеХранение. Логика проверки выглядит следующим образом:


Если СкладыСервер.ИспользоватьАдресноеХранение(Объект.Склад, Объект.Помещение, Объект.Дата) Тогда
    Если ВыдаватьОшибки Тогда
        ТекстСообщения = НСтр("ru = 'На складе ""%Склад%"" ведется учет остатков в разрезе складских ячеек. 
        Серии могут быть заполнены по распоряжению только при перемещении товаров с адресного склада. 
        По другим типам распоряжений заполнение серий на этом складе не поддерживается.'");
        // ... вывод сообщения пользователю ...
    КонецЕсли;
    Возврат Ложь;
КонецЕсли;

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

Методологическая логика 1С: принцип «Слепой приемки»

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

  1. Минимизация ошибок: На адресном складе система «верит» только тем данным, которые кладовщик подтвердил физически, особенно если это разбор возвратных заказов с маркетплейса. Если серии заполнятся автоматически из финансового документа (накладной), возникает высокий риск того, что кладовщик просто проведет документ, не проверив реальные номера серий или сроки годности на упаковках.
  2. Целостность данных в ячейках: При адресном хранении остатки учитываются в разрезе каждой конкретной ячейки, что позволяет формировать точные остатки товаров с детализацией по сериям. Если на этапе входа будет допущена ошибка в серии, то в будущем система предложит отобрать товар по алгоритму FEFO (по срокам годности) из ячейки, где физически лежит товар с другой серией, и сформирует ошибочное задание на отбор с указанием ячейки. Это приведет к остановке работы склада и необходимости проведения инвентаризации.
  3. Ожидаемые vs Фактические данные: Данные в Приобретении товаров и услуг рассматриваются системой как «ожидаемые» (то, что прислал поставщик в документах). Задача приходного ордера на адресном складе — зафиксировать «фактическое» поступление. Именно поэтому система заставляет кладовщика сканировать каждую единицу или вводить серии вручную.

Технический нюанс: проверка Вида номенклатуры

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

Выясним причину через проверку соответствия владельца серии. Иногда серия создается программно или копированием, и в поле Вид номенклатуры у серии оказывается значение, отличное от того, которое указано в карточке товара. Система при попытке подбора сравнивает эти метаданные, и если находит несоответствие, отбраковывает серию. Проверьте:

Как решить проблему и автоматизировать процесс?

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

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

Разберем пример с перемещением

Посмотрим на пример, когда заполнение работает. При перемещении с адресного склада на адресный серии заполняются автоматически. Это происходит потому, что серии уже находятся в системе в статусе «В наличии» в конкретных ячейках отправителя. Система точно знает, что они существуют, и просто фиксирует их «путешествие» в зону приемки другого склада. В случае же с поставщиком, серии являются новыми объектами для склада, требующими первичной идентификации.

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

← На главную