Écriture différée de données Power BI avec Power Apps et Power Automate

Power BI
Power Apps
Power Automate
Microsoft Power Platform

Cette solution implémente une application canevas Power Apps via le visuel Power Apps natif dans Power BI. Power Automate fournit une automatisation en arrière-plan pour le traitement en bloc et l’actualisation.

Architecture

Diagramme montrant une architecture pour l’écriture différée des données Power BI.

Téléchargez un fichier Visio de cette architecture.

Dataflow

Les composants principaux de cette solution comprennent la possibilité de transmettre des données préfiltrées de Power BI à un entonnoir Power Apps et/ou Power Automate pour toute mise à jour dans un back end de support. Il est important d’actualiser le jeu de données (ou flux de données) Power BI pour vous assurer que les mises à jour sont visibles par tous les utilisateurs.

Déploiement

(Pour plus d’informations, consultez Déployer ce scénario plus loin dans cet article.)

R. Déployez Dataverse et une application basée sur des modèles de prise en charge avec des tables personnalisées pertinentes.

B. Importez toutes les tables et vues principales dans un jeu de données Power BI (PBIX).

C. Lancez l’intégration entre Power BI et Power Apps via la visualisation Power Apps dans l’application de bureau.

D. Utilisez Power Apps pour créer une application canevas permettant d’interagir avec toutes les données nécessaires et de les mettre à jour.

Flux de processus

  1. Collecter des données. Filtrez une ligne ou un ensemble de données en sélectionnant une partie d’une visualisation dans un rapport Power BI. Cette interaction transmet les données sous-jacentes nécessaires de l’interface de rapport Power BI à l’application canevas incorporée.
  2. Mettez à jour les données ou insérez-les dans Dataverse à l’aide de l’interface utilisateur de l’application canevas. Pour ce faire, vous pouvez utiliser des contrôles liés tels que des formulaires et des galeries qui sont natifs de Power Apps et qui sont directement liés aux données principales. Vous pouvez également implémenter des fonctionnalités plus personnalisées à l’aide de contrôles indépendants. Ces contrôles nécessitent un code Power Fx supplémentaire. Pour les scénarios de mise à jour unique, vous pouvez coder l’application pour valider directement les données sur le back end via les fonctions SubmitForm, Patch et UpdateIf. Pour les scénarios de mise à jour en bloc, vous pouvez établir une collection (une table virtuelle) à l’aide de la fonction Collect. Vous pouvez ensuite transmettre la collection pour traiter toutes les mises à jour de données à la fois. Consultez l’interface utilisateur de Power App pour obtenir des captures d’écran de l’application canevas.
  3. Envoyez (push) les mises à jour à la source. Un flux Power Automate fournit une automatisation en arrière-plan requise par le scénario. Pour les scénarios de mise à jour unique où une seule ligne de la table sélectionnée est mise à jour, un flux simple s’exécute pour actualiser le jeu de données PBIX. Cela garantit que les données mises à jour sont reflétées dans le back end Dataverse et dans la couche de création de rapports. Pour les scénarios de mise à jour en bloc, un flux plus complexe s’exécute. Il consomme une collection JSON d’objets imbriqués transmis à partir de la collection Power Apps décrite à l’étape précédente. Le flux effectue ensuite une itération dans chaque objet imbriqué, mettant à jour individuellement les données dans Dataverse en fonction des besoins. Une fois l’étape de mise à jour terminée, le flux actualise le PBIX. Si le rapport Power BI utilise DirectQuery, les étapes automatisées associées à l’actualisation du PBIX ne sont pas nécessaires.
  4. Visualisez les mises à jour. Toutes les données sont mises à jour et actualisées. L’utilisateur final actualise la fenêtre du navigateur pour voir la mise à jour.

Composants

  • Dataverse. Solution de base de données principale que vous pouvez utiliser pour stocker des données dans un environnement hautement sécurisé, personnalisable et évolutif. Cet environnement se connecte en toute transparence à Dynamics 365, Azure, Visual Studio et Power Query. Dataverse fournit un traitement efficace des données et un modèle de données partagé open source qui fournit une cohérence sémantique.
  • Power BI. Ensemble de services logiciels, d’applications et de connecteurs qui œuvrent ensemble pour transformer des sources de données disparates en insights cohérents, visuellement immersifs et interactifs.
  • Power Apps. Suite d’applications, de services et de connecteurs, tous disponibles sur une plateforme de données complète. Vous pouvez utiliser ce service pour créer rapidement des applications pour répondre aux besoins métier personnalisés. Dans cette solution, Power Apps est utilisé pour les mises à jour et les insertions de données dans une interface utilisateur intuitive. Il fonctionne également comme déclencheur pour l’automatisation.
  • Power Automate. Service que vous pouvez utiliser pour créer des flux de travail automatisés entre diverses applications connectées et services externes. Vous pouvez le configurer pour transférer des données, envoyer des notifications, collecter des artefacts, etc. Dans cette solution, Power Automate est utilisé pour le traitement en bloc des données mises à jour et pour l’actualisation des données dans la couche PBIX et/ou Dataflow pour renvoyer les données mises à jour dans un rapport Power BI.

