Определение модели ThingWorx в Composer > Моделирование > Вещи > Свойства вещи > Программное добавление свойств к вещам
Программное добавление свойств к вещам
Чтобы создавать новое локальное или удаленно-привязанное свойство для вещи, шаблона вещи или профиля вещи, можно использовать сервис AddPropertyDefinition. Сервис имеет следующие параметры:
Параметр
Базовый тип
Описание
name
STRING
Требуется. Наименование создаваемого свойства.
type
BASETYPENAME
Требуется. Базовый тип свойства ThingWorx. Список базовых типов ThingWorx см. в таблице "Базовые типы" в разделе Свойства вещи.
description
STRING
Описание свойства.
category
STRING
Наименование категории для классифицирования свойства.
dataShape
DATASHAPENAME
Определяет структуру данных, используемую свойством, когда типом свойства является INFOTABLE.
Сущность структуры данных, указанная для этого параметра, должна существовать перед выполнением сервиса.
Этот параметр не является обязательным. Однако тип INFOTABLE нельзя задать через Composer (с помощью кнопки "Задать") без указания структуры данных.
defaultValue
STRING
Указывает значение по умолчанию для свойства.
readOnly
BOOLEAN
ИСТИНА, если свойство доступно только для чтения, в противном случае ЛОЖЬ.
persistent
BOOLEAN
ИСТИНА, если значения будут сохраняться при перезапуске сервиса ThingWorx (значения сохраняются без изменений в поставщике хранилища данных); ЛОЖЬ, если значение очищается при перезапуске сервиса ThingWorx.
logged
BOOLEAN
Если true, свойство сохраняется в настроенном потоке значений.
dataChangeType
STRING
Определяет, что считается изменением значения свойства для регистрации или предупреждения. Одно из значений: Всегда, Никогда, Вкл., Выкл. или Значение.
Всегда - инициировать событие изменения для любого изменения значения свойства.
Никогда - никогда не инициировать событие изменения при изменении значения свойства.
Вкл. - для большинства значений любое изменение свойства будет инициировать событие изменения данных.
Выкл. - инициировать событие изменения данных, если вычисление нового значения дает логическое значение ЛОЖЬ.
Значение - для числовых типов (NUMBER, INTEGER, LONG и т. д.) инициируется событие изменения, если разность между старым и новым значением свойства превышает пороговое значение, заданное в параметре dataChangeThreshold.
dataChangeThreshold
NUMBER
Минимальное число, на которое должно измениться числовое свойство перед инициированием события изменения данных.
Удаленные свойства
Существуют дополнительные параметры для удаленно-привязанных свойств. Они задаются в виде массива remoteBindingAspects.
* 
Эти свойства не требуется задавать, если определяемое свойство не привязано к удаленному свойству.
Параметр
Базовый тип
Описание
remote
BOOLEAN
True, если привязано к удаленному свойству, в противном случае false. (По умолчанию: false.)
remotePropertyName
STRING
Наименование свойства удаленной вещи, к которому выполняется привязка.
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 для получения его значения. Другой запрос к Edge не выполняется до истечения определенного интервала cacheInterval. Отметим, что устройство Edge может обновлять значение на сервере (через принудительную отправку) за этот период.
cacheInterval
NUMBER
Если для cacheMethod задано Cached for specific time, это число секунд, в течение которых сервер кэширует значение свойства перед отправкой запроса к Edge, чтобы получить значение свойства. Значение всегда загружается с устройства Edge после первого запроса.
timeout
INTEGER
Время ожидания (в секундах) отклика от удаленной вещи.
* 
При задании значения 0 будет использоваться системное значение по умолчанию.
pushType
STRING
Определяет способ передачи значений от удаленного устройства. Задайте значения ALWAYS, NEVER, ON, OFF или VALUE с определениями, подобными dataChangeType выше.
pushThreshold
NUMBER
Определяет пороговое значение, которое должно превысить свойство числового типа, прежде чем изменение данных будет передано на удаленное устройство.
Было ли это полезно?