GetThingPropertyValues
説明
GetThingPropertyValues は、返されたデータセットを取り込むために必要なキャッシュ呼び出しの回数を減らすためにプロパティ値を一括で取得します。リクエストされたプロパティがリクエストされた Thing 上にない場合、空の値が返されます。
入力
パラメータ名
説明
ベースタイプ
thingReferences
Thing のリストから成るインフォテーブル。
インフォテーブルに必要なデータシェイプは EntityReference です。
INFOTABLE
dataShapeName
クエリーによって返されるプロパティの値をカプセル化するデータシェイプの名前。
データシェイプはThingWorx モデル内に存在しなければなりません。データシェイプはシステムエンティティまたはユーザー定義エンティティのどちらでも構いません。
DATASHAPENAME
出力
パラメータ名
説明
ベースタイプ
result
thingReferences 入力でリクエストされた各 Thing の、データシェイプ内のリクエストされたプロパティの値を含むインフォテーブルを返します。
返されたインフォテーブルのデータシェイプには、Thing の名前と、入力データシェイプ内のすべてのプロパティが含まれます。
INFOTABLE
この例では、3 つの Thing、1 つのデータシェイプ、1 つのストリームが異なるプロパティで定義されています。
エンティティ
プロパティ
Thing1
Property1
Thing2
Property1Property2
Thing3
Property1Property2Property3
TestStream
Property1Property2Property3
TestDatashape
Property1Property3Property4
以下にコードの例を示します。
// Create a thingRef Infotable with the datashape EntityReference
var thingRefInfoTableParams = {
infoTableName : "InfoTable",
dataShapeName : "EntityReference"
};
var thingRef = Resources["InfoTableFunctions"].CreateInfoTableFromDataShape(thingRefInfoTableParams);
// populate thingRef InfoTable
var thing1Entry = new Object();
thing1Entry.name = "Thing1"; // STRING
thing1Entry.type = "Thing"; // STRING
var thing2Entry = new Object();
thing2Entry.name = "Thing2"; // STRING
thing2Entry.type = "Thing"; // STRING
var thing3Entry = new Object();
thing3Entry.name = "Thing3"; // STRING
thing3Entry.type = "Thing"; // STRING
var streamEntry = new Object();
streamEntry.name = "TestStream"; // STRING
streamEntry.type = "Thing"; // STRING
thingRef.AddRow(thing1Entry);
thingRef.AddRow(thing2Entry);
thingRef.AddRow(thing3Entry);
thingRef.AddRow(streamEntry);
// result: INFOTABLE dataShape: "RootEntityList"
result = Resources["EntityServices"].GetThingPropertyValues({
thingReferences: thingRef /* INFOTABLE */,
dataShapeName: "TestDatashape" /* DATASHAPENAME */
});
次の表に、上記のクエリーの出力を示します。リクエストされたいずれの Thing でも Property4 が定義されていないので、Property4 は空です。Thing1Thing2 では Property3 が定義されていないので、Property3 は空です。
thingName
Property1
Property3
Property4
Thing1
11
Thing2
21
Thing3
31
33
TestStream
S1
S3
これは役に立ちましたか?