Autres solutions

  • Les solutions alternatives à Dataverse sont les suivantes :
  • Vous pouvez utiliser les flux de données Power Query séparément ou conjointement avec les jeux de données Power BI pour cette solution, en fonction de l’échelle et de l’efficacité des données dans votre environnement. Si vous utilisez des flux de données dans votre solution, vous devez gérer votre extension Power Automate pour actualiser chaque flux de données ou jeu de données en conséquence.
  • Vous pouvez créer des applications personnalisées à l’aide de JavaScript, HTML, C# ou d’autres langages qui peuvent être incorporés dans un rapport Power BI pour mettre à jour les données sélectionnées. Toutefois, ces applications doivent être implémentées différemment dans la couche de rapport Power BI, car il n’y a pas de visualisation native comme c’est le cas pour Power Apps. Si vous implémentez la scalabilité pour ces applications, vous devez la surveiller. Pour plus d’informations sur l’implémentation optimale des composants personnalisés dans Power BI, consultez le Centre développeurs Power BI.
  • Vous pouvez également utiliser le visuel Power Automate pour Power BI pour les scénarios d’écriture différée. Ce visuel est optimisé pour gérer de grands jeux de données et Power Apps gère la délégation. Vous pouvez utiliser les visuels Power Automate et Power Apps ensemble pour fournir une efficacité évolutive. Si vous utilisez le visuel Power Automate, la mise à jour des données se produit en arrière-plan sans la présence d’une interface utilisateur affichée.

Détails du scénario

Cette solution pour la fonctionnalité d’écriture différée de données dans Power BI offre un moyen interactif et efficace de modifier les données directement à partir de Power BI. Power BI ne dispose pas actuellement d’une solution native que vous pouvez utiliser pour les mises à jour intralignes ou en bloc de données pendant que vous interagissez avec un rapport ou un tableau de bord. Pour envoyer (push) des modifications aux données, vous devez effectuer des mises à jour directement dans vos magasins de données, puis, si vous n’utilisez pas DirectQuery, actualiser un jeu de données pour terminer le flux de processus. Ce processus peut être inefficace et peut poser des problèmes pour les utilisateurs qui n’ont pas accès à un back end spécifique ou aux données sous-jacentes.

Cas d’usage potentiels

Cette architecture est très itérative. Vous pouvez l’utiliser avec plusieurs magasins de données principaux différents et l’adapter à différents cas d’usage. Utilisations pratiques de cette architecture :

  • Modification intraligne. La solution peut être utilisée pour les données qui doivent être mises à jour à la volée sans accès provisionné à une base de données principale.
  • Workflows d’approbation. L’extension des fonctionnalités de Power BI avec Power Apps et Power Automate permet aux utilisateurs finaux de collecter des données qui nécessitent une révision directement à partir d’un tableau de bord et de les envoyer aux approbateurs suivants.
  • Alertes pilotées par les données. La solution peut fournir une personnalisation des notifications automatisées sur des insights spécifiques via la soumission d’enregistrements ou le passage de paquets de données dans un flux de Power Automate.

Interface utilisateur Power App

Les captures d’écran suivantes illustrent le processus de transmission des données de Power BI à la base de données sous-jacente.

Il s’agit de l’écran d’accueil de l’application canevas :

Capture d’écran montrant l’écran d’accueil de l’application canevas.

Cette capture d’écran montre le processus d’une seule mise à jour :

Capture d’écran montrant le processus d’une seule mise à jour.

Cette capture d’écran montre le processus d’une mise à jour en bloc :

Capture d’écran montrant le processus d’une mise à jour en bloc.

Considérations

Ces considérations implémentent les piliers d’Azure Well-Architected Framework, un ensemble de principes directeurs que vous pouvez utiliser pour améliorer la qualité d’une charge de travail. Pour plus d’informations, consultez Microsoft Azure Well-Architected Framework.

Extensibilité

Pour établir correctement l’intégration entre Power BI et l’application canevas pour la prise en charge de l’écriture différée, vous devez la configurer en créant l’application canevas directement à partir de la visualisation Power Apps sur le rapport Power BI. Si cette intégration n’est pas configurée correctement, il n’existe aucun moyen de transmettre des données filtrées de la couche de rapport Power BI à l’interface utilisateur Power Apps.

Vous devez tenir compte de la délégation lorsque vous envisagez la scalabilité. La délégation est un concept propre à Power Apps (applications canevas) qui limite l’étendue du traitement des données via le cloud pendant l’exécution de la logique d’une application. Les applications canevas implémentées dans cette solution doivent être configurées correctement pour gérer de grands ensembles de données qui utilisent des boucles ou des instructions de filtrage complexes afin de garantir que toutes les données sont couvertes lorsque vous exécutez une mise à jour de la base de données principale, puis du jeu de données Power BI. Vous pouvez utiliser Power Automate dans ce scénario pour augmenter l’efficacité lorsque vous gérez des mises à jour en bloc à grande échelle de plus de 2 000 lignes.

