Définition du modèle ThingWorx dans Composer > Modélisation > Objets > Propriétés d'objet > Ajout programmatique de propriétés aux objets
Ajout programmatique de propriétés aux objets
Le service AddPropertyDefinition peut être utilisé pour créer une nouvelle propriété locale ou liée à une propriété distante sur un objet, un modèle d'objet ou une forme d'objet. Le service prend en charge les paramètres suivants :
Paramètre
Type de base
Description
name
STRING
Obligatoire. Nom de la propriété à créer.
type
BASETYPENAME
Obligatoire. Type de base ThingWorx de la propriété. Pour obtenir la liste des types de base ThingWorx, consultez la table "Types de base" de la rubrique Propriétés d'objet.
description
STRING
Description de la propriété.
category
STRING
Nom de catégorie permettant de classer la propriété.
dataShape
DATASHAPENAME
Lorsque la propriété est de type INFOTABLE, définit la forme de données utilisée par la propriété.
L'entité forme de données spécifiée pour ce paramètre doit exister avant l'exécution du service.
Ce paramètre n'est pas obligatoire. Cependant, en l'absence de forme de données spécifiée, la table d'informations ne pourra pas être définie via Composer (à l'aide du bouton Définir).
defaultValue
STRING
Spécifie la valeur par défaut de la propriété.
readOnly
BOOLEAN
"Vrai" si la propriété est en lecture seule, sinon "faux".
persistent
BOOLEAN
"Vrai" si les valeurs persisteront au redémarrage du service ThingWorx (les valeurs sont stockées dans le fournisseur de persistance), "faux" si la valeur doit être effacée au redémarrage du service ThingWorx.
logged
BOOLEAN
Si "vrai", la propriété sera stockée dans un flux de valeurs configuré.
dataChangeType
STRING
Indique dans quelle mesure une modification de la valeur de la propriété doit être prise en compte à des fins de journalisation/d'alerte. Valeurs possibles : Toujours, Jamais, Actif, Inactif ou Valeur.
Toujours : déclenchera un événement de modification pour toute modification de la valeur de la propriété.
Jamais : aucun événement de modification ne sera jamais déclenché sur modification de la valeur de la propriété.
Actif : pour la plupart des valeurs, toute modification de la propriété déclenchera un événement de modification de données.
Inactif : un événement de modification de données sera déclenché si la nouvelle valeur entraîne une évaluation booléenne fausse.
Valeur : pour les propriétés de type numérique (NUMBER, INTEGER, LONG, etc.), un événement de modification sera déclenché si la nouvelle valeur de la propriété a changé de plus du seuil de tolérance spécifié par le paramètre dataChangeThreshold.
dataChangeThreshold
NUMBER
Nombre minimal de modifications de la propriété numérique avant le déclenchement d'un événement de modification de données.
Propriétés distantes
Des paramètres supplémentaires sont disponibles pour les propriétés liées à une propriété distante. Ils sont spécifiés sous la forme d'un tableau remoteBindingAspects.
* 
Il n'y a lieu de spécifier ces propriétés que si la propriété en cours de définition est liée à une propriété distante.
Paramètre
Type de base
Description
remote
BOOLEAN
"Vrai" si la propriété est liée à une propriété distante, "faux" dans le cas contraire. ("Faux" par défaut)
remotePropertyName
STRING
Nom de la propriété sur l'objet distant avec laquelle effectuer la liaison.
cacheMethod
STRING
Options disponibles pour lire les valeurs des propriétés Edge liées :
Read from server cache interdit toute demande serveur sur l'Edge pour récupérer la valeur de la propriété. La valeur est toujours récupérée à partir du cache du serveur. Toute mise à jour de la valeur mise en cache dépend du paramètre dataChangeType et de l'option Taux d'analyse de la propriété. Sans les paramètres de propriété sur l'Edge, il est possible que le serveur ne reçoive jamais la valeur de l'Edge et ne renvoie que la valeur par défaut stockée sur le serveur. Si le paramètre dataChangeType de la propriété est TOUJOURS ou VALEUR, la valeur de cacheMethod est définie par défaut sur ce paramètre.
Fetch from remote every read récupère la valeur sur l'Edge à chaque demande. Cette option n'implique aucune mise en cache. Si le paramètre dataChangeType de la propriété est JAMAIS, le type de cache est défini par défaut sur ce paramètre.
Cached for specific time vous permet de contrôler la fréquence des demandes sur l'Edge. Après la première demande, le serveur accède à la propriété sur le périphérique Edge pour récupérer sa valeur. Une autre demande sur l'Edge n'est effectuée qu'après expiration du paramètre cacheInterval défini. Notez que le périphérique Edge peut mettre à jour la valeur sur le serveur (via un push) pendant cet intervalle.
cacheInterval
NUMBER
Lorsque le paramètre cacheMethodest Cached for specific time, nombre de secondes pendant lesquelles le serveur met en cache la valeur de propriété avant qu'une demande ne soit envoyée à l'Edge pour récupérer la valeur de propriété. La valeur est toujours récupérée sur l'Edge lors de la première demande.
timeout
INTEGER
Durée d'attente maximale (en secondes) d'une réponse de la part de l'objet distant.
* 
Tout réglage sur la valeur 0 entraîne l'utilisation de la valeur système par défaut.
pushType
STRING
Définit la façon dont les valeurs doivent faire l'objet d'un push depuis le périphérique distant. Les valeurs possibles sont TOUJOURS, JAMAIS, ACTIVE, DESACTIVE et VALEUR (voir les explications fournies pour le paramètre dataChangeType ci-avant).
pushThreshold
NUMBER
Pour les propriétés de type numérique, ampleur que doit dépasser la modification de la propriété pour que soit déclenché un push de modification de données vers le périphérique distant.