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] Jointure entre A et (B ou C)


Sujet :

SSAS

  1. #1
    Membre du Club
    Profil pro
    Développeur informatique
    Inscrit en
    Mars 2003
    Messages
    93
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mars 2003
    Messages : 93
    Points : 64
    Points
    64
    Par défaut [SSAS][2k5] Jointure entre A et (B ou C)
    Voilà mon problème.
    Je possède une table de faits qui possède notamment 2 champs "Axe 1" et "Axe 2" que je souhaiterai relier à une table de dimension Axe.
    Je ne veux pas créer une dimension "Axe 1" et une dimension "Axe 2" mais bien une seule table "Axe" dans laquelle je ferai un truc du genre
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Dim.Axe=Fact.Axe1 OR Dim.Axe=Fact.Axe2
    Est-ce possible de faire cela (et si oui comment :p) ?

    Merci d'avance.

  2. #2
    Membre du Club
    Profil pro
    Développeur informatique
    Inscrit en
    Mars 2003
    Messages
    93
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mars 2003
    Messages : 93
    Points : 64
    Points
    64
    Par défaut
    Personne n'a une petite idée ?

  3. #3
    Membre éclairé
    Avatar de patriceharel
    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Mai 2008
    Messages
    466
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Consultant en Business Intelligence
    Secteur : Service public

    Informations forums :
    Inscription : Mai 2008
    Messages : 466
    Points : 884
    Points
    884
    Par défaut
    Bonjour,

    Je ne pense pas que cela soit possible (j'ai eu le même problème que vous avec deux champs date de ma table de fait pointant sur la clé de ma dimension temps). En effet, dans ce cas là SSAS crée d'office "deux dimensions", ce qui finalement est logique car à chaque lien de la table de fait correspond un axe d'analyse (que ces liens soient dirigés vers des dimensions différentes ou pas). Mais si jamais vous trouvez une alternative je suis preneur.

  4. #4
    Membre du Club
    Profil pro
    Développeur informatique
    Inscrit en
    Mars 2003
    Messages
    93
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mars 2003
    Messages : 93
    Points : 64
    Points
    64
    Par défaut
    J'ai également le cas dans mon cube mais cela ne me dérange pas, j'ai crée une dimension date pour chaque date (DimDateFacturation, DimDateVente, ...)
    Là le problème c'est que Fact.Axe1 et Fact.Axe2 désigne réellement la même DimAxe (et une valeur de Axe1 peut se retrouver dans Axe2 et réciproquement)

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    269
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2008
    Messages : 269
    Points : 339
    Points
    339
    Par défaut
    Bonjour,

    Je ne comprends pas très bien ton problème.

    Veux-tu éviter de créer 2 tables dans ta base de données?

    ou

    Veux-tu éviter de créer 2 objets dimensions dans ta solution SSAS et utiliser ces 2 objets dimensions dans ton cube?

    ou

    Veux-tu une seule et unique dimension "Axe" dans ton cube et que cette dimension soit à la fois reliée à la colonne "Axe1" et "Axe2" de ta table de faits?

    Si tu veux simplement avoir une seule table "Axe" dans ta base de données et un seul objet dimension dans ta solution SSAS, c'est tout à fait possible car tu peux rattacher plusieurs fois la même dimension à ton cube (via des colonnes différentes de ta table de faits). Il te suffit juste de configurer ces colonnes dans le tab "dimension usage" de ton cube.

  6. #6
    Membre du Club
    Profil pro
    Développeur informatique
    Inscrit en
    Mars 2003
    Messages
    93
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mars 2003
    Messages : 93
    Points : 64
    Points
    64
    Par défaut
    Je veux une seule et unique table Axe et une seule et unique dimension Axe.

    Un petit exemple sera peut être plus clair :

    Fact
    Valeur: 100
    Axe1 : 1
    Axe 2 : 2

    Valeur: 200
    Axe 1: 2
    Axe 2: 1

    Valeur : 250
    Axe 1 : 2
    Axe 2 : null


    Je veux une dimension Axe dans laquelle je retrouverai :

    1 : 300 (100+200)
    2 : 550 (100+200+250)

  7. #7
    Membre averti
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    269
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2008
    Messages : 269
    Points : 339
    Points
    339
    Par défaut
    Est-ce que tu peux avoir, pour une même ligne, une valeur identique pour "Axe1" et "Axe2" dans ta table de faits?

    Si ce n'est pas le cas, pourquoi ne pas supprimer tes colonnes "Axe1" et "Axe2" de ta table de faits et créer une colonne "Axe"?

    De cette manière, à la place de dupliquer les valeurs de "Axe" dans plusieurs colonnes, tu créeras plusieurs lignes.

    De plus, tu pourras obtenir le résultat que tu cherches (d'après ton exemple).

  8. #8
    Membre du Club
    Profil pro
    Développeur informatique
    Inscrit en
    Mars 2003
    Messages
    93
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mars 2003
    Messages : 93
    Points : 64
    Points
    64
    Par défaut
    J'avais déjà pensé à transformé les colonnes en ligne mais les valeurs de mes mesures vont être doublées, je n'ai que la version standard de SQL Server, je ne peux donc pas jouer avec les propriétés d'agrégation.

  9. #9
    Membre averti
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    269
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2008
    Messages : 269
    Points : 339
    Points
    339
    Par défaut
    Pour résoudre ce problème, j'utilise souvent la modélisation suivante:

    Je crée une dimension "Compte" (tu lui donnes le nom que tu veux) qui représente les mesures. De cette manière, pour obtenir la la valeur d'une mesure, il faut sélectionner un membre de la dimension "Compte" et la "mesure" (ou plutôt colonne) de la table de faits. C'est une modélisation assez souple étant donné qu'elle évite de devoir modifier la table de faits en cas d'ajout d'une nouvelle mesure.

    On a donc la structure suivante:

    Colonnes de la table de faits:
    FK_Dim1
    FK_Dim2
    FK_Dim3
    ...
    FK_Compte
    Valeur

    Colonnes de la dimension "Compte":
    ID (ou SK)
    (BK éventuellement)
    Nom
    ...

    Dans ton cas, cela te permettrait d'éviter la duplication de tes mesures étant donné que chaque mesure (couple FK_Compte - Valeur) possède sa propre ligne dans la table de faits.

Discussions similaires

  1. [SSAS] [2K5] Hiérarchie entre 2 dimensions
    Par Sam3oul dans le forum SSAS
    Réponses: 1
    Dernier message: 20/03/2009, 13h03
  2. Réponses: 0
    Dernier message: 23/01/2009, 18h07
  3. Réponses: 3
    Dernier message: 19/09/2008, 11h35
  4. [SSAS][2k5] Laisons entre faits et dimensions
    Par Jinroh77 dans le forum SSAS
    Réponses: 4
    Dernier message: 17/06/2008, 14h38
  5. [SSIS][2k5] jointure entre très grosse table
    Par RicardMan dans le forum SSIS
    Réponses: 1
    Dernier message: 18/04/2008, 17h54

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