Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Power Query M formül dilindeki bir hata , ifadeyi değerlendirme işleminin bir değer üretemediğinin göstergesidir. Hatalar, hata koşullarıyla karşılaşan işleçler ve işlevler tarafından veya hata ifadesi kullanılarak oluşturulur. Hatalar try ifadesi kullanılarak işlenir. Bir hata oluştuğunda, hatanın neden oluştuğunun belirtilmesi için kullanılabilecek bir değer belirtilir.
Try ifadesi
Try ifadesi, değerleri ve hataları, deneme ifadesinin bir hatayı işleyip işlemediğini ve hatayı işlerken ayıklanan doğru değeri veya hata kaydını gösteren bir kayıt değerine dönüştürür. Örneğin, bir hata oluşturan ve ardından hemen ele alan aşağıdaki ifadeyi göz önünde bulundurun:
try error "negative unit count"
Bu ifade, önceki birim fiyatı örneğinde ve [Message] alan aramalarını açıklayarak [HasError], [Error]aşağıdaki iç içe kayıt değerini değerlendirir.
Hata kaydı
[
HasError = true,
Error =
[
Reason = "Expression.Error",
Message = "negative unit count",
Detail = null
]
]
Yaygın bir durum, hataları varsayılan değerlerle değiştirmektir. Try ifadesi, yalnızca küçük bir biçimde elde etmek için isteğe bağlı bir aksi yan tümcesiyle kullanılabilir:
try error "negative unit count" otherwise 42
// equals 42
Hata örneği
let Sales =
[
ProductName = "Fishing rod",
Revenue = 2000,
Units = 1000,
UnitPrice = if Units = 0 then error "No Units"
else Revenue / Units
],
//Get UnitPrice from Sales record
textUnitPrice = try Number.ToText(Sales[UnitPrice]),
Label = "Unit Price: " &
(if textUnitPrice[HasError] then textUnitPrice[Error][Message]
//Continue expression flow
else textUnitPrice[Value])
in
Label
Önceki örnek alana erişir Sales[UnitPrice] ve sonucu oluşturan değeri biçimlendirir:
"Unit Price: 2"
Birimler alanı sıfır olsaydı, UnitPrice alan deneme tarafından işlenen bir hataya neden olurdu. Sonuçta elde edilen değer şu şekilde olacaktır:
"No Units"