Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Power Fx поддерживает обработку ошибок на уровне формул. Эта функция включена по умолчанию для всех новых приложений. Однако в некоторых старых приложениях это может быть отключено в параметрах. Мы рекомендуем включить эту функцию.
Чтобы проверить, включена ли эта функция, выполните указанные ниже действия.
- Откройте приложение canvas для редактирования.
- Перейдите на вкладку Настройки>Обновления>Архив.
- Убедитесь, что отключение управления на уровне формул отключено.
Если этот параметр включен, можно использовать такие формулы, как IfError, IsErrorи ErrorIsBlankorError. Эти функции помогают обнаруживать ошибки, предоставлять альтернативные значения или выполнять определенные действия на основе ошибки. При включении этого параметра можно записывать нулевые или пустые значения в источники данных. При отключении этой функции ошибки возвращаются в виде пустых значений.
Обработка ошибок проверки
Эти функции помогают проверять входные данные, такие как неправильные форматы или обязательные поля. Используйте операторы If или функции, такие как IsBlank и IsError для проверки данных, введенных пользователем. Предоставляйте четкие сообщения об ошибках и предотвращайте дальнейшую обработку до тех пор, пока входные данные не будут исправлены.
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 функции используйте свойство OnFailure элемента управления Form для уведомления пользователей об ошибках.
// 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.OnError не может заменить ошибку так, как это делает IfError. На момент выполнения App.OnError ошибка уже произошла, и результат уже прошел через другие формулы.
App.OnError определяет, как сообщается пользователю об ошибке. Он также позволяет создателю регистрировать ошибку, если они хотят.
Этот код в App.OnError может помочь найти источник ошибки:
Notify(
Concatenate(
FirstError.Message,
", Observed: ",
FirstError.Observed,
", Source: ",
FirstError.Source
),
NotificationType.Error
)