Страницы: 1
RSS
Определение "новый"/"повторный" заказ с помощью DAX.
 
Кейс следующий, нужно с помощью DAX создать в PowerPivot КОЛОНКУ, которая будет определять статус для записи-заказа, новый это заказ или старый. Алгоритм определения статуса заказа следующий:
1) Если идентификатор клиента встречался в предыдущих МЕСЯЦАХ, то заказ считается "Повторным".
2) Иначе заказ считается "Новым".

Не очень хорошо пока ориентируюсь в DAX функциях, тыкаюсь с FIND, SEARCH, пытаюсь получить отфильтрованную таблицу за предыдущий срок, но решения пока не выходит. Может опытные форумчане смогут подсобить?

Пример того, что должно выходить:
Идентификатор клиентаДата заказа Статус заказа
155501.03.2018Повторный
277702.02.2018 Новый
355502.02.2018Повторный
433302.02.2018Повторный
555515.01.2018Новый
6333 08.01.2018Новый
7333 04.01.2018Новый
8 555 01.01.2018 Новый
 
Неплохо прикладывать пример файла, конечно
Код
=
IF (
    COUNTROWS (
        FILTER (
            ALL ( 'Table'[Дата заказа]; 'Table'[Идентификатор клиента] );
            'Table'[Идентификатор клиента] = EARLIER ( 'Table'[Идентификатор клиента] )
                && 'Table'[Дата заказа] <= EOMONTH ( EARLIER ( 'Table'[Дата заказа] ); -1 )
        )
    );
    "Повторный";
    "Новый"
)
F1 творит чудеса
 
Максим Зеленский,
Огромное спасибо, то что нужно! Про файл - учту.
А может быть вы знаете хороший учебник/сайт/форум по DAX с разборами, примерами? А то кроме официального справочника и пары разрозненных статей пока ничего толкового не нашёл.
 
Вот. фактически настольная книга :) Правда на буржуйском. И здесь их полное собрание сочинений.
Изменено: PooHkrd - 19.06.2018 10:38:10
Вот горшок пустой, он предмет простой...
 
если именно учебник, по DAX для Excel, то рекомендую вот это https://amzn.to/2lfK8ui
есть версия для Power BI: https://amzn.to/2M5tcCj

или их же здесь: https://www.mrexcel.com/store/ - там что-то даже подешевле будет
F1 творит чудеса
 
PooHkrd, Максим Зеленский,
Спасибо.
 
Коллеги, подскажите подойдет ли данная формула для Power BI. Стоит аналогичная задача разделить новых клиентов и повторных.
Цитата
Максим Зеленский написал:
123456789101112=IF (    COUNTROWS (        FILTER (            ALL ( 'Table'[Дата заказа]; 'Table'[Идентификатор клиента] );            'Table'[Идентификатор клиента] = EARLIER ( 'Table'[Идентификатор клиента] )                && 'Table'[Дата заказа] <= EOMONTH ( EARLIER ( 'Table'[Дата заказа] ); -1 )        )    );    "Повторный";    "Новый"
 
А почему нет? Вы пробовали?
Вот горшок пустой, он предмет простой...
 
Цитата
PooHkrd написал:
А почему нет? Вы пробовали?
Получилось, но почему то не с первого раза ) Спасибо!
Страницы: 1
Наверх