---
sourceDocument: Yokohama ビルドのワークフロー
sourceDocumentLink: https://servicenow-prod.fluidtopics.net/r/ja-JP/yokohama/build-workflows

 Release :

    - yokohama

ft:locale :

    - ja-JP

ft:publication_title :

    - Yokohama ビルドのワークフロー

ft:clusterId :

    - crworkflow

bundleId :

    - crworkflow

workflow :

    - Creator


---

# If フローロジック

# If フローロジック {#ariaid-title1}

* リリースバージョン: Yokohama
* 
* 更新日 2025年01月30日
* 
* ![](https://www.servicenow.com/docs/portal-asset/ico-clock) 所要時間：3分

条件のリストが満たされた場合にのみ、1 つ以上のアクションを選択的に適用します。  
このフローロジックを使用するには、現在のレコードに基づく条件を指定します。アクションまたはサブフローは、If フローロジック内のフローに追加できます。このフローでは、条件が true に評価されると、このフローロジック内のアクションを実行します。タスクのステータスや緊急度の値など、レコード内のデータに基づいて条件を作成します。  
注:  
If フローロジックの Then 分岐の内からデータピル値を設定すると、データピル値は同じ分岐内の他のアクションでのみ使用できます。フローロジック分岐の外から Then 分岐の内で設定されたデータピル値を参照すると、null 値が生成されます。

## ネストされた If フローロジックブロック {#flow-logic-if__section_ssb_nd1_qzb}

子の If フローロジックブロックを親の If フローロジックブロックに追加できます。子の If フローロジックブロックを親フローロジックブロックの Then 分岐に追加します。

## 入力 {#flow-logic-if__section_qgk_3gs_r2b}

{#flow-logic-if__table_m3l_b5l_p2b__entry__2}

| 入力 | 説明 |
|-|-|
| 条件のラベル | 分岐条件を説明するラベル。ラベルを使うと、長くて複雑な条件データピル値よりも読みやすくなります。 |
| 条件 | 分岐を実行する条件このフローでは、条件が true と評価されると、Then 分岐の内容を実行します。 |
[ ]

{#flow-logic-if__table_m3l_b5l_p2b}

## 出力 {#flow-logic-if__section_cqh_hr1_qzb}

このフローロジックには出力はありません。  

## インシデントの緊急度が高い場合にアクションを実行する {#flow-logic-if__example_z41_jzw_q1c}

この例では、インシデントレコードの緊急度の値が高いと、アクションがトリガーされます。

## 実行の詳細 {#flow-logic-if__section_wvl_kgs_r2b}

図 : 1. If フローロジックの実行の詳細  
1. ヘッダーには、フローロジックの状態、開始時刻、ランタイムが表示されます。
2. \[構成詳細\] セクションには、各変数のタイプ、構成、およびランタイム値など、フローで使用される変数に関する詳細が表示されます。分岐条件が満たされたかどうかを確認するには、<var class="keyword varname">条件</var>変数を使用します。
{#flow-logic-if__ol_wtt_scs_r2b}

## 一般的なガイドライン {#flow-logic-if__section_j4w_4pv_q1c}

効果的な If フローロジックブロックを作成するときは、これらの一般的なガイドラインを使用してください。

Then 分岐の外でデータピル値を参照しない
:   If フローロジックの Then 分岐の内からデータピル値を設定すると、データピル値は同じ分岐内の他のアクションでのみ使用できます。フローロジック分岐の外から Then 分岐の内で設定されたデータピル値を参照すると、null 値が生成されます。

独自の条件セット内の一致条件タイプをグループ化する
:   同じフィールド値に対して異なるタイプの条件を混在させると、予期しない結果が生じる可能性があります。たとえば、インシデントの簡単な説明に関する複数の OR 条件のグループに AND 条件を追加すると、If 条件が true と評価されない状況が発生する可能性があります。同じフィールドに対する同様の条件タイプは、条件グループを使用してグループ化します。たとえば、インシデントの簡単な説明に関するすべての OR 条件を 1 つの条件セットにグループ化し、インシデントの簡単な説明に関するすべての AND 条件を別の条件セットにグループ化します。  
    図 : 2. 一致条件を条件セットにグループ化する例

複数の If フローロジックブロックを Make a decision フローロジックブロックに置き換える

:   条件によってのみ異なる If フローロジックブロックを重複して作成するのではなく、ディシジョンテーブルを使用して回答を生成します。たとえば、インシデントカテゴリを使用して、インシデントタスクレコードのアサイン先グループを設定するとします。カテゴリ値ごとに重複する If フローロジックブロックを作成するのではなく、Make a decision フローロジックを使用して、アサイン先グループに回答を提供します。以下は、それぞれがインシデントタスクレコードを作成する 3 つの If フローロジックブロックを使用するフローの例です。これらの If フローロジックブロックの唯一の違いは、インシデントカテゴリの条件です。

    図 : 3. 同じアクションを実行する複数の If フローロジックブロックの例

    以下は、単一の Make a decision フローロジックブロックを使用して、インシデントカテゴリからインシデントタスクのアサイン先グループを決定するフローの例です。\[タスクの作成\] アクションは、意思決定の出力を入力として使用します。  
    図 : 4. 複数の If フローロジックブロックを意思決定に置き換える例

    インシデントレコード値を入力として使用するディシジョンテーブルの例を次に示します。\[条件\] 列は 2 つのインシデントカテゴリ値で構成されます。\[結果\] 列は、各条件値に使用するアサイン先グループで構成されます。  
    図 : 5. \[カテゴリからアサイン先グループを取得 (Get Assignment Group from Category)\] ディシジョンテーブルの例
**関連概念**   

* [サブフロー出力フローロジックのアサイン](https://servicenow-prod.fluidtopics.net/OExf~gA3Il3blMF4GufWOg "サブフローの実行が完了したときに返されるデータを指定します。親フローのデータとして、または別のプロセスの入力として、サブフローの出力を使用します。")
* [Call a Workflow フローロジック](https://servicenow-prod.fluidtopics.net/EsMEaUDg1BZ7mOMOoIFXGw "公開済されたアクティブなワークフローをフローから実行します。フローデータをワークフロー入力として使用できます。たとえば、現在のレコードをワークフロー入力として指定できます。")
* [Do the following until フローロジック](https://servicenow-prod.fluidtopics.net/GeK4lIQP5qGNRlxe5cohtQ "終了条件が満たされるまで、1 つ以上のアクションを繰り返し適用します。フローデータを使用して終了条件を指定できます。")
* [Do the following in parallel フローロジック](https://servicenow-prod.fluidtopics.net/MTghyvVDuHfiMKeqZDadpA "分離されたフローロジックブロック内の別々のパスでアクションとサブフローを実行します。")
* [動的フローのフローロジック](https://servicenow-prod.fluidtopics.net/KAHx2BAhw4LbWJqTU~K1Xw "ランタイムデータを使用して、フローまたはサブフローを動的に識別して実行します。動的に呼び出されるフローまたはサブフローに必要な入力を提供するテンプレートをビルドします。")
* [終了フローのフローロジック](https://servicenow-prod.fluidtopics.net/GvkJSsIuXysLR73EzAb3TQ "現在のフローの実行を停止します。終了条件を指定するには、フローのブランチ内で [終了フロー (End Flow)] を使用します。たとえば、特定の If フローロジックブロックに達したときにフローを終了します。")
* [For Each フローロジック](https://servicenow-prod.fluidtopics.net/A347a3jfRAndQ4Y3sA1uHg "レコードリスト内の各レコードに 1 つ以上のアクションを適用します。")
* [Make a decision フローロジック](https://servicenow-prod.fluidtopics.net/8mKW5Lz8ML~6M_RUQkuiiA "複数の条件付きパスが必要な状況では、ネストされた If、Else If、または Else フローロジックの代わりに、ディシジョンテーブルブランチロジックを使用できます。たとえば、必要な自動車保険の種類を決定する場合は、ディシジョンテーブルに年齢、事故歴、車種などを追加入力して、保険の適用範囲のレベルを決定できます。このロジックにより、時間が短縮され、ネストされた if 条件や switch case 文より可読性の高い形式になります。")
* [\[フロー変数の設定\] フローロジック](KZ38~JezVF8YaH0nv4e2_Q "フローデータをデータピルとして格納する 1 つ以上のフロー変数に値をアサインします。データピルを参照してフロー変数の値にアクセスします。")
* [Try フローロジック](https://servicenow-prod.fluidtopics.net/emFMY8195Qhgi9fILkeTwQ "フローロジックブロック内でエラーが発生した場合でも、フローの実行を継続できるようにします。フローロジックブロック内のエラーに応じて一連のアクションを実行します。")
* [Wait for a duration フローロジック](https://servicenow-prod.fluidtopics.net/xw7y85X_HkvpYPu8yslYhQ "自動化プロセス中に操作する時間をユーザーに与えたり、特定の日時まで操作の完了を待機するには、このフローロジックを使用します。に展開したカスタムモバイルアプリケーションを使用して管理しました。")  
**関連資料**   

* [Exit Loop フローロジック](https://servicenow-prod.fluidtopics.net/OPjYl5h_dKmt4rBQHcYeGw "If フローロジックの条件が満たされたら、フローロジックループを終了します。フローロジックループの後の次のステップからフローの実行を続行します。このフローロジックはブレークとも呼ばれます。")
* [\[フロー出力の取得\] フローロジック](agFSeffHRIBrsRs7MUdIuQ "動的フローまたはサブフローによって生成された出力値を取得します。")
* [Go back to フローロジック](https://servicenow-prod.fluidtopics.net/6h~6i6SbX7zDIcCy4gB4EA "フロー内の前のステップに戻り、一連のアクションを繰り返します。")
* [Skip Iteration フローロジック](https://servicenow-prod.fluidtopics.net/1v8FJBCWMm3_p9tkHyrzJA "If フローロジックの条件が満たされた場合に、フローロジックループの現在の反復をスキップします。リスト内の次のアイテムを使用してフローロジックループの実行を続行します。このフローロジックは続行とも呼ばれます。")

