今回は必須項目の設定方法についてです。
必項項目の設定方法といては以下のような方法があります。
- 項目の設定画面で設定
- ページレイアウトで設定
- Lightningレコードページで設定
- 入力規則で設定
- Apex開発で設定
設定方法によって、必須チェックが行われる条件が異なります。
必須項目導入の際は参考にしてみてください。
項目の設定画面で設定
設定 > オブジェクトマネージャー でオブジェクトを選択し、対象の項目の設定画面で設定します。

特徴としては、以下のようなことが挙げられます。
特徴 | 編集画面 | リストビューインライン編集 | CSVインポート |
---|---|---|---|
・常に必須 ・参照権限にかかわらず、すべてのユーザが参照/更新可能 ・レイアウトから削除不可 | 必須 | 必須 | 必須 |
リストビューでインライン編集する際は、必須項目がリストビューに表示されていない場合でも必須チェックが行われます。
ページレイアウトで設定
設定 > オブジェクトマネージャー でオブジェクトを選択し、ページレイアウトで設定します。

特徴としては、以下のようなことが挙げられます。
特徴 | 編集画面 | リストビューインライン編集 | CSVインポート |
---|---|---|---|
・参照権限がない場合、必須チェックは行われない | 必須 | ・必須項目がリストビューに含まれない場合、必須ではない ・必須項目がリストビューに含まれる場合、必須 | 必須でない |
リストビューでインライン編集する際は、必須項目がリストビューに表示されていない場合、必須チェックは行われません。
Lightningレコードページで設定
設定 > オブジェクトマネージャー でオブジェクトを選択し、Lightningレコードページを作成して必須項目を設定します。
こちらの設定は方法はカスタムオブジェクトでのみ可能です。
Lightningレコードページ編集画面で動的フォームを有効化します。

項目をドラッグアンドドロップでレイアウトに配置し、必須項目として指定します。

Lightningレコードページでの必須項目設定の特徴は以下の通りです。
特徴 | 編集画面 | リストビューインライン編集 | CSVインポート |
---|---|---|---|
・参照権限がない場合、必須チェックは行われない | 必須 | 必須でない | 必須でない |
入力規則で設定
設定 > オブジェクトマネージャーでオブジェクトを選択し、入力規則を作成します。

項目を必須項目に設定する入力規則はこちらです。
IF ( ISBLANK( Required__c ) , True, False)
入力規則での必須項目設定の特徴は以下の通りです。
特徴 | 編集画面 | リストビューインライン編集 | CSVインポート |
---|---|---|---|
・条件を指定して必須項目化が可能 ・参照権限がない場合でも、必須チェックが行われる | 必須 | 必須 | 必須 |
入力規則では、条件を指定して項目を必須化できるのがいいですね。
項目1に値があのる場合、項目2を必須にするみたいな感じで。
また、入力規則で必須化した項目に対して参照権限がなかったとしても、必須チェックは行われます。
Apex開発で設定
Apexでも項目を必須化することが可能です。
今回は、Apexトリガを作成して、項目の必須チェックを行いました。
trigger AccountTrigger on Account (before insert, before update) {
if(Trigger.isBefore && (Trigger.isInsert || Trigger.isUpdate)){
AccountTriggerHandler ah = new AccountTriggerHandler();
ah.requiredCheck(trigger.new);
}
}
public class AccountTriggerHandler {
public void requiredCheck(List<Account> newList){
for(Account acc : newList){
if(String.isBlank(acc.Required__c)){
acc.Required__c.addError('「必須項目」を入力してください。');
}
}
}
}
上記トリガでは、取引先が作成、もしくは更新された際に、
「必須項目」の値をチェックする処理を書いています。
「必須項目」に値が設定されていなければ、項目下にエラーメッセージを表示します。

Apexでの必須項目設定の特徴は以下の通りです。
特徴 | 編集画面 | リストビューインライン編集 | CSVインポート |
---|---|---|---|
・条件を指定して必須項目化が可能(他オブジェクト/レコードの情報使用可) ・参照権限がない場合でも、必須チェックが行われる | 必須 | 必須 | 必須 |
Apex開発では、入力規則と同様に、条件を指定して項目の必須化が可能です。
しかも他オブジェクトや別のレコードの情報を条件に使用できるため、入力規則よりも柔軟性が高いです。
まとめ
今回は必須項目の設定方法をいろいろ取り上げてみました。
用途に合わせて検討してみるのがよさそうですね。
設定方法 | 特徴 | 編集画面 | リストビューインライン編集 | CSVインポート |
---|---|---|---|---|
項目の設定画面 | ・常に必須 ・参照権限にかかわらず、すべてのユーザが参照/更新可能 ・レイアウトから削除不可 | 必須 | 必須 | 必須 |
ページレイアウト | ・参照権限がない場合、必須チェックは行われない | 必須 | ・必須項目がリストビューに含まれない場合、必須ではない ・必須項目がリストビューに含まれる場合、必須 | 必須でない |
Lightningレコードページ | ・参照権限がない場合、必須チェックは行われない | 必須 | 必須でない | 必須でない |
入力規則 | ・条件を指定して必須項目化が可能 ・参照権限がない場合でも、必須チェックが行われる | 必須 | 必須 | 必須 |
Apex開発 | ・条件を指定して必須項目化が可能(他オブジェクト/レコードの情報使用可) ・参照権限がない場合でも、必須チェックが行われる | 必須 | 必須 | 必須 |
コメント