データの検証を実装する

完了

ローコード プラグインを使用すると、データ検証ロジックを一元化できます。 プラグインを使用すると、ユーザーがデータをどのように操作するかに関係なく、ロジックを常に実行させることができます。 インスタント プラグインを使用すると、検証ロジックをオンデマンドで実行できるようになります。 さらに、自動プラグインを使用して、データが変更されるたびにロジックを実行することができます。

インスタント プラグインを使用する

インスタント プラグインを使用する際は、error 関数または出力パラメーターを使用して、インスタント プラグイン アクションの呼び出し元と通信できます。 出力パラメーターを使用すると、呼び出し元に対して、error 関数を使用する場合よりも適切なエラー処理エクスペリエンスを提供できます。 たとえば、データが有効な場合はブール値インジケーターを作成し、データが無効な場合は問題の詳細を提供するメッセージ パラメーターを作成できます。

自動プラグインを使用する

自動プラグインを使用している場合、問題を伝える主な方法は error 関数を使用することです。 あるいは、データ行を変更して問題を示すこともできます。 これらのアプローチの主な違いは、自動プラグインで error 関数を使用すると、プラグインまたは元の要求によって行われた作業が終了し、データの変更がロールバックされることです。 たとえば、ユーザーが取引先担当者を作成し、アドレス検証プラグインで問題が見つかった場合は、error 関数を使用します。 この例では、ユーザーはエラーに気づき、Dataverse に取引先担当者を追加しませんでした。 このアプローチは、不正なデータが保存されるのを防ぐのに効果的ですが、最もユーザー フレンドリーなエクスペリエンスではない可能性があります。 データ行の変更アプローチを使用すると、データ行にアドレス有効インジケーターを追加でき、プラグインはデータ検証結果を使用してこのインジケーターを変更できます。 このアプローチでは、ユーザーは引き続き取引先担当者を保存できますが、インジケーターを使用して、無効なデータをクリーンアップするフォローアップ ビジネス プロセスをトリガーできます。

検証に自動プラグインを使用している場合は、必ずプラグインが事前操作中に実行されるように設定してください。 このオプションは、問題が発生した場合に Dataverse の更新前にシステムで動作を停止してから、完了した作業に対してロールバックを実行するため、最も効率的です。

データの検証に Power Fx を使用する

Power Fx には、検証ロジックを作成するときに役立つ関数が多数あります。 よく理解しておくべき関数には次のようなものがあります。

  • DateDiff - この関数は、日付を操作して日付が有効な範囲外かどうかを判断するときに便利です。 たとえば、サービスの要求日が 90 日以上先でないことを確認できます。

  • StartsWith、EndsWith - この関数は、特定のデータの文字列の内容を確認するのに役立ちます。

  • IsBlank、IsEmpty - IsBlank を使用すると、First Name と Last Name にデータが含まれているかどうかなど、列にデータがあるかどうかを確認できます。 IsEmpty を使用すると、テーブルが空かどうかを確認できます。 たとえば、既存の Contact 行に特定の名前が含まれているかどうかを知りたい場合は、フィルターを使用し、IsEmpty を使用して結果を確認します。

  • IsMatch、Match、および MatchAll - match 関数は、パターンや正規表現と照合できるため強力です。 たとえば、match 関数を使用して、データ行の取引先企業番号列が有効なパターンに従っているかどうかを確認できます。