Uwaga
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Język Power Fx posiada nową wersję zapoznawczą umożliwiającą obsługę błędów na poziomie Formuły. Jest ona domyślnie włączona w Ustawieniach.
To ustawienie daje dostęp do formuł takich jak IfError
, IsError
, Error
oraz IsBlankorError
. Funkcje te umożliwiają wykrywanie błędów, dostarczanie alternatywnych wartości lub podejmowanie określonych działań w oparciu o napotkany błąd.
Obsługa błędów weryfikacji
Powyższe funkcje mogą pomóc w weryfikacji danych wejściowych, takich jak nieprawidłowy format lub wymagane pola. Użyj instrukcji If
lub funkcji takich jak IsBlank
i IsError
do weryfikacji danych wprowadzanych przez użytkownika. Podawaj jasne komunikaty o błędach i zapobiegaj dalszemu przetwarzaniu, dopóki dane wejściowe nie zostaną poprawione.
If( IsBlank(TextInput.Text),
Notify("Field cannot be blank",
NotificationType.Error),
// Continue with processing
)
Obsługa błędów funkcji aktualizacji
Podobnie jak w poprzednim przykładzie, funkcje Error
mogą pomóc wychwycić błędy podczas aktualizacji danych do źródła danych. Funkcja Patch
zgłasza błędy na 2 sposoby.
Może zwrócić wartość błędu jako wynik operacji.
UpdateContext(
{
result : Patch(
Feeds,
Defaults(Feeds),
{
createdon: Now(),
crde8_content: TextInput1_1.Text
cr9ce_imageurl: filename
}
)
}
)
Błędy mogą być wykrywane za pomocą IsError
i zastępowane lub eliminowane za pomocą 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)
)
Obsługa błędów formularzy
Podczas korzystania z formularzy do przesyłania danych za pomocą funkcji SubmitForm
, użycie właściwości kontrolki formularza OnFailure
w celu powiadomienia o błędzie.
// 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);
Niestandardowy komunikat o błędzie z właściwością OnError
Power Apps OnError
to właściwość aplikacji, która pozwala przechwytywać wszystkie nieobsługiwane błędy. Właściwość OnError
daje możliwość wykonania wyrażenia, które jest uruchamiane za każdym razem, gdy błąd nie jest obsługiwany przez aplikację (np. przechowując go w zmiennej lub używając funkcji takiej jak IfError
, aby zastąpić go inną wartością). Aby użyć właściwości OnError
, musisz dodać ją do aplikacji, do której chcesz ją zastosować. Następnie można określić komunikat o błędzie, który ma zostać wyświetlony, wpisując formułę w polu właściwości OnError
.
Ważne jest, aby pamiętać, że App.OnError
nie może zastąpić błędu w taki sam sposób, jak IfError
może. W momencie wykonania App.OnError
błąd już wystąpił, a jego wynik rozprzestrzenił się przez inne formuły. App.OnError
kontroluje jedynie sposób zgłaszania błędu użytkownikowi końcowemu i zapewnia hak dla twórcy, aby w razie potrzeby zarejestrować błąd.
Ten kod w App.OnError
może pomóc zlokalizować źródło błędu:
Notify(
Concatenate(
FirstError.Message,
", Observed: ",
FirstError.Observed,
", Source: ",
FirstError.Source
),
NotificationType.Error
)