/ /総計MDX式の一般的な割合がフィルター-ssas、mdxで間違った値を返す

合計MDX式の一般的な割合がfilter-ssas、mdxで間違った値を返します

SSASキューブブラウザーでドラッグするディメンションに関係なく、総計の割合を返す汎用MDX式を見つけるには、この問題があります。

今、私はこの式を使用しています:

([Measures].[Montant], Axis(1)(0)(Axis(1)(0).Count - 1).dimension.currentmember)
/SUM(([Measures].[Montant], Axis(1)(0)))

それは正常に動作しますが、軸の内側のアイテムをフィルタリングすると、式は間違った値を返します

例えば ​​:

行軸に3つの項目があります:Year> Brand> Category

すべての行の総計は125です。

SUM(([Measures].[Montant], Axis(1)(0)))

カテゴリでフィルタリングすると、総計軸の外側のアイテムの65に等しいとしましょう。ただし、カテゴリの値を確認するためにドリルダウンすると、まだ125に等しいことがわかります。その結果、パーセントの値も間違っています。

誰かが私の「MDX式の問題」を理解するのを手伝ってもらえますか?

キューブブラウザのスクリーンショット

計算されたメジャーは、「テストSOB」、MDX式です。

([Measures].[Montant], Axis(1)(0)(Axis(1)(0).Count - 1).dimension.currentmember)
/SUM(([Measures].[Montant], Axis(1)(0)))

総計は「denominateur」、MDX式です:

SUM(([Measures].[Montant], Axis(1)(0)))

ご覧のとおり、フィルタリング後の値Onglet = "DIGITAL"は182.50ですが、カテゴリごとにブランド "Beauty"をドリルダウンして "denominateur"を表示すると、フィルターを適用する前に "denominateur"の値である338.05という値が見つかります。

回答:

回答№1は0

の使用は疑問に思う EXISTING デノミンター計算でフィルターコンテキストを強制しますか?

SUM(
[Measures].[Montant],
EXISTING Axis(1).ITEM(0).ITEM(0).HIERARCHY.MEMBERS
)