kintone Flow の SWITCH条件 ― 設定リファレンス

この記事で解説すること

kintone Flow の SWITCH条件ノードは、1つの対象を複数のケースに照合して 3方向以上 にフローを分岐します。

  • SWITCH条件ノードの基本構造
  • 分岐対象の4種類(フィールド値・画面モード・変更フィールド・トリガーイベント)
  • ドロップダウンフィールドの値選択による分岐設定
  • SWITCH分岐とIF変更検知条件の組み合わせ(重複通知の防止)
  • 通知メッセージでの {{ }} フィールド値参照
  • IF条件との切り替え方法

サンプルシナリオ:案件管理アプリで「商談フェーズ」の値に応じて処理を自動振り分ける。

  • 受注 → 確度フィールドを「100%」に更新
  • 失注 → 次回アクション日フィールドをクリア
  • 保留/中止 → フェーズ変更時のみ主担当にコメント通知を送信
  • D(その他) → 何もしない(終端)

SWITCH条件ノードとは

SWITCH条件ノードは、指定した対象の値を各ケースと照合し、一致したケースのフローへ進むノードです。

  • ケース1、ケース2、ケース3… と必要な数だけ分岐を追加できます
  • デフォルト(D) ― どのケースにも一致しなかった場合に進むパスを設定できます
kintone Flow エディタ — SWITCH条件フロー完成形(保存後トリガー→SWITCH商談フェーズ分岐→受注・失注・保留中止・デフォルトの4方向)

IF条件との使い分け

IF条件は「はい/いいえ」の 2択 に特化した分岐です。SWITCH条件は選択肢の数だけ分岐を持てるため、ドロップダウンフィールドの選択肢ごとに異なる処理を実行したいケースに最適です。

条件ノード 分岐の方向数 向いているケース
IF条件 2方向(はい/いいえ) 条件を満たすか否かの判定
SWITCH条件 ケース数 + デフォルトの複数方向 選択肢ごとに処理を振り分けたい場合

「商談フェーズが受注かどうか」だけを判定したいなら IF条件で十分ですが、「受注なら→A、失注なら→B、保留/中止なら→C」と3つ以上の振り分けが必要になった時点で、SWITCH条件への切り替えを検討してください。


分岐対象の種類

SWITCH条件では「分岐対象」を選択することで、何を基準にケースを振り分けるかを決めます。

分岐対象ドロップダウン — 画面モード・変更フィールド・トリガーイベント・フィールド値の選択肢

分岐対象:フィールド値

指定したフィールドの値でケースを振り分けます。ドロップダウンやラジオボタンなど、選択肢が決まっているフィールドと相性の良い分岐対象です。

設定手順:

  1. 分岐対象で「フィールド値」を選択
  2. 「分岐対象フィールド」でフィールドを選択(例:「商談フェーズ」)
  3. 「分岐する値を選択」セクションから、分岐したい値を選択
SWITCH条件ノードの設定パネル — 分岐対象「フィールド値」、商談フェーズ、ケース1受注・ケース2失注・ケース3保留中止・デフォルト

ドロップダウンフィールドの場合は値を選択するだけ

分岐対象フィールドにドロップダウンやラジオボタンを指定すると、フィールドの選択肢が一覧で自動表示されます。手動でケースを追加する必要はなく、分岐したい値にチェックを入れるだけで設定が完了します。

今回のサンプルシナリオでは「商談フェーズ」を指定すると、「商談予定・提案中・内示・受注・失注・保留/中止」が一覧表示されます。ここから「受注」「失注」「保留/中止」の3つを選択し、残りの値はデフォルト(D)に振り分けます。


分岐対象:画面モード

kintone の操作画面を基準に分岐します。

ケースの値 対象画面
create(新規作成) 新規レコード入力画面
edit(編集) 既存レコードの編集画面
index(一覧) 一覧画面でのインライン編集

案件管理での活用例:新規登録時はテンプレートとなる初期値をセットするフロー、編集時は変更内容を通知するフローと、画面ごとに処理を切り替える。

分岐対象「画面モード」の設定 — 新規作成画面・編集画面・一覧画面の3ケース

分岐対象:変更フィールド

フィールド変更トリガーで複数のフィールドを監視している場合に、どのフィールドが変更されたかで分岐します。

