定义和浏览关键绩效指标

若要定义关键绩效指标(KPI),首先定义 KPI 名称和与 KPI 关联的度量值组。 KPI 可以与所有度量值组或单个度量值组相关联。 然后定义 KPI 的以下元素:

  • 值表达式

    值表达式可以是物理度量,如 Sales,计算度量,如 Profit,或通过在 KPI 中使用多维表达式(MDX)定义的计算。

  • 目标表达式

    目标表达式是一个值,或一个解析为值的 MDX 表达式,用于定义值表达式定义的度量值的目标。 例如,目标表达式可以是公司业务经理希望增加销售额或利润的金额。

  • 状态表达式

    状态表达式是 Analysis Services 用来计算与目标表达式相比的值表达式的当前状态的 MDX 表达式。 目标表达式是 -1 到 +1 范围内的规范化值,其中 -1 非常糟糕,+1 非常出色。 状态表达式显示一个图形,可帮助你轻松确定与目标表达式相比的值表达式的状态。

  • 趋势表达式

    趋势表达式是 Analysis Services 用来计算与目标表达式相比的值表达式的当前趋势的 MDX 表达式。 趋势表达式可帮助业务用户快速确定相对于目标表达式的值表达式是越来越好还是更糟。 可以将多个图形之一与趋势表达式相关联,以帮助业务用户快速了解趋势。

除了为 KPI 定义的这些元素外,还定义了 KPI 的多个属性。 这些属性包括显示文件夹、如果 KPI 是从其他 KPI 计算的,则为父 KPI、当前时间成员(如果有)、KPI 的权重(如果有),以及 KPI 的说明。

注释

有关 KPI 的更多示例,请参阅“计算工具”窗格中的“模板”选项卡上的 KPI 示例或 Adventure Works DW 2012 示例数据仓库中的示例。 有关如何安装此数据库的详细信息,请参阅 安装 Analysis Services 多维建模教程的示例数据和项目

在本课的任务中,你将在 Analysis Services 教程项目中定义 KPI,然后使用这些 KPI 浏览 Analysis Services 教程多维数据集。 你将定义以下 KPI:

  • 经销商收入

    此 KPI 用于衡量实际经销商销售额与经销商销售配额的比较方式、销售额与目标接近程度,以及达到目标的趋势。

  • 产品毛利率

    此 KPI 用于确定每个产品类别的毛利率与每个产品类别的指定目标之间的接近程度,以及确定达到此目标的趋势。

定义经销商收入 KPI

  1. 打开 Analysis Services 教程多维数据集的多维数据集设计器,然后单击 KPI 选项卡。

    KPI 选项卡包含多个窗格。 选项卡左侧是 “KPI 组织者 ”窗格和 “计算工具 ”窗格。 选项卡中间的显示窗格包含 KPI 组织者 窗格中选择的 KPI 的详细信息。

    下图显示了 Cube Designer 的 KPI 选项卡。

    多维数据集设计器的KPI选项卡

  2. KPI 选项卡的工具栏上,单击“ 新建 KPI ”按钮。

    显示窗格中会显示一个空白 KPI 模板,如下图所示。

    显示窗格中的空白 KPI 模板

  3. “名称”框中,键入Reseller Revenue,然后在“关联度量值”组中选择“经销商销售”。

  4. “计算工具”窗格中的“元数据”选项卡上,展开“度量值”,展开“经销商销售”,然后将“经销商 Sales-Sales 金额度量值”拖到“值表达式”框中。

  5. “计算工具”窗格中的“元数据”选项卡上,展开“度量值”,展开“销售配额”,然后将“销售额配额”度量值拖到“目标表达式”框。

  6. 验证 仪表 是否已在 “状态指示器 ”列表中选中,然后在 “状态”表达式 框中键入以下 MDX 表达式:

    Case
     When 
      KpiValue("Reseller Revenue")/KpiGoal("Reseller Revenue")>=.95
       Then 1
     When
      KpiValue("Reseller Revenue")/KpiGoal("Reseller Revenue")<.95
       And 
      KpiValue("Reseller Revenue")/KpiGoal("Reseller Revenue")>=.85
       Then 0
      Else-1
    End
    

    此 MDX 表达式提供了评估目标进度的基础。 在此 MDX 表达式中,如果实际经销商销售额超过目标 85%,则值 0 用于填充所选图形。 由于仪表是所选图形,因此仪表中的指针将位于空和满之间的中间位置。 如果实际经销商销售额超过百分之九十,仪表上的指针将位于从空到满的四分之三处。

  7. 验证“趋势指示器”列表中是否选择了“标准”箭头,然后在“趋势”表达式框中键入以下表达式:

    Case
     When IsEmpty
      (ParallelPeriod
       ([Date].[Calendar Date].[Calendar Year],1,
           [Date].[Calendar Date].CurrentMember))
      Then 0  
     When  (
      KpiValue("Reseller Revenue") - 
       (KpiValue("Reseller Revenue"), 
        ParallelPeriod
         ([Date].[Calendar Date].[Calendar Year],1,
           [Date].[Calendar Date].CurrentMember))
          /
          (KpiValue ("Reseller Revenue"),
           ParallelPeriod
            ([Date].[Calendar Date].[Calendar Year],1,
             [Date].[Calendar Date].CurrentMember)))
           >=.02
      Then 1
       When(
        KpiValue("Reseller Revenue") - 
         (KpiValue ( "Reseller Revenue" ),
          ParallelPeriod
           ([Date].[Calendar Date].[Calendar Year],1,
            [Date].[Calendar Date].CurrentMember))
           /
            (KpiValue("Reseller Revenue"),
             ParallelPeriod
              ([Date].[Calendar Date].[Calendar Year],1,
                [Date].[Calendar Date].CurrentMember)))
            <=.02
      Then -1
       Else 0
    End
    

    此 MDX 表达式提供了评估实现已定义目标的趋势的基础。

