Hello,
Ton poste étant dans la section Dataverse, je pars du principe que tu souhaites supprimer les enregistrements ayant une date antérieure au dernier record pour chaque référence.
Tu as plusieurs manières d’y parvenir
Soit avec Power Automate :
A privilégier si la table reçoit des nouveaux enregistrements en grande quantités / à forte fréquence
-
Il faut partir sur un déclencheur “Quand un nouvel enregistrement est créé”
-
Ajouter une action “Obtenir les éléments” en filtrant (Odata) sur deux critères :
-
La catégorie = la catégorie de l’élément dans le déclencheur
-
La valeur Date < à celle de l’élément dans le déclencheur
-
Ajouter une action supprimer une ligne : Mettre le item de l’action précédente (ce qui va créer une boucle For Each)
Soit avec un Dataflow :
A privilégier si la table contient beaucoup d’enregistrements et surtout si beaucoup d’enregistrements sont créés (ex 1000+ / jour)
L’idée c’est de faire une requête sur ta table, réduire la table à un enregistrement par Référence avec un “group by” en se basant sur la valeur maxi du champ “Date” .
La difficulté ici c’est que pour le champ “Valeur” et le GUID qui va te permettre de supprimer les autres enregistrements lors de l’import, il y a une certaine gymnastique à faire pour récupérer les valeurs correspondantes à la dernière date.
Voici un article qui décrit le principe, étape par étape :
-
Tri par date
-
Table buffer pour charger toutes les données en cache
-
Group By avec un List. First (ou List.Max selon l’ordre de tri) pour chaque colonne doit on doit récupérer la valeur correspondante (Valeur, GUID…) Bien nommer les colonnes avec leur nom d’entrée, ce sera plus facile pour le mappage
Ensuite il faudra mapper en sélectionnant la même table et en veillant bien à cocher l’option
Il y a peut être également d’autres possibilités : Outil de suppression en blocs, plugins…
CommentID=eITVIwUP2ofAn4F, PostID=4DOQZ92DMZbUNMZ