Nota
Capaian ke halaman ini memerlukan kebenaran. Anda boleh cuba mendaftar masuk atau menukar direktori.
Capaian ke halaman ini memerlukan kebenaran. Anda boleh cuba menukar direktori.
Power Fx menyokong pengendalian ralat peringkat formula. Ciri ini dihidupkan secara lalai untuk semua apl baharu. Walau bagaimanapun, sesetengah apl lama mungkin mematikannya dalam Tetapan apl. Kami mengesyorkan agar ciri ini tetap dihidupkan.
Untuk menyemak sama ada ciri ini dihidupkan:
- Buka apl kanvas untuk mengedit.
- Pergi ke tabKemas Kini>>Bersara.
- Pastikan Lumpuhkan pengurusan peringkat formula dimatikan.
Apabila tetapan ini didayakan, anda boleh menggunakan formula seperti IfError, IsError, Error, dan IsBlankorError. Fungsi ini membantu anda mengesan ralat, menyediakan nilai alternatif atau mengambil tindakan tertentu berdasarkan ralat. Apabila anda menghidupkan seting ini, anda boleh menulis nilai nol atau kosong pada sumber data. Apabila anda menyahaktifkan ciri ini, ralat dikembalikan sebagai nilai kosong.
Pengendalian ralat pengesahan
Fungsi ini membantu mengesahkan input seperti format yang salah atau medan yang diperlukan. Gunakan If pernyataan atau fungsi seperti IsBlank dan IsError untuk mengesahkan input pengguna. Berikan mesej ralat yang jelas dan elakkan pemprosesan selanjutnya sehingga input diperbetulkan.
If( IsBlank(TextInput.Text),
Notify("Field cannot be blank",
NotificationType.Error),
// Continue with processing
)
Pengendalian ralat fungsi tampalan
Sama seperti contoh sebelumnya, Error fungsi membantu menangkap ralat semasa menampal data ke sumber data. Fungsi ini Patch melaporkan ralat dalam dua cara.
Ia boleh mengembalikan nilai ralat hasil daripada operasi.
UpdateContext(
{
result : Patch(
Feeds,
Defaults(Feeds),
{
createdon: Now(),
crde8_content: TextInput1_1.Text
cr9ce_imageurl: filename
}
)
}
)
Anda boleh mengesan ralat dengan menggunakan IsError dan menggantikan atau menyenekannya dengan menggunakan 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)
)
Pengendalian ralat borang
Apabila anda menggunakan Borang untuk menyerahkan data dengan menggunakan SubmitForm fungsi, gunakan sifat OnFailure kawalan Borang untuk memberitahu pengguna tentang mesej ralat.
// 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);
Mesej ralat tersuai dengan menggunakan sifat OnError
Sifat Power Apps OnError menangkap semua ralat yang tidak dikendalikan dalam apl anda. Dengan menggunakan OnError sifat, anda boleh menjalankan ungkapan setiap kali apl menghadapi ralat yang tidak dikendalikan. Sebagai contoh, anda boleh menyimpan ralat dalam pembolehubah atau menggunakan fungsi seperti IfError untuk menggantikan ralat dengan nilai lain. Untuk menggunakan OnError sifat, tambahkannya pada apl yang anda mahu kendalikan ralat. Kemudian, tulis formula dalam OnError kotak sifat untuk menentukan mesej ralat yang ingin anda paparkan.
App.OnError tidak boleh menggantikan ralat seperti IfError boleh. Apabila App.OnError berjalan, ralat sudah berlaku dan hasilnya sudah melalui formula lain.
App.OnError hanya mengawal cara ralat dilaporkan kepada pengguna akhir. Ia juga menyediakan cara untuk pembuat log ralat jika mereka mahu.
Kod ini boleh App.OnError membantu mencari sumber ralat:
Notify(
Concatenate(
FirstError.Message,
", Observed: ",
FirstError.Observed,
", Source: ",
FirstError.Source
),
NotificationType.Error
)