使用经销商收入 KPI 浏览多维数据集

  1. 在 SQL Server Data Tools(SSDT)的构建菜单上,单击部署分析服务教程

  2. 部署成功完成后,在 KPI 选项卡的工具栏上,单击 “浏览器视图 ”按钮,然后单击“ 重新连接”。

    状态和趋势仪表根据每个维度的默认成员的值以及值和目标的值显示在经销商销售的 KPI 浏览器 窗格中。 每个维度的默认成员是“所有”级别的“所有”成员,因为你尚未将任何维度的任何其他成员定义为默认成员。

  3. 在筛选器窗格中,在维度列表中选择“销售区域”,在“层次结构”列表中选择“销售区域”,在“作员”列表中选择“等于”,在“筛选器表达式”列表中选择“北美”复选框,然后单击“确定”。

  4. “筛选器”窗格中的下一行中,在“维度”列表中选择“日期”,在“层次结构”列表中选择“日历日期”,在“作员”列表中选择“等于”,在“筛选器表达式”列表中选择“Q3 CY 2007”复选框,然后单击“确定”。

  5. 单击 KPI 浏览器 窗格中的任意位置以更新 经销商收入 KPI 的值。

    请注意,KPI 的值、目标和状态部分反映了新时间段的值

定义产品毛利率 KPI

  1. 单击 KPI 选项卡工具栏上的“窗体视图”按钮,然后单击“新建 KPI”按钮。

  2. “名称”框中,键入Product Gross Profit Margin,然后验证在“关联度量组”列表中是否显示>“所有”<

  3. “计算工具”窗格中的“元数据”选项卡中,将“总 GPM 度量值”拖动到“值表达式”框。

  4. “目标表达式 ”框中,键入以下表达式:

    Case
        When [Product].[Category].CurrentMember Is
          [Product].[Category].[Accessories]
        Then .40                 
        When [Product].[Category].CurrentMember 
          Is [Product].[Category].[Bikes]
        Then .12                
        When [Product].[Category].CurrentMember Is
          [Product].[Category].[Clothing]
        Then .20
        When [Product].[Category].CurrentMember Is
          [Product].[Category].[Components]
        Then .10
        Else .12            
    End
    
  5. “状态指示器”列表中,选择 “圆柱”。

  6. “状态”表达式 框中键入以下 MDX 表达式:

    Case
        When KpiValue( "Product Gross Profit Margin" ) / 
             KpiGoal ( "Product Gross Profit Margin" ) >= .90
        Then 1
        When KpiValue( "Product Gross Profit Margin" ) / 
             KpiGoal ( "Product Gross Profit Margin" ) <  .90
             And 
             KpiValue( "Product Gross Profit Margin" ) / 
             KpiGoal ( "Product Gross Profit Margin" ) >= .80
        Then 0
        Else -1
    End
    

    此 MDX 表达式提供了评估目标进度的基础。

  7. 验证“趋势指示器”列表中是否选择了“标准”箭头,然后在“趋势”表达式框中键入以下 MDX 表达式:

    Case
    When IsEmpty
      (ParallelPeriod
       ([Date].[Calendar Date].[Calendar Year],1,
           [Date].[Calendar Date].CurrentMember))
      Then 0  
       When VBA!Abs
        (
          KpiValue( "Product Gross Profit Margin" ) - 
           (
             KpiValue ( "Product Gross Profit Margin" ),
              ParallelPeriod
              ( 
                [Date].[ Calendar Date].[ Calendar Year],
                1,
                [Date].[ Calendar Date].CurrentMember
              )
            ) /
            (
              KpiValue ( "Product Gross Profit Margin" ),
              ParallelPeriod
              ( 
                [Date].[ Calendar Date].[ Calendar Year],
                1,
                [Date].[ Calendar Date].CurrentMember
              )
            )  
          ) <=.02
      Then 0
      When KpiValue( "Product Gross Profit Margin" ) - 
           (
             KpiValue ( "Product Gross Profit Margin" ),
             ParallelPeriod
             ( 
               [Date].[ Calendar Date].[ Calendar Year],
               1,
               [Date].[ Calendar Date].CurrentMember
             )
           ) /
           (
             KpiValue ( "Product Gross Profit Margin" ),
             ParallelPeriod
             ( 
               [Date].[Calendar Date].[Calendar Year],
               1,
               [Date].[Calendar Date].CurrentMember
             )
           )  >.02
      Then 1
      Else -1
    End
    

    此 MDX 表达式提供了评估实现已定义目标的趋势的基础。

使用总毛利率 KPI 浏览多维数据集

  1. “生成”菜单上,单击“部署分析服务教程”

  2. 部署成功完成后,单击 KPI 选项卡工具栏上的“重新连接”,然后单击“浏览器视图”。

    此时会显示 Product Gross Profit Margin KPI,并显示 2007 年第 3 季度北美 销售区的 KPI 值。

  3. “筛选器”窗格中,在“维度”列表中选择“产品”,在“层次结构”列表中选择“类别”,在“运算符”列表中选择“等于”,然后在“筛选表达式”列表中选择“自行车”,然后单击“确定”

    2007年第三季度北美经销商销售自行车的毛利率显示。

下一课

第 8 课:定义操作