구성 요소 구성 구조
각 구성 요소에 대한 구성은 JSON 형식으로 작성되며 많은 구성 속성으로 구성됩니다. 다양한 유형의 구성 속성이 있습니다. 예를 들어, 속성은 문자열, 정수, 부울 등의 간단한 항목을 정의하거나 백엔드 시스템에서 반환할 항목 목록과 같이 복잡한 항목을 정의할 수 있습니다. 각 속성 유형의 내부 JSON 구조는 서로 다릅니다. 속성 유형 및 해당 구조를 이해하면 구성 요소를 효과적으로 구성할 수 있습니다.
일부 속성에는 여러 구성 옵션이 있으며, 옵션 중 하나를 선택하면 해당 속성에 구성 요소를 추가로 구성하는 데 사용할 수 있는 하위 속성이 있습니다. 이들은 다양하므로 아래에 나열된 구조나 예에는 이러한 하위 속성이 표시되지 않습니다. 자세한 내용은 하위 속성 및 컨테이너 키를 참조하십시오.
* 
아래의 각 속성에는 부울 값이 포함된 inTailoring 키가 포함될 수 있습니다. 이 키는 사용자 정의 작업에 대한 전용 수정 페이지가 있는 경우에만 사용할 수 있습니다.
텍스트 상자 
이름: PTC.Nav.DynamicForm.Textbox
설명: 텍스트 문자열 주로 레이블에 사용됩니다.
구조:
{
"value": "content of label"
}
작업 진행 상황의 progressBarMessage 키에 있는 텍스트 상자의 예:
{
"value":"[[PTC.Nav.TaskProgress.ProgressBarMessage]]"
}
전환 
이름: PTC.Nav.DynamicForm.Toggle
설명: 값은 두 가지 옵션 중 하나입니다. 옵션은 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에 대한 옵션은 none, singlemulti입니다.
엔티티 선택기(베타) 
이름: PTC.Nav.DynamicForm.EntitySelector
설명: 사물 형태, 사물 템플릿, 사물, 매쉬업, 사용자 또는 그룹과 같은 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
설명: 백엔드 시스템에서 하나 이상의 속성을 선택하는 데 사용됩니다. 자세한 내용은 아래 속성 선택을 위한 구조 단원을 참조하십시오.
구조:
{
"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
설명: 백엔드 시스템에서 하나 이상의 속성을 포함하는 문자열이나 패턴을 생성하는 데 사용됩니다. 이 속성 유형에 대한 구조는 속성 선택을 위한 구조와 매우 유사하며 각 속성에 대해 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"
}
속성 선택을 위한 구조
구성 요소에 표시할 백엔드 시스템의 속성 하위 세트를 지정하는 데 사용할 수 있는 세 가지 속성 유형은 속성 선택기, 속성 세트 선택기 및 패턴 선택기입니다. 이들은 필수 속성과 선택적 속성을 포함하는 유사한 JSON 구조를 사용합니다.
필수 속성:
thingName - 백엔드 시스템의 어댑터 사물 이름
instanceName - 백엔드 시스템 어댑터의 인스턴스 이름
objectType - 속성의 데이터 유형
id - 속성의 ID
선택적 속성:
additionalData - 모든 관련 하위 속성은 이 속성에 포함됩니다.
ordinal - 이 속성은 사용자 인터페이스에 표시되는 속성의 순서를 결정합니다. 여기서 서수 값이 0인 속성이 처음에 표시되고, 서수 값이 1인 속성은 두 번째로 표시되는 식입니다.
다음 코드에서는 속성을 선택하는 일반 구조를 보여줍니다.
* 
현재 ThingWorx Navigate는 구성 요소의 특정 구성에 어댑터 하나와 인스턴스 하나만 사용하도록 지원합니다.
{
"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
}
]
}
]
}
]
}
}
도움이 되셨나요?