Partilhar via


Processamento de erros

O Power Fx inclui uma funcionalidade de pré-visualização que permite o processamento de erros ao nível da fórmula. Por predefinição, esta caraterística está ativada em Definições.

Captura de ecrã de Próximas caraterísticas em Definições a mostrar a Gestão de erros ao nível da fórmula definido como Ativado.

Esta definição fornece acesso a fórmulas como IfError, IsError, Error e IsBlankorError. Estas funções permitem-lhe detetar erros, fornecer valores alternativos ou tomar medidas específicas com base no erro.

Processamento de erros de validação

Estas funções ajudam a validar entradas como formatos incorretos ou campos obrigatórios. Utilize instruções If ou funções como IsBlank e IsError para validar a entrada de utilizador. Forneça mensagens de erro claras e impeça processamento adicional até que a entrada seja corrigida.

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

Processamento de erros de função de patch

Semelhante ao exemplo anterior, as funções Error ajudam a capturar erros enquanto aplica patches aos dados de uma origem de dados. A função Patch reporta erros de duas maneiras.

Pode devolver um valor de erro como resultado das operações.

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

Pode detetar erros com IsError e substituir ou suprimi-los com 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)
)

Processamento de erros de formulários

Quando usa Formulários para submeter dados com a função SubmitForm, use a propriedade de controlo de Formulário OnFailure para notificar os utilizadores de mensagens de erro.

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

Mensagem de erro personalizada com a propriedade OnError

A propriedade OnError do Power Apps permite-lhe capturar todos os erros não processados na sua aplicação. A propriedade OnError dá-lhe a capacidade de executar uma expressão que é executada sempre que um erro não é processado pela aplicação (como armazená-lo numa variável ou usar uma função como IfError para substituí-lo por algum outro valor). Para utilizar aOnError propriedade, tem de adicioná-la à aplicação à qual pretende aplicá-la. Em seguida, pode especificar a mensagem de erro que pretende apresentar ao escrever uma fórmula na caixa da propriedade OnError.

É importante notar que App.OnError não pode substituir o erro da mesma forma que IfError pode. No ponto que App.OnError é executado, o erro já aconteceu e o resultado propagou-se por outras fórmulas. O App.OnError controla apenas como o erro é reportado ao utilizador final e fornece um hook para o criador registar o erro, se desejado.

Este código em App.OnError pode ajudar a localizar a origem do erro:

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

Processamento de erros do Power Fx

Próximo passo