🔀

排他・並列・包含ゲートウェイの使い方

この記事では、フロー上で使用できる3種類のゲートウェイノードの設定方法を説明します。 ゲートウェイを使うことで、条件に応じた分岐や複数担当者への並列処理を設計できます。

3種類のゲートウェイの違い

ゲートウェイ動作
排他ゲートウェイ条件に合致した1つの分岐のみ実行
並列ゲートウェイ条件に関係なくすべての分岐を実行
包含ゲートウェイ条件がtrueのすべての分岐を実行(常時分岐は必ず実行)

排他ゲートウェイ

排他ゲートウェイとは

条件に応じてフローを分岐させるゲートウェイです。 分岐ごとにJavaScriptの条件式を設定し、条件がtrueになった分岐へ進みます。どの条件にも合致しない場合はデフォルト句に流れます。
💡
利用シーン例

  • 雇用形態が正社員なら人事部承認、業務委託なら総務部承認に分岐
  • 外国籍メンバーは法務確認タスクを追加

フローに追加する

  • フロー上の 「+」 をクリック
  • 「排他ゲートウェイ」 を選択してノードを追加
  • 分岐が自動で作成される(分岐1・デフォルトの2つ) ※「+ 分岐追加」で分岐を増やすことができます。
  • 各分岐内の 「+ 追加」 からノードを追加してフローを設計する
⚠️
最低2つの分岐(条件付き分岐1つ+デフォルト)が必要です。 また、デフォルト分岐は削除できません。

条件式の設定

排他ゲートウェイをクリックし、右ペインで分岐ブロックをクリックするとすると、条件式(JavaScript)の編集できます。
  • 条件式の例)
    • フォーム1つ目の入力項目(雇用形態)が正社員の場合
    •  
⚠️
条件式は、上から順(分岐1、分岐3・・・)に評価されます。 複数の条件を設定する場合は、評価順序に注意してください。

並列ゲートウェイ

並列ゲートウェイとは

複数の処理を並列で実行するゲートウェイです。 「合流モード(全員承認・一人だけ承認)」によって次のノードへ進むタイミングを指定できます。
💡
利用シーン例

  • 総務部と法務部の両方のチェックが完了してから次の承認へ進む(全員承認)
  • 総務部と法務部のどちらかのチェックが完了してから次の承認へ進む(一人だけ承認)

フローに追加する

  • フロー上の 「+」 をクリック
  • 「並列ゲートウェイ」 を選択してノードを追加
  • 分岐が自動で作成される(分岐1・分岐2の2つ) ※排他ゲートウェイノードの右上の「+」で分岐ブロックを増やすことができます。
  • 各分岐内の 「+ 追加」 からノードを追加してフローを設計する

合流モードの設定

並列ゲートウェイをクリックすると右ペインで合流モードを設定できます。
合流モード動作利用シーン例
全員承認 (全分岐の完了を待つ)すべての分岐が完了してから次のノードへ進む総務部と法務部の両方のチェックが完了してから次の承認へ進む
一人だけ承認 (最初の完了で進行)いずれか1つの分岐が完了した時点で次のノードへ進む複数の承認者のうち誰か1人が承認すれば次へ進む
⚠️
「全員承認」を設定した場合、いずれかの分岐が未完了のままだとフローが先に進みません。 申請の滞留を防ぐために、運用検討ください。

包括ゲートウェイ

包括ゲートウェイとは

条件がtrueになった分岐すべてを同時に実行するゲートウェイです。 排他ゲートウェイが「1つの分岐のみ実行」するのに対し、包含ゲートウェイは「条件を満たす複数の分岐を並列で実行」できます。
💡
利用シーン例

  • 正社員の場合は、人事部と管理部の両方のチェックが完了してから次の承認へ進む
  • アルバイトの場合は、総務部と管理部の両方のチェックが完了してから次の承認へ進む

フローに追加する

  • フロー上の 「+」 をクリック
  • 「包括ゲートウェイ」 を選択してノードを追加
  • 分岐が自動で作成される(分岐1・分岐2の2つ) ※包括ゲートウェイノードの右上の「+」で分岐ブロックを増やすことができます。
  • 各分岐内の 「+ 追加」 からノードを追加してフローを設計する

各分岐の設定

分岐には条件付きと常時の2種類があります。
分岐の種類動作
全員承認 (全分岐の完了を待つ)条件式(JavaScript)がtrueの場合に実行される
一人だけ承認 (最初の完了で進行)条件に関係なく常に実行される
💡
条件式の記述例

→ 正社員の場合に実行
→ アルバイトの場合に実行