Thing Group に関する FAQ
質問
回答
Thing Group へのランタイムアクセス許可の委任を設定できますか?
いいえ。Thing Group には Thing エンティティと同じサービスセットがないことがその理由です。これは既成の Thing Template や Thing Shape から作成されたカスタム Thing に当てはまり、カスタム Thing Template およびカスタム Thing Shape で特に当てはまります。
Thing Group メンバーシップ関連の監査ログメッセージはどのようにして有効にしますか?
これは platform-settings.json ファイルで有効にする必要があります。詳細については、監査サブシステムメッセージを参照してください。
ThingWorx アプリケーションで管理または使用できる 'すべての Thing' のリストはどのようにして取得しますか?
表示アクセス許可を持つすべての Thing エンティティを表示するには次の 2 つの方法があります。
Composer の場合: Composer の「モデリング」セクションで「Thing」を選択すると、表示が許可されているすべての Thing が表示されます。ユーザーが Composer に対する必要なアクセス許可および Thing コレクションの Thing を表示するアクセス許可を持っている場合、Thing Group は必要ありません。
REST API を介する場合: ThingWorx では、Thing コレクションから Thing のリストを取得するための REST 用 API、JavaScript サービス、および Java 拡張機能ロジックが提供されています。その Thing コレクションリスト API を呼び出すロジックのユーザーコンテキストによって、使用される表示アクセス許可が決まり、返される Thing のリストが決まります。ThingWorx アプリケーションは JavaScript サービスと Java 拡張機能を使用して記述できます。REST API の場合、リソース URI は /Thingworx/Things エンドポイントです。
ユーザーまたはユーザーグループはどの Thing Group または Thing を表示できますか?
サービスの承認されたユーザーがこれを以下のように決定できます。
1. ユーザーまたはユーザーグループがメンバーとして属している組織または組織単位を特定します。
2. ThingWorx サービススクリプトの for ループなど、反復的アプローチを使用して、すべての Thing/Thing Group を反復処理し、GetVisibilityPermissions または GetVisibilityPermissionsAsJSON サービスを呼び出して、最初のステップで取得した組織/組織単位がリストに含まれているかどうかを調べます。
* 
これらのサービスは特権 API ワークフローで使用するためのものであり、これらのサービスでは正確なメンバーシップがチェックされ、グループの表示権限を考慮することなくリストが返されるので、これらのサービスを呼び出すアクセス許可を設定する際には注意が必要です。
Thing Group の表示アクセス許可の委任を有効にすると、パフォーマンスにはどのような影響がありますか?
Thing Group の表示アクセス許可の委任が有効になっている場合、パフォーマンスへの影響は、次のようないくつかの展開のコンフィギュレーションによって異なります。
ユーザーが管理者であるか Thing または Thing Group の所有者である場合、表示アクセス許可の委任機能でさらにチェックされることはありません。
リクエストに対して許容可能/有効な表示アクセス許可が Thing/Thing Group で明示的に付与されているユーザーについては、表示アクセス許可の委任機能でさらにチェックされることはありません。
Thing Group 階層モデルのレイアウト (深さ、幅、数など) は、その階層の参加者全体の表示権限チェックアルゴリズムに影響を与えます。
Thing Group メンバーシップ変更 (モデル変更) によって前回の表示権限チェックが無効になり、前の箇条書きの再計算が必要になる頻度。
特定の Thing/Thing Group の表示権限にアクセスする頻度によっては、前の表示権限チェックデータが使用できなくなっている場合、再計算が必要になることがあります。
* 
表示アクセス許可の委任が無効になっている場合、表示権限チェックのパフォーマンスは直系の Thing/Thing Group の表示権限チェックのパフォーマンスと一致します。
ThingWorx アプリケーションで使用するモデル/Thing Template 内のすべての Thing のリストはどのように取得しますか?
表示されるすべての Thing のリストを取得するには:
* 
Axeda モデルは ThingWorx で Thing Template として表されます。
Thing Template および Thing Shape に対して、(REST、JavaScript サービス、Java 拡張機能を介して) 以下のいずれかの QueryImplementingThings サービスのサービス呼び出しを使用します。
QueryImplementingThings
QueryImplementingThingsWithData
QueryImplementingThingsWithNamedData
QueryImplementingThingsWithPropertyHistory
QueryImplementingThingsWithNamedPropertyHistory
以下のサービスはクエリーパラメータを指定することなく使用できます。
GetImplementingThings
GetImplementingThingsWithData
ThingWorx アプリケーションで使用する地域の Thing はどのようにモデル化しますか?
地域とは、モデルタグ、プロパティ値、Thing Group エンティティなどを使用してモデル化できる地理的領域または地区のことです。
Thing Group エンティティには、地域内に地域を階層としてネストできるネイティブ階層機能が備わっています。階層内の Thing および Thing Group を表示する権限を特定のユーザーのセットに対して付与できます。
1. REST API、ThingWorx のサービス、または Thing Group エンティティ UI を使用して Thing Group を作成します。
2. 名前、説明、タグなどの追加のエンティティモデルデータを指定して、Thing Group エンティティの詳細をカスタマイズします。
3. Thing Group メンバー REST API またはサービスを使用して、任意の Thing またはサブ地域 Thing Group を Thing Group のメンバーとして追加します。
地域の Thing はどのようにリストしますか?
地域をどのように実装し、地域の Thing をどのようにマークしたかによって、いくつかのオプションがあります。モデルタグ (階層なし)、文字列プロパティ値 (階層なし)、または Thing Group (階層あり) を使用できます。
モデルタグまたは文字列プロパティ値を使用した場合、さまざまなサーチリソースサービスを使用でき、Thing Template/Thing Shape がわかっている場合には、QueryImplementingThingsQueryImplementingThingsWithDataQueryImplementingThingsWithNamedDataQueryImplementingThingsWithPropertyHistoryGetImplementingThingsWithData などの各種関連サービスを使用して、サーチ基準を満たす Thing のリストを取得できます。
地域を完全にまたは部分的に Thing Group として実装した場合、特定の地域の Thing Group を特定して、クエリー基準なしで Thing のリストを返すサービスを呼び出すことができます。
ThingWorx アプリケーションで管理または使用する顧客の Thing はどのようにモデル化しますか?
顧客、会社、企業、部門は、モデルタグ、プロパティ値、または Thing Group エンティティを使用してモデル化できます。これらのモデル化の例で Thing Group を使用した場合、事業やその他の類似する非地理的構造を階層としてネストできます。階層内の Thing および Thing Group を表示する権限を特定のユーザーのセットに対して付与できます。
1. REST API、ThingWorx のサービス、または Thing Group エンティティ UI を使用して Thing Group を作成します。
2. 名前、説明、タグなどの追加のエンティティモデルデータを指定して、Thing Group エンティティの詳細をカスタマイズします。
3. Thing Group メンバー REST API またはサービスを使用して任意の Thing またはサブ地域 Thing Group を Thing Group のメンバーとして追加することで、ネイティブのネスト/階層機能を利用します。
顧客の Thing はどのようにリストしますか?
顧客をどのように実装し、顧客の Thing をどのようにマークするかによって、いくつかのオプションがあります。モデルタグ (階層なし)、文字列プロパティ値 (階層なし)、または Thing Group (階層あり) などを使用できます。
モデルタグまたは文字列プロパティ値を使用した場合、さまざまなサーチリソースサービスを使用でき、Thing Template/Thing Shape がわかっている場合には、QueryImplementingThingsQueryImplementingThingsWithDataQueryImplementingThingsWithNamedDataQueryImplementingThingsWithPropertyHistoryGetImplementingThingsWithData などの各種サービスを使用して、サーチ基準を満たす Thing のリストを取得できます。
顧客を完全にまたは部分的に Thing Group として実装した場合、顧客の Thing Group を特定して、クエリー基準なしで Thing のリストを返すサービスを呼び出すことができます。
ThingWorx アプリケーションで管理または使用するシステムの Thing はどのようにモデル化しますか?
複数のオプションがあります。
Thing に定義するプロパティのベースタイプとして THINGNAME を使用します。これにより、これらのプロパティを持つ Thing が、これらのプロパティによって参照される Thing を格納するコンテナ Thing であることを示すことができます。THINGNAME ベースタイププロパティの値を名前として持つこれらの Thing は、含まれている Thing と見なされます。また、これらのプロパティのタイプを厳密に指定することで、特定の含まれている Thing によって特定の Thing Shape または Thing Template を実装できます。
含まれている Thing がネットワーク内の 1 つのノードにのみ含まれている場合、このシナリオではネットワークを定義/使用します。1 つのネットワーク内の複数のノードに Thing が含まれている場合、前のシナリオを使用します。
上記のアプローチでは十分でない場合、Thing Group の一般機能を使用してアプリケーションロジックまたはモデルの要件を満たすこともできます。
自宅や職場などの同じ場所にある Thing のグループはどのようにモデル化しますか?
これらの Thing は同じ場所を共有しているので、モデルタグ、プロパティ値、Thing Group、または含まれている Thing を使用してグループをモデル化できます。
Thing Group にこれらの Thing をメンバーとして格納している場合、Thing が含まれている Thing Group をネストして、Thing を自宅や職場などの同じ場所にある Thing のサブグループに分類して収集することもできます。この例としては、建物内の部屋またはフロアをネストされたサブグループとすることができます。
場所を地域に関連付けるにはどのようにしますか?
プロパティ定義で LOCATION ベースタイプ (緯度、経度、高度データ) を使用するか、住所などの場所やその他の座標系またはロケールフォーマットの場所メタデータを含む独自のインフォテーブルを作成します。
エンティティモデルまたは ThingWorx アプリケーションが "特定の地域内に含まれているか所有されている" 場所データに関する知識を必要とする場合、アプリケーションのランタイムのパフォーマンスの要件に応じて、その場所データの承認をデータテーブルに保存できます。この情報は、Thing Group 内のさまざまな階層レベルで、これらの Thing Group のメンバーとして、またはモデルタグやデータタグなどのその他のカスタム/アプリケーション固有の関連付けによって存在できます。
場所を顧客に関連付けるにはどのようにしますか?
プロパティ定義で LOCATION ベースタイプ (緯度、経度、高度データ) を使用するか、住所などの場所やその他の座標系またはロケールフォーマットの場所メタデータを含む独自のインフォテーブルを作成します。
エンティティモデルまたは ThingWorx アプリケーションが "特定の顧客、企業、会社、または部門内に含まれているか所有されている" 任意のフォーマットの場所データに関する知識を必要とする場合、アプリケーションのランタイムのパフォーマンスの要件に応じて、その場所データの承認をデータテーブルに保存できます。この情報は、Thing Group 内のさまざまな階層レベルで、これらの Thing Group のメンバーとして、またはモデルタグやデータタグなどのその他のカスタム/アプリケーション固有の関連付けによって存在できます。
1 つ以上の Thing に場所を追加するにはどのようにしますか?
ThingWorx には、Thing、Thing Template、および Thing Shape プロパティ定義を介して Thing にデータを割り当てるリッチモデルが用意されており、これらの値は Thing インスタンスから設定、保存、取得されます。
Thing が何らかの共通のタイプで、共通の Thing Template を共有しているか、タイプは異なるが共通の Thing Shape を共有しているか共有可能な場合、その共通の Thing Template または Thing Shape にプロパティを 1 回定義するだけですみます。
Thing Template または Thing Shape からのプロパティ定義の値がその Thing に設定されます。LOCATION、STRING、またはその他のベースタイプのプロパティを定義している場合、その場所プロパティの値をその Thing に設定できます。そのプロパティの値は、そのベースタイプや、アプリケーション内でサポートする座標や住所などのデータのカスタムフォーマットによって異なります。
1 つ以上の Thing に顧客を追加するにはどのようにしますか?
ThingWorx には、Thing、Thing Template、および Thing Shape プロパティ定義を介して Thing にデータを割り当てるリッチモデルが用意されており、これらの値は Thing インスタンスから設定、保存、取得されます。
Thing またはアセットが何らかの共通のタイプで、共通の Thing Template を共有しているか、タイプは異なるが共通の Thing Shape を共有しているか共有可能な場合、その共通の Thing Template または Thing Shape にプロパティを 1 回定義するだけですみます。
Thing Template または Thing Shape からのそのプロパティ定義の値がその Thing に設定されます。STRING またはその他のベースタイプのプロパティを定義している場合、その顧客、企業、会社、または部門名のプロパティの値をその Thing またはアセットに設定できます。 アセット. そのプロパティの値は、そのベースタイプや、アプリケーション内でサポートする顧客、企業、会社、部門名などのデータのカスタムフォーマットによって異なります。
Thing Group の子を表示するにはどのようにしますか?
Composer で、既存の Thing Group を開きます。「メンバーシップの詳細」タブをクリックし、コンボボックスを見つけて「直系子の Thing Group」を選択します。
Thing Group の子の詳細を表示するには、「メンバーシップの詳細」タブのパネルでそのエントリをクリックし、「表示」を選択します。そのビューから、「メンバーシップの詳細」に移動して、その Thing Group の直系子の Thing Group を確認します。
Thing Group の親 Thing Group を表示するにはどのようにしますか?
Composer で、既存の Thing Group を開きます。「メンバーシップの詳細」タブをクリックし、コンボボックスを見つけて「直系親の Thing Group」を選択します。
Thing Group の子の詳細を表示するには、「メンバーシップの詳細」タブのパネルでそのエントリをクリックし、「表示」を選択します。そのビューから、「メンバーシップの詳細」に移動して、その Thing Group の直系子の Thing Group を確認します。
ネットワークと Thing Group はどのような場合に使用しますか?
ネットワークは、生産ライン内のマシンなど、Thing 間に直接の接続関係がある場合に推奨されます。Thing Group は、テンプレートタイプ、場所、顧客、地域などの一般的な特性によって Thing をグループ化する場合に推奨されます。
ネットワークと Thing Group のどちらによっても階層をモデル化できますが、いくつかの違いについて考慮する必要があります。
ネットワークで特定のノードの子と親をたどるにはネットワークを利用する必要があります。
ネットワークに別のネットワークエンティティをメンバーとして含めることはできません。
Thing Group は階層化して階層をナビゲーションする機能を提供します。このため、Thing Group では地域、顧客、およびその他の階層関係をモデル化することが推奨されます。
Thing Group をほかの Thing Group で子として再使用することで、複数の階層の再使用可能なサブセットブランチを作成できます。
これは役に立ちましたか?