Автоматизация подарков
В заказе было пятнадцать метров ткани. Клиенту решили отдать двадцать — пять метров в подарок. Для человека здесь всё понятно. Для учётной системы нет: один кусок ткани внезапно должен превратиться в две продажи с разной ценой, а потом снова собраться в одну отгрузку. К этому моменту мы уже научили терминал узнавать конкретный рулон по одному QR-коду. Оставалось научить программу ещё одной человеческой привычке — иногда отдавать больше, чем обещали.
В этой истории
На складе ткани есть одна неприятная особенность: она существует в реальном мире.
Мы как раз занимались автоматизацией склада: Cleverence «Склад 15» на терминалах, 1С:Управление торговлей — в учёте. У клиента всё было завязано на серии, поэтому недостаточно было понять, что перед сотрудником находится ткань такого-то артикула и с такими-то характеристиками. Нужно было определить конкретную единицу — тот самый физический кусок, который сейчас собирались взять со стеллажа.
Для этого кладовщик сканировал два штрихкода. Один позволял определить товар, второй — его серию, то есть конкретный кусок.
Система работала. Это важное уточнение.
Многие вещи в корпоративной автоматизации существуют годами именно потому, что работают. Человек берёт терминал, делает «пик», потом ещё один «пик», получает нужный результат и идёт дальше. Если умножить лишнее действие на количество операций за несколько лет, получится довольно внушительная цифра, но обычно никто её не умножает.
По ходу проекта возник естественный вопрос: если два кода вместе нужны для того, чтобы однозначно определить одну вещь, почему у этой вещи вообще должно быть два кода?
Так появился QR.
В него собрали информацию, достаточную для идентификации конкретной единицы товара. Теперь кладовщик наводил терминал один раз и сразу получал именно тот кусок ткани, который держал перед собой.
Никакой революции. Просто вместо двух движений стало одно.
А потом мы показали результат клиенту.
На демонстрациях программного обеспечения иногда происходит опасная вещь: человек видит, что система наконец делает то, о чём его просили, и начинает думать дальше.
Клиент отсканировал QR, посмотрел на экран терминала и попросил добавить ещё одну возможность: по этому же коду видеть всю аналогичную ткань, которая есть на складе.
Первоначальная задача этого не предусматривала.
QR создавался как паспорт конкретного куска: вот он, вот его серия, работаем с ним. Теперь требовалось сделать почти обратную операцию. Взять код одной конкретной единицы, извлечь из него номенклатуру и характеристики и найти все остальные подходящие остатки.
Терминал должен был отвечать уже не только на вопрос «что у меня в руках?», но и на вопрос «что ещё такое же у нас есть?».
Сделали.
Сотрудник сканирует QR конкретного куска и прямо на терминале видит остальные подходящие остатки. Не ищет товар вручную, не возвращается к компьютеру, не вспоминает точное название характеристики. Сам кусок ткани становится поисковым запросом.
На этом проект вполне мог закончиться.
Но у ткани оставалась ещё одна особенность: её продают люди людям.
Иногда компания хочет сделать клиенту подарок.
Например, клиент заказал пятнадцать метров ткани. Компания решает отдать ему двадцать.
Не пять метров отдельным свёртком и не второй кусок со склада. Один цельный кусок длиной двадцать метров.
Для человека всё просто: пятнадцать продаём, пять дарим.
Для кладовщика тоже: нужно отдать двадцать метров.
Для учётной системы начинается философия.
Пятнадцать метров должны уйти по обычной цене. Ещё пять — фактически в подарок, но в документах пройти по цене в один рубль. Физически при этом никакого разделения не существует. Со склада уходит один кусок длиной двадцать метров.
Можно было заставить людей воспроизводить эту бухгалтерскую конструкцию вручную.
Кладовщик видит заказ на пятнадцать метров, отдельно сообщает о подарке, кто-то создаёт дополнительный заказ, устанавливает нужную цену, следит, чтобы затем всё правильно попало в реализацию.
Это тот вид автоматизации, при котором компьютер экономит своё время за счёт человеческого.
Мы сделали наоборот.
Кладовщику оставили ту версию происходящего, которую он действительно видит перед собой.
В заказе пятнадцать метров. Он берёт подходящий кусок и указывает на терминале фактический метраж:
20.
Дальше работает система.
Она видит, что заказано пятнадцать, а фактически отгружается двадцать. Разницу — пять метров — выделяет сама. Автоматически создаёт дополнительный заказ, помечает его как подарочный, устанавливает для него специальную цену и после этого формирует одну реализацию.
Для кладовщика по-прежнему существует один кусок ткани.
Для клиента — двадцать метров.
Для продаж — пятнадцать проданных и пять подаренных.
Для учёта — две экономически разные операции, которые в итоге превращаются в одну отгрузку.
И никто не должен разрезать ткань только затем, чтобы реальность стала больше похожа на структуру базы данных.
Потом два штрихкода превратились в один QR. QR конкретного куска научился находить всю аналогичную номенклатуру на складе.
А затем системе пришлось объяснить ещё одну вещь.
Если в заказе пятнадцать метров, а кладовщик отгружает двадцать, это не обязательно ошибка.
Иногда это просто подарок.