Konfigurationsstruktur von Komponenten
Die Konfiguration für jede Komponente wird im JSON-Format geschrieben und besteht aus vielen Konfigurationseigenschaften. Es gibt viele verschiedene Typen von Konfigurationseigenschaften. So kann eine Eigenschaft etwas Einfaches (z.B. eine Zeichenfolge, eine Ganzzahl, einen booleschen Wert) oder etwas Komplexeres (z.B. eine vom Backend-System zurückzugebene Liste von Elementen) definieren. Jeder Eigenschaftstyp hat eine andere interne JSON-Struktur. Wenn Sie die Eigenschaftstypen und deren Strukturen kennen, können Sie Ihre Komponenten effektiv konfigurieren.
Einige Eigenschaften besitzen mehrere Konfigurationsoptionen, und wenn Sie eine der Optionen wählen, verfügt die Eigenschaft über eine Untereigenschaft, mit der sich die Komponente weiter konfigurieren lässt. Beachten Sie, dass diese Untereigenschaften in den folgenden aufgelisteten Strukturen bzw. Beispielen nicht angezeigt werden, da sie sich unterscheiden. Weitere Informationen finden Sie unter Untereigenschaften und Container-Schlüssel.
* 
Jede der folgenden Eigenschaften kann den inTailoring-Schlüssel samt booleschem Wert enthalten. Dieser Schlüssel kann nur in den Fällen verwendet werden, in denen eine dedizierte Anpassungsseite für Ihre benutzerdefinierte Aufgabe vorhanden ist.
Textfeld 
Name: PTC.Nav.DynamicForm.Textbox
Beschreibung: Textzeichenfolge. Wird hauptsächlich für Beschriftungen verwendet.
Struktur:
{
"value": "content of label"
}
Beispiel für ein Textfeld aus dem progressBarMessage-Schlüssel in "Aufgabenstatus":
{
"value":"[[PTC.Nav.TaskProgress.ProgressBarMessage]]"
}
Umschalten 
Name: PTC.Nav.DynamicForm.Toggle
Beschreibung: Der Wert entspricht einer von zwei Optionen. Optionen sind true und false.
Struktur:
{
"value": true
}
Beispiel für das Umschalten aus dem showImage-Schlüssel in "Element-Identität":
{
"value":false
}
Nummer 
Name: PTC.Nav.DynamicForm.Number
Beschreibung: Nummer
Struktur:
{
"value": 500
}
Beispiel für eine Nummer aus dem maxTileCount-Schlüssel in "Kacheln":
{
"":{
"value":"5"
}
}
Mashup-Auswahl 
Name: PTC.Nav.DynamicForm.MashupSelector
Beschreibung: Name eines Mashups. Für das Erstellen eines Links zu einem bestimmten Mashup
Struktur:
{
"mashupName": "name of mashup",
}
Beispiel für eine Mashup-Auswahl aus dem linkToMashup-Schlüssel in "Aufgaben":
{
"mashupName":"PTC.CRDetailedReviewAppMashup"
}
Optionsfeld 
Name: PTC.Nav.DynamicForm.RadioButton
Beschreibung: Der Wert entspricht einer der in der Komponentendefinition festgelegten Werte.
Struktur:
{
"selectedKey" : "option1",
}
Beispiel für ein Optionsfeld aus dem selectionType-Schlüssel in "Anhänge":
{
"selectedKey":"multi"
}
Die Optionen für selectedKey im obigen Beispiel sind: none, single und multi.
Entitätsauswahl (Beta) 
Name: PTC.Nav.DynamicForm.EntitySelector
Beschreibung: Name einer ThingWorx Navigate-Entität, z.B. eine Dingform, eine Dingvorlage, ein Ding, ein Mashup, ein Benutzer oder eine Gruppe
Struktur:
{
"entityName": "name of entity"
}
Beispiel für eine Entitätsauswahl aus dem modelThingName-Schlüssel in "Aktionsleiste":
{
"entityName":"PTC.ActionBarModel.Thing"
}
Feldfilter 
Name: PTC.Nav.DynamicForm.FieldFilter
Beschreibung: Das filters-Objekt eines TWX Abfrageparameters, wobei der fieldName-Schlüssel einen leeren Zeichenfolgenwert aufweist.
Struktur:
{
"filters" : 'filters' object of a TWX Query
}
Beispiel für einen Feldfilter aus dem defaultSelectedFilterValues Schlüssel in "Aufgaben":
{
"filters":{
"filters":[
{
"fieldName":"",
"type":"EQ",
"value":"POTENTIAL"
},
{
"fieldName":"",
"type":"EQ",
"value":"ACCEPTED"
}
],
"type":"Or"
}
}
Definitionsgruppe 
Name: PTC.Nav.DynamicForm.DefinitionGroup
Beschreibung: Platzhalter, der zum Einfügen zusätzlicher Konfigurationseigenschaften in die Komponentenkonfiguration verwendet werden kann
Struktur:
{
"value": {JSON representation of additional data},
}
Beispiel für eine Definitionsgruppe aus dem implementationConfiguration-Schlüssel in "Aufgaben":
{
"value":{
"taskTypeFilter":{
"value":"[{\"activityName\": \"Conduct Online CRB Review\",\"workItemProcessTemplate\": \"Change Request Workflow\"}]"
}
}
}
Attributauswahl 
Name: PTC.Nav.DynamicForm.AttributesSelector
Beschreibung: Für die Auswahl eines oder mehrere Attribute aus dem Backend-System. Weitere Informationen finden Sie im folgenden Abschnitt Struktur für die Auswahl von Attributen.
Struktur:
{
"selectedValues": {
"data": [{
"adapter": {
"thingName": "WindchillAdapterThing",
"instanceName": "JapanWindchill"
},
"itemListsData": [{
"objectType": "WT.PART.WTPart",
"items": [{
"id": "name of property",
"additionalData": {
"ContainerKey1":{additional properties},
"ContainerKey"2:{additional properties},
},
"ordinal": 2
},
{
"id": "name of property",
"additionalData": {
"ContainerKey1":{additional properties},
"ContainerKey2":{additional properties},
},
"ordinal": 1
}]
}
},
{
"adapter": {
"thingName": "WindchillAdapterThing",
"instanceName": "UKWindchill"
},
"itemListsData": [{
"objectType": "WT.PART.WTPart",
"items": [{
"id": "name of property",
"additionalData": {
"ContainerKey1":{additional properties},
"ContainerKey2":{additional properties},
},
"ordinal": 0
},
{
"id": "name of property",
"additionalData": {
"ContainerKey1":{additional properties},
"ContainerKey2":{additional properties},
},
"ordinal": 3
}]
}]
}]
},
}
Beispiel für eine Attributauswahl aus dem attributes-Schlüssel in "Aufgaben":
{
"selectedValues":{
"data":[
{
"adapter":{
"instanceName":"windchill",
"thingName":"PTC.WCAdapter"
},
"itemListsData":[
{
"items":[
{
"additionalData":{
"implementationAttributesDefinition":{
"linkToMashup":{
"mashupName":"PTC.CRDetailedReviewAppMashup"
}
},
"itemListAttributesDefinition":{
"fieldTitleOverride":{
"value":""
}
}
},
"id":"Activity|Name",
"ordinal":0
},
{
"additionalData":{
"itemListAttributesDefinition":{
"fieldTitleOverride":{
"value":""
}
}
},
"id":"Subject|SubjectName",
"ordinal":1
},
{
"additionalData":{
"itemListAttributesDefinition":{
"fieldTitleOverride":{
"value":""
}
}
},
"id":"Activity|Deadline",
"ordinal":2
},
{
"additionalData":{
"itemListAttributesDefinition":{
"fieldTitleOverride":{
"value":""
}
}
},
"id":"Status#Display",
"ordinal":3
},
{
"additionalData":{
"itemListAttributesDefinition":{
"fieldTitleOverride":{
"value":""
}
}
},
"id":"Activity|Context|Name",
"ordinal":4
}
],
"objectType":"PTC.Workflow.WorkItem"
},
{
"items":[
{
"additionalData":{
"itemListAttributesDefinition":{
"fieldTitleOverride":{
"value":"PTC.Nav.TaskList.TaskProgress"
}
}
},
"id":"TaskProgress",
"ordinal":5
}
],
"objectType":"PTC.Workflow.WorkItem.Custom.Implementation"
}
]
}
]
}
}
Attributsatzauswahl 
Name: PTC.Nav.DynamicForm.AttributesSetsSelector
Beschreibung: Für die Auswahl von Attributen aus dem Backend-System und zur Trennung selbiger in verschiedene Gruppen. Der Wert für name ist eine Zeichenfolge, die dem Namen des Attributsatzes entspricht. Der data-Schlüssel enthält die gleiche Struktur wie der Eigenschaftstyp "Attributauswahl". Weitere Informationen finden Sie im folgenden Abschnitt Struktur für die Auswahl von Attributen.
Struktur:
{
"sets": [
{
"name": "Set Name 1",
"data": {Structure for Selecting Attributes}
},
{
"name": "Set Name 2",
"data": {Structure for Selecting Attributes}
}
],
}
Beispiel für eine Attributsatzauswahl aus dem attributes-Schlüssel in "Attribute":
{
"sets":[
{
"data":{
"selectedValues":{
"data":[
{
"itemListsData":[
{
"items":[
{
"id":""
}
],
"objectType":""
}
],
"adapter":{
"instanceName":"PTC.WCAdapter",
"thingName":"windchill"
}
}
]
}
},
"name":""
}
]
}
Musterauswahl 
Name: PTC.Nav.DynamicForm.PatternSelector
Beschreibung: Für das Erstellen einer Zeichenfolge oder eines Musters mit einem oder mehreren Attributen aus dem Backend-System. Die Struktur für diesen Eigenschaftstyp ähnelt der Struktur für die Auswahl von Attributen, wobei der numericIdentifier-Schlüssel für jedes Attribut und der pattern-Schlüssel am Ende hinzugefügt werden. Im pattern-Schlüssel repräsentiert das Symbol "%" zusammen mit einer Zahl das Attribut, das die gleiche Zahl wie sein numericIdentifier-Wert aufweist. In der Benutzeroberfläche wird der Attributname in der pattern-Zeichenfolge angezeigt.
Struktur:
{
"selectedValues": {
"data": [{
"adapter": {
"thingName": "WindchillAdapterThing",
"instanceName": "JapanWindchill"
},
"itemListsData": [{
"objectType": "WT.PART.WTPart",
"items": [{
"id": "sold",
"numericIdentifier": 0
},
{
"id": "totalStock",
"numericIdentifier": 2
}]
}
},
{
"adapter": {
"thingName": "WindchillAdapterThing",
"instanceName": "UKWindchill"
},
"itemListsData": [{
"objectType": "WT.PART.WTPart",
"items": [{
"id": "totalStock",
"numericIdentifier": 1
}]
}]
}]
},
"pattern": "%0 and %2 out of %1"
Beispiel für eine Musterauswahl aus dem primaryTitle-Schlüssel in "Aufgabenidentität":
{
"selectedValues":{
"data":[
{
"itemListsData":[
{
"items":[
{
"numericIdentifier":1,
"id":"Subject|SubjectName"
}
],
"objectType":"PTC.Workflow.WorkItem"
}
],
"adapter":{
"instanceName":"windchill",
"thingName":"PTC.WCAdapter"
}
}
]
},
"pattern":"%1"
}
Struktur für die Auswahl von Attributen
Es gibt drei Eigenschaftstypen, die Sie für die Angabe der Untermenge von Attributen aus dem in den Komponenten anzuzeigenden Backend-System verwenden können: Attributauswahl, Attributsatzauswahl und Musterauswahl. Die Typen verwenden jeweils eine ähnliche JSON-Struktur, die erforderliche und optionale Eigenschaften umfasst.
Erforderliche Eigenschaften:
thingName – Name des Adapterdings für das Backend-System
instanceName – Instanzname des Backend-Systemadapters
objectType – Objekttyp des Attributs
id – ID des Attributs
Optionale Eigenschaften:
additionalData – Unter dieser Eigenschaft sind alle relevanten Untereigenschaften zusammengefasst.
ordinal – Diese Eigenschaft bestimmt die Reihenfolge, in der die Attribute in der Benutzeroberfläche angezeigt werden, wobei das Attribut mit dem Ordinalwert 0 zuerst angezeigt wird, das Attribut mit dem Ordinalwert 1 als zweites usw.
Der folgende Code zeigt die allgemeine Struktur für die Auswahl von Attributen.
* 
ThingWorx Navigate unterstützt derzeit nur die Verwendung eines Adapters und einer Instanz in einer bestimmten Konfiguration einer Komponente.
{
"selectedValues":{
"data":[
{
"adapter":{
"thingName":"WindchillAdapterThing",
"instanceName":"JapanWindchill"
},
"itemListsData":[
{
"objectType":"WT.PART.WTPart",
"items":[
{
"id":"name of property",
"additionalData":{
"ContainerKey1":{
"additional properties"
},
"ContainerKey2":{
"additional properties"
}
},
"ordinal":2
},
{
"id":"name of property",
"additionalData":{
"ContainerKey1":{
"additional properties"
},
"ContainerKey2":{
"additional properties"
}
},
"ordinal":1
}
]
},
{
"objectType":"PTC.Workflow.WorkItem",
"items":[
{
"id":"name of property",
"additionalData":{
"ContainerKey1":{
"additional properties"
},
"ContainerKey2":{
"additional properties"
}
},
"ordinal":0
},
{
"id":"name of property",
"additionalData":{
"ContainerKey1":{
"additional properties"
},
"ContainerKey2":{
"additional properties"
}
},
"ordinal":3
}
]
}
]
}
]
}
}
War dies hilfreich?