Как сформировать потребности в материалах на основании заказов на производство в 1С:ERP?

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

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

Использование штатной обработки «Формирование заказов по потребностям»

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

  1. Перейдите в раздел Администрирование, далее выберите Склад и доставка.
  2. В настройках подсистемы Обеспечение потребностей убедитесь, что включены необходимые глобальные параметры.
  3. Настройте Способы обеспечения потребностей для каждой номенклатурной позиции или группы товаров. Здесь вы можете указать, как именно система должна реагировать на нехватку: через покупку, перемещение с другого склада или производство.
  4. Используйте обработку «Формирование заказов по потребностям» для того, чтобы увидеть актуальный дефицит материалов, рассчитанный на основе открытых заказов на производство.

Данная обработка анализирует текущие остатки, запланированные поступления и потребности. Она позволяет в пару кликов создать Заказы на перемещение или Заказы поставщику, что идеально решает задачу разового пополнения запасов под конкретный производственный план.

Особенности разузлования и «неопределенности» в спецификациях

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

Если вы сталкиваетесь с неопределенностью при разузловании, мы рекомендуем следующие подходы:

Технические нюансы реализации собственного механизма

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

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


// Пример псевдокода для анализа состава заказа
Запрос = Новый Запрос;
Запрос.Текст = 
    "ВЫБРАТЬ
    |    СпецификацияМатериалы.Номенклатура КАК Материал,
    |    СпецификацияМатериалы.Количество КАК Кол
    |ИЗ
    |    Справочник.РесурсныеСпецификации.Материалы КАК СпецификацияМатериалы
    |ГДЕ
    |    СпецификацияМатериалы.Ссылка = &СсылкаНаСпецификацию";

Запрос.УстановитьПараметр("СсылкаНаСпецификацию", ВыбраннаяСпецификация);
Результат = Запрос.Выполнить().Выгрузить();

Однако, прежде чем писать собственный код, мы настоятельно рекомендуем проанализировать методологию «Планового подхода». Часто бывает так, что формирование потребности на уровне каждого Этапа производства избыточно. Гораздо эффективнее строить план закупок на базе Планов производства на месяц или неделю, где потребность в материалах консолидируется автоматически с учетом складских остатков.

В заключение, помним: если вы работаете в машиностроении или сложном приборостроении, управление потребностями от Этапов производства может стать утопией из-за высокой волатильности спецификаций. В таких случаях целевая архитектура должна опираться на более «крупные» планы, а «точная» подпитка производства материалами — реализовываться через Кладовые цеха и регулярные перемещения по Лимитно-заборным картам.

← На главную