Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Можно отобразить общую статистику, нажав кнопку "Общая статистика", если раньше был построен прогноз по всем позициям.

...

...

Обзор и применение

Модуль MySales Промо поможет вам:

  • Создавать промо;

  • Просматривать промо;

  • Редактировать промо;

  • Одобрять промо;

  • Планировать промо;

  • Сравнивать промо;

  • Моделировать результаты промо;

  • Поддерживать все промо в одном месте;

  • Автоматически заказывать товар в магазины и на склад на основании промо-прогнозов

Модуль Промо основан на алгоритмах машинного обучения. Система учитывает размер скидки, механику промо, ТВ рекламу, Фейсбук рекламу, внешнюю рекламу, имейл рассылку, использование дополнительного оборудования и еще множество разных факторов влияющих на исход промоакций.

Для одного и того же промо возможно завести несколько сценариев и механик его проведения. Система рассчитает показатели эффективности при различных условиях его проведения (скидки, механика, сроки и т.п.) и предложит вам сравнительный анализ эффективности проведения каждого из введенных вами вариантов.

Для перехода к функционалу Промо модуля необходимо перейти в раздел "Промо" на главном экране.

...

Существует два варианта отображения промо:

  • Список - отображает все промо в виде списка с названием и базовой информацией о промо. Детально работа со списком промо описана в разделе Инструкция по применению;

    Календарь - отображает все промо в виде календаря с возможностью отображения в недельном и месячном форматах. Детально промо календарь описан в разделе Промо календарь.

Как мы прогнозируем промо

Для успешного и точного прогнозирования промо ключевым фактором является полная промо история в вашей сети. Для качественного прогноза системе необходимо иметь информацию о проведенных раньше промо. Очень важно, чтобы в систему заводилась полная информация о прошедших промо, заведены все коммуникации и механики, скидки и компенсации.

Если в систему заведены не все проведенные промо, а также не полная информация о них, система не сможет определить влияние разных факторов на продажи и найти зависимости между прошедшими промо и будущими. Поэтому качество прогноза промо полностью зависит от качества ваших исторических данных.

У MySales есть два подхода к прогнозированию промо-приростов:

  • Поиск зависимостей между ранее проведенными промо и новым

  • Использование нейронной сети для прогноза

Стандартно система ищет зависимости между историческими промо и новыми, и только в случае, если не находит, то использует нейросеть.

Поиск зависимостей заключается в том, что система анализирует как разные факторы влияли на промо раньше и ищет уже проведенные промо, которые похожи на новое промо. Это позволяет системе смоделировать изменение продаж на промо период. Обычно, если алгоритм находит 3 и более сопоставимых промо, то качество прогноза будет высоким. Для удовлетворительного промо прогноза необходимо найти хотя бы одно промо. В случае, если сопоставимых промо найти не удается, то прогноз строится с помощью нейронной сети. Этот прогноз обычно хуже чем с использованием сопоставимых промо, так как системе недостаточно данных для понимания влияния тех или других факторов.

Результатом подбора как сопоставимых промо, так и прогноза, сформированного нейронной сетью, являются два коэффициента промо прироста:

  • Коэффициент прироста промо к прогнозу, который не учитывает влияние цены/скидки

  • Коэффициент прироста промо к прогнозу, в котором уже учтено влияние цены/скидки

Такое разделение коэффициентов прироста связано с тем, что прогноз, в котором уже учтено влияние цены/скидки, на промо периоды будет изначально выше прогноза регулярных продаж, соответственно, дополнительный повышающий коэффициент, который к нему применяется для промо-акции, должен быть ниже, чем коэффициент, применяемый к прогнозу без учета ценовой эластичности. Далее, этот коэффициент используется для применения к базовому прогнозу при расчете промо-прироста и дальнейшей его адаптации, как описано в разделе Прогнозы - Анализ - Как мы строим прогноз. Таким образом, имея коэффициент, спрогнозированный на уровне SKU, система учитывает индивидуальную чувствительность к промо на уровне каждого магазина за счет адаптации промо-прироста.

Подбор сопоставимых промо

При подборе сопоставимых промо, в системе есть ряд правил, которые можно разделить на жесткие и мягкие. И жесткие и мягкие правила в системе могут настраиваться. При несоблюдении жестких правил сравнения промо система не подбирает сопоставимые промо, что может привести к тому, что не будет подобрано для сравнения вообще ни одного промо при недостаточной истории. Мягкие правила работают как приоритизация в подборе сопоставимых промо, когда при достаточности истории система отдает предпочтение промо с теми факторами похожести, которые, согласно истории, более значимы для прогнозирования промо-прироста.

К жестким правилам, в зависимости от настроек системы, могут быть отнесены:

  • Разделение сопоставления промо по отдельным видам коммуникаций. Например, для промо с товарами в газете будут подбираться только прошлые промо с товарами в газете, в качестве сопоставимых.

  • Разделение сопоставления промо по уровню скидки. Например, для промо со скидкой 30% будут подбираться только прошлые промо со скидкой от 20 до 40%.

  • Разделение промо по механикам проведения. Например, для промо с обычным снижениям цены будут подбираться только промо с аналогичной механикой, либо промо с похожей механикой (скидка только для обладателей карт).

  • Разделение по периоду длительности промо. Например, для промо длительностью 3 недели будут подбираться только промо длительностью от 2-х до 4-х недель, или когда для однодневных промо будут подбираться только однодневные промо в прошлом.

  • Разделение промо по ширине ассортимента с выделением общесетевых промо.

  • Разделение промо по количеству магазинов, в которых оно проводится. Например, когда требуется избежать сопоставления промо, проводимых во всей сети с промо, проводимых в нескольких магазинах.

  • Ограничение сопоставления по сроку давности, например, когда в качестве сопоставимых промо подбираются промо, проводимые не более чем 2 года назад

  • Разделение промо по праздничным периодам. Например, когда для промо, проводимые на Рождество, будут подбираться только прошлые промо которые проводились в соответствующий период

Список выше не является исчерпывающим. Кроме того, каждое из жестких правил выше настраивается в соответствии со спецификой проведения промо и заведения их в систему. Не рекомендуется сильно ограничивать систему жесткими правилами, так как из-за этого процент позиций, для которых система сможет подобрать сопоставимые промо может резко снизится.

К мягким правилам сопоставления промо относится большое количество факторов, которые можно увидеть перейдя в меню ЕЩЕ - ПРОМО - СОПОСТАВЛЕНИЕ. Мягкие правила сопоставления работают основываясь на коэффициентах похожести, которые система рассчитывает автоматически на основании истории, перебирая комбинации промо-позиций в прошлом и оценивая как повторяемость того или иного фактора влияет на повторение промо-прироста. При сопоставлении промо по мягким правилам, отсекаются те исторические промо, которые не соответствуют жестким правилам.

Для всех исторических промо, которые соответствуют жестким правилам, система рассчитывает коэффициент похожести, который использует для сортировки исторических промо таким образом, чтобы подобрать сопоставимыми те промо, которые имеют наивысший коэффициент похожести. Таким образом, для каждой позиции выбираются от 1 до 6 исторических сопоставимых промо-позиций, которые имеют наибольшую похожесть из всех доступных.

После подбора сопоставимых промо, система корректирует итоговые коэффициенты прироста на их статистические отличия по уровням скидки и механик.

Критерии, по которым система оценивает похожесть исторических промо для сопоставления по мягким правилам:

  • Количество календарных дат месяца, по которым прогнозируемое промо совпадает с сопоставимым. Например, если историческое промо проводилось 2-4 декабря, а прогнозируемое - 3-5 декабря, соответственно, коэф-т похожести по датам будет равен 50% (3-4 декабря)

  • Длительность прогнозируемого и исторического промо в днях. Например, длительность прогнозируемого промо - 7 дней, а исторического - 5 дней. Коэффициент похожести будет равен 5 / 7 * 100% = 71.4% (всегда делится меньшее число на большее)

  • Срок давности исторического промо по отношению к прогнозируемому

  • Совпадение по сезону продаж

  • Совпадение по названию промо

  • По уровню скидки

  • По механике, с учетом похожих механик

  • По совокупному набору коммуникаций

  • По каждой коммуникации отдельно

  • По совпадению магазинов

  • По общему количеству магазинов

  • По совпадению SKU

  • По общему количеству SKU

  • По количеству групп в промо

  • По средним продажам позиций в промо в штуках и в деньгах

  • По средней цене промо-позиции

  • По совпадению праздников, попадающих в промо-период

  • По совпадению текущей цены продажи

  • По уровню конкурентности промо-позиций в рамках одной группы

  • По совпадению товарной группы

  • По совпадению названия позиции

  • По совпадению конкретного SKU

  • По похожести исторического промо-прироста позиций

  • По похожести исторических скидок промо-позиций

  • По средним продажам позиции в штуках и в деньгах

Прогнозирование промо-прироста с использованием нейросети

Если не удалось подобрать сопоставимые промо, коэффициенты прироста промо прогнозируются с использованием нейронной сети. Нейронная сеть обучается на всем объеме исторических промо, как в целом, так и отдельно по каждой группе, определяя зависимости коэффициентов промо-прироста от влияющих факторов и их синергии.

В меню ЕЩЕ - ПРОМО - КОРРЕЛЯЦИЯ НЕЙРОСЕТИ можно посмотреть как обучилась нейросеть как по системе в целом, так и по каждой группе отдельно, как значения входящих нейронов сети влияют на 2 исходящих нейрона, отвечающие за коэф-т прироста к прогнозу без учета и с учетом влияния цены/скидки.

Бизнес процессы работы с промо / Верификация промо:

Управлением промо в системе MySales занимается "Промо администратор". Это человек, который заводит промо, рассчитывает промо, и передает результаты категорийным менеджерам.

Промо администратор может работать в категорийном/коммерческом департаменте, департаменте логистики или департаменте маркетинга. У всех случаях процессы работы с промо будут примерно одинаковы, отличатся будут в первую очередь разрешения на утверждение промо в разных департаментах.

Процесс работы с промо выглядит следующим образом:

  • Категорийные менеджеры выступают с промо-инициативами, которые они отправляют промо-администратору;

  • Промо-администратор обсчитывает эти инициативы в системе и формирует прогноз продаж в MySales на уровне SKU-промо для всех магазинов и план по марже по промо;

  • Промо администратор верифицирует промо прогноз (более детально описано ниже) и рассылает его и план по марже категорийным менеджерам;

  • Категорийные менеджеры высказывают свои аргументированные замечания к прогнозу (если такие имеются);

  • На промо-комитете выбирается и утверждается вариант проведения промо;

  • Согласовывается промо-поддержка с поставщиками;

  • Выбранный вариант промо утверждается в системе - он автоматически попадает в прогноз , заказ склада и заказы магазинов;

  • Если у категорийного менеджера есть аргументированные замечания по прогнозам (при согласии промо администратора), в систему заводится дополнительно мастер-прогноз на уровне SKU-промо, который распределяется на прогноз системы на уровне магазинов, и является главным.

Промо администратор также может предлагать свои промо инициативы.

Мотивация промо администратора:

  • Объем проводимых промо (в деньгах и в марже);

  • Точность промо-прогноза, которая измеряется как % промо-позиций, которые попали в допустимый диапазон ошибки на уровне SKU-промо (обычно +-30%).

В любом из вариантов, промо-прогнозы системы необходимо верифицировать. В процессе верификации, необходимо обращать внимание на следующее:

  • Подобраны ли сопоставимые промо или нет?

  • Если сопоставимое промо подобрано, необходимо обращать внимание, по этому же SKU либо нет?

  • Какие продажи и цена/скидка у подобранных сопоставимых промо?

  • Как давно проводилось сопоставимое промо?

Также особое внимание необходимо обратить на позиции, для которых:

  • Промо является первым;

  • Наблюдается ярко выраженная сезонность - например мороженое и пиво;

  • Система не смогла подобрать аналог;

Промо-прогнозы, ответы на которые по указанным выше вопросам не вызывают уверенности, необходимо проверять в форме Анализ.

Инструкция по применению

Элементы таблицы с промо

Созданные промо отображаются в системе в виде таблицы, которая отображает базовую информацию о промо, позволяет выбрать отдельное промо для дальнейшего анализа.

...

Таблица с промо имеет следующие поля:

  • ID – идентификатор промо;

  • Статус – статус промо (одобрено оно, или пока что нет);

  • Создатель – идентификатор или имя пользователя, создавшего промо;

  • Имя промо – название промо;

  • Дата начала – дата, с которой промо начинает действовать;

  • Дата конца – дата окончания действия промо;

  • Скидка - процент скидки, предоставленной по промо;

  • Тип - тип промоакции;

  • Прирост – вручную установлен дополнительный прирост к промо (помимо рассчитанного системой);

  • Продажи LY – реальные продажи за прошлый год за период промо;

  • База – прогноз продаж на период промо без учета коммуникаций, но с учетом ценовой эластичности;

  • Промо - прогноз промо продаж на период промо;

  • Продажи CY – реальные продажи за период промо (появляются после начала промо и обновляются каждый день в зависимости от прироста);

  • Обновлено - дата последнего обновления параметров промо.

Для детального отображения данных отдельного промо необходимо нажать на его название в таблице.

Меню таблицы

В таблице присутствует функционал, который позволяет совершать базовые действия с промо. Функционал позволяет удалить, копировать, пересчитать или выгрузить в ексель одно или несколько промо. Для выбора промо, для которых вы хотите применить эти функции необходимо поставить галочку в строке с промо.

...

Дальше необходимо нажать кнопку 💬, она откроет окно для выбора действия с промо.

...

Функция "Пересчитать" проводит пересчет промо с учетом всех данных доступных на сегодня.

Функция "Експорт в Excel" выгружает данные промо в ексель файл.

Функция "Копировать" делает копию выбранного промо.

Функция "Удалить" удаляет промо с системы.

Фильтры таблицы

Для более удобного отображения и поиска промо у таблице присутствуют следующие фильтры:

...

  • Cтрока поиска;

  • Дата начала - будут отображаться только те промо, у которых дата начала больше выбранной;

  • Дата окончания - будут отображаться только те промо, у которых дата начала больше выбранной;

  • В дату - будут отображаться промо заведенные на конкретную дату.

Добавление Промо

Для добавления нового Промо необходимо нажать на кнопку "Создать новый промо-прогноз".

...

После нажатия откроется окно, в котором необходимо ввести название и сроки проведения промо.

...

Для продолжения создания промо необходимо нажать кнопку "Продолжить".

Откроется следующее окно для добавления промо, в которому пользователь должен выбрать какие SKU будут использоваться при проведении промо.

...

В списке отображены производители товаров, для перехода на уровень SKU необходимо нажать на

▼ откроются группы товаров, нажатие на ▼ возле груп откроет уровень SKU. Для добавления производителя, группы или SKU к промо необходимо нажать на кнопку +. Также можно добавить все товары нажав на кнопку "Добавить все". Для отображения уже добавленных позиций необходимо нажать на "Добавленные". Это откроет окно с уже добавленными позициями. Для возврата до выбора позиций необходимо нажать на "Все".

...

Для исключения позиции с промо необходимо нажать на кнопку “-” . Также можно исключить все выбранные товары нажав на кнопку "Удалить все".

После окончания выбора позиций для промо необходимо нажать на "Готово, я выбрал все товары", для перехода к выбору магазинов.

...

После окончания выбора товаров для промо необходимо выбрать магазины, в которых будет проводиться промо. Выбор магазинов происходит аналогично выбору товаров. В окне выбора магазинов отображается список регионов, для перехода на уровень магазинов необходимо нажать ▼.

...

Для добавления магазина к промо необходимо нажать “+” в строке с магазином, для добавления всех магазинов необходимо нажать на кнопку "Добавить все". Для отображения уже добавленных магазинов необходимо нажать на "Добавленные".Это откроет окно с уже добавленными магазинами. Для возврата до выбора позиций необходимо нажать на "Все".

...

Для исключения магазина с промо необходимо нажать на кнопку “-” . Также можно удалить все выбранные товары нажав на кнопку "Удалить все".

После окончания выбора позиций для промо необходимо нажать на "Готово, я выбрал все магазины", для перехода к выбору параметров промо.

После выбора SKU и магазинов необходимо выбрать параметры промо. Выбор параметров происходит в окне, которое автоматически открывается после выбора магазинов.

...

Для промо есть возможность настраивать следующие параметры:

  • Имя - название промо;

  • Скидка - скидка по промо в процентах;

  • Тип - тип промоакции;

  • Механика - механика проведения промо;

  • Компенсация - компенсация от постачальника, если такая имеется;

  • Тип компенсации - тип компенсации от постачальника;

  • Вид коммуникации - выбор, как будет пиарится промоакция (например ТВ реклама, фейсбук и т.п.);

  • Прирост - значение прироста продаж в промо в процентах. Вводится, если пользователь уверен что промо получит гарантированный прирост;

  • Замечания - дополнительная информация о промо (если пользователь считает нужным ее вводить).

После выбора параметров можно нажать кнопку "Рассчитать" для расчета и сохранения промо, или же "Сохранить" для сохранения введенных данных промо с возможностью его расчета в будущем. После нажатия "Рассчитать" система запускает процесс расчета промо.

...

Когда расчет заканчивается открывается окно детального отображения промо. В нем собрана вся информация о созданном промо, а также реализован функционал для работы с промо.

...

Отображение промо

Страница просмотра отдельного промо отображает все детали о промо и состоит из двух блоков.

В этом режиме пользователь может просматривать как новые, еще не проведенные промо, так и те, которые уже закончились для оценки экономического эффекта и сравнения ранее спрогнозированных промо продаж с реальными промо продажами.

Первый блок имеет сведения о параметрах промо-акции и отображается слева:

...

Второй блок расположен справа и имеет информацию о промо-продажах, а также функционал для работы с промо.

...

В этом блоке находится следующая информация о промо:

  • Продажи предыдущего года за период, на который планируется новое промо;

  • Прогноз продаж на период промо без учета коммуникаций, но с учетом ценовой эластичности;

  • Прогноз промо продаж.

Информация отображается в штуках, деньгах и марже.

Также в этом блоке заложен следующий функционал для работы с промо (кнопки):

...

  • Утвердить - нажатием на эту кнопку пользователь утверждает проведение промо в системе;

  • Сравнимые - отображает уже проведенные промо в системе, которые можно сравнить с отображаемым промо, cистема отображает следующую информацию о сопоставимых промо:

    • Промо ID - идентификатор сопоставимых промо;

    • Даты - даты проведения промо;

    • Название промо - названия сопоставимых промо;

    • Скидка - предоставленная скидка в процентах;

    • Кол-во SKU - количество SKU, которые принимали участие в промо;

    • Сред. коэф. похожести - коэффициент, которые показывает насколько сопоставимое промо похоже на промо, с которым работает пользователь;

    • Сред. прирост до - средний прирост до проведения промо в процентах;

    • Сред. прирост после - средний прирост после проведения промо в процентах.

...

  • Загрузить - загрузка файлов с данными о промо. Детально описан в разделе "Загрузка файлов с данными"

  • Excel - выгрузка данных о промо в ексель файл;

  • Анализ - переход на страницу Анализ для детального анализа каждой из промо позиций;

  • Изменить - переход в режим редактирования промо.

Добавление варианта промо

У промо модуля присутствует функционал, который позволяет создавать несколько вариаций промо для одинаковых наборов SKU и магазинов, это позволяет сравнивать эффект от промо при использовании разных стратегий его проведения.

Для добавление нового варианта промо необходимо нажать на "Создайте новый промо-вариант"

...

После нажатия откроется окно, в котором можно будет задать параметры нового промо варианта, аналогичные параметрам, которые задаются при создании нового промо.

...

После ввода параметров необходимо нажать кнопку либо "Сохранить" - для сохранения с возможностью последующего расчета, либо "Рассчитать" - для расчета промо и получения результатов прогноза.

После нажатия одной из двух кнопок новый вариант промо автоматически появится в окне отображения деталей промо.

...

Новый вариант промо отображается первым, ранее созданные варианты отображаются ниже, отсортированные по дате создания. В левом блоке окна отображаются данные последнего добавленного варианта. Для ранее созданных промо предусмотрен следующий функционал:

...

  • 🗑- удаление промо варианта;

  • Поднять - сделать выбранный вариант главным (поднимается на первое место в списке промо-вариантов);

  • Изменить - изменить параметры выбранного промо варианта;

  • Пересчитать - заново пересчитать вариант промо.

Пользователь может добавлять сколько угодно промо-вариантов для сравнения.

Просмотр деталей промо

Функционал Промо модуля предоставляет пользователю возможность просматривать не только общие параметры каждого промо, а и опустится на детальный уровень для анализа каждого SKU, участвующего в промо. Для перехода к детальному анализу каждого SKU необходимо нажать на кнопку "Подробно":

...

После нажатия открываются детальные данные промо по каждому SKU:

...

Детально данные отображаются в виде таблицы, которая имеет следующие поля:

  • Название SKU - идентификатор и название каждого SKU в промо;

  • Прирост - поле, в которое пользователь может ввести промо прирост к продажам для отдельного SKU у процентах (для принятия изменений необходимо нажать кнопку "Сохранить");

  • Скидка - поле, в которое пользователь может ввести размер скидки для отдельного SKU у процентах (для принятия изменений необходимо нажать кнопку "Сохранить");

  • Коммуникации - пользователь может выбрать отдельные коммуникации для каждого SKU (для открытия окна выбора, необходимо нажать кнопку "Выбрать"):

...

  • Сопоставимые SKU - для открытия списка сопоставимых SKU необходимо нажать кнопку "С", таблица сопоставимых SKU имеет следующие поля:

    • Промо ID - идентификатор промо, в которому есть сопоставимый SKU;

    • Даты - даты проведения промо;

    • Название промо - названия сопоставимых промо;

    • Скидка - предоставленная скидка в процентах;

    • SKU ID - идентификатор сопоставимого SKU;

    • Название SKU - название сопоставимого SKU;

    • Коэф. похожести - коэффициент, которые показывает насколько сопоставимое SKU похоже на SKU, с которым работает пользователь;

    • Сред. прирост до - средний прирост по SKU до проведения промо в процентах;

    • Сред. прирост после - средний прирост по SKU после проведения промо в процентах.

  • Image Removed

    Продажи по SKU предыдущего года за период, на который планируется новое промо;

  • Прогноз продаж по SKU на период промо, без учета коммуникаций, но с учетом ценовой эластичности;

  • Прогноз промо продаж SKU.

  • Магазины - количество промо магазинов, в которых представлен SKU.

Детальная информация может отображаться в объеме продаж, деньгах или марже.

Редактирование промо

На странице просмотра промо есть возможность редактировать промо редактирования. Редактировать можно следующие данные о промо:

  • Даты проведения промо. Для редактирования необходимо нажать на кнопку 🖌 возле параметра "Дни". После нажатия откроется окно для редактирования дат:

...

  • Товары, которые участвуют в промо. Для редактирования необходимо нажать на кнопку 🖌 возле параметра "Товары". После нажатия откроется окно для редактирования списка товаров (редактирования товаров аналогично их выбору при создании нового промо):

...

  • Магазины, которые участвуют в промо. Для редактирования необходимо нажать на кнопку 🖌возле параметра "Магазины". После нажатия откроется окно для редактирования списка магазинов (редактирования магазинов аналогично их выбору при создании нового промо):

...

  • Параметры промо. Окно редактирования открывается нажатием либо на кнопку "Изменить" в правом блоке, либо на кнопку 🖌возле надписи "Параметры" в левом блоке. После нажатия откроется окно для редактирования параметров промо (редактирования параметров аналогично их выбору при создании нового промо):

...

Загрузка данных промо в Excel

При выборе функции выгрузки промо в ексель система автоматически создает Excel файл с данными о промо. Структура данного файла настраивается индивидуально под пользователя. Пример файла лежит по ссылке: "Пример файла Excel".

Выгрузка файлов с данными

У пользователя есть возможность загружать данные с csv файлов для упрощения процесса добавления больших объемов данных в промо. Система поддерживает загрузку следующих данных:

  • Загрузка параметров создания заголовка промо. Можно загружать для нескольких промо в одном файле. Загрузка вызывается из меню:

...

  • Загружаемый файл должен иметь расширение csv и следующие поля (все поля должны быть разделены точкой с запятой):

    • START_DATE - дата начала промо;

    • END_DATE - дата окончания промо;

    • TYPE - тип промо (T - TPR, M - MMK);

    • BENEFIT_PERC - скидка в промо;

    • NAME - название промо;

    • MECHANIC - номер механики промо, заполняется только для промо типа MMK;

    • COMMUNICATIONS - номера коммуникаций. Заполняются номерами соответствующих коммуникаций через запятую;

    • REMARKS - заметки;

    • STORES - список кодов магазинов MySales через запятую. Если промо на все магазины - поле оставляется пустым;

    • ALL_STORES - признак участия всех магазинов в промо. 0 - если промо проводится по указанным в поле STORES магазинам, 1 - если в промо загружаются все магазины.

    Пример csv файла лежит по ссылке: "Пример файла загрузки SKU".

  • Загрузка списка SKU внутри промо для отдельного промо (если эти данные не указывать, то для каждого SKU будут использоваться общие параметры промо). Загружаемый файл должен иметь расширение csv и следующие поля (все поля должны быть разделены точкой с запятой):

    • ID - номер промо, для которого загружаются SKU.

    • SKU_ID/ITEM_CODE - идентификатор товара, для которого нужно загрузить данные. В случае с загрузкой по коду MySales необходимо использовать SKU_ID, если же загрузка по внутреннему коду УПП необходимо использовать ITEM_CODE;

    • BENEFIT_PERC - размер скидки для SKU, должен быть выражен в процентах со знаком % в конце (например 40%, 33%, 28%);

    • SALES_PRICE - цена продажи. Перезаписывает цену, автоматически подтянутую с БД. К этой цене применяется скидка. Колонка SALES_PRICE может быть упущена у файле, тогда цена будет с БД.

    • COMMUNICATIONS - коммуникации для SKU. Вводятся либо номером коммуникации, либо ее полным названием (так, как она записана в систему). Каждую новую коммуникацию для SKU необходимо добавлять через точку с запятой после предыдущей в строке с SKU;

  • Пример csv файла лежит по ссылке: "Пример файла загрузки SKU".

    Важно, что количество точек с запятой в каждой строке с SKU должно быть равным.

  • Загрузка списка SKU внутри промо для отдельного промо (если эти данные не указывать, то для каждого SKU будут использоваться общие параметры промо). Загружаемый файл должен иметь расширение csv и следующие поля (все поля должны быть разделены точкой с запятой):

