J'ai conçu un entrepôt de données relativement simple qui utilise le schéma en étoile. J'ai une table de faits avec seulement une clé primaire avec les colonnes CompanyID et Amount (la mesure réelle). Bien sûr, j'ai aussi une table de dimension pour représenter les entreprises dont la table des faits fait référence.Attribut dans plusieurs hiérarchies dans Analysis Services 2008
Maintenant, je dois créer une hiérarchie à un seul niveau (CompanyGroup) pour les entreprises. Cela semble une tâche facile, mais le problème est qu'une seule entreprise devrait être autorisée à exister au sein de plusieurs CompanyGroups. J'ai expérimenté en créant une nouvelle table de dimension appelée CompanyHierarchy qui contient une clé primaire, GroupKey et CompanyKey. Définir une hiérarchie définie par l'utilisateur où GroupKey est le niveau supérieur et CompanyKey est le deuxième niveau donne Une clé d'attribut en double a été trouvée erreur pour l'attribut CompanyKey lors du traitement de la dimension. Donc, je ne sais pas trop comment commencer avec ça. Comment puis-je créer une hiérarchie définie par l'utilisateur dans une dimension où les attributs peuvent exister plusieurs fois?
Capture d'écran de ma définition actuelle du cube peut être vu à:
img132.imageshack.us/img132/6729/ssasm2m.gif
Votre table de hiérarchie de l'entreprise ne contient pas la colonne de CompanyKey. Si vous essayez de créer une dimension dans toutes les tables de votre diagramme, cela ne fonctionnera pas. Si vous souhaitez hiérarchiser le Groupe et la Société, jetez un coup d'œil sur le lien que j'ai ajouté à ma réponse précédente. –