Réponses céées sur le Forum

Page 1 sur 68
  • DavidZed

    Membre
    14 octobre 2024 à 21h28 en réponse à: A l’aide

    Bonjour Annie,

    Deux choses :

    L’idéal pour bénéficier d’un environnement pour s’entrainer est de créer un environnement de développeur (doc en lien)

    Ce qui offre plusieurs avantages :

    • Pas besoin de droits spécifiques pour créer l’envirronement
    • On a les droit d’admin dessus
    • On peut utiliser tous les connecteurs, y compris les premiums (mais que pour s’entrainer / faire des tests)
    • Ces envirronnement ne viennent pas consommer la capacité de base de données / fichiers de ton entreprise

    Par contre cette fonctionnalité peut malheureusement être bloquée au niveau du tenant de ton entreprise (par défaut c’est autorisé)

    Une fois l’envirronnement de DEV créé, on peut siwthc sur celui-ci depuis make.powerapps.com :

    Ensuite pour ce qui est des applis qui peuvent servir de modèle et qu’il est intéressant de décoritquer, il y a comme je l’ai dit plus hauts, les applis générées automatiquement, mais il y a également des modèles d’application qu’il est possible de déployer sur son environnement (ou sur l’environement par défaut), toujours depuis le menu créer :

  • DavidZed

    Membre
    14 octobre 2024 à 21h12 en réponse à: A l’aide

    Pour les deux applis, il suffit de se laisser guider pour les générer.

    La première appli va te permettre de voir comment naviguer entre les écrans, utiliser un formulaire et une galerie

    La seconde aura un design un peu plus léché et te montrera comment utiliser les containers et les variables

    Observe, dans ces deux applis, le code dans les propriétés des icônes, boutons et autres éléments, et pour chaque formule, réfère toi au référentiel (en lien ici).

    En parralèle, dans une autre fenêtre, construit petit à petit ta propre application en t’inspirant de ces deux modèles.

    Et si tu ne comprends pas une fonction ou si tu es bloqué sur un point particulier, reviens poser la question ici.

    C’est selon moi, la meilleure méthode pour monter en compétence rapidement sur Power Apps.

  • DavidZed

    Membre
    14 octobre 2024 à 21h05 en réponse à: A l’aide

    Bonjour,

    Si tu es totalement néophite avec Power Apps, je te suggère de commencer par générer une application à partir d’une de tes listes SharePoint (ou mieux, une liste duppliquée pour éviter toute erreur de mannipulation sur les données de production).

    Tu peux générer automatiquement deux applis différentes, la première sera la plus simple, à partir du menu créer :

    Il y a également un autre modèle, plus élaboré, qui va générer une application qui fera la même chose : afficher des éléments dans une gallerie et consulter / modifier dans un formulaire:

  • DavidZed

    Membre
    14 octobre 2024 à 20h56 en réponse à: Bouton copie valeur rubrique vers une autre rubrique

    Bonjour,

    La fonction Set() sert à définir une variable, par exemple:

    Set(Ma_variable ; “Turlututu”)

    donne à ma variable ‘Ma_variable‘ la valeur texte : Turlututu

    Cela me permet de réutiliser cette valeur partout dans l’application en l’appelant par son nom de variable, par exemple si je met Ma_variable dans la propriété .Text d’une éttiquette de texte, celle-ci affichera “Turlututu

    On ne peut pas utiliser Set pour changer directement le texte affiché dans une propriété en l’appellant par son nom de contrôle, par exemple :

    Set(TextInput.Text ; “Coucou”)

    Ne fonctionnera pas et génèrera une erreur.

    On peut par contre appeler la valeur de la propriété .Text d’un contrôle pour le stocker dans une variable :

    Set(Mon_autre_variable : TextInput.Text)

    Cette formule va stocker le texte saisi dans mon contrôle par l’utilisateur dans la variable Mon_autre_variable

  • DavidZed

    Membre
    10 octobre 2024 à 8h16 en réponse à: Timed out flux Power Automate : Excel > Power Apps

    Hello,

    Une des méthodes pour accélérer le temps de traitement c’est d’aller récupérer les données via une requête http (avec authentification Entra si ton fichier est sur un SP/Teams).

    Je ne l’ai jamais utilisée, mais voici un article de Matthew Devaney qui détaille cette utilisation, avec des temps daccès significativement améliorés :

    Si tu souhaites expérimenter cette option, voici les liens vers :

  • DavidZed

    Membre
    9 octobre 2024 à 21h11 en réponse à: Automatisation mail via sharepoint liste

    Bonjour,

    Tel quel, ton flux va effectivement se déclencher à chaque modification de l’élément, pour limiter les déclenchements, voici ce que je te conseille :

    Il te faudra ajouter une condition de déclenchement à ton flux (parametres de l’action)

    En premier lieu, ajoute une colonne à ta liste SP, nommée : NotifPrepSend, de type oui/non, elle servira à déterminé si la notification a déjà été envoyée


    voici la formule pour le trigger condition :

    @and(not(equals(triggerOutputs()?[‘body/NotifPrepSend’],1)),not(empty(triggerOutputs()?[‘body/EmailPrepa’])))

    il faudra remplacer NotifPrepSend et EmailPrepa par les noms techniques des colonnes
    Le flux ne se déclenchera que si un EmailPrepa contient une donnée et si la valeur NotifPrepSend n’est pas oui. Quand le flux se déclenche, cette valeur sera mise à oui et le flux ne se rédéclenchera plus.

  • DavidZed

    Membre
    9 octobre 2024 à 21h10 en réponse à: Automatisation mail via sharepoint liste

    (edité)

  • DavidZed

    Membre
    8 octobre 2024 à 19h19 en réponse à: Power Platform French Summit 2024

    Hello,

    J’ai participé à la journée technique l’année dernière j’en ai gardé un excellent souvenir, cette année je pense que je serai présent sur les deux jours.

    Les sessions sont de qualité et surtout c’est un évènement dédié à la Power Platform, là où d’autres évènements vont couvrir un scope plus large, cela permet d’avoir des sessions qui font le focus sur des thèmes précis.

  • DavidZed

    Membre
    8 octobre 2024 à 19h14 en réponse à: Changer le nom d’un SeriesLabels sur un PieChart

    Bonjour,

    Tu peux essayer de placer un Coalesce() pour gérer l’absence de donnée dans la colonne référent :

    AddColumns(GroupBy(AddColumns(Insatisfaits;Stat_1;Coalesce(Référent.DisplayName ; “Non attribué”)); Stat_1; GroupData); CountByReferent
    ; CountRows(GroupData))

  • DavidZed

    Membre
    7 octobre 2024 à 16h53 en réponse à: Calcul du nombre de jours ouvrés

    Hello,

    Tu as peut être ce message d’erreur quand tes champs texte ne renvoient pas une date au format attendu (en cours de saisie par exemple)

    pour éviter le déclenchement intempestif, tu peux ajouter une regex en condition :

    With(

    {

    // Déclaration des variables locales ‘startDate’ et ‘endDate’ en convertissant les textes saisis en dates

    startDate: If(IsMatch(Startdate_saisie.Text; “^(0[1-9]|[0-9]|3)/(0[1-9]|1[0-2])/([0-9]{4})$” ; DateValue(Startdate_saisie.Text; “fr-FR”));

    endDate: If(IsMatch(EndDate_saisie.Text; “^(0[1-9]|[0-9]|3)/(0[1-9]|1[0-2])/([0-9]{4})$” ;DateValue(EndDate_saisie.Text; “fr-FR”)) ;

    <code class=”language-regex”><code class=”language-regex”>

    <code class=”language-regex”><code class=”language-regex”>

    et un peu plus loin, ne faire les calculs que si les dates ne sont pas vides :

    <code class=”language-regex”><code class=”language-regex”>

    If( !IsBlank(startDate ) && !IsBlank(endDate) ;

    <code class=”language-regex”><code class=”language-regex”>

    Value(

    <code class=”language-regex”><code class=”language-regex”>

    CountRows( ….

  • DavidZed

    Membre
    7 octobre 2024 à 16h30 en réponse à: Message d’erreur lors de l’accès à une application PowerApps

    A priori ce n’est pas lié,

    Si le partage de l’app était en cause, les utilisateurs auraient une erreur 401 ou 403 “Access denied” ou “unauthorized”, ici une erreur 404 “Not found” indique qu’il est impossible de joindre le serveur :

    • Soit le serveur MS est down (mais je peux t’indiquer tout de suite que ce n’est pas le cas 🙂 )
    • Soit il y a un pare-feu qui empêche de communiquer avec le serveur MS

    Normalement, si ton service informatique vient de mettre en place des règles de filtrage plus strictes, ils doivent certainement faire face à des demandes du même genre

  • DavidZed

    Membre
    4 octobre 2024 à 18h09 en réponse à: Message d’erreur lors de l’accès à une application PowerApps
  • DavidZed

    Membre
    4 octobre 2024 à 10h35 en réponse à: Canvas bug de calcul des tabindex ?

    Au temps pour moi 🙂

    du coup, est-ce que ce paramètre serait en cause ?

  • Hello,

    Distinct() ne fonctionne qu’avec une seule colonne, si tu veux obtenir une table qui recense les combinaisons uniques de plusieurs colonne il faudra utiliser la fonction GroupBy (lien vers MS learn).

    En faisant :

    GroupBy(ListeFormations ; Ref_tech1 ; Ref_tech2 ; Details)

    Tu obtiendras une table avec ces combinaisons uniques le champ Details contiendra toutes les autres colonnes au format table, si tu n’as pas besoin de ces sous enregistrements, tu peux ajouter un DropColumns() pour l’enlever :

    DropColumns(GroupBy(ListeFormations ; Ref_tech1 ; Ref_tech2 ; Details) ; Details)

    Enfaisant des recherches sur GroupBy dans ce forum tu trouveras plus d’exemples.

  • DavidZed

    Membre
    3 octobre 2024 à 20h43 en réponse à: Problème écriture [Collection].champ

    Si les deux collections proviennent de la même source de données (Mêmes noms de colonne et même clef primaire), tu peux ajouter les résultats de la collection 2 à la collection 1

    Collect(Collection1;Collection2)

    Si tu veux remplacer les valeurs de la collection 1 par celles de la collection 2 :

    ClearCollect(Collection1;Collection2)

    Si tu veux mettre à jour la collection 1 avec les enregistrements de la collection 2 (ou les créer s’ils n’existent pas dans la collection 1) :

    Patch(Collection1; Collection2)

    Si tu veux mettre à jour une colonne de la collection 1 avec les valeurs de la collection 2 :

    Patch(Collection1 ; ForAll(Collection2 As Col2 ; {Id: Col2.Id , Name: Col2.Name} ))

    Si par contre les collections ne sont pas ISO, tu peux faire du UpdateIf

    ForAll(Collection2 As Col2, UpdateIf(Collection1; Id=Col2.Id ; {Name : Col2.Name} ))

    Mais ce sera beaucoup plus efficace avec des collections iso

Page 1 sur 68