2017-12-19 42 views
2

2015年1月1日から異なる商品のデータを含む、SALE_IDで一意に識別されるオファーの数をカウントするレポートを作成しています。尋ねる時)。私は「個別」と呼ばれる簡単な指標とオファーの量をカウントしています:これは私に満足のいく結果が得られる前年度の売上高を表示する

Distinct := DISTINCTCOUNT(dOffers[Sale_ID])

、のように、私はみなさ期間のための右のカウントを受け付けております。また、前年度のオファーを次のように定義して、前年度の変化を計算しています。(dCalendarにdatekeyテーブルが含まれています)。

PY Offers := 
SUMX (
    VALUES (dCalender[YearMonthNumber]); 
    IF (
     CALCULATE (COUNTROWS (VALUES (dCalender[FullDates]))) 
      = CALCULATE (VALUES (dCalender[MonthDays])); 
     CALCULATE (
      [Distinct]; 
      ALL (dCalender); 
      FILTER (
       ALL (dCalender[YearMonthNumber]); 
       dCalender[YearMonthNumber] 
        = EARLIER (dCalender[YearMonthNumber]) - 12 
      ) 
     ); 
     CALCULATE (
      [Distinct]; 
      ALL (dCalender); 
      CALCULATETABLE (VALUES (dCalender[MonthDayNumber])); 
      FILTER (
       ALL (dCalender[YearMonthNumber]); 
       dCalender[YearMonthNumber] 
        = EARLIER (dCalender[YearMonthNumber]) - 12 
      ) 
     ) 
    ) 
) 

私が午前問題は、月の12月(ランニング月)のための前年比の変更は、今年(2017年)のための年初来の売上高を考慮し、これを比較していることです前年度(2016年および2015年)の月間売上高これは、半年から1ヶ月間のオファーとオファーを比較しているため、最後の月の比較を解釈できないようにします。

私はこの問題を解決する方法を知りたいと思います:すなわち、今年の売上高を今日まで考えてみて、昨年と2年前と全く同じ期間(2015年: 12月18日まで、idito ditoは2016年と2017年)。 SAMEPERIODLASTYEAR呼び出しは直接的な問題ではないようですが、連続した日付エラーが発生しています...

ありがとうございます!

答えて

0

あなたの記述から、私はあなたが年々比較して月々の比較をしようとしていることを理解しています。

SAMEPERIODLASTYEARのような任意のタイムインテリジェンス機能に頼らずに、あなたは、メジャーのこのバージョンを試してみたいことがあります。

PY Offers := 
SUMX(
    VALUES(dCalendar[YearMonthNumber]); 

    CALCULATE(
    VAR currDate = MAX(dCalendar[FullDates]) 
    VAR currYear = YEAR(currDate) 
    VAR currMonth = MONTH(currDate) 
    VAR currDay = DAY(currDate) 
    RETURN 
     CALCULATE(
      [Distinct]; 
      ALL(dCalendar); 
      YEAR(dCalendar[FullDates]) = currYear - 1; 
      MONTH(dCalendar[FullDates]) = currMonth; 
      DAY(dCalendar[FullDates]) <= currDay 
     ) 
    ) 
) 
関連する問題