Administrator 練習問題 Q73
Ursa Major Solarはケースにパスを設定しています。ユーザーがパス上のステータス値を順番に進め、エージェントがケースを以前のステータスに戻せないようにしたいと考えています。管理者はこの要件を満たすためにどの機能を使用する必要がありますか?
左の○で回答を選択。本文を押すと横線で除外でき、もう一度押すと戻せます。
1つ選択してください(0/1)
正答:A. 検証ルール。
解説
前提知識
検証ルールとは
ユーザーがレコードを保存するときに、指定した数式を評価し、結果が真(True)なら保存を停止してエラーメッセージを表示する機能です。項目の入力形式だけでなく、特定の状態遷移を禁止する業務ルールにも使用できます。
PRIORVALUE関数とは
検証ルールや数式の中で、「そのレコードが更新される直前の値(変更前の値)」を取得できる関数。現在の値と比較することで、「特定の値から特定の値への変更だけを禁止する」といった制御ができる。
パス(Path)とは
選択リスト(例:商談のステージ)の値ごとに、画面上部に進捗を視覚化して表示する機能。各ステップに「重要なフィールド(キーフィールド)」と「成功のためのガイダンス(コメント)」を設定できる。
💡 検証ルールは 検証ルールとは何か:「Trueなら保存させない」で考える入力チェック、ケースのパスは パス(Path)とは何か:ステージごとに「今やるべきこと」を画面に出す仕組み も参照してください。
設問の状況を分解する
- Ursa Major SolarはケースにPathを設定している
- ユーザーにはパス上のステータスの並び順に沿って進めてほしい
- エージェントがケースのステータスを「以前の状態」に戻すことを禁止したい
- パスの見た目の話ではなく、「特定の更新を保存させない」という入力チェックの話
選択肢の検討
B. グローバルバリューピックリスト → ✕
選択リストの値の管理を複数オブジェクトで一元化する仕組み。値そのものの管理機能であり、「前の値に戻すことを禁止する」制御はできない。
C. 事前定義されたフィールド値 → ✕
特定条件のときに初期値を自動入力する機能。ステータスを以前の値に戻す操作そのものを禁止することはできない。
D. 依存する選択リスト → ✕
ある選択リストの値によって別の選択リストの選択肢を絞り込む機能。時系列での「後戻り禁止」は制御できない。
A. 検証ルール → ⭕ 正解
ISCHANGED(Status)とPRIORVALUE(Status)を使い、変更前と変更後のステータスが禁止された組み合わせである場合に数式がTrueとなる検証ルールを作成します。選択リストの表示順をそのまま数値として比較できるわけではないため、禁止する遷移を数式内で明示する必要があります。
管理者としての対処手順
- Setupでケースオブジェクトの「検証ルール」を新規作成する
ISCHANGED(Status)とPRIORVALUE(Status)を組み合わせ、業務上禁止する「変更前→変更後」の組み合わせを明示した数式を作成する- 条件が真になった場合に表示するエラーメッセージを設定する
- 検証ルールを有効化し、実際に後戻りの更新を試してブロックされることを確認する
あわせて覚えておきたいポイント
- パス自体には「後戻りを禁止する」機能は標準搭載されていない。パス上でステータスを自由に選べてしまうため、業務ルールとして禁止したい場合は検証ルールなど別の仕組みと組み合わせる必要がある。
PRIORVALUEは更新前の項目値を返します。選択リストで使う場合は、必要に応じてTEXT(PRIORVALUE(Status))のように文字列へ変換して比較します。
出典(Salesforce公式)
- Validation Rules — 検証ルールの数式がTrueを返したとき、レコード保存を停止してエラーメッセージを表示することを裏付けています。
- PRIORVALUE —
PRIORVALUEが更新前の項目値を返し、検証ルールで利用できることを裏付けています。 - Considerations and Guidelines for Creating Paths — Pathは選択リスト値に基づいて進行状況、キーフィールド、ガイダンスを表示する機能であり、ステータス遷移の保存制御は別途必要であることを確認するために参照しました。