MENU
Abo
某SIer勤務。
新卒文系からエンジニア就職。
日々の学びをつらつらと書いています。
保有資格:
Salesforce認定アドミニストレーター  
Salesforce認定Platformデベロッパー
Salesforce認定上級Platformデベロッパー
カテゴリー
アーカイブ

【Salesforce】必須項目の設定方法まとめ

今回は必須項目の設定方法についてです。

必項項目の設定方法といては以下のような方法があります。

  • 項目の設定画面で設定
  • ページレイアウトで設定
  • Lightningレコードページで設定
  • 入力規則で設定
  • Apex開発で設定

設定方法によって、必須チェックが行われる条件が異なります。

必須項目導入の際は参考にしてみてください。

目次

項目の設定画面で設定

設定 > オブジェクトマネージャー でオブジェクトを選択し、対象の項目の設定画面で設定します。

特徴としては、以下のようなことが挙げられます。

スクロールできます
特徴編集画面リストビューインライン編集CSVインポート
・常に必須
・参照権限にかかわらず、すべてのユーザが参照/更新可能
・レイアウトから削除不可
必須必須必須

リストビューでインライン編集する際は、必須項目がリストビューに表示されていない場合でも必須チェックが行われます。

ページレイアウトで設定

設定 > オブジェクトマネージャー でオブジェクトを選択し、ページレイアウトで設定します。

特徴としては、以下のようなことが挙げられます。

スクロールできます
特徴編集画面リストビューインライン編集CSVインポート
・参照権限がない場合、必須チェックは行われない必須・必須項目がリストビューに含まれない場合、必須ではない
・必須項目がリストビューに含まれる場合、必須
必須でない

リストビューでインライン編集する際は、必須項目がリストビューに表示されていない場合、必須チェックは行われません

Lightningレコードページで設定

設定 > オブジェクトマネージャー でオブジェクトを選択し、Lightningレコードページを作成して必須項目を設定します。

こちらの設定は方法はカスタムオブジェクトでのみ可能です。

STEP
Lightningレコードページでの動的フォームを有効化

Lightningレコードページ編集画面で動的フォームを有効化します。

STEP
項目配置 & 必須項目に設定

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

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開発・条件を指定して必須項目化が可能(他オブジェクト/レコードの情報使用可)
・参照権限がない場合でも、必須チェックが行われる
必須必須必須
よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

某SIer勤務。
新卒文系からエンジニア就職。
日々の学びをつらつらと書いています。
保有資格:Salesforce認定アドミニストレーター
     Salesforce認定Platformデベロッパー
     Salesforce認定上級Platformデベロッパー

コメント

コメントする

CAPTCHA


目次