IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

QlikView Discussion :

Problème de rang sur plusieurs dimensions


Sujet :

QlikView

  1. #1
    Membre éprouvé
    Profil pro
    Inscrit en
    Août 2002
    Messages
    83
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2002
    Messages : 83
    Par défaut Problème de rang sur plusieurs dimensions
    Bonjour à tous,


    Je recherche deséspérement une formule pour afficher le nombre de fois où un produit a généré le meilleur CA par rapport à une autre dimension dans une "straight table"

    Ex de données :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    LOAD * INLINE [
        PRODUIT, JOUR, CA
        A, 1, 32
        B, 1, 5
        C, 1, 3
        A, 2, 35
        B, 2, 12
        C, 2, 2
        A, 3, 15
        B, 3, 10
        C, 3, 30
    ];
    Au final , j'aimerais aboutir à ceci dans une table

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
     
    PRODUIT         NOMBRE DE FOIS où PRODUIT A REALISE LES MEILLEURS VENTES PAR PERIODE
    A                    2                           
    B                    0
    C                    1
    J'arrive par cette formule à retrouver le résultat dans un textbox , mais je n'arrive pas à transposer cette formule dans une table :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    Exemple pour produit A
     
    =
    sum({1<PRODUIT={"A"}>}
    if(aggr(max(aggr(sum(CA),PRODUIT,JOUR)),JOUR) = aggr(sum(CA),PRODUIT,JOUR),1))
    Par avance merci.

  2. #2
    Modérateur

    Inscrit en
    Octobre 2006
    Messages
    1 654
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 1 654
    Billets dans le blog
    6
    Par défaut
    Bonjour,

    Pourquoi pas un tableau avec "PRODUIT" comme dimension et
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    sum(
    aggr(
    if (rank(sum(CA)) = 1, 1)
    , JOUR, PRODUIT)
    )
    comme expression ?
    (en ne supprimant pas les valeurs à 0)

  3. #3
    Membre Expert
    Homme Profil pro
    Inscrit en
    Septembre 2008
    Messages
    940
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 940
    Par défaut
    Bonjour,
    Comme on compte sur une dimension (jour) non utilisée dans le graphique, ça ne marche pas.
    La solution consiste à créer une table avec le CA maxi de chaque journée dans le script :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    T1:
    LOAD * INLINE [PRODUIT, JOUR, CA
        A, 1, 32
        B, 1, 5
        C, 1, 3
        A, 2, 35
        B, 2, 12
        C, 2, 2
        A, 3, 15
        B, 3, 10
        C, 3, 30
    ];
    T2:
    Load JOUR,MAX(CA) as MaxJour Resident T1 group by JOUR;
    On a ainsi la connaissance immédiate du max de CA pour chaque jour.
    Il ne reste plus qu'à créer un graphique avec une dimension PRODUIT et une expression :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    sum(if(CA=MAxJour,1,0))
    Ne pas oublier de décocher "Supprimer les valeurs nulles" sur l'expression, dans l'onglet présentation

  4. #4
    Membre éprouvé
    Profil pro
    Inscrit en
    Août 2002
    Messages
    83
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2002
    Messages : 83
    Par défaut
    En fait, la solution de PhunkyBob marche parfaitement bien dans mon cas.

    Merci à lui pour sa réponse .

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [VxiR2] Problème avec rank() sur plusieurs dimensions
    Par NorocBzh dans le forum Webi
    Réponses: 2
    Dernier message: 24/12/2009, 15h39
  2. [MySQL] Problème requete SQL sur plusieurs tables
    Par Tiib_CD dans le forum Langage SQL
    Réponses: 30
    Dernier message: 21/12/2006, 16h52
  3. [Session] Problème de gestion sur plusieurs pages
    Par GLDavid dans le forum Tomcat et TomEE
    Réponses: 8
    Dernier message: 11/10/2006, 16h02
  4. problème avec un tableau à plusieurs dimensions
    Par lelutin dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 07/09/2006, 12h05
  5. suite au problème de requête sur plusieur table
    Par michelGProuq dans le forum Requêtes et SQL.
    Réponses: 1
    Dernier message: 07/07/2006, 16h19

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo