Изоляция проблем в приложениях на основе холста

Приложения на основе холста позволяют создавать приложения с различными визуальными элементами и различными подключениями к данным. Используйте IntelliSense и средство проверки приложений в качестве защиты от распространенных проблем. Монитор и панель Переменные могут помочь в отладке.

Ниже приведены некоторые другие методы для изоляции проблем в приложении на основе холста.

Проверка формул с помощью меток отладки

Формулы могут быть сложными. Когда все пойдет не так, может быть трудно определить, какая часть не удалась. Метки отладки — это полезный способ просмотра результатов различных частей формулы.

Метка отладки — это label со свойством Text , задается интересующая формула. Это позволяет точно увидеть, как Power Apps обрабатывает эти формулы. Чтобы избежать ошибок области, вставьте метку отладки за пределами других элементов управления, таких как Коллекция и Форма.

Представьте, что в элементе управления Поле со списком отображается меньше ожидаемого значения, а параметры раскрывающегося списка пусты.

Развернутое поле со списком с пустым пробелом, где в раскрывающемся списке должны находиться параметры.

Проверьте, правильно ли настроено поле со списком . Например, для свойства Items задана сложная формула ниже:

AddColumns(
  GroupBy(
    Filter( Products, Rating > 4 ),
    "ProductType",
    "Details"
  ),
  "Total quantity",
  Sum( Details, Quantity )
)

Начните с самого внутреннего выражения Filter( Products, Rating > 4 ). Вставьте метку отладки и задайте ее свойство Text , чтобы проверить результат этого выражения. Некоторые полезные сведения для проверки:

  • Проверьте, соответствует ли количество результатов ожидаемому: CountRows( Filter( Products, Rating > 4 ) )
  • Проверьте первый результат и убедитесь, что фильтр работает должным образом: "Rating of first result is " & First( Filter( Products, Rating > 4 ) ).Rating
  • Проверьте результаты, объединяя их имена: Concat( Filter( Products, Rating > 4 ), ProductName & ", ")

Совет

При работе с наборами данных таблицы отладки полезны для предварительного просмотра записей. Эта концепция аналогична меткам отладки. Вставьте таблицу Данных со свойством Items , задается интересующий набор данных.

Для повышения производительности с наборами данных может потребоваться использовать функции FirstN и LastN .

Убедившись, что выражение вычисляется правильно, можно перейти к следующему внешнему выражению GroupBy( Filter( Products, Rating > 4 ), "ProductType", "Details" ). Методично пройдя, можно узнать, какая часть сложного выражения не работает.

При использовании пустых раскрывающихся параметров начните со свойства DisplayFields . Представьте, что для него задано значение [ProductType]. Используйте метку отладки, чтобы убедиться, что это поле распознано Power Apps и содержит текст. Так как все параметры раскрывающегося списка пусты, достаточно изучить любую запись. Давайте выберем первую запись и посмотрим, каково ее ProductType поле. Задайте для метки отладки следующие значения:

First(
  AddColumns(
    GroupBy(
      Filter( Products, Rating > 4 ),
      "ProductType",
      "Details"
    ),
    "Total quantity",
    Sum( Details, Quantity )
  )
).ProductType

Если результат пуст, он может быть следующим:

  • Поле ProductType для этой записи действительно пустое. Если набор данных поступает извне приложения, проверка его за пределами Power Apps.
  • Одно или несколько выражений не работают. Разбейте его, как описано выше, чтобы сузить его. Это может быть ошибка Power Apps или ошибка при написании формулы.
  • Данные не поступают в Power Apps. Это может быть проблема с сетью, проблема с источником данных или ошибка Power Apps.

Если результат содержит текст, скорее всего, это ошибка Power Apps с элементом управления . Вы можете сообщить об ошибке с помощью запроса на поддержку и использовать другой элемент управления в качестве обходного решения.

Попробуйте другой элемент управления

Чтобы узнать, связана ли проблема с определенным элементом управления, попробуйте использовать другой элемент управления с одинаковым типом входных или выходных данных.

Boolean

Выбор и таблица

Date и DateTime

Изображение и мультимедиа

Номер

Текст

Все типы

  • Метка после преобразования значения в текст

Если та же проблема возникает в другом элементе управления, проблема связана с используемыми формулами или источником данных. Выполните описанные выше действия по отладке, чтобы изолировать проблему.

Если проблема возникает только с определенным типом элемента управления, скорее всего, это ошибка элемента управления. Вы можете сообщить об ошибке в корпорацию Майкрософт.

Попробуйте другую структуру приложения

Формулы могут работать по-разному для элементов управления внутри другого элемента управления. Например, элементы управления внутри коллекции могут использовать ThisItem , а элементы управления за пределами коллекции — нет. Элементы управления за пределами коллекции или компонента не могут ссылаться на элементы управления внутри.

Такая разная видимость идентификаторов называется область. Элементы управления, содержащие другие элементы управления, представляют новую область.

Если формула не работает внутри автономного элемента управления, она может быть связана с определением области. Попробуйте использовать ту же формулу за пределами контейнера.

Например, в элементе управления Label в коллекции должно отображаться имя каждой записи, но текст не отображается. Параметр Label.Text имеет значение ThisItem.Name. Gallery.Items имеет значение Products.

В коллекции вместо текста отображается пустое пространство. На панели свойств отображаются формулы, используемые для меток в коллекции.

Чтобы проверка, если это проблема, вставьте метку отладки за пределы коллекции на верхнем уровне приложения. Задайте свойство Text , чтобы отобразить имя первой записи набора данных: First(Products).Name.

Метка отладки должна иметь тот же результат, что и первая строка коллекции. Если нет, скорее всего, это ошибка области в Power Apps, о которую можно сообщить с помощью запроса в службу поддержки. С другой стороны, если они пустые, проблема может быть связана с источником данных.

Некоторые возможные обходные пути для уточняющие проблемы:

Восстановление до более ранней версии

Если вы не внесли существенных изменений в приложение и оно вдруг перестало работать после повторной публикации, попробуйте восстановить его до предыдущей версии. Если он работает снова, проверьте внесенные изменения, чтобы узнать, что могло привести к сломанной работе приложения.

Иногда ошибки могут возникать в новых версиях Power Apps. И наоборот, новые версии могут привести к исправлению ошибок. служба поддержки Майкрософт можно порекомендовать, следует ли отменить изменения на более старую версию разработки или обновить ее до более новой. Помните, что если вы изменяете версию разработки самостоятельно, поддержка нерекомендовых версий ограничена.

Создание приложения для минимального воспроизведения

Процесс создания приложения минимального воспроизведения может выявить ошибки конфигурации приложения, которые не очевидны в сложном приложении. Даже если проблема не устранена, вы бы сузили причину и облегчили бы объяснение проблемы другим.

Дальнейшие действия

Отладка приложений на основе холста с помощью монитора

См. также

Общие стратегии отладки Power Apps