Для данного выбора года и месяца в отчете должен отображаться список клиентов, классифицированных в 3 сегментах ...
Отток - клиент, у которого были продажи в предыдущем году для выбора диапазона дат, но нев текущем году
Новый - клиент, у которого были продажи в текущем году для выбора диапазона дат, но не в предыдущем году
Кроссовер - клиент, у которого были продажи в предыдущем и текущем году для выбора диапазона дат
В отчете также должен отображаться итоговый счет всех уникальных клиентов, принадлежащих к каждому отдельному сегменту ...
Образец ...
Сводка: дляДля каждого сегмента я должен увидеть количество клиентов, которые входят в каждый сегмент для выбранного диапазона дат
Churn New Crossover
Изображение рабочих деталей в PowerBI с использованиемПеременные создания, описанные выше:
Для этого я создал совокупный итог текущего и предыдущего года, который корректируется на основе выбранного диапазона дат
Cumulative_CY =
SUMX(
VALUES(CustomerDta[BillToCustomerID]),
CALCULATE( SUM(CustomerDta[CY]),
FILTER(
ALLSELECTED(CustomerDta),
CustomerDta[Date]<= MAX(CustomerDta[Date]))))
Cumulative_PY =
SUMX(
VALUES(CustomerDta[BillToCustomerID]),
CALCULATE( SUM(CustomerDta[PY]),
FILTER(
ALLSELECTED(CustomerDta),
CustomerDta[Date]<= MAX(CustomerDta[Date]))))
Затем я создал переменную для каждого сегмента, который мне нужно отслеживать ...
Churn = IF(AND([Cumm_PY] >0,[Cumm_CY]<=0),DISTINCTCOUNT(CustomerDta[BillToCustomerID]),0)
New = IF(AND([Cumm_PY] <=0,[Cumm_CY]>0),DISTINCTCOUNT(CustomerDta[BillToCustomerID]),0)
CrossOver = IF(AND([Cumm_PY] > 0,[Cumm_CY]>0),DISTINCTCOUNT(CustomerDta[BillToCustomerID]),0)
Используя то, что я описал выше, я смог создать детали отчета, как показано на прикрепленном изображении, но не смог получитьитоговая сумма рассчитывается для 3 сегментов в нижней части объекта таблицы или как отдельная визуальная переменная.Как только я удаляю идентификатор клиента, все классифицируется как кроссовер ...
Мне нужно иметь возможность сделать сумму для условной переменной, значение которой определяется как 1 или 0 на основе продаж за предыдущий годпо сравнению с текущим годом, основанным на выборе диапазона дат ...
Я попытался сделать сумму для них после того, как они были созданы ... но это не предусмотренный параметр
Churn = IF(AND([Cumm_PY] >0,[Cumm_CY]<=0),DISTINCTCOUNT(CustomerDta[BillToCustomerID]),0)
New = IF(AND([Cumm_PY] <=0,[Cumm_CY]>0),DISTINCTCOUNT(CustomerDta[BillToCustomerID]),0)
CrossOver = IF(AND([Cumm_PY] > 0,[Cumm_CY]>0),DISTINCTCOUNT(CustomerDta[BillToCustomerID]),0)