初投稿。よく理解できていないこと書いている可能性があるので、お気づきの点はご指摘ください。
#要件
一つのファクトテーブルで受注日と売上日をもつテーブルがあった場合、
受注日と売上日をベースに月ごとに集計したり、前年比を出したい要件がある。
#課題
当然カレンダーテーブルを用意しリレーションを張るのがセオリーだが、
POWERBIのモデリング上リレーションは1本しか張れないため、カレンダーテーブルのキーを受注日に張るか、売上日に張るかのどちらかになってしまう。
そもそも2本張れたとしても、たぶん求める結果にならないような気がする。
じゃあどうすればいい?
#2つの解決法
##1) カレンダーテーブルを2つ用意する方法
マスタとなるカレンダーテーブルをNEWTABLEで複製(受注カレンダー=(出荷)カレンダー)し、
受注日、売上日にリレーションを張る。
二つの日付ディメンションでフィルターをかけることができるが、受注日、売上日がand条件になり使う要件が限られる。
##2) DAXのUSERERATIONSHIP関数を使用する方法
売上金額UR = CALCULATE(SUM('受注テーブル'[受注金額]),USERELATIONSHIP('受注カレンダー'[年月日],'受注テーブル'[売上日]))
このままだとエラーが出てしまうので、リレーションを追加する
今度はちゃんと表示された。
##気づき
USERERATIONSHIPの使い方
モデリングでのリレーションで点線で表示されるアクティブでないリレーションはこんな使い方があるんだね。
Special Thanks to Guy in Cube
https://www.youtube.com/watch?v=2BxaUXlx3K4