Pastaba.
Prieigai prie šio puslapio reikalingas įgaliojimas. Galite bandyti prisijungti arba pakeisti katalogus.
Prieigai prie šio puslapio reikalingas įgaliojimas. Galite bandyti pakeisti katalogus.
"Power Fx" palaiko formulės lygio klaidų apdorojimą. Ši funkcija pagal numatytuosius nustatymus įjungta visose naujose programose. Tačiau kai kuriose senesnėse programose jis gali būti išjungtas programos nustatymuose. Rekomenduojame palikti šią funkciją įjungtą.
Norėdami patikrinti, ar ši funkcija įjungta:
- Atidarykite drobės programą redaguoti.
- Eikite į skirtuką Nustatymai>Atnaujinimai>nutraukti .
- Įsitikinkite, kad išjungta parinktis Išjungti formulės lygio valdymą .
Kai šis parametras įgalintas, galite naudoti tokias formules kaip IfError, IsError, Error, ir IsBlankorError. Šios funkcijos padeda aptikti klaidas, pateikti alternatyvias reikšmes arba atlikti konkrečius veiksmus pagal klaidą. Įjungę šį parametrą, į duomenų šaltinius galite įrašyti neapibrėžtas arba tuščias reikšmes. Išjungus šią funkciją, klaidos grąžinamos kaip tuščios reikšmės.
Tikrinimo klaidų tvarkymas
Šios funkcijos padeda patikrinti įvestis, pvz., neteisingus formatus arba privalomus laukus. Naudokite If teiginius arba funkcijas, pvz., IsBlank ir IsError tikrinkite vartotojo įvestį. Pateikite aiškius klaidų pranešimus ir neleiskite tolesniam apdorojimui, kol įvestis nebus ištaisyta.
If( IsBlank(TextInput.Text),
Notify("Field cannot be blank",
NotificationType.Error),
// Continue with processing
)
Pataisos funkcijos klaidų tvarkymas
Panašiai kaip ir ankstesniame pavyzdyje, Error funkcijos padeda aptikti klaidas taisant duomenis į duomenų šaltinį. Funkcija Patch praneša apie klaidas dviem būdais.
Jis gali grąžinti klaidos reikšmę kaip operacijų rezultatą.
UpdateContext(
{
result : Patch(
Feeds,
Defaults(Feeds),
{
createdon: Now(),
crde8_content: TextInput1_1.Text
cr9ce_imageurl: filename
}
)
}
)
Galite aptikti klaidas naudodami IsError ir pakeisti arba slopinti naudodami 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)
)
Formų klaidų tvarkymas
Kai naudojate formas duomenims pateikti naudodami SubmitForm funkciją, naudokite ypatybę OnFailure Formos valdiklis, kad praneštumėte vartotojams apie klaidų pranešimus.
// 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);
Pasirinktinis klaidos pranešimas naudojant ypatybę OnError
Ypatybė Power Apps OnError fiksuoja visas neapdorotas programos klaidas. Naudodami OnError ypatybę galite paleisti išraišką kiekvieną kartą, kai programa susiduria su neapdorota klaida. Pavyzdžiui, galite išsaugoti klaidą kintamajame arba naudoti funkciją, pvz. IfError , pakeisti klaidą kita reikšme. Jei norite naudoti OnError nuosavybę, pridėkite ją prie programos, kurioje norite tvarkyti klaidas. Tada ypatybių lauke parašykite formulę OnError , kad nurodytumėte norimą rodyti klaidos pranešimą.
App.OnError negali pakeisti klaidos kaip IfError gali. Vykdant App.OnError klaida jau įvyko ir rezultatas jau buvo pateiktas pagal kitas formules.
App.OnError valdo tik tai, kaip apie klaidą pranešama galutiniam vartotojui. Tai taip pat suteikia būdą kūrėjui užregistruoti klaidą, jei nori.
Šis įjungtas App.OnError kodas gali padėti rasti klaidos šaltinį:
Notify(
Concatenate(
FirstError.Message,
", Observed: ",
FirstError.Observed,
", Source: ",
FirstError.Source
),
NotificationType.Error
)