ケースの設定

ケースを追加すると、変更を検知するフィールドをチップ(タグ形式)で選択できます。選択肢はトリガーノードで監視対象として登録したフィールドが自動的に表示されます。1つのケースに1フィールドを対応させるのが基本です。

活用例:「商談フェーズフィールドが変更された → フェーズ変更通知」「主担当フィールドが変更された → 引き継ぎ通知」のように、変更フィールドごとに異なる処理を実行する。

トリガーノードで監視するフィールドが1つだけの場合は、このケース分岐は不要です。フィールド変更トリガーで複数フィールドを監視する構成のときに使います。


分岐対象:トリガーイベント

複数のトリガーイベントを設定しているフローで、どのイベントで起動したかによって分岐します。

ケースの設定

ケースを追加すると、イベント名をチップ(タグ形式)で選択できます。選択肢はトリガーノードで登録したイベントが自動表示されます。主なイベント名の例:

イベント名 対象操作
unified.submit 保存するとき
unified.submit.success 保存に成功した後
unified.field.change フィールド値変更時

活用例:「レコード保存時」と「フィールド変更時」で共通フローを開始し、途中で処理を分岐させる。保存時は通知、フィールド変更時は関連フィールドを自動更新、という構成が可能になります。

トリガーノードに登録したイベントが1種類だけの場合は、このケース分岐は不要です。複数イベントを1つのフローで扱う構成のときに使います。


各ケースに後続ノードを接続する

ケースを設定したら、各ケースの出力線に後続のアクションノードや条件ノードを接続します。

サンプルシナリオの接続例:

ケース1(受注)→ 確度を100%に更新

  1. 「ケース1(受注)」の出力から「フィールド値更新(固定値)」ノードを追加
  2. フィールド「確度」、値「100%」を設定
ケース1(受注)フィールド値更新アクション — 確度フィールドを100%に設定

ケース2(失注)→ 次回アクション日をクリア

  1. 「ケース2(失注)」の出力から「フィールド値更新(固定値)」ノードを追加
  2. フィールド「次回アクション日」、値を空欄(クリア)に設定
ケース2(失注)フィールド値更新アクション — 次回アクション日を空欄にクリア

ケース3(保留/中止)→ 変更検知条件 + コメント通知

ケース3は直接アクションを接続するのではなく、IF変更検知条件を間に挟む構成にします。

SWITCH分岐だけでは「商談フェーズが保留/中止のまま再保存」した場合にも毎回通知が送られてしまいます。IF条件で「商談フェーズが変更された」ことを検知し、フェーズが変更された保存のときだけ通知を送るようにします。

フロー構成:

SWITCH ケース3(保留/中止)
  → IF条件「商談フェーズ変更検知」
    → ✓(はい) → コメント通知アクション
    → ×(いいえ) → 終端(変更なしなので何もしない)

変更検知条件の設定

  1. 「ケース3(保留/中止)」の出力に 条件ノード を追加
  2. 判定タイプ「変更検知条件」を選択
  3. フィールド「商談フェーズ」、検知条件「変更された」を設定

この変更検知条件は、前回の記事(kintone Flow の IF条件 ― 設定リファレンス)の判定タイプで解説した機能です。保存系トリガー(保存するとき / 保存に成功した後)でのみ選択可能です。

コメント通知の設定

IF条件の「はい」側にコメント通知アクションを追加します。

通知メッセージには {{ }} でフィールド値を差し込めます。どのレコードについての通知かが一目でわかるように、案件名やレコード番号などを含めます。

通知メッセージの例:

案件「{{案件名}}」(レコード番号: {{レコード番号}})の商談フェーズが「保留/中止」に変更されました。
担当: {{主担当}}
内容を確認してください。

宛先には「主担当」フィールドを参照して設定します。レコードごとに設定された担当者へ自動的に通知が届きます。

コメント通知アクション — 通知メッセージにフィールド参照(案件名・レコード番号・主担当)を含む設定

ポイント: SWITCH条件は「値がどれか」を振り分けるだけで、「値が変わったか」は判定しません。通知系のアクションをSWITCH分岐に接続するときは、変更検知条件を間に挟むことで重複通知を防げます。


