Обратная запись данных Power BI с помощью Power Apps и Power Automate

Power BI
Power Apps
Power Automate
Microsoft Power Platform

Это решение реализует приложение на основе холста Power Apps с помощью собственного визуального элемента Power Apps в Power BI. Power Automate обеспечивает фоновую автоматизацию для массовой обработки и обновления.

Архитектура

Схема, демонстрирующая архитектуру для обратной записи данных Power BI.

Скачайте файл Visio для этой архитектуры.

Поток данных

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

Развертывание

(Дополнительные сведения см. в разделе Разверните этот сценарий далее в этой статье.)

А. Разверните Dataverse и вспомогательное приложение на основе модели с соответствующими пользовательскими таблицами.

B. Импортируйте все внутренние таблицы и представления в набор данных Power BI (PBIX).

C. Инициируйте интеграцию между Power BI и Power Apps с помощью визуализации Power Apps в классическом приложении.

D. Используйте Power Apps для создания приложения на основе холста, чтобы обеспечить возможность взаимодействия и обновления всех необходимых данных.

Последовательность операций процесса

  1. собираются данные; Перекрестная фильтрация выбранной строки или набора данных путем выбора части визуализации в отчете Power BI. Это взаимодействие передает необходимые базовые данные из интерфейса отчета Power BI в внедренное приложение холста.
  2. Обновите данные или вставьте его в Dataverse с помощью пользовательского интерфейса приложения холста. Это можно сделать с помощью связанных элементов управления, таких как формы и коллекции, которые являются собственными для Power Apps и напрямую привязаны к внутренним данным. Кроме того, можно реализовать более настраиваемые функциональные возможности с помощью несвязанных элементов управления. Для этих элементов управления требуется дополнительный код Power Fx. В сценариях с одним обновлением можно закодировать приложение, чтобы напрямую зафиксировать данные в серверную часть с помощью функций SubmitForm, Patch и UpdateIf . В сценариях массового обновления можно установить коллекцию (виртуальную таблицу) с помощью функции Collect . Затем можно передать коллекцию для обработки всех обновлений данных одновременно. Пользовательский интерфейс Power App см. на снимках экрана приложения холста.
  3. Отправка обновлений в источник. Поток Power Automate обеспечивает фоновую автоматизацию в соответствии с сценарием. В сценариях с одним обновлением, в которых обновляется только одна строка из выбранной таблицы, простой поток выполняется для обновления набора данных PBIX. Это гарантирует, что обновленные данные отражаются в внутренней части Dataverse и на уровне отчетов. В сценариях массового обновления выполняется более сложный поток. Он использует коллекцию JSON вложенных объектов, передаваемых из коллекции Power Apps, описанной на предыдущем шаге. Затем поток выполняет итерацию по каждому вложенного объекта, по отдельности обновляя данные в Dataverse по мере необходимости. После завершения шага обновления поток обновляет PBIX. Если в отчете Power BI используется DirectQuery, автоматические шаги, связанные с обновлением PBIX, не требуются.
  4. Визуализировать обновления. Все данные обновляются и обновляются. Конечный пользователь обновляет окно браузера, чтобы увидеть обновление.

Компоненты

  • Dataverse. Серверное решение базы данных, которое можно использовать для хранения данных в высокобезопасной, настраиваемой, масштабируемой среде. Эта среда легко подключается к Dynamics 365, Azure, Visual Studio и Power Query. Dataverse обеспечивает эффективную обработку данных и общую модель данных с открытым исходным кодом, которая обеспечивает семантику согласованности.
  • Power BI. Коллекция программных служб, приложений и соединителей, которые работают вместе, чтобы превратить несвязанные источники данных в последовательные, визуально иммерсивные, интерактивные аналитические сведения.
    • Вы также можете реализовать обратную запись данных непосредственно в потоки данных Power Query.
  • Power Apps. Набор приложений, служб и соединителей, доступных на комплексной платформе данных. Эту службу можно использовать для быстрого создания приложений в соответствии с пользовательскими бизнес-потребностями. В этом решении Power Apps используется для обновления данных и вставки в интуитивно понятный пользовательский интерфейс. Он также работает в качестве триггера для автоматизации.
  • Power Automate. Служба, которую можно использовать для создания автоматизированных рабочих процессов между различными подключенными приложениями и внешними службами. Его можно настроить для передачи данных, отправки уведомлений, сбора артефактов и т. д. В этом решении Power Automate используется для массовой обработки обновленных данных и для обновления данных на уровне PBIX или Dataflow для отправки обновленных данных в отчет Power BI.

Альтернативные варианты

  • К альтернативам Dataverse относятся следующие решения:
  • Потоки данных Power Query можно использовать отдельно или вместе с наборами данных Power BI для этого решения в зависимости от масштаба и эффективности данных в вашей среде. Если в решении используются потоки данных, необходимо управлять расширением Power Automate, чтобы обновить каждый поток данных или набор данных соответствующим образом.
  • Вы можете создавать пользовательские приложения с помощью JavaScript, HTML, C#или других языков, которые могут быть внедрены в отчет Power BI для обновления выбранных данных. Однако эти приложения должны быть реализованы по-разному в уровне отчетов Power BI, так как для Power Apps нет собственной визуализации. Если вы реализуете масштабируемость для этих приложений, необходимо отслеживать его. Сведения о том, как лучше реализовать пользовательские компоненты в Power BI, см. в Центре разработчиков Power BI.
  • Вы также можете использовать визуальный элемент Power Automate для Power BI для сценариев обратной записи. Этот визуальный элемент оптимизирован для обработки больших наборов данных, а Power Apps обрабатывает делегирование. Визуальные элементы Power Automate и Power Apps можно использовать вместе для обеспечения масштабируемой эффективности. Если вы используете визуальный элемент Power Automate, обновление данных происходит в фоновом режиме без присутствия отображаемого пользовательского интерфейса.

