注: 以下の翻訳の正確性は検証されていません。AIPを利用して英語版の原文から機械的に翻訳されたものです。

スケジューリングガントチャートウィジェット

スケジューリングガントチャートは、Workshopのウィジェットで、スケジューリングやリソース割り当てワークフローのための対話的なガントチャートを描画します。ウィジェットを設定する前に、ダイナミックスケジューリングオントロジーを設定していることを確認してください。

モジュールビルダーはスケジューリングガントチャートウィジェットを設定して、以下のことができます:

  • リソースオブジェクトの行のタイトルとサブタイトルプロパティ(アイコンや関数バックアッププロパティを含む)を設定する。
  • 右クリックメニューに表示されるアクション、イベント、推奨事項を選択する。
  • スケジュールオブジェクトのパックに対するインターフェースオプション(色)とインタラクション(割り当て動作、スナップ動作)を選択する。

以下の例では、スケジューリングガントチャートがパイロットをフライトに割り当てています。

Scheduling Gantt chart example: Assigning pilots to flights.

ウィジェットのレイアウト

以下の画像は、ウィジェットのレイアウトの概要を提供しています。

Sample widget layout.
  1. スケジュールオブジェクト(パック): 各スケジュールオブジェクトは、スケジューリングガントチャート上でパックとして描画されます。ユーザーはこれらのパックをドラッグアンドドロップして、オブジェクトの開始時間、終了時間、および/またはリンクされたリソースオブジェクトを更新できます。パックはさらに2つの機能を備えています:

    • スケジュールオブジェクトの詳細: パックの上にカーソルを置くとカードとして表示されます。デフォルトでは、カードには開始/終了時間、スケジュールオブジェクトタイプに設定された任意のルールの状態、およびオブジェクトビューへのリンクが表示されます。ビルダーは、表示したいプロパティも追加できます。

    • 右クリックメニュー: ユーザーがパックを右クリックするとトリガーされます。ビルダーはアクション、イベント、および推奨事項を設定できます。

  2. リソースオブジェクトまたは行: 各リソースオブジェクトは、スケジューリングガントチャートの行として描画されます。

    • リソースオブジェクトの詳細: 行の上にカーソルを置くとカードとして表示されます。カードにはオブジェクトのタイトル、アプリケーションビルダーが選択したプロパティ、およびオブジェクトビューへのリンクが表示されます。
  3. 検索バー: スケジューリングガントチャートウィジェットにはウィジェット内の検索バーが含まれています。ユーザーが検索語を入力すると、結果は黄色の境界線で強調表示されます。Enterキーを押すと、結果を新しい検索グループとして作成します。

  4. 違反ルールのフィルター: 違反ルールのフィルターは、スケジュールの特定の部分に焦点を当てるために使用されます。評価対象のルールをオン/オフに切り替えて、選択したルールを違反しているオブジェクトに絞り込むことができます。

  5. ユーザーの設定: ユーザーは、彼らの好みの設定を定義し、保存することができます。カスタマイズ可能なオプションには、以下が含まれます:

    • 高さのズームレベル: 行とパックの高さをコントロールします。
    • タイムゾーン: デフォルトでは、Foundry内のすべてのタイムスタンプはUTCです。この機能は、ユーザーの選択に対するタイムゾーンのオフセットを処理します。
    • パックの折りたたみ: ウィジェットは自動的に重なったパックを1つのパックにまとめて、画面のリアルエステートを節約します。このトグルは、ユーザーがこの機能をオン/オフにすることを可能にします。
    • 現在の時間をマーク: 現在の時間は赤い垂直線で表されます。
    • 伝説の拡大: 伝説がデフォルトで拡大または折りたたみにするかを決定します。
    • 未スケジュールの拡大: 未スケジュールの引き出しがデフォルトで拡大または折りたたみにするかを決定します。
    • すべてのネストされたパックを展開: ネストされたパックがデフォルトで展開または折りたたみにするかを決定します。
    • 外部選択でのパックへのスクロール: 有効にすると、ユーザーがウィジェットの外でスケジュールオブジェクトを選択すると、タイムラインが選択したオブジェクトの位置までスクロールします。
    • 行幅の保持: ユーザーは、行の境界をドラッグしてリソースオブジェクトの行の幅を調整することができます。幅の設定は保存され、アプリケーションが再読み込みされたときに幅がデフォルトにリセットされないようにすることができます。
    • 行/グループの順序の保持: ユーザーは、リソースオブジェクトの行をドラッグアンドドロップして手動で並べ替えることができます。順序の設定は保存され、アプリケーションが再読み込みされたときに順序がデフォルトにリセットされないようにすることができます。
  6. 未スケジュールの引き出し: スケジュールオブジェクトは、開始/終了時間とリンクされたリソースオブジェクトの両方を持っていない場合、未スケジュールと見なされます。これらのプロパティのいずれかまたはすべてがnullの場合、スケジュールオブジェクトのパックは未スケジュールの引き出しに表示されます。

  7. 変更ログ: 変更ログは、ユーザーがスケジュールに対して行ったすべての編集を追跡します。

  8. 変更のレビュー: アクティブなシナリオで行われたすべてのオントロジーの編集と残りの検証ルール違反の概要を含むポップアップを生成します。オントロジーの編集を実行するために確認します。

