Envoyer un mail automatique

Étiquetté : 

  • Envoyer un mail automatique

    Posté par Lilian sur 1 septembre 2023 à 14h27

    Bjr, j’ai créé un flux pour comparer une date et heure présente dans une colonne d’une liste Sharepoint avec la date et heure à l’instant T moins 4 heures. Pour faire simple s’il n’y a pas eu de modification depuis 4 heures envois moi un mail…Le problème c’est qu’il me compare avec toutes les dates de la colonne, je voudrais que le comparatif ce fasse qu’avec la date et heure la plus ressente, pouvez vous m’aider ?

    Le tête de mon Flux et le contenu de mes étapes

    formatDateTime(addHours(utcNow(),-4),'ss-mm-HH')

    PostID=S2Kn4agZ3vA4kKQ

    Lilian a répondu Il y a 2 mois, 3 semaines 1 Membre · 14 Réponses
  • 14 Réponses
  • DavidZed

    Membre
    1 septembre 2023 à 15h06

    Bonjour,

    Tu peux simplifier ton flux en utilisant un filtre odata dans ta requête SP puis en comptant le nombre de lignes retournées 👍

    Filtre Odata:

    Modified lt '@{body('Obtenir_l''heure_passée')}'

    Condition (Expression)

    length(outputs('Obtenir_les_éléments')?['body/value'])

    CommentID=6qbYNxSLmFdmzyR, PostID=S2Kn4agZ3vA4kKQ

  • Lilian

    Membre
    4 septembre 2023 à 15h01

    Bjr, je débute sur Power automate je ne vois pas comment tu fais pour travailler sur la colonne “Date de modification” de ma liste sharepoint ? En sachant que je veux comparait uniquement avec la valeur la plus ressente de ma colonne. Je ne vois pas à quoi correspond le Modified IT dans la requête de Filtre, je ne vois pas cette fonction dans les expression, il ne me la propose pas ?

    CommentID=XoV4LeSvGyInhUU, PostID=S2Kn4agZ3vA4kKQ

  • DavidZed

    Membre
    4 septembre 2023 à 16h27

    C’est un paramètre de filtre odata qui est présent sur la plupart des actions power automate. Ce n’est pas une expression, c’est une syntaxe à entrer directement dans ce champ, on peut y adjoindre des valeurs dynamiques.

    Modified : Nom logique de la colonne Sharepoint ‘Modifié le’

    lt : (LT en minuscules) pour lesser than (moins que)

    Le tout suivit de la date à laquelle comparer entre ”

    En gros les étapes du flux sont :

    • Calcule l’heure actuelle moins 4h (heure caculée)

    • Liste toutes les lignes qui ont été modifiées après l’heure calculée (Liste filtrée)

      • Si ma Liste filtrée contient 0 lignes : envoie un mail (car aucun élément n’a été modifié il y a moins de 4h)

      • Si ma Liste filtrée contient plus de 0 lignes : ne fais rien (car au moins un élément a été modifié il y a moins de 4h)

    CommentID=NH4C02lGbk2Mkwf, PostID=S2Kn4agZ3vA4kKQ

    • Lilian

      Membre
      5 septembre 2023 à 12h15

      Bjr, ok mais quand je mets ça j’ai un message d’erreur au niveau de l’action « Obtenir_les_éléments » a échoué avec en message “L’expression « Modified It’8:05:24 AM’ » n’est pas valide. Creating query failed.

      clientRequestId: 76202284-6588-43a3-8532-fdf79f26dd6f

      serviceRequestId: 76202284-6588-43a3-8532-fdf79f26dd6f

      En sachant que j’ai juste rajouté une action pour avoir un format horaire hh:MM:ss

      Pour rappel je cherche à savoir si depuis 4h il n’y a pas eu de modification et si c’est le cas faire partir un mail, la date de modification est stockée dans une colonne d’une liste sharepoint voir ci-dessous

      Merci pour votre aide

      SubCommentID=2CIlCjNelgL6pBu, CommentID=NH4C02lGbk2Mkwf, PostID=S2Kn4agZ3vA4kKQ

    • R3dKap

      Membre
      5 septembre 2023 à 12h54

      Salut Lilian,

      Tu ne peux pas comparer que les heures. Supprime cette étape et garde simplement ce que DavidZed t’as proposé précédemment avec l’action Obtenir l’heure passée et ça va marcher… 😉

      En fait si tu regardes le résultat de cette action tu vois que le format est le suivant 👍

      Ce format doit être respecté pour la comparaison qui est faite plus bas dans Requête de filtre… 🙂

      SubCommentID=9dfIUFYB1PJKzSl, CommentID=NH4C02lGbk2Mkwf, PostID=S2Kn4agZ3vA4kKQ

    • Lilian

      Membre
      6 septembre 2023 à 14h57

      Ok merci , je viens de faire l’opération est effectivement je vois bien la même chose que toi, mais quand je test mon flux j’ai toujours une erreur au niveau de mon étape “Obtenir les éléments” avec le message ci-dessous

      Au niveau de l’étape “Obtenir les éléments” j’ai ça en entrée

      et je mets bien “Modified It” suivi de l’étape Heure Passée j’ai testé avec des simples côtes sans simple cotes…même résultat..

      Je vois pas ce qui le gêne ou peut être un soucis de format

      SubCommentID=t5xGFvGyxe5mMlL, CommentID=NH4C02lGbk2Mkwf, PostID=S2Kn4agZ3vA4kKQ

    • DavidZed

      Membre
      6 septembre 2023 à 18h07

      il manque les ‘ ‘ autour de la date

      et c’est lt avec un “L” minuscule et pas it avec un i majuscule (Lesser Than)

      SubCommentID=zeNQ1PTGQXcWFVF, CommentID=NH4C02lGbk2Mkwf, PostID=S2Kn4agZ3vA4kKQ

    • Lilian

      Membre
      7 septembre 2023 à 8h34

      Ok merci David, le flux va à son terme mais je ne reçois pas le mail malgré que la condition est à True, une idée ?

      Si dessous la date de modification la plus ressente dans la colonne me liste qui est du coup bien supérieur à 4h, je devrais donc recevoir un mail d’alerte..

      length(outputs(‘Obtenir_les_éléments’)?[‘body/Value’])

      SubCommentID=PszKQq9zNtntUM9, CommentID=NH4C02lGbk2Mkwf, PostID=S2Kn4agZ3vA4kKQ

    • DavidZed

      Membre
      7 septembre 2023 à 8h48

      Pourtant l’action d’envoi de mail est marquée comme ayant bien réussi 🫤

      Donc un mail est parti, reste à savoir : D’où ?, vers qui ? et s’il n’a pas été bloqué en chemin…

      Les points à vérifier :

      • Que ton entreprise n’utilise pas une version On Premise d’Outlook

      • Que le mail n’a pas été intercepté par un filtre anti-spam

      • Que l’adresse mail est la bonne

      • Dans Outlook (Online) > éléments envoyés (avec le compte propriétaire du flux) : vérifier que les mail est bien dedans

      SubCommentID=Sb52jTmi748ZDRt, CommentID=NH4C02lGbk2Mkwf, PostID=S2Kn4agZ3vA4kKQ

  • Lilian

    Membre
    7 septembre 2023 à 9h51

    Ok nickel ça fonctionne bien, merci David et R3dKap pour votre patience et votre aide…👍

    CommentID=yK85QmKT0ohRYvD, PostID=S2Kn4agZ3vA4kKQ

    • Lilian

      Membre
      7 septembre 2023 à 13h03

      Bon mon flux fonctionne c’est à dire que je reçois bien un mail par contre j’ai fais apportée une modification dans ma liste sharepoint du coup c’est affiché la date et l’heure de ma modification. Si je suis ce que j’ai écrit dans mon flux si je le test là il ne devrait pas m’envoyer un mail parce qu’il y a eu 1 modification dans les 4 heures. Et ben raté je reçois encore le mail ?????Ou es que je me plante ?

      length(outputs(‘Obtenir_les_éléments’)?[‘body/Value’])

      SubCommentID=QtAjYfHN7sNC4J9, CommentID=yK85QmKT0ohRYvD, PostID=S2Kn4agZ3vA4kKQ

    • DavidZed

      Membre
      7 septembre 2023 à 13h13

      C’est une erreur de ma part 😄

      Dans la condition, remplace lt par gt:

      et déplace l’envoi de mail dans la zone “non”

      SubCommentID=SKUGEVuZnleWk8h, CommentID=yK85QmKT0ohRYvD, PostID=S2Kn4agZ3vA4kKQ

    • Lilian

      Membre
      7 septembre 2023 à 13h39

      Ok nickel après test ça fonctionne bien en fait si ej comprends bien gt veut dire supérieur à et lt inférieur à , je comprend mieux..merci David

      SubCommentID=AbRx6UaRDXf4Eey, CommentID=yK85QmKT0ohRYvD, PostID=S2Kn4agZ3vA4kKQ

  • Lilian

    Membre
    8 septembre 2023 à 6h33

    Bjr, le flux fonctionne vraiement bien maintenant je souhaite stopper l’action le soir à 20h pour la reprendre le lendemain à 7h30. Il y a moyen de mettre une action supplémentaire pour cela ?

    CommentID=UAMzbXSE4iV2XYY, PostID=S2Kn4agZ3vA4kKQ

Connectez-vous pour répondre.