プロセス・インスタンスのリレーションシップ

プロセス・インスタンス間のリレーションシップには、独立型と依存型があります。独立型リレーションシップでは、ユーザーが関連するインスタンスに関する情報をまとめて表示できます。依存型リレーションシップでは、プロセス・インスタンスがグループ化され、依存先のすべてのプロセス・インスタンスが完了しなければ、それらのインスタンスに依存しているプロセス・インスタンスを完了できなくなっています。リレーションシップは、ケース間、BPD 間、およびケースと BPD の間に作成できます。

独立型
ユーザーがナビゲートできる関連プロセスを緩やかにグループ化したものです。関連プロセス・インスタンス同士は同位で、リレーションシップは双方向です。プロセス・インスタンスを削除すると、リレーションシップは削除されますが、同位のプロセス・インスタンスは削除されません。

プロセス・インスタンス間の独立型リレーションシップを示すイメージ

依存型
1 つの依存プロセス・インスタンスと、1 つ以上の依存先プロセス・インスタンスの間の、方向性のリレーションシップです。依存先プロセス・インスタンスを別のプロセス・インスタンスに依存させることで、依存インスタンスのツリーを形成することができます。

依存インスタンスは、依存先のすべてのインスタンスが完了または終了しなければ、完了できません。依存インスタンスが強制終了された場合は、依存ツリーの最下位に至るまでのすべての依存関係も終了されます。依存インスタンス (ひいてはその依存関係) を終了するには、すべてのインスタンスを終了するための権限を保持している必要があります。依存関係にあるインスタンスを引き続き実行するには、依存インスタンスを終了する前に、依存型リレーションシップを削除します。それでもプロセス間のリレーションシップが必要な場合は、代わりに独立型のリレーションシップを追加します。Process Inspector でのプロセスの終了については、Process Inspector のアクションを参照してください。

以下のイメージは、BPD インスタンス B とケース・インスタンス C に依存するケース・インスタンス A を示しています。
2 つの従属インスタンス B と C を持つ依存ケース・インスタンス A を示すイメージ。インスタンス B は完了しており、A と C はアクティブ。
上記のイメージは、依存関係に関する以下の重要な事実を示しています。
  • 1 つのプロセス・インスタンス (A) は複数の従属プロセス・インスタンス (B、C) を持つことができる。
  • 従属プロセス・インスタンス (B または C) は、1 つの依存プロセス・インスタンス (A) のみを持つことができる。
  • プロセス・インスタンス A は、プロセス・インスタンス B とプロセス・インスタンス C の両方が完了または強制終了になるまで完了できない。
  • プロセス・インスタンス A が強制終了された場合、プロセス・インスタンス B とプロセス・インスタンス C も強制終了される。
  • インスタンスを強制終了すると、そのリレーションシップも強制終了される。ただし、完了したインスタンスは除きます。完了したインスタンスのリレーションシップは完了状態のままです。

Process Designer での JavaScript API または REST (Representational State Transfer) APIs を使用して、プログラム上でリレーションシップを作成、削除、更新、および照会できます。