На маленьком складе каждое утро администратор открывала три файла, копировала остатки в общую таблицу, сводила продажи за вчера и отправляла директору ссылку. На это уходило около часа. К обеду цифры уже устаревали. Директор сказал: «Сделайте, чтобы к девяти утра в почте был один файл, как я привык». Без громких слов, без «цифровой трансформации» — просто час освободить.
Я посмотрела, откуда берутся данные. Продажи — из кассовой выгрузки в папку на диске. Остатки — из учётной программы, экспорт по расписанию в полночь. Возвраты — отдельная таблица, которую вели вручную и забывали обновить. Первый шаг: собрать всё в один промежуточный формат с понятными колонками. Второй — скрипт по расписанию в семь утра: проверить, что файлы за ночь появились, склеить, посчитать итоги, положить итог в папку «готово» и отправить письмо.
Ошибка номер один всплыла на третий день: в выходной касса не выгрузила файл, скрипт отправил пустой отчёт. Директор чуть не принял решение по нулям. Я добавила проверку: если файла нет или он слишком маленький — письмо «отчёт не собран», вложение не отправляется. Лучше тишина с предупреждением, чем ложные нули.
Вторая ошибка — часовой пояс на сервере. Отчёт приходил в восемь по Москве, хотя склад в другом городе — уже девять, администратор опоздала с реакцией на расхождение. Поправили время в расписании и подпись в письме: «данные на конец вчера по местному времени».
Через две недели администратор перестала копировать вручную. Директор привык открывать одно вложение. Я оставила кнопку «собрать сейчас» на случай внеплановой проверки — не код, а ярлык, который запускает тот же скрипт. Люди любят ощущение контроля.
Автоматическая выгрузка отчётов — не про технологию, а про ритуал. Если утренний ритуал директора сломан, вас будут ненавидеть, даже при идеальном коде. Я научилась сначала копировать ритуал, потом ускорять его. Сейчас, когда слышу «просто выгрузка по утрам», я спрашиваю: что делать, если файла нет, и кто отвечает, если цифры странные. Ответы важнее, чем расписание на сервере.
Третья ошибка — дубли строк в возвратах. Администратор дважды внесла один возврат «на всякий случай», отчёт показал минус вдвое больше. Я добавила сверку по номеру чека — если повтор, строка подсвечивается, письмо не уходит, пока не подтвердят. Директор сначала злился на задержку, потом сказал спасибо.
Я сделала короткое видео для администратора: как нажать «собрать сейчас», куда смотреть, если красная надпись. Без видео она звонила мне по каждому пятну. С видео — раз в месяц. Обучение — часть автоматизации, не «лишнее».
Через полгода директор попросил добавить колонку «просроченные отгрузки». Я добавила за день — потому что основа уже была чистая. Если бы строила с нуля под всё сразу, ушла бы неделя и куча нервов.
Выгрузка отчётов научила меня мыслить письмом как продуктом: тема, подпись, вложение, текст «если пусто — звоните сюда». Письмо — интерфейс для директора, который не откроет журнал на сервере. Уважение к письму = меньше звонков.
Я настроила резервную копию папки «готово» на другой диск — один раз спасли отчёт, когда основной диск хрипнул. Директор не заметил сбоя, только письмо пришло на десять минут позже. Для малого склада это было как спасательный круг.
Администратор просила «как раньше, но быстрее» — мы оставили тот же вид таблицы в файле, только собирался он сам. Удобство — не новый дизайн, а тот же привычный вид без часа копирования. Я запомнила: не ломать привычный вид отчёта без крайней нужды.
Через год директор сказал, что забыл, как выглядит ручная сборка. Я восприняла это как комплимент. Автоматическая выгрузка — скромная услуга снаружи, но внутри — уважение к чужому утру.
Если снова услышу «просто выгрузите по утрам», я сначала спрошу про выходные, про возвраты, про то, кто подтверждает странные цифры. Ответы займут полчаса. Сэкономят недели переделок и один нервный звонок директору в девять ноль-ноль.
Маленький склад не нуждается в громких словах. Нуждается в том, чтобы в девять утра директор открыл почту и увидел привычную таблицу — правдивую, без сюрпризов. Всё остальное в этой истории было про дисциплину файлов и уважение к чужому ритуалу.