2016-02-19 81 views
0

我遇到過這樣的問題: 我有一個維度[Project_sales],其中一個層級爲[Default],在我的多維數據集[Sales_planning_RP]中。MDX屬性值鍵

我已經爲此維度創建了一個自定義屬性並將其命名爲「對象」。 當我創造了它,我問:

1)房產主要
2)房產價值

現在我有源表的這個維度與2個額外的字段:

1)Object_code ] EX :('O01')< - 這是我所需要的(參見下面的問題)

2)[對象]例如:( '對象#3213,可編輯')< - 這是我得到什麼

但我看到在OLAP只有一個屬性:

[Project_sales].[Default].CurrentMember.Properties("Object")

這使我只是OBJECT_NAME。
所以我的問題是如何獲得我的財產「對象」的關鍵與MDX

我的尺寸屬性: http://i.stack.imgur.com/N2Aej.png

我的尺寸具有以下 「parent_child」 層次結構:
項目 - >對象 - > Element_of_area

此層次結構的每一個元素都有作爲屬性 「對象」,這可以被稱爲以這樣的方式:

[Project_sales].[Default].CurrentMember.Properties("Object")

在屬性窗口(ⅰ我的圖片)的屬性「對象」有2個屬性: 1)keyColumns 2)NameColumns

我重複一遍:「對象」這裏不是維度的成員,它是一個屬性! 它有自己的鑰匙和名字。

我可以得到它的名字,但無法理解如何得到它的密鑰,它也被加載到多維數據集中。

看看我member_properties名單: image_2

這裏是我的維度的XMLA代碼的一部分使事情變得清楚: <Attribute> <Annotations> <Annotation> <Name>TypeOfInformation</Name> <Value>1</Value> </Annotation> <Annotation> <Name>TypeOfNameInformation</Name> <Value>1</Value> </Annotation> <Annotation> <Name>P4SSAMOVersion</Name> <Value>2</Value> </Annotation> </Annotations> <ID>Object</ID> <Name>Object</Name> <KeyColumns> <KeyColumn> <DataType>WChar</DataType> <DataSize>40</DataSize> <Source xsi:type="ColumnBinding"> <TableID>_x0036_Project_sales</TableID> <ColumnID>Object_code</ColumnID> </Source> </KeyColumn> </KeyColumns> <NameColumn> <DataType>WChar</DataType> <DataSize>255</DataSize> <Source xsi:type="ColumnBinding"> <TableID>_x0036_Project_sales</TableID> <ColumnID>Object_name</ColumnID> </Source> </NameColumn> <OrderBy>Key</OrderBy> <MembersWithData>NonLeafDataHidden</MembersWithData> <AttributeHierarchyVisible>false</AttributeHierarchyVisible> </Attribute>

+0

在我看來就像「對象」是一個屬性,不是屬性。 –

+0

好吧,我的意思是,它返回.Properties()函數。 –

+0

如果Object是一個屬性層次結構,那麼只需使用該屬性層次結構來獲得密鑰 – whytheq

回答