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

SSAS Discussion :

Requête MDX - Moyenne Mobile [2008]


Sujet :

SSAS

  1. #1
    Invité
    Invité(e)
    Par défaut Requête MDX - Moyenne Mobile
    Bonjour,

    J'essaye d'effectuer une requête qui permet de faire une moyenne mobile de ventes par mois. Je divise donc la somme des ventes par 12 mois :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    SUM
            (
                LASTPERIODS(12,[DimDate].[Mois].CurrentMember),
                [Mesures].[QuantiteDeVentes]
            )/12
    Je souhaite maintenant rendre ce nombre de mois dynamique selon la présence de l'article.
    Exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Jan 2010 : 3 ventes (Aucune vente avant le mois de janvier)
    Fev 2010 : 4 ventes
    Mars 2010 : 1 vente
    
    Moyenne Mars 2010 affichée : (3+4+1)/12 = 0.66
    Moyenne Mars 2010 voulue : (3+4+1)/3 = 2.66
    Pouriez-vous m'aider à calculer en MDX ce nombre de mois svp ?

    Merci.

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour moi-même,

    Tu peux procéder de la manière suivante :
    - Créer un membre calculé calculant le nombre de mois à date
    - Taguer chaque vente du nombre de mois à date associé
    - Calculer le tag minimum afin d'avoir la date la plus ancienne (date de première vente)
    - Faire la différence entre la 1ere et la dernière mesure afin d'avoir le nombre de mois de présence de l'article

    Code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
     
    CREATE MEMBER CURRENTCUBE.[Mesures].[MonthsToDate]
    AS COUNT(NULL:[DimDate].[Mois].CurrentMember)
    ,
    VISIBLE=0;
     
    CREATE MEMBER CURRENTCUBE.[Mesures].[HadSale] AS
    IIF([Mesures].[QuantiteDeVentes]=0,NULL,[Mesures].[MonthsToDate])
    ,
    VISIBLE=0;
     
    CREATE MEMBER CURRENTCUBE.[Mesures].[MinDate] AS
    MIN(NULL:[DimDate].[Mois].CurrentMember, [Mesures].[HadSale])
    ,
    VISIBLE=0;
     
    CREATE MEMBER CURRENTCUBE.[Mesures].[Nb de mois de Presence] AS
    [Mesures].[MonthsToDate]-[Mesures].[MinDate]+1
    ,
    VISIBLE=0;
    Voilà la démarche que j'ai trouvé et qui fonctionne. Si vous en avez une plus optimisée, je suis preneur !

    Thibault.

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

Discussions similaires

  1. [mondrian] problème requête MDX
    Par nicolep dans le forum Alimentation
    Réponses: 3
    Dernier message: 11/04/2007, 12h31
  2. Calcul de moyenne mobile
    Par Kloun dans le forum Access
    Réponses: 4
    Dernier message: 27/02/2007, 10h24
  3. [VBA Excel] moyenne mobile paramétrable
    Par netsabes dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 01/09/2006, 22h22
  4. Requête sql, moyenne pondérée
    Par ouiffi dans le forum Langage SQL
    Réponses: 2
    Dernier message: 26/07/2006, 11h03
  5. Tableau et moyenne mobile
    Par mattoo dans le forum Algorithmes et structures de données
    Réponses: 9
    Dernier message: 03/05/2005, 16h28

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