Зачем нужен фильтр по первому действию заказа

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

Учитываем эти факторы при решении задач.

Задача 1.
Найти клиентов, совершивших заказ в феврале 2021 года.

Ограничивать заказы по времени будем через действие заказа.
Встает вопрос: по которому действию их отбирать?

Допустим, есть заказ, который был оформлен 28 февраля, оплачен в тот же день, доставлен 5 апреля:

Снимок экрана 2021-04-07 в 18.40.20.png

Если 1 апреля снять отчет по последнему состоянию, заказ попадет в доходность за февраль.
Если же снять тот же отчет 6 апреля, заказ попадет в доходность по апрелю.

Так как последнее действие может меняться в течение времени, поиск по текущему состоянию не подходит.

В отличие от последнего, первое действие — всегда одно и неизменно.
Поэтому поиск осуществляем именно по нему:

Снимок экрана 2023-07-14 в 15.40.05.png
Фильтр читается так: найти клиентов, которые совершили заказ в феврале 2021 года, при этом заказ в одном из статусов: оформлено/оплачено/доставлено.
Про статусы можно почитать в статье.


По тому же принципу ищем заказы.

Задача 2.
Найти заказы, совершенные в марте.

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

Снимок экрана 2021-04-07 в 18.51.30.png

Узнать больше о работе фильтров можно в курсе «Фильтры Mindbox».

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


[Урок по поиску заказов:](https://stepik.org/lesson/838631/step/1?unit=842295){target="_blank"}
Подборка сопутствующих товаров к заказу - как предлагать дополнительные товары к уже купленным.