Composer での ThingWorx モデルの定義 > モデル化 > Thing > Thing プロパティ > プログラムによる Thing へのプロパティの追加
プログラムによる Thing へのプロパティの追加
AddPropertyDefinition サービスを使用して、Thing、Thing Template、または Thing Shape にローカルプロパティまたはリモートバインドプロパティを新規作成できます。このサービスには以下のパラメータがあります。
パラメータ
ベースタイプ
説明
name
STRING
必須。作成するプロパティの名前。
type
BASETYPENAME
必須。プロパティの ThingWorx ベースタイプ。ThingWorx ベースタイプのリストについては、 Thing プロパティの表「ベースタイプ」を参照してください。
description
STRING
プロパティの説明。
category
STRING
プロパティを分類するカテゴリ名。
dataShape
DATASHAPENAME
プロパティのベースタイプが INFOTABLE である場合、そのプロパティによって使用されるデータシェイプを定義します。
このサービスが実行される前に、このパラメータに指定されているデータシェイプエンティティが存在する必要があります。
このパラメータは必須ではありません。ただし、データシェイプが指定されていない場合、Composer から (「設定」ボタンを使用して) INFOTABLE を設定することはできません。
defaultValue
STRING
プロパティのデフォルト値を指定します。
readOnly
BOOLEAN
そのプロパティが読み取り専用の場合には true、そうでない場合には false になります。
persistent
BOOLEAN
ThingWorx サービスを再起動した後も値が永続する場合には true (値は永続化プロバイダに保存されます)、ThingWorx サービスを再起動すると値がクリアされる場合には false になります。
logged
BOOLEAN
true の場合、設定されている値ストリームにプロパティが保存されます。
dataChangeType
STRING
プロパティの値がどのように変化したときにログ記録やアラートが行われるかを定義します。「常時」「なし」「オン」「オフ」「値」 のいずれか。
「常時」 - プロパティの値が変化した場合に変更イベントを発生させます。
「なし」 - プロパティの値が変化したときに変更イベントは発生しません。
オン - ほとんどの値では、プロパティが変化するとデータ変更イベントが発生します。
オフ - 新しい値の評価結果がブール型 false である場合にデータ変更イベントを発生させます。
「値」 - 数値タイプ (NUMBER、INTEGER、LONG など) の場合、プロパティの以前の値と新しい値の差が dataChangeThreshold パラメータで指定されているしきい値を超えると変更イベントが発生します。
dataChangeThreshold
NUMBER
データ変更イベントが発生するために数値プロパティが変化する必要のある最小数。
リモートプロパティ
リモートバインドプロパティには追加のパラメータがあります。これらは remoteBindingAspects の配列として指定されます。
* 
定義するプロパティをリモートプロパティにバインドしない場合、これらのプロパティを指定する必要はありません。
パラメータ
ベースタイプ
説明
remote
BOOLEAN
プロパティをリモートプロパティにバインドする場合には true、バインドしない場合には false。(デフォルトは false)
remotePropertyName
STRING
バインド先 Remote Thing のプロパティの名前。
cacheMethod
STRING
バインドする Edge プロパティ値を読み取る方法:
Read from server cache では、サーバーが Edge にプロパティの値をリクエストすることが禁止されます。値は常にサーバーキャッシュから取得されます。キャッシュされた値に対する更新は、プロパティの dataChangeType とスキャン速度によって決まります。Edge にプロパティ設定がないと、サーバーが Edge から値を取得せず、サーバーに保存されているデフォルト値のみを返す可能性があります。プロパティの dataChangeType が ALWAYS または VALUE である場合、cacheMethod はデフォルトでこの設定になります。
Fetch from remote every read では、リクエストのたびに Edge から値を取得します。このオプションにはキャッシュは必要ありません。プロパティの dataChangeType が NEVER である場合、キャッシュタイプはデフォルトでこの設定になります。
Cached for specific time では、Edge へのリクエストを実行する頻度を制御できます。最初のリクエストの後に、サーバーは Edge デバイスのプロパティにアクセスしてその値を取得します。定義されている cacheInterval が経過するまで、別の Edge へのリクエストは行われません。その期間に Edge デバイスがサーバー上の値を (プッシュによって) 更新する可能性があることに注意してください。
cacheInterval
NUMBER
cacheMethodCached for specific time である場合は、プロパティ値を取得するために Edge にリクエストを送信する前に、サーバーがプロパティ値をキャッシュする秒数。この値は、常に最初のリクエスト時に Edge から取得されます。
timeout
INTEGER
Remote Thing からの応答を待つ時間 (秒)。
* 
この値を 0 に設定するとシステムのデフォルトが使用されます。
pushType
STRING
リモートデバイスからの値のプッシュ方法を定義します。ALWAYS、NEVER、ON、OFF、VALUE に設定します。定義は前述の dataChangeType とほぼ同じです。
pushThreshold
NUMBER
データ変更がリモートデバイスにプッシュされるために数値タイプのプロパティが超える必要があるしきい値を定義します。