Administrator 練習問題 Q187
オブジェクトマネージャでカスタム項目を必須として設定するとき、考慮すべき2つの点はどれですか?2つ選択してください
左の□で回答を選択。本文を押すと横線で除外でき、もう一度押すと戻せます。
2つ選択してください(0/2)
正答:B. このフィールドは、そのオブジェクトにレコードを保存するために一般的に必要です。 / C. フィールドはそのオブジェクトのすべてのページレイアウトに追加されます。
解説
前提知識
項目レベルの必須設定とは
オブジェクトマネージャでカスタム項目を作成・編集するときに[必須]を選ぶと、その項目は**組織全体で必須の項目(universally required field)**になります。 この設定はページレイアウト上の[必須]とは異なり、画面入力だけでなく、API、インポート、自動化、Web-to-Lead、Web-to-Caseなど、レコードを保存する経路全体に適用されます。
ページレイアウト上の必須との違い
ページレイアウト上の必須設定は、そのレイアウトを使って画面から入力するときの制御です。別のレイアウトやAPI経由の保存には適用されません。 一方、項目定義で必須にしたカスタム項目は、すべてのレコードタイプと保存経路で値が必要です。
ページレイアウトへの自動追加
組織全体で必須の項目はページレイアウトから削除できません。項目がまだ配置されていない場合、Salesforceは各ページレイアウトの最初のセクション末尾へ自動的に追加します。
設問の状況を分解する
- 必須設定を行う場所はページレイアウトではなく、オブジェクトマネージャの項目定義である。
- したがって、必須条件は画面表示だけでなく保存処理全体へ適用される。
- APIやWeb-to-Lead/Web-to-Caseも例外ではない。
- 必須項目はすべてのページレイアウトに表示され、削除や任意項目への変更ができない。
選択肢の検討
A. このフィールドは、そのオブジェクトのAPIを介してレコードを保存するために必要ではありません。 → ✕
項目定義で必須にしたカスタム項目は、Lightning Platform APIを介した保存でも値が必要です。API連携側が値を送らなければ、保存エラーになります。 API経由を必須対象から外したい場合は、項目定義では必須にせず、画面だけをページレイアウトで必須にします。
B. このフィールドは、そのオブジェクトにレコードを保存するために一般的に必要です。 → ⭕ 正解
組織全体で必須のカスタム項目は、レコードの保存時に値が必要です。画面、API、自動化、Web-to-Lead、Web-to-Caseなど、保存経路を問わず適用されます。 既存レコードに空欄が残っていても、次回そのレコードを更新するときには値の入力が求められます。
C. フィールドはそのオブジェクトのすべてのページレイアウトに追加されます。 → ⭕ 正解
組織全体で必須の項目はページレイアウトから削除できません。まだ配置されていない場合は自動的に追加されます。レイアウト上で任意または参照のみへ変更することもできません。
D. Web-to-LeadおよびWeb-to-Caseを介してレコードを保存する場合、このフィールドはオプションです。 → ✕
公式仕様では、組織全体で必須の項目はWeb-to-LeadおよびWeb-to-Caseにも適用されます。値がない、または形式が不正なら、要求が送信されてもレコードが保存されない可能性があります。
Webフォーム上で利用者に入力漏れをその場で通知したい場合は、Salesforce側の必須設定に加えてHTMLのrequired属性など、クライアント側の検証も設定します。
管理者としての対処手順
- 必須化する項目が、すべてのレコードタイプ・保存経路で本当に必要か確認する
- API連携、データローダー、Web-to-Lead、Web-to-Case、フローなどの利用箇所を洗い出す
- 既存レコードの空欄件数をレポートまたはSOQLで確認する
- 必要なら必須化前に一括更新で値を補完する
- [設定]→[オブジェクトマネージャ]→対象オブジェクト→[項目とリレーション]を開く
- 対象のカスタム項目を編集し、[必須]を選択して保存する
- 各ページレイアウトに項目が追加されたことを確認する
- UI、API、Webフォーム、自動化の各経路で保存テストを行う
| 設定場所 | 適用範囲 | APIへの適用 |
|---|---|---|
| 項目定義の[必須] | 組織全体・全レコードタイプ | 適用される |
| ページレイアウトの[必須] | そのレイアウトの画面入力 | 適用されない |
| 検証ルール | 数式条件に一致する保存処理 | 通常は適用される |
あわせて覚えておきたいポイント
- 組織全体で必須にできるのはカスタム項目です。標準項目をこの方法で組織全体の必須へ変更することはできません。
- レコードタイプごと、ユーザーごと、条件ごとに必須を変えたい場合は、項目定義の必須ではなく検証ルール、動的フォーム、ページレイアウトを使います。
- 必須化は既存の連携処理を壊す可能性があります。実装前に入力元を棚卸しし、リグレッションテストを行います。
- 必須項目へ既定値を設定すると入力漏れは減りますが、実質的に意味のない値で埋まる可能性があるため、データ品質の目的に合うか確認します。
出典(Salesforce公式)
- Considerations for Universally Required Fields(Salesforce Help) — 「組織全体で必須のカスタム項目は、Salesforce、API、Web-to-Lead、Web-to-Caseなどの保存時に値が必要。ページレイアウトから削除できず、未配置の場合は自動で追加される」
- Require Field Input to Ensure Data Quality(Salesforce Help) — 「項目定義で必須にすると、ページレイアウトの表示層を超えて、APIや自動化を含む保存経路全体で必須になる」