В этом практическом уроке мы рассчитаем процент премии менеджера в зависимости от количества заказов. Научимся пользоваться оконными функциями и прописывать функцию условия.
Сегодня давайте рассмотрим один очень популярный в сфере продаж кейс – это расчет бонуса менеджеров или дополнительная скидка клиента в зависимости от количества заказов. Причем, не просто количества, а именно порядкового номера заказа. Например, за первый заказ премия 10%, за второй и третий 5%, а далее 3%.
На первый взгляд кажется, что сделать это непросто, но это не так. В этом нам помогут оконные функции и функция условия. Допустим, у нас есть уже готовый датасет или выгрузка из системы с данными о сумме продаж и фамилии менеджера.
Для начала нам потребуется создать пользовательское поле с формулой, которая будет рассчитывать порядковый номер заказа. И делать это будет именно в пределах менеджера. Тут нам поможет оконная функция накопительного итога RSUM(). Она будет накапливать порядковый номер строки, начиная с 1.
RSUM(MIN(1) WITHIN [Менеджер])
Затем прописываем условие для процента. Если номер заказа = 1, тогда скидка будет 10%, если 2 или 3, то 5%, и так далее.
IF [Номер заказа]=1 THEN 0.10
ELSEIF [Номер заказа]=2 OR [Номер заказа]=3 THEN 0.05
ELSE 0.03
END
И теперь нам останется рассчитать сумму премии в зависимости от расчситанного процента.
[Процент]*[Сумма продажи]
Готово! Но тут стоит учитывать одну особенность работы оконных функций. Они производят расчет только по видимым на экране строкам. То есть, если какие-то продажи вы спрячете фильтром, то они уже не возьмутся в расчет порядкового номера, а значит процент рассчитается иначе.
Наши курсы
Видео версию данного урока можно посмотреть тут.
Если вам понравился урок, то можете поддержать проект по кнопке ниже. Это очень поможет делать для вас больше интересных и полезных выпусков. Спасибо!
Задать вопросы и обсудить волнующие темы про аналитику данных теперь можно на нашем форуме.
Если вам понравился урок, подписывайтесь на канал или группу и ставьте лайки. А также пишите в комментариях свои кейсы или вопросы. Самые интересные мы обязательно разберем.