...

  • SKU_ID/ITEM_CODE - идентификатор товара, для которого нужно загрузить данные. В случае с загрузкой по коду MySales необходимо использовать SKU_ID, если же загрузка по внутреннему коду УПП необходимо использовать ITEM_CODE;

  • BENEFIT_PERC - размер скидки для SKU, должен быть выражен в процентах со знаком % в конце (например 40%, 33%, 28%);

  • SALES_PRICE - цена продажи. Перезаписывает цену, автоматически подтянутую с БД. К этой цене применяется скидка. Колонка SALES_PRICE может быть упущена у файле, тогда цена будет с БД.

  • COMMUNICATIONS - коммуникации для SKU. Вводятся либо номером коммуникации, либо ее полным названием (так, как она записана в систему). Каждую новую коммуникацию для SKU необходимо добавлять через точку с запятой после предыдущей в строке с SKU;

  • Пример csv файла лежит по ссылке: "Пример файла загрузки SKU".

    В примере csv файла заполнено скидки и коммуникации для трех SKU:

    • Для SKU 360274 заполнены - скидка, цена и коммуникации (с использованием названия коммуникации);

    • Для SKU 360337 заполнены - скидка, цена. Коммуникации не обязательно заполнять, но необходимо проставить нужное количество точек с запятой;

    • Для SKU 1137890 заполнены - скидка и коммуникации (с использованием номера коммуникации). Цена будет автоматически подтянута с БД;

    Важно, что количество точек с запятой в каждой строке с SKU должно быть равным.

  • Обновление скидок на уровне SKU для уже добавленных SKU в промо. Используется если у пользователя есть необходимость изменить скидки для отдельных SKU в промо. В файле должно быть две колонки:

    • SKU_ID/ITEM_CODE - идентификатор товара, для которого нужно загрузить данные. В случае с загрузкой по коду Майсейлз необходимо использовать SKU_ID, если же загрузка по внутреннему коду УПП необходимо использовать ITEM_CODE;

    • BENEFIT_PERC - размер скидки для SKU, должен быть выражен в процентах со знаком % в конце (например 40%, 33%, 28%);

  • Загрузка мастер-прогноза. Используется если необходимо загрузить из файла данные о мастер прогнозе для отдельных SKU в промо (мастер прогноз - это ручной прогноз, полученный экспертным путем). Загружаемый файл должен иметь расширение csv и следующие поля (все поля должны быть разделены точкой с запятой):

    • SKU_ID/ITEM_CODE - идентификатор товара, для которого нужно загрузить данные. В случае с загрузкой по коду Майсейлз необходимо использовать SKU_ID, если же загрузка по внутреннему коду УПП необходимо использовать ITEM_CODE;

    • FCST - значение мастер прогноза для SKU;

    • WEEK - неделя, для которой заводится мастер прогноз (необязательное поле);

  • Пример csv файла лежит по ссылке: "Пример файла загрузки мастер прогноза".

Календарь промо

Промо календарь - это еще один, удобный способ отображения промо. Он позволяет пользователю отслеживать и контролировать все промо на определенных временных интервалах. В отличии от отображения списком пользователь может видеть какие промо сейчас проводятся, просматривать прошлые промо, увидеть их эффективность в удобном привычном календаре.

Есть три варианта отображения календаря:

  • Неделя - отображение в разрезе недели, отображает все промо, проводимые на выбранной недели:

...

  • Месяц - отображение в разрезе месяца, отображает все промо, проводимые в выбранном месяце:

...

  • 3 Месяца - отображение в разрезе трех месяцев, отображает все промо, проводимые за выбранные три месяца:

...

Пользователь может не только отображать промо на календаре, но и посмотреть общую информацию о промо просто нажав на него. Аналогично событиям в обычных календарях, к которым все привыкли. А если необходимо посмотреть весь анализ по выбранному промо, то можно открыть окно анализа промо нажав на "Посмотреть детально".

Сценарии использования

Промо активности в рознице - очень важный драйвер продаж и привлечения покупателей, а также инструмент конкуренции между ритейлерами. Согласно ряду исследований, доля промо-хантеров (покупателей - охотников за скидками) среди потребителей, превышает 70% и продолжает расти.

Современный ритейл предлагает покупателям большой выбор товаров в каждой категории и в большинстве товарных групп, и цена является одним из ключевых критерием выбора покупателем товара на полке, а ширина и регулярность проводимых промо - важным критерием выбора магазина покупателем.

В тоже время, каждая розничная сеть, привлекая огромное количество покупателей, обладает мощным маркетинговым ресурсом, позволяющим предложить поставщику выгодные условия для продвижения его товара. Поэтому, зачастую, ритейлеры проводят промо совместно с поставщиками. Такое сотрудничество выгодно всем:

  • Покупатель получает выгодные условия приобретения товаров

  • Ритейлер привлекает больше покупателей и наращивает свои продажи

  • Поставщик предоставляет возможность большему количеству покупателей узнать о своем товаре и также растит продажи

Однако, неправильное планирование промо несет в себе ряд рисков и опасностей, которые могут превратить его из выгодного инструмента в глубоко убыточный. Если промо не дало того прироста, который ожидался - проиграли все:

  • Покупатель не узнал о выгодных условиях приобретения товара

  • Ритейлер не привлек покупателей и не увеличил продажи, предоставив скидку и каннибализировав (сьел) продажи более выгодного товара. В тоже время, заказав товара больше, чем нужно, после промо ритейлер остался с товарным запасом, который будет распродан еще не скоро, а если это - скоропортящийся товар, то это еще и списание и прямые убытки.

  • Поставщик также получил неликвидный товарных запас и потерял маржу без эффекта в продажах

Часто также бывает так, что и ритейлер и поставщик предлагают скидки значительно ниже психологической границы чувствительности покупателя, что может влечь за собой необоснованную потерю маржи.

Соответственно, основные сценарии использования промо-модуля следующие:

  • Накопление структурированной информации об исторических промо и ведение календаря будущих промо-активностей

  • Моделирование различных сценариев проведения промо и выбор наиболее оптимального. Что если предоставить скидку 30%? Какие будут продажи? Какая будет маржа? Выгодно ли это? А что если 40%? А что если дополнительно повесить баннер, внешний аутдор, или проводить промо при поддержке ТВ-рекламы?

  • Автоматическое прогнозирование промо-продаж с применением инструментов верификации прогнозов

  • Использование промо-прогнозов для автоматического заказа товаров как на склад, так и в магазины

Цены

О пакете Цены

Функционал

Модуль управления ценообразованием является высокотехнологическим решением для работы с ценами, с целью получения максимальной прибыли, автоматизации и уменьшении необходимой ручной работы.

Модуль ценообразования предлагает пользователям следующий функционал:

  • Оптимизация цен - предназначен для формирования оптимальной цены для каждого SKU базируясь на ценовой эластичности и цен конкурентов. Цена рассчитывается не только для максимизации прибыли, но и для минимизации списаний.

    Мониторинг цен - предназначен для автоматического скрепинга и мониторинга как регулярных так и промо цен у конкурентов для выбранных списков SKU на их веб-сайтах.

    Мониторинг веб каталогов - предназначен для скрепинга и мониторинга цен и промоакций из выбранных каталогов на веб-сайтах конкурентов.

    EAN мониторинг - предназначен для автоматического скрепинга и мониторинга как регулярных так и промо цен у конкурентов на их веб-сайтах с использованием уникальных EAN-кодов продуктов.

    Аналитика динамики ценовых индексов - предназначен для создания отчетов о динамике изменения цен, для визуального представления изменений ваших цен (отсортированных по группам товаров или спискам, ценовым сегментам, конкурентам и временных периодах) относительно цен у конкурентов а также распределения цен на ваши товары относительно рыночных.

    Ценовые политики - предназначен для создания и автоматического обеспечения ваших ценовых политик при каждом изменении цен конкурентов.

Оптимизация

Описание и применение

...

Модуль "Оптимизация" предназначена для автоматического оптимальной цены по каждому SKU для максимизации прибыли или продаж.

Использования модуля оптимизации позволяет:

  • Удобно выбрать SKU, для которых необходимо рассчитать оптимальную цену;

  • Получить информацию о текущих ценах на товары, цену конкурентов и ценовую рекомендацию;

  • Посмотреть прогноз изменения продаж в штуках, деньгах и марже при использовании рекомендованной цены;

  • Рассчитать прогноз по выбранной позиции с учетом рекомендованной цены и посмотреть график ценовой эластичности;

  • Утвердить рекомендованную цену на товары, как во всей сети, так и в отдельных магазинах;

  • Посмотреть влияния изменения цены одного товара на продажи других товаров в группе (кросс эластичность);

  • Посмотреть историю изменения цен для выбранной позиции.

Модуль применяется для расчета теоретически оптимальных цен на выбранные позиции. Это позволяет пользователю понимать при каких ценах прогноз продаж будет максимальным в продажах, деньгах и марже, а также понимать как изменения цены на одни товары будет влиять на продажи других.

Например, если опустить цену на один товар в группе - это с большой вероятностью приведет к росту его продаж, но при этом может очень сильно снизить продажи по другим товарам в этой группе и привести к потерям в деньгах и марже по суммарным продажам в группе.

Модуль оптимизации цен позволяет избежать таких ошибок и считает цены с учетом множества факторов, которые на них влияют. Более детально, как система рассчитывает цены описано в разделе "Как считается оптимальная цена"

Как работать с ценами

Система рассчитывает оптимальную цену для каждой выбранной позиции основываясь на ее ценовой эластичности спроса. Более детально о том, что такое ценовая эластичность спроса описано в разделе Ценовая эластичность.

Модуль оптимизации разработан как первый шаг к автоматическому ценообразованию на основании ценовой и кросс эластичности.

При использовании оптимизации цен пользователю желательно следовать следующим правилам:

  • При использовании модуля желательно использовать изменение цены в диапазоне не более 10% относительно цены у конкурентов;

  • Желательно для выборки брать 50 или 100 топовых позиций и запускать оптимизацию как на повышение так и на снижение;

  • При выборе повышения цены желательно выбирать оптимизацию продаж в деньгах (система по умолчанию выбирает желательную оптимизацию);

  • При выборе снижения цены желательно выбрать оптимизацию в марже (система по умолчанию выбирает желательную оптимизацию);

  • После завершения расчетов, перед принятием цен, пользователь должен проверить полученные цены - в случае понижения отличие от цен конкурентов должно составлять не более 5% от цен прямых конкурентов (15% относительно гипермаркетов и интернет магазинов);

  • При понижении принимать только проверенные позиции (по которых есть понимание изменения спроса при изменении цен), так как снижение цены может съесть маржу и продажи у других товаров с группы.

После принятия предложенных системой цен для выбранных позиций желательно на протяжении некоторого времени анализировать как будут менятся продажи для дальнейшего более эффективного использования модуля оптимизации цен.

Кросс эластичность

Используя модуль оптимизации цен у вас появляется возможность не только увидеть прогноз изменения спроса при изменении цены на конкретный товар, но и влияние этого изменения на другие товары в группе.

Это позволяет понимать как изменения цены на один товар повлечет за собою изменения спроса на другие товары в группе, что позволяет более точно оценить общие изменения продаж после изменения цены на один товар.

Зависимость изменения спроса на одни товары из группы при изменении цен на другие называется кросс эластичностью спроса.

Кросс эластичность спроса - это показатель процентного изменения в количестве купленного товара или услуги в ответ на изменение в цене другого товара или услуги. Система автоматически ищет зависимости между спросом на одни товарами и изменением цены на другие и выражает их в количественной оценке изменения продаж.

Факторами, которые влияют на кросс эластичность, являются естественные свойства товаров, их способность замещать друг друга в потреблении. Перекрестная эластичность спроса по цене может быть асимметричной: когда цена первого товара снизится, а спрос на другой товар возрастёт, но если цена второго товара повысится, а спрос на первый товар не изменится.

Инструкция по работе

Страница Оптимизации представлена двумя элементами:

  • Область настройки и фильтров предназначена для выбора параметров оптимизации, а также для выбора позиций, для которых будет произведен расчёт.

...

  • Область отображения результатов предназначена для отображения результатов и детально описана в разделе "Область результатов"

...

Настройки и фильтры

Область настроек и фильтров предназначена для настройки оптимизации и фильтрации позиций. Состоит из двух частей и кнопки пересчета результатов.

Настройки

Параметры предназначены для настройки оптимизации и включают в себе следующие поля:

...

  • Изменение цены:

    • Все - отображение всех позиций, независимо от того, будет оптимальная цена выше или ниже текущей цены;

    • Повышение - отображение только тех позиций для которых оптимальная цена выше текущей;

    • Снижение - отображение только тех позиций для которых оптимальная цена ниже текущей;

  • Безопасный расчёт - если включен - выводит только те позиции, для которых ошибка оценки меньше процента изменения цены;

  • Оптимизация продаж - выбор критерия по которому происходит оптимизация. Есть возможность выбора одного из двух вариантов:

    • В марже - рассчитывается цена для получения максимальной прибыли;

    • В продажах - рассчитывается цена для получения максимальных продаж, при этом максимальная прибыль не гарантируеться.

Фильтры

Фильтры предназначены для выбора позиций, по которых будет произведен расчёт и включают в себя следующие поля:

...

  • Группа - выбор групп товаров;

  • Линейка - выбор линейки товаров;

  • SKU - выбор конкрентных SKU;

  • Поставщик - выбор поставщиков;

  • Регион - выбор регионов.

По умолчанию выбрано все позиции. Для выбора конкретных позиций необходимо нажать кнопку ▽). Откроется поле выбора данных.

...

Выбор данных происходит следующим образом:

  • С помощью строки поиска - пользователь вводит поисковые данные в строку и выбирает нужные результаты нажатием на ✅) возле названия (для выбора всех данных нужно поставить галочку возле "Все");

  • С помощью поля "Еще...". После нажатия открывается окно для выбора нужных позиций (для подтверждения выбора нужно нажать "Выбрать", для возврата назад нажать "Назад").

...

Для применения выбранных параметров и фильтров необходимо нажать кнопку пересчета результатов.

...

Область настроек и фильтров можно спрятать нажав на ◀️, а также снова открыть нажав на ▶️.

Область результатов

Область отображения результатов предназначена для отображения результатов выполнения процесса оптимизации с учетом ранее выбраных параметров и фильтров.

Для того, чтобы данные появились в области необходимо нажать либо кнопку расчета либо пересчета.

...

Область отображения результатов состоит с таблицы, в которой отображаются результаты, и элементов управления результатами:

...

Таблица с результатами

...

Таблица состоит из следующих полей:

  • Артикул - идентификатор конкретного SKU;

  • Название - название SKU;

  • Магаз. - количество магазинов;

  • Цена закуп. - цена закупки;

  • Цена конк. - цена у конкурента;

  • Тек. цена - текущая цена;

  • Рек. цена - рекомендованная оптимальная цена;

  • Новая цена - новая цена для SKU;

  • % изм. - процентное изменение цены.

Элементы управления

  • ✅ - кнопка подтверждения новой цены для определенного SKU (при нажатии загорается синим и устанавливает значения с поля "Новая цена" как новую цену для соответствующего SKU);

  • - кнопка открытия графика изменений продаж при использовании рекомендованной оптимальной цены. На графике есть возможность отображения продаж следующим образом: * В штуках - отображение продаж в штуках; * В деньгах - отображение продаж в деньгах; * В марже - отображение продаж в марже.

...

  • Синяя точка на графике - отображает значение продаж для текущей цены, красная - для рекомендованной оптимальной цены. Цена закупки - закупочная цена;

  • - кнопка открытия окна кросс эластичности. Как система расчитывает кросс эластичность и на что она влияет описано в разделе "Кросс Эластичность".

...

  • В окне кросс эластичности представлена следующая информация:

    • Список SKU с группы на которые будет влиять изменение цены и следующая информация о них:

...

  • Тек. Цена - цена на SKU, на которое влияет кросс эластичность;

  • Кол-во (шт.) - прогноз продаж SKU на которое влияет кросс эластичность в штуках;

  • Δ Продажи (шт) - изменения продаж в штуках для SKU на которое в влияет кросс эластичность;

  • Δ Продажи (ден) - изменения продаж в деньгах для SKU на которое в влияет кросс эластичность;

  • Δ Маржа - изменения продаж в марже для SKU на которое в влияет кросс эластичность.

  • Изменения в продажах в штуках, деньгах и марже для SKU на которое меняется цена:

...

  • Суммарные изменения в продажах в штуках, деньгах и марже для SKU на которые влияет кросс эластичность:

...

  • “ “ кнопка построения прогноза по SKU (открывает страницу "Анализ" в новой вкладке);

  • “ “ кнопка открытия истории изменения цен.

...

  • Отображается в виде таблицы со следующими полями:

    • Статус - статус изменения цены (принято/отклонено);

    • Пользователь - пользователь, который принял или отклонил изменения;

    • Дата - дата изменения;

    • Цены - цены на SKU, состоят из:

      • Принятая - принятая цена;

      • Рекоменд. - рекомендованная оптимальная цена;

      • Текущая - текущая цена;

      • Закупочная цена - цена закупки;

      • Конкурента - цена конкурента;

    • Прогноз шт. - прогноз в штуках, состоит из:

      • Принятая - количество продаж в штуках при принятой цене;

      • Рекоменд. - количество продаж в штуках при рекомендованной оптимальной цене;

      • Текущая - количество продаж в штуках при текущей цене;

    • Прогноз ден. - прогноз в деньгах, состоит из:

      • Принятая - количество продаж в деньгах при принятой цене;

      • Рекоменд. - количество продаж в деньгах при рекомендованной оптимальной цене;

      • Текущая - количество продаж в деньгах при текущей цене;

    • Прогноз маржа - прогноз в марже, состоит из:

      • Принятая - количество продаж в марже при принятой цене;

      • Рекоменд. - количество продаж в марже при рекомендованной оптимальной цене;

      • Текущая - количество продаж в марже при текущей цене;

Детальное изучение SKU

Для выбора конкретного SKU для детального исследования необходимо нажать по строке с его названием.

...

После открывается элемент, который отображает детальный отчет по выбранном SKU.

...

Он включает в себя следующие элементы:

  • Вариация цены % - вариация цены по торговым точкам;

  • Ошибка оценки % - процентная ошибка оценки значения оптимальной цены;

  • Цены - данные о ценах:

    • Cтарая цена - старая цена на позицию;

    • Новая цена - новая цена на позицию;

    • Изменение абс. - абсолютное изменение цены в деньгах;

    • Изменение % - изменение цены в процентах;

  • Цены конкурентов - отображает цены у каждого конкурента. Если у конкурента присуствует акционная цена - она отображается возле актуальной (актуальная цена в этом случае отображается перечеркнутой).

...

  • Для ручного обновления цены нужно нажать кнопку . Кнопка  открывает историю цен по конкуренту. Для добавления нового конкурента нужно нажать  - нажатие откроет окно добавления нового конкурента. Этот процесc детально описан в разделе "Мониторинг".

  • Продажи в штуках - данные о продажах в штуках в зависимости от цены:

    • При старой цене - количество продаж в штуках при старой цене;

    • При новой цене - количество продаж в штуках при новой цене;

    • Изменение абс. - абсолютное изменение продаж в штуках;

    • Изменение % - процентное изменение продаж в штуках;

  • Продажи в деньгах - данные о продажах в деньгах в зависимости от цены:

    • При старой цене - количество продаж в деньгах при старой цене;

    • При новой цене - количество продаж в деньгах при новой цене;

    • Изменение абс. - абсолютное изменение продаж в деньгах;

    • Изменение % - процентное изменение продаж в деньгах;

  • Продажи в марже - данные о продажах в марже в зависимости от цены:

    • При старой цене - количество продаж в марже при старой цене;

    • При новой цене - количество продаж в марже при новой цене;

    • Изменение абс. - абсолютное изменение марже в штуках;

    • Изменение % - процентное изменение продаж в марже;

Сценарии использования

Раздел находится на стадии разработки.

Мониторинг

Описание и применение

...

Модуль "Мониторинг" предназначен для автоматического скрепинга и мониторинга цен и промо акций на веб сайтах у конкурентов.

Использование модуля мониторинга цен позволяет:

  • Настраивать мониторинг цен на выбранные SKU в онлайн магазинах конкурентов;

  • Отображать регулярную цену, акционную цену и тип акций у конкурентов;

  • Выгружать все товары и цены у конкурентов у файл в удобном формате;

  • Удобно загружать списки товаров, цену которых необходимо мониторить;

  • Использовать фильтры для удобного поиска и отображения нужных товаров.

Модуль мониторинга может применятся как для всех товаров, так и для выбранных списков. Использования мониторинга позволяет быть всегда в курсе актуальных цен и акций у конкурентов, а также оперативно реагоровать на их изменения.

Цены конкурентов полученные при мониторинге используются у всех остальных модулях пакета ценообразования.

Инструкция по работе

Отображения записей

Список записей отображается в виде таблицы, которая имеет следующие поля:

...

  • SKU – номер SKU;

  • Наименование – наименование SKU;

  • Конкурент – наименование конкурента;

  • Ошибка - наименование ошибки при парсинге (если присутствует);

  • Цена конк. – цена у конкурента;

  • Акц. цена конк. – акционная цена у конкурента (если присутствует);

  • Акция - тип акции у конкурента;

  • Отсутствует – галочка, если позиции нет в наличии у конкурента;

  • Дата цены – дата и время обновления данных о цене конкурента;

  • Действует с – минимальная цена для нахождения скачков цены;

  • Действует по – максимальная цена для нахождения скачков цены.

Добавление мониторинга

Для добавления новой позиции необходимо нажать кнопку добавления нового мониторинга:

...

После нажатия кнопки открывается модальное окно добавления нового мониторинга, которое состоит из следующих полей:

...

  • Группа - название группы. Если пользователь хочет пропустить выбор группы и иметь возможность выбирать со всех SKU в системе необходимо поставить галочку возле "Не ограничено группой" (в этом случае загрузка списка SKU для выбора будет происходить дольше);

  • Sku - название SKU;

  • URL - ссылка на страницу с SKU на сайте конкурента;

  • Коэффициент - вводится, если у конкурента нет искомого SKU и вместо него добавляется аналог с неким коэффициентом;

  • Конкурент - выбор конкурента;

  • Список селекторов - блок с данными селекторов:

    • Рег. цена - селектор для цены позиции;

    • Акционная цена - селектор для акционной цены позиции;

    • Рег. цена в акции - селектор для перечеркнутой регулярной цена, если есть акционная;

    • Акция - селектор типа акции;

    • Проверка на наличие - селектор для проверки на наличие товара у конкурента.

  • Проверка конкурента - блок для проверки работы селекторов:

    • Ошибка - вывод ошибки парсинга данных, если имеется;

    • Рег. цена - полученная цена;

    • Акционная цена - полученная акционная цена;

    • Отсутствует - поле индикации отсутствия товара в наличии;

    • Акция - тип акции у конкурента;

    • Действует с – минимальная цена для нахождения скачков цены (если не указывать - ставит по умолчанию цену в 3 раза меньше регулярной);

    • Действует по – максимальная цена для нахождения скачков цены (если не указывать - ставит по умолчанию цену в 3 раза меньше регулярной).

Для того, чтобы начать проверку нужно нажать кнопку "Тест":

...

Для добавления нужно нажать кнопку "Добавить", для возврата кнопку "Назад".

Редактирование и удаление

Удаление записи происходит при нажатии кнопки 🗑 в строке записи.

Для редактирования записи необходимо нажать кнопку  в строке записи. После нажатия кнопки🖌модальное окно редактирования записи. Это окно повторяет окно добавления записи и позволяет изменить все поля, аналогично как при добавлении.

Для применения изменений нужно нажать кнопку "Редактировать", для возврата кнопку "Назад".

Фильтры

Для более удобного отображения и поиска записей на странице "Мониторинг" присутствуют следующие фильтры:

...

  • Конкурент. Выбор конкретного конкурента со списка, для отображения всех записей связанных с ним;

  • Ошибка. Фильтрация полей по критерию "с ошибкой"/"без ошибки"/"все";

  • Cтрока поиска по SKU.

Работа с файлами

На странице "Мониторинг" присутствует возможность загрузки записей для мониторинга с файла и выгрузки данных мониторинга в файл.

...

Для загрузки записей с файла необходимо выбрать файл нажатием на кнопку "Выбрать файл". После выбора файла нажать на кнопку .

...

Страница поддерживает загрузку файлов 3 типов:

  • tsv с разделителем Tab;

  • txt с разделителем Tab;

  • csv с разделителем ";".

Файл должен быть следующего вида:

  • Обязательные поля:

    • SKU_ID - номер SKU;

    • URL - полный адрес интернет страницы с нужным SKU у конкурента;

  • Дополнительные поля:

    • SELECTOR - селектор цены на странице;

    • SELECTOR_PROMO - селектор акционной цены на странице;

    • SELECTOR_PROMO_OLD - селектор регулярной цены во время акции;

    • SELECTOR_MMK - селектор ММК акции на странице;

    • SELECTOR_ABSENT - селектор отсутствия товара в наличии;

    • COEFFICIENT - коэффициент соответствия товара у конкурента, если используется аналогичный товар (при отсутствии нужного товара у конкурента).

