다음을 통해 공유


오류 처리

Power Fx에는 수식 수준 오류를 처리할 수 있는 프리뷰 기능이 포함되어 있습니다. 기본적으로 이 기능은 설정에서 켜져 있습니다.

켜기로 설정된 수식 수준 오류 관리를 보여주는 설정의 예정된 기능 스크린샷.

이 설정은 IfError, IsError, ErrorIsBlankorError와 같은 수식에 대한 액세스를 제공합니다. 이러한 함수를 사용하면 오류를 감지하거나, 대체 값을 제공하거나, 오류에 따라 특정 작업을 수행할 수 있습니다.

유효성 검사 오류 처리

이러한 함수는 잘못된 형식 또는 필수 필드와 같은 입력의 유효성을 검사하는 데 도움이 됩니다. If 문이나 IsBlankIsError와 같은 함수를 사용하여 사용자 입력의 유효성을 검사합니다. 명확한 오류 메시지를 제공하고 입력이 수정될 때까지 추가 처리를 방지합니다.

If( IsBlank(TextInput.Text),
    Notify("Field cannot be blank", 
    NotificationType.Error),
    // Continue with processing
)

Patch 함수 오류 처리

이전 예제와 마찬가지로 Error 함수는 데이터를 데이터 원본에 패치하는 동안 오류를 포착하는 데 도움이 됩니다. 이 Patch 함수는 두 가지 방법으로 오류를 보고합니다.

작업 결과로 오류 값을 반환할 수 있습니다.

UpdateContext(
    {   
    result : Patch(
             Feeds,
             Defaults(Feeds),
             {
                 createdon: Now(),
                 crde8_content: TextInput1_1.Text
                 cr9ce_imageurl: filename
             }
        )
    }
)

IsError를 사용하여 오류를 감지하고 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)
)

양식 오류 처리

SubmitForm 함수를 사용하여 Forms에서 데이터를 제출하는 경우, Form 컨트롤 속성 OnFailure를 사용하여 사용자에게 오류 메시지를 알립니다.

// 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);

OnError 속성이 포함된 사용자 지정 오류 메시지

이 Power Apps OnError 속성을 사용하면 앱에서 처리되지 않은 모든 오류를 캡처할 수 있습니다. OnError 속성을 사용하면 앱에서 오류를 처리하지 못할 때마다 실행되는 식을 실행할 수 있습니다(예: 변수에 저장하거나 IfError와 같은 함수를 사용하여 오류를 다른 값으로 대체). OnError 속성을 사용하려면 해당 속성을 적용하려는 앱에 추가해야 합니다. 그런 다음 OnError 속성 상자에 수식을 작성하여 표시할 오류 메시지를 지정할 수 있습니다.

App.OnErrorIfError와 같은 방식으로 오류를 바꿀 수 없다는 점에 유의해야 합니다. App.OnError가 실행되는 시점에서는 오류가 이미 발생했으며, 그 결과는 다른 수식을 통해 전파되었습니다.  App.OnError는 오류가 최종 사용자에게 보고되는 방식만 제어하고, 원하는 경우 제작자가 오류를 기록할 수 있는 후크를 제공합니다.

App.OnError의 이 코드는 오류의 원인을 찾는 데 도움이 될 수 있습니다.

Notify(
    Concatenate(
        FirstError.Message,
        ", Observed: ",
        FirstError.Observed,
        ", Source: ",
        FirstError.Source
    ),
    NotificationType.Error
)

Power Fx 오류 처리

다음 단계: