[英]MDX: count number of members selected in filter
我有一個要放入過濾器的維度,並創建了計算所得的成員,該成員應動態顯示該維度中所選成員的數量。
該維度沒有All成員。
這是我的嘗試
with member [Measures].[Count1] as count(existing(([MyDimension].[MyDimensionHierarchy].members)))
select [Measures].[Count1] on 0
from [MyCube] -- gives me 1
這將給我2個正確的答案:
with member [Measures].[Count1] as count(existing(([MyDimension].[MyDimensionHierarchy].members)))
select [Measures].[Count1] on 0
from [MyCube]
where ({[MyDimension].[MyDimensionHierarchy].[Member1], [MyDimension].[MyDimensionHierarchy].[Member2]})
但是, 問題在於,當我使用上述公式創建計算所得的成員,並將Count1拖到Excel數據透視表中,並將MyDimension作為過濾器時,當我對維度成員進行多選時,我希望計數動態變化當我更改所選成員的數量時。
但是Count1始終等於1。
在此期間,我找到了答案:
我在問題中編寫的查詢實際上不是Excel數據透視表發送到多維數據集的查詢。 Excel數據透視表生成如下查詢:
SELECT FROM (SELECT ({[MyDimension].[MyDimensionHierarchy].[Member1],[MyDimension].[MyDimensionHierarchy].[Member2]}) ON COLUMNS
FROM [MyCube])
WHERE ([Measures].[Count1])
應使用包含過濾成員的動態集來完成此操作:
create dynamic set [SelectedMembers] as existing( [MyDimension].[MyDimensionHierarchy].members )
接着:
create member Measures.SelectedMembersCount as count([SelectedMembers])
因此,此集合會隨着在過濾器中選擇不同的成員而動態變化,並且SelectedMembersCount會隨之動態變化。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.