Exercice : archiver une liste SharePoint selon un calendrier

Effectué

Dans l’exercice précédent, vous avez créé un flux de cloud automatisé qu’une action dans un autre système a déclenché, à savoir la création d’un élément dans une liste SharePoint. Cependant, d’autres moyens permettent de lancer des flux dans Power Automate. Dans cet exercice, vous allez découvrir comment créer un flux de cloud planifié pour automatiser régulièrement l’archivage de données dans SharePoint.

Comme vous utilisez la même liste Suivi des problèmes que dans l’unité précédente Exercice : envoyer un message Teams lorsqu’un élément est ajouté à SharePoint, vérifiez que vous avez déjà effectué les premières étapes de cette unité pour configurer votre liste source. Après avoir créé une liste source, vous pouvez créer la liste de destination, qui sert d’archive.

Créer une liste d’archives vide

Pour créer une liste d’archives vide, procédez comme suit :

  1. Depuis votre site SharePoint, cliquez sur Nouveau > Liste.
  2. Sélectionner À partir d’une liste existante, car vous souhaitez que cette nouvelle liste d’archives corresponde exactement au schéma de l’ancienne liste.
  3. Recherchez et sélectionnez Suivi des problèmes parmi les choix, puis cliquez sur Suivant.
  4. Nommez la liste Archive du suivi des problèmes, puis cliquez sur Créer.

Ces étapes sont les seules que vous effectuez dans SharePoint. Vous allez réaliser le reste de l’exercice dans Power Automate.

Créer un flux

Pour créer un flux, procédez comme suit :

  1. Accédez à https://make.powerautomate.com et cliquez sur Créer > Flux de cloud planifié.

  2. Donnez un nom parlant au flux, par exemple Archiver les données de suivi des problèmes.

  3. Sélectionnez une date de début afin que le flux commence à s’exécuter, puis définissez-la à une heure qui a du sens pour mettre à jour l’archive. Vous pouvez envisager de sélectionner un temps d’arrêt lorsqu’il ne se passe pas beaucoup d’activité dans la liste, par exemple au milieu de la nuit. Pour cet exercice, la date et l’heure n’ont pas d’importance, donc choisissez une date dans le futur et 1 h pour l’heure.

    Conseil

    Les flux planifiés ne peuvent pas se répéter plus d’une fois par minute. Cependant, le menu déroulant d’incrément de temps propose l’option Seconde, puis l’interface ne vous empêche pas de créer un flux planifié qui se répète toutes les secondes ou toutes les 10 secondes, par exemple. Le seul moment où vous découvrez qu’un problème est survenu, c’est lorsque vous essayez d’enregistrer le flux, après quoi le système génère une erreur. Vous devez redéfinir le déclencheur Périodicité sur une valeur égale ou supérieure à 60 secondes avant de pouvoir enregistrer. L’option Seconde permet une planification plus granulaire, par exemple une exécution toutes les 90 secondes, toutes les 318 secondes ou toute autre périodicité nécessaire pour votre application. Si vous planifiez une périodicité de flux à l’aide de l’option Seconde, le nombre de secondes doit être égal ou supérieur à 60.

  4. En fonction de l’activité de votre liste, choisissez un calendrier de périodicité qui vous convient. Une fois par jour est probablement un bon choix pour de nombreuses applications. Sélectionnez donc cette option, puis cliquez sur Créer.

Avant d’ajouter des actions, veillez à examiner votre stratégie globale pour ce flux. À l’aide d’un flux d’archivage, vous pouvez :

  • ajouter de nouveaux éléments de la liste source à la liste de destination ;
  • ajouter de nouveaux éléments et rechercher des mises à jour de la liste source, ce qui met à jour l’élément correspondant dans l’archive ;
  • ajouter de nouveaux éléments et une nouvelle copie des éléments mis à jour, en conservant l’original intact pour conserver un enregistrement des modifications.

Pour cet exercice, vous allez utiliser la troisième option.

Ajouter l’action Obtenir les éléments

