主菜单 上一节  |  下一节

设置维度自定义汇总、写回及其它功能

Microsoft® SQL Server™ 2000 Analysis Services 的新版本为维度管理提供完整、功能强大而又灵活的支持。维度管理现在支持自定义汇总、带数据的非叶成员、高级排序和唯一性设置,以及在多维环境中进行写回等功能。可以通过向导或维度编辑器启用这些功能。

为什么?

在某些应用程序(如预算应用程序和其它财务应用程序)中,维度需要支持自定义汇总。例如,一个帐户维度可能需要支持费用支出帐户,以便通过汇总将这些支出从收入帐户中减去。

在预算或收益应用程序中,数据通常在上一级输入,如产品组或客户组,而不是在最低级别输入。这些数据必须作为常规汇总数据的补充或替代输入。您需根据自己的业务需要进行选择。

在某些维度中,业务需要可能要求特定级别的所有成员或整个维度是唯一的,和/或进行显示时能以某种方式排序。您必须以维度和级别为基础,对这些排序依据和唯一性特征进设置。

根据贵公司的业务流程,必须以关系模型或多维模型来维护维度结构。

 

方案:

新的 Sales 和 HR 多维数据集非常成功,现在,财务部经理想要创建他们自己的多维数据集,用来分析本年度公司的费用支出并预算下一年度的费用支出。

本节将创建一个 Expense Budget(开支预算)多维数据集。

首先,需要通过维度向导,使用所有可用的新高级选项设置一个新的 Account(帐目)维度。然后,将设置一个使您得以区分 Actual(实际)数据和 Budget(预算)数据的 Scenario(方案)维度。接着将创建 Expense Budget 多维数据集并对它进行处理。

然后,使用维度编辑器审阅和编辑 Account 维度的某些属性。

最后,用维度编辑器编辑 Account 维度层次结构。

 

如何通过维度向导设置高级属性

  1. 在 Analysis Manager 树窗格的“教程”数据库中,右击“共享维度”文件夹,指向“新建维度”菜单,然后单击“向导”命令。
  2. 在“欢迎”步骤,单击“下一步”按钮。
  3. 在“选择维度的创建方式”步骤中,选择“父子维度:单个维度表中相关的两列”,然后单击“下一步”按钮。
  4. 在“选择维度表”步骤,单击“Account”,然后单击“下一步”按钮。
  5. 若要定义子键列,在“成员键”旁边,选择“account_id”。 
  6. 若要定义父键列,在“父键”旁边,选择“account_Parent”。
  7. 若要定义成员名列,在“成员名”旁边,选择“account_description”。单击“下一步”按钮。
  8. 向导现在显示“选择高级选项”步骤。逐个选择每个选项,或单击“全选”按钮。进行选择时,描述字段的内容将根据当前选项的内容进行更新。单击“下一步”按钮。

    41.gif

 

如何通过维度向导指定高级属性

  1. 在维度向导的“设置自定义汇总”步骤,选择“启用自定义汇总”复选框,然后确保选择了“用运算符定义的自定义汇总”选项。

    42.gif

  2. 单击展开按钮(“...”),该按钮在“运算符列”框旁边。即会出现“定义自定义成员列”对话框。选择“使用现有的列”选项,然后在“现有列”框中,选择“account_rollup”。

    43.gif

  3. 单击“确定”按钮。
  4. 在“设置自定义汇总”步骤,单击“下一步”按钮。
  5. 在“设置带有数据属性的成员”步骤,选择“非页成员有相关的数据”复选框。

    44.gif

  6. 选择“数据成员可见”复选框,然后单击“下一步”按钮。
  7. 在“指定排序依据和唯一性”步骤,确保“成员排序依据”框设置为“<名称>”。然后,在“名称在下列范围内唯一”框中,选择“维度成员”。

    45.gif

  8. 单击“下一步”按钮。
  9. 在“设置维度写回功能”步骤,选择“启用此维度中的写回功能”复选框,然后单击“下一步”按钮。
  10. 在最后一步,在“维度名称”框内键入“Account”。 保持“创建维度的层次结构”复选框的清除状态。单击“完成”按钮。

    46.gif

  11. 现在在维度编辑器中编辑新创建的“Account”维度。单击“数据”选项卡显示新创建的维度树。展开“所有 Account”成员。

80.gif

 

