SSAS创建父子维度
父子维度与其他维度不同的地方就是维度中的数据是递归层次关系的。如adventureworksdw库中的DimEmployee表中数据(上级和下级雇员的层次关系)就是递归关系。表中的主键是EmployeeKey列,对应于每个雇员的ID,雇员上级的ID保存在ParentEmployeeKey列。也就是说ParentEmployeeKey和EmployeeKey列是外键关系。
1、 在维度文件夹上右键,选择新建维度。在欢迎使用维度向导页上,单击下一步。
2、 在选择创建方法页上,选择使用现有表并单击下一步。
3、 在指定源信息中选择新建的数据源视图”Adventure Works DW“(我这保持默认)单击下一步。
4、 在选择相关表中,为了保持简单,去掉选中项。
5、 在选择维度属性页中,修改EmployeeKey名称为Employee,ParentEmployeeKey名称为Employees。
6、在完成向导页中,将维度名称改为Employee。
7、在解决方案右击,选择生成而后点击部署,最后浏览数据。
修改维度属性
1、 在维度结构选项卡上右键Employees属性,在MembersWithDataCaption属性中输入*(Direct),把领导给标记出来,*会自动替换为相应的成员属性。
在NamingTemplate中,点击弹出窗口,设置级别名称
Employees属性如图,
设置Employees的NameColumn属性为DimEmployee.FirstName (WChar)。把属性IsAggregable设置为false,这样就可以去掉all的层次显示。在DefaultMember属性中点击,弹出设置窗口,
2、 设置Employee的NameColumn属性为DimEmployee.FirstName (WChar)。
3、 右击解决方案,重新生成并部署。
4、 浏览数据。