Пример файла с обязательными полями:

...

Пример файла со всеми полями:

...

Для выгрузки данных мониторингов в файл необходимо нажать кнопку ⏏︎. После нажатия начнется процесс формирования отчета по данных мониторингов и на протяжении минуты начнется автоматическая загрузка файла.

Пример файла с данными мониторингов:

...

Файл включает в себя следующие поля:

  • SKU_ID - номер SKU;

  • Group_ID - номер Группы;

  • Group - название Группы;

  • SKU - название SKU;

  • Purchase_Price - закупочная цена;

Дальше идут поля, которые открываются отдельно для каждого конкурента нажатием на плюсик в строке над конкурентом

  • URL - полный адрес интернет страницы с нужным SKU у конкурента;

  • PRICE_CONSUMER - цена у конкурента;

  • PROMO_VALUE - значение цены в промо, если есть;

  • ABSENT - значение 0, если товар отсутствует; значение 1, если товар в наличии у конкурента;

  • SDATE - дата проведения мониторинга;

Сценарии использования

Раздел находится на стадии разработки.

Каталоги

Описание и применение

Модуль "Каталоги" предназначен для автоматического скрепинга и мониторинга цен на группы товаров из каталогов в интернет—магазинах конкурентов.

Каталоги - это страницы на сайтах конкурентов, на которых представлено более чем одно SKU. Например каталогами являются страницы с акционными товарами, страницы отдельного типа продукции (йогурты или молоко) и тп.

Использование модуля мониторинга каталогов позволяет:

  • Настраивать мониторинг цен на каталоги у конкурентов, а не на отдельные товары;

  • Производить мониторинг цены в каталогах без привязки к отдельным SKU в Вашей сети;

  • Делать привязку товаров из каталога к Вашим товарам (в будущем, система будет автоматически добавлять к привязанным товарам цену конкурента);

  • Использовать фильтры для удобного поиска и отображения нужных товаров;

  • Выгружать все товары и цены из каталогов конкурентов в файл в удобном формате.

Модуль мониторинга каталогов используется для автоматического скрепинга цен и акций не по отдельным позициям, а группами. Обычно используется для скрепинга акционных каталогов или же отдельных групп товаров на сайте конкурента.

Инструкция по работе

Отображения записей

Список записей предоставляется в виде таблицы, которая имеет следующие поля:

  • Имя каталога - наименование конкурента

    Категория - номер EAN

    Бренд - статус результатов поиска

    Наименование - наименование товара найденного при поиске товара

    Цена - цена товара найденного при поиске

    Акционная цена - акционная цена найденного при поиске товара

    Акция - наличие промо акции

    Ошибка - описание причины ошибки (если есть). Пустое поле - отсутствие ошибки.

  • N/A - товара нет в наличии. Знаком ✅ отмечает товары которых нет в наличии

  • Обновление SKU - время последнего поиска товара

Чтобы открыть сохраненный ранее каталог, нажмите на выпадающее меню “Каталоги”. Появится список сохраненных ранее каталогов. Выберите который вас интересует.

...

Добавление поиска

Для добавления нового поиска нажмите кнопку “Добавить новый каталог”:

...

После нажатия кнопки откроется окно добавления нового каталога, которое состоит из следующих полей:

...

  • Конкуренты - поле для выбора сайтов конкурентов, где будет проходить поиск;

    Тип каталога - поле для ввода типа каталога. Некоторые сайты имеют несколько типов каталогов, если он один - пропускайте данное поле'

    Имя каталога - поле названия каталога, для последующего сохранения;

    URL - поле c URL адресом каталога (зайдите на сайт - найдите нужную категорию - скопируйте ссылку).

...

После заполнения нажмите кнопку “Добавить новый каталог”, для отмены нажмите кнопку “Назад”.

Результат выполнения поиска:

...

Привязка найденного товара

Чтобы привязать найденный товар к мониторингу, в строке нажмите на кнопку “_“  в строке с выбранным SKU.

Далее откроется окно “Добавление позиции к SKU”, которое состоит из следующих полей:

...

  • Ограничить список SKU группой - поле в которому пользователь выбирает группу из выпадающего списка.

    Почните набирать sku id или имя - поле фильтрации по названию или id SKU;

    Список SKU - список отфильтрованных SKU. Для выбора необходимого - нажмите на круг в строке с необходимым SKU в столбце "Select".

Выберите из списка нужную позицию.

Нажмите кнопку “Привязать SKU”, для отмены нажмите “Назад”

После чего появится окно с уже привязанным SKU для мониторинга

...

Редактирование и удаление

Чтобы посмотреть сайт конкурента нажмите на кнопку 🌎.

Для обновления поиска нажмите кнопку 🔁.

Для редактирования поиска необходимо нажать кнопку 🖌.

После чего появится окно для редактирования данных:

...

Для применения изменений нужно нажать кнопку "Редактировать поиск", для возврата кнопку "Назад".

Для удаления поиска необходимо нажать кнопку 🗑, выбрав перед этим из выпадающего меню “Каталог”, список который нужно удалить.

После нажатия подтвердите свои действия, “ОК” - если хотите удалить, “Отмена” - вернутся назад.

Для массовой автоматической привязки SKU нажмите кнопки

...

После этого подтвердите свои действия нажав “ОК”, для отмены нажмите “Отмена”.

Фильтры

Для открытия меню фильтрации, нажмите:

...

Из выпадающего меню выберите тип фильтрации:

  • Привязанные sku

    Непривязанные sku

    Отобразить все

...

Результат выполнения поиска по SKU:

Поиск по названию в списке найденных товаров можно сделать в поле над таблицей товаров.

Для отмены поиска нажмите ❎  в конце строки поиска.

Экспорт в Excel

Для экспорта данных в Excel формат и сохранения результатов поиска нажмите на кнопку 🔽.

Для экспорта заполните поля:

Конкурент - ссылка на сайт конкурента

Имя каталога - Имя каталога (выберете из списка)

...

После заполнения нажмите кнопку "Начать экспорт", для отмены нажмите кнопку “Назад”

Сценарии использования

Раздел находится на стадии разработки.

EAN Коды

Описание и применение

Модуль "EAN код" предназначен для автоматического скрепинга и мониторинга цен конкурентов используя уникальные EAN кода товара в интернет-магазинах конкурентов, которые поддерживают поиск по EAN кодам.

Использование модуля мониторинга по EAN кодам позволяет:

  • Искать цены, акции и специальные предложения на товары у конкурентов по штрих коду;

  • Настраивать поиск:

    • Удобно вводить штрих коды товаров, цены на которые необходимо найти;

    • Выбирать одного, нескольких или всех конкурентов у которых необходимо провести поиск.

  • Использовать фильтры для удобного поиска и отображения найденных штрих кодов;

  • Получать информацию о наличии интересующего товара у конкурента;

  • Добавлять товары к автоматическому мониторингу в будущем (в модуль мониторинг Цен).

Модуль мониторинга по EAN кодам используется для автоматического скрепинга цен и акций с использованием базы EAN кодов на товары в вашей сети. Система автоматически загружает ваши EAN коды, и начинает поиск цен на сайтах конкурентов. После завершения поиска нет необходимости делать привязку ваших товаров к товарам на сайтах конкурентов, так как система делает это автоматически по EAN кодам.

Инструкция по работе

Отображение записей

Список записей предоставляется в виде таблицы, которая имеет следующие поля:

  • Конкурент - наименование конкурента;

    EAN - номер EAN;

    Статус - статус результатов поиска:

    • Товар не найден:

    • Поиск успешно выполнен:

    • Товар не найден сейчас, найдена запись с последнего поиска:

    • Проблема при добавлении EAN кода:

    • Потеряно соединение во время поиска:

    • Ожидание завершения поиска:

    • Поиск был вручную остановлен пользователем:

    • Ошибка при поиске:

    • Наименование - наименование товара найденного при поиске товара;

      Цена - цена товара найденного при поиске;

      Акционная цена - акционная цена найденного при поиске товара;

      Промо - наличие промо акции;

      Ошибка - описание причины ошибки (если есть). Пустое поле - отсутствие ошибки;

    • N/A - товара нет в наличии. Знаком  отмечает товары которых нет в наличии;

    • Обновление SKU - время последнего поиска товара.

Добавления EAN мониторинга

Для добавления нового поиска нажмите кнопку “Новый поиск”:

...

После нажатия кнопки откроется окно добавления нового поиска, которое состоит из следующих полей:

...

  • Поиск - поле названия поиска

    Конкуренты - поле для выбора сайтов конкурентов для поиска, где будет проходить поиск

    EAN коды - поле для ввода EAN кодов. Для поиска больше одного EAN кода, нужно после каждого EAN кода поставить запятую.

...

После заполнения нажмите кнопку “Запустить Поиск”, для отмены нажмите кнопку “Назад”.

...

После чего запустится передача данных для поиска, окно автоматически закроется.

...

Результат выполнения поиска:

...

Привязка к мониторингу

Чтобы привязать найденный товар к мониторингу, в строке нажмите на кнопку

Далее откроется окно “Добавление позиции на мониторинг”

...

  • Группа - название группы. Если хотите выбирать со всех SKU в системе - необходимо поставить галочку возле "Не ограничено группой" (в этом случае загрузка всего списка SKU будет происходить дольше);

    SKU - ссылка на страницу с SKU на сайте конкурента (выбирается из списка)

    URL - ссылка на товар в интернет магазине (заполняется автоматически)

    Коэффициент - вводится, если у конкурента нет искомого SKU и вместо него добавляется аналог с неким коэффициентом;

    Конкурент - сайт конкурента (заполняется автоматически)

    Наименование - название найденного товара по EAN коду (заполняется автоматически)

    Артикул - артикул товара

    Рег.цена - цена у конкурента

    Промо цена - акционная цена у конкурента (если присутствует)

    N/A - наличие товара

    Акция - тип акции у конкурента

    Действительно с - минимальная цена для нахождения скачков цены

    Действительно до - максимальная цена для нахождения скачков цены.

Нажмите кнопку “Установить мониторинг”, для отмены нажмите “Назад”

После чего появится окно с уже привязанным SKU для мониторинга

...

Редактирование и удаление

Для выбора сохраненного списка поиска по EAN кодам, выберите нужное из выпадающего меню “Поиск”

...

Для удаления поиска необходимо нажать кнопку 🗑, выбрав перед этим из выпадающего меню “Поиск”, список который нужно удалить.

...

После нажатия подтвердите свои действия, “ОК” - если хотите удалить, “Отмена” - вернутся назад

...

Для редактирования поиска необходимо нажать кнопку 🖌

...

После чего появится окно для редактирования данных

...

Для применения изменений нужно нажать кнопку "Редактировать поиск", для возврата кнопку "Назад".

Для обновления поиска нажмите кнопку 🔄

...

Удаление найденного товара по EAN коду

Чтобы удалить найденный товар из списка, справа в строке данного товара нажмите на кнопку 🗑

...

После чего, подтвердите удаление

...

Остановка поиска

Для принудительной остановки поиска по EAN кодам нажмите на кнопку ⌽

...

Фильтры

...

Фильтрация списка по статусу выполнения поиска

...

Также можно делать фильтрацию по полям:

  • Ошибка

    SKU.

Поиск в списке найденных товаров можно сделать в поле над таблицей товаров.

...

Для поиска можно использовать EAN код или название товара.

Для отмены поиска по имени нажмите ❎.

Работа с файлами

Для экспорта данных в Excel и сохранения результатов поиска нажмите на кнопку ⏏︎

...

Сценарии использования

Раздел находится на стадии разработки.

Динамика

Описание и применение

...

Модуль "Динамика" предназначен для создания отчетов по динамике изменения цен на товары в вашей сети относительно цен на те же товары у конкурентов. Отчеты визуализируют, как изменялись цены на выбраных промежутках времени для выбраных товаров относительно изменений цен у выбраных конкурентов, а также положение цен у вашей сети относительно рыночных. Система автоматически подтягивает цены конкурентов на выбраные товары, вычисляет ценовой индекс и предоставляет результат в виде графиков и таблиц.

Отчеты используются для понимания конкурентоспособности цен в вашей сети относительно цен на рынке. Также отчеты наглядно демонстрируют отличия между вашими ценами и ценами у ваших конкурентов как в обычные, так и промо периоды.

Вкладка визуализации ценового индекса позволяет пользователю оценить уровень цен в его сети относительно цен у конкурентов.

Система автоматически рассчитывает ценовые индексы для выбранных позиций на выбранном временном промежутке и визуализирует их на графике. На графике можно увидеть как изменяется ценовой индекс для каждого выбранного конкурента.

Вкладка визуализация динамики цен позволяет пользователю оценить уровень цен в его сети относительно рыночных. Система автоматически делает распределение всех цен (как ваших так и конкурентов) для всех позиций и распределяет в три категории (пользователь видит распределение как для своих товаров, так и для конкурентов):

  • Выше рынка - для товаров, цены на которые будут выше чем средние по рынку;

  • В пределах рынка - для товаров, цены на которые являются средними по рынку;

  • Ниже рынка - для товаров, цены на которые ниже средних по рынку.

Как считается ценовой индекс

Расчет ценового индекса происходит автоматически и основан на существующей информации о ценах как у вас в сети, так и у конкурентов.

Ценовой индекс считается как отношение цены на товар в вашей сети к цене у конкурента. Если у системе нету цены на товар у конкурента, то ценовой индекс не будет рассчитан.

Инструкция по работе

Настройка параметров отчета

Для выбора параметров отчета используется область "Детали отчета":

...

Вы выбираете следующие параметры отчета:

  • Конкуренты - выбор конкурентов, для которых относительно которых будут рассчитываться и визуализирываться ценовые индексы;;

  • Группы - выбор групп товаров для отчета (если есть необходимость расчета индекса не для отдельных товаров, а для полных групп);

  • Списки товаров - выбор SKU для отчета. У вас есть возможность либо выбрать уже созданные списки товаров с выпадающего списка либо создать новый список товаров. Для создания нового списка необходимо нажать кнопку “+” . После нажатия откроется окно добавления нового списка со следующими полями:

...

  • Имя списка товаров - названия нового списка товаров;

  • Группа - поле выбора группы товаров;

  • 💬- выбрать sku из справочника - поле выбора SKU. При нажатии открывается окно выбора SKU (либо со всех групп, либо с выбранной раньше);

  • SKU - поле ручного ввода нужных номеров SKU;

  • Фильтр по имени - поле ручной фильтрации выбранных SKU по названию. Для применения необходимо ввести названия или часть названия по которому необходимо отфильтровать в поле;

  • Для сохранения списка необходимо нажать кнопку "Создать"

  • Ценовые линии - выбор ценовых линий, которые автоматически подгружаются с системы;

  • Мин. SKU в день - минимальное количество SKU для которых есть ценовой индекс;

  • Учитывать промо - если вы хотите, чтобы в отчетах учитывались промо цены у конкурентов необходимо поставить флажок. Если же только регулярные цены - снять флажок;

  • Дата от - выбор начальной даты с которой система рассчитает динамику ценового индекса;

  • Дата до - выбор конечной даты до которой система рассчитает динамику ценового индекса;

После выбора всех интересующих данных необходимо нажать кнопку "Запустить" для начала построения отчета.

Работа с вкладкой индексов

Вкладка "Ценовой индекс" открывается по умолчанию при открытии страницы "Динамика".

После завершения процесса создания отчета на вкладке появится сгенерированный отчет:

...

Отчет представляет собой график измененения ценового индекса и таблицу с данными на основании которых этот график построен.

На графике пользователь может увидеть значения ценового индекса относительно разных конкурентов на выбранном промежутке времени.

...

В таблице представлены чисельные значения ценового индекса относительно каждого выбранного конкурента. У пользователя есть возможность посмотреть разбивку каждого индекса по SKU нажав на интересующее значение. После нажатия откроется окно, с детальной информацией о всех SKU выбранных раньше:

...

В окне представлена следующая информация:

  • Агрегированный ценовой индекс - средний ценовой индекс по всем выбранным SKU относительно конкурента;

  • Количество SKU - количество выбранных SKU для которых есть цена конкурента;

  • Таблица с детальными данными о каждом SKU:

    • SKU - идентификатор выбранных SKU;

    • Имя - названия выбранных SKU;

    • Ценовая линия - ценовая линия выбранных SKU;

    • Цена конкурента - значение цены у выбранного конкурента;

    • Ваша цена - значения цены на товар у вашей сети;

    • Ценовой индекс - значения ценового индекса (отношения цены в вашей сети к цене конкурента);

    • Средние продажи - среднее значение продаж по выбранном SKU.

  • Excel - кнопка выгрузки данных с таблицы в excel-файл.

Работа с вкладкой распределения

Для открытия вкладки "Динамика распределения цен" необходимо нажать на "Распределения цен":

...

После нажатия откроется отчет о "Динамике распределения цен" для раньше заданных параметров отчета:

...

Отчет представляет собой график распределения цен на выбранные товары относительно рынка и таблицу с данными на основании которых этот график построен.

На графике пользователь может увидеть процентное распределения цен на товары у своей сети и у конкурентов относительно рынка на выбранном промежутке времени. Есть три показателя:

  • Выше рынка - количество позиций выраженное в процентном отношении, цена на которые выше средней;

  • В переделах рынка - количество позиций выраженное в процентном отношении, цена на которые является среднерыночной;

  • Ниже рынка - количество позиций выраженное в процентном отношении, цена на которые ниже средней;

На графике представлено общее распределение цен в вашей сети и цен конкурентов.

...

В таблице представлено количество SKU выраженное в единицах и процентах относительно среднерыночных значений. У пользователя есть возможность посмотреть детальную разбивку по SKU относительно долей рынка. Для открытия окна разбивки необходимо нажать на процент в интересующей доли по интересующей дате в таблице:

...

После нажатия откроется окно, с детальной информацией о SKU:

В окне представлена следующая информация:

  • Доля - процент цен которые попадают в выбранную долю рынка;

  • Количество SKU - количество выбранных SKU;

  • Таблица с детальными данными о каждом SKU:

    • SKU - идентифактор выбранных SKU;

    • Имя - названия выбранных SKU;

    • Ценовая линия - ценовая линия выбранных SKU;

    • Цена конкурента - значение цены у выбранного конкурента;

    • Ваша цена - значения цены на товар у вашей сети;

    • Ценовой индекс - значения ценового индекса (отношения цены в вашей сети к цене конкурента);

    • Средние продажи - среднее значение продаж по выбранном SKU.

  • Excel - кнопка выгрузки данных с таблицы в excel-файл.

Загрузка отчета

Для загрузки сгенерированного отчета необходимо нажать кнопку "Загрузить отчет"

...

Отчет загружается в формате excel со всеми данными с таблицы, которая отображалась на странице.

Сценарии использования

Раздел находится на стадии разработки.

Политика

Описание и применение

...

Модуль "Политика" предназначен для создания и автоматического поддержания ваших ценовых политик при каждом изменении цен конкурентов.

Использование модуля ценовых политик позволяет:

  • Создавать ценовые политики для интересующих товаров;

  • Автоматически поддерживать цены на товары относительно созданной политики;

  • Автоматически обновлять цены конкурентов, чтобы всегда поддерживать актуальную цену на Ваши товары относительно политики;

  • Загружать цены конкурентов из физических мониторингов;

  • Получать информацию о ценовом индексе, который отображает отношение Ваших цен к ценам конкурентов и позволяет проверять поддержания цен относительно политики;

  • Узнавать прогноз изменения продаж в штуках, деньгах и марже при применении цен из политики;

  • Рассчитывать прогноз по выбранной позиции с учетом новой цены;

  • Просматривать график ценовой эластичности;

  • Просматривать историю изменения цен.

Модуль ценовых политик используется для обеспечения автоматической поддержки цен на выбранные списки товаров в вашей сети на одном уровне относительно цен в выбранных конкурентов. Система автоматически обновляет цены конкурентов используя модуль Мониторинга и позволяет постоянно поддерживать актуальные цены в рамках политики.

Индексы и рейтинг надежности

Для понимания уровня цен по отношению к ценам конкурентов система автоматически расчитывает для каждой политики 4 ценовых индекса:

...

  • Утв. индекс торговых точек - указывает во сколько раз отличаются цены по всем SKU в торговых точках от цен у конкурентов с учетом утвержденных цен;

  • Тек. индекс торговых точек - указывает во сколько раз отличаются текущие цены по всем SKU в торговых точках от цен у конкурентов;

  • Утв. индекс товаров - указывает во сколько раз отличаются цены только по SKU, которые используются в политике, от цен у конкурентов с учетом утвержденных цен;

  • Тек. индекс товаров - указывает во сколько раз отличаются текущие цены только по SKU, которые используются в политике, от цен у конкурентов.

Ценовой индекс рассчитывается как отношение цены на товар в вашем магазине к цене на товар в магазине конкурента. Для регулярных и промо цен для одного и того же товара ценовые индексы будут отличатся.

Также для понимания насколько данные мониторинга являются полными введенен "Рейтинг надежности". Он указывает для какого процента позиций из политики имеется цена конкурента с мониторинга.

...

Инструкция по работе

Страница представлена двумя областями:

  • Область запуска расчета политики. Предназначена для выбора дополнительных параметров и запуска расчета выбранного шаблона политики. Детально описана в разделе "Запуск расчета Политики"

...

  • Область отображения результатов. Предназначена для отображения результатов расчета политики и детально описана в разделе "Область результатов"

...

Запуск расчета Политики

Для запуска расчета необходимо выбрать следующие детали ценовой политики:

  • Выбор политики. Нужно выбрать ранее созданную политику, или создать новую (создание новой политики детально описано в разделе "Добавление Политики"). Для выбора политики необходимо нажать на надпись "Новая политика". Откроется список созданных политик, в которому необходимо выбрать нужную.

...

  • Выбор дат мониторинга. Нужно выбрать даты между которыми происходил один или несколько мониторингов. Как физических, так и онлайн. Если между выбранными датами не происходили мониторинги, то политика расчитается, но без учета цен конкурентов. Для выбора дат необходимо сначала выбрать дату начала - верхнее поле, и дату окончания - нижнее поле.

...

При нажатии на поле с датой откроется календарь, в котором нужно выбрать необходимую дату.

...

После того, как политика и даты мониторинга выбраны необходимо нажать кнопку "Запустить" для начала расчета политики. Время расчета политики зависит от количества данных.

После окончания расчета данные будут отображены в "Области результатов".

Область результатов

Область результатов предназначена для отображения результатов расчета политики. Данные в этой области появляются после запуска расчета политики.

Область отображения результатов состоит с следующих блоков:

  • Таблица отображения результатов - отображает данные по политики для каждого SKU. Таблица детально описана в разделе "Таблица с результатами";

...

  • Элементы управления - позволяют выводить дополнительные данные по SKU. Детально описаны в разделе "Элементы управления";

...

  • Отчет мониторинга - позволяет загрузить отчет мониторинга в формате Excel;

...

Для выбора названия отчета необходимо нажать на 🖌. Для загрузки отчета мониторинга необходимо нажать на ⏏︎.

  • Данные о изменениях маржи и продаж (в штуках и деньгах) - указывают как изменения цены (новая цена) будут влиять на изменение маржи и продаж. Изменение отображает разницу между продажами (в штуках и деньгах) и маржой при старой и новой цене. Если значения отрицательны - значит при новой цене прогноз для маржи или продаж хуже чем при старой. Отображаются только для утвержденной цены;

...

  • Строка поиска - поиск по номеру SKU или наименованию.

...

  • Права - информация о правах пользователя для выбранной политики. Только пользователь с правами утверждения может сохранить изменения цен в системе.

...

Таблица с результатами

Таблица с результатами состоит из следующих полей:

...

  • #SKU - идентификатор SKU;

  • Наименование - название SKU;

  • Торговая точка - идентификатор и название тороговой точки;

  • Текущая цена - текущая цена на SKU в торговой точке;

  • Цена конкурента - цена конкурента на SKU подтянутая с мониторинга;

  • Новая цена - цена на SKU расчитанная системой с учетом индекса, который был указан при создании политики (создание политики описано в разделе "Добавление новой политики"). Пользователь может изменить цену в поле с новой ценой;

  • Маржа % - процент, который маржа составляет от закупочной цены;

  • Утвердить - кнопки для утверждения новой цены по SKU. Утверждение цены детально описано в разделе "Утверждение цены";

  • Разница % - разница между новой ценой и ценой конкурента в процентах;

  • Количество (шт) - прогноз продаж при новой цене;

  • Δ Маржа - разница в продажах в марже при новой цене и текущей;

  • Δ Кол-во (шт) - разница в продажах в штуках при новой цене и текущей;

  • Δ Кол-во (ден) - разница в продажах в деньгах при новой цене и текущей.

Утверждение цены

Для утверждения новой цены необходимо нажать на галочку в столбце "Утвердить" в строке с необходимым SKU.

...

После подтверждения галочка станет синей.

...

После утверждения текущая цена в системе станет равной новой цене. Система берет новую цену с поля "Новая цена" в таблице. Пользователь может подтвердить цену как на один SKU, так и на все. Для подтверждения цены на все SKU необходимо нажать на надпись "Утвердить" в заголовке таблицы. Заголовок станет синего цвета.

...

Также пользователь может снять утверждение цены повторно нажав на галочку. После снятия утверждения галочка станет снова белой.

...

Для снятия подтверждения со всех SKU необходимо повторно нажать на надпись "Утвердить" в заголовке таблицы. После снятия утверждения заголовок снова станет черным.

