DavidZed
MembreRéponses céées sur le Forum
-
Hello, Alain Pujol ,
J’ai récemment utilisé cette fonction dans un projet, le point important à prendre en compte avec celle-ci, c’est qu’il faut, en quelque sorte, définir le datatype pour chaque colonne : Mettre Text(Value.Champ) si le champ est texte, Value(Value.Champ) si le champ est numérique…
Et il faut convertir le tout en Table().Voici la syntaxe que j’ai appliqué et qui fonctionne parfaitement (il y a certainement moyen de s’affranchir du ForAll) :
En-US:nClearCollect(ColJson,ForAll(Table(ParseJSON( [METTRE ICI LA SOURCE DU JSON])),{ChampNum1:Value(Value.ChampNum1),ChampTexte:Text(Value.ChampTexte),ChampNum2:Value(Value.ChampNum2)}))
Fr-FR:nClearCollect(ColJson;ForAll(Table(ParseJSON( [METTRE ICI LA SOURCE DU JSON]));{ChampNum1:Value(Value.ChampNum1);ChampTexte:Text(Value.ChampTexte);ChampNum2:Value(Value.ChampNum2)}))
CommentID=khqEiqqJDep0Z1T, PostID=AjfH65cUbDtDhvp
-
Hello Estelle ,
Dans ton Then, à la place de
''
, tu peux mettrenull
A tester mais il me semble que cela fonctionne
CommentID=5tMYGvZ2AbDWuXm, PostID=hbq1zMCY7cBFLAG
-
Je viens de tester ceci : qui fonctionne :
If(Self.Value;Reset(Checkbox2);;Reset(Checkbox2_1))
J’ai du mal à comprendre pourquoi tu utilises un toggle pour cette action, mais ça peut être intéressant.
Ca se rapproche de ce que j’ai l’habitude de faire avec un icone, qui change de picto en fonction des valeurs. Voici ce que tu peux faire pour gagner en ergonomie :
-
Sur ton toggle , dans le default, tu mets dans un And() les valeurs que tu souhaites avoir par défaut :
!Checkbox
pour avoir false par défaut etCheckBox
pour avoir true par défaut: -
Toujours pour le toggle, tu mets
If(Self.Value;Reset(Checkbox2);;Reset(Checkbox2_1);;Reset(Checkbox2_2);;Reset(Checkbox2_3))
dans le onselect -
Ensuite, pour chaque checkbox, dans le default, tu mets la valeur true ou false correspondante
-
En bonus, dans le Italic de chaque checkbox, tu peux ajouter :
-
!Self.Value
, si la valeur par défaut est true -
self.Value
si la valeur par défaut est false
-
de cette manière, l’utilisateur verra quelles options sont conforme à la valeur par défaut et lesquelles ne le sont pas (en italique)
et en cliquant sur la bascule, on revient aux valeurs par défaut : (Les deux premiers checkbox sont à false par défaut, les deux derniers à true) :
CommentID=DxqMqzPezgNtlmD, PostID=EUNmIERPpZR7Y15
-
-
et les deux checkbox à reset on bien
false
dans leur default ?CommentID=n2pNIjhXNupeqcC, PostID=EUNmIERPpZR7Y15
-
Bonjour Philippe CULOT ,
dans ta formule : if(CONDITION;THEN;ELSE), si tu mets false en condition, tu basculera toujours sur ELSE
Si tu veux tester la valeur du controle, il faut que tu mettes à la place : if(Self.Value;THEN;ELSE)
CommentID=7Fws2z5jyYK4UPH, PostID=EUNmIERPpZR7Y15
-
A ma connaissance, il n’y a pas de timepicker natif et tu ne vas pas pouvoir formater un text input au format “hh:mm”.
Tu peux t’inspirer de la manière dont est saisie l’heure dans un formulaire pour un champ date / heure : Un dropdown pour les heures avec en ‘Items’ : Sequence(24) et un autre pour les minutes avec ‘Items’: Sequence(60).
Et sur l’update du datacard on récupère la valeur du date picker, et des deux dropdowns : DateValue1.SelectedDate + Time(Value(HourValue1.Selected.Value), Value(MinuteValue1.Selected.Value), 0)
Pour ma part, je préfère utiliser 2 text inputs, un pour les heures, un pour les min, et de les mettre en format nombres, cela permet de saisir les horaires rapidement au clavier avec la tabulation pour passer des heures aux minutes.
Sinon voici un tuto pour faire un date picker en composant :
CommentID=GKwiDwVzoWHP8JL, PostID=oFCJ1xRCJOWKj5P
-
DavidZed
Membre19 octobre 2022 à 19h20 en réponse à: Filtrer les enregistrements disponibles d'un formulaireHello Matthias ,
Pour y parvenir, dans le items de ton combobox, il te faudra remplacer le choices(@interventions….) par la liste de tes équipements filtrée.
Admettons que tu ais dans ta liste ‘Equipement’ une colonne Type d’équipement qui est un choice : Outil/Consommable/…. et que tu ne veuilles proposer que les outils, tu vas devoir mettre :
Filter(Equipements ; ‘Type d’équipement’.Value = “Outil”)
Il est possible que cela génère une erreur dans le datacard, si c’est le cas, il faudra remplacer le .Value par un .Title
CommentID=mJfyNJ3dMxdrfX2, PostID=xGHm2IngeskEAvs
-
Hello Matthias,
Pour que ton formulaire affiche les champs, s’il est en mode ‘Edit’, il faut qu’un item de ta liste soit sélectionné par ton formulaire.
Tu peux essayer de faire ceci :
-
Ajoutes une galerie (ex : Gallery1)
-
Mets ta liste SP en source de cette galerie et sélectionne une disposition : par exemple titre et sous titre. Tu devrais voir les éléments de ta liste
-
Ensuite, dans le paramètre item de ton formulaire, inscris :
Gallery1.Selected
C’est ton item sélectionné : maintenant quand tu cliques dans la galerie, les données apparaitront sur le formulaire
Si ton problème est avec les formulaires Power Apps intégrés à SP, il faut vérifier dans les paramètres de ton forumulaire, dans ‘item’, que tu as bien la formule :
If(IsBlank(SharePointIntegration.Selected) || IsEmpty(SharePointIntegration.Selected),First([@Le_Nom_De_Ta_Liste]),SharePointIntegration.Selected)
CommentID=yrXxIotYDJa9gWU, PostID=c768M03A7F3oKYX
-
-
DavidZed
Membre19 octobre 2022 à 18h49 en réponse à: Utiliser la fonction Distinct sur une colonne Lookup Power AppsJe vois sur ton screen ou le combox parait vide : en fait il ne l’est pas (on le voit à l’ascenseur sur le coté droit), par contre les valeurs ne s’affichent pas.
Il y a deux possibilités :
-
soit il faut reparamétrer les champs de ton combobox (Display et search) : en passant ta source d’un choice() à la liste SP directement, le display aurait du passer de Value à Title (possible même que ce soit Result à cause du distinct)
-
Soit c’est un bug du combox, cela m’arrive assez souvent depuis quelques semaines dans les formulaires
CommentID=knPsSpL5QJOSZya, PostID=ZwbSt2VIi4Zd5uF
-
-
DavidZed
Membre18 octobre 2022 à 23h18 en réponse à: Créer une collection à partir de 2 combobox choix multipleHello Estelle,
A mon avis :
ForAll(ComboBox1.Selected.Value As ThisEmployé;ForAll(ComboBox2.Selected.Value As ThisFormation; Collect(colFinal,{Employé: ThisEmployé; Formation:ThisFormation})))
devrait fonctionner
CommentID=h1ncC6P9Mcr2Tba, PostID=clSjqEIejiTFZfC
-
DavidZed
Membre19 octobre 2022 à 18h59 en réponse à: Créer une collection à partir de 2 combobox choix multipleNormalement il n’y a pas de limite pour les combobox, mais il y en a une pour les dropdown (500 il me semble)
Si l’avertissement est signalé par un soulignement double bleu dans ta formule, il s’agit d’un avertissement lié à la délégation de la fonction à la base de donnée qui n’est pas possible.
En gros :
-
Quand la fonction est délégable : Le traitement de la requpete est fait pas la base de données (Dataverse ou sharepoint)
-
Quand la fonction n’est pas délégable, la base de donnée envoie toutes les données et c’est ton appli qui utilise ses ressources pour faire le tri
L’idéal étant de n’utiliser que des fonctions délégables, mais ce n’est pas toujours possible. Mais heureusement sur de faibles volumes de données, cela n’a que peu d’impact.
une explication détaillée ici avec les fonctions qui sont délégables et celles qui ne le sont pas : Présentation de la délégation dans une application canevas – Power Apps | Microsoft Learn
SubCommentID=yFmJsLXShHtCgcW, CommentID=h1ncC6P9Mcr2Tba, PostID=clSjqEIejiTFZfC
-
-
-
DavidZed
Membre18 octobre 2022 à 18h01 en réponse à: Utiliser la fonction Distinct sur une colonne Lookup Power AppsHello RANDRIATAHINA Charles ,
Tu peux faire un
Distinct('ListeA',Title)
, mais il y a plus pratique et efficace :Choices('ListeB';'Colonne loopkup vers A')
CommentID=cLemMCB3kPgXbEr, PostID=ZwbSt2VIi4Zd5uF
-
Ok !!!
J’ai mal compris le message initial, je croyais que tu chargeais tes sources dans des collections dans le onstart !
Ce qui est effectivement une solution, cependant, cela nécessiterait que tu remplaces ta source de données par la collection dans tous les objets de ton app où celle-ci est utilisée.
Cela-dit, tu ne feras que déplacer le problème, à ta place j’envisagerai d’utiliser une source de donnée qui est 100% disponible, exemple : faire un power automate plannifié, qui va lire les données de ton fichier excel et les synchroniser avec une liste sharepoint qui sera utilisée par l’appli.
CommentID=Xf0BjtCC6joSUcb, PostID=PTUabFutCXTPKGy
-
Je n’ai jamais eu à le faire, mais tu as des ressources intéressantes pour le Power Apps Source Code Tool ici :
Source code files for Canvas apps | Microsoft Power Apps
et là :
Power Apps Source Code Tool – Matthew Devaney
Attention, c’est encore expérimental et le remède pourrait-être pire que le mal ☠️
CommentID=LZS2BPng0E5ztnv, PostID=RPZOntVwlgbV6J7
-
Celui là a l’air assez complet, mais il y a moyen de le simplifier grandement si tu n’as pas besoin d’une synchro dans les deux sens.
SubCommentID=CMRNzHIkpwn56pc, CommentID=ADMeUy1F92HmJmH, PostID=PTUabFutCXTPKGy