Administrator 練習問題 Q250
Cloud Kicks で商談が交渉フェーズに達すると、営業担当者は[金額]項目の入力が必須になります。営業マネージャーは、金額を知らなくても商談をこのフェーズに移行させる必要があります。管理者は、交渉フェーズで営業ユーザーにこの項目を必須にしながら、マネージャーが変更できるようにするにはどうすればよいでしょうか。
左の○で回答を選択。本文を押すと横線で除外でき、もう一度押すと戻せます。
1つ選択してください(0/1)
正答:D. 条件を満たす入力規則を設定します。
解説
前提知識
-
検証ルールは、レコードを保存する前に数式を評価し、エラー条件が TRUE の場合にメッセージを表示して保存をブロックする。
-
一部のユーザーだけを検証ルールから除外する場合は、カスタム権限を権限セットに含めて対象ユーザーへ割り当て、検証ルールで
$Permission.カスタム権限API名を参照する方法が明確で保守しやすい。プロファイル名やロール名を数式に直接埋め込む必要はない。
設問の状況を分解する
-
商談が「交渉」ステージに達すると金額(Amount)が必須になる検証ルールがすでにある。
-
マネージャーだけは金額が未確定でもステージを進められるようにしたい。
-
全ユーザーに影響を与えず、特定の立場のユーザーだけ例外にしたい。
選択肢の検討
-
A. マネージャー用の数式フィールドを作成 ✕ — 数式フィールドを作っても検証ルール自体の挙動は変わらない。
-
B. 管理者プロファイルをマネージャーに割当 ✕ — 必要以上の管理権限を与えるため最小権限の原則に反する。また、管理者プロファイルを割り当てただけで、すべての検証ルールが自動的に無視されるわけではない。
-
C. 全ユーザーに金額を必須化 ✕ — 項目定義やページレイアウトで一律必須にすると、例外対象のマネージャーも金額未入力で保存できず、要件と矛盾する。
-
D. 条件を満たす検証ルールを構成 ⭕ — 「交渉ステージ」「金額が空欄」「ユーザーが例外用カスタム権限を持たない」を組み合わせれば、営業ユーザーには入力を強制し、権限を付与したマネージャーだけを除外できる。
管理者としての対処手順
-
例外を表すカスタム権限を作成する。
-
そのカスタム権限を権限セットで有効化し、営業マネージャーへ割り当てる。
-
商談の検証ルールを作成または修正し、概念的には次の条件を AND で評価する。
-
ステージが「交渉」
-
金額が空欄
-
NOT($Permission.例外用カスタム権限)
-
-
一般の営業ユーザーと権限を付与したマネージャーの両方で保存動作をテストする。
あわせて覚えておきたいポイント
-
検証ルールはエラー条件が TRUE のとき保存を止める。除外条件は
NOT($Permission...)のように組み込む。 -
プロファイル名やロール名を直接参照する設計は、名称変更や組織改編の影響を受けやすい。特定の業務権限を表すカスタム権限の方が意図を明確にできる。
出典(Salesforce公式)
-
Validation Rules — 検証ルールは保存前に数式を評価し、TRUE の場合にエラーを表示して保存を防止することを裏付ける。
-
Bypass Your Validation Rules — カスタム権限を権限セットで割り当て、
$Permissionを検証ルールの除外条件として使用する公式手順を裏付ける。 -
How to Reference a Custom Permission in a Formula, Workflow Rule, or Validation Rule in Salesforce — 検証ルールからカスタム権限を
$Permission.Custom_Permission_Name形式で参照できることを裏付ける。