В системе утвержденная цена станет активной только после ее сохранения. Для применения утвержденных цен в системе необходимо нажать кнопку 💾.

Элементы управления

Элементы управления включают в себя следующие элементы:

  • - кнопка открытия графика изменений продаж при изменении цены (ценовая эластичность). На графике есть возможность отображения продаж следующим образом:В штуках - отображение продаж в штуках;В деньгах - отображение продаж в деньгах;В марже - отображение продаж в марже.

...

Синяя точка на графике - отображает прогнозное значение продаж для текущей цены, красная - для новой цены. Цена закупки - закупочная цена;

  • “_” -кнопка построения прогноза по SKU (открывает страницу "Анализ" в новой вкладке);

  • “_” -кнопка открытия истории изменения цен.

...

  • Отображается в виде таблицы со следующими полями:

    • Статус - статус изменения цены (принято/отклонено);

    • Пользователь - пользователь, который принял или отклонил изменения;

    • Дата - дата изменения;

    • Цены - цены на SKU, состоят из:

      • Принятая - принятая цена;

      • Рекоменд. - рекомендованная оптимальная цена;

      • Текущая - текущая цена;

      • Закупочная цена - цена закупки;

      • Цена конкурента - цена конкурента;

    • Прогноз шт. - прогноз в штуках, состоит из:

      • Принятая - количество продаж в штуках при принятой цене;

      • Рекоменд. - количество продаж в штуках при рекомендованной оптимальной цене;

      • Текущая - количество продаж в штуках при текущей цене;

    • Прогноз ден. - прогноз в деньгах, состоит из:

      • Принятая - количество продаж в деньгах при принятой цене;

      • Рекоменд. - количество продаж в деньгах при рекомендованной оптимальной цене;

      • Текущая - количество продаж в деньгах при текущей цене;

    • Прогноз маржа - прогноз в марже, состоит из:

      • Принятая - количество продаж в марже при принятой цене;

      • Рекоменд. - количество продаж в марже при рекомендованной оптимальной цене;

      • Текущая - количество продаж в марже при текущей цене;

Детальное изучение SKU

Для выбора конкретного SKU для детального исследования необходимо нажать по строке с его названием.

...

После нажатия в правой части экрана открывается элемент, который отображает детальный отчет по выбранном SKU.

...

Он включает в себя следующие элементы:

  • Вариация цены % - вариация цены по торговым точкам;

  • Ошибка оценки % - процентная ошибка оценки значения оптимальной цены;

  • Цены - данные о ценах:

    • Cтарая цена - старая цена на позицию;

    • Новая цена - новая цена на позицию;

    • Изменение абс. - абсолютное изменение цены в деньгах;

    • Изменение % - изменение цены в процентах;

  • Цены конкурентов - отображает цены у каждого конкурента. Для просмотра актуальной даты для цены, которая отображается необходимо нажать на “+”.

...

  • Продажи в штуках - данные о продажах в штуках в зависимости от цены:

    • При старой цене - количество продаж в штуках при старой цене;

    • При новой цене - количество продаж в штуках при новой цене;

    • Изменение абс. - абсолютное изменение продаж в штуках;

    • Изменение % - процентное изменение продаж в штуках;

  • Продажи в деньгах - данные о продажах в деньгах в зависимости от цены:

    • При старой цене - количество продаж в деньгах при старой цене;

    • При новой цене - количество продаж в деньгах при новой цене;

    • Изменение абс. - абсолютное изменение продаж в деньгах;

    • Изменение % - процентное изменение продаж в деньгах;

  • Продажи в марже - данные о продажах в марже в зависимости от цены:

    • При старой цене - количество продаж в марже при старой цене;

    • При новой цене - количество продаж в марже при новой цене;

    • Изменение абс. - абсолютное изменение марже в штуках;

    • Изменение % - процентное изменение продаж в марже;

Добавление политики

Для добавления новой политики необходимо в выпадающем списке с политиками выбрать "Новая политика" и после нажать на кнопку “+”. После нажатия откроется окно добавления новой политики, которое состоит из следующих полей:

...

  • Название политики - названия для новой политики;

  • Уровень - выбор на каком уровне будет использоватся политика (вся сеть, регион, магазины);

  • Шаблон SKU - поле для выбора шаблона с набором SKU, для которых будет создана политика. Можно выбрать ранее созданный шаблон с выпадающего списка, или создать новый шаблон. Детально создания шаблона описано в разделе "Добавления шаблона SKU";

  • Пользователи - выбор пользователей в системе, которые могут редактировать политику и утверждать цены (помимо администраторов);

  • Макс. % уменьшения - максимально возможный процент уменьшения цены на товары (от текущей);

  • Конкуренты - список конкурентов, относительно которых будет действовать политика. Конкурент выбирается с выпадающего списка, для каждого конкурента устанавливается индекс изменения (система будет предлагать новую цену, которая равна цене конкурента умноженной на индекс) и приоритет (в случае если у конкурента с приоритетом 1 нет цены для конкретного SKU, то система будет искать цену у конкурента с приоритетом 2 и так дальше). Чтобы добавить выбранного конкурента в политику необходимо нажать на знак . Для удаления конкурента с политики необходимо нажать знак .

Для завершения процеcа создания политики необходимо нажать "Создать".

Добавления шаблона SKU

Для создания нового шаблона необходимо выбрать из выпадающего списка "Новый шаблон" и нажать кнопку “+”. После нажатия кнопки откроется окно создания нового шаблона, которое имеет следующие поля:

...

  • Название - название нового шаблона;

  • Группа - название группы. Если пользователь хочет пропустить выбор группы и иметь возможность выбирать со всех SKU в системе необходимо поставить галочку возле "Не ограничено группой" (в этом случае загрузка списка SKU для выбора будет происходить дольше);

  • Sku - список SKU, которые будут использоваться в политике. Если пользователь поставил галочку "Не ограничено группой", то процесс выбора SKU изменится:

...

У пользователя появится возможность выбрать все SKU в системе нажав на "Все" или же перейти к выбору отдельных SKU нажав на “_”.

  • Фильтр по названию - используется, если пользователь хочет вывести все SKU, в названии которых есть введенная в поле "Фильтр по названию" фраза или слово. При этом выбирать SKU в поле Sku не нужно.

Для завершения процесcа создания нового шаблона SKU необходимо нажать "Создать".

Редактирование шаблона SKU

Пользователь может редактировать уже ранее созданные шаблоны SKU. Для этого в процессе создания новой политики необходимо выбрать нужный шаблон и нажать на кнопку 🖌возле него. Нажатие кнопки откроет окно редактирования шаблона SKU:

...

Можно изменять те же поля, что и при создании шаблона. Для сохранения изменений необходимо нажать "Сохранить". Для удаления шаблона из системы необходимо нажать "Удалить".

Редактирование и удаление Политик

Пользователь может редактировать и удалять ранее созданные политики.

Для редактирования или удаления необходимо выбрать нужную политику с выпадающего списка поля "Выбор политики" и нажать кнопку 🖌 возле выбранной политики. После нажатия откроется окно редактирования политики:

...

Пользователь может изменять все поля, аналогично как при создании политики. Для сохранения изменений необходимо нажать "Сохранить". Для удаления политики необходимо нажать "Удалить".

Сценарии использования

Раздел находится на стадии разработки.

Пополнение

Обзор

Модуль MySales Пополнение поможет вам эффективно поддерживать объемы товарных запасов и предлагает следующий функционал:

  • Прогнозирование необходимых объемов заказов (на сегодня и будущих);

  • Автоматический расчет необходимого страхового запаса;

  • Формирования диаграмм поставок для задания графиков заказов;

  • Автоматический расчет календаря заказов и поставок;

  • Автоматическое формирование заказов на ежедневной основе;

  • Автоматическое или ручное подтверждение заказов;

  • Автоматическая или ручная отправка заказов поставщику;

  • Автоматическая оптимизация заказов по сумме и количеству;

  • Корректировка остатков и заказов;

  • Автоматический расчет заказов по пикингу, кросс-доку, и по точке перезаказа;

Модуль Пополнение формирует автозаказ на основе истории продаж, прогноза и складских остатков по SKU с учетом основных факторов влияния и ограничений (кратность, мин. заказ, презентационный запас и т.д.), индивидуально рассчитанных для вашего бизнеса. Автозаказ автоматически пересчитывается и корректируется на ежедневной основе.

Общая схема работы системы автозаказа:

...

Формулы расчета автозаказа

В системе заказ рассчитывается по следующей формуле. Она справедлива для товаров любого типа.

 Заказ = max( округлить( Прогноз D1D2 + Списания D1D2 + Страховой запас D1D2 + Презентационный запас - Остаток D1 ), Ограничение по сроку годности ),

 Прогноз D1D2 - прогноз продаж в период между первой и второй доставками. Если доставка происходит утром, то день второй доставки не учитывается, если доставка происходит вечером, то не учитывается день первой доставки;

где Списания D1D2 - прогноз списаний просроченного товара в период между первой и второй доставками. Если доставка происходит утром, то день второй доставки не учитывается, если доставка происходит вечером, то не учитывается день первой доставки;

 Страховой запас D1D2 - рекомендуемый недельный страховой запас умноженный на min( 1, сумма коэффициентов дней D1D2 ), D1D2 - дни между датами первой и второй доставками. Если доставка происходит утром, то день второй доставки не учитывается, если доставка происходит вечером, то не учитывается день первой доставки;

 Презентационный запас - минимально необходимый товарный запас;

 округлить - округление заказа до необходимой кратности упаковки;

 Ограничение по сроку годности - максимальное количество товара, которое можно заказать, чтобы успеть его продать до истечения срока годности. В случае, если товар заказывается упаковками, то минимальный % упаковки, который должен быть продан до истечения срока годности, определяется в параметрах;

 Остаток D1 - остаток на момент первой доставки;
 Остаток D1 = max( 0; Остаток O1Прогноз O1D1 - Списания O1D1 + Товар в пути O1D1 ),

где Остаток O1 - остаток на момент первого заказа;

 Прогноз O1D1 - прогноз продаж в период между первым заказом и первой доставкой. Если доставка происходит утром, то день первой доставки не учитывается, иначе учитывается;

 Списания O1D1 - прогноз списаний просроченного товара в период между первым заказом и первой доставкой. Если доставка происходит утром, то день первой доставки не учитывается, иначе учитывается;

 Товар в пути O1D1 - сумма товара, которые будут доставлены в период времени между первым заказом и первой доставкой.

Пример работы формулы расчета:

...

Зеленым цветом обозначены дни заказа, синим - доставки.

 O1 - дата первого заказа 28.07.2017;
 O2 - дата второго заказа 01.08.2017;
 D1 - дата первой доставки 30.07.2017;
 D2 - дата второй доставки 03.08.2017;

Допустим, доставка происходит утром, презентационный запас = 1, кратность упаковки = 1,
страховой запас = 2.

Остаток D1 = max( 0; 5 −(2+1) ) = 2 Прогноз D1D2 = 3+3+1+2=9 Страховой запас D1D2 =

...

 Заказ = Округлить( 9 + 1.5 + 1 − 2 ) = Округлить( 9.5 ) = 10.

Особенности формирования заказа на склад по схемам пикинга и кросс-дока:

  • Кросс-док - заказ на склад формируется как сумма заказов по всем магазинам с округлением по кратности. Если заказ меньше 70% от кратности, то округление происходит вниз, если больше - вверх.

  • Пикинг - заказ на склад формируется по формуле, приведенной выше, но на определенный горизонт вперед (2-5 недель) с учетом будущих прогнозов продаж. Будущий заказ склада будет равен сумме будущих заказов с магазинов на склад. А предыдущие заказы рассчитываются как товары в пути.

Формула расчета заказа ингредиентов (суб продуктов):

 Заказ Суб продукта = Проверить_срок_годности ( Округлить ( Прогноз D1D2 Мастер продукта * Кол-во + Страховой запас D1D2 Мастер продукта * Кол-во + Презентационный запас Мастер продукта * Кол-во + Остаток D1 Мастер продукта * Кол-во -

(Остаток D1 Cуб продукта - Прогноз D1D2 Cуб продукта - Страховой запас D1D2 Cуб продукта - Презентационный запас Cуб продукта) +
+ Прогноз D1D2 Cуб продукта + Страховой запас D1D2 Cуб продукта + Презентационный запас Cуб продукта - Остаток D1 Cуб продукта ) )

, где Кол-во - это количество суб продукта в спецификации на штуку мастер продукта;

, (Остаток D1 Cуб продукта - Прогноз D1D2 Cуб продукта - Страховой запас D1D2 Cуб продукта - Презентационный запас Cуб продукта) - конструкция необходима для учета в формуле заказа предположения, что остаток суб продукта может использоваться и в производстве, и в продаже суб продукта как отдельного товара и есть необходимость обеспечить эту продажу остатком. Если эта конструкция после вычисления дает значение меньше нуля, то она автоматически приравнивается к нулю.

С Excel файлом с примером расчета заказа прямой поставки и расчета СЗ можно ознакомится по ссылке.

Бизнес процессы работы с заказами

Ввод данных в систему

...

Что?

...

Кто?

...

Куда?

...

Когда?

...

Графики заказов:

  • для магазинов;

  • для складов (пикинг);

  • кросс-док (склад и магазины);

...

Администратор автозаказа

...

MySales - Диаграммы

...

  • При появлении новых поставщиков;

  • При появлении новых магазинов;

  • При закрытии магазинов;

  • При прекращении работы с поставщиками;

...

Каникулы поставщиков и доп. заказы

...

Администратор автозаказа

...

MySales - Календарь

...

При изменении графиков на период каникул/инвентаризаций и других событий

...

Кратность и мин. заказ

...

Администратор справочников

...

MySales – Параметры позиций

...

  • При появлении новых позиций;

  • При изменении условий работы с поставщиками;

...

Привязки к поставщикам и контрактам

...

Администратор справочников

...

...

При изменении контрактов с поставщиками, открытии новых магазинов

...

Ассортиментная матрица

...

Администратор справочников

...

...

При изменении ассортиментной матрицы

...

Производственные рецептуры

...

Администратор справочников

...

...

При изменении рецептур, появлении новых продуктов или ингредиентов

...

Аналоги для новых магазинов

...

Администратор автозаказа

...

MySales - Новые магазины

...

При открытии новых магазинов

...

Аналоги для новых позиций

...

Администратор автозаказа

...

MySales - Новые позиции

...

При вводе новых позиций в ассортимент сети

...

Коэффициенты страхового запаса

...

Аналитик товарных запасов

...

MySales - Регулировка страхового запаса

...

По результатам анализа товарных запасов (описано ниже)

...

Мастер-прогнозы на уровне SKU-вся сеть

...

Администратор промо, Аналитик товарных запасов

...

MySales - Мастер-прогнозы

...

В случае необходимости корректировки промо-прогноза на уровне SKU-вся сеть, либо корректировки прогноза по новинке

Ручная корректировка заказов

Выполняется Администратором автозаказа в следующих случаях:

  • Перенос планируемых дат доставки задерживающихся заказов, в случае поступления такой информации от поставщика;

  • Закрытие заказов, которые не будут привезены поставщиком и еще не попадают под правило автоматического закрытия;

  • Корректировка заказов, не прошедших по критерию ограничений поставщика (минимальный заказ по сумме/количеству);

  • Корректировка кросс-док заказов, где из-за того, что ограничения Х% (параметр) упаковки склада должно быть востребовано магазинами, системе не удалось оптимизировать количество заказов магазинов в силу математических ограничений;

  • Корректировка доставки в случае, если поставщик сообщил о замене позиции в заказе;

  • Ввод ручных заказов для обеспечения приемки товара в магазине в случае ошибки при вводе прихода;

  • Заказы по позициям, которые являются не товаром, а расходными материалами и не заказываются на основании прогноза.

Анализ отсутствия товаров на остатках

По каждой категории товаров должна быть установлена норма по уровню доступности, выражаемая в процентах. По тем категориям, где эта норма не выдержана, необходимо проводить анализ, как описано ниже.

Аналитик товарных запасов выполняет следующие действия по товарам, разрешенным в ассортиментной матрице:

  • Формирует отчет по отсутствующим товарам, где по каждому товару рассчитывается % магазинов, где товар вышел в 0 на конец дня;

  • По топовым товарам в списке, детализирует отчет на уровне магазинов;

  • Проводит анализ причин отсутствия товаров. Возможные причины:

    • Недопоставка – коммуникация с поставщиком, отключение галочки «Заказываемый» на временно не заказываемых товарах;

    • Списание товара – коммуникация с магазином;

    • Отсутствие кратности – заведение кратности в систему;

    • Отсутствие привязок – коммуникация с администратором справочников, создание привязок;

    • Недостаточный заказ – анализ продаж, остатков, созданных заказов и прогнозов.

  • По топовым позициям с причинами «недостаточный заказ», проводится анализ прогноза и достаточности страхового запаса, как описано в документации MySales.

Необходимость такого детального анализа по топовым позициям вызвана тем, что работая с исключениями, это позволяет обнаружить системные проблемы и исправить их не для единичных позиций, а для всех.

Анализ излишков товарных запасов

По каждой группе товаров должна быть установлена норма по оборачиваемости в днях. По тем категориям, где эта норма не выдержана, аналитик товарных запасов ежедневно формирует отчет об оборачиваемости товарных запасов, а также о товарах, не подлежащих заказу следующие 30 дней.

По топовым товарам, которые не соответствуют норме по оборачиваемости в днях, проводится детальный анализ причин.

Типы заказов

В системе автозаказа предусмотрено три типа поставок:

  • Прямая поставка - заказ производится напрямую с магазина на поставщика и доставка происходит напрямую от поставщика в магазин;

  • Пикинг - магазин заказывает с РЦ, а не напрямую от поставщика. А РЦ в свою очередь заказывает уже у поставщика. Заказы с магазина на РЦ и с РЦ на поставщика не связаны между собой. Также предусмотрена разновидность пикинга - Pick to zero.

  • Кросс-док - магазин заказывает с РЦ, а не напрямую от поставщика. А РЦ в свою очередь заказывает уже у поставщика. Но, в отличии от пикинга, заказ магазина на РЦ и РЦ на поставщика связаны. Так как при кросс-доке поставщик привозит весь необходимый товар на РЦ, а РЦ сразу распределяет его на магазины (без хранения в РЦ).

Для того, чтобы заказы можно было сформировать, сначала необходимо завести диаграммы заказов. Более детальная информация о заведении диаграмм для каждого типа поставок описана ниже.

В общем процесс формирования заказа выглядит следующим образом:

...

Необходимые данные

Этот раздел описывает, какие данные система использует для формирования заказа, и какие из них являются обязательными.

Для формирования заказа системе необходим некоторый обязательный набор данных.

Данные, получаемые со стороны заказчика:

...

Данные

...

Обязательно

...

Список артикулов

...

Да

...

Список магазинов

...

Да

...

Список поставщиков

...

Да

...

Договора:

  • Подвязка товара к магазину

  • Подвязка товара к поставщику

  • Кратность и минимальный заказ

...

Да

...

Закупочная цена (в случае необходимости оптимизации по сумме)

...

Нет

...

Последние остатки на магазинах и складе

...

Да

...

Приходы (для формирования товаров в пути)

...

Да

...

Ассортиментная матрица

...

Да

...

Коэффициенты продаж по дням

...

Да

Данные, получаемые от системы MySales:

...

Данные

...

Обязательно

...

Прогнозы продаж

...

Да

...

Страховой запас

...

Да

...

Диаграммы поставок

...

Да

...

Товары в пути

...

Да

...

Прогнозы будущих заказов

...

Да

Если часть этих данных будет отсутствовать либо же они будут некорректны, то система либо не сформирует заказ, либо же заказ будет некорректным.

Прямая поставка

Для прямой поставки товары, график поставок, кратность и минимальный заказ с каждого магазина прописаны четко под поставщика

Схема прямой поставки:

...

Кросс-док

Для кросс-док поставки, товары, график поставок, кратность и минимальный заказ с каждого магазина прописаны четко под поставщика. С РЦ формируется суммирующий заказ со всех магазинов с учетом кратности и минимального заказа РЦ.

Схема кросс-док поставки:

...

Пикинг

Для пикинг поставки товары, график поставок, кратность и минимальный заказ с каждого магазина прописаны четко под РЦ. А с РЦ на поставщика формируются отдельные заказы.

Схема пикинг поставки:

...

Pick to zero

Pick to zero - это разновидность пикинг поставки, при которой магазины забирают весь сток склада. Ключевое отличие в том, что при пикинге склад отгружает на каждый магазин его конкретный заказ. В случае с Pick to zero после формирования заказов магазинов проверяется остаток склада. Если остаток склада больше чем заказы магазинов, то он добавляется к заказу магазинов.

Остаточный остаток склада распределяется по магазинам относительно заказов, которые были изначально - чем больше заказ - тем больше остаточного товара склада дополнительно попадет в заказ магазина. Также на эту схему накладывается ограничение кратности - из за кратности может быть так, что это распределение будет скорректировано.

Работа с диаграммами

Создание диаграмм

Создания диаграмм является первым этапом в работе с автозаказом. Для создания новой диаграммы пользователю необходимо перейти в раздел "Диаграммы" и нажать на кнопку "Добавить новую диаграмму". После нажатия откроется окно добавления диаграммы. Рассмотрим пример добавления диаграммы, стандартно окно добавления выглядит следующим образом:

...

При добавлении диаграммы пользователь заполняет следующие поля:

  • Название - название диаграммы по желанию пользователя;

  • Склад-источник - выбор склада в случае кросс-док и пикинг поставок;

  • Поставщик - выбор поставщика;

  • Договор - выбор договора поставки с поставщиком;

  • Получатели - выбор магазинов, в которые производится поставка (в случае заведения диаграмм от поставщика на РЦ - выбирается РЦ)

  • SKU - выбор товарных позиций, которые необходимо поставить;

  • Тип - выбор типа задания интервалов поставок (в случае поставок утром - необходимо поставить галочку возле "Утро"):

    • Неделя - добавление графика в недельном формате - удобно, если заказ повторяется в фиксированные дни недели, например каждый вторник и четверг;

    • Месяц - добавление графика заказов для специфических дней месяца, если например заказ повторяется 3 и 17 числа каждого месяца;

  • Интервал - выбор интервала повторения графика заказов. Если значение 1, то график будет повторятся каждую неделю, либо месяц, если 2 - каждые две недели и тд;

  • График заказов и поставок - выбор дней, в которые происходит заказ. В ячейку дня пользователь вводит значение в днях между заказом и поставкой;

  • +D1 прогноз - дополнительный прогноз. К обычному прогнозу D1 добавляется коэффициент поля +D1 умножен на прогноз следующего дня;

  • +D1D2 прогноз - дополнительный прогноз. К обычному прогнозу D1D2 добавляется коэффициент поля +D1D2 умножен на прогноз следующего дня;

  • Требует подтверждения - указание, нужно ли подтверждать заказ вручную, или он будет отправлен автоматически;

  • Авто подтверждение заказов в - если выбрано подтверждения заказа вручную, в этом поле можно указать время, когда заказ автоматически подтвердится (необязательно);

  • Промо отдельно - если поставить галочку, то в случае, когда в заказе по этой диаграмме есть позиции, где промо попадает на период Д1Д2 - промо позиции будут выделены в отдельный заказ. И по одному календарю будет два заказа - один без промо позиций, а другой только с промо позициями.

  • Промо требует подтверждения - указание, нужно ли подтверждать выделенный заказ с промо позициями вручную. Если в этой же диаграмме не проставлена галка "Требует подтверждения", не проставлена галка "Промо отдельно", но проставлена галка "Промо требует подтверждения", тогда заказ не будет автоматически подтвержден;

  • Мин. кол-во для заказа - минимальное количество в единицах, которое можно заказать;

  • Мин. сумма для заказа - минимальная сумма заказа в деньгах;

  • Email - список email, на которые будут отправлены заказы (обычно email менеджеров поставщиков);

  • Разрешения на редактирование - выбор, какие поля можно будет редактировать в заказе;

  • Действительна с - выбор даты начала действия диаграммы;

  • Действительна по - выбор даты окончания действия диаграммы (необязательно);

После заполнения всех полей и нажатия кнопки Добавить система автоматически создает отдельные диаграммы для всех магазинов (в случае кросс-дока еще создается диаграмма заказов с РЦ на поставщика).

Специфика заведения диаграммы для прямой поставки:

В случае с прямой поставкой пользователь сразу выбирает поставщика, оставляя поле "Склад-источник" не выбранным.

...

Специфика заведения диаграммы для кросс-док поставки:

В случае с кросс-док поставкой пользователь сначала выбирает "Склад источник", потом выбирает формат Кросс-док, и только после этого выбирает поставщиков. Также в случае с кросс-док диаграммой пользователю необходимо указать график поставок и для магазинов, и для РЦ. Пользователю не нужно заводить отдельно диаграмму с РЦ на поставщика, система делает это автоматически.

...

Специфика заведения диаграммы для пикинг поставки:

В случае с пикинг поставкой пользователь также сначала выбирает "Склад-источник", потом выбирает формат пикинг, и только после этого выбирает поставщиков. Также в случае с пикинг поставкой пользователю необходимо создать диаграммы поставки на РЦ от поставщиков. Это делается аналогично созданию диаграммы прямой поставки, только получателем выбирается РЦ.

...

+Д1/+Д1Д2 Коэффициенты

Коэффициенты +Д1 прогноз и +Д1Д2 прогноз используются для увеличения заказа магазинов.

Так, коэффициент +Д1 добавляет к прогнозу Д1 прогноз следующего дня, умноженный на коэффициент +Д1, а +Д1Д2 к прогнозу Д1Д2 - прогноз следующего дня, умноженный на коэффициент +Д1Д2. Коэффициенты могут быть дробны, например коэффициент 0.5 добавит только полдня, а не целый к заказу.

