Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Bonjour,
J'ai le tableau suivant :
Je souhaiterai afficher uniquement les 3 premiers c'est à dire
Nom - prenom Mois Panier moyen Rank(classement)
-DARRAS Sophie fev. 49,20€ 1
- Bedos Frederic oct. 47,97€ 2
- AKANNI Ridwane dec. 46,06€ 3
Cependant lorsque j'utilise la fonction "RANK" mon résultat est faussé : rank(sum([_CA TTC net <>0]) / sum([_Nb. Tickets <>0])
Bonjour
le problème vient de l'ajout de la dimension Mois
Voir ex ci dessous qui fonctionne pour moi :
J'ai une dimension conseiller limitée à 3
une mesure Sum( CA prospect)
une mesure Rank
Et j'affiche le mois avec la fonction :
FirstSortedValue(Mois,
aggr(sum([CA prospect]),Conseiller,Mois))
Bonjour Youssef;
Désolée pour la réponse tardive !
Voici mon script de chargement:
Temp_top_indicateurs:
Let varCurrentYear = Year(Today());
LOAD
[Id. Collab],
weekyear(Jour) & '-' & right('0' & week(Jour),2) as "Année-semaine (cal)2",
month(Jour) as "Mois (cal)2",
sum([_CA TTC net <>0]) / sum([_Nb. Tickets <>0]) as "Panier moyen"
From 'lib://QVData/Fait.qvd' (qvd)
Where weekyear(Jour)=$(varCurrentYear)
group by [Id. Collab],
weekyear(Jour) & '-' & right('0' & week(Jour),2),
month(Jour);
;
Top_indicateurs:
NoConcatenate
LOAD *,
if([Mois (cal)2]= Previous([Mois (cal)2]), Peek('Rank')+1,1) as Rank
Resident Temp_top_indicateurs
Order by [Id. Collab], "Panier moyen" desc;
DROP Table Temp_top_indicateurs;
Et voici quelques données
Top Indicateur:
LOAD * INLINE [
ID. Collab, Panier moyen,mois(cal)2
2,105.6,févr.
1, 85.3,mars
38,58.62,avr.
32, 57.71,nov,
2, 57.08,août
45, 56.13,juil.
32, 55.40,janv.
2, 54.5,avril
23, 54.44,mai
];
Collab:
LOAD * INLINE [
ID. Collab, Nom, "Prénom"
2, DARRAS,Sophie
1, STOLIARSKI,Cyril
38, NABET, Jéremie
32, MOSCA,Fabio
2, DARRAS,Sophie
45, BEDOS,Fréderic
32, MOSCA,Fabio
2,DARRAS,Sophie
23,DEVEZE,Blandine
];
Et voici ce que je devrais obtenir :
ID. Collab Nom-Prénom Panier moyen Mois(cal)2 Classement
2 DARRAS Sophie 105,6 févr. 1
1 STIOLIARKSKI Cyril 85,3 mars 2
38 NABET Jérémie 58,61 avr. 3
Sauf que pour l'instant j'obtiens ceci et je ne comprends pas :
Bonjour Bruno ,
Comme je l'ai expliqué un peu plus haut à Youssef, j'ai décidé de changer mon approche par rapport au problème que j'ai.
Cependant je penses y être presque, sauf que je bloque sur un truc et je ne sais pas où.
Voici un exemple de données :
Top Indicateur:
LOAD * INLINE [
ID. Collab, Panier moyen,mois(cal)2
2,105.6,févr.
1, 85.3,mars
38,58.62,avr.
32, 57.71,nov,
2, 57.08,août
45, 56.13,juil.
32, 55.40,janv.
2, 54.5,avril
23, 54.44,mai
];
Collab:
LOAD * INLINE [
ID. Collab, Nom, "Prénom"
2, DARRAS,Sophie
1, STOLIARSKI,Cyril
38, NABET, Jéremie
32, MOSCA,Fabio
2, DARRAS,Sophie
45, BEDOS,Fréderic
32, MOSCA,Fabio
2,DARRAS,Sophie
23,DEVEZE,Blandine
];
Et voici ce que je devrais obtenir :
ID. Collab Nom-Prénom Panier moyen Mois(cal)2 Classement
2 DARRAS Sophie 105,6 févr. 1
1 STIOLIARKSKI Cyril 85,3 mars 2
38 NABET Jérémie 58,61 avr. 3
Sauf que pour l'instant j'obtiens ceci et je ne comprends pas :
Merci d'avance pour éclaircissements
Salut,
utilise plutôt ça comme "Top_indicateurs", il faut ordonner en premier lieu par "Panier moyen" et j'ai simplifier l'expression pour Rank :
Top_indicateurs:
NoConcatenate
LOAD *,
RowNo() as Rank
Resident Temp_top_indicateurs
Order by "Panier moyen" desc, [Id. Collab];
Bonjour Juliana
Voici en pièce jointe une app test avec le tableau que tu demandes
ID : Dimension ID avec une limitation à 3 sur la dimension
Nom Prénom : Dimension Nom & ' ' & "Prénom"
Panier Moyen : Mesure
max(aggr(([Panier moyen]),[mois(cal)2],[ID. Collab]))
Mois : Mesure
FirstSortedValue([mois(cal)2],- aggr(max([Panier moyen]),[mois(cal)2],[ID. Collab]))
Classement : Mesure
rank (total max(aggr(([Panier moyen]),[mois(cal)2],[ID. Collab])) )
et tu auras ceci :
Bonjour Bruno,
Merci pour ton retour, ta méthode ne fonctionne pas exactement comme je le souhaiterai car je ne sais pas pourquoi mais il y'a toujours un problème avec la dimension mois.
Mais je te remercie pour tes retours
Bonjour
Attention dans mon modèle le champ Mois n'est pas une dimension mais une Mesure c'est peut être pour çà que cela ne marche pas
Bruno
Bonjour Bruno,
Désolé pour le retour tardif de ma part.
J'ai pu tester ta solution et elle fonctionne parfaitement.
Cependant j'ai pu constater un soucis, c'est lorsqu'un ID est deux fois meilleur panier moyen de l'année ça pose problème.
Exemple ;
ID NOM - Prénom Panier moyen mois classement
2 DARRAS Sophie 105.60 fevr 1
2 DARRAS Sophie 90.30 mars 2
38 NABET Jérémie 81.20 avril 3
Lorsque j'utilise les formules au niveau des mesures et bien je perds la deuxième place DARRAS Sophie et elle est remplacé par un autre collaborateurs qui ne fais pas du tout des premiers au niveau du panier moyen.
Je me posais la question , si ce n'était pas du au FirstValue qui est utilisé dans la mesure "MOIS" ?
Merci d'avance
Bonjour
Oui je pense que c'est cette fonction qui du coup fausse l'affichage Et du coup là je n'ai pas de solution j'ai essayé plusieurs trucs et rien à faire je sèche ... désolé
Bruno
C'est normal, tu prends les ID correspondant au 3 premiers panier moyen. Tu auras donc également les panier moyen de ces ID pour les mois moins bon.
Essaye comme ceci (voir pièce jointe) :