0

こんにちは、私は mdx クエリに取り組んでおり、問題を解決したと思っていましたが.... 計算メンバーを作成しました

iif(
  isleaf([DimensionArtikujDG].[DimensionArtikujDG].CurrentMember),
         ([Measures].[Sasia])*(1/[Measures].[Koeficienti]),
        Sum(
          Descendants(
            [DimensionArtikujDG].DimensionArtikujDG].CurrentMember,,LEAVES),
            ([Measures].[Sasia])*(1/[Measures].[Koeficienti])
        )
)

[DimensionArtikujDG].[DimensionArtikujDG]ピボットテーブル内にある場合は正常に機能します。レポート フィルター エリアでこのディメンションを取得し、2 つまたは 3 つの要素をフィルター処理しても、レポート エリアの合計は変わりません。フィルターが適用されていない合計のままです。正しく説明できたかどうかわかりません。どんな種類の助けにも感謝します

4

1 に答える 1

1

問題は、式を評価するときの currentMember の値です。何が起こっているのかを理解する方法は、表現を次のように変更することです。

[DimensionArtikujDG].[DimensionArtikujDG].CurrentMember.name

スライサー (別名 WHERE) でセットを使用しているため、currentMember は適切に定義されていません (icCube ではエラーがスローされます)。使用しているサーバーがデフォルトのメンバー (おそらく [すべて]) を使用している可能性があります。

解決策: これは、使用している Olap サーバーによって異なります。ヒントとして、ディメンションに特別なロールアップを定義する方法を見てください。

于 2011-05-21T08:43:30.943 に答える