Спрос и автозаказ
invent.sale считает потребность по каждой позиции и точке, вычитает остаток и то, что уже едет, приводит к упаковке поставщика — и отдаёт готовый заказ на подтверждение человеку.
Считается на продажах, остатках и сроках поставки — они приходят из учёта с первого дня.
Зачем
«Осталось 62» ничего не значит, пока не известно, за сколько дней это уходит.
Позицию заказывают второй раз, потому что первая поставка ещё едет.
Считают в штуках, заказывают в коробах — и получают втрое больше нужного.
Все три вопроса решаются одним расчётом, если данные приходят каждую ночь.
Как считается
Пример условный, но арифметика ровно та, что работает в проде: горизонт умножается на дневной спрос, из результата вычитается всё, что уже есть и едет, остаток приводится к упаковке.
В этом сценарии штучный заказ округляется вверх по заданному правилу: недовоз останавливает продажу, а лишние несколько штук уходят на следующий день. Правило настраивается — округление вниз тоже допустимо там, где цена ошибки обратная. С коробом наоборот — он применяется, только если точка успевает съесть полкороба за срок поставки. Короб на квартал продаж не округляется, а снимается: иначе позиция не проходит порог полкороба ни в одном заказе и уходит в вечный дефицит.
На чём считает
По позиции и точке. Из них берётся скорость, а не из среднего за месяц.
На точке и на складе — на утро расчёта, а не на дату последней инвентаризации.
Подтверждённые заказы, которые ещё не пришли. Иначе позиция заказывается дважды.
По поставщику. Определяет, на сколько дней вперёд считать.
Сколько штук в коробе. Заказ отдаётся в тех единицах, в которых поставщик отгружает.
В какие дни этот поставщик принимает заявки.
Границы
| Правило | Почему так |
|---|---|
| Не считает спросом списание | Расходная накладная — не продажа. Пока это не разделили, система заказывала протухшее заново. |
| Не верит выбросу | Одна строка с опечаткой в учёте давала спрос в миллионы штук. Всплеск в тысячу раз выше нормы отбрасывается. |
| Не заказывает вслепую | Позиции без истории продаж не дозаказываются по прогнозу: экстраполировать пустоту нельзя. Их берут по заявке человека. |
| Не трогает учёт | Заявка живёт в платформе. Обратной записи в вашу систему нет, пока вы её не попросите. |
Роли
| Кто | Что делает |
|---|---|
| Система | считает потребность и собирает заявку по каждому поставщику |
| Закупщик | правит количество там, где знает то, чего нет в данных |
| Система | отправляет по расписанию и ждёт ответа |
| Поставщик | подтверждает, заменяет или отказывает — кнопкой |
Как измеряем
Сколько ходовых позиций стояло в нуле и сколько дней.
Сколько денег стоит в товаре, который не уходит за горизонт.
Как часто закупщик меняет предложенное количество. Растёт — значит расчёт не видит чего-то важного.
Сколько занимает сбор заявки от выгрузки до отправки.
Проценты по этим числам мы не публикуем: без замера до старта они ничего не значат. В пилоте фиксируем их первыми.
Возьмём вашу выгрузку за месяц и покажем расчёт по десятку позиций — с той же арифметикой, что выше.