概要
SharePoint の投稿フォームで複数条件の入力チェック(Validation)を行います。
ひとつでも条件を満たさない項目がある場合は、「保存」をクリックした際にエラーメッセージを表示します。
完成イメージ
「保存」をクリックしたときに処理を挟むには
フォーム保存時の処理を表す「SharePointIntegration」>「OnSave」プロパティにおいてIF文などの条件分岐をいれることで、条件を満たさない場合の処理を指定することができます。
実装
OnSave プロパティ で入力チェックの条件分岐を設定します。
この例で設定した条件は以下の通りです。
- 一行テキストは必須入力
- 数値は 10 ~ 20 の間で入力すること
- 「選択肢1」以外を指定すること
「SharePointIntegration」>「OnSave」
Set(ValidationErrMsg, "");
If(IsBlank(DataCardValue2.Text),Set(ValidationErrMsg, "一行テキストは必須入力です。"));
If(Or(Value(DataCardValue3.Text) < 10,21 <= Value(DataCardValue3.Text)),Set(ValidationErrMsg, ValidationErrMsg&"数値は10から20の間で入力してください。"));
If(DataCardValue4.Selected.Value = "選択肢 1",Set(ValidationErrMsg, ValidationErrMsg&"選択肢1以外を選択してください。"));
If(IsBlank(ValidationErrMsg),SubmitForm(SharePointForm1),Notify(ValidationErrMsg,NotificationType.Error));
「保存」ボタンをクリックすると、条件に従っていないものがエラーメッセージとして表示されます。
条件に従っているものはエラーメッセージには表示されません。すべての入力項目が条件に従っていれば アイテムの保存処理(SubmitForm)が実行されます。