การจัดการข้อผิดพลาด

ข้อผิดพลาดPower Queryจะหยุดการประเมินคิวรีและแสดงข้อความให้ผู้ใช้

การโยนข้อผิดพลาดด้วย error นิพจน์

การโยนข้อผิดพลาดPower Queryโดยง่ายเหมือน error การใช้นิพจน์

let
    Source = "foo",
    Output = error "error message"
in
    Output

ตัวอย่างของข้อความข้อผิดพลาด Expression.Error

Error.Recordสามารถใช้ฟังก์ชันนี้กับตัวควบคุมเพิ่มเติมได้

let
    Source = "foo",
    Output = error Error.Record("error reason", "error message", "error detail")
in
    Output

ตัวอย่างของข้อความข้อผิดพลาด Expression.Error ที่มีรายละเอียดเพิ่มเติม

การจับข้อผิดพลาดด้วย try และ otherwise

tryนิพจน์แปลงค่าและข้อผิดพลาดเป็นค่าเรกคอร์ดที่ระบุว่านิพจน์จัดการกับ try ข้อผิดพลาดหรือไม่ ตลอดจนค่าที่เหมาะสมของเรกคอร์ดข้อผิดพลาดหรือไม่

ถ้าไม่พบข้อผิดพลาด เรกคอร์ดต่อไปนี้จะถูกส่งกลับจาก try นิพจน์:

try "foo"

HasError เท็จ ด้วยค่า

หากพบข้อผิดพลาด เรกคอร์ดต่อไปนี้จะถูกส่งกลับจาก try นิพจน์:

try "foo"+1

HasError true กับเรกคอร์ดข้อผิดพลาด

เรกคอร์ด ข้อผิดพลาด ประกอบด้วยเหตุผลข้อความและ เขตข้อมูล รายละเอียด

เนื้อหาของระเบียนข้อผิดพลาด

ขึ้นอยู่กับข้อผิดพลาด เขตข้อมูล รายละเอียด อาจมีข้อมูลเพิ่มเติม

ส่วน otherwise ข้อความสามารถใช้กับนิพจน์ try เพื่อปฏิบัติการบางอย่างหากมีข้อผิดพลาดเกิดขึ้น:

try "foo"+1 otherwise "There was an error"

เป็นรูปแบบที่กระชับมากขึ้นของ:

result = try "foo"+1,
if result[HasError] then "There was an error" else result[Value]