- This topic has 3 replies, 3 voices, and was last updated 2 years, 10 months ago by
Xavier Allart.
-
AuthorPosts
-
17 November 2022 at 13 h 08 min #122526
aurelien.caiez.caiez
ParticipantBonjour,
Je rencontre un problème dont voici un exemple :
id niveau
234 1
234 2
456 2
678 1
678 2
909 1Voici pour exemple ma table, j’aimerai faire une mesure qui me donne le nombre distinct d’id qui a en valeur niveau uniquement 1 (c’est à dire que si j’ai une ligne avec cet id mais avec le niveau 2, je ne le comptabilise pas).
Ici le résultat serait donc
Nombre niveau 1 : 1 (id 909)
Nombre niveau 2 : 3 (id 234, 456 et 678)Merci par avance pour votre aide 🙂
19 November 2022 at 20 h 28 min #122606Éric Ste-Croix
ParticipantBonjour,
Considerant que la mesure a developper implique une dependance entre les lignes, je vous propose une autre facon d’approcher la situation:
Dans l’étape de transformation de données (Code M), creer une colonne supplementaire dans votre table de données afin d’identifier le niveau le plus elevé et ce, pour chaque ID.
Les principales étapes sont :
Tri par ID
Ajouts d’index (2) – base 0 et base 1
Fusion de la table avec elle meme sur la base des index
Identification des lignes ID comportant le plus haut niveau en comparant le ID ligne courante vs ligne precedenteEn DAX, creation d’une mesure ne considerant que les ID avec le plus haut niveau
Nombre Niveau Methode =
CALCULATE(COUNT(Fact_Table[NIVEAU]),Fact_Table[Niveau le plus eleve] = “True”)J’ai realise ces etapes dans le fichier joint
En esperant que cela vous aidera
Cordialement
Attachments:
You must be logged in to view attached files.8 December 2022 at 8 h 10 min #123400aurelien.caiez.caiez
ParticipantBonjour Éric Ste-Croix,
Nickel, merci pour l’astuce 🙂 désolé pour le temps de retour.
Cdt.
21 December 2022 at 0 h 44 min #124059Xavier Allart
ParticipantBonjour
Je voulais proposer (un peu tardivement) une autre solution. Mais je ne sais pas, au niveau mémoire temps de traitement, ce qui est préférable entre les 2 solutions. Si vous pouvez m’éclairer, Merci
Dans l’étape de transformation de données (Code M),
Créer une requête par référence à Fact_Table, nommer cette nouvelle NiveauMax
Sur la requête NiveauMax utiliser la commande Transformer > Grouper par
De base
Grouper par ID
Nouveau nom de la colonne : Niveau
Opération : Max
Colonne : NIVEAUBonnes fetes
CordialementAttachments:
You must be logged in to view attached files. -
AuthorPosts
- You must be logged in to reply to this topic.




