2022/05/6

Salesforceにおける入力規則|使用方法とその定義例を簡単に解説

 
  

入力規則とは?

Salesforceには入力データの妥当性検証のための入力規則を定義可能です。 Salesforceでは、レコードを新たに作成する際やレコードを編集する際に、各種項目に入力されたデータが有効かどうかを判断するためのルールを設定でき、そのルールを入力規則と呼びます。 入力規則はレコードを保存する際に適用され、全ての入力項目に対して入力規則に反しない有効なデータであることを検証します。 全ての入力項目が有効であればレコードは保存されますが、入力規則に反する無効な項目があれば、レコードは保存されずにエラーメッセージが表示されます。 ここでは、Salesforceにおける入力規則の定義方法や有効化の方法、入力規則例について紹介します。

入力規則の定義

入力規則は数式や条件式で表現できます。 入力規則は1つ以上の入力項目について、そのデータを検証するルールを数式や条件式で定義します。また、入力規則はTrueもしくはFalseを返すことが可能で、無効な入力があればエラーメッセージを表示させることも可能です。 それでは入力規則の具体的な使用方法を定義例と併せて見ていきましょう。

入力規則の構成項目

入力規則は複数の項目で構成されています。 入力規則を定義するために必要な項目がいくつかあります。それらは、「ルール名」、「有効」、「説明」、「エラー条件数式」、「エラーメッセージ」、「エラー表示場所」で、各項目の詳細は以下の通りです。 「ルール名」は入力規則を識別するための名称です。40文字以内で指定可能ですが、拡張文字や空白、特殊文字を含めることはできないので注意が必要です。また、他の入力規則と同じルール名を重複して指定することはできません。 「有効」は入力規則が有効かどうかを示す識別子です。 「説明」は、入力規則の検証内容や他の入力規則と区別するための情報など、入力規則の詳細を簡潔に表した説明文で、255文字以内で指定することが可能です。 「エラー条件数式」は入力規則の本体で、対象となる項目を検証するためのルールです。関数や論理演算子、論理関数等を組み合わせた数式を用いて、データの有効性を判定するルールを構成します。REGEX関数を用いて複雑な条件のルールを定義することも可能です。 入力規則では「エラー条件数式」にマッチする場合、すなわち数式がTrueを返す場合にデータが無効だと判定されます。 「エラーメッセージ」は、「エラー条件式」を用いて対象となる項目を検証した結果、入力規則に反する無効なデータが入力されていた際に表示するメッセージです。 「エラー表示場所」は、エラーメッセージを表示する場所を指します。エラーメッセージは検証対象となる項目の下やページの最上部への表示が可能です。

入力規則の定義方法

入力規則は各構成項目を指定して定義します。 入力規則を定義する際には、Salesforceで入力規則を新規作成し、「ルール名」など、各構成項目を指定します。一度定義した入力規則は、修正や削除が可能です。 また、既に定義した入力規則を元に新たな入力規則を定義することも可能です。定義済の入力規則を元に新規入力規則を作成するためには、まず元にしたい入力規則をコピーします。コピーした入力規則を修正して、新たな入力規則として定義します。

入力規則の定義例

入力規則の構成項目の中でも「エラー条件数式」は重要な項目です。 「エラー条件数式」は入力規則の要となる項目で、データの有効性を検証する上で重要な項目です。ここではこの「エラー条件数式」に注目し、その定義例をいくつか挙げながら紹介していきます。重要な項目ですのでしっかり理解しておきましょう。 先述の通り、入力規則では「エラー条件数式」にマッチする場合にデータが無効だと判定されますので、無効なデータにマッチする数式を指定する必要があります。「エラー条件数式」が無効なデータを表現している点も併せて見ていきましょう。

数値に関する入力規則例

