Site icon A DevOps journey

Automatiser des tâches avec Power Automate

Power Automate (anciennement Microsoft Flow) est une solution proposée par Microsoft pour automatiser facilement les tâches du quotidien. Via quelques « cliquer-déposer », on peut organiser son travail, et parfois gagner des précieuses minutes chaque jour pour des tâches rébarbatives. Avec conception « algorithmique », elle se place comme concurrente du célèbre IFTTT, mais aussi comme une alternative à Azure Logic App. Mais Power Automate a le grand avantage de faire partie de l’écosystème Power Platform !

Que puis-je faire avec Power Automate ?

Comme on l’a vu dans les articles précédents, la limite sera surtout les sources de données à disposition. Et donc les connecteurs auxquels on a accès. Sachant qu’il est possible de créer ses propres connecteurs à partir d’une API REST, le champ des possibles est tout de même assez vaste.

Afin d’aider à envisager les scénarios possibles, Microsoft propose de nombreux exemples. Les usages peuvent concerner tant des tâches de la vie professionnelle que personnelle.

Plusieurs catégories et un classement par popularité pour donner des idées
Certains choix ont plus de pertinence que d’autres

Power Automate, comment ça marche?

Microsoft Automate (anciennement Flow) s’organise à la manière d’un IFTTT (IF This Then That). Des « flux » vont être créés, composés de deux parties:

Microsoft incite à utiliser les trois déclencheurs principaux. Le quatrième, bien plus complexe, fera l’objet d’un post complet

Ces actions seront organisées en algorithme comme une suite de tâche. Il est possible d’y ajouter un peu de logique via des process de boucles ou de conditions. Des exemples pour chaque type de flux sont proposés ci-dessous.

Les flux automatisés dans Power Automate

Un exemple assez simple peut être le tag et la notification sur téléphone lorsqu’un mail particulier vient d’arriver. Suite aux mails des managers par exemple, afin de ne manquer aucune communication. Sur les captures ci-dessous, l’action est déclenchée lorsqu’un mail est reçu du site web. Il est alors « flaggué » pour être sur de le traiter en plus d’envoyer une notification sur le téléphone.

Exemple de flux automatisé à la réception d’un email

D’autres cas courants peuvent inclure des demandes d’approbations pour la validation de documents ou de congés, l’insertion en base de données lorsqu’un fichier Excel est modifié… La seule limite est ce qui est permis dans les connecteurs proposés, et ceux que l’on peut créer.

Quelques choix d’actions possibles

Programmer ses rapports avec les flux planifiés

Les flux planifiés sont, comme leurs noms l’indiquent, des actions automatisées qui vont s’exécuter à intervalle régulier. Cela va être très pratique notamment pour tout ce qui va être rapports et indexations.

Les choix de planification ont une unité de temps assez permissive. Elle s’étend du mois jusqu’à la seconde (pour des besoins assez spécifiques). Quelques exemples d’utilisation en vrac:

Attention: Comme pour Power Apps, il est possible de faire beaucoup de choses avec Power Automate. Cependant, ce n’est pas parce que c’est possible que c’est une bonne pratique. Power Automate peut permettre de facilement tester un process. Dans certains cas, d’autres solutions / services seront plus adaptées pour ce besoin.

Il est possible de programmer des actions à la seconde

Pour l’exemple, nous nous baserons sur le Common Data Service utilisé par Dynamics, pour lequel nous allons créer process de rapport journalier. Chaque matin, les contacts ajoutés dans la journée sont récupérés, insérés dans un tableau Excel vierge, puis envoyés dans un fichier en pièce jointe à l’équipe marketing.

Le process aurait évidemment pu être amélioré avec un système d’approbation, l’ajout de processus conditionnels, etc.

Se créer des boutons d’accès rapide

Les boutons Power Automate ont deux usages distincts. Cela peut être des boutons accessibles directement dans l’application Power Automate. Mais ça peut aussi être une action utilisable depuis Power Apps.

L’exemple ci-dessous montre un bouton qui va récupérer la liste des contacts ajoutés ce jour sur notre application et d’envoyer une notification du nombre des nouveaux contacts.

Exemple de bouton pour envoyer une notification
Les process Power Automate correspondants sont directement accessibles depuis l’application modèle

Intégration dans Power Apps

La grande force de Power Platform, en plus de ses connecteurs, est l’interconnexion entre ses outils. Power Apps est limité par défaut à des tâches simples de présentation de l’information, voir de l’ajout / suppression. La partie « développement » n’est pas l’objectif premier de Power Apps, même si ce dernier permet néanmoins choses.

Cette partie de « process métier » est en fait plus portée par Power Automate. On va pouvoir créer un processus basé sur un déclencheur « bouton Power Apps », qui sera alors possible d’appeler dans notre application. Si on reprend l’application de contact, on peut créer un bouton « Export » qui sera chargé de générer un fichier Excel avec la liste de contact, et de l’envoyer par mail.

Modification de l’application de base, avec ajout d’un bouton lié à mon process Power Automate
Le process Power Automate lié à Power Apps

Vérifier les performances et l’utilisation

Côté analyse et debug, plusieurs outils sont mis à disposition. Tout d’abord, comme Power Apps, l’analyseur de flux sera chargé de surveiller constamment si vos paramètres sont opérationnels. Il consiste principalement à vérifier que tous les champs obligatoires sont remplis, et les connexions correctement paramétrées. La majorité des problèmes qui seront rencontrés dans Power Automate proviendront de connexions mal paramétrées ou de jetons de connexion ayant expiré.

La page de détail du flux possède un résumé des connexions paramétrées et nécessaires, ainsi que les exécutions du flux qui ont eu lieu précédemment. Il sera ainsi possible de voir l’historique, et d’analyser une exécution en particulier pour traquer les problèmes de performance ou les erreurs. Enfin, un tableau d’analyse Power BI donne un rapport sur les exécutions sur les 30 derniers jours ainsi qu’un état sur les erreurs survenues.

La vue détail donne pas mal d’informations
Il est possible d’analyser l’historique d’exécution en détail

Conclusion sur Power Automate

Power Automate permet d’automatiser un nombre important de process, et de répondre a plusieurs besoins fonctionnels. Il remplace, pour la partie planifiée, les « tâches cron ». Cela peut être un moyen de les centraliser et / ou de les partager. Pour les tâches automatiques, il va permettre de gagner du temps sur les traitements du quotidien. Enfin, il ouvre la possibilité d’ajouter de l’intelligence à votre application Power Apps.

Tout n’est actuellement automatisable, notamment car certains connecteurs sont encore limités sur les possibilités qu’ils proposent. Il faut aussi faire attention à la redondance des process, car si Power Automate propose de les centraliser, il est aisé d’avoir un process en doublons. Ca peut être entre deux personnes, ou entre deux outils (Power Automate et la source de donnée originelle par exemple).

Power Automate est donc un outil puissant qui peut répondre à nombre de besoins et faire gagner en productivité. Son évolution rapide est à surveiller, notamment sur des nouvelles fonctionnalités sur les connecteurs, ce qui arrive très régulièrement.

Quitter la version mobile