Building block per la configurazione dei componenti
La configurazione per ciascun componente è scritta in formato JSON ed è costituita da varie proprietà di configurazione. Esistono molti tipi diversi di proprietà di configurazione, ad esempio una proprietà può definire un elemento semplice, come una stringa, un numero intero o un valore booleano, oppure un elemento più complesso, come un elenco di elementi da restituire dal sistema di back-end. Ogni tipo di proprietà dispone di una struttura JSON interna diversa. La comprensione dei tipi di proprietà e delle relative strutture consentirà di configurare efficacemente i componenti.
Alcune proprietà dispongono di più opzioni di configurazione e quando si sceglie una delle opzioni, la proprietà dispone di una sottoproprietà che è possibile utilizzare per configurare ulteriormente il componente. Queste sottoproprietà non vengono visualizzate nelle strutture o negli esempi elencati di seguito, poiché variano. Per ulteriori informazioni, vedere Sottoproprietà e chiavi contenitore.
* 
Ognuno dei tipi di proprietà riportati di seguito può includere la chiave inTailoring con un valore booleano. Questa chiave può essere utilizzata solo nei casi in cui sia presente una pagina di personalizzazione dedicata per il task personalizzato.
Casella di testo 
Nome: PTC.Nav.DynamicForm.Textbox
Descrizione: stringa di testo. Si utilizza principalmente per le etichette.
Struttura:
{
"value": "content of label"
}
Esempio di casella di testo dalla chiave progressBarMessage in Avanzamento task:
{
"value":"[[PTC.Nav.TaskProgress.ProgressBarMessage]]"
}
Pulsante interruttore 
Nome: PTC.Nav.DynamicForm.Toggle
Descrizione: il valore è una delle due opzioni. Le opzioni sono true e false.
Struttura:
{
"value": true
}
Esempio di pulsante interruttore dalla chiave showImage in Identificativo elemento:
{
"value":false
}
Numero 
Nome: PTC.Nav.DynamicForm.Number
Descrizione: numero.
Struttura:
{
"value": 500
}
Esempio di numero dalla chiave maxTileCount in Riquadri:
{
"":{
"value":"5"
}
}
Selettore mashup 
Nome: PTC.Nav.DynamicForm.MashupSelector
Descrizione: nome di un mashup. Si utilizza per creare link a un mashup specifico.
Struttura:
{
"mashupName": "name of mashup",
}
Esempio di selettore mashup dalla chiave linkToMashup in Task:
{
"mashupName":"PTC.CRDetailedReviewAppMashup"
}
Pulsante di opzione 
Nome: PTC.Nav.DynamicForm.RadioButton
Descrizione: il valore è uno dei valori specificati nella definizione del componente.
Struttura:
{
"selectedKey" : "option1",
}
Esempio di pulsante di opzione dalla chiave selectionType in Allegati:
{
"selectedKey":"multi"
}
Nell'esempio precedente, le opzioni per selectedKey sono none, single e multi.
Matrice di caselle di controllo 
Nome: PTC.Nav.DynamicForm.CheckBoxArray
Descrizione: il valore è una o più chiavi specificate nella definizione del componente.
Struttura:
{
"selected":[
{
"key":"option1"
},
{
"key":"option3"
}
{
"key":"option6"
}
]
}
Esempio di una matrice di caselle di controllo della chiave exportType nella struttura parti:
{
"selected":[
{
"key":"exportToCsv"
"label": "[[PTC.Nav.ItemList.ExportCSVActionLabel]]",
},
{
"key":"exportToExcel"
"label": "[[PTC.Nav.ItemList.ExportCSVAsExcelActionLabel]]"
}
]
}
Elenco a discesa 
Nome: PTC.Nav.DynamicForm.Dropdown
Descrizione: il valore è una o più chiavi specificate nella definizione del componente. La definizione del componente specifica se l'elenco a discesa può accettare solo una chiave o più chiavi.
Struttura:
{
"selected":[
{
"key":"key1",
"data":{"…"}
},
{
"key":"key2",
"data":{"…"}
}
]
}
Esempio di un elenco a discesa della chiave defaultExpansionLevel nella struttura parti:
{
"defaultExpansionLevel":{
"selected":[
"3"
]
}
}
Elenco 
Nome: PTC.Nav.DynamicForm.List
Descrizione: il valore è una o più chiavi specificate nella definizione del componente. Supporta inoltre l'ordinamento degli elementi dell'elenco utilizzando la chiave ordinal.
Struttura:
{
"selected":[
{
"key":"key1"
},
{
"key":"key2"
}
]
}
Esempio di un elenco dalla chiave showImplementationActions in File di progetto:
{
"selected":[
{
"key":"downloadZip",
"ordinal":0
}
]
}
Selettore entità (BETA) 
Nome: PTC.Nav.DynamicForm.EntitySelector
Descrizione: nome di un'entità Windchill Navigate, ad esempio una thing shape, un modello di oggetto, un oggetto, un mashup, un utente o un gruppo.
Struttura:
{
"entityName": "name of entity"
}
Esempio di selettore entità dalla chiave modelThingName in Barra delle azioni:
{
"entityName":"PTC.ActionBarModel.Thing"
}
Filtro campi 
Nome: PTC.Nav.DynamicForm.FieldFilter
Descrizione: oggetto filters di un parametro di interrogazione ThingWorx in cui la chiave fieldName ha un valore di stringa vuoto.
Struttura:
{
"filters" : 'filters' object of a TWX Query
}
Esempio di filtro campi dalla chiave defaultSelectedFilterValues in Task:
{
"filters":{
"filters":[
{
"fieldName":"",
"type":"EQ",
"value":"POTENTIAL"
},
{
"fieldName":"",
"type":"EQ",
"value":"ACCEPTED"
}
],
"type":"Or"
}
}
Gruppo definizione 
Nome: PTC.Nav.DynamicForm.DefinitionGroup
Descrizione: segnaposto che può essere utilizzato per inserire altre proprietà di configurazione nella configurazione del componente.
Struttura:
{
"value": {JSON representation of additional data},
}
Esempio di gruppo definizione dalla chiave implementationConfiguration in Task:
{
"value":{
"taskTypeFilter":{
"value":"[{\"activityName\": \"Conduct Online CRB Review\",\"workItemProcessTemplate\": \"Change Request Workflow\"}]"
}
}
}
Selettore attributi 
Nome: PTC.Nav.DynamicForm.AttributesSelector
Descrizione: si utilizza per selezionare uno o più attributi dal sistema di back-end. Per ulteriori informazioni, vedere la sezione Struttura per la selezione degli attributi di seguito.
Struttura:
{
"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
}]
}]
}]
},
}
Esempio di selettore attributi dalla chiave attributes in Task:
{
"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"
}
]
}
]
}
}
Selettore insiemi attributi 
Nome: PTC.Nav.DynamicForm.AttributesSetsSelector
Descrizione: si utilizza per selezionare gli attributi dal sistema di back-end e separarli in gruppi diversi. Il valore di name è una stringa che rappresenta il nome dell'insieme di attributi. La chiave data contiene la stessa struttura del tipo di proprietà Selettore attributi. Per ulteriori informazioni, vedere la sezione Struttura per la selezione degli attributi di seguito.
Struttura:
{
"sets": [
{
"name": "Set Name 1",
"data": {Structure for Selecting Attributes}
},
{
"name": "Set Name 2",
"data": {Structure for Selecting Attributes}
}
],
}
Esempio di selettore insiemi attributi dalla chiave attributes in Attributi:
{
"sets":[
{
"data":{
"selectedValues":{
"data":[
{
"itemListsData":[
{
"items":[
{
"id":""
}
],
"objectType":""
}
],
"adapter":{
"instanceName":"PTC.WCAdapter",
"thingName":"windchill"
}
}
]
}
},
"name":""
}
]
}
Selettore schema 
Nome: PTC.Nav.DynamicForm.PatternSelector
Descrizione: si utilizza per creare una stringa o uno schema che include uno o più attributi del sistema di back-end. La struttura per questo tipo di proprietà è molto simile alla Struttura per la selezione degli attributi, con l'aggiunta della chiave numericIdentifier per ogni attributo e della chiave pattern alla fine. Nella chiave pattern, il simbolo % insieme a un numero rappresenta l'attributo con lo stesso numero come valore numericIdentifier. Nell'interfaccia utente, il nome dell'attributo viene visualizzato nella stringa pattern.
Struttura:
{
"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"
Esempio di selettore schema dalla chiave primaryTitle in Identificativo task:
{
"selectedValues":{
"data":[
{
"itemListsData":[
{
"items":[
{
"numericIdentifier":1,
"id":"Subject|SubjectName"
}
],
"objectType":"PTC.Workflow.WorkItem"
}
],
"adapter":{
"instanceName":"windchill",
"thingName":"PTC.WCAdapter"
}
}
]
},
"pattern":"%1"
}
Struttura per la selezione degli attributi
Esistono tre tipi di proprietà che è possibile utilizzare per specificare il sottoinsieme di attributi dal sistema di back-end che si desidera visualizzare nel componente: Selettore attributi, Selettore insiemi attributi e Selettore schema. Ciascuno di essi utilizza una struttura JSON simile che include proprietà obbligatorie e proprietà facoltative.
Proprietà obbligatorie:
thingName - Nome dell'oggetto adattatore per il sistema di back-end
instanceName - Nome dell'istanza dell'adattatore del sistema di back-end
objectType - Tipo di oggetto dell'attributo
id - ID dell'attributo
Proprietà opzionali:
additionalData - Tutte le sottoproprietà pertinenti sono incluse in questa proprietà.
ordinal - Questa proprietà determina l'ordine di visualizzazione degli attributi nell'interfaccia utente, dove l'attributo con il valore ordinale 0 viene visualizzato per primo, l'attributo con il valore ordinale 1 viene visualizzato come secondo e così via. Per ulteriori informazioni, vedere l'argomento Utilizzare la proprietà di configurazione ordinale.
hidden - Questa proprietà è attualmente disponibile solo per il componente Elenco elementi. Se la proprietà è impostata su true, l'attributo specificato viene nascosto dalla griglia Elenco elementi nell'interfaccia utente ed escluso dai file esportati. Se impostata su false o quando non è inclusa nella configurazione, l'attributo non è nascosto. Anche quando un attributo è nascosto, viene comunque passato alla proprietà di associazione selectedItems per un elemento selezionato.
Nel codice riportato di seguito viene illustrata la struttura generale per la selezione degli attributi.
* 
Windchill Navigate attualmente supporta l'utilizzo di un solo adattatore e di una sola istanza in una particolare configurazione di 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,
"hidden": true
},
{
"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
"hidden": false
}
]
}
]
}
]
}
}
È stato utile?