QueryNamedPropertyHistory
说明
此服务用于根据输入参数查询记录的属性的历史记录。
输入
参数名称
说明
基本类型
propertyNames
此信息表包含针对事物记录的属性的列表。
信息表的预期数据形状为 EntityList
INFOTABLE
maxItems
在结果集中返回的最大项数。默认值为 500。此参数仅在应用了所有其他筛选器后才会应用。
NUMBER
startDate
在此时间戳之前记录值。
DATETIME
endDate
在此时间戳之后记录值。
DATETIME
quality
为属性记录的条目的质量。存在多个值时,可以用竖线 (|) 分隔。有效值为 GOODBADUNKNOWN
STRING
fillOption
有效值为 PreviousNone。如果请求 Previous,则在给定属性没有更新而其他属性进行了更新时,将报告先前的值。如果请求 None,则在给定属性没有更新而其他属性进行了更新时,不会报告任何值。
默认值为 Previous
STRING
oldestFirst
用于指示:从最早的记录还是从最近的记录开始检索。默认值为 False
BOOLEAN
query
用于筛选数据的附加查询条件。
有关详细信息,请参阅查询服务的查询参数
QUERY
returnedMetadata
用于定义:除属性名称、时间戳和属性值外,可以请求的其他列。
默认值为 .Quality
STRING
输出
参数名称
说明
基本类型
result
返回一个信息表,其中包含所请求属性的历史值列表。
INFOTABLE
示例
在以下示例中,Thing1 具有属性 Prop1Prop2,且属性值以下列顺序输入:
实体
Prop1
Prop2
Thing1
1
2
11
22
在以下查询中,生成的信息表将包含时间戳、Prop1Prop1_QualityProp2Prop2_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'
});
在以下查询中,生成的信息表将包含时间戳、Prop1Prop2
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'
});
这对您有帮助吗?