Страницы: 1
RSS
Воронка продаж в Power BI
 
Добрый день!
Прошу помочь в таком вопросе. С сайта получаю информацию в таблице вида дата создания заявки, дата изменения, текущий статус и т.д. ифно по заявке.
Историю изменения статуса я не вижу, а вижу только текущий статус. Нужно построить воронку продаж, но не могу придумать как преобразовать данные. Если вытащить на график в текущем виде то график будет не корректным, т.к. не будут учтены заявки который прошли уже определенные статусы.
Т.е. заявка, которая перешла в статус card_issued, прошла статусы new, phone, photo, processing.
Мне нужно создать сагрегированную таблицу по статусам, чтобы потом сделать график вида "Воронка", либо меру
Прошу подсказать как для new посчитать все заявки, а для например photo, только те что находятся на этапе photo + processing + card_issued?
Пример выгрузки вложил. Приветствуются варианты как и в PQ так и в DAX
Изменено: Finswimmer - 15.04.2020 19:12:49
 
У Вас нет основного критерия ID заказа, процесса, или что там у Вас.
Поэтому ничего и не получается :))
Спасибо
 
R Dmitry,есть, в пример не добавлял, просто. Но как это меняет ситуацию. Вместо ID заявки можно использовать индекс. Суть-то в том что нет лога по статусам. Для каждой заявки статус перезаписывается. Т.е. был new, стал photo и это в одном проле происходит
 
ясней не стало :((
У Вас в каждой строке отдельный заказ и финальный статус  на текущий момент?
Спасибо
 
R Dmitry,верно
 
С таким набором данных можно получить не совсем "воронку продаж" но очень близко :))
Спасибо
 
R Dmitry,я наверное не совсем понятно выразился.Суть такая: есть у заявки статус card_issued, значит она прошла все предыдущие стадии.
Т.е. new - это не просто количество со статусом new, а просто количество строк (все заявки через этот статус прошли). Если у заявки статус phone, то это количество строк, за минусом заявки new. и т.д.
 
Файл примера не смотрел, решение от R Dmitry тоже так как с телефона. Но решение простое. Создаём справочник этапов, если его нет, присваиваем каждому этапу порядковый индекс, если его нет. Создаём меру :
VAR _indexStep=MAX('ТаблицаЭтапов'[Индекс этапа])
return
CALCULATE(COUNTROWS('ТаблицаСделок'); 'ТаблицаЭтапов'[Индекс этапа]>=_indexStep)
 
StepanWolkoff,спасибо, опробую
 
StepanWolkoff,мера считается, но не корректно. В воронку выводит только последний этап и значение не корректное
Если изменить знак с больше на меньше, то выводит тоже самое, что если вывести в один график в разрезы и в значение этапы сделок
Код
Кол-во сделок = VAR _indexStep = MAX('ФАКТ (2)'[Индекс.1])
RETURN
CALCULATE(COUNTROWS('ФАКТ'); 'ФАКТ (2)'[Индекс.1]<=_indexStep)

Изменено: Finswimmer - 16.04.2020 18:41:13
 
Finswimmer, сорри забыл ALL
 
StepanWolkoff,Супер!
 
Добрый день!
Подскажите по ALL, попробовала добавить ее в код не получается(

Также выводит только одно минимальное значение

Спасибо)
 
Добрый день!

Знаю, что уже прошло много времени, но столкнулась с такой же проблемой (и нигде на различных ресурсах не смогла найти информацию по этой проблеме), и куда я только не пыталась присобачить этот ALL, о котором написано выше)))
Файл решения из этой ветки скачивался, но эксель не позволял открыть pivot - говорил, что файл поломан. То есть решение получить не удалось.

В итоге, если кому-то понадобится, то решение получилось таким:

ВОРОНКА =
VAR _indexStep=MAX('Таблица для воронки'[Индекс шага])
return
CALCULATE(COUNTROWS('Таблица с данными'),'Таблица для воронки'[Индекс шага]>=_indexStep,ALL('Таблица для воронки'[Наименование шагов воронки]))

В значения вставляем меру, в категории вставляем наименование шагов воронки.  

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

Для значений в таких графиках сделала вот такую меру:

Лиды для графиков =
VAR _indexStep=MAX('Таблица для воронки'[Индекс шага])
return
IF(COUNTROWS('Таблица для воронки')<_indexStep,CALCULATE(COUNTROWS('Таблица с данными'),'Таблица для воронки'[Индекс шага]>=_indexStep,ALL('Таблица для воронки'[Наименование шагов воронки])),COUNTROWS('Таблица с данными'))

Надеюсь, что информация будет полезна таким же искателям, как я))
Страницы: 1
Наверх