如何创建 Expense Budget 多维数据集  

  1. 在维度编辑器中,将为此维度创建一个新的成员属性。单击“架构”选项卡。
  2. 在左窗格中,展开“Account Id”。
  3. 在“架构”选项卡上,从“Account”表选择“account_type”,并将其拖到树窗格中的“成员属性”窗格上。新的成员属性,称为“Account Type”,将添加到列表中。
  4. 退出维度编辑器,当提示保存维度时,单击“是”按钮。
  5. 现在“Account”维度出现在“共享维度”列表中。
  6. 右击“共享维度”文件夹,单击“新建维度”菜单,然后单击“向导”命令。使用维度向导创建 Scenario 维度,其中将包含各种类别的数据(Actual、Budget、Forecast 等等)。将此维度创建为具有下列特征:
    1. 维度类型:父子
    2. 表:Category
    3. 会员键:Category_id, 父键:Category_parent, 会员名:Category_description
    4. 高级选项:自定义汇总、写回
    5. 自定义汇总:单击“启用自定义汇总”复选框,单击“用 MDX 定义的自定义公式”选项。单击展开按钮(“...”)并选择“创建新列”,然后将其命名为 Category_Formula
    6. 写回:选择“启用写回”复选框
    7. 名称:Scenario
  7. 关闭维度编辑器。
  8. 右击“多维数据集”文件夹,单击“新建多维数据集”,然后单击“向导”命令;此操作将打开多维数据集向导。按照向导所提供的步骤创建 Expense Budget,使其具有下列特征:
    1. 事实数据表: expense_fact
    2. 度量值:Amount
    3. 维度:Scenario、Account、Store、Time
    4. 是否要计算事实数据表的行数?是
    5. 名称:Expense Budget

    47.gif

  9. 在多维数据集的“工具”菜单上,单击“设计存储”命令。这将显示存储设计向导,可在其中定义聚合和存储设计。保留存储设计向导中的默认值,并在该向导的最后一步处理该多维数据集。
  10. 处理完毕后,关闭多维数据集编辑器。

     

如何使用维度编辑器设置高级属性

  1. 在 Analysis Manager 树窗格的“教程”数据库上,展开“共享维度”文件夹,右击新创建的“Account”维度,然后单击“编辑”按钮。
  2. 将显示维度编辑器。左窗格显示树视图和属性窗格,右窗格显示维度架构或数据。如果属性窗格不可见,单击左下角的“属性”按钮将其打开。

    48.gif

  3. 每次在树窗格中设置焦点时,属性窗格都得以刷新。在树窗格中,单击“Account Id”。属性窗格现在显示与“Account”维度成员相关的属性。单击“高级”选项卡。向下滚动到最后一个属性“Unary Operators”。该属性设置为“True”。单击该属性字段旁边的展开按钮“...”可随时更改该属性值。
  4. 在树窗格中,单击“Account”。在“高级”选项卡上,可看到“Members with data”属性设置为“Nonleaf data visible”。在向导中已先设置了此属性。
  5. 在“高级”选项卡上滚动,找到“Member Names Unique”属性,该属性设置为“True”。
  6. 继续滚动,找到“Write-enabled”属性,该属性也设置为“True”。
  7. 此属性窗格中包含许多设置,可根据不同的业务需要使用。向导只是指导使用最常用的一些设置。


如何使用维度编辑器浏览维度数据和编辑层次结构

  1. 在维度编辑器的右窗格中,单击该窗格下方的“数据”选项卡。在成员属性窗格和自定义成员公式窗格旁边显示维度成员层次结构。展开帐目维度树显示所有维度成员。
  2. 展开“Net Income”,然后单击“Total Expense”。选择维度成员窗格中不同的成员会刷新成员属性窗格中的值。该窗格包含两个成员属性:“Account Type”(在该练习的第一步中创建)和“UNARY_OPERATOR”(用向导创建)。在维度成员窗格中,当焦点从一个成员更改到另一个成员时,两个成员属性均会刷新。可在此处更改任意成员的这两个成员属性的值。

    49.gif  

  3. 可使用快捷菜单选项更改层次结构的结构(缩进、上移和下移等)并为成员添加新的兄弟或子代。右击“Total Expense”,单击“新建成员”菜单,然后单击“子代”命令。
  4. 在“创建成员”对话框的“成员名称”框中,输入“Other expenses”。
  5. 在“成员键”框中,输入“4500”,然后单击“确定”按钮。
  6. 拖动此新创建的成员,并将其放在“Marketing”成员属性中。
  7. 在成员属性窗格中,在此帐目的“Account type”成员属性中,输入“Expense”并保持“UNARY OPERATOR COLUMN”成员属性不变。

    50.gif

  8. 维度编辑器中的多维模型刚刚得以更新! 所做的更改已自动记录在源数据库中(必须确保具有对该数据库的读/写访问权限)。关闭维度编辑器,在提示保存时,单击“是”按钮。

 

主菜单 上一节  |  下一节