|
Les types de base suivants sont stockés en tant que chaînes : DATETIME, THINGNAME, USERNAME, GROUPNAME, HYPERLINK, IMAGELINK, MASHUPNAME, MENUNAME, DASHBOARDNAME, TEXT, GUID, NOTIFICATIONCONTENTNAME, NOTIFICATIONDEFINITIONNAME, STYLETHEMENAME et THINGGROUPNAME.
|
|
Les données de télémesure ne doivent jamais être indexées.
|
Nom de la propriété
|
Type de propriété
|
Prend en charge les requêtes indexées ?
|
---|---|---|
name
|
STRING
|
oui
|
description
|
STRING
|
oui
|
tags
|
TAGS
|
oui
|
isSystemObject
|
BOOLEAN
|
non
|
homeMashup
|
STRING
|
non
|
avatar
|
IMAGE
|
non
|
projectName
|
STRING
|
non
|
thingTemplate
|
STRING
|
oui
|
Nom de l'opération
|
Notes
|
Etats d'optimisation potentiels (si fournis sur la requête et non nuls)
|
||
---|---|---|---|---|
ResultDefinition
|
Spécifié via les paramètres basicPropertyNames et propertyNames lors de l'appel d'API.
• basicPropertyNames : liste des propriétés de base à renvoyer.
• propertyNames : liste des propriétés intégrées et propriétés de l'entité d'implémentation à renvoyer.
|
• Si toutes les définitions de propriété demandées sont indexées, QueryImplementingThingsOptimized n'interroge que les données d'index pour générer le jeu de résultats.
• Si seules certaines des définitions de propriété demandées sont indexées et que l'opération est prise en charge, QueryImplementingThingsOptimized exécute une requête indexée pour les propriétés indexées et utilise le jeu de résultats généré pour interroger le cache mémoire pour les propriétés non indexées.
• Si aucune des définitions de propriété demandées n'est indexée ou si un paramètre est NULL, QueryImplementingThingsOptimized interroge le cache mémoire.
|
||
NameMask
|
Modèle de type masque à utiliser pour la mise en correspondance des noms d'objet.
|
NameMask n'influe en rien sur l'utilisation ou non par QueryImplementingThingsOptimized d'une requête sur les données d'index.
|
||
NetworkName
|
Nom du réseau auquel un objet d'implémentation donné doit appartenir. Des indications peuvent être fournies. Par exemple, vous pouvez spécifier la profondeur de réseau maximale et le nom des réseaux parents afin d'affiner la recherche.
|
QueryImplementingThingsOptimized interrogera le cache mémoire.
|
||
Tags
|
Liste des tags que doit posséder l'entité pour être incluse dans le résultat.
|
QueryImplementingThingsOptimized interrogera les données d'index pour les tags.
|
||
Offset
|
Décalage à appliquer pour le premier résultat de la requête, utilisé pour la pagination. Par exemple, si 200 résultats sont trouvés dans la base de données, avec un décalage défini sur 5, les résultats renvoyés seront les résultats 5 à 200 (pour un total de 195 résultats).
|
Limit n'influe en rien sur l'utilisation ou non par QueryImplementingThingsOptimized d'une requête sur les données d'index.
|
||
Sort
|
Tri à appliquer au résultat final.
|
• Si toutes les propriétés définies dans le tri sont indexées, QueryImplementingThingsOptimized interrogera les données d'index pour générer le jeu de résultats.
• Si certaines propriétés définies dans le tri ne sont pas indexées, QueryImplementingThingsOptimized interrogera le cache mémoire.
|
||
Query
|
Filtre à appliquer aux enregistrements de résultats.
|
• Si toutes les définitions de propriété demandées sont indexées, QueryImplementingThingsOptimized n'interrogera que les données d'index pour générer le jeu de résultats.
• Si seules certaines des définitions de propriété demandées sont indexées et que l'opération est prise en charge, QueryImplementingThingsOptimized exécutera une requête indexée pour les propriétés indexées et utilisera le jeu de résultats généré pour interroger le cache mémoire pour les propriétés non indexées.
• Si aucune des définitions de propriété demandées n'est indexée, QueryImplementingThingsOptimized interrogera le cache en mémoire.
|
||
Limit
|
Nombre maximal d'éléments à inclure dans le résultat.
|
Limit n'influe en rien sur l'utilisation ou non par QueryImplementingThingsOptimized d'une requête sur les données d'index.
|
Indication
|
Obligatoire ?
|
Par défaut
|
Action
|
---|---|---|---|
optimizationDisabled
|
non
|
Non inclus
|
• Si la requête n'est pas spécifiée, que l'indication n'est pas incluse dans la requête ou qu'elle est définie sur "false", QueryImplementingThingsOptimized le comportement sera celui décrit plus haut.
|
Nom de l'entité
|
Type d'entité
|
Implémente
|
Nom de la propriété
|
Type de propriété
|
Propriété indexée ?
|
---|---|---|---|---|---|
TestThingTemplate1
|
Modèle d'objet
|
GenericThing
|
p1
|
INTEGER
|
Oui
|
p2
|
STRING
|
Oui
|
|||
p3
|
INTEGER
|
Non
|
|||
p4
|
STRING
|
Non
|
|||
TestThing1
|
Objet
|
TestThingTemplate1
|
Hérité
|
Hérité
|
Hérité
|
TestThing2
|
Objet
|
TestThingTemplate1
|
Hérité
|
Hérité
|
Hérité
|
Scénario
|
Exemple
|
Requête sur les données d'index ?
|
Commentaires
|
---|---|---|---|
Toutes les opérations sont prises en charge et le filtre est entièrement pris en charge.
|
{"sorts":[{"fieldName":"p1"}],"filters":{"type":"And","filters":[{"type":"EQ","fieldName":"p2","value":"12"},
{"type":"EQ","fieldName":"p1","value":"13"}]}} |
Oui
|
Seules des propriétés indexées sont demandées, et ThingWorx interroge donc les données d'index.
|
Toutes les opérations sont prises en charge et le filtre est partiellement pris en charge.
|
{"sorts":[{"fieldName":"p1"}],
"filters":{"type":"And","filters":[{"type":"EQ","fieldName":"p4","value":"12"},{"type":"EQ","fieldName":"p1","value":"13"}]}} |
Oui
|
ThingWorx exécute une requête sur les données d'index pour la propriété P1, puis utilise le jeu de résultats généré pour interroger le cache pour P4.
|
Toutes les opérations sont prises en charge et le filtre n'est pas pris en charge.
|
{"sorts":[{"fieldName":"p1"}],"filters":
{"type":"Or","filters":[{"type":"EQ","fieldName":"p4","value":"12"},{"type":"EQ","fieldName":"p1","value":"13"}]}} |
Non
|
ThingWorx n'interroge que le cache du fait du filtre OU, qui fait qu'une requête sur les données d'index n'apporterait aucun bénéfice.
|
Toutes les opérations sont prises en charge, aucun filtre n'est fourni.
|
{"sorts":[{"fieldName":"p1"}]}
|
Non
|
Il n'y a rien à filtrer, ThingWorx n'exécute donc pas de requête.
|
Certaines opérations sont prises en charge et le filtre est entièrement pris en charge.
|
{"sorts":[{"fieldName":"p4"}],"filters":{"type":"And","filters":
[{"type":"EQ","fieldName":"p2","value":"12"},{"type":"EQ","fieldName":"p1","value":"13"}]}} |
Oui
|
Tous les champs filtrés sont indexés, et ThingWorx interroge donc les données d'index.
|
Certaines opérations sont prises en charge et le filtre est partiellement pris en charge.
|
{"sorts":[{"fieldName":"p4"}],"filters":{"type":"And","filters":
[{"type":"EQ","fieldName":"p4","value":"12"},{"type":"EQ","fieldName":"p1","value":"13"}]}} |
Oui
|
Même situation qu'à la ligne 2, excepté que le tri porte sur une propriété non indexée.
|
Certaines opérations sont prises en charge et le filtre n'est pas pris en charge.
|
{"sorts":[{"fieldName":"p4"}],"filters":{"type":"Or","filters":[{"type":"EQ","fieldName":"p4","value":"12"},
{"type":"EQ","fieldName":"p1","value":"13"}]}} |
Non
|
Le filtre est le même qu'à la ligne 3, de sorte que les requêtes sur les données d'index ne sont pas prises en charge dans ce cas de figure.
|
Certaines opérations sont prises en charge, aucun filtre n'est fourni.
|
{"sorts":[{"fieldName":"p4"}]}
|
Non
|
Il n'y a rien à filtrer, ce cas de figure n'est donc pas pris en charge.
|
Des tags sont demandés, aucun filtre n'est fourni.
|
Oui
|
Les requêtes sur les tags sont prises en charge pour l'interrogation des données d'index.
|