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'
});
這是否有幫助?