Definizione del modello ThingWorx in Composer > Modellazione > Snippet di codice > QueryImplementingThingsOptimizedWithTotalCount
QueryImplementingThingsOptimizedWithTotalCount
Descrizione
È possibile utilizzare questo servizio per interrogare gli oggetti che implementano il modello di oggetto o la thing shape per cui viene eseguito il servizio. Il risultato è un'infotable contenente gli oggetti che implementano il modello o la data shape e i valori delle proprietà del modello di oggetto o della thing shape per cui viene eseguita l'interrogazione.
Input
Nome parametro
Descrizione
Tipo di base
maxItems
Numero massimo di elementi da restituire nell'insieme di risultati. Il valore di default è 500. Questo parametro viene applicato dopo l'applicazione di tutti gli altri filtri.
NUMBER
tags
Tag modello associati all'origine di questa voce.
TAGS
nameMask
Schema del nome per le entità che implementano il modello di oggetto o la thing shape.
STRING
query
Criteri dell'interrogazione utilizzati per filtrare i dati.
È possibile scrivere i filtri solo per le proprietà effettive del modello di oggetto o della thing shape per cui viene eseguito il servizio.
QUERY
withPermissions
Se è impostato su true, nel risultato vengono incluse le informazioni sui permessi.
BOOLEAN
basicPropertyNames
Infotable contenente un elenco di proprietà di base, ad esempio isSystemObject, nome, descrizione, homeMashup, avatar e tag.
La data shape prevista per l'infotable è EntityList.
INFOTABLE
propertyNames
Infotable contenente un elenco di proprietà specifiche del modello di oggetto o della thing shape. Le proprietà specificate devono essere definite nel modello di oggetto o nella thing shape per cui viene eseguito il servizio.
La data shape prevista per l'infotable è EntityList.
INFOTABLE
networkName
Nome della rete a cui applicare il filtro. L'interrogazione restituirà solo i risultati provenienti da oggetti presenti nella rete.
networkParentNode
Nome del nodo di livello superiore nella rete specificato in networkName. L'interrogazione restituirà tutti i figli del nodo padre specificato nella rete.
STRING
networkMaxDepth
Profondità massima di ricerca nella rete. Se questo valore è impostato su 0, il valore di default, l'interrogazione restituisce la gerarchia completa di figli.
INTEGER
offset
Numero di righe da ignorare prima di iniziare a restituire le righe dall'interrogazione. Se è impostato sul valore di default 0, l'interrogazione restituisce tutte le righe. Può essere utilizzato per l'impaginazione dei risultati.
NUMBER
Output
Nome parametro
Descrizione
Tipo di base
result
Restituisce un'infotable contenente l'elenco di oggetti che implementano il modello di oggetto o la thing shape e le proprietà richieste del modello di oggetto o della thing shape con i relativi valori. La data shape per l'infotable è ImplementedThingsWithTotalCount.
INFOTABLE
Esempio
Entità
ShapeProp1
ShapeProp2
ShapeProp3
ThingShape1
Definito
ND
ND
ThingShape2
ND
Definito
ND
ThingShape2
ND
ND
Definito
Entità
Modello di oggetto padre
Prop1
Prop2
Prop3
Prop4
Thing shape implementata
Proprietà effettive
Template1
Definito
ND
ND
ND
ThingShape1
Prop1, ShapeProp1
Template2
Template1
Ereditato da Template1
Definito
ND
ND
ThingShape2
Prop1,
Prop2,
ShapeProp1,
ShapeProp2
Template3
Template2
Ereditato da Template2
Ereditato da Template2
Definito
ND
Prop1,
Prop2,
Prop3,
ShapePropy1,
ShapeProp2
Template4
Template2
Ereditato da Template2
Ereditato da Template2
ND
Definito
ThingShape4
Prop1,
Prop2,
Prop4,
ShapeProp1,
ShapeProp2,
ShapeProp4
Entità
Implementa
Tag modello
Prop1
Prop2
Prop3
Prop4
Thing1
Template1
{vocabulary: "MT1", vocabularyTerm: "MT1-MTerm1"}
Val1-1
Thing2
Template2
{vocabulary: "MT1", vocabularyTerm: "MT1-MTerm1"}
Val2-1
Val2-2
Thing3
Template3
{vocabulary: "MT1", vocabularyTerm: "MT1-MTerm1"}
Val3-1
Val3-2
Val3-3
Thing4
Template4
{vocabulary: "MT1", vocabularyTerm: "MT1-MTerm2"}
Val4-1
Val4-2
Val4-4
Nell'interrogazione riportata di seguito, l'infotable risultante include le proprietà di base richieste (nome, descrizione, tag, homeMashup), le proprietà richieste nel modello di oggetto (Prop1) e il nome dell'oggetto.
Il codice riportato di seguito esegue un'interrogazione per l'implementazione di oggetti con dati che utilizzano tutti i parametri supportati.
var params = {
infoTableName : "InfoTable",
dataShapeName : "EntityList"
};
// CreateInfoTableFromDataShape
var basicpropInfoTable = Resources["InfoTableFunctions"].CreateInfoTableFromDataShape(params);
// EntityList entry object
var basicProp1 = new Object();
basicProp1.name = "name";
basicProp1.description = undefined;
var basicProp2 = new Object();
basicProp2.name = "description";
basicProp2.description = undefined;
var basicProp3 = new Object();
basicProp3.name = "tags";
basicProp3.description = undefined;
var basicProp4 = new Object();
basicProp4.name = "homeMashup";
basicProp4.description = undefined;
basicpropInfoTable.AddRow(basicProp1);
basicpropInfoTable.AddRow(basicProp2);
basicpropInfoTable.AddRow(basicProp3);
basicpropInfoTable.AddRow(basicProp4);
var propertyNamesInfoTable = Resources["InfoTableFunctions"].CreateInfoTableFromDataShape(params);
var prop1 = new Object();
prop1.name = "Property1";
prop1.description = undefined;
var prop2 = new Object();
prop2.name = "Property4";
prop2.description = undefined;
propertyNamesInfoTable.AddRow(prop1);
result = ThingTemplates["Template1"].QueryImplementingThingsOptimizedWithTotalCount({
maxItems: 50 ,
nameMask: "T*",
tags: "MT1:MT1-MTerm1",
query: "{\"filters\":{\"type\": \"LIKE\", \"fieldName\": \"Property1\", \"value\": \"Val*\" }}",
basicPropertyNames: basicpropInfoTable,
propertyNames: propertyNamesInfoTable,
networkName: 'Network1',
networkParentNode: 'TestThing1',
networkMaxDepth: 0,
offset: 0
});
È stato utile?