Disponibilité

Tous les composants décrits dans cette architecture sont des services managés qui sont automatiquement mis à l’échelle en fonction de la disponibilité régionale. Actuellement, Power Apps est disponible dans six régions principales et 42 langues. Pour plus d’informations, voir la disponibilité des services.

Dataverse est conçu pour répondre aux besoins de scalabilité au niveau de l’entreprise en utilisant des limites de protection des services pour atténuer les comportements malveillants susceptibles de perturber le service.

Pour plus d’informations sur les contrats SLA, consultez les contrats de niveau de service.

Sécurité

La sécurité au niveau des lignes (RLS) est la meilleure façon de restreindre l’accès aux données pour des utilisateurs ou des groupes individuels dans Power BI. Les modèles RLS persistent dans cette solution. Si les autorisations d’un utilisateur dans Power BI sont définies pour afficher uniquement un sous-ensemble du modèle de données global, seul ce sous-ensemble peut être passé à la couche Power Apps. Toutefois, vous devez configurer la couche Power Apps afin que les utilisateurs finaux puissent accéder uniquement à certaines données.

Vous configurez la sécurité des données pour Power Apps à l’aide de la sécurité basée sur les rôles dans le back end Dataverse. Vous pouvez appliquer des rôles à des équipes, des groupes ou des utilisateurs individuels afin de spécifier les enregistrements qui peuvent être manipulés dans cette solution. Cette fonctionnalité vous permet d’utiliser une application canevas unique pour les utilisateurs disposant de différents niveaux d’accès au back end. Pour garantir la cohérence entre la solution, assurez-vous que les configurations de sécurité basées sur les rôles correspondent aux autorisations décrites dans le modèle de sécurité au niveau des lignes Power BI pour chaque équipe, groupe ou utilisateur.

Pour plus d’informations sur l’implémentation d’une infrastructure bien conçue, consultez le pilier de sécurité Microsoft.

Optimisation des coûts

L’optimisation des coûts consiste à examiner les moyens de réduire les dépenses inutiles et d’améliorer l’efficacité opérationnelle. Pour plus d’informations, consultez Vue d’ensemble du pilier d’optimisation des coûts.

Power Apps et Power Automate sont des applications SaaS (Software as a Service) qui ont des modèles tarifaires flexibles. Vous pouvez obtenir une licence pour Power Apps avec des plans par application ou par utilisateur qui correspondent aux besoins de votre entreprise. De même, vous pouvez obtenir une licence pour Power Automate avec des plans par utilisateur ou par flux (automatisation unique).

Plusieurs versions de Power BI sont disponibles. Votre choix dépend du volume de données ingérées. Pour Power BI Pro, seul un plan par utilisateur est disponible. Power BI Premium fournit des plans par utilisateur et par capacité.

Déployer ce scénario

Vous devez disposer des licences Power Platform appropriées pour exécuter cette solution en production. Les administrateurs ou les personnalisateurs de la solution ont également besoin des rôles de sécurité appropriés pour permettre l’accès aux Power Apps et aux Power Automate. Si vous n’avez pas encore accès à ces licences ou rôles, vous pouvez utiliser le plan Power Apps Developer pour démarrer le développement en attendant.

Pour déployer cette solution :

  1. créez un fichier PBIX dans Power BI Desktop en tant que composant de base de votre couche de création de rapports ; importez toutes les données nécessaires à partir de Dataverse ou selon le back end que vous utilisez ;
  2. ajoutez le visuel Power Apps pour Power BI directement à partir du volet Visualisation. La création d’une application directement à partir du visuel Power Apps pour Power BI est la seule façon d’implémenter l’intégration entre Power BI et Power Apps.
  3. Après avoir implémenté l’intégration, vous devez développer, concevoir et coder l’application canevas pour effectuer les processus métier que vous souhaitez simplifier.
  4. Si le traitement en bloc est nécessaire, un développeur doit créer un flux de Power Automate pour gérer la consommation des données de Power Apps et leur propagation vers Dataverse. Vous pouvez configurer ce flux pour fournir les notifications ou les flux de travail d’approbation que vous souhaitez incorporer dans l’automatisation.
  5. Une fois l’application terminée, vous devez l’incorporer dans le rapport Power BI. Vous pouvez le faire directement dans l’écran de rapport Power BI ou en configurant une page d’extraction.

Contributeurs

Cet article est géré par Microsoft. Il a été écrit à l’origine par les contributeurs suivants.

Principaux auteurs :

Autre contributeur :

Pour afficher les profils LinkedIn non publics, connectez-vous à LinkedIn.

Étapes suivantes

Documentation du produit :

Modules de formation Microsoft Learn :