[Salesforceシステム管理] レコード編集時にデータ項目の入力フォーマットをチェックするには?

SFエンジニア

レコード編集時に個人番号というデータ項目のフォーマットがxxxx-xxxx-xxxxじゃなかったらエラーにしたいんだけど?

SF宣教師

そのようなチェックは入力規則で実現できます。

目次

レコード編集時にデータ項目の入力フォーマットをチェックするには?

要件:
取引先責任者のレコード編集で、個人番号というデータ項目が「数字4桁-数字4桁-数字4桁」という形式で入力されているかをチェックする。
そうでない場合は「個人番号は”9999-9999-9999″の形式で入力してください。」というエラーメッセージを表示する。

入力規則の設定

入力規則を設定するには、以下の手順を実行します。

1.管理者アカウントでログイン

2.設定>オブジェクトマネージャ>オブジェクト名(この例では取引先責任者)

3.入力規則>新規をクリック

4.個人番号の入力規則を以下のとおり設定し、保存をクリック

ルール名:(例として)personalNo_input_rule
エラー条件数式:
NOT(
OR(
LEN (personalNo__c) = 0,
REGEX(personalNo__c, “[0-9]{4}-[0-9]{4}-[0-9]{4}”)
)
)

エラーメッセージ:個人番号は”9999-9999-9999″の形式で入力してください。
エラー表示場所:項目 – 個人番号

上記のエラー条件数式を補足します。エラー条件数式は、「~に一致しない場合」という否定形で表現します。
NOT() :カッコ内の条件に一致しない場合
OR() :カッコ内のいずれかが該当するかどうか
LEN():カッコ内のデータ項目の文字数
REGEX():正規表現がカッコ内に一致するかどうか
つまり、
「個人番号の入力長がゼロ」または「個人番号の入力フォーマットが9999-9999-9999」
ではなければエラー

というエラー条件数式になります。

REGEX():
テキスト項目を正規表現と比較し、一致する場合に TRUE を返します。該当しない場合は FALSE を返します。正規表現とは、特定の構文規則に従う文字列の形式を記述するための文字列です。
Salesforce Help: コードではなくてクリックによる SALESFORCE の拡張: REGEX

REGEX関数における正規表現は Java Platform SE 6 構文 に準拠しており、「正規表現 サンプル」などで検索すると沢山ヒットしますので、そちらを参照してください。

動作確認

取引先責任者レコードページを編集中に、個人番号に「9999-9999-9999」以外の形式で入力すると、指定したエラーメッセージが表示されるはずです。

SF宣教師

以上です!

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次