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 :

Utilisation de Filter [2008]


Sujet :

SSAS

  1. #1
    Membre à l'essai
    Inscrit en
    Juin 2005
    Messages
    35
    Détails du profil
    Informations forums :
    Inscription : Juin 2005
    Messages : 35
    Points : 23
    Points
    23
    Par défaut Utilisation de Filter
    Bonjour,

    je ne comprends pas pourquoi le résultat obtenu n'est pas celui souhaité.
    J'ai l'impression qu'un filter ne fonctionne pas.

    Je souhaite afficher les résultats selon le pourcentage, si supérieur à 10, on affiche la ligne, sinon on regroupe tous dans une même ligne.

    Le premier filter fonctionne bien, mais le second de la requête ne fonctionne pas, où la mesure "Ok Lib" doit être différent de 1.

    voici la requête MDX :
    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
    with set [MyPanel] as {([Repré Equipe].[LibEquipes].[EQUIPE].&[24].&[1er Niveau],[Enseignes].[LIB CPTE].[All])}
     
    member Measures.[Cumul CA NET Année] as sum ({strtomember(@TempsDebut):strtomember(@TempsFin)},[Measures].[CA NET])
     
    member [measures].[Total CA NET] as sum(  [MyPanel],Measures.[Cumul CA NET Année])
     
    member [measures].[Pour CA NET] as (Measures.[Cumul CA NET Année] /  [measures].[Total CA NET] * 100)
     
    member [measures].[Ok Lib] as iif([measures].[Pour CA NET] > 10,1,2)
     
    select {[measures].[Pour CA NET], Measures.[Cumul CA NET Année] } on columns,
    NON EMPTY 
    {filter
    (([Repré Equipe].[LibEquipes].[EQUIPE].&[24].&[1er Niveau],[Enseignes].[LIB CPTE].[LIB CPTE]), [measures].[Ok Lib] = 1),
     
    filter
    (([Repré Equipe].[LibEquipes].[EQUIPE].&[24].&[1er Niveau],[Enseignes].[LIB CPTE].[ALL]), [measures].[Ok Lib] <> 1)
     }  
    on rows 
    FROM [Caclisof] where {strtomember (@CodeDepart)}

    Merci d'avance pour votre aide.
    Si vous avez besoin de plus d'informations, je peux vous en dire plus.

    Syl

  2. #2
    Membre du Club
    Homme Profil pro
    Inscrit en
    Novembre 2011
    Messages
    48
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations forums :
    Inscription : Novembre 2011
    Messages : 48
    Points : 68
    Points
    68
    Par défaut
    je dis peut-etre une bétise mais dans ton second filter tu prends le membre all de ta dimension, donc tu as tout le CA donc tu auras tout le temps 100% non?
    Que cherche tu a faire avec le second filter?afficher le all seulement si l'un des enfant est inferieur a 10%?

  3. #3
    Membre à l'essai
    Inscrit en
    Juin 2005
    Messages
    35
    Détails du profil
    Informations forums :
    Inscription : Juin 2005
    Messages : 35
    Points : 23
    Points
    23
    Par défaut
    Merci pour votre aide.

    Pour le second filtre, si on le met égal à 1, on obtient bien 100%.
    Je n'avais pas testé dans ce sens.

    Mais alors comment on fait pour obtenir la somme de toutes les lignes < à 10%.

    Là, je ne vois pas trop.

  4. #4
    Membre émérite Avatar de FrancoisJehl
    Homme Profil pro
    BI Engineer
    Inscrit en
    Juillet 2009
    Messages
    1 485
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : BI Engineer
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Juillet 2009
    Messages : 1 485
    Points : 2 883
    Points
    2 883
    Par défaut
    Je souhaite afficher les résultats selon le pourcentage, si supérieur à 10, on affiche la ligne, sinon on regroupe tous dans une même ligne.
    Donc ça veut dire qu'à un moment donné tu dois faire un CREATE MEMBER sur la hiérarchie en question, qui s'appellerait par exemple [Autres < 10%] et comprendrait un Aggregate du Filter sur ton ratio <10. Quant à ta mesure [Pour CA Net] tu pourrais la définir comme étant égale à (c'est peut être faux, je tape comme je le comprends).

    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
    21
    22
    23
    24
    25
    26
    27
    28
    29
     
    WITH
    MEMBER [Measures].[Ratio]
    AS
    [Measures].[Cumul CA NET Année] /  [Measures].[Total CA NET]
     
    MEMBER [Enseignes].[LIB CPTE].[Autres <10%]
    AS
    Aggregate
    (
       Filter
       (
          [Enseignes].[LIB CPTE].[LIB CPTE],
          [Measures].[Ratio]>0.1
       )
    )
     
     
    MEMBER [Pour CA Net]
    AS
    IIF
    (
       [Measures].[Ratio]>0.1
       OR 
       [Enseignes].[LIB CPTE].CurrentMember 
       IS [Enseignes].[LIB CPTE].[Autres <10%]
       [Measures].[Ratio],
       Null
    )

  5. #5
    Membre à l'essai
    Inscrit en
    Juin 2005
    Messages
    35
    Détails du profil
    Informations forums :
    Inscription : Juin 2005
    Messages : 35
    Points : 23
    Points
    23
    Par défaut
    Ok, merci.

    je vais essayer cette solution.

    Syl

  6. #6
    Membre à l'essai
    Inscrit en
    Juin 2005
    Messages
    35
    Détails du profil
    Informations forums :
    Inscription : Juin 2005
    Messages : 35
    Points : 23
    Points
    23
    Par défaut Résolu
    Merci beaucoup.

    ça fonctionne.
    J'obtiens ce que je souhaitais.

  7. #7
    Membre émérite Avatar de FrancoisJehl
    Homme Profil pro
    BI Engineer
    Inscrit en
    Juillet 2009
    Messages
    1 485
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : BI Engineer
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Juillet 2009
    Messages : 1 485
    Points : 2 883
    Points
    2 883
    Par défaut
    De rien . Tu le passes à ?

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

Discussions similaires

  1. MDX - utilisation de FILTER
    Par gb78630 dans le forum SSAS
    Réponses: 4
    Dernier message: 13/10/2014, 13h30
  2. Utilisation de filter() dans une boucle foreach
    Par webcreanord dans le forum Langage
    Réponses: 7
    Dernier message: 19/03/2013, 15h56
  3. Réponses: 11
    Dernier message: 07/07/2008, 11h07
  4. [MDX] Utilisation de filter()
    Par Jinroh77 dans le forum SSAS
    Réponses: 2
    Dernier message: 25/05/2008, 22h56
  5. Réponses: 6
    Dernier message: 18/06/2007, 23h55

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