Сведения
|
|
---|---|
Описание
|
Возвращает число свойств, указанных в критериях запроса.
|
Параметры
|
query
• Базовый тип QUERY
• Допустимые значения см. в разделе Поддерживаемые элементы кортежа фильтра запроса.
|
Результат (недопустимый параметр запроса)
|
Сообщение об ошибке, указывающее на недопустимый запрос.
|
Результат (допустимый параметр запроса)
|
Число
|
|
Эти типы элементов чувствительны к регистру.
|
Имя поля (тип элемента)
|
Тип
|
Тип значения
|
Описание
|
Примеры значений:
|
Примеры JSON
|
||
---|---|---|---|---|---|---|---|
entityNameMask
|
LIKE
|
STRING
|
• Необязательное поле. entityNameMask является именем неявного поля.
• Значение должно иметь тип STRING и содержать имя сущности в качестве значения для выбора только тех записей в property_vtq, которые удовлетворяют условию LIKE для указанного значения value.
|
• *
• Thing1
• *hing1*
|
{ "fieldName": "entityNameMask", "type": "LIKE", "value", "*" }
{ "fieldName": "entityNameMask", "type": "LIKE", "value", "Thing1" }
{ "fieldName": "entityNameMask", "type": "LIKE", "value", "*hing1*" }
|
||
entityTypeMask
|
LIKE
|
STRING
|
• Необязательное поле. entityTypeMask является именем неявного поля.
• Значение должно иметь тип STRING и содержать тип сущности в качестве значения для выбора записей в property_vtq, которые удовлетворяют условию LIKE для указанного значения value.
|
• *
• Thing
• *hin*
|
{ "fieldName": "entityTypeMask", "type": "LIKE", "value", "*" }
{ "fieldName": "entityTypeMask", "type": "LIKE", "value", "Thing" }
{ "fieldName": "entityTypeMask", "type": "LIKE", "value", "*Thin*" }
|
||
propertyNameMask
|
LIKE
|
STRING
|
• Необязательное поле. propertyNameMask является именем неявного поля.
• Значение должно иметь тип STRING и содержать имя свойства в качестве значения для выбора записей в property_vtq, которые удовлетворяют условию LIKE для указанного значения value.
|
• *
• prop1
• *rop1*
• *erialNumber
• model*umbe*
|
{ "fieldName": "propertyNameMask", "type": "LIKE", "value", "*" }
{ "fieldName": "propertyNameMask", "type": "LIKE", "value", "prop1" }
{ "fieldName": "propertyNameMask", "type": "LIKE", "value", "*rop1*" }
{ "fieldName": "propertyNameMask", "type": "LIKE", "value", "*erialNumber" }
{ "fieldName": "propertyNameMask", "type": "LIKE", "value", "model*umbe" }
|
||
propertyBaseType
|
LIKE
|
STRING
|
• Необязательное поле. propertyBasetype является именем неявного поля.
• Значение должно иметь тип STRING и содержать имя действительного базового типа в качестве значения для выбора записей в property_vtq, которые удовлетворяют условию LIKE для указанного значения value.
• Если propertyIsIndexed имеет значение true, то значение propertyBaseType должно быть допустимым индексируемым базовым наименованием базового типа одного из следующих значений:
◦ STRING
◦ NUMBER
◦ INTEGER
◦ LONG
◦ BOOLEAN
◦ DATETIME
◦ THINGNAME
◦ USERNAME
◦ GROUPNAME
◦ HYPERLINK
◦ MASHUPNAME
◦ MENUNAME
◦ DASHBOARDNAME
◦ TEXT
◦ GUID
◦ NOTIFICATIONCONTENTNAME
◦ NOTIFICATIONDEFINITIONNAME
◦ STYLETHEMENAME
◦ THINGGROUPNAME
• Если propertyIsIndexed имеет значение false, можно указать один из следующих вариантов:
◦ PASSWORD
◦ INFOTABLE
◦ LOCATION
◦ IMAGE
◦ XML
◦ JSON
◦ QUERY
◦ HTML
◦ BLOB
◦ VEC2
◦ VEC3
◦ VEC4
◦ THINGCODE
|
• thingname
• thingNaMe
• THINGNAME
• THINGNamE
• String
• STRING
• BOOLean
• Boolean
• veC2
|
{ "fieldName": "propertyBaseType", "type": "LIKE", "value", "thingname" }
{ "fieldName": "propertyBaseType", "type": "LIKE", "value", "thingNaMe" }
{ "fieldName": "propertyBaseType", "type": "LIKE", "value", "THINGNAME" }
{ "fieldName": "propertyBaseType", "type": "LIKE", "value", "THINGNamE" }
{ "fieldName": "propertyBaseType", "type": "LIKE", "value", "String" }
{ "fieldName": "propertyBaseType", "type": "LIKE", "value", "STRING" }
{ "fieldName": "propertyBaseType", "type": "LIKE", "value", "BOOLean" }
{ "fieldName": "propertyBaseType", "type": "LIKE", "value", "Boolean" }
{ "fieldName": "propertyBaseType", "type": "LIKE", "value", "veC2" }
|
||
propertyIsIndexed
|
EQ
|
BOOLEAN
|
• Необязательное поле. propertyIsIndexed является именем неявного поля.
• Его тип значения должен быть допустимым значением BOOLEAN, которое используется для фильтрации индексированных и неиндексированных свойств в property_vtq, которые удовлетворяют условию EQ для указанного значения value.
• Допустимыми значениями являются true и false.
|
• true
• false
|
{ "fieldName": "propertyIsIndexed", "type": "EQ", "value", true}
{ "fieldName": "propertyIsIndexed", "type": "EQ", "value", false}
|
Действия
|
Причины
|
Пример запроса JSON GetPropertyVTQCount
|
---|---|---|
Определить во время выполнения платформы ThingWorx число свойств, содержащих индексированное значение наименования вещи.
|
Вы хоитите занать, сколько раз вещь (Thing1) указана в любом (*) свойстве вещи, чтобы определить, сколько раз оно используется в пользовательской модели приложения в платформе. Это может быть примером большей оптимизации запроса "Где используется" для функциональности свойств, которые могут быть предоставлены как входные параметры запроса для сервиса QueryImplementingThingOptimized:
{
"filters": { "fieldName": "*", "type": "LIKE", "value": "Thing1" } } |
{
"filters": { "filters": [ { "fieldName": "propertyBaseType", "type": "LIKE", "value": "ThingName" }, { "fieldName": "propertyIsIndexed", "type": "EQ", "value": true } ], "type": "AND" }, "type": "SELF" } |
Определите во время выполнения платформы ThingWorx число свойств (и, соответственно, вещей), содержащих обозначение модели B-X42, которые не индексируются и имеют базовый тип STRING.
|
Необходимо узнать, сколько аккумуляторов, моделируемых как вещи платформы, имеют новый тип аккумулятора B-X42 в соответствии с обозначением модели.
{
"filters": { "fieldName": "modelNumber", "type": "LIKE", "value": "B-X42" } } |
{
"filters": { "filters": [ { "fieldName": "propertyBaseType", "type": "LIKE", "value": "String" }, { "fieldName": "propertyIsIndexed", "type": "EQ", "value": false }, { "fieldName": "propertyNameMask", "type": "LIKE", "value": "B-X42" } ], "type": "AND" }, "type": "SELF" } |
Определите во время выполнения платформы ThingWorx число свойств (и, соответственно, вещей), содержащих обозначение модели B-X*, которые индексируются и имеют базовый тип STRING.
|
Требуется узнать, сколько аккумуляторов, моделируемых как вещи в вашей платформе, имеют тип аккумулятора безотносительно к конкретному значению обозначения модели (т. е. 1, 2, 3, 41, 43 и т. д.).
{
"filters": { "fieldName": "modelNumber", "type": "LIKE", "value": "B-X*" } } |
{
"filters": { "filters": [ { "fieldName": "propertyBaseType", "type": "LIKE", "value": "String" }, { "fieldName": "propertyIsIndexed", "type": "EQ", "value": true }, { "fieldName": "propertyNameMask", "type": "LIKE", "value": "B-X*" } ], "type": "AND" }, "type": "SELF" } |
Недопустимый запрос
|
Пример, который приведет к ошибочным результатам
|
||
---|---|---|---|
Отфильтруйте поля кортежа, которые задают наборы фильтров с условием ИЛИ.
|
{
"filters": { "filters": [ { "fieldName": "propertyBaseType", "type": "LIKE", "value": "String" }, { "fieldName": "propertyIsIndexed", "type": "EQ", "value": true } ], "type": "OR" }, "type": "SELF" } |
||
Один из пяти элементов типа в качестве имен полей встречается более одного раза.
|
{
"filters": { "filters": [ { "fieldName": "propertyBaseType", "type": "LIKE", "value": "String" }, { "fieldName": "propertyBaseType", "type": "LIKE", "value": "Long" } ], "type": "AND" }, "type": "SELF" } |
||
Недопустимые значения для propertyBaseType.
|
{
"filters": { "filters": [ { "fieldName": "propertyBaseType", "type": "LIKE", "value": "InvalidType" }, { "fieldName": "propertyIsIndexed", "type": "EQ", "value": true } ], "type": "AND" }, "type": "SELF" } |
||
Недопустимые значения для fieldname.
|
{
"filters": { "filters": [ { "fieldName": "invalidFieldName", "type": "LIKE", "value": "*" } ], "type": "AND" }, "type": "SELF" } |