Common Communication Object-Struktur
Das Common Communication Object, auch als CCO bezeichnet, ist eine JSON-Struktur, die zum Verwalten der Datenübertragung in ThingWorx Navigate verwendet wird. Sie enthält Daten und Metadaten für eine oder mehrere Instanzen des Backend-Systems und Objekte, die aus diesen Systemen abgerufen werden.
CCO-Struktur
{
"version":"1.0.0",
"data":[
{
"adapter":{
"thingName":"",
"instanceName":""
},
"itemListsData":[
{
"objectType":"",
"items":[
{
"id":{
"value":""
},
"Name":{
"value":""
}
}
],
"metadata":{
"id":{
"label":"",
"type":""
},
"Name":{
"label":"",
"type":""
}
},
"typeData":{
}
}
]
}
],
"status":"",
"statusMessage":"",
"timeStamp":""
}
Eigenschaftenname
Beschreibung
version
Die Version der verwendeten CCO-Struktur.
Eigenschaftstyp ist Zeichenfolge.
data
Die Informationen werden aus den Backend-Systemen abgerufen.
Eigenschaftstyp ist Zeichenfolge.
adapter
Enthält Informationen zur Backend-System-Instanz, aus der die Daten abgerufen werden.
thingName
Name des Adapter-Dings, das das Backend-System in ThingWorx Navigate darstellt.
Eigenschaftstyp ist Zeichenfolge.
instanceName
Name der spezifischen Instanz des Backend-Systems.
Eigenschaftstyp ist Zeichenfolge.
ItemListsData
Liste der Elemente und Metadaten. Elemente innerhalb jeder Instanz der Liste müssen vom selben Objekttyp sein.
objectType
Der Typ der abgerufenen Objekte.
Eigenschaftstyp ist Zeichenfolge.
items
Liste der Elemente und Elementwerte.
value
Wert für das bestimmte Element.
Eigenschaftstyp ist Zeichenfolge.
metadata
Informationen zu Attributen, die alle Elemente gemeinsam haben.
typeData
Weitere Informationen zum objectType. Nur in seltenen Fällen verwendet.
Eigenschaftstyp ist JSON-Objekt.
status
Der Status des Datenabrufs.
Eigenschaftstyp ist Zeichenfolge.
statusMessage
Meldung zum Status des Datenabrufs.
Eigenschaftstyp ist Zeichenfolge.
timeStamp
Zeitstempel für den Datenabruf.
Eigenschaftstyp ist Zeichenfolge.
Beispiele für CCO-Struktur
1. Das folgende Beispiel enthält ein Element mit einem Objekttyp.
{
"version":"1.0.0",
"data":[
{
"adapter":{
"thingName":"PTC.WCAdapter",
"instanceName":"windchill"
},
"itemListsData":[
{
"objectType":"PTC.ChangeMgmt.ChangeRequest",
"items":[
{
"id":{
"value":"OR:wt.change2.WTChangeRequest2:258323"
},
"Name":{
"value":"CR"
}
}
],
"metadata":{
"id":{
"label":"Id",
"type":"string"
},
"Name":{
"label":"Change Request Name",
"type":"string"
}
}
}
]
}
],
"status":"200",
"statusMessage":"OK",
"timeStamp":" 2019-01-02 06:43:19.77"
}
2. Das folgende Beispiel enthält ein Element mit zwei unterschiedlichen Objekttypen. Da jedes items-Array nur ein Objekt enthält, ist ein Element vorhanden.
{
"version":"1.0.0",
"data":[
{
"adapter":{
"thingName":"PTC.WCAdapter",
"instanceName":"windchill"
},
"itemListsData":[
{
"objectType":"PTC.ChangeMgmt.ChangeRequest",
"items":[
{
"id":{
"value":"OR:wt.change2.WTChangeRequest2:258323"
},
"Name":{
"value":"CR"
}
}
],
"metadata":{
"id":{
"label":"Id",
"type":"string"
},
"Name":{
"label":"Change Request Name",
"type":"string"
}
}
},
{
"objectType":"PTC.Workflow.WorkItem",
"items":[
{
"Category#Display":{
"value":"Cost Reduction"
},
"RequestPriority#Display":{
"value":"Low"
}
}
],
"metadata":{
"Category#Display":{
"label":"Category",
"type":"string"
},
"RequestPriority#Display":{
"label":"Request Priority",
"type":"string"
}
}
}
]
}
],
"status":"200",
"statusMessage":"OK",
"timeStamp":" 2019-01-02 06:43:19.77"
}
3. Das folgende Beispiel enthält zwei Elemente mit einem Objekttyp. Da jedes items-Array zwei Objekte enthält, sind zwei Elemente vorhanden.
{
"version":"1.0.0",
"data":[
{
"adapter":{
"thingName":"PTC.WCAdapter",
"instanceName":"windchill"
},
"itemListsData":[
{
"objectType":"PTC.ChangeMgmt.ChangeRequest",
"items":[
{
"id":{
"value":"OR:wt.change2.WTChangeRequest2:258323"
},
"Name":{
"value":"CR1"
}
},
{
"id":{
"value":"OR:wt.change2.WTChangeRequest2:32456"
},
"Name":{
"value":"CR2"
}
}
],
"metadata":{
"id":{
"label":"Id",
"type":"string"
},
"Name":{
"label":"Change Request Name",
"type":"string"
}
}
}
]
}
],
"status":"200",
"statusMessage":"OK",
"timeStamp":" 2019-01-02 06:43:19.77"
}
4. Das folgende Beispiel enthält zwei Elemente mit zwei Objekttypen. Da jedes items-Array zwei Objekte enthält, sind zwei Elemente vorhanden.
{
"version":"1.0.0",
"data":[
{
"adapter":{
"thingName":"PTC.WCAdapter",
"instanceName":"windchill"
},
"itemListsData":[
{
"objectType":"PTC.ChangeMgmt.ChangeRequest",
"items":[
{
"id":{
"value":"OR:wt.change2.WTChangeRequest2:258323"
},
"Name":{
"value":"CR"
}
},
{
"id":{
"value":"OR:wt.change2.WTChangeRequest2:32456"
},
"Name":{
"value":"CR2"
}
}
],
"metadata":{
"id":{
"label":"Id",
"type":"string"
},
"Name":{
"label":"Change Request Name",
"type":"string"
}
}
},
{
"objectType":"PTC.Workflow.WorkItem",
"items":[
{
"Category#Display":{
"value":"Cost Reduction"
},
"RequestPriority#Display":{
"value":"Low"
}
},
{
"Category#Display":{
"value":"Cost Reduction"
},
"RequestPriority#Display":{
"value":"High"
}
}
],
"metadata":{
"Category#Display":{
"label":"Category",
"type":"string"
},
"RequestPriority#Display":{
"label":"Request Priority",
"type":"string"
}
}
}
]
}
],
"status":"200",
"statusMessage":"OK",
"timeStamp":" 2019-01-02 06:43:19.77"
}
War dies hilfreich?