ウィジェットの設定

スケジューリングガントチャートウィジェットには、いくつかの必須と任意の設定が含まれています。このセクションでは、概要を提示し、必須の設定は特にそのようにマークされています。

タイムライン

  • 開始タイムスタンプ [必須]: タイムラインの開始。
  • 終了タイムスタンプ [必須]: タイムラインの終了。
  • カスタム表示範囲: ユーザーが最初にWorkshopモジュールを開いたときにタイムラインに表示される時間期間を設定します。ユーザーはスケジューリングガントチャートの全長をスクロールできます(他の場所で指定されていない限り)。
  • カスタムタイムライングリッド精度: ガントチャートのグリッドラインの時間単位を選択し、デフォルトのグリッドラインを上書きします。
  • タイムラインのズームとスクロールの無効化: ユーザーがタイムラインのスクロールやズーム機能を使用する能力を無効化します。

入力データ(行)

  • リソースオブジェクトセット [必須]: スケジューリングガントチャートウィジェットの行としてインターフェースに描画されます。セット内の各オブジェクトは自分の行を持ちます。

  • タイトルアイコン: 各行のタイトルプロパティとともに表示されるアイコンを選択します。

  • サブタイトル: リソースオブジェクトセットの1つ以上のプロパティを選択し、それらをオブジェクトタイトルの下に表示します。さらに、各サブタイトルに対してアイコンを選択します。以下の画像で示されています。

    Scheduling Gantt Chart widget with subtitles configured.
  • グループ化プロパティ: 固定リソースオブジェクトセットのプロパティを選択し、固定リソース(行)をサブグループに分けます。定義されたグループは、チャート内のトグルを通じて開いたり閉じたりすることができます。以下の例では、リソースは"Garden City"、"Garza"、および"Hoople"というグループに分けられています。

    Scheduling Gantt Chart widget grouping configuration. Scheduling Gantt Chart widget grouping configuration.
  • デフォルトのソート: チャート内の行の順序に適用される1つ以上のデフォルトのソートを許可します。

  • 右クリックメニュー

    • アクションの設定: リソースオブジェクトタイプに関連するアクションを設定します。これらのアクションは、標準のオントロジーの作成、変更、または削除アクション、またはカスタムのFoO-backed action であることができます。
    • 検索機能: 行レベルの推奨関数を設定します。この関数は、ユーザーがチャートで何もスケジュールされていない時間を右クリックしたときに開始します。カーソルの位置は特定の時間とリソースオブジェクトに対応しており、それらは関数への入力として使用できます。
  • 行選択イベント: チャートで行が選択されたときにトリガーするWorkshopイベントを設定します。例えば、より詳細なオブジェクトビューを表示する引き出しを引き起こすようにします。

