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 :

[SSAS][2k5] Laisons entre faits et dimensions


Sujet :

SSAS

  1. #1
    Membre chevronné Avatar de Jinroh77
    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Février 2006
    Messages
    1 964
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Consultant en Business Intelligence

    Informations forums :
    Inscription : Février 2006
    Messages : 1 964
    Points : 2 145
    Points
    2 145
    Par défaut [SSAS][2k5] Laisons entre faits et dimensions
    Bonjour,
    Je suis dans une entreprise qui vend des prestations.
    Il y a déjà un cube en place, assez conséquent mais pas très bien construit.

    j'ai besoin, pour un rapport, de récupérer des mesures et de grouper cela de 2 manières différentes.
    1. valeurs liées à la zone géographique d'habitation du client.
    2. valeurs liées à la zone géograhique ou s'est réalisé la prestation.

    J'ai donc une dimension de client et une dimension d'affaire (où se réalise les prestations).
    Ensuite j'ai créé une dimension "Géographie - réalisation" et un "Géographie - client". Je fait enfin la liaison entre ces dimensions et ma table de fait via, la dimension d'affaire d'un côté et via la dimension de client de l'autre côté.

    Je chiffre arrive proprement, bien liés etc... tout va bien.
    Par contre lorsque je crée mon rapport, l'utilisateur sélectionne les zones géographiques. Evidement, elles sont communes pour la réalisation et le client.
    Par contre je ne peux pas lier mes 2 datasets à une seule dimension géographique commune, chacune à besoin de sa propre dimension....

    Comment faire ??
    Est-il possible d'utiliser une dimension "géographie" globale (qui existe déjà) et de récupérer juste le nom des membres pour les attribuer aux 2 dimensions géographiques spécifiques ???

    Merci pour vos idées.

  2. #2
    Membre éclairé
    Avatar de Reskibil
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    561
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mai 2007
    Messages : 561
    Points : 815
    Points
    815
    Par défaut
    C'est le meme probleme que les dimensions de temps de multiples (il y a un post la dessus qui pourrait peut etre t'aider).

    En fait ce que tu voudrais, c'est que l'utilisateur choisisse une zone geographique dans un parametre et que cette zone soit utilisée dans tes dataset pour filtrer les 2 dimensions avec la meme valeur, c'est ca ?

    Si oui, ca peut se faire avec des dataset en OLE DB en entrant en dur la hierarchie et en appelant la valeur du parametre geographie pour compléter le membre.

    J'ai expliqué cette technique ici :
    http://www.developpez.net/forums/sho...d.php?t=519976

    Si tu as des questions, n'hésites pas.

  3. #3
    Membre chevronné Avatar de Jinroh77
    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Février 2006
    Messages
    1 964
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Consultant en Business Intelligence

    Informations forums :
    Inscription : Février 2006
    Messages : 1 964
    Points : 2 145
    Points
    2 145
    Par défaut
    Citation Envoyé par Reskibil Voir le message
    En fait ce que tu voudrais, c'est que l'utilisateur choisisse une zone geographique dans un parametre et que cette zone soit utilisée dans tes dataset pour filtrer les 2 dimensions avec la meme valeur, c'est ca ?
    C'est exactement cela.
    Je vais regarder l'autre topic avec attention.

    Pendant ce temps j'ai trouvé un début d'une autre méthode (je en sais pas si c'est la même que dans l'autre topic).
    Elle consiste en cela :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    filter([Geographie - Societe].[Region].Members
    		, Val([Geographie - Societe].[Region].CurrentMember.Properties("KeyColumns")) 
    				=  Val([Geographie].[Geo].[Region].&[4].Properties("KeyColumns")) )
    J'en suis au moment ou je remplace "[Geographie].[Geo].[Region].&[4]" par un paramètre (ok) à valeurs multiple (moins sûr..).

    Merci

  4. #4
    Membre éclairé
    Avatar de Reskibil
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    561
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mai 2007
    Messages : 561
    Points : 815
    Points
    815
    Par défaut
    Ah ! Par contre ma technique ne marche que pour les parametres qui ne sont pas multi-value puisque tu crée le membre de toute pièce. Pour du multi-value, là par contre je sais pas trop (j'ai jamais eu le cas donc me usis pas trop penché dessus).

    Edit :

    Ton code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    filter([Geographie - Societe].[Region].Members
    		, Val([Geographie - Societe].[Region].CurrentMember.Properties("KeyColumns")) 
    				=  Val([Geographie].[Geo].[Region].&[4].Properties("KeyColumns")) )
    Va t'afficher tous les membres pour lesquels les 2 zones geographiques sont égaux donc il faut rajouter un filtre supplémentaire sur l'un ou l'autre. D'autre part, je peux me tromper mais il me semble me souvenir qu'un filter avec un multi-value, ca marche pas des masses. A verifier.

  5. #5
    Membre chevronné Avatar de Jinroh77
    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Février 2006
    Messages
    1 964
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Consultant en Business Intelligence

    Informations forums :
    Inscription : Février 2006
    Messages : 1 964
    Points : 2 145
    Points
    2 145
    Par défaut
    Effectivement, je n'ai pas précisé mais j'ai besoin du multi-value. Je ressayerais ta méthode pour un autre cas.

    Concernant mon code, je filtre comme cela sur un dataset
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    filter([Geographie - Societe].[Region].Members
    		, Val([Geographie - Societe].[Region].CurrentMember.Properties("KeyColumns")) 
    				=  Val([Geographie].[Geo].[Region].&[4].Properties("KeyColumns")) )
    et sur le second
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    filter([Geographie - Affaire].[Region].Members
    		, Val([Geographie - Affaire].[Region].CurrentMember.Properties("KeyColumns")) 
    				=  Val([Geographie].[Geo].[Region].&[4].Properties("KeyColumns")) )
    Dans ce cas, mon filtre est effectif des 2 côtés.
    Le KeyColumns est exactement le même des 2 côtés.

    Mais ensuite je n'arrive pas à utiliser un STRTOSET et placer mon paramètre à
    valeur multiple dedans

    EDIT : d'habitude, pour utiliser le multi-value, je met cela dans le FROM
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    SELECT NON EMPTY {
        [Measures]....
        } ON 0, 
    NON EMPTY {
    	[Dim]...
    	} ON 1
     
    FROM ( SELECT (STRTOSET(@VarsurDim)) ON COLUMNS
    FROM [MonCube])

Discussions similaires

  1. Réponses: 2
    Dernier message: 02/07/2009, 09h54
  2. [SSAS] [2K5] Hiérarchie entre 2 dimensions
    Par Sam3oul dans le forum SSAS
    Réponses: 1
    Dernier message: 20/03/2009, 12h03
  3. Réponses: 0
    Dernier message: 23/01/2009, 17h07
  4. [SSAS][2k5] Jointure entre A et (B ou C)
    Par skynet dans le forum SSAS
    Réponses: 8
    Dernier message: 27/05/2008, 07h56
  5. Réponses: 17
    Dernier message: 18/03/2008, 17h10

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