Informations supplémentaires sur le service GetImplementationSettings pour la liste des éléments
Cette rubrique décrit le service GetImplementationSettings, qui est un service de personnalisation disponible pour la liste des éléments. Ce service est généralement utilisé lorsque la liste des éléments affiche des données dans une arborescence de structure, plutôt que dans une liste non hiérarchique. Par exemple, les configurations prédéfinies de la structure d'article et de la structure de document de liste des éléments utilisent ce service.
En outre, ce service doit être implémenté si vous souhaitez activer la propriété de liaison d'entrée selectedItems. La propriété selectedItems vous permet de présélectionner un élément dans la liste des éléments.
Le service GetImplementationSettings peut contenir les trois propriétés suivantes : Chaque propriété peut contenir un ou plusieurs attributs par élément, à condition qu'il n'y ait qu'un attribut par type d'objet.
• itemIdentifierKeys
Cette clé obligatoire contient l'attribut, sur chaque élément d'entrée, avec lequel l'élément peut être sélectionné. Tous les autres attributs indiqués dans l'entrée de selectedItems seront ignorés. Seul le premier attribut spécifié est pris en compte ; tous les attributs supplémentaires sont ignorés.
Si les valeurs de l'attribut sont uniques pour chaque élément, lors de l'utilisation de selectedItems, un seul élément est sélectionné. Si elles ne sont pas uniques, tous les éléments ayant cette valeur pour cet attribut sont sélectionnés.
• itemExpansionKeys
Cette clé facultative n'est pertinente que lorsque Liste des éléments affiche des données hiérarchiques. Elle prend en charge le développement des éléments initialement réduits (par exemple, en raison d'un niveau de développement par défaut) dans la structure arborescente lorsqu'un élément réduit est sélectionné à l'aide de selectedItems. Les attributs d'itemExpansionKeys sont utilisés pour identifier les éléments manquants dans la structure. Etant donné que les valeurs d'attribut sont utilisées pour identifier les éléments, elles doivent être uniques pour chaque élément.
L'implémentation par défaut des services suivants utilise
itemExpansionKeys :
GetChildren,
MapItemToInputObject,
GetItemsByExpansionPath,
GetStructureSkeleton. Pour plus d'informations, consultez la section
Services de personnalisation de la rubrique
Liste des éléments.
• hasChildrenKeys
Cette clé facultative n'est pertinente que lorsque Liste des éléments affiche des données hiérarchiques.
hasChildrenKeys contient le nom de l'attribut sur chaque élément qui sert à déterminer si cet élément comporte ou non des sous-éléments. Si cet attribut est manquant pour un élément ou si la valeur de l'attribut est faux, l'élément est supposé ne pas posséder de sous-éléments. Si
hasChildrenKeys n'est pas inclus, alors, dans le but d'afficher une structure arborescente, la présence d'une section d'éléments sous la clé
PTC.Nav.Descendants sur chaque élément sur le CCO de données des éléments est utilisée comme indicateur de sous-éléments. Pour plus d'informations, consultez la rubrique
Structure CCO (Common Communication Object).
Exemple de code pour GetImplementationSettings
Exemple contenant des éléments de structure d'article
Exemple de code pour les éléments d'un seul type d'objet :
"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"
}
}
]
}
}
]
}
Exemple de code pour les éléments de plusieurs types d'objet :
"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"
}
}
]
}
}
]
}
Exemple contenant des éléments de structure de document
"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
}
}