Nous aidons les entreprise à répondre durablement à leurs enjeux Data & Analytics quel qu’ils soient !

Gallery

Technique

Comment filtrer des tables Dataverse dans Power Automate ?

Lors de la mise en place d’un flux Power Automate, nous sommes régulièrement amenés à lister des éléments provenant de différentes tables de données. Pour affiner notre requête, il est essentiel de mettre en place des filtres qui permettent d’obtenir des valeurs répondant à des paramètres précis. Ces filtres nous permettent de cibler les informations nécessaires, améliorant ainsi la pertinence des données extraites et facilitant les prises de décision basées sur ces données. En utilisant des filtres, nous assurons également une meilleure organisation et gestion de nos données. C’est pour cette raison qu’il est essentiel de savoir comment filtrer des tables Dataverse dans Power Automate, en utilisant OData Query et en exploitant des colonnes relationnelles.


Pour cela, nous pouvons utiliser une requête OData. Afin d’écrire cette requête, plusieurs opérateurs sont utilisables. On retrouve notamment ceux-ci :

  • eq : Est égal
  • ne : N’est pas égal
  • gt : Supérieur à
  • lt : Inférieur à
  • ge : Supérieur ou égal à
  • le : Inférieur ou égal à
  • and : Opérateur « et » pour combiner plusieurs conditions
  • or : Opérateur « ou » pour combiner plusieurs conditions
  • startswith(nomcolonne,’valeur’) : Commence par

Ce qu’il faut savoir :

Pour utiliser un opérateur avec une valeur textuelle il est obligatoire d’indiquer avec des apostrophes votre valeur de la manière suivante : ‘ma valeur‘.

En revanche, lorsque la valeur comparée est une valeur numéraire (les valeurs de date sont considérées comme telles), les apostrophes ne sont plus nécessaires.

Exemple :


// Pour une valeur textuelle
cr00_macolonnetexte eq 'mon résultat'

// Pour une valeur numéraire
cr00_macolonnenumeraire eq 12

De plus, il n’est pas rare de retrouver des colonnes de relations (dans nos tables Dataverse par exemple). Il existe une solution pour effectuer un filtre sur une valeur de cette colonne, sans pour autant effectuer une deuxième action de lister les lignes avec un for each (effectuer pour chaque).

Pour illustrer tout cela, nous allons prendre l’exemple suivant :

1 – Requête OData simple

Dans le cas d’une table nommée « Utilisateurs » : parmi les nombreuses colonnes de la table, nous allons retrouver la colonne nommée : « cr00_monemail » qui comprend un email.

Pour effectuer un filtre simple et trouver l’ensemble des utilisateurs répondant à un email en particulier, nous pouvons effectuer le filtre suivant :

Screenshot simple OData filter Power Automate

Cette action permettra de lister tous les utilisateurs possédant le mail : « emailtest@monemail.com« .

2 – Requête OData sur une colonne LookUp

Maintenant, pour aller plus loin, nous allons imaginer que cette colonne possède une colonne de relation nommée : « cr00_monmanager« , qui se boucle sur la même table Utilisateur (et donc possédant aussi un mail dans la colonne « cr00_monemail« ).

Nous allons ainsi venir chercher l’ensemble des Utilisateurs dont le manager possède le mail : « mailmanager@monmail.com« .

Screenshot OData filter LookUp Column Power Automate

Dans le cas où l’information pourrait être manquante, ou bien si vous souhaitez exploiter plus de données du manager, il est possible d’étendre la requête de la manière suivante :

Screenshot OData filter LookUp Column - Expand Query Power Automate

3 – Requête OData sur une colonne LookUp imbriquée

Enfin, si vous voulez aller encore plus loin, il est possible d’exploiter un second niveau relationnel.

Pour cela, nous allons imaginer que le manager est rattaché à un service au travers d’une colonne de relation qui s’appelle « cr00_monservice« .

Aussi, ce service est indiqué sur une table qui comporte plusieurs colonnes, dont la colonne « cr00_nomservice » indique le nom du service.

Avec ces informations, nous allons venir lister l’ensemble des Utilisateurs où le manager fait partie du service « Management » :

Screenshot OData filter LookUp Column on multiple levels

Enfin, si comme précédemment vous souhaitez récupérer davantage d’informations sur le service en question, il est à nouveau possible d’étendre la requête de la manière suivante :

Screenshot OData filter LookUp Column on multiple levels - Expand Query Power Automate

En utilisant ces méthodes, le filtrage des données se verra optimisé et plus rapide, et permettra d’améliorer la manière dont est géré l’ensemble des informations.


Si vous souhaitez en savoir davantage sur comment filtrer des tables Dataverse dans Power Automate, nous vous conseillons de vous référer à cet article : How to Use OData Filter Query in Power Automate (process.st).

Archery Data & Analytics peut vous accompagner sur la mise en place d’une solution personnalisée au sein de votre entreprise en développant des outils adaptés à vos besoins et répondant à vos problématiques.

Vous pouvez directement contacter notre équipe pour en savoir davantage ou consulter nos différentes offres sur notre site internet.

Suivez nous sur LinkedIn !