Коэффициент +Д1Д2 используется в первую очередь для увеличения страхового запаса склада. В поле с этим коэффициентом пользователь может указать, на сколько дней необходимо увеличить страховой запас склада.

Коэффициент +Д1 используется для увеличения заказа круглосуточных магазинов, в случае, если необходимо добавить еще ночные продажи. Также его можно использовать, если например товар должен приехать утром, но поставщик задерживает доставку (например товар должен приехать в 9 утра, но приезжает в 11 - соответственно эти два часа продаж нужно учесть в заказе).

Параметр "Утро"

В диаграмме пользователь должен указывать, приезжает ли товар утром. Это делается с помощью галочки "Утро". В зависимости от того, приедет заказ утром или нет, изменяется непосредственно расчет заказа.

В случае если стоит галочка утро:

В прогнозе Д1 день доставки Д1 не учитывается, так как товар приедет утром дня Д1. А в прогнозе Д1Д2 учитывается Д1 и не учитывается Д2.

В случае если не стоит галочка утро:

В прогнозе Д1 день доставки Д1 учитывается, так как товар приедет только вечером дня Д1, и необходимо учесть в заказе продажи дня Д1. А в случае с прогнозом Д1Д2 день Д1 не учитывается, а день Д2 учитывается.

Также система независимо от галочки утро учитывает в расчетах день заказа.

Редактирование диаграмм

У пользователя есть возможность редактировать некоторые поля диаграмм. Редактировать возможно двумя путями:

  • С использованием меню (для открытия меню в строке с диаграммой нужно нажать ). После выбора "Редактировать диаграмму" откроется окно аналогичное окну создания диаграммы. Пользователь сможет редактировать активные поля;

  • Напрямую из таблицы с диаграммами - для этого необходимо проскролить вправо до появления редактируемиых полей. После введение необходимых значений необходимо кликнуть в любом месте на страничке для их сохранения.

...

В случае с кросс-док диаграммами, если пользователю необходимо добавить магазин к кросс-доку, то ему необходимо в строке с нужной диаграммой нажать  и выбрать "Добавить магазин".

Пересчет календаря

Если возникла необходимость пересчитать календари заказов и поставок (изменились диаграммы) пользователь может сделать это вручную нажав на кнопку  и выбрав "Пересчитать календарь".

...

Также календари автоматически пересчитываются при автоматическом расчете заказов каждый день (либо при запуске батча "Пересчет заказов").

Импорт/Экспорт диаграмм

Пользователю для удобной работы с диаграммами предоставляется возможность экспорта и импорта диаграмм.

Для того, чтобы экспортировать диаграммы в файл необходимо нажать на кнопку .

...

В случае с импортом диаграмм пользователю необходимо подготовить специальный файл в csv формате. Поля в файле аналогичны тем, которые заполняются при добавлении диаграммы с интерфейса. С шаблоном файла импорта диаграмм можно ознакомится по ссылке.

Детальное описание всех полей файла импорта диаграмм:

  • NAME - название диаграммы;

  • WHS_ID - номер склада в MySales (заполняется только для пикинг и кросс-док диаграмм);

  • WAREHOUSE_TYPE - тип склада - значение "с" для кросс-док и "p" для пикинга;

  • SUPPLIER_ID - номер поставщика в MySales;

  • SPECIFICATION_ID - номер контракта в MySales;

  • RECEIVERS - получатели - список номеров магазинов через запятую (или склада) на которые будет поставка (оставляем пустым, если значение ALL_STORES равно 1);

  • ALL_STORES - значение "1", если поставка на все магазины и "0", в другом случае;

  • SKUS - список номеров товарных позиций через запятую, которые поставляются (оставляем пустым, если значение ALL_SKUS равно 1);

  • ALL_SKUS - значение "1", если поставляются все товарные позиции по контракту и "0", в другом случае;

  • TYPE - тип графика поставок (заводится график на еженедельной основе или же на целый месяц) - значения поля "W" для недели и "M" для месяца;

  • MORNING - идентификатор поставки с утра - "1", если поставка происходит утром и "0" в других случаях;

  • INTERVAL - интервал повторения графика поставки (1 - каждую неделю/месяц, 2 - каждые две недели/месяца и тд.);

  • RPM_DAYS - дни, в которые будет происходить заказ через запятую. От 1 до 7 для еженедельного формата (где 1 - понедельник, 7 - воскресенье) и от 1 до 30 для ежемесячного;

  • DELIVERY_DAYS - количество дней от заказа на магазин до поставки. Проставляются через запятую для каждого дня заказа из поля RPM_DAYS;

  • DELIVERY_DAYS_WHS - количество дней от заказа на склад до поставки. Проставляется только для заказа типа кросс-док;

  • PLUS_D1_FCST - +D1 коэффициент;

  • PLUS_D1D2FCST - +D1D2 коэффициент;

  • REQUIRES_CONFIRM - признак необходимости ручного подтверждения заказа магазинов - "1" необходимо подтверждать, "0" - заказ автоматически подтверждается;

  • AUTOCONFIRM - время автоматического подтверждения заказа - только для заказов с необходимостью ручного подтверждения - автоматически подтверждает заказ в определенное время (поле необязательное);

  • WHS_REQUIRES_CONFIRM - признак необходимости ручного подтверждения заказа склада (только для кросс-док) - "1" необходимо подтверждать, "0" - заказ автоматически подтверждается;

  • SEPARATE_PROMO -

  • PROMO_REQUIRES_CONFIRMATION -

  • MIN_ORDER_QTY_STORE - минимальный заказ магазина в штуках;

  • MIN_ORDER_AMOUNT_STORE - минимальная сумма заказа магазина в деньгах;

  • MIN_ORDER_QTY_WHS - минимальный заказ склада в штуках (только для кросс-док);

  • MIN_ORDER_AMOUNT_WHS - минимальная сумма заказа склада в деньгах (только для кросс-док);

  • SUPPLIER_EMAIL - электронная почта менеджера поставщика;

  • ALLOW_EDIT_ORDER - признак разрешения редактирования количества заказа в будущем - значение "1" разрешает редактирование, "0" запрещает редактирование;

  • ALLOW_EDIT_STOCK - признак разрешения редактирования товарного запаса в будущем - значение "1" разрешает редактирование, "0" запрещает редактирование;

  • START_DATE - дата начала действия диаграммы (в формате ГГГГ-ММ-ДД);

  • END_DATE - дата окончания действия диаграммы (в формате ГГГГ-ММ-ДД) - необязательное поле, оставлять пустым, если дата окончания открытая.

Работа с календарями

Ручное событие

У пользователя есть возможность заводить ручные события в календаре. Эти события отдельны от тех, которые рассчитывает система на базе диаграмм и происходит только один раз.

Для добавления ручного события необходимо нажать на "Добавить события" на странице "Календарь". После нажатия откроется окно добавления нового события:

...

Ручное событие является единичным, с установленными датами заказа и доставки. Оно не может повторяться. Заказ и доставка происходят только один раз.

Импорт ручных событий

Пользователю предоставляется возможность загрузки товаров для ручных событий с файла Excel.

Для того, чтобы загрузить товары для ручного события из файла необходимо перейти в форму добавления нового события, выбрать тип "Ручное", ввести все необходимые данные и нажать кнопку "Добавить". После нажатия откроется окно выбора товаров:

...

В этом окне необходимо нажать кнопку 💾

В файле импорта должны присутствовать два поля:

  • SKU_ID - номер SKU в системе MySales;

  • ORDER_VOLUME - необходимое количество товара к заказу.

С шаблоном файла импорта товаров для ручного события можно ознакомится по ссылке.

Подтверждение/Отмена события

Любое событие можно либо подтвердить либо отменить. Если событие автоматически подтверждается (настройка при заведении диаграммы), либо же было уже подтверждено, то пользователь может его отменить. Аналогично пользователь может подтвердить событие, которое требует подтверждения.

Для Подтверждения/Отмены событий необходимо либо поставить либо убрать галочку в строке с событием:

...

Массовая отмена событий

События можно отменять массово на определенную дату. Например все поставки на склад во вторник отменены. Пользователь может выбрать нужные для отмены события, либо же отменить все события на выбранную дату.

Для выбора нужных событий пользователь должен поставить галочку ☐ . в строке с нужным событием. Столбец с галочками находится за столбцом "Действия" справа в конце.

После того как нужные события выбраны необходимо нажать 💬, ад таблицей и выбрать "Отменить событие".

Пересчет заказов

У пользователя есть возможность в случае необходимости пересчитать заказы по выбранному событию (пересчитываются заказы для соответствующей диаграммы). Для запуска пересчета необходимо нажать на  в строке с событием.

...

Такая необходимость может возникнуть, если было добавлено ручное событие, либо же произведена ручная корректировка заказа для кросс-док диаграмм. Например если изменили заказ с магазина на РЦ, то необходимо запустить пересчет, чтобы система пересчитала заказ с РЦ на поставщика и это необходимо сделать только для одного события (если событий много, то проще запустить батч и пересчитать все заказы).

Работа с заказами

На странице с Заказами пользователь может производить следующие действия относительно созданных заказов:

  • Просмотреть детали заказа

  • Подтвердить приходы

  • Отметить задерживающиеся заказы

  • Выгрузить в Excel

  • Отменить подтверждение

  • Отправить email поставщику

Отмена подтверждения

Если заказ был ошибочно подтвержден, его можно отменить. Для этого необходимо в строке с нужным заказом нажать на кнопку 💬 и выбрать из меню "Отменить подтверждение".

Нужно понимать, что отменить заказ можно и после его отправки поставщику. Но в этом случае поставщик не узнает об отмене заказа, вам система просто предоставит возможность изменить и отправить заказ повторно. Для полной отмены заказа с поставщиком необходимо контактировать дополнительно.

Заполнение приходов

В системе автозаказа предусмотрено специальное окно для заполнения приходов. Обычно приходы в системе автозаказа заполняются в автоматическом режиме, синхронизируясь с системой учета клиента, куда заполняют приходы в момент получения товара на магазине. Но часто возникают случаи, когда приход необходимо заполнить вручную (например если заказ задержался).

Окно заполнения приходов выглядит следующим образом:

...

У пользователя есть возможность заполнить приходы следующими значениями:

  • Нулями - в случае, если товар не пришел. Обязательно делать для задерживающихся заказов;

  • Заказанным количество - если товар пришел в полном объеме;

  • Конкретными значениями для каждой позиции - в случае, если по некоторых позициях есть недопоставка или привезли количество отличающееся от заказного.

Задерживающиеся заказы

В системе обязательно необходимо указывать заказы, которые задерживаются. Так как это необходимо для правильного расчета товара в пути и последующих заказов. Например если заказ каждый день и в понедельник должны были привезти 10 единиц товара, а не привезли ничего и задержали до вторника, то если системе не указать, что заказ задержали, то во вторник приедет на 10 единиц больше чем нужно.

Для внесения задерживающегося заказа необходимо заполнить приход по нему нулями. А также в поле "Задержан до" в таблице с заказами указать дату до которой заказ задержан, если информация о такой дате имеется.

...

Ручная корректировка заказа

У пользователя есть возможность изменить значения заказа и значения остатка. Необходимость ручной корректировки заказа может возникнуть в разных случаях, например если эксперт увидит, что система рассчитала слишком большой заказ, так как не знала об особых внешних факторах, либо же например появился дополнительный спрос и возникла необходимость увеличить заказ. Редактировать поля заказа можно только в режиме просмотра "Строки" и только для отдельных позиций. Нельзя отредактировать общий заказ по всем магазинам.

При добавлении ручного заказа нужно понимать, что он должен быть больше минимального заказа и быть кратным кратности. В случае несоблюдения этих правил заказ будет невозможно подтвердить, а система выдаст ошибку и попросит перепроверить.

В случае с кросс-док заказами при изменении количества заказа с магазина на РЦ необходимо еще дополнительно изменить заказ с РЦ на внешнего поставщика. Это можно сделать двумя способами:

  • После изменения всех необходимых заказов с магазина на РЦ запустить пересчет заказов по этой диаграмме. В этом случае система сама пересчитает заказ с РЦ на поставщика с учетом всех ограничений.

  • Вручную изменить заказ с РЦ на внешнего поставщика с учетом кратностей и минимального заказа.

Если этого не сделать, система не позволит отправить заказ и выдаст ошибку о несовпадении заказа с магазинов на РЦ и с РЦ на внешнего поставщика.

Также нужно понимать, что если при кратности 10 вручную добавить 2 штучки к заказу, это ничего не изменит, так как не будет соблюдена кратность.

Загрузка ручной корректировки с файла

Загрузка ручных корректировок из файла используется для массового заведения корректировок. Для этого необходимо подготовить csv файл с корректировками. Файл должен содержать следующие поля:

  • ID - номер заказа, который необходимо скорректировать; SKU_ID - номер SKU, которое необходимо скорректировать; CUSTOM_ORDER_VOLUME - скорректированное количество к заказу;

...

Для загрузки с файла необходимо перейти в меню "Пополнение" - "Заказы" - "Строки", нажать на ) и выбрать "Загрузить корректировки заказов".

Просмотр деталей заказа

...

Автоматически при открытии окна "Заказы" все заказы отображаются заголовками относительно диаграмм, без детальной разбивки по позициям. При таком отображении пользователь может увидеть только основную информацию о заказе, но например не может увидеть объем заказа для каждой позиции. Для открытия режима детального просмотра заказов с разбивкой по позициям и информацией о данных, на основании которых рассчитан заказ, можно либо дважды кликнуть по строке с заказом, либо выбрать формат отображения заказов "Строки", либо же, нажав на кнопку  , выбрать "Смотреть строки заказа".

Выгрузка в Excel

Системой предусмотрено возможность выгрузки всех заказов в Excel. Для этого необходимо либо используя меню (нажав на ) выбрать "Выгрузить в Excel", либо же нажать на кнопку .

...

Важно, чтобы в браузере было разрешено открывать всплывающие окна, так как файл для загрузки открывается в всплывающем окне. Если они заблокированы, то пользователь не сможет скачать созданный файл.

Проверка почты

При отправке заказов система отправляет на почту менеджеров письма с информацией о заказе. Иногда случается так, что письма не доходят, либо происходит другой сбой в работе сервиса отправки почты. Поэтому реализован функционал проверки отправки писем.

Для начала проверки почты необходимо нажать на кнопку . Система начнет проверку отправленной почты. Если система обнаружит сбой, то она выделит заказ, для которого произошел сбой красным цветом. Пользователь сможет посмотреть ошибку при наведении на поле "email".

...

В случае ошибки пользователь может либо попытаться отправить письмо еще раз, выбрав "Послать email поставщику" в меню работы с заказом (меню вызывается кнопкой ), либо же обратиться в поддержку MySales.

Виды оптимизации заказов

В таблице с заголовками заказов присутствует колонка "Оптимизация", в которой отображается тип оптимизации, который был применен к заказу (при наведении на тип оптимизации появится окно с описанием этого типа).

В системе предусмотрено четыре типа оптимизации:

  • Оптимизация заказа по сумме (если установлена минимальная сумма заказа для диаграммы). Срабатывает если сумма заказа меньше заданной, в этом случае заказ не будет отправлен и система поставит в колонке "Оптимизация" значение "a";

    Оптимизация заказа по количеству (если установлено минимальное количество заказа для диаграммы). Срабатывает если количество заказа меньше заданного, в этом случае заказ не будет отправлен и система поставит в колонке "Оптимизация" значение "q";

  • Кросс-док оптимизация. Срабатывает если система не может уравнять заказы магазина и склада при кросс-док поставках, в этом случае заказ не будет отправлен и система поставит в колонке "Оптимизация" значение "c". Эта ситуация может возникнуть в двух случаях:

    • Количество заказа было изменено вручную для заказов магазинов и потом не изменено для заказа склада;

    • Уравнять заказы невозможно из-за кратности;

  • Незаказываемая позиция. Срабатывает если в заказе есть позиция, которую невозможно заказать (если отрицательная или нулевая кратность, либо же позиция запрещена), в этом случае заказ не будет отправлен и система поставит в колонке "Оптимизация" значение "n".

Общая схема округления малых заказов

Система автоматически округляет заказ, который меньше 10 процентов от упаковки, либо к нулю либо к кратности упаковки в соответствии со следующими правилами:

  • Заказ округляется вверх (к кратности упаковки), если Остаток < Презентации или Остаток < 2 * (Прогноз + СЗ)

  • Заказ округляется вниз (к нулю), если Остаток > Презентации или Остаток > 2 * (Прогноз + СЗ)

Информация об ингредиенте

В случае если товар заказывается и как ингредиент и как отдельный товар, то в системе на странице "Заказы" информация об Остатках, Прогнозе Д1, Остатку Д1, Прогнозе Д1Д2, Страховом запас и Витрине отображается как для товара, который продается отдельно, так и для этого товара в составе готового продукта (товар является ингредиентом).

В системе для этих позиций отображаются две цифры через плюс - первая цифра - это данные о товаре как отдельном продукте, а вторая - данные о товаре как ингредиенте. Например, Остаток отображается как 23 + 7 - это обозначает, что на остатке есть 23 единицы товара для продажи, а также 7 единиц товара как ингредиента в готовом продукте.

Проверка возможности заказа

В MySales есть функционал проверки возможности заказа. Функционал доступен с форм "Диаграммы", "Заказы" и "Параметры позиций". Для открытия окна проверки возможности заказа необходимо нажать на кнопку 💬 и выбрать "Проверить возможность заказа".После нажатия откроется окно для проверки:

...

В поле "Получатель" в выпадающем списке выбирается магазин, который должен заказать товар.

В поле SKU необходимо либо ввести список SKU через запятую, возможность которых необходимо проверить, либо же нажать 💬 и выбрать SKU со списка.

После выбора товаров необходимо нажать кнопку "Проверить". После нажатия отобразится таблица с выбранными товарами и поля, которые обозначают наличие необходимых данных для заказа:

...

  • SKU - название SKU

  • AM - отображает наличие товара в ассортименте магазина;

  • Договор - номер договора;

  • Упаковка - кратность упаковки;

  • Заказ - отображает разрешен ли товар к заказу;

  • Диаграмма - номер диаграммы поставки для товара;

  • Ближайший заказ - дата ближайшего заказа, относительно заведенной диаграммы.

Заказ возможен только для товаров, у которых во всех полях есть данные. Такие товары подсвечиваются зеленым.

Если товар не подсвечивается зеленым, но он должен теоретически быть заказан - пользователь должен добавить все недостающие для заказа данные.

Ограничение заказов по сроку годности

Все заказы в системе рассчитаны с учетом ограничения по сроку годности.

Ограничение по сроку годности рассчитывается так, чтобы система не заказала товара больше, чем магазин сможет продать до момента истечения срока годности товара.
Например, если магазин продает 1 штуку в день, а срок годности 5 дней, то 5 - 1 (убираем один день - параметр по умолчанию) = 4 * 0.8 (коэффициент ограничения - проставляется в настройках) = 3.2 - максимальное количество, которое может быть заказано.

Если заказ будет утром, тогда день доставки учитывается первым днем срока годности.

Входные данные:

  • Количество дней между Д1 и Д2 - 3

  • Срок годности (в днях) - 4

  • Остаток - 4

  • Презентация (витрина) - 5

  • Кратность - 3

  • Минимальный заказ - 10

  • Прогноз Д1Д2 - 3

  • Страховой запас Д1Д2 (СЗ) - 4

  • Заказ сгенерирован системой - 15

...

Алгоритм расчета ограничения по сроку годности:

Рассчитываем суммарную потребность в товаре на срок годности - оно и будет ограничением по сроку годности:

