Réponses céées sur le Forum

Page 4 sur 7
  • ypicot

    Membre
    6 septembre 2023 à 19h27 en réponse à: Relation entre plusieurs listes pour utilisation avec Power apps

    Bonjour

    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

  • ypicot

    Membre
    3 septembre 2023 à 20h28 en réponse à: Total MTD = vide ?

    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

  • ypicot

    Membre
    3 septembre 2023 à 20h06 en réponse à: Aide formule DAX

    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

    Membre
    31 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

  • ypicot

    Membre
    7 août 2023 à 7h52 en réponse à: Lignes doublées import SQL

    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

  • ypicot

    Membre
    7 août 2023 à 7h45 en réponse à: Nouvelle carte et mesure SPARK

    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

  • ypicot

    Membre
    3 août 2023 à 20h28 en réponse à: Lignes doublées import SQL

    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

  • ypicot

    Membre
    3 août 2023 à 20h24 en réponse à: Nouvelle carte et mesure SPARK

    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

  • ypicot

    Membre
    11 juillet 2023 à 17h19 en réponse à: Lignes doublées import SQL

    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

  • ypicot

    Membre
    29 juin 2023 à 12h51 en réponse à: Matrice Power BI – balance de compte

    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

  • ypicot

    Membre
    17 juin 2023 à 6h59 en réponse à: Graphe avec texte en axe Y

    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

  • ypicot

    Membre
    17 juin 2023 à 6h47 en réponse à: Format colonne date

    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

  • ypicot

    Membre
    11 juin 2023 à 16h00 en réponse à: Modification de format d'un DataCard

    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

    Membre
    1 septembre 2023 à 14h00 en réponse à: [Résolu] Power apps : 3 Boutons pour une case texte

    Astucieux

    SubCommentID=BahxL0U0gcqQQ2L, CommentID=LQzxNrdUB3DDiyv, PostID=iC90uhr59vbQnTU

  • ypicot

    Membre
    1 septembre 2023 à 12h33 en réponse à: [Résolu] Power apps : 3 Boutons pour une case texte

    Bonjour

    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

Page 4 sur 7