OK!私はあなたがこれを試してみたいと思っていることを理解していると思います. ルート すべての次元からすべてを取得できます。
Divide(
[Measures].[Sales Line Amount AC Budget hidden]
,AGGREGATE(
Root()
,[Measures].[Sales Line Amount AC Budget hidden]
)
)
編集:
それを行うためのかなり簡単な方法があるとは思わないでください。 Axis(1) をご覧ください。
クエリ内のみのキューブでこれを試したわけではありません...動作します..
Divide(
[Measures].[Sales Line Amount AC Budget hidden]
,AGGREGATE(
Axis(1)
,[Measures].[Sales Line Amount AC Budget hidden]
)
)
EDIT2:
これをExcelで動作させたいので。どのディメンションを「重み付け」するかを正確に知らずに機能させる明確な方法はありません。Excel はサブキューブで動作します。つまり、Axis 関数は実際にはその軸からすべてのメンバーを返します。
どのメンバーが実際に MDX に表示されているかを正確に知る方法はありません。これは、クライアント側の計算である必要があります。
オプションに行くフィールドを選択し、「値を次のように表示」に行くだけで、実際にはEXCELでこれを非常に簡単に行うことができます。 "% Grand Total" を使用すると、探しているパーセンテージが正確に得られます。