2016-10-19 15 views
0

私はデータ構造次ているすべてのフィルタオプションのための先週の売上高を計算パワーBI DAX

Date   | Category  | Sales Amount 
---------------------------------------------------- 
01-Sep-2016 | Food   | 100 
02-Sep-2016 | Food   | 120 
03-Sep-2016 | Food   | 130 
01-Sep-2016 | Electricity | 180 
02-Sep-2016 | Electricity | 60 
01-Sep-2016 | Perfumes  | 80 
02-Sep-2016 | Perfumes  | 40 

私は、私は同様テリトリーのような別の列を追加することができます。各カテゴリーの2週間の売上高を計算します未来。カテゴリを選択した場合、[日付]のみを選択しても機能しない場合は正常に機能した[次の式]を使用しました。

SalesTwoWeeksAgo = 
CALCULATE (
    SUM ('Table'[SalesAmount]), 
    FILTER (
     ALL ('Table'), 
     COUNTROWS (
      FILTER (
       'Table', 
       EARLIER ('Table'[Date]) = DATEADD ('Table'[Date], -14, DAY) 
      ) 
     ) 
    ) 
) 

上記式はアレハンドロのzuletaとリンクによって寄贈されました私はあなたの質問を理解していれば、問題はあなたが販売2を取得する必要があるので、あなたがCategory列を持っているということです

Power BI getting 2 week back same day value

+0

カテゴリ_を選択した場合、何も意味がありません。 –

+0

あなたはあなたの応答で正しく理解しています。ありがとう、それは魅力のように働いた – Janjua

答えて

0

です式で評価された現在のカテゴリ値の時間の週。 FILTER関数に追加の条件を追加して、現在のCategoryを取り、現在のDateを14日分減算すると、Sales Amountという値がSUM関数に返されます。あなたがあなたのテーブルにTerritory列を追加する場合

SalesTwoWeeksAgo = 
CALCULATE (
    SUM ('Table'[Sales Amount]), 
    FILTER (
     ALL ('Table'), 
     COUNTROWS (
      FILTER (
       'Table', 
       EARLIER ('Table'[Date]) = DATEADD ('Table'[Date], -14, DAY) 
        && 'Table'[Category] = EARLIER ('Table'[Category]) 
      ) 
     ) 
    ) 
) 

また、あなたはそうあなただけFILTER機能で条件付きの三分の一を追加する必要がDateあたり前Sales Amount二週間、CategoryTerritoryを取得する必要があるかもしれません。

SalesTwoWeeksAgo = 
CALCULATE (
    SUM ('Table'[Sales Amount]), 
    FILTER (
     ALL ('Table'), 
     COUNTROWS (
      FILTER (
       'Table', 
       EARLIER ('Table'[Date]) = DATEADD ('Table'[Date], -14, DAY) 
        && 'Table'[Category] = EARLIER ('Table'[Category]) 
        && 'Table'[Territory] = EARLIER ('Table'[Territory]) 
      ) 
     ) 
    ) 
) 

ここで提供されるソリューションはまだテストされていませんが、うまくいけば必要なものです。

これが役立つかどうか教えてください。

関連する問題