[Salesforceフロー] 画面フローで入力チェックを行うには?

SFエンジニア

画面フローのフィールドで入力された値はどうやってチェックすれば良いのかね?

SF宣教師

画面要素のテキストコンポーネントの「入力を検証」で実装できますよ。

目次

[Salesforceフロー] 画面フローで入力チェックを行うには?

例として「個人番号」を入力する画面フローを作成します。(各フロー要素の下記に記載していないプロパティはデフォルト値のままです。)
なお、シンプルに記載するため、テキストフィールドに入力した値をチェックして、指定のフォーマット以外であればエラーメッセージを出力するという機能のみを実装しており、それ以外のビジネスロジックは省略しています。

Flow Builderの表示

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

2.設定>フロー>新規フロー>画面フロー

3.「作成」をクリックすると Flow Builder が表示されます。

[要素:画面] の作成

1.要素を追加をクリック

2.「画面」を選択し、右側の画面のプロパティに以下のとおり入力します。

表示ラベル:(例として)個人番号の入力
API参照名:(例として)pagePersonalNumberInput

3.左のコンポーネントから「テキスト」をクリックし、右側のパラメータに以下のとおり入力します。

表示ラベル:(例として)個人番号
API参照名:(例として)personalNumber
必須をチェック
入力を検証:
┌ エラーメッセージ:
│ (例として)個人番号は”9999-9999-9999″の形式で入力してください。
│ 数式:
REGEX({!personalNumber},”[0-9]{4}-[0-9]{4}-[0-9]{4}”)

入力を検証する数式を補足します。数式は、「~に一致しない場合」という否定形で表現します。
上記の場合、「入力フィールド personalNumber “[0-9]{4}-[0-9]{4}-[0-9]{4}” の正規表現に合致しない場合」にエラーメッセージを表示するという意味になります。

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

フローのプロパティを設定

1.「保存」をクリック

2.フローを保存に以下のとおり入力します。

フローの表示ラベル:(例として)個人番号の入力
フローの API 参照名:(例として)inputPersonalNumber

フローのテスト

それでは作成したフローの動作確認をしてみましょう。

1.Flow Builderの「デバッグ」をクリックし、「実行」をクリック

2.個人番号を「1234-5678-9012」という正しいフォーマットで入力して「完了」をクリック

3.フローが問題なく完了するはずです。「もう一度実行」をクリック

4.個人番号を「1234-5678」という正しくないフォーマットで入力して「完了」をクリック

5.エラーメッセージが表示されるはずです。

まとめ

この画面フローの完成形は以下のとおりです。

1.開始

2.個人番号の入力(画面)
 入力された個人番号を personalNumber変数 に格納
 →入力を検証

3.終了

SF宣教師

以上です!

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

コメント

コメントする

目次