Avec l’action Obtenir les éléments, vous pouvez trouver l’élément le plus récent dans votre liste d’archives. La date de création de cet élément indique la dernière fois que votre flux a ajouté un élément à l’archive. Cette date est votre point de départ pour rechercher de nouveaux éléments dans la liste source à archiver. Si la liste d’archives est vide lorsque vous exécutez le flux pour la première fois, des options vous permettent de contourner le problème, ce qui est abordé plus loin dans ce module.

  1. Sous Périodicité, cliquez sur l’icône plus (+), puis sur Ajouter une action.

  2. Dans la zone de recherche, recherchez et sélectionnez l’action Obtenir les éléments sous le titre SharePoint.

  3. Sélectionnez Adresse de site, puis recherchez votre site SharePoint.

  4. Sélectionnez Nom de liste, puis recherchez le nom de votre liste d’archives, et non la source.

  5. Cliquez sur Afficher tout en regard du menu déroulant Paramètres avancés pour afficher les paramètres supplémentaires de cette action.

  6. Cette action vous permet de capturer la date et l’heure de création de l’élément le plus récent de votre liste d’archives. Par conséquent, vous n’avez besoin que d’un seul élément, mais il doit s’agir du plus récent. Pour ce faire, vous pouvez utiliser une simple requête ODATA en saisissant les informations suivantes :

    1. Dans le champ Trier par, saisissez Created desc.

      Remarque

      Cette requête ODATA indique à l’action de trier en fonction du champ Date de création (Created), qui est une valeur DateHeure dans SharePoint. L’abréviation desc est le code pour « décroissant ». Autrement dit, les éléments les plus récents sont répertoriés en premier. Vous pouvez inverser cet ordre à l’aide de l’abréviation asc, à savoir le code pour « croissant ».

    2. Dans le champ Premiers éléments, saisissez 1.

      Remarque

      Le champ Premiers éléments indique le nombre maximal d’enregistrements à renvoyer. Vous n’avez besoin que de l’enregistrement le plus récent ; par conséquent, saisissez 1 dans le champ.

Initialiser une variable pour stocker la date et l’heure de création

Plus loin dans le flux, une autre action Obtenir les éléments récupère tous les éléments de votre liste source qui ont une Date de création ou de modification après l’élément le plus récent de la liste d’archives. Déterminez ce point de départ à l’aide de la variable varCreatedDatetime. Cependant, si la liste d’archives est vide (comme la première fois que vous exécutez le flux), aucun élément n’est présent pour fournir une date et une heure de début. Dans ce cas, définissez la variable sur une date précoce, par exemple le 1er janvier 1900, pour vous assurer que tous les éléments de la liste source sont inclus. Le système met cette date au format ISO 8601 UTC, à savoir le format standard permettant à SharePoint de stocker les valeurs DateHeure.

  1. Sous Obtenir les éléments, cliquez sur l’icône plus (+), puis sur Ajouter une action.

  2. Dans la zone de recherche, recherchez et sélectionnez Initialiser la variable sous l’en-tête Variables.

  3. Cliquez sur Nom, puis saisissez varCreatedDatetime.

  4. Cliquez sur le menu déroulant Type, puis sélectionnez Chaîne.

  5. Cliquez sur Valeur, puis collez cette valeur : 1900-01-01T00:00:00Z.

Définir la variable varCreatedDatetime si des éléments se trouvent dans la liste d’archives

Pour définir la variable varCreatedDatetime si des éléments se trouvent dans la liste d’archives, procédez comme suit :

  1. Sous Initialiser la variable, cliquez sur l’icône plus (+), puis sur Ajouter une action.
  2. Dans la zone de recherche, recherchez et sélectionnez l’option Définir la variable dans la liste.
  3. Cliquez sur le menu déroulant Nom, puis sélectionnez varCreatedDatetime.
  4. Cliquez sur Valeur, puis sur l’icône représentant un éclair.
  5. Dans la zone de recherche, saisissez Créat.
  6. Plusieurs champs de l’action Obtenir les éléments s’affichent avec la mention Créat. Sélectionnez Date de création, et non Créateur.

À ce stade, Power Automate crée automatiquement une boucle For each et y place l’action Définir la variable. Cela peut être inattendu si vous faites vos premiers pas avec Power Automate, mais la raison pour laquelle cela se produit est que l’action Obtenir les éléments renvoie une liste d’éléments (appelée un tableau). Lors de l’application d’une autre action à un tableau, Power Automate crée une boucle pour traiter chaque élément du tableau. Si vous n’avez pas défini le champ Premiers éléments sur 1, l’action Obtenir les éléments renvoie tous les éléments de la liste d’archives et Power Automate parcourt chacun d’eux, en redéfinissant la variable varCreatedDatetime sur la Date de création de chaque élément de la liste. Dans ce cas, comme vous avez limité le nombre de résultats à 1, la boucle ne s’exécute qu’une seule fois (en définissant varCreatedDatetime sur la Date de création de l’élément le plus récent) ou pas du tout si la liste d’archives est vide. Si la boucle ne s’exécute pas, la variable reste définie sur sa valeur par défaut du 1er janvier 1900.

Ajouter une autre action Obtenir les éléments

