PA // Dataverse Champs vide

Étiquetté : 

  • PA // Dataverse Champs vide

    Posté par Vincent sur 22 décembre 2023 à 19h43

    Bonjour,

    je construis actuellement 1 flux pour envoyer des mails à partir d’une table dataverse remplie par PowerApps.

    J’ai une colonne sobrement appelé “Test” qui contient des valeurs de 1 à 3 mais qui peut également être vide. (Si pas de test, test vide, si test = 1, test conforme, si test = 2, pb1, si test = 3, pb2)

    J’ai besoin de filtrer cette colonne “Test” comme condition de la catégorie de mail à envoyer, mais je dois également conserver les lignes ou “test” est vide pour effectuer un ratio. (x% de pb1 sur l’ensemble des dossiers)

    Dans Power Automate lorsque je parcours les enregistrements de ma table Dataverse, mais si le champ “Test” est vide, la colonne ne remonte pas du tout et mon flux échoue car la colonne est introuvable.

    Avez vous une idée pour contourner ce problème ?

    J’ai pensé à filtrer ma table Dataverse directement depuis la requête de filtre oData (test gt 0) mais je devrais réitérer cette opération autant de fois que j’ai de catégorie et ca me parait fastidieux.

    Ma table Dataverse est alimentée par un flux de donnée, si je n’ai pas le choix, je pourrais modifier mon flux et ma table pour que test ne soit jamais vide, mais si je peux éviter…

    Merci d’avance pour vos idées !

    Et bonnes fêtes !!

    Vincent a répondu Il y a 2 mois 3 Membres · 3 Réponses
  • 3 Réponses
  • Tanguy Touzard

    Membre
    22 décembre 2023 à 20h07

    Pour lire une valeur même non existante, on peut faire body(‘record’)?[‘colonne’]
    Ça renvoie bien null grâce au point d’exclamation si je ne me trompe pas

  • Jonathan Copin

    Membre
    23 décembre 2023 à 18h10

    Salut,

    Tanguy a raison, le point d’interrogation permet de ne pas retourner d’erreur si la colonne est nulle.
    C’est la formulation utilisée par défaut par Power Automate lorsque tu sélectionnes une sortie d’action.

    Si ton problème n’est pas résolu il faudrait que tu nous mettes un imprime écran pour que l’on voit comment ton flux est construit. Par défaut j’ai l’impression que tu veux récupérer toutes tes lignes et compter les valeurs égales à 1,2,3 et vides.

    Tu peux utiliser faire une requête sans filtre Odata puis faire 3 actions “Filtrer un tableau” pour tes valeurs 1,2 et 3.

    Ensuite Tu peux utiliser la fonction length() pour connaitre le nombre d’éléments dans chacun de ces tableaux filtrés. le nombre de vide sera ta requête originale moins tes 3 tableaux filtrés.

  • Vincent

    Membre
    27 décembre 2023 à 11h36

    Bonjour,

    Merci pour vos reponses rapides. Je viens de tester, le problème venait effectivement du ? que je n’avais pas mis.

    Merci encore !

Connectez-vous pour répondre.