カスケードフィルターのイメージ
親フィルターの選択値により、子フィルターの選択肢が絞り込まれるカスケードフィルターの実装方法です。
・親フィルターで「A1」を選択した時

・親フィルターで「A2」を選択した時

・親フィルターで「A3」を選択した時

実装方法
以下のディメンションを作成します。こちらがカスケードの親になります。
Defaultサブセットも作成しておきます。

以下のディメンションを作成します。こちらがカスケードの子になります。
属性に親ディメンションの要素名を持っています。
Sub01という名称で全要素が含まれるサブセットを作成しておきます。

以下のディメンションを作成します。要素のタイプはストリングで、カスケードする親ディメンションの数だけ作成します。

親フィルターで選択した値を保持するキューブ(C_SY_UserSelection)を作成します。
ディメンションに }Client と D_SY_UserSelection を指定します。

親フィルターにD_SY01、子フィルターにD_SY04を配置した動的レポートを作成します。

=@SUBNM("tm1:D_SY01","Default","A1")
=@SUBNM("tm1:D_SY04","Sub01","B11")
空いているセル(B16)に、親フィルターの選択をC_SY_UserSelectionキューブに書き込むDBSS関数を追加します。
=DBSS(B15,"tm1:C_SY_UserSelection",TM1USER("tm1"),"D_SY01_S")
C_SY_UserSelectionキューブを確認すると、親フィルターの選択値が挿入されています。

D_SY04のSub01サブセットのMDX式を以下の内容に変更します。
{
FILTER(TM1SUBSETALL([D_SY04].[D_SY04]) , [D_SY04].[D_SY04].[ATR1] = [C_SY_UserSelection].(STRTOMEMBER(" [}Clients].[}Clients].[" + USERNAME + "]"),[D_SY_UserSelection].[D_SY_UserSelection].[D_SY01_S]))
}
WEBシートをPAfEから発行し動作を確認します。
・親フィルターで「A1」を選択した時

・親フィルターで「A2」を選択した時

・親フィルターで「A3」を選択した時




