3

MDX を使用して 2 つのメンバー プロパティをフィルター処理するにはどうすればよいですか?

ここに画像の説明を入力

現在、私は次の解決策を持っています。MDX動作しますが、クエリの方がはるかに効率的であると確信しています。

クエリ デザイナーのデータセットにMDXは、メンバー プロパティをフィールドとして含めるための次のものがあります。

DIMENSION PROPERTIES MEMBER_CAPTION, MEMBER_UNIQUE_NAME, [Store].[Store].[Closed Date],[Store].[Store].[Opening Date]

次の式を使用して、データセット プロパティで 2 つのフィルターを使用しています。

    =Cint(Fields!Opening_Date.Value) 
    < 
    =Cint(Format(Today(), "yyyyMMdd"))

    =Cint(Fields!Closed_Date.Value) 
    >
    =Cint(Format(Today(), "yyyyMMdd"))
4

2 に答える 2

1

これを解決するには、フィルターを使用するのが最善の方法であることがわかりました。

filter(
  [Store].[Store].members, [Store].[Store].Properties( "Opening Date" ) < Format(Now(),'yyyyMMdd') 
  and [Store].[Store].Properties( "Closed Date" ) > Format(Now(),'yyyyMMdd'))
)
于 2015-12-16T15:58:52.427 に答える
1

以下のパフォーマンスが満足のいくものになるとは思えませんが、試してみることはできます。

SELECT SomeDim.SomeHIerarchy.MEMBER 
HAVING 
Val(SomeDim.SomeHIerarchy.CURRENTMEMBER.Properties("Opening Date")) <  Format(now(), "dd-MM-yyyy")
Val(SomeDim.SomeHIerarchy.CURRENTMEMBER.Properties("Closing Date")) > Format(now(), "dd-MM-yyyy")
ON 1,
Measures.Foo on 0
FROM [Your Cube]
于 2015-12-11T17:34:35.470 に答える