2010-09-09 95 views
1

我正在MS Visual Studio中構建一個報告,該報告從多維數據集中獲取其數據。這其中包括一個稱爲播放器的維度。我想交出參數「名稱」並接收玩家玩過的遊戲數量。但是我沒有在我使用的MDX查詢中集成參數。我已經定義了參數,並且在查詢中,我嘗試了很多不同的東西,例如 。將參數添加到MDX查詢

Select 
strtomember('@Name') 
on 1, 
[Measures].[Match Count] 
on 0 
From [Kicker Manager Data Warehouse] 

而不是strtomember('@Name')例如,

[Dimension Player].[@Name] 

但沒有任何工作。將不勝感激任何幫助。

回答

1

正確的語法是strtomember(@Name)

在查詢設計器中,我不得不再次定義參數 (對話框「查詢參數」)。

0

MDX不支持像SQL存儲過程那樣的參數。

你可以看看使用SQL命令OPENROWSET,它允許SQL過程執行一些MDX並返回正常(2D)記錄集中的結果。 MDX將是一個字符串,您可以在調用代碼或proc中格式化您的喜好。

或者看看在Visual Studio中使用ADOMD執行MDX(或者我有點過時嗎?)。再次,你會傳遞一個字符串。

+0

這是不正確的,但是SSAS的ADO.Net提供程序不能正確實現參數化。如果您使用ADO COM接口(這是SSRS所做的),則可以參數化MDX查詢,但如果您從.Net調用,則必須自行參數化查詢。 – piers7 2011-03-24 09:08:31