À présent, vous devez obtenir les éléments de votre liste source dont la valeur DateHeure de création ou de modification est plus récente que la valeur varCreatedDatetime.

  1. Au lieu d’ajouter à nouveau l’action Obtenir les éléments, vous pouvez utiliser la fonctionnalité de copier/coller de Power Automate. Pour ce faire, cliquez avec le bouton droit sur la carte Obtenir les éléments, puis sélectionnez Copier l’action.

  2. Cliquez sur l’icône plus (+) sous la boucle For each (pas sous Définir la variable, mais sous le cadre englobant autour de la boucle For each). Cliquez sur Coller l’action. À présent, une action Obtenir les éléments-copie s’affiche à l’écran. Chaque fois que votre flux comporte de nombreuses variantes de la même action, il est recommandé de renommer ces actions de manière à les différencier clairement. Cette approche est particulièrement utile lorsque vous avez besoin de savoir quels champs vont avec quelle action, lorsque vous sélectionnez des données dynamiques pour d’autres actions. Par conséquent, avant de continuer, vous devez mettre à jour vos noms comme suit :

    1. Sélectionnez la première carte Obtenir les éléments. Dans le panneau des paramètres qui s’ouvre à gauche, cliquez sur le titre Obtenir les élémentsvers la partie supérieure de l’écran. Le texte brut se transforme alors en une entrée de texte que vous pouvez renommer. Conservez le nom de l’action intact, mais ajoutez un trait d’union et un titre descriptif pour générer un autre titre, par exemple Obtenir les éléments - Enregistrement d’archive le plus récent.
    2. Cliquez sur la carte Obtenir les éléments-copie, puis redéfinissez son nom sur Obtenir les éléments - Éléments source à archiver.
  3. Restez dans l’action Obtenir les éléments - Éléments source à archiver et redéfinissez le champ Nom de la liste sur la liste source, à savoir Suivi des problèmes.

  4. Cliquez sur Afficher tout à droite de Paramètres avancés.

  5. Supprimez les paramètres Trier par et Premiers éléments : vous n’en avez pas besoin pour cette action. Pour ce faire, cliquez sur le X à droite du champ de saisie ou sélectionnez le texte de chaque champ et supprimez-le.

  6. Pour récupérer uniquement les éléments plus récents que le plus récent de votre liste d’archives, vous devez créer une requête OData. La requête doit filtrer selon les critères Date de création et Date de modification, car votre flux capture les éléments créés depuis la sauvegarde précédente et ceux modifiés depuis la dernière sauvegarde.

    1. Cliquez sur le champ de saisie Requête de filtre.

    2. Saisissez Created gt '' ou Modified gt ''.

      Remarque

      L’instruction est d’ajouter deux guillemets simples après gt, et non un guillemet double. En cas de doute, copiez-collez ces instructions.

    3. Placez votre curseur entre le premier ensemble de guillemets simples, puis cliquez sur l’icône représentant un éclair.

    4. Sélectionnez varCreatedDatetime sous le titre Variables.

    5. Répétez les mêmes étapes, en plaçant votre curseur entre les guillemets simples après Modified gt et en sélectionnant varCreatedDatetime.

Ajouter l’action Créer un élément

Il est maintenant temps de parcourir tous les éléments que l’action Obtenir les éléments - Éléments source à archiverrecueille, puis de copier chaque élément dans la liste d’archives à l’aide de l’action Créer un élément. Votre action Créer un élément devrait ressembler à la capture d’écran suivante :

  1. Sous Obtenir les éléments - Éléments source à archiver, cliquez sur l’icône plus (+), puis sur Ajouter une action.

  2. Dans la zone de recherche, recherchez et sélectionnez l’action Créer un élément sous le titre SharePoint.

  3. Sélectionnez Adresse de site, puis recherchez votre site SharePoint.

  4. Sélectionnez Nom de liste, puis recherchez le nom de votre liste d’archives, et non la source.

  5. Cliquez sur Afficher tout en regard du menu déroulant Paramètres avancés pour afficher les paramètres supplémentaires de cette action.

  6. Cliquez sur le champ Titre et sur l’icône représentant un éclair, puis saisissez Titre dans la zone de recherche.

  7. Dans la liste sous le titre Obtenir les éléments - Éléments source à archiver, sélectionnez Titre.

    Comme le système applique cette action à tout élément que l’action Obtenir les éléments - Éléments source à archiver renvoie, Power Automate crée automatiquement une boucle For each et y place l’action Créer un élément. Cette réponse est attendue. Vous pouvez effectuer manuellement cette action en créant d’abord votre propre action Appliquer à chacun, puis en y plaçant Créer un élément, mais la méthode la plus simple dans ce cas consiste à laisser Power Automate faire le travail à votre place.

  8. Le champ suivant sous Titre dans l’action Créer un élément est Description du problème, et les colonnes restantes s’affichent en dessous. Pour chaque colonne, procédez comme suit :

    1. Cliquez sur le champ et sur l’icône représentant un éclair, puis recherchez le nom de la colonne dans la zone de recherche.

    2. Recherchez la correspondance sous le titre Obtenir les éléments - Éléments source à archiver, puis sélectionnez-la.

    3. Certaines colonnes sont des colonnes de choix ou des colonnes de recherche et vous devez les gérer différemment. Par exemple, Valeur de priorité et Valeur de statut sont des colonnes de choix, tandis qu’Affecté aux réclamations est une colonne de recherche.

      Pour chaque colonne, cliquez sur le menu déroulant sous le titre du champ, puis faites défiler, si nécessaire, la liste vers le bas et sélectionnez Saisir une valeur personnalisée. Ensuite, cliquez sur l’icône représentant un éclair et procédez comme d’habitude à la sélection de l’élément correspondant dans Obtenir les éléments - Éléments source à archiver.

      Lorsque vous utilisez des colonnes de choix, veillez à sélectionner la version Valeur du champ (par exemple Valeur de priorité, et non Priorité). Il est important de connaître cette information en raison de la façon dont les colonnes de choix sont stockées dans SharePoint.

