Как настроить автозаказ поставщикам в 1С:Управление торговлей 11: типовой функционал или собственная разработка?

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

Автоматизация процесса закупки и пополнения складских запасов (автозаказ) — одна из ключевых задач торговых компаний. При внедрении такой системы перед бизнесом и техническими специалистами всегда встает выбор: настраивать типовой функционал 1С, разрабатывать собственный инструмент с нуля или приобретать готовые решения. Проанализируем, как правильно подойти к решению этой задачи в конфигурации «1С:Управление торговлей 11» (УТ 11.2 и новее).

Типовой функционал 1С:УТ 11: Настройка параметров обеспечения потребностей

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

Логика работы стандартного функционала опирается на две основные составляющие:

  1. Параметры обеспечения потребностей: В данном обработчике задаются правила пополнения по каждой номенклатуре или группе товаров. Вы можете выбрать метод обеспечения (Min-Max, расчет по статистике продаж) и указать минимальный и максимальный остаток, а также срок исполнения заказа поставщиком.
  2. Рабочее место «Формирование заказов по потребностям»: Помощник, который на основе текущих остатков, зарезервированных товаров, ожидаемых поступлений и заданных параметров расчета автоматически формирует рекомендации по закупке.

Если в компании используется планирование продаж, также можно привлекать документы ПланПродаж и ПланЗакупок для формирования объемов под конкретный период.

Разработка собственного алгоритма автозаказа в 1С

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

Алгоритм работы простейшего автозаказа включает в себя:

  1. Получение остатков товаров на складах и минимально допустимого уровня запасов.
  2. Определение поставщика, привязанного к номенклатуре.
  3. Расчет требуемого количества к закупке.
  4. Программное формирование и заполнение документа ЗаказПоставщику.

Рассмотри пример кода 1С, который демонстрирует логику программного создания документа пополнения запаса:


НовыйЗаказ = Документы.ЗаказПоставщику.СоздатьДокумент();
НовыйЗаказ.Дата = ТекущаяДата();
НовыйЗаказ.Партнер = НайтиПоставщикаНоменклатуры(СтрокаТовара.Номенклатура);
НовыйЗаказ.Контрагент = ПолучитьКонтрагентаПартнера(НовыйЗаказ.Партнер);
НовыйЗаказ.Организация = ЭлементыОрганизация;
НовыйЗаказ.Склад = СкладЗакупки;

ТабличнаяЧастьТовары = НовыйЗаказ.Товары;
Для Каждого СтрокаТЧ Из ТаблицаПотребностей Цикл
    СтрокаНовая = ТабличнаяЧастьТовары.Добавить();
    СтрокаНовая.Номенклатура = СтрокаТЧ.Номенклатура;
    СтрокаНовая.Количество = СтрокаТЧ.КоличествоЗаказа;
    СтрокаНовая.Цена = СтрокаТЧ.ЦенаПоставщика;
    СтрокаНовая.Сумма = СтрокаНовая.Количество * СтрокаНовая.Цена;
КонецЦикла;

НовыйЗаказ.Записать(РежимЗаписиДокумента.Запись);

Подводные камни и математика расчета потребностей

Автоматическое формирование заказов без учета нюансов может привести к затовариванию склада или, наоборот, к дефициту товара. Выясним, какие логические риски необходимо заложить в алгоритм (как типовой, так и самописный):

  1. Учет периода отсутствия товара (Out-of-Stock): Если рассчитывать средние продажи без учета дней, когда товара не было на складе, алгоритм существенно занизит реальный спрос. Необходимо делить объем продаж только на количество дней, когда товар физически был в наличии.
  2. Очистка статистики от аномальных всплесков: Разовые крупные оптовые продажи искажают среднедневной спрос. Программно необходимо отсекать пиковые продажи, превышающие стандартное отклонение.
  3. Кратность упаковки и минимальный заказ (MOQ): Программа должна уметь округлять рассчитанное количество до целочисленных упаковок, паллет или минимальной суммы заказа, требуемой поставщиком.
  4. ABC/XYZ-анализ: Не стоит полностью автоматизировать закупку по всем позициям. Для товаров с высокой стабильностью спроса (категории AX, BX) можно доверить автоматическую отправку заказов, а для позиций с нестабильным спросом (категория CZ) система должна генерировать только черновики для ручной проверки менеджером.

Архитектура и оптимизация производительности

При работе с широким ассортиментом (тысячи номенклатурных позиций) расчет потребностей «на лету» прямым тяжелым запросом к регистрам может вызывать длительное зависание базы данных и блокировки таблиц.

Для решения этой проблемы рекомендуется использовать архитектуру предварительных расчетов:

  1. Ночное регламентное задание рассчитывает среднедневные продажи, дефицит и страховой запас, сохраняя результаты в специальный РегистрСведений.
  2. Дневная обработка или регламентное задание формирует документы ЗаказПоставщику быстро, выбирая готовые данные из этого регистра за считанные секунды.

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

← На главную