На полке осталось 20 упаковок, поставщик привезёт новую партию через четыре дня, а магазин продаёт по десять упаковок в день. Заказ уже опоздал: без других поступлений товар закончится раньше доставки. Чтобы замечать такую ситуацию заранее, для каждой ходовой позиции задают точку заказа.
Это количество, при котором пора оформлять пополнение. Оно должно покрывать продажи до приезда товара и оставлять запас на отклонения. Разберём расчёт для небольшого магазина непродовольственных товаров: без сезонной акции, редких крупных заказов и ограничений по сроку годности. Все числа ниже — учебные.
Какие три величины нужны
Средние продажи в день. Возьмите продажи конкретного артикула за сопоставимый период и разделите на число дней работы. Если за 28 дней продано 280 упаковок ручек, среднее — 10 упаковок в день. Не смешивайте штуки и упаковки: одна строка расчёта должна иметь одну единицу учёта.
Дни пустой полки требуют отдельного разбора. Ноль продаж при отсутствии товара не доказывает нулевой спрос. Отметьте такие дни, посмотрите продажи при наличии и используйте оценку, которую сможете объяснить. Перед школьным сезоном прошлый спокойный месяц тоже может оказаться плохим ориентиром.
Срок пополнения. Считайте время от отправки заказа до момента, когда товар можно продавать. Сюда попадут обработка заявки, сборка, доставка и приёмка. Если машина едет день, но поставщик собирает заказ ещё три дня, срок равен четырём дням. Уточните, календарные это дни или рабочие, и приведите продажи к той же шкале.
Страховой запас. Это дополнительное количество на задержку или повышенный спрос. В нашем примере владелец задаёт его как продажи за несколько дней. Такой выбор удобен для первого расчёта, но не гарантирует определённую вероятность наличия. Проверять его придётся по фактическим задержкам и случаям дефицита.
Точка заказа на трёх товарах
Формула: точка заказа = средние продажи в день × срок пополнения + страховой запас. Эта зависимость описана в документации Oracle Inventory. Ниже мы используем собственные данные и заданный вручную резерв, а не рассчитываем оптимальный размер партии.
Предположим, магазин работает ежедневно. Сроки в таблице — календарные дни; продажи достаточно ровные. Для ручек оставим резерв на два дня, для тетрадей и папок — на три.
| Товар | В день | Поставка, дней | Резерв | Точка заказа |
|---|---|---|---|---|
| Ручки, уп. | 10 | 4 | 20 | 60 |
| Тетради, шт. | 4 | 5 | 12 | 32 |
| Папки, шт. | 2 | 7 | 6 | 20 |
Для ручек: 10 × 4 + 20 = 60 упаковок. Если оформить заказ на этом уровне, за четыре дня уйдут 40 упаковок, к поставке останутся 20. Это верно при принятом спросе и своевременной доставке.
Поэтому слово «минимум» в учётной таблице нужно расшифровать. Если им назван страховой остаток 20 упаковок, ждать его для заказа поздно. Если «минимум» означает сигнал закупщику, в этой строке должно стоять 60. Дайте двум полям разные названия: «Резерв» и «Пора заказать».
Учтите товар в пути и резервы покупателей
Решение о новом заказе нельзя принимать только по числу на полке. Посчитайте позицию запаса = пригодный остаток + подтверждённые поступления − обязательства перед покупателями. Брак и товар, недоступный для продажи, в пригодный остаток не входят.
На складе 56 упаковок ручек, ещё 24 подтверждены поставщиком, восемь отложены покупателю. Позиция запаса — 56 + 24 − 8 = 72 упаковки. Она выше точки заказа 60, поэтому очередную одинаковую партию пока не добавляем.
Не вычитайте резерв дважды. Если программа уже показывает свободный остаток за вычетом восьми упаковок, прибавьте к нему поставку, не уменьшая результат повторно. В таблице запишите, какой именно остаток берёте из учёта.
Количество в пути ещё не отвечает на вопрос о ближайшем дефиците. Допустим, пригодный остаток упал до 23 упаковок, восемь из них зарезервированы, а 24 приедут через два дня. Свободных 15 упаковок хватит лишь на полтора дня при продажах по десять. Даже подтверждённая поставка оставляет возможный провал до приезда машины. Потребуется проверить сроки, возможность ускорения или замену товара.
Сколько заказать — отдельный расчёт
Точка заказа говорит «когда», но не означает «купить столько же». Для учебного примера магазин решил после пополнения иметь запас на семь дней продаж плюс резерв. Новый заказ поступит через четыре дня. Значит, целевая позиция запаса сейчас — 10 × (4 + 7) + 20 = 130 упаковок.
При остатке 23, поставке 24 и резерве покупателей восемь позиция равна 39. До цели не хватает 130 − 39 = 91 упаковки. Если поставщик отгружает коробками по 12, ближайшее достаточное количество — восемь коробок, или 96 упаковок. После заказа позиция станет 135: на пять упаковок выше цели из-за фасовки.
Это расчёт по выбранной политике магазина, а не универсально выгодная партия. Перед подтверждением проверьте деньги на закупку, место на складе и ограничения хранения. И отдельно решите проблему ближайших двух дней из предыдущего примера: большой заказ с доставкой через четыре дня её не устранит.
Как использовать расчёт каждый день
Назначьте сотрудника, который проверяет ходовые позиции, подтверждает сроки у поставщика и записывает отправленный заказ. После отправки количество должно попадать в колонку «Заказано», иначе следующая смена может заказать его повторно.
Этот порядок рассчитан на частый контроль остатка. Если закупки разрешены только по понедельникам, нужно учитывать ещё и время до следующего окна заказа: товар может пройти порог во вторник. Для такого режима проверяйте покрытие до следующей доступной поставки, а не применяйте ежедневный порог без поправок.
При поступлении сверяйте фактическое количество по чек-листу приёмки товара. Регулярно сравнивайте учётный остаток с фактическим: ошибки базы испортят даже правильную формулу. Раз в месяц и после заметных изменений продаж пересматривайте среднее, срок поставки и резерв.
Закупочная таблица отвечает за товар. Распределить между сотрудниками смены и время на приёмку поможет отдельный рабочий процесс — На смене для магазина. Подменять им складской учёт не нужно.