[フィールド]タブ

[フィールド]タブについて

[フィールド]タブでは、プルクエリまたはバックオーダーキューの方法で使用できる一連のフィールドを定義します。リストの[フィールド]タブに移動するには、ツールボックスで目的のリストをダブルクリックします。次に、[フィールド]タブを選択します。

作成するリストのタイプに応じて、デフォルトのフィールドセットが追加されます。これらのフィールドは、フィールドの横にある を押して簡単に削除できます。必要に応じて独自のフィールドを追加することもできます。次の画像は、アイテムリストに使用可能なデフォルトのフィールドセットを示しています。

フィールドを追加する

ボタンをクリックして使用可能なフィールドのリストを追加します。使用可能な追加オプションには、少なくとも以下のオプションがあります。

  • - [式]フィールドは、FlexScript関数を評価してフィールドの値を取得します。[式フィールド]にフィールドを呼び出す名前を入力します。[]に式を直接入力するか、編集の右側にあるボタンを使用してさまざまなオプションの選択、目的の値のサンプリング、コードウィンドウでのコード編集をします。
  • ラベル - [ラベル]フィールドは、エントリの値オブジェクトの同じ名前のラベルからその値を取得します。[ラベルフィールド]にラベル名を入力します。これは、リストエントリの値がオブジェクト参照である場合にのみ有効です。数値や文字列の場合は有効ではありません。
  • 引数をプッシュ - [引数をプッシュ]フィールドは、listpush()コマンドを使用して手動で値をリストにプッシュする場合にのみ使用されます。listpush()コマンドでは、パーティションID引数の後に追加の引数を定義できます。[フィールド]タブでは、[引数をプッシュ]フィールドを追加し、そのフィールドの名前とフィールドに関連付けられた追加の引数の数を定義します。たとえば、listpush()呼び出しがlistpush("ItemList1", item, partitionID, up(item));である場合、[引数をプッシュ]フィールドを追加し、[引数をプッシュ]フィールドでparentObjectという名前を付け、[引数]で、listpush()コマンドのパーティションIDの後の最初の追加引数を意味する「1」を入力します。
  • age - [age]フィールドは、エントリがリストに追加されてから経過したシミュレーション時間を返すカスタマイズされた動的な式フィールドです。
  • pushTime - [pushTime]フィールドは、エントリがリストに追加されたときのシミュレーション時間を返すカスタマイズされた式フィールドです。

特定のリストタイプのフィールド

フィールドの標準セットに加えて、[フィールドを追加]ボタン を押すと、使用しているリストのタイプに固有のオプションが表示されます。これらはすべてカスタマイズされた[]フィールドです。つまり、指定した一連の自動フィールドがニーズに合わない場合は、各フィールドに関連付けられたコードを簡単に表示してカスタマイズできます。次の追加オプションが使用可能です。

アイテムリストのフィールド

  • itemType - アイテムのアイテムタイプです。
  • distance - アイテムからプラーオブジェクトまでの直線距離です。アイテムリストで使用すると、プラーはリストからプルしている固定リソースになり、次に受け取るアイテムを決定しようとします。
  • queueSize - アイテムをコンテナに格納するオブジェクトのサイズです。たとえば、アイテムがキュー内にある場合、これは現在キュー内にあるアイテムの合計数です。
  • ageInQueue - アイテムが現在アイテムを含んでいるオブジェクトを最初に入力してから経過した時間です。
  • totalAge - アイテムが最初に作成されてから経過した時間です。
  • meetsPullRequirement - 固定リソースをプルする際に使用されます。アイテムがプラーオブジェクトのプル要件を満たす場合、これは1に評価されます。

固定リソースリストのフィールド

  • queueSize - 現在固定リソース内にあるアイテムの数です。
  • distance - 固定リソース値からプラーオブジェクト(通常はアイテム)までの直線距離です。
  • throughput - 固定リソースのスループットです。
  • isIdle - 固定リソースの状態がSTATE_IDLEの場合は1、それ以外の場合は0を返します。このフィールドは、リストにあるオブジェクトの状態プロファイルに基づいて調整する必要があります。たとえば、キューは状態プロファイルの一部としてSTATE_IDLEを使用しないため、キューがリストにある場合は、式を調整する必要があります。

タスクシーケンスリストのフィールド

  • priority - タスクシーケンスの優先度の値です。
  • preempt - タスクシーケンスのプリエンプト値です。
  • distance - プラータスク実行者からタスクシーケンスの最初の移動の目的地までの移動距離です。
  • isTransportTS - タスクシーケンスがアイテムをある固定リソースから別の固定リソースに移動する標準の輸送タスクシーケンスである場合は1、それ以外の場合は0を返します。
  • isUtilizeTS - タスクシーケンスが利用タスクシーケンスである場合(つまり、タスクシーケンスがプロセッサオブジェクトに移動し、そこで使用される場合)は1、それ以外の場合は0を返します。
  • loadToUnloadDistance - 輸送タスクシーケンスで、アイテムがピックアップされるポイントからアイテムがドロップされるポイントまでの直線距離です。
  • loadStation - 輸送タスクシーケンスで、アイテムがロードされるオブジェクトです。
  • unloadStation - 輸送タスクシーケンスで、アイテムがアンロードされるオブジェクトです。
  • transportItem - 輸送タスクシーケンスで、輸送されるアイテムです。

タスク実行者リストのフィールド

  • utilization - タスク実行者の非アイドル状態の割合です。
  • totalTravel - タスク実行者の合計移動距離です。
  • distance - プラーをタスクシーケンスと見なす場合、タスク実行者からタスクシーケンスの最初の移動の目的地までの移動距離です。
  • queueSize - タスク実行者の現在のアイテム数です。
  • throughput - タスク実行者の現在の出力です。
  • isIdle - タスク実行者の現在の状態がアイドル状態の場合は1、それ以外の場合は0を返します。
  • isPullerPreempting - プラーをタスクシーケンスと見なす場合、タスクシーケンスがプリエンプトしている場合は1、それ以外の場合は0を返します。
  • pullerPriority - プラーをタスクシーケンスと見なす場合、タスクシーケンスの優先度の値です。

動的フィールド

追加する各フィールド([引数をプッシュ]を除く)は、[動的]チェックボックスをオンにすることで動的フィールドにできます。動的フィールドは、エントリがリストにある間にソース値が変更される可能性があるフィールドです。非動的フィールドの値は、エントリがリストに追加されたときに1回のみ評価されますが、動的フィールドの値は、リストがプルリクエストで照会されるたびに再評価されます。このため、非動的フィールドは実行が高速ですが、動的フィールドは、ソース値が変更される可能性のあるリストを照会する際により多くの電力を使用します。また、プラー依存フィールドはすべて動的フィールドに指定する必要があります。