Après avoir mappé chaque colonne de l’action Créer un élément à la colonne adéquate de la liste source, vous pouvez enregistrer et tester votre flux. Avant de le tester, assurez-vous que votre liste d’archives est vide et qu’au moins une ligne ou deux de données s’affichent dans votre liste source. Ensuite, pour tester votre flux, procédez comme suit :

  1. Cliquez sur Enregistrer.
  2. Cliquez sur Tester.
  3. Sélectionner Manuellement.
  4. Cliquez sur Tester.
  5. Cliquez sur Exécuter le flux.
  6. Cliquez sur Terminé.

Quelques instants après, votre flux devrait s’exécuter et une bannière verte devrait s’afficher en haut du flux avec le message Votre flux s’est exécuté correctement. Avant de continuer, notez que les informations contenues dans l’historique des exécutions d’un flux sont nombreuses et que vous pouvez en apprendre beaucoup sur le fonctionnement de votre flux (et surtout, savoir quand il ne fonctionne pas) en examinant les succès et les échecs de vos exécutions de test.

Comme c’est la première fois que votre flux s’est exécuté et que la liste des archives était vide, la variable varCreatedDatetime reste définie sur la date par défaut du 1er janvier 1900. Ce résultat est évident dans la première boucle For each, où l’icône ignorée s’affiche dans le coin supérieur droit de l’action Définir la variable, indiquant que l’action a été ignorée.

Pour observer les modifications lorsque la liste d’archives est renseignée, procédez comme suit :

  1. Accédez à votre liste d’archives SharePoint et actualisez-la. Des copies de tout ce qui se trouve dans votre liste source devraient s’afficher.
  2. Accédez à votre liste source et ajoutez-y un autre élément.
  3. Revenez à votre flux et cliquez sur Modifier.
  4. Cliquez sur Tester le flux > Manuellement > Tester > Exécuter le flux > Terminé.
  5. Cette fois-ci, un indicateur 1 sur 1 s’affiche sous la première boucle For each et une coche verte s’affiche dans le coin supérieur droit de l’action Définir la variable. L’aspect de ces composants indique que l’action For each avait un élément à utiliser de l’action Obtenir les éléments - Dernier enregistrement d’archive et qu’elle avait défini varCreatedDatetime sur sa valeur DateHeure Date de création.
  6. Actualisez votre liste d’archives. Le nouvel élément devrait s’afficher comme ajouté à la liste. Assurez-vous qu’aucun doublon d’éléments n’est présent. En cas de doublon, un problème est peut-être survenu avec votre requête de filtre dans Obtenir les éléments - Éléments source à archiver.
  7. En guise de test final, modifiez l’un des enregistrements existants dans la liste source, ce qui devrait forcer le système à ajouter une nouvelle copie à l’archive, en laissant l’original intact.
  8. Revenez à votre liste source, sélectionnez l’un des enregistrements, puis apportez-y une modification, par exemple sa valeur Description du problème ou Priorité. Veillez à valider la modification avant de revenir à votre flux.
  9. Revenez à votre flux et cliquez sur Modifier.
  10. Cliquez sur Tester le flux > Manuellement > Tester > Exécuter le flux > Terminé.
  11. Examinez votre liste d’archives. Une nouvelle copie de l’élément modifié devrait s’afficher, avec l’original laissé intact, sans autres doublons.

Dans cet exercice, vous avez terminé un exemple de flux que vous pouvez utiliser dans un scénario réel lorsque vous automatisez le processus d’archivage des données dans SharePoint. Si vous définissez la périodicité du flux afin qu’il s’exécute dans les prochaines 24 heures, ajoutez des éléments à votre liste source, puis revenez demain pour voir si le flux s’est exécuté dans les délais et a mis à jour votre archive. Félicitations ! Vous automatisez comme un pro.