Estructura de configuración de componentes
La configuración de cada componente se escribe en formato JSON y está formada por muchas propiedades de configuración. Hay muchos tipos diferentes de propiedades de configuración: por ejemplo, una propiedad puede definir algo sencillo, como una cadena, un entero o un valor booleano, o algo más complejo, como una lista de elementos que debe devolver el sistema back-end. Cada tipo de propiedad tiene una estructura JSON interna diferente. Comprender los tipos de propiedad y sus estructuras ayudará a configurar los componentes de forma eficaz.
Algunas propiedades tienen varias opciones de configuración y, cuando se elige una de las opciones, la propiedad tiene una subpropiedad que se puede utilizar para seguir configurando el componente. Se debe tener en cuenta que estas subpropiedades no se muestran en las estructuras o ejemplos que se presentan a continuación, porque varían. Para obtener más información, consulte Subpropiedades y claves de contenedor.
* 
Cada una de las propiedades siguientes puede incluir la clave inTailoring con un valor booleano. Esta clave solo se puede utilizar en casos en los que haya una página de personalización dedicada para la tarea personalizada.
Cuadro de texto 
Nombre: PTC.Nav.DynamicForm.Textbox
Descripción: cadena de texto. Se utiliza principalmente para rótulos.
Estructura:
{
"value": "content of label"
}
Ejemplo de un cuadro de texto de la clave progressBarMessage en Progreso de la tarea:
{
"value":"[[PTC.Nav.TaskProgress.ProgressBarMessage]]"
}
Alternar 
Nombre: PTC.Nav.DynamicForm.Toggle
Descripción: el valor es una de las dos opciones. Las opciones son true y false.
Estructura:
{
"value": true
}
Ejemplo de una alternancia de la clave showImage en Identidad del elemento:
{
"value":false
}
Número 
Nombre: PTC.Nav.DynamicForm.Number
Descripción: número.
Estructura:
{
"value": 500
}
Ejemplo de un número de la clave maxTileCount en Mosaicos:
{
"":{
"value":"5"
}
}
Selector de mashup 
Nombre: PTC.Nav.DynamicForm.MashupSelector
Descripción: nombre de un mashup. Se utiliza para crear vínculos a un mashup específico.
Estructura:
{
"mashupName": "name of mashup",
}
Ejemplo de un selector de mashup de la clave linkToMashup en Tareas:
{
"mashupName":"PTC.CRDetailedReviewAppMashup"
}
Botón de opción 
Nombre: PTC.Nav.DynamicForm.RadioButton
Descripción: el valor es uno de los valores especificados en la definición de componentes.
Estructura:
{
"selectedKey" : "option1",
}
Ejemplo de un botón de opción de la clave selectionType en Adjuntos:
{
"selectedKey":"multi"
}
En el ejemplo anterior, las opciones de selectedKey son none, single y multi.
Selector de entidades (BETA) 
Nombre: PTC.Nav.DynamicForm.EntitySelector
Descripción: nombre de una entidad de ThingWorx Navigate, como una definición de cosa, plantilla de cosa, cosa, usuario de mashup o grupo.
Estructura:
{
"entityName": "name of entity"
}
Ejemplo de un selector de entidades de la clave modelThingName en Barra de acciones:
{
"entityName":"PTC.ActionBarModel.Thing"
}
Filtro de campo 
Nombre: PTC.Nav.DynamicForm.FieldFilter
Descripción: el objeto filters de un Parámetro de consulta TWX donde la clave fieldName tiene un valor de cadena vacío.
Estructura:
{
"filters" : 'filters' object of a TWX Query
}
Ejemplo de un filtro de campo de la clave defaultSelectedFilterValues en Tareas:
{
"filters":{
"filters":[
{
"fieldName":"",
"type":"EQ",
"value":"POTENTIAL"
},
{
"fieldName":"",
"type":"EQ",
"value":"ACCEPTED"
}
],
"type":"Or"
}
}
Grupo de definiciones 
Nombre: PTC.Nav.DynamicForm.DefinitionGroup
Descripción: marcador que se puede utilizar para insertar propiedades de configuración adicionales en la configuración de componentes.
Estructura:
{
"value": {JSON representation of additional data},
}
Ejemplo de un grupo de definiciones de la clave implementationConfiguration en Tareas:
{
"value":{
"taskTypeFilter":{
"value":"[{\"activityName\": \"Conduct Online CRB Review\",\"workItemProcessTemplate\": \"Change Request Workflow\"}]"
}
}
}
Selector de atributos 
Nombre: PTC.Nav.DynamicForm.AttributesSelector
Descripción: se utiliza para seleccionar uno o más atributos del sistema back-end. Consulte la sección Estructura para seleccionar atributos siguiente para obtener más información.
Estructura:
{
"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
}]
}]
}]
},
}
Ejemplo de un selector de atributos de la clave attributes en Tareas:
{
"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"
}
]
}
]
}
}
Selector de conjuntos de atributos 
Nombre: PTC.Nav.DynamicForm.AttributesSetsSelector
Descripción: se utiliza para seleccionar atributos del sistema back-end y separarlos en grupos diferentes. El valor de name es una cadena que es el nombre del conjunto de atributos. La clave data contiene la misma estructura que el tipo de propiedad Selector de atributos. Consulte la sección Estructura para seleccionar atributos siguiente para obtener más información.
Estructura:
{
"sets": [
{
"name": "Set Name 1",
"data": {Structure for Selecting Attributes}
},
{
"name": "Set Name 2",
"data": {Structure for Selecting Attributes}
}
],
}
Ejemplo de un selector de conjuntos de atributos de la clave attributes en Atributos:
{
"sets":[
{
"data":{
"selectedValues":{
"data":[
{
"itemListsData":[
{
"items":[
{
"id":""
}
],
"objectType":""
}
],
"adapter":{
"instanceName":"PTC.WCAdapter",
"thingName":"windchill"
}
}
]
}
},
"name":""
}
]
}
Selector de patrones 
Nombre: PTC.Nav.DynamicForm.PatternSelector
Descripción: se utiliza para crear una cadena o un patrón que incluya uno o más atributos del sistema back-end. La estructura de este tipo de propiedad es muy similar a la Estructura para seleccionar atributos, con la adición de la clave numericIdentifier para cada atributo y la clave pattern al final. En la clave pattern, el símbolo % junto con un número representa el atributo que tiene el mismo número que su valor de numericIdentifier. En la interfaz de usuario, el nombre de atributo se muestra en la cadena pattern.
Estructura:
{
"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"
Ejemplo de un selector de patrones de la clave primaryTitle en Identidad de la tarea:
{
"selectedValues":{
"data":[
{
"itemListsData":[
{
"items":[
{
"numericIdentifier":1,
"id":"Subject|SubjectName"
}
],
"objectType":"PTC.Workflow.WorkItem"
}
],
"adapter":{
"instanceName":"windchill",
"thingName":"PTC.WCAdapter"
}
}
]
},
"pattern":"%1"
}
Estructura para seleccionar atributos
Hay tres tipos de propiedad que se pueden utilizar para especificar el subconjunto de atributos del sistema back-end que se desea mostrar en el componente: selector de atributos, selector de conjuntos de atributos y selector de patrones. Cada uno de ellos utiliza una estructura JSON similar que incluye las propiedades obligatorias y las propiedades opcionales.
Propiedades obligatorias:
thingName: el nombre de la cosa del adaptador para el sistema back-end
instanceName: el nombre de instancia del adaptador del sistema back-end
objectType: el tipo de objeto del atributo
id: el ID del atributo
Propiedades opcionales:
additionalData: todas las subpropiedades pertinentes se incluyen en esta propiedad.
ordinal: esta propiedad determina el orden en el que aparecen los atributos en la interfaz de usuario, donde el atributo con un valor ordinal de 0 aparece primero, el atributo con un valor ordinal de 1 aparece segundo, y así sucesivamente.
En el código siguiente se muestra la estructura general para seleccionar atributos.
* 
ThingWorx Navigate actualmente solo soporta el uso de un adaptador y una instancia en cualquier configuración específica de un componente.
{
"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
}
]
}
]
}
]
}
}
¿Fue esto útil?