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