Administrator 練習問題 Q21
管理者は、アカウントの簡単なフィールド更新を自動化するように求められました。サポートエージェントがアカウントのステータスを「監査済み」に変更すると、システムがアカウントの監査済み日付フィールドを今日の日付で自動的に更新することを望んでいます。この自動化を完了するには、管理者はどのツールを使用する必要がありますか?
左の○で回答を選択。本文を押すと横線で除外でき、もう一度押すと戻せます。
1つ選択してください(0/1)
正答:C. フロービルダー
解説
前提知識
- レコードトリガフロー(Record-Triggered Flow)は、レコードの作成・更新時に自動的に処理を実行できる自動化ツールです。
- 「保存前(Before Save)」のレコードトリガフローを使うと、同じレコードの他の項目を、追加のDML(レコード更新)なしで高速に更新できます。日付や監査系の項目を自動更新する用途に適しています。
設問の状況を分解する
取引先(Account)のステータスが「監査済み」へ変更されたときに、同じ取引先レコードの[監査済み日付]へその日の日付を保存する要件です。関連レコードの作成や更新は不要なため、保存前のレコードトリガーフローが適しています。
選択肢の検討
- A. 承認プロセス:複数ステップの承認フローを扱う仕組みで、単純な項目自動更新には過剰かつ不向きです。
- B. 数式フィールド:常に再計算される読み取り専用の値であり、「特定のタイミングで一度だけ日付を固定する」という要件には使えません(値を保存・固定できません)。
- C. フロービルダー:◯ 正解。レコードトリガフロー(保存前)で条件を判定し、対象の日付項目を自動更新できます。
- D. 検証ルール:入力値の妥当性をチェックしてエラーを出す仕組みであり、項目の自動更新はできません。
管理者としての対処手順
- [レコードトリガーフロー]を作成し、対象オブジェクトを[取引先]、トリガーを「レコードが更新された」に設定します。
- エントリ条件でステータスが「監査済み」であることを指定し、必要に応じて「条件を満たすように更新されたときのみ」を選択して、後続の編集で日付が上書きされないようにします。
- [高速項目更新](保存前)を選び、[割り当て]要素でトリガー取引先の[監査済み日付]に
$Flow.CurrentDateを設定します。保存前フローでは、トリガーしたレコードの項目変更に[レコードを更新]要素は不要です。 - デバッグで条件と日付の保持を確認してから、フローを有効化します。
あわせて覚えておきたいポイント
- 保存前フローで
$Recordの項目値を変更すると、その変更はレコード保存時に自動適用されるため、同じレコードを保存し直す[レコードを更新]要素は不要です。 - 日付項目に「今日」を保存する場合は
$Flow.CurrentDate、日付/時間項目に日時を保存する場合は$Flow.CurrentDateTimeを使用します。
出典(Salesforce公式)
- Before-Save Record-Triggered Flows — 保存前フローがトリガーしたレコードの項目更新に適し、
$Recordの値を変更すれば[レコードを更新]要素なしで保存へ反映されることを裏付けています。 - Working with the Triggering Record in Record-Triggered Flows — 保存前フローでは[割り当て]要素でトリガーレコードの項目値を変更することを裏付けています。
- $Flow グローバル変数リソース —
$Flow.CurrentDateがフロー実行時の日付を返すことを裏付けています。