アイテムリスト
定義と用法
アイテムリストコンポーネントは、データセット内のアイテムのリストをフラットリストまたは構造ツリーとして表示できるウィジェットです。アイテムリストを使用することで、エンドユーザーはリスト全体または特定のリストアイテムに対して操作を実行できます。データがフラットリストで表示される場合、エンドユーザーはアイテムリストを使用してリストをサーチ、並べ替え、フィルタすることもできます。
* 
ThingWorx Navigate 9.3 以前では、アイテムリストコンポーネントは組み込みマッシュアップでした。アイテムリストがウィジェットとして使用可能になり、アイテムリストマッシュアップは廃止予定になりました。
アイテムリストコンポーネントの 2 つのサンプルイメージを以下に示します。
次の方法で、アイテムリストコンポーネントを設定できます。
サーチとフィルタを有効化または無効化 (フラットリストのみ)
初期のフィルタと並べ替えのオプションを設定 (フラットリストのみ)
グリッド内の行の最大数を設定
アイテムをリストから選択できるかどうかを定義し、できる場合は複数のアイテムを選択できるかどうかを定義
初期展開レベルを設定 (構造ツリーのみ)
エクスポート操作を表示するかどうかを選択し、ユーザーがエクスポートするファイルのフォーマットを選択できるようにする
すべてのデータをエクスポートするか、フィルタ基準と一致するデータのみをエクスポートするかを選択
埋め込み操作バーで使用可能な操作を設定
フィルタボックスまたはサーチボックスを使用して、アイテムリストをフィルタまたはサーチできます。ただし、フィルタボックスとサーチボックスがコンフィギュレーションで有効になっていない場合は、フィルタとサーチを使用できません。列タイトルをクリックして、その列によってリストを並べ替えることができます。並べ替え順序を逆にするには、もう一度列タイトルをクリックします。
アイテムリストコンポーネントには、埋め込みの操作バーコンポーネントが含まれています。操作バーを設定することにより、1 つまたは複数のリストアイテムに対して操作を実行するなど、追加の機能を有効にできます。詳細については、操作バー (ベータ)を参照してください。デフォルトでは、アイテムリストには、アイテムを CSV ファイルにエクスポートする「エクスポート」操作が含まれています。
アイテムリストには、「デフォルトに戻す」ボタンもあります。「デフォルトに戻す」ボタンは、列の並べ替え、スワップ、表示/非表示など、フィルタ、サーチ、グリッドレベルの操作のデフォルト設定を回復します。
アイテムリストコンポーネントで使用できる定義済みコンフィギュレーションは、アクティビティ変更適用アイテム添付資料設計ファイル図面部品構造タスクです。
フラットリストと構造ツリー
前述のとおり、アイテムリストはフラットリストと構造ツリーの両方をサポートしています。アイテムリストがユーザーインタフェースでフラットリストとして表示されるか構造ツリーとして表示されるかは、GetItems サービスへの入力のフォーマットによって異なります。詳細については、以下のGetItemsサービスを参照してください。
アイテムリストが構造ツリーの場合、以下のコンフィギュレーションプロパティを使用して設定した場合でも、サーチ、並べ替え、フィルタはサポートされません。
アイテムリストがフラットリストの場合、デフォルトの展開レベルは関連しません。
バインドプロパティ 
入力
プロパティ名
説明
プロパティタイプ
input
バックエンドシステムからフェッチするデータの識別に使用します。
入力が必要な場合、コンフィギュレーションプロパティ waitForInputtrue に設定します。
サンプル JSON:
{
"version":"1.0.0",
"data":[
{
"adapter":{
"instanceName":"windchill",
"thingName":"PTC.WCAdapter"
},
"itemListsData":[
{
"items":[
{
"id":{
"value":"OR:wt.workflow.work.WorkItem:1432583"
}
}
],
"objectType":"PTC.Workflow.WorkItem"
}
]
}
]
}
CCOフォーマットの JSON
selectedItems
グリッドアイテムとその属性を入力として識別および選択するために使用されます。ほかのコンポーネントの output バインドプロパティをこのプロパティにバインドできます。
サンプル JSON:
{
"data":[
{
"itemListsData":[
{
"items":[
{
"workItem":{
"value":"OR:wt.workflow.work.WorkItem:143921"
}
},
{
"workItem":{
"value":"OR:wt.workflow.work.WorkItem:143928"
}
}
],
"objectType":"PTC.Workflow.WorkItem"
}
],
"adapter":{
"instanceName":"windchill",
"thingName":"PTC.WCAdapter"
}
}
],
"version":"1.0.0",
"statusMessage":"OK",
"status":"200"
}
* 
selectedItems プロパティが入力を受け入れるようにするには、MapItemToInput サービスを実装する必要があります。階層データの場合、GetImplementationSettings サービスも実装する必要があります。詳細については、以下の「カスタマイズサービス」セクションおよびアイテムリストの selectedItems 入力バインドプロパティの有効化のトピックを参照してください。
CCOフォーマットの JSON
tailoringName
アイテムリストコンポーネントのインスタンスを一意に識別します。この値は、その特定のインスタンスの調整情報を検索するために内部で使用されます。
このバインドプロパティは、カスタムタスクに専用の調整ページがある場合にのみ使用します。
出力
プロパティ名
説明
プロパティタイプ
totalItemsNumber
サーチ基準およびフィルタ基準と一致するリストアイテムの数。
* 
このバインドプロパティは、構造ツリーでは結果が正確でない可能性があるので、構造ツリーではなくフラットリストで使用することを目的としています。
Integer
selectedItems
選択されているグリッドアイテムとその属性を識別するために使用します。このプロパティは、ほかのコンポーネントの input バインドプロパティにバインドできます。
サンプル JSON:
{
"data":[
{
"itemListsData":[
{
"items":[
{
"workItem":{
"value":"OR:wt.workflow.work.WorkItem:143921"
}
},
{
"workItem":{
"value":"OR:wt.workflow.work.WorkItem:143928"
}
}
],
"objectType":"PTC.Workflow.WorkItem"
}
],
"adapter":{
"instanceName":"windchill",
"thingName":"PTC.WCAdapter"
}
}
],
"version":"1.0.0",
"statusMessage":"OK",
"status":"200"
}
CCOフォーマットの JSON
コンフィギュレーションプロパティ 
次のテーブルとイメージは、このコンポーネントを設定するために使用される JSON フィールドを示しています。
コンフィギュレーションの構造の詳細については、コンポーネントのコンフィギュレーション構造を参照してください。
サブプロパティの詳細については、サブプロパティとコンテナキーを参照してください。
プロパティ名
説明
プロパティタイプ
デフォルト値
必須またはオプション
actionBarConfiguration
埋め込み操作バーのコンフィギュレーション。詳細については、操作バー (ベータ)を参照してください。
なし
オプション
attributes
表示する属性。これらはグリッドに列タイトルとして表示されます。
アイテムリストには、Navigate ユーザーインタフェースから特定の属性を非表示にする hidden サブプロパティを含めることができます。詳細については、属性選択の構造を参照してください。
属性列への操作の追加については、このテーブルの下の注記を参照してください。
なし
必須
downloadFileName
以下のようなダウンロードされたファイルのカスタム名を指定する目的で使用されます。
アイテムリストの「名前」列から直接ダウンロードされたファイル
「フォーマット」列から個別にダウンロードされたファイル
「すべてダウンロード」ボタンを使用して .zip ファイルとしてダウンロードされたファイル
デフォルトでは、このプロパティは <filename>.<ext> に設定されます。ダウンロード時、<filename> トークンは特定のファイル名に置き換えられ、<ext> トークンはファイル拡張子に置き換えられます。
サンプルコード:
{
"downloadFileName":{
"selectedValues":{
"data":[
{
"itemListsData":[

],
"adapter":{

}
}
]
},
"pattern":"<filename>.<ext>"
}
}
なし
オプション
defaultExpansionLevel
構造ツリーの初期展開レベルを定義します。1 から 9 までの数値と -1 を入力として受け入れます。このプロパティが -1 に設定されている場合、構造ツリーは最初は完全に展開され、すべてのレベルが表示されます。
* 
大きな構造の場合、デフォルトを 3 より大きい値に設定すると初期ロードのパフォーマンスが低下する可能性があります。
このプロパティに無効な入力が渡された場合、デフォルトの展開レベルは 3 になります。
3
オプション
defaultSelectedFilterValue
最初に選択した値、またはフィルタ基準となる値。空白の場合、デフォルトのフィルタはありません。
このプロパティは、filterFields のサブプロパティであり、filterFields がコンフィギュレーションに含まれている場合にのみ関連します。そのコンテナキーは itemListFilterFieldDefinition です。
* 
アイテムリストが構造ツリーの場合、このコンフィギュレーションプロパティは無視されます。
なし
オプション
defaultSortDirection
デフォルトの並べ替え方向。オプション: 昇順を示す asc と降順を示す dsc。空白の場合、並べ替え方向は昇順になります。
このプロパティは、defaultSortField のサブプロパティであり、defaultSortField がコンフィギュレーションに含まれている場合にのみ関連します。そのコンテナキーは itemListDefaultSortFieldDefinition です。
* 
アイテムリストが構造ツリーの場合、このコンフィギュレーションプロパティは無視されます。
asc
オプション
defaultSortField
並べ替えの基準となる初期の列。空白の場合、最初の列によってアイテムリストが並べ替えられます。
* 
アイテムリストが構造ツリーの場合、このコンフィギュレーションプロパティは無視されます。
なし
オプション
enableSearch
サーチフィールドを表示するかどうか。オプション : truefalse
* 
アイテムリストが構造ツリーの場合、このコンフィギュレーションプロパティは無視されます。
true
オプション
exportUnFilteredData
アイテムリストデータをファイルにエクスポートする際に、すべてのデータを含めるか、フィルタされたデータのみを含めるかを指定します。オプション : truefalse
true に設定すると、エクスポートされたファイルには、フィルタに関係なくデータが含められます。
false に設定すると、エクスポートされたファイルには、フィルタされたデータのみが含められます。
maxNumberOfRowsInGrid プロパティの制限が原因でアイテムリストグリッドに表示されないデータも、エクスポートされたファイルに含められます。
このプロパティは、showExportAction のサブプロパティであり、showExportAction がコンフィギュレーションに含まれている場合にのみ関連します。そのコンテナキーは itemListExportDefinition です。
false
オプション
exportTypes
使用可能なエクスポートのタイプ。オプション: exportToCsvexportToExcel。1 つまたは両方のオプションを含めることができます。
exportToCsv が含まれている場合、「エクスポート」ボタンには、データを標準フォーマットで CSV ファイルにエクスポートするオプションが含められます。
exportToExcel が含まれている場合、「エクスポート」ボタンには、Excel 用にフォーマットされたデータを CSV ファイルにエクスポートするオプションが含められます。
1 つのオプションのみが含まれている場合、「エクスポート」ボタンにより、選択したフォーマット (標準の CSV または Excel フォーマットの CSV) で自動的にデータがエクスポートされます。両方のオプションが含まれている場合、「エクスポート」ボタンはメニューボタンとして表示され、これによりユーザーは適切なエクスポートフォーマットを選択できます。
このプロパティは、showExportAction のサブプロパティであり、showExportAction がコンフィギュレーションに含まれている場合にのみ関連します。そのコンテナキーは itemListExportDefinition です。
exportToCsv, exportToExcel
オプション
filterFields
データのフィルタに使用するフィールドの、バックエンドシステムでの ID。空白にした場合、データをフィルタするオプションはありません。
* 
アイテムリストが構造ツリーの場合、このコンフィギュレーションプロパティは無視されます。
なし
オプション
filterLabelOverride
GetItems サービスから返される表示値をオーバーライドする、フィルタのラベル。
このプロパティは、filterFields のサブプロパティであり、filterFields がコンフィギュレーションに含まれている場合にのみ関連します。そのコンテナキーは itemListFilterFieldDefinition です
なし
オプション
implementationConfigurations
コンポーネントをさらにカスタマイズするために、アプリケーションビルダーがその実装に必要な追加の値を渡す際の開始点。
なし
オプション
label
アイテムリストのタイトル。
[[PTC.ItemList]]
オプション
maxNumberOfRowsInGrid
グリッド領域に表示される行の最大数。10,000 より小さい値を入力することをお勧めします。
* 
このコンフィギュレーションプロパティは構造ツリーでの使用を目的としていません。
500
オプション
searchHintText
サーチボックスに表示するヒントテキスト。
このプロパティは、enableSearch のサブプロパティであり、enableSearchtrue に設定されている場合にのみ関連します。そのコンテナキーは itemListSearchDefinition です。
Find Item
オプション
selectionType
一度に選択できるグリッド内のアイテムの数を指定します。オプション:
none - グリッドアイテムを選択できません
single - 一度に 1 つのグリッドアイテムを選択できます
multi - 1 つまたは複数のグリッドアイテムを一度に選択できます
multi
オプション
showExportAction
エクスポート操作を有効または無効にします。オプション : truefalse
true
オプション
showImplementationActions
「設計ファイル」、「図面」、「添付資料」定義済みコンフィギュレーションの「すべてダウンロード」ボタンなど、埋め込み操作バーに含める追加の操作を指定します。
なし
オプション
waitForInput
グリッドに設定されているアイテムの読み込みを開始する前に、実行時に値がアイテムリストの入力マッシュアップパラメータに渡されるのを待つかどうかを指定します。オプション : truefalse
false
オプション
* 
メニューボタンを表示する、HTML 値をとる属性を属性列に含める場合、この操作を PTCNav キーの下に記述する必要があります。例:
{
"label":"",
"icon":"",
"PTCNav":{
"Action":{
"type":"openUrl",
"data":{
"url":"http://www.linkTofile.pdf"
}
}
}
}
サンプルコンフィギュレーション 
アイテムリストコンポーネントのサンプルコンフィギュレーションについては、アクティビティ変更適用アイテム添付資料設計ファイル図面部品構造、およびタスクを参照してください。
カスタマイズサービス 
コンフィギュレーションに加え、コンポーネントごとにビジネスロジックを拡張してコンポーネントをカスタマイズできます。各コンポーネントのビジネスロジックには、拡張およびオーバーライド可能な Thing Template 内のサービスが含まれています。次のテーブルは、このコンポーネントのオーバーライド可能なサービスの詳細を示しています。
各サービスの戻り値とパラメータの例については、カスタマイズサービスの入力/出力の例を参照してください。
* 
ビジネスロジック実装コンポーネントからアイテムリストコンポーネントに JSON オブジェクトをCCOフォーマットで返す場合、1 つのオブジェクトタイプの属性のみを含めてください。現在、アイテムリストでは、異なるオブジェクトタイプの属性はサポーされていません。
名前
説明
ComputeMessages
ユーザーインタフェースのアイテムリストグリッドの上に表示するメッセージを計算します。現在のメッセージの JSON と候補のメッセージの JSON を受け取り、アイテムリストに表示するメッセージが含まれている通知メッセージの JSON を返します。
パラメータ:
getItemsResponse (必須) - getItems サービスから返されたアイテムが含まれているCCOフォーマットの JSON オブジェクト。
currentMessages (必須) - ユーザーインタフェースに表示されている現在の通知メッセージが含まれている JSON オブジェクト。
suggestedMessages (必須) - 候補のメッセージのセットが含まれている JSON オブジェクト。候補のメッセージを使用することをお勧めします。
input (オプション) - 構造のルートにあるアイテムの入力 ID が含まれているCCOフォーマットの JSON。
configuration (オプション) - コンフィギュレーションが含まれている JSON。
scope (オプション) - getItemsResponse 内のデータの範囲を示す JSON。この JSON オブジェクトには、値 rootchild を受け入れる scope キーが含まれています。階層データに関連します。例:
{
"scope": "root"
}
戻り値: アイテムリストのグリッドに表示されるメッセージが含まれている JSON オブジェクト。例:
"INFO":{
{
"messages":[
"[[PTC.Nav.ItemList.HiddenItemsBecauseAccessRightMessage]]"
]
}
}
DefHookGetImplementationActionsList
GetImplementationSettings サービスの implementationActions キーの下にリストされている操作を返します。
パラメータ: なし
戻り値: JSON 配列
DefHookImplementationAttributesDefinition
選択された属性の実装固有の定義を返します。
パラメータ: なし
戻り値: JSON 配列
DefHookImplementationConfigurationDefinitionGroup
実装のカスタムコンフィギュレーションを含む実装固有の定義を返します。
パラメータ: なし
戻り値: JSON 配列
DefHookMaxRowsProperties
グリッド領域に表示される行の最大数のプロパティを返します。
パラメータ: なし
戻り値: JSON
GetChildren
アイテムを受け取り、そのアイテムの子、つまり、階層データ構造でそのアイテムの 1 レベル下にあるすべてのアイテムが含まれている CCO フォーマットの JSON を返します。返された JSON には、階層データではなくフラットリストとして子が含まれています。
このサービスは、子がロードされていないアイテムをアイテムリスト上でユーザーが展開するたびに呼び出されます。
このサービスのデフォルトの実装では、必要に応じて、アイテムから入力への変換用にサービス MapItemToInputObject が実装されていることを前提としています。
パラメータ:
input (オプション) - 構造のルートにあるアイテムの入力 ID が含まれているCCOフォーマットの JSON。
configuration (必須) - コンフィギュレーションが含まれている JSON。
item (必須) - 返される子の親アイテムが含まれている JSON。
戻り値: CCOフォーマットの JSON
GetConfigurations
コンポーネントの実装で使用可能なコンフィギュレーションを返します。
パラメータ: なし
戻り値: JSON
GetImplementationLabel
コンポーネントのローカライズ名、またはローカライズ名を取得するために使用できるトークンを返します。このローカライズ名は Mashup Builder のユーザーインタフェースに表示されます。
パラメータ: なし
戻り値: String
GetImplementationSettings
実装の設定データを返します。実装はこのサービスをオーバーライドして独自の設定を提供できます。詳細については、アイテムリストの selectedItems 入力バインドプロパティの有効化のトピックを参照してください。
このサービスでは、itemIdentifierKeysitemExpansionKeyshasChildrenKeysoverrideItemsDataForExportimplementationActions キーを含めることができます。
パラメータ: なし
戻り値: JSON オブジェクト
GetItems
バックエンドシステムからのアイテムのリストを返します。
アイテムリストのカスタム実装を作成するには、このサービスをオーバーライドしてカスタムデータを取得します。
パラメータ:
input (オプション) - バックエンドシステムからフェッチするデータの入力 ID およびバックエンドシステムのアダプタ情報を含む、CCOフォーマットの JSON。
このパラメータを使用する場合は、waitForInput コンフィギュレーションプロパティが true に設定されていることを確認してください。
configuration (オプション) - コンフィギュレーションが含まれている JSON。
戻り値: CCOフォーマットの JSON
GetItemsByExpansionPath
GetImplementationSettings サービスで定義されているように、ルートからリクエストされたアイテムまでのパス上にあるすべてのアイテム (リクエストされたすべての属性、itemIdentifierKeysitemExpansionKeys を含む) が含まれている階層構造 CCO を返します。階層構造 CCO にはパス上のすべての兄弟が含まれています。
このサービスは、ロードされていないアイテムを指定する入力を selectedItems バインドプロパティが受け取った場合に呼び出されます。
パラメータ:
input (オプション) - 構造のルートにあるアイテムの入力 ID が含まれているCCOフォーマットの JSON。
configuration (必須) - コンフィギュレーションが含まれている JSON。
itemExpansionValues (必須) - 展開がリクエストされたアイテムの itemExpansionKeys が格納されている JSON 配列。この配列の値は、ツリー内のパスに従って、ルートアイテムを先頭に並べ替えられます。
戻り値: CCOフォーマットの JSON
GetItemsForExport
コンフィギュレーション JSON と CCO フォーマットの入力 JSON を処理し、エクスポートに必要なすべてのアイテムが含まれている JSON を CCO フォーマットで返します。デフォルトでは、このサービスは空の CCO を返しますが、実装はこのサービスをオーバーライドしてエクスポート対象のアイテムを返すことができます。その場合、エクスポート対象のデータは、このサービスによって返されるアイテムです。
このサービスの結果は、ロードされていないアイテムを指定する入力を selectedItems バインドプロパティが受け取った場合に使用されます。
パラメータ:
input (オプション) - バックエンドシステムからフェッチされるデータの入力 ID が含まれているCCOフォーマットの JSON。
configuration (オプション) - コンフィギュレーションが含まれている JSON。
戻り値: CCO フォーマットの JSON
GetStructureSkeleton
階層構造のすべてのレベルを CCO フォーマットで返します。ここで、構造内の各アイテムには、GetImplementationSettings サービスで定義されているように、itemIdentifierKeysitemExpansionKeys の両方が含まれています。
パラメータ:
input (オプション) - 構造のルートにあるアイテムの入力 ID が含まれているCCOフォーマットの JSON。
configuration (オプション) - コンフィギュレーションが含まれている JSON。
戻り値: CCO フォーマットの JSON
InitializeFilters
コンフィギュレーション内の各フィルタフィールドのフィルタタイプ定義を返します。
パラメータ:
input (オプション) - バックエンドシステムからフェッチするデータの入力 ID およびバックエンドシステムのアダプタ情報を含む、CCOフォーマットの JSON。
configuration (オプション) - コンフィギュレーションが含まれている JSON。
戻り値: CCOフォーマットの JSON
MapItemToInputObject
アイテムを入力にマッピングし、これを GetItems サービスで使用できます。
デフォルトの実装では、変更なしでアイテムが返されます。アイテムのオブジェクトタイプを変更するなど、なんらかの変更が必要な場合は、このサービスをオーバーライドします。このサービスは、GetChildren サービスのデフォルトの実装でのみ使用されます。
パラメータ:
input (オプション) - 構造のルートにあるアイテムの入力 ID が含まれているCCOフォーマットの JSON。
item (必須) - 入力にマッピングするアイテムが含まれている JSON。
戻り値: 単一のアイテムの id 属性だけが含まれているCCOフォーマットの JSON。
PrepareDataForExport
インフォテーブルの形式でデータを受け取り、エクスポートの準備をします。デフォルトの実装ではデータがそのまま返されますが、実装はこのサービスをオーバーライドして必要に応じてデータを修正できます。
パラメータ:
configuration (必須) - コンフィギュレーションが含まれている JSON。
dataInfoTable (必須) - エクスポート対象のデータが含まれているインフォテーブル。
data (オプション) - エクスポート対象のデータが含まれているCCOフォーマットの JSON オブジェクト。
gridQuery (オプション) - アイテムリストグリッドからのクエリーフィルタが含まれている、QUERY タイプのデータを表す JSON オブジェクト。
searchTerm (オプション) - グリッドの各行でサーチする文字列。
filterOptions (オプション) - フィルタに使用するオプションが含まれているインフォテーブル。
戻り値: インフォテーブル
実装定義 
アイテムリストコンポーネントの実装定義については、アクティビティ変更適用アイテム添付資料設計ファイル図面部品構造、およびタスクを参照してください。
これは役に立ちましたか?