QueryNamedPropertyHistory
Описание
Этот сервис запрашивает историю зарегистрированных свойств на основе входных параметров.
Входные данные
Имя параметра
Описание
Базовый тип
propertyNames
Таблица данных, содержащая список зарегистрированных свойств вещи.
Для таблицы данных ожидается структура данных EntityList.
INFOTABLE
maxItems
Максимальное число возвращаемых элементов в наборе результатов. Значение по умолчанию: 500. Этот параметр применяется после применения всех остальных фильтров.
NUMBER
startDate
Метка времени, после которого было зарегистрировано значение.
DATETIME
endDate
Метка времени, до которого было зарегистрировано значение.
DATETIME
quality
Качество зарегистрированной записи для свойства. Несколько значений могут быть отделены друг от друга с помощью вертикальной черты (|). Допустимые опции: GOOD, BAD и UNKNOWN.
STRING
fillOption
Допустимые опции: Previous и None. Если запрашивается Previous, в отчет будет передано предыдущее значение, если данное свойство не обновляется при обновлении других свойств. Если запрашивается None, значение не будет передано в отчет, если данное свойство не обновляется при обновлении других свойств.
Значение по умолчанию — Previous.
STRING
oldestFirst
Загрузить из самых старых или новейших записей. Значение по умолчанию: False.
BOOLEAN
query
Дополнительные критерии запроса для фильтрации данных.
Дополнительные сведения см. в разделе Параметр запроса для сервисов запросов.
QUERY
returnedMetadata
Определяет дополнительные столбцы, которые могут запрашиваться в дополнение к имени свойства, метке времени и значению свойства.
Значение по умолчанию: Quality.
STRING
Выходные данные
Имя параметра
Описание
Базовый тип
result
Возвращает таблицу данных, содержащую список исторических значений запрошенных свойств.
INFOTABLE
Пример
В примере вещь Thing1 имеет свойства Prop1 и Prop2 со значениями, введенными в следующем порядке:
Сущность
Prop1
Prop2
Thing1
1
2
11
22
В следующем запросе результирующая таблица данных будет содержать метку времени, Prop1, Prop1_Quality, Prop2 и Prop2_quality:
var params = {
infoTableName : "InfoTable",
dataShapeName : "EntityList"
};
var propertyNamesInfoTable = Resources["InfoTableFunctions"].CreateInfoTableFromDataShape(params);
// EntityList entry object
var prop1 = new Object();
prop1.name = "Prop1"; // STRING [Primary Key]
prop1.description = undefined; // STRING
var prop2 = new Object();
prop2.name = "Prop2"; // STRING [Primary Key]
prop2.description = undefined; // STRING
propertyNamesInfoTable.AddRow(prop1);
propertyNamesInfoTable.AddRow(prop2);

// result: INFOTABLE dataShape: ""
let result = Things["Thing1"].QueryNamedPropertyHistory({
propertyNames: propertyNamesInfoTable,
maxItems: 5,
startDate: new Date(new Date().setFullYear(new Date().getFullYear() - 1)),
endDate: Date.now(),
quality: 'GOOD|BAD',
fillOption: 'Previous',
oldestFirst: false,
query: "{ \"sorts\": [{\"fieldName\": \"Prop1\"}]}",
returnedMetadata: 'Quality'
});
В следующем запросе результирующая таблица данных будет содержать метку времени, Prop1 и Prop2:
var params = {
infoTableName : "InfoTable",
dataShapeName : "EntityList"
};
var propertyNamesInfoTable = Resources["InfoTableFunctions"].CreateInfoTableFromDataShape(params);
// EntityList entry object
var prop1 = new Object();
prop1.name = "Prop1"; // STRING [Primary Key]
prop1.description = undefined; // STRING
var prop2 = new Object();
prop2.name = "Prop2"; // STRING [Primary Key]
prop2.description = undefined; // STRING
propertyNamesInfoTable.AddRow(prop1);
propertyNamesInfoTable.AddRow(prop2);

// result: INFOTABLE dataShape: ""
let result = Things["Thing1"].QueryNamedPropertyHistory({
propertyNames: propertyNamesInfoTable,
maxItems: 5,
startDate: new Date(new Date().setFullYear(new Date().getFullYear() - 1)),
endDate: Date.now(),
quality: 'GOOD|BAD',
fillOption: 'None',
oldestFirst: false,
query: "{ \"sorts\": [{\"fieldName\": \"Prop1\"}]}",
returnedMetadata: 'Quality'
});
Было ли это полезно?