Afin de comprendre la manière dont l’application Power Apps traite les données, vous pouvez vous référer à notre précédent post « Un tour d’horizon de Microsoft Power Platform« , nous vous conseillons d’en prendre connaissance avant d’aborder l’article qui va suivre.

Dans l’article qui suit, nous allons aborder 3 sujets. Dans un premier temps nous rentrerons plus en détail sur la source privilégiée de données de Power Apps « Common Data Service ». Nous vous expliquerons ensuite comment configurer une petite application. Enfin, nous reviendrons également sur les limites de l’outil afin que vous puissiez déterminer quand le mettre en place.
Pour rappel, ce post n’a pas pour but d’être un tutoriel d’utilisation de Power Apps. Nous souhaitons vous montrer l’étendue des possibilités qu’offre cette solution. Si vous comptez en apprendre davantage, vous pourrez retrouver des tutoriels sur Microsoft Learn.

Qu’est-ce que le Common Data Service (CDS)

Le Common Data Service est basé sur le Common Data Model. Pour résumer rapidement, il consiste à avoir un service de données unique, standardisé et simple d’accès.

Microsoft utilise déjà le Common Data Service dans un certain nombre de produit en plus de Power Platform, comme par exemple Dynamics 365. Le principal intérêt de CDS provient de la standardisation, c’est-à-dire que les entités telle que les utilisateurs, les tâches, une promotion, une commande etc. seront prédéfinies.

Les données sont au cœur des stratégies d’entreprise et sont devenues une source de revenus indispensable. Le principal problème rencontré est la mauvaise structure que l’on peut donner à ces dernières. C’est un critère important que Microsoft tente de résoudre via CDS: standardiser un maximum de choses. Lorsque l’on parle d’une « commande » dans l’application A, on doit pouvoir parler de la même chose dans l’application B en ayant la même structure. Il devient alors bien plus simple de communiquer entre les applications.

Dans Power Apps, nous pouvons créer nos propres entités, modifier certaines des entités préexistantes et manipuler les relations entre ces dernières. Il est aussi possible de créer plusieurs ‘instances’ de CDS.

Dans la suite de ce post, nous nous baserons sur CDS (plutôt qu’une base de données relationnelle classique) afin de vous montrer l’utilisation et les avantages avec Power Apps.

Pour en apprendre plus sur CDS, je vous conseille le lien suivant: Bien démarrer avec CDS

Exemple entité CDS
Exemples d’entités sur CDS
Exemple entité contact
Exemple de l’entité contact

Créer la structure d’une application avec Power Apps.

Pour démarrer une application d’exemple, nous allons commencer par créer un nouvel environnement. Un environnement est semblable à une instance de base de données. Chaque environnement contiendra une instance CDS séparée, avec un schéma et des données qui lui sont propres, ainsi que des applications liées à cet environnement.

Création d'une nouvelle entité
Création d’une nouvelle entité

Pour cet exemple, nous allons créer une application qui va permettre à un téléphone de rapidement charger et enregistrer des contacts sur un salon. L’entité « contact » existe déjà dans CDS.

Il va donc être intéressant de catégoriser la provenance des données que nous souhaitons collecter. Nous avons alors deux possibilités:

  • La création d’un champ d’option directement sur l’entité contact
  • La création d’une entité « Evenement » afin de créer une relation avec l’entité « Contact »

Ce choix va dépendre de plusieurs paramètres et notamment l’utilisation que nous souhaitons faire de nos données collectées. Nous vous conseillons fortement de privilégier les entités afin de garantir une pérennité et une modularité maximale à vos données. Cependant, il faut que vous gardiez en tête que plus le schéma de données sera complexe, plus vous serez confronté aux limites de Power Apps : une application plus « classique » sera alors à privilégier. Nous reviendrons sur ce point dans la dernière partie de cet article.

Pour des raisons de simplicité, reprenons notre exemple précédent en image:

Création d’un champ d’option sélectionnable directement sur l’entité

Premier pas dans Power Apps

Une fois que votre environnement CDS sera créé et personnalisé, il sera ensuite possible d’attaquer la construction de l’application.

Comme nous vous l’avons présenté dans le post précédent, Power Apps propose un grand nombre de modèles d’application répondant à un certain nombre de besoins. Afin de continuer dans la construction de notre application, nous allons continuer notre démonstration à partir d’une application canvas vierge.

Power Apps vous propose de démarrer une application depuis une source de données, mais rien n’empêche d’en ajouter par la suite

L’interface

Nous allons dans maintenant vous présenter l’interface de Power Apps. Comme vous allez le voir, l’interface est rapide à prendre en main. Elle se compose de 3 éléments principaux:

  • Le panneau gauche : sous-découpé en plusieurs composants. C’est là que nous allons retrouver l’arborescence de notre application (comprenez: les différentes pages et composants), la boite à outils contenant l’ensemble des composants que vous pouvez déposer sur votre application, et enfin les différentes sources de données auxquelles vous êtes connecté.
  • L’écran central : Il va permettre d’afficher votre application au faire et à mesure de votre construction et de pouvoir effectuer les modifications nécessaires.
  • Les éléments contextuels que sont le panneau de droite ainsi que le bandeau au-dessus du canvas.
