2

如何使用MDX過濾兩個成員屬性?使用MDX在查詢設計器中過濾成員屬性

enter image description here

目前,我有以下解決方案。它的工作原理,但我相信一個MDX查詢會更有效率。

數據集時,查詢設計器具有以下MDX包括成員屬性字段:

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

我使用兩個過濾器中的數據集屬性與以下表達式:

=Cint(Fields!Opening_Date.Value) 

<

=Cint(Format(Today(), "yyyyMMdd")) 

and

=Cint(Fields!Closed_Date.Value) 

>

=Cint(Format(Today(), "yyyyMMdd")) 
+0

什麼是你所面臨的問題?匆匆一瞥,我看到你想獲得'Closed_Date'大於今天日期的行,是否適合你的邏輯? –

+0

可以請你添加一些你已經試過的mdx – whytheq

+0

@alejandro zuleta:Exaclty,它運行的很慢,我想(如果可能的話)將此過濾器添加到MDX查詢中。 – krynil

回答

0

我發現,使用的過濾器來解決這個問題的最好辦法:

filter(
    [Store].[Store].members, [Store].[Store].Properties("Opening Date") < Format(Now(),'yyyyMMdd') 
    and [Store].[Store].Properties("Closed Date") > Format(Now(),'yyyyMMdd')) 
) 
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] 
+0

謝謝!我會試試:) – krynil

+0

我設法通過在MDX中使用過濾器來解決問題。你的代碼肯定有幫助,所以謝謝你! – krynil