有关项列表的 GetImplementationSettings 服务的其他信息
本主题将介绍 GetImplementationSettings 服务,这是适用于项列表的一个自定义服务。当项列表以结构树形式显示数据时,通常会使用此服务,而以普通列表形式显示数据时,则不使用此服务。例如,项列表的“部件结构”和“文档结构”预定义配置均使用此服务。
此外,如需启用 selectedItems 输入绑定特性,则必须实施此服务。selectedItems 特性允许您预先选择项列表中的项。
GetImplementationSettings 服务可包含以下三个特性。只要每个对象类型仅有一个属性,每个特性就可针对每个项保留一个或多个属性。
itemIdentifierKeys
此必需的键包含各个输入项的属性,其中属性可用于选择项。在 selectedItems 的输入中指定的任何其他属性都将被忽略。只考虑第一个指定的属性;将忽略其他所有属性。
如果每个项的属性值唯一,则在使用 selectedItems 时,仅选择一个项。如果属性值不唯一,则会选择相应属性为该值的所有项。
itemExpansionKeys
此可选键仅在项列表显示层次结构数据时适用。当使用 selectedItems 选择折叠的项时,它将支持结构树中最初折叠的项 (例如,根据默认展开层级)。itemExpansionKeys 中的属性用于标识结构中缺失的任何项。由于属性值用于标识项,因此每个项的属性值应该是唯一的。
以下服务的默认实施使用 itemExpansionKeysGetChildrenMapItemToInputObjectGetItemsByExpansionPathGetStructureSkeleton。有关详情,请参阅项列表主题中的自定义服务部分。
hasChildrenKeys
此可选键仅在项列表显示层次结构数据时适用。hasChildrenKeys 包含各个项的属性的名称,用于确定该项是否具有子项。如果项缺少此属性,或此属性的值为 false,则假定该项没有子项。如果不包括 hasChildrenKeys,则为了显示树结构,项数据 CCO 上每个项的 PTC.Nav.Descendants 键下存在的项部分将用作子项的指示符。有关详情,请参阅 Common Communication Object 结构
GetImplementationSettings 的示例代码
包含部件结构项的示例 
单一对象类型的项的示例代码:
"implementationSettings":{
...
"itemIdentifierKeys":[
{
"selectedValues":{
"data":[
{
"itemListsData":[
{
"items":[
{
"id":"PartUseId",
"ordinal":0
}
],
"objectType":"PTC.ProdMgmt.PartStructureItem"
}
],
"adapter":{
"instanceName":"windchill",
"thingName":"PTC.WCAdapter"
}
}
]
}
}
],
"itemExpansionKeys":[
{
"selectedValues":{
"data":[
{
"itemListsData":[
{
"items":[
{
"id":"PathId",
"ordinal":0
}
],
"objectType":"PTC.ProdMgmt.PartStructureItem"
}
],
"adapter":{
"instanceName":"windchill",
"thingName":"PTC.WCAdapter"
}
}
]
}
}
],
"hasChildrenKeys":[
{
"selectedValues":{
"data":[
{
"itemListsData":[
{
"items":[
{
"id":"HasChildren",
"ordinal":0
}
],
"objectType":"PTC.ProdMgmt.PartStructureItem"
}
],
"adapter":{
"instanceName":"windchill",
"thingName":"PTC.WCAdapter"
}
}
]
}
}
]
}
多个对象类型的项的示例代码:
"implementationSettings":{
...
"itemIdentifierKeys":[
{
"selectedValues":{
"data":[
{
"itemListsData":[
{
"items":[
{
"id":"PartUseId",
"ordinal":0
}
],
"objectType":"PTC.ProdMgmt.PartStructureItem"
}
],
"adapter":{
"instanceName":"windchill",
"thingName":"PTC.WCAdapter"
}
}
]
}
},
{
"selectedValues":{
"data":[
{
"itemListsData":[
{
"items":[
{
"id":"PVTreeId",
"ordinal":0
}
],
"objectType":"PTC.CADDocumentMgmt.CADStructure"
}
],
"adapter":{
"instanceName":"windchill",
"thingName":"PTC.WCAdapter"
}
}
]
}
}
],
"itemExpansionKeys":[
{
"selectedValues":{
"data":[
{
"itemListsData":[
{
"items":[
{
"id":"PathId",
"ordinal":0
}
],
"objectType":"PTC.ProdMgmt.PartStructureItem"
}
],
"adapter":{
"instanceName":"windchill",
"thingName":"PTC.WCAdapter"
}
}
]
}
},
{
"selectedValues":{
"data":[
{
"itemListsData":[
{
"items":[
{
"id":"PVTreeId",
"ordinal":0
}
],
"objectType":"PTC.CADDocumentMgmt.CADStructure"
}
],
"adapter":{
"instanceName":"windchill",
"thingName":"PTC.WCAdapter"
}
}
]
}
}
],
"hasChildrenKeys":[
{
"selectedValues":{
"data":[
{
"itemListsData":[
{
"items":[
{
"id":"HasChildren",
"ordinal":0
}
],
"objectType":"PTC.ProdMgmt.PartStructureItem"
}
],
"adapter":{
"instanceName":"windchill",
"thingName":"PTC.WCAdapter"
}
}
]
}
},
{
"selectedValues":{
"data":[
{
"itemListsData":[
{
"items":[
{
"id":"HasChildren",
"ordinal":0
}
],
"objectType":"PTC.CADDocumentMgmt.CADStructure"
}
],
"adapter":{
"instanceName":"windchill",
"thingName":"PTC.WCAdapter"
}
}
]
}
}
]
}
包含文档结构项的示例 
"implementationSettings":{
"..."
"itemIdentifierKeys":[
{
"selectedValues":{
"data":[
{
"itemListsData":[
{
"items":[
{
"id":"DocumentUseID",
"ordinal":0
}
],
"objectType":"PTC.DocMgmt.DocStructure"
}
],
"adapter":{
"instanceName":"windchill",
"thingName":"PTC.WCAdapter"
}
}
]
}
}
],
"hasChildrenKeys":[
{
"selectedValues":{
"data":[
{
"itemListsData":[
{
"items":[
{
"id":"HasChildren",
"ordinal":0
}
],
"objectType":"PTC.DocMgmt.DocStructure"
}
],
"adapter":{
"instanceName":"windchill",
"thingName":"PTC.WCAdapter"
}
}
]
}
}
],
"overrideItemsDataForExport":{
"value":false
}
}
这对您有帮助吗?