Прогноз вт + Прогноз ср + Прогноз чт + Прогноз пт = (0.8 (вт) + 1.2 (ср) + 1 (чт) + 0.95 (пт) = 3.95

С примером расчета Ограничения по сроку годности можно ознакомится у файле по ссылке.

Заказ с учетом Ограничения по сроку годности может быть рассчитан в 2 вариантах ограничений:

  • Стандартный - когда считается максимальное количество упаковок, которое можно заказать. Округление до упаковки происходит с учетом параметра (округляем вверх, если набралось Х% упаковки). Это количество пользователь видит в поле "Лимит срока" в заказах. Если же заказ больше Лимита срока - он обрезается.

  • С учетом Остатка Д1 - в этом случае считается максимальное количество без округления до упаковки, которое можно заказать с учетом срока годности. А потом учитываются Остаток Д1 и Списания. Формула расчета приведена ниже.

ЕСЛИ:
(ЗАКАЗ + Остаток Д1 - МИН(Остаток Д1, Списания Д1Д2 (или 0)) БОЛЬШЕ Ограничение по сроку годности
ТОГДА:
ЗАКАЗ = ОКРУГЛИТЬ(МАКС(0, Ограничение по сроку годности, - Остаток Д1 + МИН(Остаток Д1, Списания Д1Д2 (или 0))))

Пример расчета округления к кратности:

  • Рассчитываем остаток от деления ограничения по сроку годности на кратность:

  • MOD(Ограничение по сроку годности / Кратность) = MOD(3.95;5) / 5 = 3.95

  • Если полученное значение (3.95) больше чем 60% от кратности (параметр), тогда округляем значение ограничения по сроку годности вверх, иначе вниз:

  • (3.95 / 5) * 100% = 79% > 60% (3.95 / 5 = 0.79 > 0.6),

    - поэтому округляем значение 3.95 (ограничение по сроку пригодности) вверх к кратности

    Округление к кратности = (Ограничение по сроку годности + (Кратность - MOD(Ограничение по сроку годности / Кратность)) = (3.95 + (5 - MOD(3.95;5)) = 5.

  • Если после округления к кратности ограничение по сроку годности не равно нулю и больше мин. заказа, тогда новый заказ с учетом ограничения по сроку годности будет равен округлению к кратности (5).

  • Если после округления к кратности ограничение по сроку годности равно нулю - новый заказ с учетом ограничения по сроку годности будет равен нулю

    Если после округления к кратности ограничение по сроку годности не равно нулю и меньше чем мин. заказ - необходимо рассчитать остаток от деления округленного к кратности ограничения по сроку годности на минимальный заказ:

    MOD(Округленное к кратности ограничение по сроку годности / Мин. заказ) = MOD(5;10) = 5

  • Делим полученный остаток от деления на мин. заказ на мин. заказ: 5 / 10 = 0.5.

  • Если полученное значение (5) больше чем 60% мин. заказа, тогда округляем значение ограничения по сроку годности вверх к мин. заказ, иначе вниз:

  • Округление к мин. заказу: (5 / 10) * 100% = 50% < 60% (5 / 10 = 0.5 < 0.6), поэтому округляем значение 5 (ограничение по сроку годности) вниз до нуля.

  • Новый заказ с учетом ограничения по сроку годности будет равным округлению к мин. заказу (0)

Примеры расчета ограничения по сроку годности (без учета Остатка Д1):

...

Ограничение заказов по остатку склада для пикинга и pick to zero

Для пикинг поставок, в случае когда суммарный заказ магазинов больше, чем остаток склада, система автоматически будет уменьшать заказы магазинов, пока их сумма не станет равна остатку склада.

Алгоритм итерационно понижает заказы магазинов на кратность. Понижение производится пропорционально сумме остатка магазина и заказа и обратно пропорционально прогнозу Д1Д2.

Также система учитывает новый магазин, или нет. Если магазин новый - система по нему будет срезать заказ в последнюю очередь.

Повышение Pick To Zero заказов

Для типа поставки pick to zero в случае, когда заказ магазинов меньше чем остаток на складе срабатывает логика повышения заказов магазинов, чтобы забрать остаток склада - Сборка в Ноль.

Повышение заказов регулируется параметром. Этот параметр указывает на сколько % максимально можно повысить заказ магазина. Так если параметр 50%, заказа магазина 100 штук, а на складе 130, то заказ будет повышен до 130, так как 30 штук - это меньше чем 50% исходного заказа магазина (100 штук). Но если же на складе будет 200 штук, то система не подымет заказ магазина выше 150 штук (100 штук исходный + 50%).

Заказы pick to zero повышаются по алгоритму, который основывается на прогнозе Д1Д2.

Алгоритм итерационно повышает заказы на кратность пропорционально наибольшему из двух - прогнозу Д1Д2 или Потребности. Это позволяет на каждой итерации равномерно раздавать остаток склада, и ведет к тому, что все магазины (в случае достаточного остатка) получат заказ. Магазины с заказом 0 также получают часть остатка склада.

Расчет прогнозного остатка склада

При заказах пикинга от поставщика на склад система рассчитывает прогнозный остаток склада, чтобы учитывать, что товары по заказам пикинга с РЦ на магазин не приедут при ситуации на складе, когда аут оф сток, либо же он наступит в ближайшие дни.

Пример ситуации приведен ниже:

  • На складе либо уже аут оф сток, либо он наступит через несколько дней;

  • Из за этого остатки на магазинах будут быстро уменьшатся, так как склад не сможет обеспечить заказную потребность магазинов;

  • Так как остатки магазинов уменьшаются - их последующие заказы будут увеличиваться - и это необходимо учитывать при следующем заказе на склад.

Таким образом, система при расчете заказа склада берет во внимание, что заказы магазинов до ближайшей доставки на склад не будут выполнены, и автоматически корректирует заказ склада.

С примером расчетов можно ознакомится по ссылке

Дополнительные циклы доставки

Функционал дополнительных циклов доставки предназначен для добавления к заказу дополнительного прогноза и страхового запаса по заданному количеству циклов доставок. Добавление возможно на 1 - 3 цикла и только к ненулевым заказам. Этот параметр устанавливается в форме "Параметры позиций". Если посчитанный заказ больше нуля и при этом в параметрах позиции установлено "Доп. циклы" = 1, то система делает заказ таким образом, чтобы его хватило на 2 цикла поставок. В форме заказов поле "Доп. цикл" отображает дополнительное кол-во заказанное для пропуска следующего цикла.

Технически система при пересчете заказов добавляет в формулу заказа прогноз Д1Д2 по дополнительному циклу и страховой запас по дополнительному циклу. Так при параметре 1 добавляется прогноз и сз на период следующего цикла поставки, при параметре 2 добавляется на период следующих двух и тд.

Параметр "Доп. циклы" = 1 стоит ставить на недорогих позициях, поставляемых со склада, чтобы пропускать 1 цикл поставок, снижая затраты на сборку. Можно также пропускать 2 или 3 цикла, если параметр установлен соответствующим образом.

Параметры позиций

Для расчета заказа очень важны такие ограничения, как кратность заказа и минимальный заказ. Они напрямую влияют на объем, которые системе разрешено заказывать. Так, нельзя заказать количество меньше минимального заказа и также количество, которое не кратно кратности заказа.

Для системы автозаказа MySales эти данные могут как получаться автоматически из базы клиента, так и быть заведены в систему с помощью функционала "Параметры позиций".

Данные о кратности и минимальном заказе заводятся для каждой позиции в каждом магазине. Это можно сделать как вручную с помощью интерфейса "Параметры позиций", так и импортировать эти данные из файла. Если нужно загрузить большое количество данных, есть смысл использовать импорт из файла, а если же изменить только несколько позиций, то быстрее будет использовать интерфейс. Для импорта данных из файла необходимо нажать кнопку ⏏︎.

Файл с данными для импорта должен иметь формат csv или txt с разделителем ";" (точка с запятой), а также иметь следующие колонки:

  • SKU_ID - идентификатор товара в системе MySales;

  • STORE_ID - идентификатор магазина в системе MySales;

  • PARCEL - кратность;

  • MIN_ORDER_QTY - минимальный заказ;

  • GUARANTEED_ORDER - гарантированный заказ (заказ не может быть меньше гарантированного);

  • IS_ORDER - указывает разрешен ли товар к заказу (1 - разрешен, 0 - не разрешен);

  • IS_PRODUCTION - указывает необходимо ли заказывать товары для производства продукта (1 - да, 0 - нет);

  • IS_SHELF_LIMIT - указывает применять ли ограничение по сроку годности (1 - да, 0 - нет);

  • IS_CROSS_DOCK - указывает ездит ли позиция по кросс-доку (1 - да, 0 - нет);

  • PICK_TO_ZERO - указывает ездит ли позиция по pick to zero (1 - да, 0 - нет). Устанавливается только для склада;

  • IS_MORNING - указывает приедет ли позиция утром (1 - да, 0 - нет);

  • ADD_CYCLE - указывает сколько дополнительных циклов поставок необходимо добавить к ненулевому заказу (возможно добавить от 1 до 3 циклов);

  • PLUS_D1D2FCST - коэффициент дополнительного заказа в днях. Увеличивает СЗ склада по позиции на указанное количество дней.

  • ROUND_FACTOR - фактор округления заказов относительно кратности и мин заказа. Проставляется значение от 0 до 1 (не включая 0 и 1). Если заказ относительно упаковки или мин заказа меньше значения фактора округления (например 0.3), то он округляется вниз, иначе вверх. Если заказ 2 штуки, упаковка 10, а фактор округления - 0.3 - система автоматически округлит заказ вниз;

  • MAX_INCREASE_PERC - указывает максимальный процент повышения заказа для pick to zero. Проставляется на уровне склада в процентах. Если: Суммарное повышение заказа (по всем магазинам) / Суммарный начальный заказ (по всем магазинам) * 100 будет больше чем этот параметр - заказ не повысится, а если меньше - повысится.

Образец файла импорта доступен по ссылке.

Если в файле импорта пользователь заполняет все поля, указанные выше для комбинации SKU-Магазин, то система обновит уже существующие комбинации SKU-Магазин, а также создаст новые, если такие присутствуют в файле. Если же в файле импорта пользователь заполняет не все поля для комбинации SKU-Магазин, то система только обновит уже существующие комбинации.

Также пользователь может экспортировать данные о кратности и минимальному заказу из системы в файл. Для этого необходимо нажать на кнопку 🔽.

Как проверить почему нет заказа

Форма "Параметры позиций" позволяет не только настроить параметры заказа, но и проверить все необходимые данные для заказа. Это также позволяет понять, почему заказа нет.

Следующие колонки "Параметров позиций" влияют на создание заказа:

  • Кратность - кратность должна быть больше нуля. Если она нулевая - заказа не будет;

  • Заказ - поле, которое указывает нужно ли заказывать товар. Если галочка в этом поле не стоит, то заказа не будет, независимо от наличия товара в АМ;

  • Производство - указывает, заказывать ли товары для производства этого продукта. Влияет на заказ ингредиентов;

  • Поставщик - если в этом поле не указан поставщик - нету соответствующей привязки - заказ не будет создан;

  • Договор - если в этом поле не указан договор - нету соответствующей привязки - заказ не будет создан;

  • Диаграмма - поле отображает диаграмму, по которой возится товар. Если это прямая поставка, пикинг или кросс-док для склада - поле не должно быть пустым, так как пустое поле указывает, что для товара не заведена диаграмма. В случае кросс-док заказа магазина пустое поле - это нормально, если есть контракт и поставщик;

  • АМ - указывает на наличие товара в АМ - если галочка не стоит - товар не в ассортименте - заказ не будет создан;

Дополнительная загрузка

Описание

Функционал дополнительной загрузки позволяет дополнительно загружать магазины товаром перед акционными событиями или высоким сезоном продаж, при наличии различного рода логистических ограничений в работе распределительного центра либо поставщиков.

Также дополнительную загрузку можно использовать для загрузки магазинов товаром в начале акции на весь период акции, если такие товары имеют эффект повышенного спроса в первые дни акции и насыщения спроса, которому сопутствует падение продаж в последующие дни акции.

Возможно также использование этого функционала для дополнительной загрузки новых магазинов товаром, с целью обеспечения пиковых продаж в первые дни, когда проходит кампания активного продвижения нового магазина.

Дополнительную загрузку рекомендуется использовать только для товаров с длительным сроком хранения, которые, в это же время, находятся в топе продаж по количеству, так как для таких позиций риск создания неликвидных запасов - наименьший. Не рекомендуется использовать этот функционал для медленно продающихся позиций, так как для них - высокий риск создания неликвидного запаса. Также не рекомендуется для позиций с коротким сроком хранения, чтобы избежать порчи товара и, как следствие, его списаний или возвратов.

Как работает дополнительная загрузка

Для позиций, для которых выбрано дополнительную загрузку, система при расчете заказа изменяет стандартную формулу автозаказа.

У нее вместо прогноза Д1Д2 (прогноз продаж от первой доставки до следующей) подставляется прогноз от выбранной даты "Прогноз от" и до даты конца, которая была проставлена при добавлении дополнительной загрузки. Таким образом в ближайший заказ от дата начала дополнительной загрузки попадет такой объем товара чтобы покрыть потребность от даты "Прогноз от" и до конца дополнительной загрузки. За умолчанием "Прогноз от" равен дате начала загрузки. Кейс для изменения даты "Прогноз от" представлен ниже.

Это позволяет рассчитать необходимое количество товара с момента доставки и до конца периода, на который необходима дополнительная загрузка. Аналогично система считает и страховой запас. Все остальные процессы автозаказа остаются прежними.

Использование даты "Прогноз от"

Если вам необходимо загрузить магазин на весь период "Доп загрузки" поле "Прогноз от" нужно оставлять равным "Дата с". Но есть случаи, когда нужно в ближайшем заказе заказать объем товара не на весь период, а на часть. Например:

У поставщиков перед НГ - проблема со складскими площадями и они договариваются с ритейлерами, чтобы те заказали заранее новогодний объем. Заранее - это примерно в середине ноября. Но при этом держать на остатке товара на дополнительные полтора месяца ритейлеру не выгодно.

Для этого заводится доп загрузка с измененным полем "Прогноз от":

  • Дата с - 11.11

  • Дата по - 31.12

  • Прогноз от - 20.12

  • Ближайший заказ - 15.11

Таким образом на 15.11 система закажет объем товара равный потребности под ближайший цикл поставки + объем на период с 20.12 по 31.12. А дальше будет заказывать только под текущие продажи.

Такие договоренности - выгодные и ритейлеру и поставщику. Поставщику - так как ему не нужно платить за дополнительные складские площади, а ритейлеру - так как он получает отсрочку оплаты, повышая товарный запас, а система при этом точно рассчитывает потребность на праздничный период, чтобы праздничный запас успел продаться.

Добавление дополнительной загрузки

Для добавления дополнительной загрузки пользователю необходимо перейти на страницу "Дополнительная загрузка":

...

После открытия страницы необходимо нажать "Добавить новую запись". После нажатия откроется окно добавления позиций для дополнительной загрузки:

...

В окне добавления представлены следующие поля:

  • Название - название для записи дополнительной загрузки (например название поставщика);

  • Дата с - дата начала доп. загрузки. Доп загрузка попадет в первый заказ после этой даты;

  • Дата по - дата по которую необходимо дополнительно загрузить товары;

  • Прогноз с - дата с которой будет рассчитан объем доп загрузки. Объем будет рассчитан от этой даты до даты окончания доп. загрузки (Дата по).

  • Промо - выбор промо акции, под которую необходима дополнительная загрузка (необязательное поле, вводится только в случае дополнительной загрузки под конкретную промо акцию);

  • Магазины - выбор магазинов для которых необходима дополнительная загрузка;

  • SKU - выбор SKU для которых необходима дополнительная загрузка.

После завершения ввода данных необходимо нажать "Добавить". После добавления система автоматически учтет необходимость дополнительной загрузки при последующих заказах выбранных товаров.

Фильтры

Для удобства работы, на странице присутствует поиск по названию записей (например название поставщика), а также поиск по отдельным позициям.

Push распределение

Функционал push распределений позволяет автоматически создавать массовые ручные заказы.

Для создания push распределения необходимо перейти на страницу "Push распределение" и нажать на кнопку "Создать пуш". После нажатия откроется окно создания пуш распределения. Окно создания пуш распределения очень похоже на окно создания диаграмм:

...

При создании пуш распределений система пытается добавить ручные заказы к уже существующим диаграммам, если же диаграммы для комбинации магазин-поставщик нет, тогда система создаст дополнительную диаграмму для ручного заказа.

Создание push распределения для прямой поставки

Для создания пуш распределения для прямой поставки необходимо заполнить следующие поля:

  • Название - наименования пуш распределения;

  • Склад-источник - для прямой поставки необходимо оставить как есть;

  • Поставщик - выбрать поставщика из списка, аналогично как при создании диаграмм;

  • Договор - выбрать договор из списка, аналогично как при создании диаграмм;

  • Промо - выбрать промо акцию, если ручной заказ создается под промо;

  • Дата заказа - выбрать дату заказа;

  • Дата поставки - выбрать дату поставки;

  • Получатели - аналогично как в диаграммах выбрать получателей из списка. В случае с ручным заказом можно выбрать любой магазин из списка, независимо от созданных привязок

  • SKU - аналогично как в диаграммах выбрать товары для поставки - выбор товаров ограничен контрактом

  • Email - ввести почту для отправки ручного заказа. Если это поле оставить пустым, то в случае наличия уже существующей диаграммы для комбинации товар-магазин-поставщик система попытается отправить заказ на почту, указанную в существующей диаграмме. Если же диаграммы нет, тогда заказ отправлен не будет.

После заполнения всех полей окно будет выглядеть следующим образом:

...

Для продолжения необходимо нажать кнопку "Далее", после нажатия откроется окно детальной настройки количества заказа и типа его распределения:

...

На этой странице пользователь может импортировать количество заказов из файла (см. раздел "Импорт пуш распределений"), выбрать логику для распределения заказа по выбранным магазинам (см. раздел "Типы распределения по магазинам"), указать нужно ли соблюдать ассортимент при создании заказа (если не поставить галочку "только в АМ" - заказы создадутся для всех комбинаций магазин-sku, выбранных раньше, независимо от их наличия в ассортименте).

Также на этой странице пользователь задает количество заказа для каждой комбинации магазин-товар. Пользователь может использовать как автоматическое распределение общего количества заказа товара по магазинам, так и вручную ввести количество заказа для каждого магазина.

Для заведения количества заказа на товар необходимо ввести желаемое количество к заказу в поле "Всего (польз)" в строке с нужным товаром:

...

После введения нужной суммы пользователь может посмотреть распределение по магазинам для конкретного товара, нажав на кнопку "Рассчитать по SKU", либо же рассчитать для всех товаров, нажав "Рассчитать". После расчета система выведет в строке информацию о количестве, которое будет заказано с учетом ограничений по кратности и мин. заказу, а также прогнозный остаток товара в неделях.

Чтобы посмотреть, как количество заказа было распределено по магазинам, необходимо нажать на строку с нужным товаром. После чего раскроется распределение по магазинам:

...

В открывшемся распределении по магазинам отображается следующая информация:

  • Магазин - номер и название магазина, в который будет поставка;

  • Ср. продажи - средние продажи товара в магазине; если продаж не было - система рассчитывает теоретические средние продажи по магазину (отображаются в скобках);

  • Остаток - отображает последние остатки товара на магазине;

  • АМ - отображает наличие товара в ассортименте;

  • Кратность - отображает кратность упаковки;

  • Мин. заказ - отображает минимальное количество товара к заказу;

  • Заказ - отображает позволена ли позиция к заказу (выбирается в форме "Параметры позиций"). Если галочка не стоит - позиция не будет заказана, независимо от выбора пользователя. Чтобы она заказалась, необходимо разрешить заказ в форме "Параметры позиций";

  • Диаграмма - отображает диаграмму для комбинации товар-магазин, здесь возможны следующие случаи:

    • Если система находит комбинацию товар-магазин в уже существующей диаграмме, то в этом поле будет отображен номер диаграммы. Ручной заказ будет одноразово добавлен к этой диаграмме;

    • Если система находит комбинацию товар-магазин в уже существующей диаграмме, но в диаграмме заведен иной тип поставки (кросс-док например), тогда номер диаграммы будет подсвечен красным и взят в скобки. Для заказа будет создана новая диаграмма с прямой поставкой.

    • Если система не находит комбинацию товар-магазин в уже существующей диаграмме, то поле будет пустым и для ручного заказа будет создана новая диаграмма.

  • Кол-во - распределенное заданное общее количество заказа на определенный магазин с учетом кратности и мин. заказа;

  • Кол-во (польз) - окно, в котором пользователь может ввести вручную желаемое количество заказа на магазин. Нужно понимать, что в этом случае изменится общее количество заказа, которое было введено ранее;

  • Предупреждение - отображает системные предупреждения.

После того, как все данные внесены и проверены, для создания пуша необходимо нажать кнопку "Создать пуш". Также пользователь может указать, нужно ли автоматически подтверждать и отправлять заказ, проставив соответствующие галочки возле "Подтвердить заказы" и "Отправить заказы".

Создание push распределения для кросс-док поставки

Создание пуш распределения для кросс-докинга почти аналогично пушу для прямой поставки. Пользователю в первом окне необходимо дополнительно выбрать "Склад-источник", потом под ним выбрать "Cross-dock", а также указать дату доставки на склад.

...

В следующем окне, аналогично прямой поставке, необходимо выбрать желаемое количество заказа. В случае кросс-док пуша в строке с товаром дополнительно отображается Кратность и Мин. Заказ склада, а также разрешено ли заказывать товар на склад.

Далее заказ настраивается аналогично прямой поставке. Единственное отличие - это то, что независимо от того, нашла система уже существующие диаграммы или нет - при пуше будет создана новая пачка кросс-док диаграмм для выбранных комбинаций товар-магазин.

Создание push распределения для пикинг поставки

Создание пуш распределения для кросс-докинга также почти аналогично пушу для прямой поставки. Пользователю в первом окне необходимо дополнительно выбрать "Склад-источник", потом под ним выбрать "Пикинг". Следующие окна аналогичны прямой поставке.

При пикинге создаются только заказы склад-магазин. Заказы от поставщика на склад автоматически подхватывают дополнительное ручное количество заказа и добавляют его к следующему заказу склада. Но это происходит только для тех позиций, по которым уже существуют пикинг заказы на склад.

Если пользователь выбрал позиции, которые раньше не ехали на склад, либо же необходимо сделать дополнительный заказ на склад в другое время, тогда его необходимо добавить как ручное событие через форму "Календари". Если этого не сделать - на складе не будет достаточного количества товара и заказы магазинов не удастся выполнить.

Загрузка push распределения из файла

Пуш распределения можно как создавать вручную так и полностью загружать из файла. Также есть возможность загружать количество для заказа для вручную созданных push распределений, файл для такой загрузки описан ниже.

Для загрузки распределения с файла необходимо нажать на  и выбрать "Импорт из csv". Также необходимо подготовить файл формата csv со следующими полями:

...

  • SKU_ID - код товара MySales;

  • STORE_ID - код магазина MySales;

  • CONTRACT_ID - код контракта;

  • ORDER_DATE - дата заказа;

  • DELIVERY_DATE - дата доставки;

  • QUANTITY - количество к заказу;

  • WAREHOUSE_TYPE - тип склада. Заполняется только для кросс-док и пикинг заказов. В случае с пикингом ставиться p, для кросс-дока - d;

  • WHS_ID - кода склада. Только для кросс-док и пикинг заказов;

  • EMAIL - почта на которую будет отправлен заказ;

  • CLOSEST_DELIVERY - устанавливается для автоматического расчета даты доставки пуша. Если стоит 1 - система автоматически проставит дату доставки равную ближайшей дате доставки;

Примечание:

  • Если поставка выполняется от поставщика, то поле CONTRACT_ID заполняется идентификатором контракта поставщика, а поле WHS_ID не заполняется.

  • Если поставка выполняется со склада РЦ, то поле CONTRACT_ID заполняется идентификатором контракта поставки с РЦ, а в поле WHS_ID указывается идентификатор склада РЦ.

С примером файла можно ознакомится по ссылке - Загрузка Push распределения.

Добавления количества заказа из файла

Для удобства пользователь может загружать ручное количество заказа из файла, а не вручную. Для загрузки из файла необходимо нажать на кнопку  в окне с выбором количества ручного заказа, а также подготовить файл импорта. Файл может быть в форматах csv (с разделителем точка с запятой), tsv (с разделителем tab) или txt (с разделителем точка с запятой). Пользователь может загружать два варианта файла, которые отличаются колонками:

...

  • Загрузка только списка SKU и значений количества для последующего автоматического распределения по магазинам. В этом файле должны быть колонки SKU_ID и QUANTITY (количество для распределения);

  • Загрузка комбинаций SKU-Магазин и конкретного значения для распределения на магазин. В этом файле должны быть колонки SKU_ID, STORE_ID и QUANTITY (количество для распределения);

С примерами файлов можно ознакомится по ссылкам - Загрузка SKU, Загрузка SKU-Магазин.

Распределения по магазинам

В системе есть три варианта распределения заданного количества товара по магазинам:

  • По средним продажам - заданное количество распределяется на основании средних продаж.

  • По среднему прогнозу - заданное количество распределяется на основании среднего прогноза.

  • Раздать всем - в отличии от предыдущих вариантов система не рассчитывает количество, а раздает одинаковое количество товара каждому магазину - которое указанное в поле "Всего (заказ)".

Алгоритм распределения заданного количества

Алгоритм распределения базируется на выравнивании остатка в неделях по всем магазинам. Система итерационно раздает кратность упаковки на все магазины начиная с самых больших относительно прогноза/средних продаж. Базовым остатком в неделях берется остаток для магазина с самим большим прогнозом/средними.

Логика работы алгоритма описана ниже:

  • Высчитываем текущий сток в неделях (реальный сток / прогноз или средние) по магазину с наибольшими средними/прогнозом - и берем его за базовый.

  • Сравниваем сток в неделях для последующих магазинов с базовым.

  • Если сток в неделях для магазина больше базового - переходим к следующему магазину.

  • Если сток в неделях для магазина меньше базового - добавляем магазину кратность упаковки, до момента пока сток магазина не станет больше базового (как только он становится больше - оставляем количество полученное на предыдущем добавлении)

  • Когда все магазины пройдены и их сток выровнен относительно базового - переходим на следующую итерацию (возвращаемся к базовому магазину)

  • Следующая итерация начинается если еще остается товар для распределения - к базовому магазину (наибольший) добавляем кратность упаковки. Высчитываем новый базовый сток в неделях и повторяем предыдущий алгоритм.

  • Алгоритм продолжается пока остается количество для распределения.

Также есть параметр, который позволяет добавить или отнять заданное количество недель от базового стока в неделях на каждом этапе перед сравнением со стоком других магазинов. По умолчанию он 0. Параметр настраивается на стороне MySales.

Например: параметр 1, сток базового магазина в неделях 5, а сток проверяемого 5.5 (он не получает товар при стандартном параметре 0). При применении параметра = 1 сток базового станет 6, и в этом случае магазин уже получит распределение.

Увеличение параметра ведет к более равномерному распределению по всем магазинам. Магазины быстрее получают упаковку, и как следствие количества хватает на большее количество магазинов. В этом случае магазины с большими средними/прогнозом в итоге получат меньше, а магазины меньшим получат больше.

Уменьшение ведет к обратному. Магазины с большими средними/прогнозом получат больше товара, маленьким может не хватить.

Новые магазины

Описание

...

Страница "Новые магазины" позволяет добавлять новые магазины и рассчитывать прогноз, основываясь на данных по аналогичным магазинам. При построении прогноза система учитывает коэффициент влияния каждого из аналогов, который задается при добавлении нового магазина.

Список новых магазинов отображается в виде таблицы, которая имеет следующие поля:

...

  • Новый магазин – идентификатор название нового магазина;

  • Сопоставимый магазин – идентификатор название магазина-аналога;

  • Коэффициент – коэффициент подобия нового магазина и аналога;

  • Дата начала - дата, начиная с которой заказ в новый магазин будет рассчитываться как заказ в сопоставимом, умноженный на коэффициент;

  • Дата окончания – дата, после которой заказ в новый магазин будет рассчитываться на основании продаж нового магазина;

  • Последнее изменение – дата последнего изменения данных о новом магазине.

Добавление нового магазина

Для добавления нового магазина необходимо нажать кнопку "Добавить Новый магазин":

...

После нажатия кнопки открывается модальное окно добавления нового магазина, которое состоит из следующих полей:

...

  • Новый магазин – название нового магазина. Выбирается из выпадающего списка, для открытия которого необходимо нажать на поле возле надписи "Новый магазин" (для того, чтобы магазин появился в списке, его необходимо внести в базу данных в соответствующую таблицу);

  • Сопоставимый магазин – название сопоставимого магазина. Выбирается из выпадающего списка, для открытия которого необходимо нажать на поле возле надписи "Сопоставимый магазин";

  • Коэффициент - коэффициент подобия (число от 0 до 1; если значение 1 - полностью аналогичен);

  • Дата начала - дата, начиная с которой заказ в новый магазин будет рассчитываться как заказ в сопоставимом, умноженный на коэффициент;

  • Дата окончания - дата, после которой заказ в новый магазин будет рассчитываться на основании продаж нового магазина. После даты окончания запись становится неактивной и больше не используется.

Работа с новыми магазинами

У пользователя есть возможность совершать следующие действия с записью о новом магазине в таблице:

  • Редактировать данные о новом магазине. Для открытия окна редактирования необходимо нажать на кнопку 🖌. После нажатия на кнопку откроется окно:

...

  • Пользователь может изменить коэффициент, а также дату окончания.

  • Удалить новый магазин. Для удаления нужно нажать на кнопку 🗑. После нажатия новый магазин будет удален.

Фильтры

Для более удобного отображения и поиска новых магазинов на странице "Новые магазины" присутствуют следующие фильтры:

...

  • Активные записи - включение и отключение отображения неактивных записей в таблице. Для отображения только активных записей необходимо поставить галочку.

  • Строка поиска - поиск происходит по названию нового магазина.

Дополнительные места

Функционал дополнительных мест используется для временного увеличения презентации товара в зале. Обычно дополнительные места заводятся под промо акции. Заведение дополнительного увеличивает презентацию товара на указанное при заведении количество и в последствии увеличивает заказ товара на выбранный период.

Добавление дополнительного места

Для добавления дополнительной презентации пользователю необходимо перейти на страницу "Дополнительные места":

...

После перехода на страницу "Дополнительные места" необходимо нажать кнопку "Добавить новую запись". После нажатия откроется окно для добавления доп места:

...

Пользователь вводит следующие поля:

  • Название - название записи;

  • От - дата начала действия доп места;

  • До - дата окончания действия доп места;

  • Промо - выбор промо, под которое заводится доп место;

  • Sku - выбор товаров, для которых будет заведено доп место;

  • Магазины - выбор магазинов, для которых будет заведено доп место.

После заполнение полей необходимо нажать "Далее", после нажатия откроется окно, в котором пользователь должен указать количество доп мест для каждой выбранной позиции. Это можно сделать либо вручную, либо загрузить с файла. Формат файла описан в разделе Импорт из файла:

...

В этом окне отображаются названия выбранных товаров и их презентационный запас в системе (отображается напротив названия). Для открытия списка магазинов необходимо нажать на название товара. В поле напротив названия магазина пользователь указывает необходимое количество доп мест. Для создания доп места необходимо нажать кнопку "Создать".

Загрузка из файла

Необходимое количество доп мест пользователь может импортировать из файла. Для этого в окне выбора количества доп мест необходимо нажать на "Импорт". Файл импорта должен быть в формате csv или txt с разделителем ; (точка с запятой) и иметь следующие колонки:

  • SKU_ID - код SKU MySales;

  • STORE_ID - код магазина MySales;

  • QUANTITY - количество доп мест.

Тендеры

Функционал тендеров используется для замены поставщика для выбранных позиций. Обычно замена поставщика используется в случаях когда позицию может привозить несколько поставщиков, и выбирается тот, который предлагает лучшие условия.

Изначально заказы создаются на поставщика, который заведен в диаграмме, но пользователь может изменить этого поставщика уже в самом заказе. Для получения возможности замены поставщика необходимо завести контракты всех поставщиков, которые возят товар на странице "Тендеры":

...

Добавление контракта

Для добавления альтернативного поставщика для позиции необходимо добавить соответствующий контракт. Для одной позиции можно добавлять сколько угодно контрактов.

Для добавления контракта необходимо нажать "Добавить новую запись". После откроется окно добавления контракта:

...

Пользователь заполняет следующие поля:

  • SKU - выбор товара, для которого необходимо добавить поставщика;

  • Поставщик - выбор поставщика;

  • Контракт - выбор контракта;

После заполнения полей пользователь должен нажать кнопку ▼ для добавления нового контракта к товару. После нажатия контракт будет добавлен, пользователь может добавить несколько контрактов изменяя данные в этой форме.

...

После того как все нужные контракты добавлены - необходимо нажать "Сохранить". Для удаления контракта необходимо нажать 🗑.

Изменение контракта в заказе

После того как нужные контракты добавлены на странице "Тендеры" пользователь может изменять контракт и соответствующего поставщика на странице "Заказы".

Изменять контракт можно как на уровне всего заказа - в Заголовках, так и на уровне одного товара в заказе - в Строках.

В случае с изменением контракта на уровне всего заказа необходимо в Заголовках нажать 💬 на  в строке с заказом и выбрать "Сменить договор". После нажатия откроется окно смены договора. Договор измениться только у тех позиций из заказа, к которым привязан альтернативный договор на странице "Тендеры". Остальные позиции останутся без изменений.

...

В окне отображается информация о позиции, а также список договоров, на которые можно изменить текущий. Для изменения необходимо выбрать нужный договор и нажать "Применить".

После применения система ищет есть ли уже заказ с выбранным в предыдущем шаге контрактом. Если найден заказ на нужный магазин и дату - система добавляет в него позиции из исходного заказа. Если не найден - позиция создает новый заказ с новым контрактом и позициями. В исходном заказе по этой позиций будет проставлено поле "Ручная корректировка" равно нулю.

В случае с изменением контракта для конкретного товара необходимо в Строках нажать 💬 в строке с заказом и выбрать "Перенести в другой контракт". После нажатия откроется окно смены договора.

...

В окне пользователь должен выбрать новый договор, а также количество, которое необходимо перенести. По умолчанию отображается все количество, но пользователь может перенести только часть. Важно, что количество должно быть кратно упаковке.

После применения система аналогично ищет существующий заказ, если он найден - позиция добавляется у него с выбранным количеством. Если не найден - создается новый заказ. В исходном заказе, если перемещено все количество проставляется "Ручная корректировка" равна нулю, если перемещено часть заказа - то в исходном заказе в поле "Ручная корректировка" будет проставлено разницу между исходным заказом и перемещением.

Точка перезаказа

Функция Точка перезаказа предназначена для выполнения заказов на РЦ с плавующей датой заказ/поставки товаров и динамическим выбора периода обеспечения запасами в соответсвтии с прогнозом продаж. Как правило, время поставки таких заказов достаточно длительное и занимает от четырех недель.

...

Описание

Страница «Заказ товаров на РЦ» предназначена для формирования заказа на Распределительный Центр.

Для формирования и расчета таких заказов используется стратегия которая называется «точка перезаказа» (reorder point - анг.).

«Точка перезаказа» или Reorder Point это стратегия заказа товаров у производителя или дистрибьютера, с динамическим выбором точки заказа - даты поставки товаров и конечной даты по которую плаируется обеспечить запасами согласно прогнозу продаж. Стратегия позволяет выполнить оптимизацию объема заказа товара от поставщиков в соответствии с оптимальной логистикой, подобрать объем заказанного товара под используемый в логистике транспорт и тем самым сократить логистические расходы одновременно поддерживая минимальный остаток товаров на складе с оптимальной оборачиваемостью товаров с учетом рисков в потере продаж.

Такой подход к формированию заказа должен обеспечить оптимальное одновременное выполнение противоречащих условий:

  • обеспечение запасами товаров магазины, до определенной даты, или даты следующего заказа, что позволит выполнить доставку следующего заказа когда складской остаток будет минимальным

  • выбор даты поставки, чтобы обеспечить минимальное выпадение из продаж отдельных артикулов поставщика

  • выбор даты поставки, не менее чем минимальный срок выполнения и поставки заказа от поставщика

  • выбор периода покрытия в целом, минимальной продолжительности периода для обеспечения минимальной оборачиваемости складских запасов

  • подобрать объем заказа под заказываемый транспорт или свободное место для перевозки в целях минимизации логистических расходов

Для выполнения расчета заказа используется функция системы «Заказ товаров на РЦ»

Параметры расчета заказа

...

#

...

Наименование

...

Тип

...

Описание

...

1

...

Период расчета

...

Тип

...

Описание

...

2

...

Период покрытия

...

Неделя с … по …

...

Параметр будет подсвечен красным, если начальная дата (неделя) меньше, чем Lead Time по договору поставщика.

...

3

...

Версия прогноза

...

Дата

...

Дата текущей версии прогноза, на основании которой выполнен расчет.

...

4

...

Сумма

...

Число (10,2)

...

Сумма заказа (будет подсвечена красным фоном и информационным сообщением, если будет меньше минимального заказа)

...

5

...

Объем, м3

...

Число (10,3)

...

Общий объем поставки (Объем брутто). Рассчитывается исходя из объема паллеты товара.

...

6

...

Вес, кг

...

Число (10,3)

...

Общий вес поставки (Вес брутто). Рассчитывается исходя из веса паллеты товара.

...

7

...

ПАЛ

...

Число (10,2)

...

Расчетное кол-во паллет исходя из норматива кол-ва штук на одной палете.

...

8

...

ПАЛ(в)

...

Число (10,2)

...

Расчетное число весовых паллет (при весе 600 кг/пал)

...

9

...

ПАЛ(о)

...

Число (10,2)

...

Расчетное число объемных палет (при объеме 2.5 m3/пал)

Показатели оценки расчета заказа

Показатели оценки качества заказа отображаются в виде Потерь в результате позднего заказа, Недостач в результате недостаточного заказа и Излишков которые остаются после периода покрытия заказа. Все расчеты выполняют до минимального общего запаса.

...

#

...

Параметр

...

Потери

...

Недостачи

...

Излишки

...

1

...

Артикул/день/магазин

...

2

...

Дни

...

3

...

Кол-во

...

4

...

Сумма

...

5

...

Себестоимость

...

6

...

Маржинальность

Потери – рассчитываются как потерянные продажи, которые возникают с текущей даты или даты последней поставки до начала периода покрытия (что будет позже). При этом, потерянные продажи рассчитываются до минимального общего запаса.

Недостачи – рассчитываются как потерянные продажи, которые возникают в период покрытия в результате недостаточного заказа товаров. При этом, потерянные продажи рассчитываются от минимального общего запаса.

Излишки – рассчитываются как продажи, которые возникают после периода покрытия, при этом, продажи рассчитываются до минимального общего запаса.

Артикул/день/магазин - кол-во дней наличия или отсутствия артикула по магазинам.

Кол-во - Общее кол-во недостач или излишков.

Себестоимость, Маржинальность – отображается и рассчитывается в текущих закупочных ценах.

Сумма, Маржинальность – отображается и рассчитывается в текущих ценах реализации.

Выполнение расчета заказа

Для выполнения расчета заказа, откройте основное меню [ПОПЛНЕНИЕ] и выберите пункт «Заказ товаров на РЦ»

При помощи фильтров и отбора, выберите Поставщика и затем Договора поставщика, нажмите кнопку «Рассчитать»

Выберите начельный период покрытия и заполните одно из значений

  • Конечный период покрытия

    Вес (кг) - вес брутто поставки

    Объем (м3) - объем брутто поставки

    ПАЛ - кол-во палет

    ПАЛ(в) - кол-во весовых паллет

    ПАЛ(о) - кол-во объемных палллет

    Сумма - сумма заакза в ценах закупки

На основании заполненных значений, произойдет выбор периода покрытия и будет выполнен расчет кол-ва заказа, которое согласно прогнозу, обеспечит наличие минимального остатка в течение всего периода покрытия.

После выполнения расчета, расчетные значения будут округлены согласно следующим правилам:

  1. Если расчетное значение меньше объма минимального заказа от поставщика на РЦ, то будет произведено округление по арифметическим правилам до Минимального заказа от поставщик на РЦ.

  2. Если расчетное значение больше объма минимального заказа, то в дальнейшем округление будет выполнено по арифметическим правилам согласно Кратноси заказа товаров от поставщика на РЦ.

После выполнения округления, будет выполнен перерасчет значений Вес, Объем, ПАЛ, ПАЛ(в), ПАЛ(о), Сумма.

  1. При изменении Начального и/или Конечного периода покрытия будет автоматически выполнен расчет заказа.

  2. При изменении любо из параметров Вес, Объем, ПАЛ, ПАЛ(в), ПАЛ(о), Сумма, будет автоматически определен новый конечный период покрытия с округлением в меньшую сторону и будет выполнен перерасчет заказа как при изменение Начального и/или Конечного периода покрытия.

    При изменении кол-ва заказанного товара, будет выполнено окгругление введенного значения и будут перерасчитаны параметры Вес, Объем, ПАЛ, ПАЛ(в), ПАЛ(о), Сумма.

Для выполнени изменения кол-ва заказа, щелкните мышью по ячейке в соответствующей строке перед периодом покрытия, появится поле для ввода значения с заполненным значением с учетом кратности заказа, под полем будет указано расчетное кол-во без учета кратности. Измените значение поле и нажмите Enter. Выпонять изменение заказанного кол-ва можно при помощи стрелочек, при этом шаг изменения будет равен 5% от объема продаж за период покрытия с учетом округления согласно кратности заказа.

Минимальный остаток рассчитывается как сумма презетационного запаса по магазинам, плюс страховой запас по магазинам, плюс 1/2 кратности отгрузки на магазин умноженная на кол-во магазинов.

Примечания

При выполнении расчета заказа на РЦ не будут учитываться следующие составляющие

...

#

...

Описание

...

Дата

...

1

...

Расчет показателей оценки качества не реализован.

...

2

...

Создание заказа не реализовано. Воспользуйтесь выгрузкой в Excel.

...

3

...

Использование товаров в производстве в качестве ингредиента не учитывается.

...

4

...

Нормативные списания товаров при продаже не учитываются.

...

5

...

Контроль сроков годности не учитывается как для остатков так и для заказа.

...

6

...

Ввод и вывод товаров из ассортимента в течение периода покрытия не влияет на расчет минимального страхового запаса, но влияет на прогноз продаж.

...

7

...

Не учитывается вывод товаров из ассортимента в течение периода покрытия, т.е. на конец периода покрытия останется минимальный запас товаров.

...

8

...

Промо выкладка не учитывается при расчете объема заказа.

...

9

...

Минимальное кол-во дней выполнения заказа поставщика не контролируется.

Создание заказа

Для создания заказа нажмите кнопку "Создать заказ", для дальнейшей обработки и выгрузки данных в Excel нажмите кнопку "Выгрузка в Excel", данные расчета заказа вместе с весовыми и габаритными характеристиками будут выгружены в Excel.

Пакетная обработка

Функционал пакетной обработки (батчей) позволяет выполнять расчеты для больших объемов данных. Батчи являют собой наборы команд и алгоритмов, которые эффективно обрабатывают не одну или несколько товарных позиций, а обычно все позиции в сети. Также есть технические батчи, которые позволяют удалять файловый кеш, обучать нейросеть и тд. Обычно расчеты батчей занимают немало времени и их запуск происходить либо по необходимости, либо по графику (как например для батчей мониторинга цен и расчета прогнозов).

Пользователям не рекомендуется самостоятельно запускать расчеты батчей до ознакомления с этим разделом. Детальное описание каждого батча приведено ниже:

Журнал сервера - показывает полный лог работы системы на сервере.

Отчет об использовании памяти

Тест производительности сервера - этот батч запускает набор тестов, которые оценивают производительность сервера. Так система записывает время выполнения каждого теста и сравнивает с эталонным. Этот батч позволяет оценить достаточно ли производительности в сервера, на которому запущен MySales.

Полный пересчет всех прогнозов - этот батч запускает полный пересчет прогнозов для всех товарных позиций. Выполнение этого батча занимает очень много времени (от 4 до 10 часов в зависимости от количества SKU и магазинов). Прогнозный батч запускается автоматически ночью по согласованному с клиентом графику для пересчета прогноза и передачи актуальных данных в систему автозаказа. Вручную этот батч обычно запускает служба поддержки в случае ошибок при его отработке по графику. Пользователи также могут запустить этот батч в случае необходимости.

Сбор информации о ценах конкурентов - этот батч запускает обновление цен у конкурентов для тех SKU, которые заведено в модуль мониторинга цен. Батч обновления цен у конкурентов запускается автоматически по согласованному графику.

Сбор информации о каталогах конкурентов - этот батч запускает обновление каталогов у конкурентов для тех каталогов, которые заведено в модуль мониторинга каталогов. Батч обновления каталогов у конкурентов запускается автоматически по согласованному графику.

Мэппинг каталогов конкурентов на наши SKU - этот батч связывает SKU в вашей сети с товарами из каталогов конкурентов, которые были получены в процессе мониторинга каталогов.

Поиск цен конкурентов по штрих-кодам - этот батч запускает поиск и обновление цен у конкурентов для тех SKU, у которых есть заведены штрих коды в системе. Этот батч позволяет автоматически получить цены у конкурентов, которые поддерживают поиск товара по штрих коду и связать их с вашими SKU с помощью уникальных штрих кодов.

Обучение Дуси (нейросеть промо) - этот батч запускает обучения нейросети для прогнозирования промо на последних промо данных. Батч обучения нейросети запускается автоматически раз в неделю по согласованному графику. Вручную запуск этого батча необходимо согласовать с промо командой и ответственным сотрудником MySales.

Обновление данных сопоставления промо - этот батч запускает алгоритм поиска сопоставимых (похожих) промо в сети. Это важный батч, так как новые промо прогнозы базируются на данных со сопоставимых исторических промо. Он позволяет при необходимости вручную запустить поиск сопоставимых промо, в обычном режиме система автоматически ищет сопоставимые промо при построении нового промо прогноза.

Полный пересчет всех промо в истории - этот батч запускает полный пересчет прогнозов для всех промо в истории. Время работы этого батча, в зависимости от количества промо, можеть достигать нескольких дней. Этот батч запускают сотрудники MySales и только в случаях, когда улучшается логика построения промо прогноза для получения более точных результатов.

Пересчет промо от 14 дневной давности + будущих - этот батч пересчитывает промо прогноз для всех промо не старше 14 дней, а также для всех будущих промо. Этот батч запускается раз в неделю по согласованному графику. Вручную этот батч обычно запускает служба поддержки в случае ошибок при его отработке по графику. Пользователи также могут запустить этот батч в случае необходимости.

Пересчет промо от 200 дневной давности + будущих - этот батч пересчитывает промо прогноз для всех промо не старше 200 дней, а также для всех будущих промо. Этот батч запускается по необходимости.

Удалить ВСЕ прогнозы - запуск этого батча удаляет все прогнозы из базы данных. Его нельзя запускать. Он может быть выполнен только сотрудником MySales, и только в определенных ситуациях.

Удалить ВЕСЬ файловый кэш - запуск этого батча удалит все локально кэшированные исторические данные. MySales при построении прогноза кэширует историю, что бы при каждом построении прогноза не выгружать ее заново с базы данных. Этот подход позволяет ускорить построение новых прогнозов и уменьшить нагрузку на БД. Если выполнить этот батч, то при следующем пересчете прогнозов MySales будет заново выгружать все исторические данные с базы, что существенно увеличит время пересчета. Этот батч необходимо запускать, если произошли изменения в исторических данных.

Удалить компоненты Дуси по группам -

Сбор статистики прогнозов - этот батч аналогично батчу пересчета всех прогнозов запускает расчет прогнозов для всех SKU в сети, но он не сохраняет рассчитанные прогнозы в базу данных, а только собирает статистическую информацию, которую можно увидеть в разделе "Статистика". Это позволяет собрать данные о качестве прогноза за небольшое время, так как данные на будуть записаны в базу данных (запись в базу данных, это очень продолжительный процесс).

Расчет ценовой кросс-эластичности - этот батч рассчитывает ценовую кросс эластичность для всех SKU в сети. Результаты расчета можно увидеть в разделе "Оптимизация цен". Этот батч запускается раз в неделю по согласованному графику.

Загрузить файловый кэш - этот батч загружает все необходимые исторические данные по всем позициям для ускорения процесса прогнозирования. Является обратным по логике батчу "Удалить ВЕСЬ файловый кэш". Есть смысл запускать, после выполнения удаления кеша.

Пересчитать данные продаж по группам - этот батч пересчитывает продажи по группах, с использованием продаж по SKU. Он агрегирует продажи по SKU в продажи по группам. Этот батч запускается раз в неделю по согласованному графику. Вручную его есть смысл запускать, если данные продаж по группам и суммарные по SKU отличаются.

Пересчет календаря заказов - этот батч доступный только при использовании автозаказа MySales. Запуск этого батча автоматически пересчитывает календари заказов на основании диаграмм. При заведении диаграммы календарь пересчитывается автоматически. Но у пользователя есть возможность пересчитать календарь заказов при необходимости.

Пересчет заказов - этот батч доступный только при использовании автозаказа MySales. Запуск этого батча автоматически пересчитывает все заказы в системе. С учетом последних прогнозов, СЗ и других факторов. Этот батч запускается каждый день по согласованному графику перед формированием новых заказов.

Конструктор отчетов

Обзор

Конструктор отчетов является инструментом, который позволяет легко создавать отчеты, а также выгружать необходимые данные напрямую с БД. Сложность создаваемых отчетов полностью зависит от уровня знаний SQL пользователем.

Чтобы открыть конструктор отчетов необходимо перейти у вкладку "Еще-Отчеты" и выбрать "Конструктор":

...

После нажатия откроется окно создания/изменения отчетов.

Окно выбора отчета

...

В этом окне пользователь может либо создать новый отчет, нажав кнопку "Новый", либо проводить действия з уже существующими отчетами.

Чтобы изменить существующий отчет - его необходимо выбрать со списка в поле "Отчет": В этом окне отчеты разбиты по категориям. После выбора нужного отчета для пользователя станут активны действия с ним. С отчетом можно совершать следующие базовые действия:

...

  • Изменить - необходимо нажать кнопку "Изменить" - откроется конструктор создания отчета, с уже заполненными данными из выбранного отчета. Работа с конструктором описана ниже;

  • Сохранить - необходимо нажать кнопку "Сохранить" - сохраняет изменения в отчет, кнопка неактивна, если нету изменений;

  • Отмена действий - необходимо нажать кнопку "Отмена" - отменяет внесенные изменения в отчет, кнопка неактивна, если нету изменений;

Также есть набор дополнительный действий по администрированию созданных отчетов, для вызова меню с действиями необходимо нажать на “…”. После нажатия откроется окно с возможными действиями:

...

  • База данных - открывает базу данных, детально описано в разделе Работа з базой данных;

  • Сохранить как - позволяет повторно сохранить отчет с новым названием, даже если не было изменений;

  • Изменить категорию - позволяет переместить отчет в другую категорию (например Сток, Продажи, Анализ OOS, и тд.);

  • Расписание - позволяет настроить рассылку отчета на электронную почту. Настройка производится в следующем окне:

...

  • В этом окне пользователь выбирает день недели, время, кому отправлять, какое оглавления и текст письма должны быть. К настроенному письму будет прикреплено файл с данными с отчета.

  • Доступ - позволяет выбрать у кого будет доступ к отчету:

    • "Только я" - доступ только у пользователя который создал;

    • "Только администраторы" - доступ только у пользователей с правами администратора;

    • "Все" - доступ открыт для всех пользователей;

  • Экспорт отчета - позволяет выгрузить выбранный отчет в excel;

  • Импорт отчета - позволяет загрузить отчет в виде sql запроса из файла.

Базовые SQL запросы

Для создания базовых отчетов необходимы базовое понимание как работают sql запросы. Сегодня существует несколько диалектов SQL, в документации детально будут рассмотрены запросы на диалекте T-SQL, который используется в СУБД MS SQL Server.

Ниже будут приведены главные sql команды, которые необходимы для базовой работы с sql скриптами - SELECT, FROM, WHERE, JOIN, GROUP BY, ORDER BY.

Отличный мануал по SQL с примерами и возможностью попробовать разные команды приведен по ссылке. Мануал предоставлен на английском языке, но есть возможность перевести сайт, нажав на 🌎 на сайте и выбрав нужный язык.

SELECT

SELECT - это базовая команда, которая используется для выбора данных из базы. Эта команда обычно используется с командой FROM, которая указывает с какой таблицы нужно выбрать данные. Также возможна выборка из нескольких таблиц - это будет описано в секции JOIN. Стандартно запрос SELECT выглядит следующим образом:

SELECT column1, column2, ...
FROM table_name;

column1, column2, ... в этом запросе - это названия полей (колонок) в таблице, из которых вы хотите получить данные. В случае, если нужно выбрать все данные, используется * :

SELECT * FROM table_name;

Например результатом запроса SELECT sku_id, article_name FROM products; будут две колонки с кодом ску и названием с таблицы PRODUCTS:

...

А результатом запроса SELECT * FROM products; будут все колонки с таблицы PRODUCTS:

...

Создавая SELECT запросы желательно присваивать колонкам так называемые aliases (условно название):
SELECT column_1 SKU, column_2 STORE FROM table_name;.
В этом примере SKU и STORE - это aliases колонок column_1 и column_2 - они будут дальше использоваться в работе с конструктором отчетов.

Ознакомится ближе с SELECT и попробовать как работают можно по ссылке. Ознакомится ближе с понятием aliases можно по ссылке.

Кроме стандартного выбора полей c помощью SELECT, также можно выбирать специфические данные. Ниже приведены базовые функции, которые можно использовать напрямую в запросе SELECT.

  • SELECT DISTINCT - используется для выбора уникальных значений поля. Например:
    SELECT DISTINCT column_1 FROM table_name;.
    Этот запрос выведет только уникальные значения в колонке column_1.
    Ознакомится ближе с SELECT DISTINCT и попробовать как работают можно по ссылке.

    SELECT TOP - используется для выбора первых N значений из поля. Например:
    SELECT TOP 100 column_1 FROM table_name;.
    Этот запрос выведет только первые 100 значений в колонке column_1.
    Ознакомится ближе с SELECT TOP и попробовать как работают можно по ссылке.

    MIN/MAX - используется для вывода наименьшего или наибольшего значений в колонке. Например:
    SELECT MIN(column_1) FROM table_name;.
    Этот запрос выведет наименьшее значение в колонке column_1.
    Ознакомится ближе с MIN/MAX и попробовать как работают можно по ссылке.

    COUNT, AVG, SUM - COUNT() считает количество строк в колонке; AVG() выводит среднее значение колонки; SUM() - выводит сумму всех значений.
    SELECT COUNT(column_1) FROM table_name;.
    Этот запрос выведет количество строк в колонке column_1.
    SELECT AVG(column_1) FROM table_name;.
    Этот запрос выведет среднее значение в колонке column_1.
    SELECT SUM(column_1) FROM table_name;.
    Этот запрос выведет сумму всех значений в колонке column_1.
    Ознакомится ближе с COUNT, AVG, SUM и попробовать как работают можно по ссылке.

WHERE

Команда WHERE используется для создания условия выборки:

SELECT column1, column2, ...
FROM table_name
WHERE condition;

Например если вам нужно выбрать все значение, которые больше 10, то в условии WHERE должно быть указано:
SELECT column1
FROM table_name
WHERE column1 > 10;

Также у команды WHERE есть математические операторы, такие как больше, меньше, не равно и тд. Они используются при задании условия.

Ознакомится ближе с WHERE, доступными операторами и попробовать как работают можно по ссылке.

Условий в WHERE может быть несколько, для их задания используются логические операторы "AND", "OR", "NOT".
Если необходимо, чтобы выполнялось и одно и другое условия - используется AND.
Если необходимо, чтобы выполнялось одно из нескольких условий - используется OR.
Если необходимо, чтобы данные выводились, когда условие не выполняется - используется NOT.

Ознакомится ближе с AND, OR, NOT и попробовать как работают можно по ссылке.

Операторы IN и LIKE - это операторы сравнения в условии WHERE.

  • IN позволяет делать выборку, когда есть несколько значений, например:
    SELECT SKU_ID, ITEM_CODE FROM PRODUCTS WHERE SKU_ID in (2,4,8)
    Этот запрос выведет только те SKU, SKU_ID которых равен 2, 4 или 8.
    Ознакомится ближе с IN и попробовать как работает можно по ссылке.

    LIKE позволяет искать заданный шаблон в данных из колонки, например:
    SELECT SKU_ID, ARTICLE_NAME FROM PRODUCTS WHERE ARTICLE_NAME like (%Коньяк%)
    Этот запрос выведет те SKU, в названии которых есть слово "Коньяк".
    Ознакомится ближе с LIKE и попробовать как работает можно по ссылке.

Также в WHERE можно работать с колонками, у которых есть значения NULL (поле в котором нету значения). При работе с NULL не работают стандартные операторы WHERE. Нужно использовать операторы IS NULL и IS NOT NULL. Ознакомится ближе с IS NULL и IS NOT NULL и попробовать как работает можно по ссылке.

ORDER BY

Команда ORDER BY позволяет сортировать вывод данных по определенным правилам.

SELECT column1, column2, ...
FROM table_name
WHERE condition
ORDER_BY column1 asc/desc

Ознакомится ближе с ORDER BY и попробовать как работает можно по ссылке.

JOIN

Команда JOIN используется после команды FROM и применяется для вывода в запросе колонок из разных таблиц, которые связаны между собой. Так например, если есть таблица PRODUCTS с колонками SKU_ID, GROUP_ID и есть таблица GROUPS из колонками GROUP_ID и GROUP_NAME, JOIN позволит нам выбрать данные SKU_ID и GROUP_NAME из разных таблиц, при этом связать их по GROUP_ID.

Существует несколько видов JOIN:

  • (INNER) JOIN - можно использовать как с приставкой INNER так и без - выводит только те записи, которые имеют совпадающие значения в обеих таблицах;

  • LEFT JOIN - выводит все записи из левой таблицы (которая указана в FROM) и соответствующие записи из правой таблицы (которая указана в JOIN);

  • RIGHT JOIN - выводит все записи из левой таблицы (которая указана в JOIN) и соответствующие записи из правой таблицы (которая указана в FROM);

  • FULL JOIN - выводит все записи, если есть совпадение в левой или правой таблице;

Ознакомится ближе с понятием JOIN и попробовать как работает можно по ссылке.

Более детально изучить и попробовать каждый тип из JOIN можно по ссылкам: (INNER) JOIN, LEFT JOIN, RIGHT JOIN, FULL JOIN.

GROUP BY

Команда GROUP BY используется после команды WHERE и применяется для группирования данных по похожести. Так например можно сгруппировать все товары, у которых одинаковый код. Используется, если в запросе после SELECT есть агрегирующие функции - такие как COUNT, MAX, MIN, SUM, AVG и тд.

SELECT column1, sum(column2)
FROM table_name
WHERE condition
GROUP BY column1
ORDER_BY column1 asc/desc

Хороший пример использования GROUP BY в случае, если необходимо вывести например продажи за 4 недели (c 10 по 13 неделю 2019 года) в разрезе выбранного СКУ для двух Магазинов.
В таблице SALES_SKU продажи разбиты по неделям, нам нужно просуммировать продажи за 4 недели, чтобы получить продажи за 4 недели. Для такого случая запрос будет выглядеть следующим образом:

SELECT sku_id, store_id, sum(sales_volume) vol
FROM sales_sku
WHERE sku_id = 93 and week between 201910 and 201913 and store_id in (1,2)
GROUP BY sku_id, store_id
ORDER_BY vol asc

Результат выполнения такого запроса следующий:

...

Важно, что GROUP BY нужно указывать не только по SKU_ID, но также и по STORE_ID, так как эти два поля не используются в функции агрегации. И если выбрать только GROUP BY SKU_ID, то система выдаст ошибку, что STORE_ID не применен ни в GROUP BY ни в любой другой агрегирующей функции.

Ознакомится ближе с GROUP_BY и попробовать как работает можно по ссылке.

Создание отчета

После нажатия "Новый" в окне выбора отчета откроется конструктор нового отчета:

...

В конструкторе отчета есть три блока:

  • Скрипт, категория - блок в котором прописывается сам SQL запрос. Описан в разделе Работа с запросом;

    Таблица - блок в котором добавляются и настраиваются колонки отчета. Описан в разделе Работа с колонками;

    Параметры - блок в котором настраиваются изменяемые параметры для запуска отчета. Описан в разделе Работа с параметрами;

Работа с запросами

В этом блоке пользователь прописывает sql запрос, который должен будет выгрузить данные с таблиц в БД. Запросы пишутся на языке SQL. Для написания запросов необходимо иметь базовый навык программирования на SQL. Для получения базового навыка есть множество вводных курсов по SQL в интернете. Выучить SQL на базовом уровне можно в кратчайшие сроки (до 1 дня).

Базовые запросы, необходимые для создания базовых отчетов описаны в разделе Базовые SQL запросы.

В этом блоке документации описаны возможны действия с уже написанным блоком sql кода, работа с базовыми запросами, которые необходимы для создания базовых отчетов описана в разделе Базовые SQL запросы.

Код SQL запроса вводится в блоке "Скрипт, Категория:":

...

После того, как код скрипта написан с ним возможны следующие операции:

  • Запуск для проверки - для запуска отчета необходимо нажать кнопку ► . После нажатия кнопки начнется выполнения скрипта, оно может занять от нескольких секунд до минут, в зависимости от сложности и объема данных, которые выгружаются. Если компилятор кода увидит ошибку в коде - он её выведет внизу в красном блоке:

...

  • Если ошибок нету - внизу окна появится сообщение, что отчет загружается, и по окончании загрузки откроется окно с результатом запроса. Если запрос теоретически может выводить более 10000 тыс строк, желательно для его проверки использовать ограничения TOP 1000 или TOP 10000 после команды SELECT;

  • Остановка отчета - если отчет очень долго грузится, или же вы просто решили остановить выполнения - это можно сделать нажав на ⬜️. Эта кнопка становится красной и активной, когда запущено выполнение отчета.

  • Перенос выбранных в SELECT полей в колонки отчета. Колонки в отчет добавляются всегда с запроса. Для добавления колонок необходимо нажать кнопку ⬆️ После нажатия система сама определит колонки и их названия и добавит их к отчету:

...

Также эти колонки система выведет в блоке "Таблица", где вы сможете их настроить. Настройка колонок описана в разделе "Работа с колонками". Система автоматически добавляет все колонки. Ненужные удаляются нажатием на ❎. Позже их можно будет добавить с блока "Таблица".

  • Перенос параметров отчета в поле "Параметры" для настройки. Для переноса параметров необходимо нажать ➡️. После нажатия система сама определит что является параметрами и перенесет их названия в поле "Параметры". Не перенесенные параметры отображаются в редакторе sql запроса красным цветом, а перенесенные - зеленым. Каждый параметр необходимо настроить, как их настраивать и в каких форматах могут быть параметры в коде sql запроса описано в блоке "Работа с параметрами.

Работа с колонками

Все поля выбранные через SELECT в sql запросе отображаются в двух местах - сверху над конструктором и в блоке "Таблица":

...

Изначально все поля автоматически добавляются в отчет после нажатия кнопки ⬆️ в окне sql запроса, и отображаются сверху над конструктором и в блоке "Таблица". После удаления любого поля, его можно потом добавить обратно нажав на + возле его названия в блоке "Таблицы".Также можно менять очередность отображения полей - просто перетаскивая их названия в верхнем блоке. Также можно менять и размер колонок - растягивая их. Вид колонок в верхнем блоке полностью отвечает тому, как они отобразятся и в отчете.

Для изменения параметров поля необходимо нажать на его название - после этого откроется окно со следующими параметрами:

...

  • Style All - редактирования общего стиля отчета. Процесс аналогичен редактированию в любом другом текстовом редакторе;

  • Expand by - детально это поле описано в разделе Extend By и Group By;

    Group by - детально это поле описано в разделе Extend By и Group By;

  • Название - пользователь задает как будет называться эта колонка в отчете;

  • Код поля - указывает какие данные тянуть в колонку. Например есть запрос:
    SELECT SKU_ID SKU, STORE_ID STORE FROM SALES_SKU
    Если в настройках колонки SKU поставить код поля STORE, то в отчете в колонке SKU будут отображаться данные из колонки STORE. Но это возможно только если отображается одна колонка SKU, если отображаются колонки и SKU и STORE - тогда добавить код поля не получится.
    Нельзя добавлять код поля на то же поле.

  • Тип данных - выбор какой тип данных должен отображаться в поле. Поддерживаются следующие типы данных:

    • Текст - для текстовых полей - например "Название товара";

    • Число - для числовых полей - например "Продажи в штуках";

    • Дата - для полей с любым форматом даты - например "Неделя продаж" или "Дата продажи";

  • Формат - это поле появляется если выбрать тип данных "Число" или "Дата".

  • Ссылка - позволяет добавить ссылку на другую страницу, данные или что то еще. Например есть запрос:
    SELECT SKU_ID SKU, SITE_LINK LINK FROM MONITORING
    Колонка SKU выводит кода товаров, а колонка LINK ссылки на сайт. В этом случае если в настройках колонки SKU выбрать в поле "Ссылка" ссылку на LINK - то потом в отчете при нажатии на номер в колонке SKU будет открываться ссылка из колонки LINK.
    Ссылку можно добавлять только на другие колонки;

  • Ширина - пользователь может ограничить возможною ширину поля в отчете. Значение нужно вводить в пикселях. Если ширина auto, то поле будет растянуто до размеров текста.

  • Style Сell - редактирование отдельного стиля для отображения информации в отчете. Процесс аналогичен редактированию в любом другом текстовом редакторе;

Extend By и Group By

Эти два поля настройки колонки всегда задаются вместе. Эти параметры позволяют реализовать кросс-колонки - когда в одной колонке отображаются множественные данные из других колонок.

Например это позволяет вывести данные о продажах товара за несколько недель в одной строке, при этом не добавляя вручную отдельную колонку для каждой недели. Более детально этот функционал будет объяснен в примере ниже.

  • Пользователь создал запрос для вывода продаж на первой недели за последние 5 лет для выбранного товара 56 по всем магазинам (Магазин 1 и Магазин 2):

...

  • В результате он получил следующий отчет:

...

Можно увидеть, что отчет вывел 10 строк, при этом в не очень удобном формате. Намного удобней было бы, если бы все недели и продажи отображались в одной строке с товаром, тогда было бы только две строки, для каждого магазина. Вот в таком виде:

...

Для таких трансформаций необходимо пользоваться Expand By. Для начала необходимо убрать из отображения колонку, данные из которой необходимо будет развернуть и вставить в другую колонку. В этом примере - это колонка с неделями - WEEK WK. Поэтому необходимо сверху в строке колонок нажать на ❎ возле колонки WEEK;

Следующий шаг - нажать на ⬜️ возле колонки в которой необходимо отобразить другую колонку. В нашем случае это колонки Sales и Stock - поэтому нажимаем на кнопку возле обеих колонок - после нажатия отобразится какая колонка должна отображаться внутри - в нашем случае это WK (Week);

...

  • После этого WK также отображается в поле Expand By в настройках соответствующих колонок. Для Expand by можно использовать любые колонки, которые не отображаются в отчете, но при этом есть в запросе. Дальше необходимо настроить по какой колонке будут группироваться данные. В этом примере необходимо, чтобы данные группировались по магазинам - то есть в поле Group by необходимо выбрать STR (название колонки, которая вытягивает данные по магазинам в sql запросе). Выбирать Group by можно только для одной колонки, в другие колонки с Expand by этот выбор подтянется автоматически.

...

После завершения всех настроек можно нажать на ▶️ и увидеть как отображаются данные:

...

Работа с параметрами

Параметры - это величины, которые пользователь выбирает во время запуска отчета. Это позволяет выбирать только те данные, которые соответствуют критериям пользователя.

Параметры автоматически переносятся с кода в sql редакторе в блок "Параметры" после нажатия на кнопку ▶️. После того как параметры появились в блоке "Параметры" их можно настроить.

Параметры бывают двух типов:

  • :parameter - такие параметры передают одно конкретное значение и в коде их нужно указывать как :
    where variable = :parameter;

    [parameter_list] - такие параметры передают набор значений и в коде их нужно указывать как :
    where variable [parameter_list];

...

Например, если вам необходимо передать число "5" как параметр вы используете формат :parameter после знака равно. В результате после запуска отчета параметр сработает в коде как:
where value = 5.

Если необходимо передать набор - например (1,3,8), тогда вы используете формат [parameter_list] без знака равно. В результате после запуска отчета параметр сработает в коде как:
where value in (1,3,8).

Названия параметров можно использовать любые удобные, главное использовать правильный формат.

Для настройки параметра необходимо нажать на название параметра в блоке "Параметры". После нажатия откроется окно со следующими настройками параметра:

...

  • ID - идентификатор параметра - он подтягивается автоматически в соответствии с полем, к которому применяется, он не может изменятся;

  • Название - название параметра - должно быть равно названию параметра в коде;

  • Показывать - название параметра, которое будет отображаться при запуске отчета;

  • Тип - выбор типа параметра - очень важно указать правильный тип, для корректного срабатывания параметра и избежания ошибок. Поддерживаются следующие типы параметров:

    • Текст - параметр будет передавать текстовое значение, может использоваться только с форматом параметра :parameter;

    • Число - параметр будет передавать числовое значение, может использоваться только с форматом параметра :parameter;

    • Дата - параметр будет передавать дату в формате ГГГГ-MM-ДД, может использоваться только с форматом параметра :parameter;

    • Неделя - параметр будет передавать дату в формате ISO неделя - ГГГГНН, может использоваться только с форматом параметра :parameter;

    • Месяц - параметр будет передавать дату в формате ISO месяц - ГГГГММ, может использоваться только с форматом параметра :parameter;

    • Перечень - параметр будет передавать набор значений в любом формате. Используется если необходимо передавать не одно значение, а несколько. Например (1, 3, 8) или (рц, магазин, склад) или (202015, 202025). Может использоваться только с форматом параметра [parameter_list];

    • Список - параметр будет передавать набор значений выбранных специальным запросом, который указывается в поле "Запрос". Может использоваться только с форматом параметра :parameter;

  • Min - минимальное значения параметра. Может использоваться для чисел, дат, недель, месяцев;

  • Max - максимальное значения параметра. Может использоваться для чисел, дат, недель, месяцев;

  • Запрос - заполняется только для формата "Список". Для отображения возможных запросов необходимо ввести в поле текст 'select', доступные запросы автоматически появятся списком. При запуске отчета информация подтянутая с запроса будет отображаться выпадающим списком при выборе значения параметра. Сейчас автоматически поддерживаются следующие запросы (но также можно создавать дополнительные):

    • report_select_stores - используется для выбора магазина из списка для значения параметра;

    • report_select_groups - используется для выбора группы из списка для значения параметра;

    • report_select_managers - используется для выбора менеджера из списка для значения параметра;

    • report_select_contracts - используется для выбора контракта из списка для значения параметра;

    • report_select_suppliers - используется для выбора поставщика из списка для значения параметра;

    • report_select_whs - используется для выбора склада из списка для значения параметра;

    • report_select_fcst - используется для выбора номера прогноза из списка для значения параметра;

  • Индекс - может заводится только для параметров типа Дата, Неделя, Месяц. Индекс позволяет автоматически отнимать или добавлять к параметру значение.
    Так если поставить параметр Дата и индекс -10, то за умолчанием при запуске отчета будет отображаться значение даты на 10 дней меньше заданной даты по умолчанию в поле "Значение". Если поле значение оставить пустым - дата будет отниматься от текущей;

  • Значение - вводится значение по умолчанию, которое будет отображаться при выборе параметров перед запуском отчета.

Стандартные кейсы применения параметров в sql запросе

Ниже приведены варианты задания параметров в sql запросе для разных типов данных:

where sku_id = :sku_id - применяется для выбора конкретного ску по коду Майсейлз. При запуске отчета в параметр передается один номер ску. Тип параметра должен быть "Число";
where sku_id [sku_id_list] - применяется для выбора нескольких ску по коду Майсейлз. При запуске отчета в параметр передается набор номеров ску через запятую. Тип параметра должен быть "Перечень";
where item_code = :item_code - применяется для выбора конкретного ску по коду УПП. При запуске отчета в параметр передается один текстовый код ску. Тип параметра должен быть "Текст";
where item_code [item_code_list] - применяется для выбора нескольких ску по коду УПП. При запуске отчета в параметр передается набор текстовых кодов ску УПП через запятую. Тип параметра должен быть "Перечень";
where ((sku_id = :sku_id) or (:sku_id = 0)) - сложный параметр - используется для возможности выводить все ску или один конкретный. В этом случае чтобы вывести все ску проставляется значение 0 для параметра при запуске отчета, или же номер конкретного ску для вывода одного ску;

Выше приведенные примеры задания параметров в коде актуальны для всех типов параметров и полей.

Работа с базой данных

Для работы с конструктором отчетов очень важно понимать структуру базы данных, чтобы понимать какие данные получать из каких таблиц, какие есть названия полей, как связать данные с разных таблиц.

Вызвать структуру базы можно нажав на 💬 и выбрав "База данных". После выбора откроется окно, в которой будут отображаться все таблицы и все поля в них.

...

В окне базы данных работает поиск, который позволяет найти нужные таблицы и колонки.

Внедрение MySales

Процесс внедрения MySales можно технически разделить на следующие этапы:

  • Подготовка хранилища и загрузка исторических данных

  • Загрузка исторических данных промо

  • Обучение системы прогнозированию промо

  • Тестирование/верификация прогнозов

  • Настройка постоянно действующей интеграции

  • Настройка и запуск автозаказа по пилотной группе

  • Развертывание автозаказа по всем остальным группам

Временные рамки внедрения зависят от специфики заказчика и объемов работ, которые планируются. Так при внедрении только базового модуля можно выполнить весь объем работ и за месяц, но если подключать еще все остальные модули, то расчет приблизительного времени внедрения может быть сделан только под каждого заказчика отдельно.

В этом ознакомительном мануале расписано все этапы внедрения MySales в случае подключения всех модулей. Если клиент подключает только часть модулей, процесс внедрения будет отличатся только временем выполнения и меньшем количеством необходимых операций. Логика останется та же самая.

Ниже более детально рассмотрены все этапы процесса внедрения системы MySales.

Подготовка хранилища и загрузка исторических данных

Подготовка данных - это первый и наверное самый важный этап в процессе внедрения. На этом этапе клиент готовит все необходимые исторические данные, готовит у себя сервер и базу данных и предоставляет их команде внедрения MySales для валидации.

Обычно подготовкой данных занимается ИТ команда заказчика, согласно спецификации, предоставленной исполнителем. Для этого создается хранилище этих данных в виде схемы в СУБД заказчика, где исполнитель создает необходимую структуру таблиц. Для СУБД выделяются аппаратные/облачные ресурсы, а также выделяется аппаратный/облачный сервер для установки ПО MySales. Технические требования к серверу и БД определяются во время согласования проекта и могут отличатся в зависимости от подключаемых модулей и объема данных (кол-ва комбинаций SKU/магазин). Далее, команда ИТ заказчика загружает в это хранилище данные, согласно спецификации. Данные выгружаются из имеющейся у заказчика системы или нескольких систем, где такая информация имеется.

В рамках этого этапа подготавливаются следующие данные

  • Справочник товаров и товарных групп

  • Справочник магазинов и регионов

  • История продаж в штуках и в деньгах, история остатков, приходов, списаний, по неделям за последние 3 года

  • История продаж в штуках и в деньгах, история остатков, приходов, списаний, по дням за последний год

  • История розничных цен

  • Последние закупочные цены, если планируется использовать функционал модуля ценообразования

  • Штрих-кода по товарам, если планируется использовать функционал модуля ценообразования

Вся необходимая информация по подготовке данных для этих двух модулей предоставлены в специально созданном MySales файле. Там есть описания всех таблиц, которые необходимо создать в подготовленной базе данных, подробное описание каждого поля, необходимая периодичность обновления этих данных, а также запросы для обновления БД созданной для MySales для упрощения работы ИТ команды заказчика.

Так как данные необходимо постоянно обновлять, то ИТ команде клиента целесообразно уже на этапе выгрузки данных в БД MySales настроить их автоматическое обновление.

Для максимально эффективной работы системы мы рекомендуем выгружать данные о продажах за последние три года.

С файлом спецификации загрузки данных можно ознакомится по ссылке.

Все подготовленные данные обязательно проходят проверку и валидацию командой MySales.

Загрузка исторических данных промо

В рамках этого этапа заказчик подготавливает исторические данные промо для их загрузки в MySales. Минимум, по промо рекомендуется выгружать историю за последний год, однако 2-3 года все же более предпочтительно.

Должна быть подготовлена следующая информация:

  • Дата начала и дата завершения промо

  • Перечень позиций, участвующих в промо

  • Перечень магазинов, участвующих в промо

  • Тип промо (TPR - временное снижение цены, MMK - скидка, предоставляемая на кассе)

  • Тип механики для промо с типом MMK (1+1=3, купи 1 получи скидку на второй и т.п.)

  • Размер скидки для промо в процентах, либо индивидуальная скидка для каждой позиции

  • Рекомендуется также указывать регулярную розничную цену, однако, если эта информация может быть заполнена автоматически, на основании истории, это можно не делать

Вся необходимая информация по подготовке данных для Промо модуля предоставлена в специально созданном MySales файле. В отличии от базового модуля, в случае с промо, заказчик только готовит исторические промо данные в формате excel файла. Настройка БД и загрузка необходимых для работы промо данных в систему производится командой внедрения MySales.

С файлом спецификации загрузки данных промо можно ознакомится по ссылке.

После заполнения файла данными о исторических промо команда MySales приступает к верификации этих данных, в случае нахождения ошибок, команда внедрения сообщает о них клиенту и просит исправить.

Обучение системы прогнозированию промо

Ключевой целью данного этапа является выполнение наиболее оптимальных настроек системы для прогнозирования промо, а также пересчет всех промо в истории и обучение алгоритма прогнозирования промо-прироста (Дуси). Как правило, этот процесс носит итерационный характер, который начинается после того, как все исторические промо загружены в систему:

  • Настройка параметров системы в части прогнозирования промо

  • Пересчет всех промо в истории

  • Обучение Дуси

  • Тестирование прогнозов и анализ точности прогнозирования промо

  • Повторения предыдущих пунктов для получения лучших результатов прогнозирования

Для начала использования системы, обычно, достаточно 3х итераций, однако более детальные и тонкие настройки могут проводится и впоследствии.

Тестирование/верификация прогнозов

Процесс тестирования/верификации прогнозов - это процесс непрерывного совершенствования. В рамках проекта рекомендуется всегда тестировать как регулярные так и промо-прогнозы. Тестирование прогнозов рекомендуется делать на уровне SKU-вся сеть-неделя, с целью снижения объема трудозатрат, который растет многократно, если спускаться на уровень SKU-магазин-неделя.

Для максимальной прозрачности при внедрении, мы проверяем качество прогнозов, которые строились раньше у клиента, и прогнозов построенных с использованием MySales. В целом, методология сравнения прогнозов выглядит следующим образом:

  • Клиент подготавливает свои прогнозы в разрезе SKU-вся сеть-неделя, на будущую неделю или больше и выгружает в файл

  • MySales также строит прогнозы на аналогичный промежуток времени и выгружает прогнозы в этом же разрезе в файл

  • Стороны обмениваются архивами с паролем в которых находятся результаты прогнозов

  • По прошествии времени, пароли открываются и стороны анализируют точность прогноза сравнивая его с реальными продажами

Настройка постоянно действующей интеграции

Этот этап - очень важен для стабильной работы MySales в связке с системой заказчика в будущем. При настройке постоянной интеграции стоит выделить 2 основных блока:

  • Интеграция для базового модуля

  • Интеграция для автозаказа

Интеграция базового модуля включает регулярное обновление и дополнение следующих данных:

  • Справочник товаров и товарных групп

  • Справочник магазинов и регионов

  • История продаж в штуках и в деньгах, история остатков, приходов, списаний, по неделям за последние 3 года

  • История продаж в штуках и в деньгах, история остатков, приходов, списаний, по дням за последний год

  • История розничных цен

  • Последние закупочные цены, если планируется использовать функционал модуля ценообразования

  • Штрих-кода по товарам, если планируется использовать функционал модуля ценообразования

Интеграция для автозаказа включает регулярное обновление и дополнение следующих данных:

  • Справочника поставщиков и контрактов

  • Презентационного запаса

  • Кратности заказов магазинов и склада, минимального заказа (возможен как вариант MySales - система заказчика, так из системы заказчика в MySales)

  • Привязок источников заказа для каждой комбинации SKU/магазин и SKU/склад в привязке к поставщику и контракту

  • Последних остатков товаров в магазине и на складе

  • Поступления товаров по заказам магазинов и склада

Настройка и запуск автозаказа по пилотной группе

После того, как все предыдущие этапы выполнены, следующий этап - настройка диаграмм для пилотной группы товаров и перевод их на автозаказ MySales.

Важно, что перевод выполняется именно группа за группой по всем магазинам, а не магазин за магазином по широкому ассортименту. Это связано с необходимостью проверять параметры заказа, включая кратность, минимальный заказ, презентационный запас, а также привязки к поставщикам/контрактам.

Для того, чтобы перевести первую группу на автозаказ, необходимо также настроить регулярный запуск пакетной обработки по пересчету заказов.

После того, как эти действия выполнены, нужно проверить корректную автоматическую загрузку заказов из MySales в систему заказчика, а также их отправку по email/EDI. Также важно проверить, что в MySales автоматически корректно загружаются приходы по заказам.

Первое время, все заказы по пилотной группе рекомендуется проверять, и, в случае наличия замечаний, корректировать параметры диаграмм. Также важно анализировать страховой запас и управлять коэффициентами страхового запаса на уровне SKU-вся сеть, проставлять аналоги для новых позиций и новых магазинов

Развертывание автозаказа по всем остальным группам

После того, как пилотная группа успешно переведена и процесс автоматического заказа отлажен, остается только подключать все больше и больше групп на автоматический заказ MySales. Для этого необходимо всего лишь настраивать новые диаграммы и проверять заказы, создаваемые в первое время, с целью корректировки параметров диаграммы и коэффициентов страхового запаса. А также, не забывать указывать аналоги по новым магазинам/товарам.

Вопросы/ответы

Базовый модуль