レコードトリガーフローでのエントリ条件のしくみ
エントリ条件は、レコードトリガーフローを実行するタイミングを制御します。開始要素で AND、OR、カスタムロジック、または数式ベースの条件を使用すると、適切なレコードが変更された場合にのみフローを実行できます。
必要なエディション
| サポートされているエディションを表示する。 |
エントリ条件のしくみと重要性
開始要素は、すべてのレコードトリガーフローの中心となります。最初にトリガーレコードのオブジェクトを選択し、次にレコードを作成、更新、または削除するときにフローをトリガーするように選択します。
次に、エントリ条件を設定します。エントリ条件はフローの実行時に制限されるため重要です。条件がないと、レコードが変更されるたびにフローが実行され、制限に達したり、不要な自動化が実行されたりする可能性があります。条件を使用すると、レコードが条件を満たした場合にのみフローが実行されるため、パフォーマンスが向上し、適切なレコードに焦点が絞られます。
[開始] 要素の [エントリ条件を設定] セクションで、フローが条件を満たしているかどうかを判断するために条件を評価する方法 (すべての条件に一致 (AND)、いずれかの条件に一致 (OR)、カスタムロジックに一致、または true に評価される数式) を選択します。各オプションを確認して、その動作を理解します。
すべての条件に一致 (AND)
すべての条件が true のときにフローを実行するには、[すべての条件に一致 (AND)] オプションを使用します。[開始] 要素の [エントリ条件の設定] セクションで、[条件の要件] に [すべての条件に一致 (AND)] を選択します。
フローは、レコードが 1 つ以上の条件に一致しない状態から、その条件をすべて満たす状態になった場合にのみ実行されます。レコードがすべての条件を満たしており、レコードの更新後も満たされている場合、フローは実行されません。Salesforce は、以前のバージョンのレコードが要件を満たしておらず、更新されたレコードが要件を満たしている場合にのみスケジュール済みパスをスケジュールします。
たとえば、レコードトリガーフローは、ユーザーがアカウントを作成したとき、またはアカウントを更新して [Industry equals Agriculture ] および [Billing State equals CA] の条件を満たしたときに実行されます。
新規レコードの場合、Salesforce は before 状態をどの条件も満たしていないものとして扱うため、すべての条件を満たす新規レコードが常にフローをトリガーします。
| シナリオ | 結果 |
|---|---|
新規取引先:
|
レコードが両方の条件を満たすため、フローがトリガーされます。スケジュール済みパスはスケジュールされます。 |
新規取引先:
|
フローはトリガーされません。レコードが 1 つの条件のみを満たしている。スケジュール済みパスはスケジュールされません。 |
既存の取引先が、次の条件から
更新内容:
|
フローはトリガーされません。ユーザーがレコードを更新する前にレコードが条件を満たしており、レコードがまだ条件を満たしている。Saelsforce は新しいスケジュール済みパスをスケジュールしませんが、すでにスケジュールされているパスはスケジュールされたままです。 |
既存の取引先が、次の条件から
業種の更新 = 農業 |
フローがトリガーされます。レコードが更新前の条件を満たしていませんでしたが、現在は条件を満たしています。Salesforce はスケジュール済みパスをスケジュールします。 |
いずれかの条件に一致 (OR)
レコードが 1 つ以上の条件を満たしたときにフローを実行するには、[いずれかの条件に一致 (OR)] オプションを使用します。[開始] 要素の [エントリ条件の設定] セクションで、[条件の要件] に [任意の条件に一致 (OR)] を選択します。
このオプションは、更新によってレコードがどの条件にも一致しない状態から少なくとも 1 つの条件を満たす状態に移行した場合にのみフローをトリガーします。レコードが更新前に 1 つ以上の条件を満たしている場合、後で他の条件を満たしてもフローは実行されません。スケジュール済みパスも同じルールに従います。つまり、更新でこの移行が作成された場合にのみスケジュールされますが、すでにスケジュールされているパスはスケジュールされたままになります。更新によってレコードがすべての条件に一致しなくなった場合、Salesforce はすでにスケジュールされているパスをキャンセルします。
たとえば、レコードトリガーフローは、ユーザーが取引先レコードを作成または更新し、Industry equals Agriculture OR Billing State equals CA のいずれかの条件を満たしたときに実行されます。
新規レコードの場合、Salesforce は before 状態をどの条件も満たしていないものとして扱うため、少なくとも 1 つの条件を満たす新規レコードが常にフローをトリガーします。
| シナリオ | 結果 |
|---|---|
新規取引先:
|
1 つの条件が満たされたため、フローがトリガーされます。スケジュール済みパスはスケジュールされます。 |
既存の取引先が、次の条件から
[都道府県(請求先)] = CA への更新 |
フローはトリガーされません。ユーザーがレコードを更新する前に、レコードが 1 つ以上の条件を満たしていた。スケジュール済みパスはスケジュールされませんが、すでにスケジュールされているパスはスケジュールされたままになります。 |
既存の取引先が、次の条件から
業種の更新 = 農業 |
フローがトリガーされます。レコードが以前にどの条件も満たしていなかったが、レコードの更新後に少なくとも 1 つの条件を満たしている。スケジュール済みパスはスケジュールされます。 |
既存の取引先が、次の条件から
都道府県 (請求先) の更新 = NJ |
フローはトリガーされません。レコードの更新後、レコードがどの条件にも一致しない。レコードが条件を満たさなくなったため、スケジュール済みパスはすべてキャンセルされます。 |
カスタム条件ロジックに一致
単純にすべて (AND) またはいずれか (OR) ではない特定の方法で条件を組み合わせる場合は、カスタム条件ロジックを使用します。[開始] 要素の [エントリ条件の設定] セクションで、[条件の要件] に [Custom Condition Logic Is Met (カスタム条件ロジックに一致)] を選択します。次に、[条件ロジック] に、1 AND (2 OR 3) などの数値で条件を参照する式を入力します。
フローは、トリガーレコードのカスタムロジック式が true に評価された場合にのみ実行されます。AND および OR の場合と同じルールが適用されます。フローは、ユーザーが条件の要件を満たすようにレコードを作成または更新した場合にのみ実行されます。スケジュール済みパスの動作は他の条件種別と同じです。
たとえば、レコードトリガーフローは、ユーザーが商談レコードを作成または更新し、この条件ロジック 1 AND (2 OR 3) を満たしたときに実行されます。
- 条件 1: フェーズ | 次の文字列と一致する | 提案
- 条件 2: 金額 | 変更あり | True
- 条件 3: 完了予定日 | 変更あり | True
フローは、商談が [提案] フェーズにあり、ユーザーが [金額] 項目または [完了予定日] 項目のいずれかを更新した場合にのみ実行されます。
| シナリオ | 結果 |
|---|---|
以下を使用して作成された新規商談:
|
レコードがカスタムロジックを満たしているため、フローがトリガーされます。スケジュール済みパスはスケジュールされます。 |
既存の商談:
[金額] = 10000 に更新されます。 |
フローがトリガーされます。レコードが条件ロジック 1 AND (2 OR 3) を満たしている: [フェーズ] が [提案] で、[金額が変更された] が true。スケジュール済みパスはスケジュールされます。 |
既存の商談:
完了予定日 = 今から 3 か月後の更新。 |
フローがトリガーされます。レコードが条件ロジック 1 AND (2 OR 3) を満たす: [フェーズ] が [提案] で、[完了予定日が変更された] が true。スケジュール済みパスはスケジュールされます。 |
既存の商談:
更新内容:
|
フローはトリガーされません。レコードが条件 1 を満たしていても、条件 2 または 3 を満たしていない (金額と完了予定日は変更されていない)。スケジュール済みパスはスケジュールされません。 |
True に評価される数式に関する考慮事項
エントリ条件を表す最適な方法が 1 つの数式内にある場合は、[数式の評価が True] を使用します。[開始] 要素の [エントリ条件の設定] セクションで、[条件の要件] に [数式の評価を True] を選択します。次に、true または false を返す数式を [数式] フィールドに入力します。数式は、トリガーレコードおよび数式関数の項目を参照できます。
フローは、数式がトリガーレコードの true に評価された場合にのみ実行されます。新規または更新されたレコードの場合、フローは数式が true に評価された場合にのみ実行されます。Salesforce では、スケジュール済みパスを他の条件種別と同じようにスケジュールまたはキャンセルします。
たとえば、ユーザーが商談レコードを作成または更新したときにレコードトリガーフローが実行され、この数式が true AND(Amount > 10000, TEXT(StageName) = "Proposal") に評価されます。フローは、商談金額が 10,000 件を超え、フェーズが [提案] の場合にのみ実行されます。
| シナリオ | 結果 |
|---|---|
以下を使用して作成された新規商談:
|
フローがトリガーされます。数式は true と評価されます。スケジュール済みパスはスケジュールされます。 |
既存の商談:
金額 = 20000 への更新。 |
フローがトリガーされます。この数式は、更新前は false、更新後は true でした。スケジュール済みパスはスケジュールされます。 |
既存の商談:
フェーズの更新 = 商談成立。 |
フローはトリガーされません。数式は、更新後に false と評価されます。スケジュール済みパスはすべてキャンセルされます。 |
更新されたレコードでフローを実行するタイミング
レコードが作成または更新されたとき、または更新されたときにのみフローを実行するように設定し、条件を設定する場合は、更新時にフローをトリガーする頻度を考慮してください。このオプションは、エントリ条件を指定した場合にのみ表示されます。
[開始] 要素の [エントリ条件の設定] で、[更新されたレコードのフローを実行するタイミング] に次のいずれかを選択します。
- レコードが更新されて条件の要件が満たされるたび — レコードが更新後のエントリ条件を満たしている限り、フローはレコードの更新ごとに実行されます。レコードが更新前にすでに条件を満たしているかどうかは関係ありません。このオプションは、現在条件を満たしているレコードへの変更に対してフローを実行する場合に使用します。
- 条件の要件を満たすようにレコードが更新されたとき — フローは、更新によってレコードがエントリ条件を満たす場合にのみ実行されます。以前は出会いませんでしたが、今では出会いました。レコードがすでに条件を満たしていて、更新後も満たされている場合、フローは実行されません。このオプションは、レコードが条件に一致するようになったときにのみフローを実行する場合に使用します。これにより、不要な実行が減り、開始要素からパスをスケジュールするときに必要になります。

