영어로 읽기

다음을 통해 공유


Errors

파워 쿼리 M 수식 언어의 오류는 식을 평가하는 프로세스에서 값을 생성할 수 없다는 표시입니다. 오류는 오류 조건이 발생하거나 오류 식을 사용하여 연산자와 함수에 의해 발생합니다. try 식을 사용하여 오류가 처리됩니다. 오류가 발생하면 오류가 발생한 이유를 나타내는 데 사용할 수 있는 값이 지정됩니다.

식 사용해 보기

try 식은 값과 오류를 try 식이 오류를 처리했는지 여부와 오류를 처리할 때 추출한 적절한 값 또는 오류 레코드를 나타내는 레코드 값으로 변환합니다. 예를 들어 오류를 발생시킨 다음 바로 처리하는 다음 식을 고려해 보세요.

try error "negative unit count"

이 식은 다음 중첩된 레코드 값으로 평가되며 [HasError], [Error], 이전 단가 예제의 필드 조회 및 [Message] 필드 조회를 설명합니다.

오류 레코드

[
    HasError = true,
    Error =
        [  
            Reason = "Expression.Error",
            Message = "negative unit count",
            Detail = null
        ]
]

일반적인 경우는 오류를 기본값으로 바꾸는 것입니다. try 식은 선택적 그렇지 않으면 절과 함께 사용하여 압축된 형식으로 구현할 수 있습니다.

try error "negative unit count" otherwise 42
// equals 42

오류 예제

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

이전 예제에서는 Sales[UnitPrice] 필드에 액세스하고 결과를 생성하는 값의 서식을 지정합니다.

"Unit Price: 2"

단위 필드가 0 UnitPrice 이면 이 필드에 오류가 발생했으며 이는 시도에서 처리되었을 것입니다. 그러면 결과 값은 다음과 같습니다.

"No Units"