コンポーネントのコンフィギュレーション構造
各コンポーネントのコンフィギュレーションは JSON フォーマットで作成され、多数のコンフィギュレーションプロパティから構成されています。コンフィギュレーションプロパティにはさまざまなタイプがあり、たとえば、文字列、整数、ブールなどの単純なものを定義するプロパティや、バックエンドシステムから返されるアイテムのリストのような、より複雑なものを定義するプロパティがあります。プロパティのタイプによって内部の JSON 構造は異なります。プロパティタイプとその構造について理解することは、コンポーネントを効果的に設定するのに役立ちます。
一部のプロパティには複数のコンフィギュレーションオプションがあり、いずれかのオプションを選択した場合、そのプロパティのサブプロパティを使用して、コンポーネントをさらに設定できます。これらのサブプロパティはさまざまなので、以下の構造や例には示されていません。詳細については、サブプロパティとコンテナキーを参照してください。
* 
以下の各プロパティには、ブール値を持つ inTailoring キーを含めることができます。このキーは、カスタムタスクに専用の調整ページがある場合にのみ使用できます。
テキストボックス 
名前: PTC.Nav.DynamicForm.Textbox
説明: テキスト文字列。主にラベルに使用します。
構造:
{
"value": "content of label"
}
タスク進行状況の progressBarMessage キーのテキストボックスの例:
{
"value":"[[PTC.Nav.TaskProgress.ProgressBarMessage]]"
}
切り替え 
名前: PTC.Nav.DynamicForm.Toggle
説明: この値は 2 つのオプションのいずれかです。オプションは truefalse です。
構造:
{
"value": true
}
アイテム ID の showImage キーの切り替えの例:
{
"value":false
}
数値 
名前: PTC.Nav.DynamicForm.Number
説明: 数値。
構造:
{
"value": 500
}
タイルの maxTileCount キーの数値の例:
{
"":{
"value":"5"
}
}
マッシュアップセレクタ 
名前: PTC.Nav.DynamicForm.MashupSelector
説明: マッシュアップの名前。特定のマッシュアップへのリンクを作成するときに使用します。
構造:
{
"mashupName": "name of mashup",
}
タスクの linkToMashup キーのマッシュアップセレクタの例:
{
"mashupName":"PTC.CRDetailedReviewAppMashup"
}
ラジオボタン 
名前: PTC.Nav.DynamicForm.RadioButton
説明: この値は、コンポーネント定義で指定されている値のいずれかです。
構造:
{
"selectedKey" : "option1",
}
添付資料の selectionType キーのラジオボタンの例:
{
"selectedKey":"multi"
}
上の例では、selectedKey のオプションは nonesingle、および multi です。
エンティティセレクタ (ベータ) 
名前: PTC.Nav.DynamicForm.EntitySelector
説明: Thing Shape、Thing Template、Thing、マッシュアップ、ユーザー、グループなど、ThingWorx Navigate エンティティの名前。
構造:
{
"entityName": "name of entity"
}
操作バーの modelThingName キーのエンティティセレクタの例:
{
"entityName":"PTC.ActionBarModel.Thing"
}
フィールドフィルタ 
名前: PTC.Nav.DynamicForm.FieldFilter
説明: fieldName キーの値が空の文字列である、TWX クエリーパラメータfilters オブジェクト。
構造:
{
"filters" : 'filters' object of a TWX Query
}
タスクの defaultSelectedFilterValues キーのフィールドフィルタの例:
{
"filters":{
"filters":[
{
"fieldName":"",
"type":"EQ",
"value":"POTENTIAL"
},
{
"fieldName":"",
"type":"EQ",
"value":"ACCEPTED"
}
],
"type":"Or"
}
}
定義グループ 
名前: PTC.Nav.DynamicForm.DefinitionGroup
説明: コンポーネントのコンフィギュレーションに追加のコンフィギュレーションプロパティを注入するときに使用可能なプレースホルダー。
構造:
{
"value": {JSON representation of additional data},
}
タスクの implementationConfiguration キーの定義グループの例:
{
"value":{
"taskTypeFilter":{
"value":"[{\"activityName\": \"Conduct Online CRB Review\",\"workItemProcessTemplate\": \"Change Request Workflow\"}]"
}
}
}
属性セレクタ 
名前: PTC.Nav.DynamicForm.AttributesSelector
説明: バックエンドシステムから 1 つまたは複数の属性を選択するときに使用します。詳細については、以下の属性選択の構造のセクションを参照してください。
構造:
{
"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
}]
}]
}]
},
}
タスクの attributes キーの属性セレクタの例:
{
"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"
}
]
}
]
}
}
属性セットセレクタ 
名前: PTC.Nav.DynamicForm.AttributesSetsSelector
説明: バックエンドシステムから属性を選択し、それらを複数のグループに分割するときに使用します。name の値は、属性セットの名前を示す文字列です。data キーには、属性セレクタプロパティタイプと同じ構造が含まれています。詳細については、以下の属性選択の構造のセクションを参照してください。
構造:
{
"sets": [
{
"name": "Set Name 1",
"data": {Structure for Selecting Attributes}
},
{
"name": "Set Name 2",
"data": {Structure for Selecting Attributes}
}
],
}
属性の attributes キーの属性セットセレクタの例:
{
"sets":[
{
"data":{
"selectedValues":{
"data":[
{
"itemListsData":[
{
"items":[
{
"id":""
}
],
"objectType":""
}
],
"adapter":{
"instanceName":"PTC.WCAdapter",
"thingName":"windchill"
}
}
]
}
},
"name":""
}
]
}
パターンセレクタ 
名前: PTC.Nav.DynamicForm.PatternSelector
説明: バックエンドシステムから 1 つまたは複数の属性を含む文字列またはパターンを作成するときに使用します。このプロパティタイプの構造は属性選択の構造と非常によく似ており、これに加えて各属性に numericIdentifier キーが付き、末尾に pattern キーが付いています。pattern キーでは、% シンボルと番号によって、その番号と同じ numericIdentifier 値を持つ属性が表されます。ユーザーインタフェースで、その属性名は pattern 文字列内に表示されます。
構造:
{
"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"
タスク ID の primaryTitle キーのパターンセレクタの例:
{
"selectedValues":{
"data":[
{
"itemListsData":[
{
"items":[
{
"numericIdentifier":1,
"id":"Subject|SubjectName"
}
],
"objectType":"PTC.Workflow.WorkItem"
}
],
"adapter":{
"instanceName":"windchill",
"thingName":"PTC.WCAdapter"
}
}
]
},
"pattern":"%1"
}
属性選択の構造
コンポーネントに表示する、バックエンドシステムからの属性のサブセットを指定するには、属性セレクタ、属性セットセレクタ、パターンセレクタの 3 つのプロパティタイプを使用できます。これらはそれぞれ、必須プロパティとオプションのプロパティを含む同様の JSON 構造を使用します。
必須プロパティ:
thingName - バックエンドシステムのアダプタ Thing の名前
instanceName - バックエンドシステムアダプタのインスタンス名
objectType - 属性のオブジェクトタイプ
id - 属性の ID
オプションのプロパティ:
additionalData - 関連するすべてのサブプロパティがこのプロパティの下に含まれています。
ordinal - このプロパティでは、ユーザーインタフェースに属性が表示される順序を指定します。ここで、序数値が 0 の属性が最初に表示され、序数値が 1 の属性が 2 番目に表示され、それ以降も同様に表示されます。
次のコードは、属性選択の一般的な構造を示しています。
* 
ThingWorx Navigate では、現在のところ、コンポーネントの各コンフィギュレーションにおいて、1 つのアダプタと 1 つのインスタンスのみを使用できます。
{
"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
}
]
}
]
}
]
}
}
これは役に立ちましたか?