デフォルトケースの設定

どのケースにも一致しなかった場合に実行されるパスが デフォルト(D) です。

  • デフォルトは常に表示されており、削除できません
  • 「対象外の場合は何もしない(終端)」「エラー処理フローへ進む」など、例外パターンの処理に使います

今回のサンプルシナリオでは、「商談フェーズ」の選択肢のうち「商談予定」「提案中」「内示」は3つのケース(受注・失注・保留/中止)のどれにも一致しません。これらはすべてデフォルト(D)を通って終端となります。デフォルトの出力を何も接続しないとフローがそのまま終了するため、「フェーズ変更前後で特別な処理は不要」という意図が明確に表現できます。

設定したケースが増えるほど、想定外の値が入力されたときの挙動が重要になります。デフォルトケースには必ず後続ノードを接続するか、意図的に終端にすることを確認してください。


{{ }} フィールド値参照

通知メッセージなどのテキスト設定欄では、{{ }} でフィールド値を差し込めます。フローが実行されるとき、{{ }} の中のフィールドコードが実際のフィールド値に自動置換されます。

よく使うフィールド参照の例:

記法 差し込まれる値
{{案件名}} レコードの案件名フィールドの値
{{レコード番号}} レコード番号
{{主担当}} 主担当フィールドのユーザー名
{{商談フェーズ}} 商談フェーズフィールドの選択値

書き方のコツ:

受け取った相手が「何の案件の・何についての通知で・次に何をすべきか」がわかる内容にします。

✓ 案件「{{案件名}}」の商談フェーズが「保留/中止」に変更されました。内容を確認してください。
✗ レコードが更新されました。

フィールド差し込みの詳しい使い方は「kintone Flow のアクション ― 通知送信で担当者に自動連絡する」で解説しています。


IF条件との切り替え

条件ノードのサイドバー設定パネルには IF条件 ↔ SWITCH条件 の切り替えトグルが用意されています。一方の設定で作り始めた後でも、切り替えることで条件タイプを変換できます。

注意: 切り替えると既存の条件設定はリセットされます。設定を引き継ぐ必要がある場合は、切り替え前に内容を控えてから操作してください。

切り替えの目安

  • IF条件で作り始めたが「いいえ」側にもIF条件を重ねて3段以上になってきた → SWITCH条件に切り替える
  • SWITCH条件のケースが「はい/いいえ」の2択で十分だとわかった → IF条件に切り替える

まとめ

設定項目 内容
分岐対象 画面モード / 変更フィールド / フィールド値 / トリガーイベント
ケース 対象に一致する値を選択(ドロップダウンは自動一覧表示)
デフォルト いずれのケースにも一致しない場合のパス
出力 ケース数 + デフォルトの複数方向
後続ノード アクションだけでなく、IF条件ノードも接続可能

SWITCH条件は、ドロップダウン・ラジオボタンなど選択肢が定まったフィールドと組み合わせると最も効果を発揮します。IF条件を重ねると深くなりがちな「3択以上の分岐」をシンプルな構造でまとめられるため、フローの可読性が上がります。

SWITCH分岐 + IF変更検知 の組み合わせ

今回のサンプルシナリオのように、SWITCH分岐の特定ケースに通知アクションを接続する場合は、IF変更検知条件を間に挟むことで「値が変更されたときだけ通知」を実現できます。SWITCH条件は「現在の値が何か」を振り分けるノードであり、「値が変わったか」は判定しません。通知の重複を防ぐために、この2つの条件ノードの役割の違いを意識してフローを設計してください。

IF条件 vs SWITCH条件の使い分け(まとめ)

  • 2択(はい/いいえ) → IF条件:「確度が80%以上かどうか」のような二値判定
  • 3択以上 → SWITCH条件:「商談フェーズが受注/失注/保留/中止/その他のどれか」のような多値振り分け

複数の IF条件をフローの中で直列・並列に重ねるより、1つの SWITCH条件で一括管理するほうが、フロー全体の意図が伝わりやすくなります。ドロップダウンフィールドの選択肢が増えた場合も、ケースを追加するだけで対応できます。

IF条件(2分岐)については「kintone Flow の IF条件 ― 設定リファレンス」で解説しています。

類似投稿