Exercice : créer une file d’attente de tâches
Dans les labos précédents, vous avez créé une solution de bout en bout pour saisir une facture dans une application héritée. Cette solution, qui exécute un flux de bureau à partir d’un flux de cloud, vous permet de saisir automatiquement les données pertinentes dans l’application héritée sans qu’aucun processus manuel n’ait lieu. Lorsqu’il est déclenché, ce flux est placé dans une file d’attente avec tous les autres flux de bureau définis pour s’exécuter et s’exécute seulement si son tour dans la file d’attente est venu dans l’ordre. Mais une question demeure : que se passe-t-il si cet ordre doit être modifié afin qu’une exécution de flux spécifique ait une priorité plus élevée que d’autres ?
Les files d’attente de tâches dans Power Automate jouent un rôle crucial dans l’amélioration de l’efficacité, de la scalabilité et de la résilience des automatisations et permettent de hiérarchiser le travail, les éléments les plus prioritaires étant terminés en premier, qu’ils soient ou non traités par des collaborateurs numériques, des collaborateurs humains ou au moyen d’intégrations.
Tout comme les chaînes d’assemblage de fabrication sont conçues pour découpler différentes phases complexes de la production, les files d’attente de tâches permettent de découpler différentes zones d’un processus, permettant ainsi à chaque pièce de fonctionner indépendamment et d’échanger des entrées et sorties prioritaires de manière asynchrone.
Tâche : créer une file d’attente de tâches
Accédez à Power Automate et connectez-vous avec vos informations d’identification.
Dans le menu de navigation sur le côté gauche de l’écran, cliquez sur Plus en regard des points de suspension. Ensuite, sélectionnez Files d’attente de tâches.
L’utilisateur est alors redirigé vers la section Files d’attente de tâches. Cliquez sur le bouton + Nouvelle file d’attente de tâches ou + Nouveau en haut de l’écran pour créer une file d’attente de tâches.
Dans le volet Nouvelle file d’attente de tâches, saisissez les informations suivantes :
- Nom de la file d’attente de tâches :
Invoices
- Nom de la file d’attente de tâches :
Ensuite, cliquez sur Créer.
Remarque
Si vous définissez un délai d’expiration pour une file d’attente de tâches, tout élément ajouté expire une fois le délai écoulé. Ainsi, si vous définissez le délai d’expiration sur 30 minutes, un élément ajouté à 14h00 expire à 14h30.
Tâche : créer le flux de travail Chargement des éléments de la file d’attente de tâches
Depuis la Solution de traitement de factures créée lors d’un labo précédent, cliquez sur + Nouveau dans la barre d’outils en haut. Ensuite, sélectionnez Automatisation et Flux de bureau pour créer un flux de bureau.
Nommez le flux Work Queue Item Load, puis cliquez sur Lancer l’application. Vous êtes alors redirigé vers un nouvel onglet de votre navigateur et devrez peut-être vous connecter à Power Automate pour le bureau si vous y êtes invité.
Une fois dans le concepteur Power Automate pour le bureau, accédez à la section Excel et sélectionnez l’action Lancer Excel à ajouter comme première étape du flux de travail.
Dans l’action Lancer Excel, cliquez sur le menu déroulant du paramètre Lancer Excel, puis redéfinissez-le sur le document suivant et ouvrez-le.
Redéfinissez le champ Chemin d’accès au document et sélectionnez le fichier nommé Work Queue Vendor Invoice Items dans le dossier Lab #13 Excel file for Work Queues dans les supports de cours.
Réglez les boutons bascules comme illustré ici pour désactiverRendre l’instance visible et activerOuvrir en lecture seule, puis cliquez sur Enregistrer.
Dans la zone Actions Excel, sélectionnez l’action Lire à partir de la feuille de calcul Excel et ajoutez-la à l’étape suivante.
Cliquez sur le menu déroulant dans l’action Lire à partir de la feuille de calcul Excel pour le champ Récupérer et sélectionnez Toutes les valeurs disponibles dans la feuille de calcul. Ensuite, cliquez sur Avancé et réglez le bouton bascule La première ligne de la plage contient les noms de colonne sur Activé. Enfin, sélectionnez la variable produite et ajoutez Invoices au nom de la variable à afficher sous la forme ExcelDataInvoices.
Remarque
Il est recommandé de renommer les variables si nécessaire pour faciliter la compréhension de l’objectif de la variable et de la manière dont elle doit être référencée.
Accédez à la section Actions de boucle et sélectionnez l’action de boucle For each.
Cliquez sur l’icône de variable pour choisir la variable ExcelDataInvoices sur laquelle effectuer une itération, puis redéfinissez le nom de la variable dans laquelle les données sont stockées sur CurrentInvoice et cliquez sur Enregistrer.
Accédez à la section Files d’attente de tâches dans le volet Actions et sélectionnez l’action Ajouter un élément de file d’attente de tâches. Veillez à faire glisser l’action dans la boucle For each.
Dans la boîte de dialogue, ajoutez les informations suivantes, puis cliquez sur Enregistrer :
File d’attente de tâches : Factures
Statut : Mis en file d’attente
Priorité : Standard
Nom :
%CurrentInvoice['InvoiceItemID']%Entrée :
{ "AccountName": "%CurrentInvoice['AccountName']%", "ContactEmail": "%CurrentInvoice['ContactEmail']%", "Amount": "%CurrentInvoice['Amount']%" }
Remarque
Les crochets [ ] avec guillemet simple ’ ’ désignent une colonne à référencer.
Remarque
L’entrée dans ce cas est un objet JSON qui stocke les données dans des paires nom/valeur.
Accédez à la section Excel dans le volet Actions et ajoutez l’action Fermer Excel comme dernière étape du flux, en dehors de la boucle For each. Vous n’avez pas besoin d’apporter de modifications à cette action.
Cliquez sur le bouton Enregistrer, puis sur le bouton Exécuter pour exécuter le flux de travail.
Fermez la fenêtre du concepteur Power Automate pour le bureau.
Accédez au portail de flux de cloud Power Automate sur make.powerautomate.com, cliquez sur Plus, puis choisissez Files d’attente de tâches dans le menu. Notez les 30 éléments mis en file d’attente pour la file d’attente de tâches Factures.
Sélectionnez la file d’attente de tâches Factures et accédez à l’onglet Éléments pour afficher la liste complète des éléments mis en file d’attente par le flux de travail récemment exécuté.
Notez que tous les éléments se voient affecter le statut Mis en file d’attente avec une coche.
Tâche : créer le flux de travail Processeur des éléments de la file d’attente de tâches
Revenez à Power Automate pour le bureau.
Cliquez sur les points de suspension pour le flux Saisir une facture créé dans un labo précédent et sélectionnez Créer une copie dans la liste déroulante.
Redéfinissez le nom du nouveau flux sur Processeur des éléments de la file d’attente de tâches.
Sélectionnez le nouveau flux Processeur des éléments de la file d’attente de tâches et cliquez sur l’icône représentant un crayon pour le modifier.
Accédez à la section Files d’attente de tâches dans le volet Actions et sélectionnez l’action Traiter les éléments de la file d’attente de tâches. Insérez cette action après l’étape Exécuter l’application déjà incluse dans le flux.
Remarque
Il devrait s’agir de la nouvelle action 2 dans le flux de travail.
Sélectionnez la file d’attente de tâches Factures dans la liste déroulante.
Dans le volet Actions, recherchez
Jsonet sélectionnez l’action Convertir JSON en objet personnalisé, en veillant à l’ajouter dans la boucle Traiter les éléments de la file d’attente de tâches venant d’être créée.Cliquez sur l’icône de variable {x} pour choisir la valeur JSON à convertir. Dans la liste déroulante, faites défiler vers le bas et cliquez sur la flèche de développement pour WorkQueueItem, puis sélectionnez l’option .Value. Cliquez sur Sélectionner pour l’ajouter à la zone des paramètres. Une fois l’ajout effectué, cliquez sur Enregistrer.
Cliquez sur le bouton Enregistrer en haut de la fenêtre.
Sélectionnez le chiffre 4 dans la liste des actions pour ajouter un Point d’arrêt au flux. Ce point d’arrêt arrête le flux à l’action pour laquelle il est ajouté, puis permet aux utilisateurs de visualiser les détails du flux à ce stade.
Cliquez sur les boutons Enregistrer et Exécuter en haut de la fenêtre.
Double-cliquez sur la variable JsonAsCustomObject dans la zone Variables de flux du volet Variables pour afficher les détails de sortie du flux en cours d’exécution.
Notez les données analysées à partir du code JSON qui peuvent désormais être utilisées comme paires Nom/Valeur. Cliquez sur Fermer pour fermer la fenêtre.
Cliquez sur le bouton Arrêter en haut de la fenêtre du concepteur.
Dans la section Files d’attente de tâches du volet Actions, sélectionnez l’action Mettre à jour l’élément de la file d’attente de tâches et faites-la glisser dans la liste des actions après l’étape Convertir JSON en objet personnalisé dans la boucle For each.
Laissez le champ Entrée vide et ajoutez le résultat du traitement Succès dans la boîte de dialogue Mettre à jour l’élément de la file d’attente de tâches, puis cliquez sur Enregistrer.
Cliquez sur les boutons Enregistrer et Exécuter en haut de la fenêtre.
Revenez dans le navigateur web Power Automate, à la file d’attente de tâches Factures précédemment visitée. Actualisez le navigateur et accédez à l’onglet Éléments.
Faites défiler la liste vers le bas et notez l’élément traité lors de l’exécution précédente du flux de bureau.
Revenez au concepteur de flux de bureau et cliquez sur le bouton Arrêter en haut de la fenêtre.
En maintenant la touche Ctrl de votre clavier enfoncée, sélectionnez toutes les actions du flux de bureau Saisir une facture d’origine, puis faites glisser toutes ces étapes dans la boucle Traiter les éléments de la file d’attente de tâches, entre les actions Convertir JSON en objet personnalisé et Mettre à jour l’élément de la file d’attente de tâches.
Modifiez les trois étapes Renseigner le champ de texte dans la fenêtre et supprimez la variable d’entrée précédemment utilisée pour remplacer le Texte à renseigner par une valeur du code JSON analysé stocké dans la variable JsonAsCustomObject.
Remplacez le Texte à renseigner pour chaque action à l’aide des éléments suivants :
- Zone de texte Compte :
%JsonAsCustomObject['AccountName']% - Zone de texte Contact :
%JsonAsCustomObject['ContactEmail']% - Zone de texte Montant :
%JsonAsCustomObject['Amount']%
- Zone de texte Compte :
Si la ligne 16 comporte un Point d’arrêt, supprimez-le. Cliquez sur Enregistrer et Exécuter une dernière fois pour afficher tous les éléments de la file d’attente de tâches traités par ce flux.
Revenez au portail cloud Power Automate et notez que l’élément de file d’attente de tâches terminés s’exécute dans la file d’attente de tâches Factures.