ブランチの種類を理解する
- 最終更新日2025/12/26
ブランチタイプを使用すると、ブランチが無条件で実行されるべきか(常に実行)または条件付きで実行されるべきか(特定の条件が満たされたとき)を指定できます。
常にブランチを実行する
常に実行 ブランチタイプは、すべての出力パスを同時にトリガーします。
- 仕組み
-
- プロセスがsplitノードに達すると、すべての接続されたブランチが即座にアクティブになります。
- 各ブランチは独立して並行して実行されます。
- すべてのブランチが実行を完了するまで、プロセスはmergeノードで一時停止します。
- 例
-
ユーザーがウェブサイトで問い合わせを送信するワークフローを作成したと考えてください。 ユーザーに対して、毎回確認または承認のメールを送信したいです。
このシナリオでは、ブランチタイプを常に実行として選択できます。なぜなら、このステップは他の条件に関係なく、すべての提出に対して実行されるべきだからです。
条件ブランチ
条件 (分岐タイプ)は複数の条件を評価し、それらの条件が真である場合に1つ以上の分岐を同時にトリガーできます。
- 仕組み
-
- 各出力ブランチには、If 条件のような条件が割り当てられています。
- プロセスがこのノードに達すると、すべての条件が評価されます。
- 包括的(条件付き)分岐の場合、条件が真と評価されたパスのみが実行されます。 さらに、条件分岐にはフォールバックパスを含める必要があり、指定された条件がすべて満たされない場合にそのパスが実行されます。
- 複数の条件が真である場合、複数のブランチが並行して実行されます。
- 例
-
購入注文書(PO)に対してどの承認アクションを実行すべきかを条件分岐ロジックで決定する購入注文書承認ワークフローにおいて、複数の条件が満たされた場合に複数の分岐を同時に実行することが可能です。
- 発注書の金額が10,000を超える場合、経路Aが起動され、取締役への承認依頼が送信されます。
- 発注書が緊急とマークされている場合、パス B が起動され、調達責任者へ通知が行われます。
- 発注書の金額が10,000円以下の場合、パス C が適用され、発注書は自動承認され、依頼者へ通知が送信されます。
発注書が緊急かつ金額が10,000を超える場合、経路 A と経路 B の両方が同時に(並行して)実行されます。 これは、ディレクターが承認リクエストを受け取り、調達責任者が同時に通知されることを意味します。
しかし、1つの条件のみが満たされている場合(例えば、金額が10,000より大きい場合や緊急が真である場合のみ)、そのブランチに対して対応するアクションのみが実行されます。
フォールバック ブランチ
フォールバック ブランチは安全ネットとして機能します。 いずれの条件ブランチも真と評価されない場合にのみ実行されます。
- 仕組み
-
- すべての条件が false を返すと、ワークフローはフォールバック ブランチを通過します。
- インクルーシブ(条件付き)スプリットには、少なくとも1つのフォールバック ブランチが必要です。
- これにより、ワークフローが停止することなくスムーズに続行されます。
- 例
-
条件付きロジックを用いて、サポートチケットの種類に基づいて、受信したサポートチケットを適切なチームへ振り分けるサポートチケットのルーティング ワークフローをご検討ください。
- チケットタイプが 請求 の場合、チケットは財務部門(パス A)にルーティングされます。
- チケットの種類が テクニカル の場合、チケットは IT 部門(パス B)にルーティングされます。
- チケットの種類が 請求 または テクニカル と一致しない場合は、チケットを 一般的なサポート にルーティングしてください。
splitノードパスにおけるブランチタイプの組み合わせ
以下の表は、split ノードパス内で構成できるブランチタイプの組み合わせを示しています:
| ブランチタイプの選択 | 内容 | パスの有効性 |
|---|---|---|
| 常に実行(のみ) | 分割ノード内のすべてのパスは 常に実行 に設定できます。 | 有効なパス |
| 常に実行 と 条件 | 常に実行 と 条件 は同じ分割ノードパス内で共存できます。 | 有効なパス |
| 常に実行, 条件, and フォールバック | すべての3つのブランチタイプは、同じスプリットノードパス内で共存できます。 | 有効なパス |
| 条件およびフォールバック | 条件 と フォールバック は同じスプリットノードパス内で共存できます。 | 有効なパス |
| 条件(のみ) | すべてのパスは、分岐ノード内でのみ 条件 に設定することはできません。 | 無効なパス |
| フォールバック (のみ) | すべてのパスは、分割ノード内でのみ フォールバック に設定することはできません。 | 無効なパス |
| 常に実行 と フォールバック | 常に実行 と フォールバック は同じスプリットノードパス内で共存できません | 無効なパス |
注: パスが無効な場合、分割ノードにエラーメッセージが表示されます。