Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Power Fx unterstützt die Fehlerbehandlung auf Formelebene. Dieses Feature ist für alle neuen Apps standardmäßig aktiviert. Einige ältere Apps haben es jedoch möglicherweise in den App-Einstellungen deaktiviert. Wir empfehlen, dieses Feature aktiviert zu halten.
So überprüfen Sie, ob dieses Feature aktiviert ist:
- Öffnen Sie eine Canvas-App zum Bearbeiten.
- Wechseln Sie zur Registerkarte Einstellungen>Updates>Veraltet.
- Stellen Sie sicher , dass die Verwaltung auf Formelebene deaktiviert ist.
Wenn diese Einstellung aktiviert ist, können Sie Formeln wie IfError, IsError, Error und IsBlankorError verwenden. Mithilfe dieser Funktionen können Sie Fehler erkennen, alternative Werte bereitstellen oder bestimmte Aktionen basierend auf dem Fehler ausführen. Wenn Sie diese Einstellung aktivieren, können Sie null- oder leere Werte in Datenquellen schreiben. Wenn Sie dieses Feature deaktivieren, werden Fehler als leere Werte zurückgegeben.
Validierungsfehlerbehandlung
Diese Funktionen helfen dabei, Eingaben wie falsche Formate oder Pflichtfelder zu überprüfen. Verwenden Sie If Anweisungen oder Funktionen wie IsBlank und IsError , um Benutzereingaben zu validieren. Geben Sie klare Fehlermeldungen aus und verhindern Sie eine weitere Verarbeitung, bis die Eingabe korrigiert ist.
If( IsBlank(TextInput.Text),
Notify("Field cannot be blank",
NotificationType.Error),
// Continue with processing
)
Patch-Funktion Fehlerbehandlung
Ähnlich wie im vorherigen Beispiel helfen Error Funktionen dabei, Fehler beim Patchen von Daten in eine Datenquelle abzufangen. Die Patch Funktion meldet Fehler auf zwei Arten.
Als Ergebnis der Operationen kann ein Fehlerwert zurückgegeben werden.
UpdateContext(
{
result : Patch(
Feeds,
Defaults(Feeds),
{
createdon: Now(),
crde8_content: TextInput1_1.Text
cr9ce_imageurl: filename
}
)
}
)
Sie können Fehler erkennen, indem Sie IsError verwenden und sie durch IfError ersetzen oder unterdrücken.
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)
)
Formularfehlerbehandlung
Wenn Sie Formulare zum Senden von Daten mithilfe der SubmitForm Funktion verwenden, verwenden Sie die Formularsteuerelementeigenschaft OnFailure , um Benutzer über Fehlermeldungen zu benachrichtigen.
// 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);
Benutzerdefinierte Fehlermeldung mithilfe der OnError-Eigenschaft
Die eigenschaft Power Apps OnError erfasst alle unbehandelten Fehler in Ihrer App. Mithilfe der OnError Eigenschaft können Sie einen Ausdruck jedes Mal ausführen, wenn bei der App ein unbehandelter Fehler auftritt. Sie können z. B. den Fehler in einer Variablen speichern oder eine Funktion verwenden, die den Fehler durch IfError einen anderen Wert ersetzt. Um die OnError Eigenschaft zu verwenden, fügen Sie sie der App hinzu, in der Fehler behandelt werden sollen. Schreiben Sie dann eine Formel in das OnError Eigenschaftenfeld, um die Fehlermeldung anzugeben, die Sie anzeigen möchten.
App.OnError kann den Fehler nicht ersetzen wie IfError es kann. Wenn App.OnError läuft, ist der Fehler bereits passiert, und das Ergebnis wurde bereits durch andere Formeln verarbeitet.
App.OnError steuert nur, wie der Fehler an den Endbenutzer gemeldet wird. Es bietet auch eine Möglichkeit, damit der Hersteller den Fehler protokollieren kann, wenn er möchten.
Dieser Code auf App.OnError kann helfen, die Fehlerquelle zu lokalisieren:
Notify(
Concatenate(
FirstError.Message,
", Observed: ",
FirstError.Observed,
", Source: ",
FirstError.Source
),
NotificationType.Error
)