次の方法で共有


エラー処理

Power Fx 言語には、数式レベルのエラー処理を有効にする新しいプレビュー機能があります。 この設定は既定でオンになっています。

数式レベルのエラー管理がオンに設定されていることを示す「設定」の「今後の機能」のスクリーンショット

この設定により、IfErrorIsErrorErrorIsBlankorError のような数式にアクセスできるようになります。 これらの関数を使用すると、エラーを検出したり、代替値を提供したり、発生したエラーに基づいて特定のアクションを実行したりできます。

検証エラー処理

上記の関数は、不正なフォーマットや必須フィールドなどの入力を検証する際に役立ちます。 If 文や IsBlankIsError のような関数を使用して、ユーザー入力を検証します。 明確なエラー メッセージを提供し、入力が修正されるまでそれ以上の処理が行われないようにします。

If( IsBlank(TextInput.Text),
    Notify("Field cannot be blank", 
    NotificationType.Error),
    // Continue with processing
)

パッチ関数のエラー処理

前の例と同様に、Error 関数は、データ ソース にデータをパッチ適用するときにエラーを検出する際に役立ちます。 Patch 関数は 2 つの方法でエラーを報告します。

操作の結果としてエラー値を返すこともあります。

UpdateContext(
    {   
    result : Patch(
             Feeds,
             Defaults(Feeds),
             {
                 createdon: Now(),
                 crde8_content: TextInput1_1.Text
                 cr9ce_imageurl: filename
             }
        )
    }
)

エラーは IsError で検出され、IfError で置換または抑制されます

IfError(result, Notify("There was an issue saving data" , NotificationType.Error));
IfError(result, Notify("There was an issue saving data" , & FirstError.Message, NotificationType.Error))

If(
    IsError(
        Patch(
            Feeds,
            Defaults(Feeds),
            {
                createdon: Now(),
                crde8_content: TextInput1_1.Txt,
                cr9ce_imageurl: filename        
            }
        )
    ),
    Notify("Error: There was an issue saving data", NotificationType.Error)
)

フォームのエラー処理

フォームを使用して SubmitForm 関数でデータを送信する場合、フォーム コントロールのプロパティ OnFailure を使用してエラー メッセージを通知します。

// OnSelect property of the form's submit button
SubmitForm(frm_SubmitData);

// OnSuccess property of the form
Navigate('Success Screen');

// OnFailure property of the form
Notify("Error: the invoice could not be created", NotificationType.Error);

OnError プロパティを使用したカスタム エラー メッセージ

Power Apps OnError は、処理されていないエラーをすべてキャプチャできるアプリのプロパティです。 OnError プロパティは、エラーがアプリによって処理されないたびに実行される式を実行する機能を提供します (変数に格納したり、IfError のような関数を使用して他の値に置き換えるなど)。 OnError プロパティを使用するには、それを適用するアプリに追加する必要があります。 次に、OnError プロパティ ボックスに数式を記述して、表示したいエラー メッセージを指定します。

App.OnError は、IfError ができるのと同じ方法ではエラーを置換できないことに注意してください。 App.OnError が実行された時点で、エラーは既に発生しており、結果は他の数式を通じて伝播されています。  App.OnError は、エンド ユーザーにエラーを報告する方法のみを制御し、必要に応じて作成者がエラーをログに記録するためのフックを提供します。

このコードは App.OnError エラーの原因を特定するのに役立ちます:

Notify(
    Concatenate(
        FirstError.Message,
        ", Observed: ",
        FirstError.Observed,
        ", Source: ",
        FirstError.Source
    ),
    NotificationType.Error
)

次のステップ