Подробности сценария

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

Потенциальные варианты использования

Эта архитектура очень итеративна. Его можно использовать с несколькими разными внутренними хранилищами данных и адаптировать их к различным вариантам использования. К практической применению этой архитектуры относятся:

  • Встроенное редактирование. Решение можно использовать для данных, которые необходимо обновить на лету без подготовленного доступа к внутренней базе данных.
  • Рабочие процессы утверждения. Расширение возможностей Power BI с помощью Power Apps и Power Automate позволяет конечным пользователям собирать данные, которые требуют проверки непосредственно с панели мониторинга и отправки их последующим утверждающим.
  • Оповещения на основе данных. Это решение может обеспечить настройку автоматических уведомлений о конкретных аналитических сведениях путем отправки записей или передачи пакетов данных в поток Power Automate.

Пользовательский интерфейс Power App

На следующих снимках экрана показан процесс передачи данных из Power BI в базовую базу данных.

Это начальный экран для приложения холста:

Снимок экрана: начальный экран для приложения холста.

Снимок экрана: процесс для одного обновления:

Снимок экрана: процесс для одного обновления.

На этом снимка экрана показан процесс массового обновления:

Снимок экрана: процесс массового обновления.

Рекомендации

Эти рекомендации реализуют основные принципы платформы Azure Well-Architected Framework, набор руководящих принципов, которые можно использовать для улучшения качества рабочей нагрузки. Дополнительные сведения см. в статье Microsoft Azure Well-Architected Framework.

Масштабируемость

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

При рассмотрении масштабируемости необходимо обратиться к делегированию . Делегирование — это концепция, уникальная для Приложений Power Apps (приложений на основе холста), которая ограничивает область обработки данных в облаке во время выполнения логики приложения. Приложения холста, реализованные в этом решении, должны быть подготовлены правильно для обработки больших наборов данных, использующих циклы или сложные инструкции фильтра, чтобы гарантировать, что все данные рассматриваются при запуске обновления в серверной базе данных, а затем набор данных Power BI. Вы можете использовать Power Automate в этом сценарии для повышения эффективности при обработке крупномасштабных массовых обновлений более 2000 строк.

Availability

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

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

Сведения о соглашениях об уровне обслуживания см. в соглашениях об уровне обслуживания.

Безопасность

Безопасность обеспечивает гарантии от преднамеренного нападения и злоупотребления ценными данными и системами. Дополнительные сведения см. в контрольном списке конструктора длябезопасности.

Безопасность на уровне строк (RLS) — лучший способ ограничить доступ к данным отдельным пользователям или группам в Power BI. Модели RLS сохраняются в этом решении. Если разрешения пользователя в Power BI настроены для просмотра только подмножества общей модели данных, то только это подмножество можно передать на уровень Power Apps. Однако необходимо настроить уровень Power Apps, чтобы конечные пользователи могли получать доступ только к определенным данным.

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

Оптимизация затрат

Оптимизация затрат заключается в поиске способов уменьшения ненужных расходов и повышения эффективности работы. Дополнительные сведения см. в разделе Обзор критерия "Оптимизация затрат".

Power Apps и Power Automate — это программное обеспечение как услуга (SaaS), которые имеют гибкие модели ценообразования. Вы можете лицензировать Power Apps с помощью планов по каждому приложению или на пользователя, которые соответствуют вашим бизнес-потребностям. Аналогичным образом вы можете лицензировать Power Automate с планами для каждого пользователя или на поток (единая автоматизация).

Доступны несколько версий Power BI . Выбор зависит от объема приема данных. Для Power BI Pro доступен только план для каждого пользователя. Power BI Premium предоставляет планы на пользователя и на емкость.

Развертывание этого сценария

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

Чтобы развернуть это решение, выполните следующие действия.

  1. Создайте PBIX-файл в Power BI Desktop в качестве базового компонента слоя отчетов. Импортируйте все необходимые данные из Dataverse или любой серверной части, которую вы используете.
  2. Добавьте визуальный элемент Power Apps для Power BI непосредственно на панели визуализации . Создание приложения непосредственно из визуального элемента Power Apps для Power BI — единственный способ реализации интеграции между Power BI и Power Apps.
  3. После реализации интеграции необходимо разработать, разработать, разработать и закодировать приложение холста для выполнения бизнес-процессов, которые необходимо упростить.
  4. Если требуется массовая обработка, разработчику необходимо создать поток Power Automate для обработки потребления данных из Power Apps и его распространения в Dataverse. Этот поток можно настроить для предоставления уведомлений или рабочих процессов утверждения, которые необходимо включить в автоматизацию.
  5. После завершения работы приложения необходимо включить его в отчет Power BI. Это можно сделать непосредственно на экране отчета Power BI или настроив страницу детализации.

Соавторы

Эта статья поддерживается корпорацией Майкрософт. Первоначально он был написан следующими участниками.

Основные авторы:

Другой участник:

Чтобы просмотреть недоступные профили LinkedIn, войдите в LinkedIn.

Следующие шаги

Документация по продукту:

Модули обучения Microsoft Learn: