Skip to main content
This content is now archived and is no longer updated. Progress is not calculated. Pega Cloud instances are disabled, and badges are no longer awarded. ここをクリックして to continue your progress in the latest version.

データ検証

データ検証の方法

ビューを設計する際は、仕様で必要とされるすべてのフィールドとコントロールを追加します。 また、ユーザーが生成するデータ値が有効なことを確認する方法を考える必要があります。 システムで、エラーの発生なしに情報を処理できるようにするには、有効なデータが必要です。 以下の表には、一部のデータ要件が説明されています。

データ要件
データが正しいタイプである。 たとえば、ユーザーは、「Total purchase units」フィールドに数値を入力する必要があります。
データが可能な値に制限されている。 たとえば、オプションのリストからタイプを選択することにより、ユーザーは有効なローンタイプのみを選択できます。
データがビジネスロジックに適合している。 たとえば、「Date of birth」フィールドは通常、過去の日付です。

処理エラーを防ぐため、Pega Platform™では、フィールドタイプとコントロールを提供して、検証要件をサポートしています。 正しいコントロールを選択することが、検証要件を満たすために十分なこともあります。 コントロールやフィールドタイプがデータ検証の実行に十分ではない場合、Pega Platformは、ビジネスロジックを使用して条件付きのフィールドをテストしてデータ検証を提供します。たとえば、形式がdd/mm/yyyyまたはmm/dd/yyyyのいずれであっても、ユーザーが入力したデータが日付であることを確認するカレンダー コントロールを使用できます。 ただし、カレンダー コントロールを使用して、職歴フォームの開始日フィールドが過去の日付を取得するようにすることはできません。 その代わりに、ビジネスロジックを使用して過去の日付を検証できます。

ビジネスロジックでのデータ検証

App Studioを使用し、ユーザーがフォームを送信した際にフィールドの値を定数値と比較する、シンプルなビジネスロジック検証を実行します。 無効なデータ値を定義する条件を作成し、条件が満たされた場合にエラーメッセージを表示するようにできます。ユーザーが、無効な値の条件に一致する値を生成した場合には、システムによってエラーメッセージが表示され、問題が解決されるまでユーザーはケースの処理を続行できなくなります。 たとえば、「Enter digit greater than 100」フィールドに、ユーザーに100を超える値を入力してもらうようにします。 この検証を設定するには、「Enter digit greater than 100 field is less than or equal to 100」という条件を作成します。 ユーザーがフォームを送信すると、システムはフィールドの値に基づいて条件を評価します。 条件が真の場合には、フィールドの値が100以下であることを意味し、フォームにメッセージが表示されます。

data-validation-condition-builder-error-message-on-form
ヒント: エラーメッセージは、データ検証エラーを判断し解決するために必要な情報をユーザーに提示します。

ビジネスロジック検証はケースライフサイクルのプロセスによく関連付けられており、明確なビジネスロジック検証に基づいて各フィールド インスタンスを検証することが可能となります。 許容可能な値を定義するビジネスロジック検証は、データを取得するフィールドとは区別されています。 たとえば、ユーザーが「Date of birth」フィールドに入力すると、それが検証されます。 そのフィールドがケース処理で後に使用される際には、検証は再度行われません。

複数のフォームが同じフィールドを使用し、フィールドの各インスタンスに異なる検証条件を適用できます。 たとえば人事アプリでは、人事担当者は、職歴フォームと新入社員フォームの2つのフォームに情報を入力します。 職歴フォームで、人事担当者は、企業ですでに勤務している従業員の開始日を入力します。 人事担当者は、現在の日付よりも前の日付を入力する必要があります。 新入社員フォームでは、人事担当者はまだ勤務を開始していない従業員の開始日を入力します。 人事担当者は、現在の日付よりも後の日付を入力する必要があります。 各ビジネス条件に1つずつ、2つのビジネスロジック検証を使用することにより、各フォームに正しい日付が入力されるようにできます。

App Studioで、フォームの送信時またはケースがステージに入ったときに、フィールドの値を検証できます。

次の問題に答えて、理解度をチェックしましょう。

フォームでの検証

ユーザーが入力する値を予測またはコントロールできない場合は、フォームでビジネスロジック検証を使用します。 フォームでビジネスロジック検証を設定すると、ユーザーがフォームを送信する際、検証がトリガーされます。 ユーザーが、無効なデータの条件に一致する値を含むフォームを送信すると、フォームにエラーが表示され、ユーザーが条件を満たさないデータを送信するまでケースの作業を続けることができなくなります。 フィールドに新しい値を入力するなど、ユーザーが無効なデータを解決するアクションを直ちに実行できる場合に、フォームで検証を使用します。

たとえば、フォームに「Date of birth」フィールドがあるとします。 フィールドタイプとコントロールでは、ユーザーが未来の日付を入力するのを防げません。 ただし、ユーザーが未来の日付を送信するとエラーが表示されるビジネスロジック検証を設計できます。 ユーザーが過去の日付を入力すると、フォームを送信できるようになります。

以下の画像の中央にある縦棒をスライドすると、左で生年月日フィールドを検証し、右のフォームにエラーメッセージを表示するステップ設定を表示できます。

ステージでの検証

ステージでビジネスロジック検証を使用することもできます。 ステージでビジネスロジック検証を使用して、ケースが特定のステージに入る前に、アプリケーションが正しいデータを生成し、ユーザーが正しいデータを入力または適切なアクションを実行したことを確認できます。 ケース タイプ データ モデルのステージでビジネスロジック検証を設定すると、ケースが指定されたステージに入る前に検証がトリガーされます。 ステージエントリ検証で、データ値が無効なデータの条件を満たす場合には、ケースはステージに入ることができず、エラーメッセージが表示されます。

補足: ステージ検証でエラーメッセージがトリガーされた場合、エンドユーザーには無効なデータを更新するか、前のステージに戻ったり、ケースを閉じたりするなどのアクションを実行できないといけません。 エンドユーザーが検証エラーを解決できる機能を設定するかどうかは、開発者が決定できます。

たとえば、住宅ローンのアプリでは、ケースが査定ステージに移る前に、有効なクレジットスコアが必要となります。 アプリケーションはユーザーにクレジットスコアが無効であることを知らせ、ユーザーはクレジット履歴を確認したり、プロセスをキャンセルしたりできます。

次の画像で「+」アイコンをクリックすると、ケースタイプのデータモデルでの検証の設定について詳細を表示できます。


このトピックは、下記のモジュールにも含まれています。

We'd prefer it if you saw us at our best.

Pega Academy has detected you are using a browser which may prevent you from experiencing the site as intended. To improve your experience, please update your browser.

Close Deprecation Notice