В процессе производственного учета часто возникает задача обеспечить сквозную прослеживаемость партий. Один из распространенных сценариев — необходимость выпускать продукцию определенной серии из материалов и полуфабрикатов с точно такой же серией. Например, при производстве "Изделия" с серией "Партия-001" система должна автоматически подобрать для списания "Полуфабрикат" с серией "Партия-001".
Рассмотрим, как решить эту задачу в 1С:ERP. Проанализируем стандартные механизмы системы и разберем по шагам, как выполнить необходимую доработку, поскольку типовой функционал не предусматривает такого прямого сопоставления серий.
Прежде чем приступать к доработке, важно понять, почему стандартные инструменты не решают нашу задачу в полной мере. Это поможет нам убедиться, что кастомизация действительно необходима, и правильно определить ее цели.
Заказ на производство. При обособлении система гарантирует, что именно эти зарезервированные партии материалов будут использованы для выпуска продукции по данному заказу. Это решает задачу обеспечения конкретного заказа конкретными материалами, но не решает задачу унификации номеров серий. Система может обособить материал с серией "Сырье-АБВ" для выпуска продукции с серией "Готово-123". Нам же требуется совпадение самих идентификаторов серий.
Таким образом, мы приходим к выводу, что для реализации логики "серия в серию" потребуется доработка системы.
Основная цель доработки — изменить механизм заполнения серий в производственных документах. Ключевым документом в этой цепочке является Этап на производство, именно в нем происходит списание материалов и полуфабрикатов.
Центральным объектом для нашей модификации будет документ Этап на производство. В его табличной части "Материалы и работы" указываются компоненты для списания, и именно здесь необходимо автоматизировать заполнение их серий.
Наиболее удобный способ встроить новую логику — это модифицировать существующую команду заполнения серий или добавить новую. В документе есть кнопка "Заполнить обеспечение" и связанные с ней команды, например, по подбору серий по FEFO. Наша задача — создать аналогичный механизм, но с другим алгоритмом.
Продумаем логику, которую должен выполнять наш новый механизм. При нажатии на кнопку (например, "Заполнить серии по серии продукции") система должна выполнить следующие действия:
Заказ на производство, который является основанием для создания Этапов на производство. Необходимо из этапа обратиться к связанному заказу и получить значение серии из него.
Этап на производство нужно выполнить поиск остатков на складе. Поиск должен идти по номенклатуре и, что самое главное, по серии, наименование которой строго совпадает с серией продукции из заказа.
Для реализации этой логики рекомендуется использовать механизм расширений конфигурации, чтобы не изменять основную конфигурацию 1С:ERP.
План действий для программиста:
Этап на производство.Заказе на производство (Этап.Распоряжение).Заказ.Серия).МатериалыИРаботы.ТоварыНаСкладах для поиска остатков по Номенклатуре, Характеристике и Серии (где имя серии равно серии продукции).Серия в строке этапа.Важный момент: если в вашей производственной цепочке полуфабрикаты также производятся в рамках этого же заказа, можно пойти дальше. Доработайте механизм выпуска полуфабрикатов так, чтобы при их оприходовании на склад им автоматически присваивалась серия, унаследованная от конечного изделия. Это создаст целостную систему прослеживаемости и гарантирует, что на следующем переделе нужная серия полуфабриката уже будет на остатках.
Задача автоматического подбора серий материалов по серии готовой продукции является классическим примером адаптации 1С:ERP под уникальные бизнес-процессы предприятия. Хотя стандартный функционал не предоставляет готового решения, система обладает всей необходимой гибкостью для такой доработки. Создание специальной команды в документе Этап на производство, которая реализует кастомную логику поиска и подстановки серий, является надежным и эффективным способом автоматизировать процесс и обеспечить сквозную прослеживаемость партий в производстве.