Réponses céées sur le Forum

Page 7 sur 84
  • R3dKap

    Membre
    1 novembre 2024 à 11h58 en réponse à: Canal Teams renommé

    Après, pendant mes tests j’ai eu un autre souci : mes documents disparaissaient après quelques secondes après les avoir attachés à une tâche dans Planner. Est-ce que toi aussi tu as rencontré ce problème ?

  • R3dKap

    Membre
    1 novembre 2024 à 11h50 en réponse à: Canal Teams renommé

    Si je comprends bien il s’agit en fait de documents qui sont des pièces jointes de tâches dans Microsoft Planner. Est-ce que c’est bien de ça que l’on parle ?

    J’ai fait un test de mon côté et je confirme qu’effectivement le lien des documents n’est plus valable lorsque le canal où se trouve l’onglet Planner est renommé.

    En fait les pièces jointes des tâches dans Microsoft Planner sont stockées à la racine de la bibliothèque de documents du site SharePoint associé à l’équipe. Et il n’est pas possible actuellement de configurer ça différemment.

    Une solution de contournement à ce problème consiste à changer de stratégie quant à l’ajout de pièces jointes dans les tâches. Plutôt que de charger ses documents à partir du PC il faut mettre ces documents dans SharePoint avant de les charger en pièces jointes. Ainsi même si le canal est renommé les liens des documents ne changent pas.

    Par contre je n’entrevois aucune solution à ton problème pour mettre à jour les liens des documents qui sont déjà dans les tâches de votre planeur. Il faudrait pour cela avoir accès à l’emplacement où sont stockés ces liens. Je ne le connais pas.

    Je continue de creuser de mon côté et te tiens au courant si je trouve quelque chose.

    En attendant la communauté a demandé à Microsoft de pouvoir paramétrer l’emplacement de stockage des documents qui sont rattachés aux tâches dans Microsoft Planner mais comme d’habitude on ne sait pas quand cela arrivera.

  • R3dKap

    Membre
    29 octobre 2024 à 13h08 en réponse à: Fermer une tâche planner

    Y’a un truc que je comprends pas dans ce que tu dis : “…le Compartiment ne passe pas à terminé“. Un compartiment n’a pas de statut. C’est la tâche qui a un statut. Et la tâche étant unique via son ID, pas besoin de spécifier le compartiment.

    Maintenant est-ce que ce que tu veux faire c’est DEPLACER ta tâche dans un compartiment qui s’appelle TERMINE ? Si c’est le cas alors utilise plutôt l’action “Mettre à jour une tâche (v2)” :

  • R3dKap

    Membre
    29 octobre 2024 à 11h25 en réponse à: Fermer une tâche planner

    Salut @Mick,

    Utilise plutôt l’action Mettre à jour une tâche 😉 :

    Carrément plus simple… Testé chez moi 😊

  • R3dKap

    Membre
    29 octobre 2024 à 11h18 en réponse à: Formule Substringof invalide

    Salut @Mickael,

    Essaie “Title” à la place de “Titre”. Je pense qu’il faut plutôt le nom technique de la colonne en 2è paramètre de la fonction substring()… 😉

  • R3dKap

    Membre
    26 octobre 2024 à 21h38 en réponse à: Graph API ajouter un membre à un groupchat Teams ?

    Salut @Simon,

    Pour l’instant en termes de droits j’utilise l’onglet Permissions du Graph Explorer. Mais je n’ai pas encore réussi à mettre en place des droits propres et “automatisés” pour les utilisateurs d’une application de canevas utilisant le connecteur Groupes Office 365 et sa fonction HttpRequest.

    Je te tiens au courant dès que c’est bon… 😉

  • R3dKap

    Membre
    26 octobre 2024 à 19h41 en réponse à: Canal Teams renommé

    Salut @Daniel,

    Ca serait intéressant que ta source te précise d’où il tient l’information… 😅

    Sinon, lorsque tu dis que des documents font référence à ce canal :

    1. De quel types de documents il s’agit ? Word ? Excel ? PowerPoint ? PDF ? Stocké où ? Sur le SharePoint du canal ?
    2. Ces documents font référence au canal de quelle manière ? Via le lien complet d’accès au canal ?

    Je pense que ça doit être quand même très compliqué de faire un flux Power Automate qui balaye des documents, charge leur contenu, remplace les anciennes urls par les nouvelles et ré-enregistre les documents.

    Mais peut-être existe-t-il une technique que je ne connais pas…

  • R3dKap

    Membre
    26 octobre 2024 à 14h06 en réponse à: Problème formulaire

    Salut Tom,

    On ne touche jamais à la propriété DataField d’un datacard car c’est lui qui spécifie quel est le champ de ta liste SharePoint qui l’alimente.

    Pourquoi as-tu essayé de le modifier ? Qu’essayais-tu de faire ?

    Je pense que tu n’utilises pas la bonne technique pour aboutir à tes fins… 😉

  • R3dKap

    Membre
    26 octobre 2024 à 14h01 en réponse à: Problème saisie décimale sur téléphone dans app

    Salut @Yann,

    Je suppose que tu as essayé avec le point et la virgule ?

    C’est un contrôle moderne ou un ancien contrôle ?

    “…suivant les écrans…” ?! Trop bizarre ça… Y’aurait pas des écrans qui auraient été créés à partir d’un Studio en anglais et d’autres en français ?

  • R3dKap

    Membre
    23 octobre 2024 à 19h57 en réponse à: Lier un bouton bascule à une liste sharepoint

    Salut @fabien,

    Enlève le ID: ThisItem.ID du 3è paramètre de ton Patch() : lorsque l’on enregistre des données dans une liste SharePoint il ne faut pas spécifier la colonne ID car elle est calculée par le système et n’est accessible qu’en lecture seule… 😉

    Astuce : dans le If() tu peux mettre If(Self.Value... puisque tu te trouves déjà sur la bascule TogglePresence… 😉

    Sinon le reste me semble bon… 😊

  • R3dKap

    Membre
    23 octobre 2024 à 12h16 en réponse à: Envoyer un mail seulement à une personne présente dans le tableau

    Salut @Marguerite,

    Si tu veux le faire à partir d’Excel, tu dois forcément saisir quelque chose quelque part sur la ligne (un “x” ou autre) dans une colonne que tu pourras alors lire via Power Automate pour que ce dernier sache à qui envoyer le mail. Il n’existe pas de technique qui permette de sélectionner une ligne dans un fichier Excel et de déclencher un flux pour cette ligne.

    Si c’est ce que tu cherches à faire tu peux le faire avec une liste SharePoint : tu transfères le contenu de ton fichier Excel dans une liste SharePoint et tu crées un flux Power Automate avec comme déclencheur SharePoint “Pour un élément sélectionné“. Et là tu pourras simplement sélectionner une ligne de ta liste et déclencher le flux qui enverra le mail… 😉

  • R3dKap

    Membre
    22 octobre 2024 à 11h38 en réponse à: Graph API ajouter un membre à un groupchat Teams ?

    L’authentification auprès de Graph API étant gérée par le connecteur Groupes Office 365, c’est forcément les permissions de l’utilisateur connecté qui vont être vérifiées.

    Chaque utilisateur doit donc posséder les bonnes permissions pour les points de terminaison Graph API appelés dans l’application.

    Sur la page de la documentation du point de terminaison tu as un onglet Permissions où tu verras les permissions nécessaires pour effectuer l’opération que tu veux faire :

    Tu choisis :

    • celle de gauche pour le strict minimum
    • celle de droite pour le maximum

    Cette permission doit être attribuée soit directement à l’utilisateur soit à un groupe de sécurité AD dans lequel figureront les utilisateurs qui auront le droit de faire cette opération. Si c’est un groupe de sécu :

    1. Crée le groupe de sécurité dans Azure AD
    2. Ajoute-lui les permissions du point de terminaison
    3. Ajoutes-y les utilisateurs qui vont utiliser l’application
    4. Crée une équipe Dataverse liée à ce groupe de sécu dans l’admin de l’environnement où se trouve ton app
    5. Partage ton application à cette équipe Dataverse

    As-tu besoin d’aide là-dessus ?

    ———-

    Ah et j’ai complètement oublié un aspect important de l’appel à Graph API : l’interprétation des résultats… 😅

    Pas trivial non plus :

    • impossible de récupérer actuellement le statut de l’appel (donc on sait pas si ça c’est bien passé ou pas)
    • impossible de récupérer la valeur du paramètre OData $Count (bon pas très grave mais ça aurait pu être pratique quand même)
    • les données renvoyées par la fonction GroupesOffice365.HttpRequest() sont dans un état indéfini (l’application ne sait pas quels sont les champs qui constituent le résultat, ni de quel type ils sont)

    Sur ce dernier point c’est donc à toi de le spécifier de la manière suivante :

    Set(
    myProfile;
    With({resultAPI: GroupesOffice365.HttpRequest("https://graph.microsoft.com/v1.0/me"; "GET"; "")};
    {
    aboutMe: Text(resultAPI.aboutMe);
    birthday: DateTimeValue(resultAPI.birthday);
    businessPhones: ForAll(
    wValue.businessPhones As loopValue;
    Text(loopValue)
    );
    ...etc...
    }
    )

    Comme tu le vois il faut forcer le typage de chaque colonne. Et parfois, les colonnes sont des tableaux et donc il faut boucler sur les valeurs du tableau (comme pour le businessPhones). La liste des champs est celle décrite dans l’objet de retour détaillé au format JSON par la documentation officielle du point de terminaison.

    Selon les points de terminaison et selon l’opération, parfois rien n’est renvoyé -> et encore une fois impossible de savoir si ça c’est bien passé. C’est ton cas pour l’ajout d’un membre à un chat : il renvoie un statut 201 mais comme on ne peut pas le récupérer… 😔 Donc si tu veux vraiment vérifier faut refaire un appel API pour vérifier qu’il est bien dans le chat.

    Voilà… Y’a un peu de taf quoi… D’où le composant que je vais sortir (mais qui sera payant vu le temps phénoménal que ça va me demander)…

  • R3dKap

    Membre
    21 octobre 2024 à 11h23 en réponse à: Graph API ajouter un membre à un groupchat Teams ?

    En fait, ce que tu veux encoder doit être une chaîne de caractères. Ce que tu veux encoder c’est ceci :

    {
    “@odata.type”: “#microsoft.graph.aadUserConversationMember”,
    “user@odata.bind”: “https://graph.microsoft.com/v1.0/users/8b081ef6-4792-4def-b2c9-c363a1bf41d5”,
    “visibleHistoryStartDateTime”: “0001-01-01T00:00:00Z”,
    “roles”: [“owner”]
    }

    Donc, faut que tu mettes tout ça entre guillemets mais comme il y a déjà des guillemets dedans, soit tu les doubles, soit tu mets des apostrophes à la place.

    😉

  • R3dKap

    Membre
    19 octobre 2024 à 13h04 en réponse à: Utilisation de la fonction Patch avec une formule nommée

    Ah ok… Alors voilà l’origine du problème :

    • ta colonne SharePoint est une colonne de recherche qui est donc au format :
      {
      Id: <ID SharePoint de l'élément lié>;
      Value: <valeur de l'élément lié>
      }
    • ta formule nommée est au format texte

    C’est donc incompatible. Si tu veux que ta formule nommée soit au bon format il faut que tu l’alimentes ainsi :

    nfAuditID = DataCardAuditID.Selected

    Attention : ton DataCardAuditID doit être le contrôle du champ (text input, liste déroulante, etc.) et non le datacard en lui-même qui contient les 4 contrôles (DataCardKeyXXX, DataCardValueXXX, ErrorMessageXXX et StarVisibleXXX).
    D’ailleurs, les noms des contrôles des champs à l’intérieur d’un datacard doivent s’appeler : DataCardValueXXX -> c’est une bonne pratique.

    Dis-nous si ça marche… 😉

  • R3dKap

    Membre
    19 octobre 2024 à 12h25 en réponse à: Graph API ajouter un membre à un groupchat Teams ?

    Salut @Simon,

    Alors, si tu es un peu patient……… 😋 : https://www.linkedin.com/feed/update/urn:li:activity:7234857516994633728?utm_source=share&utm_medium=member_desktop

    En attendant, pour faire des appels au Graph API depuis Power Apps, il faut utiliser le connecteur Groupes Office 365. Mais c’est pas forcément trivial. Voici rapidement comment ça marche :

    • Ajouter le connecteur Groupes Office 365 à l’application
    • Faire appel à la fonction HttpRequest avec les paramètres suivants :
      • Uri = l’url vers le point de terminaison Graph API -> dans ton cas : https://graph.microsoft.com/v1.0/chats/{chat-id}/members
      • Method = l’opération d’API -> dans ton cas “POST”
      • file = le body de ton appel API -> dans ton cas au format :
        {
        "@odata.type": "#microsoft.graph.aadUserConversationMember",
        "user@odata.bind": "https://graph.microsoft.com/v1.0/users/{user-id}",
        "visibleHistoryStartDateTime": "0001-01-01T00:00:00Z",
        "roles": ["owner"]
        }

    C’est sur ce dernier paramètre que ça se complique car sa valeur doit être encodé en Base64. Pour faire ça il faut utiliser ceci : https://ppfc.fr/groupes/ressources/forum/topic/power-apps-encoder-une-chaine-en-base64

    Evidemment, dans le composant que je suis en train de créer, tout ça sera beaucoup plus simple puisque tu auras à ta disposition une fonction à appeler et à laquelle tu fourniras juste l’ID du chat et l’ID ou le mail du membre à ajouter… 😉

Page 7 sur 84