入力データ(パック)

  • インターフェース

    • カラー設定:このオプションを使用すると、スケジューリングガントチャート内のすべてのパック/スケジュールオブジェクトに使用される色を選択できます。静的またはセグメント化(条件付き書式設定)の色オプションを選択できます。
      • **静的:**これが選択されている場合、すべてのパックはドロップダウンカラーピッカーで選択した同じ色になります。静的に色付けされたパックは、以下の画像のように見えます。

        Non-configured puck formatting.
      • **セグメント化:**セグメンテーションは、オントロジーマネージャで schedules:segment-by をタイプクラスとして選択したプロパティに適用することで設定できます。ネイティブのオントロジーマネージャ条件付き書式設定機能を使用して、どの色が表示されるかを指定します。それ以外の場合、ガントはデフォルトの色セットを順番に表示します。条件付き書式設定が設定されている場合、選択した色はオブジェクトセットの左上の三角形のフラグとして表示されます。これは、以下の画像で示しています。

        Conditionally formatted pucks.
  • インタラクション

    • **インタラクションの有効化:**トグルがオフの場合、設定が「読み取り専用」オプションとして動作するため、パックはドラッグアンドドロップで移動できません。デフォルトではオンになっています。

    • **割り当て動作:**スケジューリングガントチャート内でのパックの配置方法を決定します。以下の5つの事前定義されたオプションがあります。

      • **割り当て:**チャート内の任意の場所にパックをドラッグアンドドロップします。複数のパックを同時に同じリソースに割り当てることができます。

        Puck behavior example: Allocate.
      • オーバーラップなしの割り当て: 割り当てと同様ですが、このオプションは同じオブジェクトタイプのパックが重ならないことを保証します。パックが他のパックの上にドロップされると、既存のパックとその後の時間帯にスケジュールされているすべてのものが自動的にシフトして、オーバーラップを防ぎ、シーケンスを保持します。

        Puck behavior example: Allocate no overlap.
      • 交換: オーバーラップなしの割り当てに似ていますが、パックが他のパックの上にドロップされると、パックは互いに場所を交換します。

        Puck behavior example: Swap.
      • 下流との交換: シンプルな交換と同様に、このオプションでは選択したパックが場所を交換できます。ただし、この場合、交換されたパックの後に割り当てられたすべての後続のパックもそれぞれの前に続くパックに従って移動し、結果として下流全体のシーケンスがシフトします。

        Puck behavior example: Swap with downstream.
      • **前のものにスナップ:**パックは自動的に、指定した行の最も近い既存のパックの末尾にスナップします。

        Puck behavior example: Snap to previous.
    • **スナップ動作:**デフォルトでは、ユーザーはスケジューリングガントチャートウィジェットに任意の時間にオブジェクトを割り当てることができ、具体的な分まで指定できます。スナップ動作は、ビルダーがオブジェクトを割り当てられる時期の定義済みの間隔を設定できるようにします。パックがチャート内の新しい位置にドロップされると、パックは最も近い間隔の開始にスナップします。

      例えば、ユーザーが医師の予約をサポートするスケジュールを設定する場合、すべての割り当て(予約)は時間通り(:00)または時間の半分(:30)に開始する必要があると判断するかもしれません。

      • スナップ間隔サイズは、各間隔の期間を決定する整数でなければなりません。以下の例では、間隔は8時間に設定されています。

        Drag cursor to create action example.
      • 開始タイムスタンプオプションは、スナップ間隔が始まる時間を指します。デフォルトでは、スナップ間隔はスケジューリングガントチャートウィジェットの開始タイムスタンプから始まります。設定されている場合、この変数はデフォルトの開始を上書きし、設定された時間にパックをスナップします。

    • **ドラッグカーソルを作成アクションに:**インターフェース全体でのドラッグアクションを使用して、スケジュール可能なオブジェクトタイプの新しいオブジェクトを作成します。ユーザーはシフトを押しながらウィジェット内でカーソルをドラッグすることでアクションを開始します。

      Drag cursor to create action example.
    • **カスタム提案:**スケジュールオブジェクトに対する提案機能を選択します。関数の結果は、ユーザーがパックをピックアップするとチャート上のハイライトエリアとして描画され、ユーザーがパックをどこに配置できる/すべきかを示すために使用できます。

    • 右クリックメニュー:

      • **アクション設定:**スケジュールオブジェクトタイプに関連するアクションを設定します。これらは、標準のオントロジーの作成、変更、または削除のアクション、またはカスタムなFunction-on-Objects-backedアクションである可能性があります。
        • **検索機能:**パックレベルの推奨機能を設定します。この機能は、ユーザーがパックを右クリックしたときに開始されます。スケジュールオブジェクトの開始/終了時間とオブジェクト自体は、関数への入力として使用できます。
        • **イベント:**ウィジェット内でトリガーできる標準のWorkshopイベントの組み合わせを設定します。

インターフェース

インターフェースセクションには以下の設定オプションが含まれています:

  • **カーソル時間フラグの表示:**トグルがオンになっている場合、カーソルの配置に対応するタイムラインに垂直線とフラグが描画されます。フラグ内のテキストは設定できず、常に時間、週番号、曜日を含むようになっています。これは、以下の画像で示されています。

    Display cursor time flag in schedule interface example.
  • **スケジュール可能なもので行を分割する:**各スケジュール可能なオブジェクトは、指定した固定リソース上にサブ行を持ちます。スケジュール可能なオブジェクトとラベルの順序は、スケジュール可能な設定設定で決定され、オブジェクトの上にマウスを置くと表示されます。この設定はデフォルトではオフになっており、アプリケーションが複数のスケジュールオブジェクトで設定されている場合にのみ適用されます。

    Example: split rows by schedulable object.
  • **標準の未割り当てパックサイズ:**デフォルトでは、パックのサイズは時間の期間に比例します。これは、以下の画像で示されています。

    Example: Standard unallocated puck size.

    標準の未割り当てパックサイズがオンになっていると、未割り当てエリアのパックサイズが標準化されます。これは、以下の画像で示されています。

    Example: Standardized puck size.
  • **簡易表示:**トグルすると、ヘッダー(検索バー、検証ルールフィルター、ユーザー設定を含む)とフッター(未スケジュールの引き出し、変更ログ、レビューボタンを含む)が表示から非表示になります。モジュールビルダーは、読み取り専用のワークフローやシナリオが無効なワークフローの場合にこのオプションを選択することができます。

アウトプット

スケジューリングガントチャートウィジェットは、アプリを強化するために他のWorkshopウィジェットで使用できる4つの出力変数を自動的に生成します。これらの出力変数には以下が含まれます:

  • **出力シナリオ:**他のすべてのシナリオ対応ウィジェットで使用できるシナリオ変数。

  • **選択されたオブジェクト:**ウィジェットで選択されたオブジェクトのオブジェクトセット。

  • **検索結果の出力:**最近の検索/推奨によって返されたオブジェクトのオブジェクトセット。この出力は、関数がオブジェクトを返す場合にのみ入力されます。

  • **ユーザー設定:**保存されたユーザー設定を永続化するために昇格させることができるシリアライズされた文字列。