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
}
]
}
]
}
]
}
}