2017-09-15 8 views
0

저는 Power BI (DAX 패턴 2015)에서 아래 DAX 코드를 사용 했으므로 새로운 고객을 확보 할 수 있습니다.

고객은 Product_1 또는 Product_2를 사용하는 경우 NEW로 계산됩니다. 이제는 같은 제품을 만들고 싶지만 이번에는 각 제품과 관련이 있습니다. 따라서 고객이 Product_1을 처음 사용하기 시작한 경우 (Product_2와 상관없이) 새로운 고객 PRODUCT_1 측정 값이됩니다.

데이터 모델 FACT 테이블에서 제품 1과 2가있는 열이 있습니다. 한 달에 제품 2 만 사용 된 경우 제품 1은 같은 행에서 비어 있고 그 반대의 경우도 마찬가지입니다. 필터 (MAIN; MAIN ([Product_1]> 0)) 을 추가하려했지만 이상한 결과가 나타납니다. 새로운 고객은 한 번만 계산되는 것이 아니라 일년 내내 반복되었습니다.행 필터링 후 신규 고객

Absolute_NEW_Customers(PRODUCT_1) = 
COUNTROWS ( 
     FILTER(
       ADDCOLUMNS(VALUES(MAIN[Customer No]);"PreviousSales"; 
         CALCULATE(COUNTROWS(MAIN);FILTER(ALL('DateKey');DateKey[Date]<MIN('DateKey'[Date])))); 
     [PreviousSales]=0)) 

답변

1

나는 결국 도움이되는 기능을 발견했다. "CALCULATETABLE" 함수를 사용하여 전체 테이블을 필터링해야했습니다. 최종 코드는 다음과 같습니다.

Absolute_NEW_Customers(Product_1) = 
COUNTROWS ( 
FILTER(
     ADDCOLUMNS(
       CALCULATETABLE(VALUES(MAIN[Customer No]);FILTER(MAIN;NOT ISBLANK(MAIN[Product_1])));"PreviousSales"; 
         CALCULATE(COUNTROWS(CALCULATETABLE(MAIN;FILTER(MAIN;NOT ISBLANK(MAIN[Product_1]))));FILTER(ALL('DateKey');DateKey[Date]<MIN('DateKey'[Date])))); 
     [PreviousSales]=0))