2014-08-27 90 views
0

我正在嘗試在Microsoft Analysis Services多維數據集上創建一個計算成員MDX表達式:計算員

有一個現有的維度[Projects][Project Number - Name],其成員沿着「12345 - 項目X」的成員。我只需要提取項目編號(「12345」)。

我最初認爲它會和LEFT(Projects].[Project Number - Name],5)一樣簡單,但是這會產生一個null響應。

即使我只是重複維度,因爲是[Projects].[Project Number - Name],我得到一個null

我試過[Projects].[Project Number - Name].Value, [Projects].[Project Number - Name].Members和其他一些想法,但我(如你所見)在黑暗中拍攝。

我主要是想獲得的Tableau這個工作(需要一個MDX表現,而不是完整的查詢),但也試圖在MS Excel電力樞紐,這將產生完全一樣的答案計算成員的功能(null) - 這表明我的MDX值得懷疑。

+1

看看是否有幫助:http://social.msdn.microsoft.com/Forums/sqlserver/en-US/d1739116-ecff-4357-b0c6-29f387831c1c/how-to-get-a-left-function- in-mdx-language?forum = sqlanalysisservices – 2014-08-27 18:56:50

+0

謝謝,這讓我朝着正確的方向前進。我現在有'LEFT([Projects]。[Project Number - Name] .CURRENTMEMBER.NAME,5)工作,但前提是我還包括工作表中其他地方包含的原始[Projects]。[Project Number - Name]維。如果我把這個計算的成員變成null ... – simonberry 2014-08-28 11:15:20

回答

0

我會嘗試:

LEFT([Projects].[Project Number - Name].currentMember.name, 5) 

否則,[項目] [項目編號 - 名稱]引用然後被轉換成一個元組,然後評估的成員。所以你的表達式實際上處理了這個元組評估的結果,而不是成員本身的名字。

+0

這將返回維名稱(「項目編號 - 名稱」)而不是會員值(「12345項目X」)....? – simonberry 2014-08-28 11:19:25

+1

對不起,我忘了.currentMember電話 - 現在好嗎? – 2014-08-28 12:51:19