ypicot
MembreRéponses céées sur le Forum
-
ypicot
Membre6 septembre 2023 à 19h27 en réponse à: Relation entre plusieurs listes pour utilisation avec Power appsBonjour
Une des idées fondamentale quand on conçoit sa structure de données est que
Une valeur (métier) n’apparait qu’à un seul endroit.
Donc, pas de duplication de données. Ici les valeurs contenues dans “Nom zone”, “Numéro zone”, … apparaissent à plusieurs endroits, ce qui te conduit à tous ces problèmes. D’où la solution de Redkap, qui propose d’utiliser le champ ID de la liste parc. Ce champ permet d’identifier un parc de façon unique.
Dans la liste Centre, tu créés une colonne ParcId, qui contiendra la valeur ID du parc correspondant.
Donc, si tu veux qu’un centre change de parc, tu as juste la valeur ParcId à modifier.
Cela débouche après sur une autre “difficulté” tout à fait classique : comment afficher dans une même galerie les données d’un centre et du parc correspondant. Cela peut se faire de plusieurs manières, l’utilisation de la fonction Lookup (également indiquée par Redkap) est une des plus simples à mettre en oeuvre. C’est l’équivalent du recherchev d’Excel.
CommentID=vz2nxWjoiKGiTu0, PostID=ScEBXbMgfbT0yNB
-
Bonjour
Il faut déjà bien voir que TOTALMTD est un raccourci (on parle de “sucre syntaxique”) de CALCULATE + DATESMTD.
Or qui dit CALCULATE dit changement de contexte de filtre. Dans ton visuel table, pas de problème : le contexte de filtre est celui appliqué par ladite table, du coup le TOTALMTD retourne la valeur attendu.
Mais quel est le contexte de filtre qui est appliqué dans ta carte ? Réponse, aucun par défaut. Par contre, si tu cliques sur un élément de la table, tu introduis (grace aux dépendances entre les visuels) un contexte de filtre sur la carte, et celle-ci te retourne la valeur correspondante.
CommentID=PkQHVh7QB2zHsGa, PostID=O9koc9x6UVD9PD0
-
Bonjour
Une petite précision : la mesure [Toggle] peut prendre les valeurs “Light” ou “” (c’est à dire Blank). On n’a pas de Blank(light).
Si [Toggle] vaut “Light”, le filtre du CALCULATE ne fait apparaitre qu’une seule ligne (celle pour laquelle [Opposite Name] vaut “Dark), qui est donc celle qui est récupérée par le MAX.
Si [Toggle] vaut Blank, il n’y a pas de filtre sur le CALCULATE, donc on prend le MAX de [Opposite Name] dans l’ordre alphabétique, c’est à dire “Light”.
J’espère avoir été comme un des thèmes, c’est à dire clair 😉
CommentID=Rchss2lyKJSHSoc, PostID=RB1sVNrpCUeTKS7
-
ypicot
Membre31 août 2023 à 21h03 en réponse à: Liste Sharepoint qui vient interroger une autre liste.Bonjour
J’espère que je n’arrive pas trop après la bataille.
Si je comprends bien, tu veux avoir dans la même collection (ou la même gallerie) à la fois les infos qui viennent de employee_allocated et de work_order ? Si tu parles un peu SQL, l’équivalent d’un JOIN ?
C’est bien ça ?
Si oui, il faut jouer avec AddColumn et Ungroup. Je détaillerai si cela correspond à ta question.
CommentID=YDOH4hBQOUEdZ42, PostID=jx0I79hrHOhFkti
-
Bonjour
Hélas, difficile de te répondre sans avoir le nez sur ton poste pour regarder exactement quel est le contexte dans lequel tu travailles. Il y a tellement de “petites choses” (emplacement des données, puissance du serveur, nature des traitements, fréquence d’actualisation des données, …).
Au moins, si j’ai bien compris, tu as résolu ton pb. Et 12M de lignes, cela reste relativement gérable si tu es connecté à une BdD (moins si tu es en CSV, mais c’est une autre histoire).
CommentID=B2QN0vcEhn0kcqm, PostID=apjcFKO3Lo0Zt3I
-
Alors là, je ne vois pas trop.
J’ai juste créé une mesure reprenant le résultat de la variable Lines :
Spark =nVAR Lines = "15,27 30,30 45,29 60,19 75,20 90,14 105,0 120,13 135,6 150,34"nVAR SVGImageURL =n "data:image/svg+xml;utf8," &n "<svg xmlns='http://www.w3.org/2000/svg' x='20px' y='100px' viewBox='0 0 150 50'>" &n "<polyline fill='navy' fill-opacity='0.3' stroke='navy' stroke-width='3' points='0,50 " & Lines & " 150,50'/>" &n "</svg>"nRETURN SVGImageURL
Je n’ai pas trouvé à quoi correspond le paramètre Z à la fin de l’attribut point, mais sa présence ou son absence ne semble pas poser problème.
Le résultat passe sans problème.
En plus du type d’image et de l’url de l’image (définie à Spark), la seule valeur que j’ai modifiée (par rapport aux valeurs par défaut) est la taille.
Peux-tu créer une nouvelle carte en modifiant le moins de paramètres possibles ?
CommentID=7G0iG6OPIF7V4Cp, PostID=JZlX8tPYzDGlNLc
-
Bonjour
Passer par PQY est effectivement une solution possible, mais attention si tu as de gros volumes de données. D’une manière générale (il y a toujours des cas particuliers), plus tu fais tes traitements près de la BdD (donc, idéalement dans la BdD), plus lesdits traitements seront efficaces.
Après, si tu as moins de 100 000 lignes, tu te moques un peu de l’efficacité.
CommentID=etTbcSTRPr4l8UR, PostID=apjcFKO3Lo0Zt3I
-
Bonjour
Difficile de répondre en regardant juste la formule.
Piste à explorer : regarder la valeur des variables intermédiaires.
Par exemple, remplacer le
RETURN SVGImageURL
par
RETURN Lines
et regarder le résultat dans une carte. Tu devrais avoir la liste des valeurs. X, Y et années.Si tu n’as rien (ou pas cette liste des valeurs), il faut remonter d’un cran et regarder SparklineTable (par contre, cette variable est à vérifier dans une table et non dans une carte), et remonter ainsi jusqu’à la variable (et donc la ligne de code) fautive.
CommentID=1Ip6TqgdgnYIT8B, PostID=JZlX8tPYzDGlNLc
-
Bonjour
Difficile de répondre de manière précise sans avoir un exemple de données, mais dans tous les cas, le pb des lignes dupliquées vient du JOIN avec des tables qui ont une cardinalité 1 à N (en d’autres termes : une ligne d’une table est en relation avec plusieurs lignes de l’autre table).
Cela peut effectivement se résoudre avec un DISTINCT dans de très nombeux cas.
CommentID=vBDfJtYxYcQp7sT, PostID=apjcFKO3Lo0Zt3I
-
Quelque chose comme ça ?
Je suppose que les données sont au format tabulaire, c’est à dire comme ceci (sinon, tu ne peux pas avoir “Catégorie” comme axe d’analyse).
Une première mesure pour la somme “normale” :
Somme = SUM( Data[Montant] )
Après, cela devient un peu plus complexe.
L’idée est de remplacer le total de la matrice (qui correspond à un contexte dans lequel la catégorie n’intervient pas) par ta valeur check.Somme et Check =n// on recalcule "à la main" les sommes en fonction de leur catégorienVAR __Planif = CALCULATE( [Somme], Data[Catégorie]="Planifié" )nVAR __Real = CALCULATE( [Somme], Data[Catégorie]="Réalisé" )nVAR __Result = IF(n ISFILTERED( Data[Catégorie] ), // si on est dans une catégorie n [Somme], // on affiche la mesure normalen IF( // sinon, affichage en fonction de l'écart entre les deux variablesn ABS( Planif - Real) <= 1,n "Ok",n "Pas bon"n )n)nRETURN __Result
Attention, cette formule est relativement fragile (notamment à cause du codage en dur de la catégorie), mais c’est la première qui m’est venue à l’esprit. Reste à savoir si elle convient à ton contexte.
CommentID=KRLFX3GyUU8HLUK, PostID=RuQ99ozFdTAFpNo
-
Bonjour
L’astuce proposée par David est excellente, et c’est à ma connaissance le seul moyen d’avoir du texte sur l’axe des Y (PBI impose d’avoir une valeur numérique sur l’axe des Y).
Pour obtenir un visuel similaire à celui que tu désires, il est également nécessaire de catégoriser tes données.
Cela peut se faire en empilant les if en Power Query.
En utilisant avec la fonction SELECT de DAX, cela ressemblerait à
SELECT(n True,n MaVal<10, 0,n MaVal<20, 10,n MaVal<30, 20,n MaVal<40, 30,n 50n)
CommentID=NhMT56Z8rfoYuPD, PostID=zgtL4VpJMXNCQnE
-
Bonjour
Ce comportement est celui d’une colonne date qui est reliée (dans la vue modèle) à une table de dates.
L’usage d’une table de dates est indispensable quand tu dois utiliser des fonctions d’analyse temporelle telle que SAMEPERIODLASTYEAR ou DATESYTD, et fortement conseillé dès que tu manipules des dates.
La mauvaise solution serait de supprimer le lien entre la table de dates et dStartTime.
La bonne solution est de masquer dStartTime dans la vue modèle, et de n’utiliser que les données issues de la table de dates, et éventuellement de reconstituer ta hiérarchie dans celle-ci.
CommentID=E2iMEV4UhvFPG2C, PostID=WkG0GxXjGX9y7pF
-
Surprenant, je n’ai pas le même résultat que toi : si je décoche l’option puis que j’actualise la source de données et supprime / remet le contrôle, l’heure n’apparait plus.
CommentID=HGMZUBTXvIlDHHk, PostID=UduOrlXaPph8LjI
-
ypicot
Membre1 septembre 2023 à 14h00 en réponse à: [Résolu] Power apps : 3 Boutons pour une case texteAstucieux
SubCommentID=BahxL0U0gcqQQ2L, CommentID=LQzxNrdUB3DDiyv, PostID=iC90uhr59vbQnTU
-
ypicot
Membre1 septembre 2023 à 12h33 en réponse à: [Résolu] Power apps : 3 Boutons pour une case texteBonjour
Petit warning : quand on utilise la propriété Update, la nouvelle valeur n’est pas immédiatement visible dans la DataCardValue. Elle n’apparait qu’une fois qu’on a fait un SubmitForm, ce qui peut perturber l’utilisateur.
SubCommentID=rIoJDki37lbSL62, CommentID=tD7GSKddBTrpmOS, PostID=iC90uhr59vbQnTU