La création d’une application en partant de zéro

Les différents type d’écrans

Différent type d’interface sont proposées

Lors de la création d’une application vierge, vous pouvez choisir entre plusieurs types d’écrans qui vous permettront ensuite de construire votre application autour de vos données.

Certains écrans sont très spécifiques à certaines sources de données, comme « Contacts », « Réunions » et « Calendrier » qui sont notamment fortement lié à Office 365. D’autres, tels que Liste et Formulaire sont beaucoup plus génériques.

Pour la construction de notre application, nous allons choisir l’écran liste qui va nous permettre d’afficher l’ensemble des contacts présents en base de données et de disposer d’un champ de recherche. Des données de tests ont été injectées. On peut voir dans la capture ci-dessous que nous avons bien l’écran qui apparaît sur l’arborescence à gauche, les données ont directement été chargées dans l’application en développement pour être plus « visuelle ». Enfin, dans le panneau contextuel, la « Source de données » est bien l’entité « Contacts ».

Avoir une liste d’affichage de données avec une barre de recherche est très simple

Si l’affichage des données peut être assez simple, la manipulation de ces données peut quant à elle être plus complexe. Il existe deux manières différentes selon votre niveau :

  • La programmation
  • L’utilisation de formulaires existants.

Nous allons continuer notre démonstration avec les formulaires existants. Les formulaires sont des composants liés à une source de données, ils ont un fonctionnement particulier. Un formulaire sera directement lié aux champs de votre entité et permettra l’ajout ou la modification de données de manière simplifiés. Il est possible d’ajouter de nouveaux champs à une entité depuis l’écran Power Apps si la source de données est CDS.

Le formulaire de création / édition ne prend que quelques clics
Vous avez oublié un champs dans votre entité? Pas de problèmes, vous pouvez l’ajouter à la volée

Déploiments, tests et debugs

Tout comme pour la construction de l’application, le management du cycle de vie (application lifecycle) de cette dernière se retrouve considérablement simplifié.

Comme vu ci-dessus, Power Apps intègre vos données depuis la source directement dans la construction de l’application quand cela est possible. Ce qui permet d’avoir un rendu très rapide et de s’assurer que l’application possède le fonctionnement souhaité. Même lorsque nous travaillons sur le filtrage de vos données, cela fonctionne.

A tout moment, il est possible de démarrer l’application via le bouton « play » en haut à droite de l’écran. Nous pouvons naviguer alors dans l’application telle qu’elle sera sur le PC / tablette / téléphone, avec la possibilité de manipuler les données. Il est possible de simuler les clics sans lancer l’application via le bouton « play », et ce en utilisant le raccourci ‘alt + clic’ sur une zone d’action de Power Apps. Le test manuel d’une application est ainsi simplifié.

Cependant, il est important de noter que Power Apps n’est pas une plateforme qui produit du « code » que vous pourriez compiler, analyser ou tester de manière « traditionnelle ». Ce qui rend difficile d’effectuer des tests automatisés ou des tests de performance. Les tests se limitent aux tests manuels. Cette logique se comprend néanmoins dans la volonté de faire des applications légères, rapides, et sans code. Le périmètre étant restreint, le besoin de tests « lourds » est lui aussi plus limité.

Pour pallier à cela, Microsoft a mis en place un outil « diagnostic » performant qui se base sur des formules et qui va permettre de limiter les erreurs. L’outil de diagnostic fonctionne en arrière-plan et permet de vérifier continuellement la cohérence de vos formules. Mais également leurs bons fonctionnements ainsi que les éventuels problèmes de performances ou encore les problèmes d’UX qui pourrait être rencontré.

Pour finir, une fois que votre application est créée, testée et validée, la publication devient un jeu d’enfant. Lors de la sauvegarde, ou directement depuis le bouton de publication, il est possible de partager votre application au sein de votre entreprise. Si l’application existe déjà, une nouvelle version sera créée. Le versionning est nativement géré dans Power Apps, permettant de revenir en arrière en cas de déploiement d’une version qui contiendrait de potentielles erreurs.

Retours et limites de Power Apps

Comme nous avons pu vous le démontrer, Power Apps est une excellente plateforme pour la création de petites applications. Ce qui en fait sa grande force, mais également sa faiblesse. L’outil a été conçu pour gagner du temps et permettre à tout à chacun de créer des applications basiques. Power Apps ne permettra pas de créer des applications « trop complexes ». Certains de vos projets demanderont un développement complet par des équipes de développeurs spécialisées.

Microsoft incite d’ailleurs à utiliser la plateforme afin de créer 10 micro-applications plutôt qu’une seule application monolithique. Chaque application répondant à un besoin spécifique. Power Apps possède un réel intérêt pour toute entreprise ayant de petits besoins sur lesquels on peut apporter une réponse rapide sans avoir besoin de dégager des budgets et/ou des compétences trop importantes.

Si vous avez des projets Power Apps ou Power Platform à l’étude, vous pouvez toujours nous contacter.

Author