「Power BIで選択した月から、過去Nカ月分のデータを表示する方法」をネットで検索すると、「切断された日付テーブル(リレーションシップのない日付テーブル)」をスライサーに利用する方法がよく紹介されています。
「リレーションシップのない日付テーブル」で選択した「月」の数字によって、図表の軸の「月」の数字をフィルターするという方法です。
しかし、「リレーションシップのない日付テーブル」を使わなくても、DATESINPERIOD関数を使えば「選択した月から、過去Nカ月分のデータを表示する」ことが可能です。
ただし、図表の日付軸にファクトテーブルの日付列を設定する必要があったりします。
DAXもDATESINPERIOD関数を使った場合は、下記のような簡単な内容です。
Measure (last n months) =
CALCULATE (
SUM ( Table[Sales] ),
DATESINPERIOD ( ‘Date'[Date], MAX ( ‘Date'[Date] ), – [N Value], MONTH )
)
「リレーションシップのない日付テーブル」など作成せずに済むので、ファクトテーブルの日付列と日付テーブルの日付を利用して試してみる価値はあります。
ネット上には、「ベストプラクティス」ではない事例が数多くあるようです。
Power BIは日本語の情報が少なく、ネット上の「ベストでない情報」に翻弄されることがよくあるようです。
私もDATESINPERIOD関数が役立つことに気づくのにかなり時間がかかりました。
0 件のコメント:
コメントを投稿