Учёт остатков и авто-заявки поставщику: Python + Excel
Инструмент для магазина, который торгует и на сайте, и со склада. Сводит остатки из обоих мест и сам определяет, что пора заказывать у поставщика.
Как работает. Товары и правила лежат в Excel — там же, где привыкла работать команда, отдельную программу осваивать не нужно. Пользователь вносит остатки и нажимает одну кнопку. Программа сравнивает суммарный остаток с порогом по каждому товару и дописывает заявки в отдельный лист.
Что учитывает расчёт:
— кратность упаковки: если товар идёт коробками по 12, заявка округляется вверх до целых коробок, а не просит 7 штук, которых не бывает;
— желаемый остаток: заказывается не «сколько не хватает до порога», а до рабочего уровня; если уровень не задан, берётся порог, умноженный на два;
— повторные заявки: пока предыдущая в статусе «Создана» или «Отправлена», вторая по этому товару не создаётся;
— неактивные позиции пропускаются, и в отчёте видно, почему пропущен каждый товар.
Надёжность. Перед каждой записью делается резервная копия файла. Если файл открыт в Excel, программа не портит его молча, а говорит об этом понятным текстом.
Устройство кода. Логика расчёта отделена от работы с Excel: чистые функции без побочных эффектов, поэтому их можно проверять на обычных данных, не открывая ни одной книги.
На демонстрационных данных: 12 товаров, 7 заявок создано, 5 позиций пропущено с указанием причины по каждой.