数値に関する入力規則の定義例を示します。 数値に関する入力規則では以下のように「エラー条件数式」を定義します。
/*検証対象となるデータは50以上でなければいけない。*/
Number_data < 50
/*検証対象となるデータは正の整数でなければいけない。*/
OR(
FLOOR(Number_data) <> Number_data,
Number_data < 1
)
/*検証対象となるデータは10以上100以下でなければいけない。*/
OR(
Number_data < 10,
Number_data > 100
)
/*検証対象となるデータは10の倍数でなければいけない。*/
MOD(Number_data, 10) <> 0

日付に関する入力規則例

日付に関する入力規則の定義例を示します。 日付に関する入力規則では以下のように「エラー条件数式」を定義します。
/*検証対象となるデータは今年の日付でなければいけない。*/
YEAR(Date_data) <> YEAR(TODAY())
/*検証対象となるデータは今月の日付でなければいけない。*/
OR(
YEAR(Date_data) <> YEAR(TODAY()),
MONTH(Date_data) <> MONTH(TODAY())
)
/*検証対象となるデータは今日の日付でなければいけない。*/
Date_data <> TODAY()
/*検証対象となるデータは今日から30日以内の日付でなければいけない。*/
(Date_data - TODAY()) > 30

文字列の入力規則例

文字列に関する入力規則の定義例を示します。 文字列に関する入力規則では以下のように「エラー条件数式」を定義します。
/*検証対象となるデータは128文字以上でなければいけない。*/
LEN(Text_data) < 128
/*検証対象となるデータは'CODE'を含んでいなくてはいけない。*/
NOT(CONTAINS(Text_data, 'CODE'))
/*検証対象となるデータは'CODE'で始まらなくてはいけない。*/
NOT(BEGINS(Text_data, 'CODE'))
/*検証対象となるデータは'CODE'で終わらなくてはいけない。*/
RIGHT(Text_data, LEN('CODE')) <> 'CODE'

その他の入力規則例

その他の入力規則の定義例を示します。 日付や数値、文字列以外に関する入力規則でも「エラー条件数式」を定義することが可能です。REGEX関数を用いれば複雑な書式でも正規表現で定義し検証することが可能です。
/*検証対象となるデータは郵便番号形式(ハイフン付き)でなければいけない。*/
NOT(REGEX(PostalNo_data, ""\\d{3}-\\d{4}""))
/*検証対象となるデータは携帯電話番号形式(ハイフン付き)でなければいけない。*/
NOT(REGEX(MobileNo_data, ""0[789]0-\\d{4}-\\d{4}""))
/*検証対象となるデータはメールアドレス形式でなければいけない。*/
NOT(REGEX(MailAddr_data, ""[\\w_.\\-]+@[\\w_.\\-]+\\.[a-zA-Z]+""))

入力規則を活用してデータの質を向上させよう!

今回は、Salesforceでレコードを保存する際の入力規則について、使用方法と使用例を紹介しました。 Salesforceにおける入力規則は、データの質を高めるために必要な項目です。レコードにデータを保存する際に意図しない無効なデータを保存することがないように、入力規則で無効なデータの入力を未然に防ぐことが重要です。 正しい使い方を理解し、入力規則を活用してレコードに保存するデータの質を向上させましょう。]]>

ITエンジニアへのキャリアチェンジならキャリアチェンジアカデミー

この記事の監修者・著者

株式会社オープンアップITエンジニア
株式会社オープンアップITエンジニア
未経験からITエンジニアへのキャリアチェンジを支援するサイト「キャリアチェンジアカデミー」を運営。これまで4500人以上のITエンジニアを未経験から育成・排出してきました。
・AWS、salesforce、LPICの合計認定資格取得件数:2100以上(2023年6月時点)
・AWS Japan Certification Award 2020 ライジングスター of the Year 受賞

おすすめの動画

  • 【未経験からIT業界へ転職するなら】相談窓口とスキルの獲得はここで解決!IT転職が一気に有利に!【キャリアチェンジアカデミー】

  • 【費用一切不要】未経験からIT業界へ転職するならまずはここへ相談!【キャリアチェンジアカデミー】

  • 【何のエンジニアになれるのか?】未経験からITエンジニアを目指すとこんな道がある【キャリアチェンジアカデミー】