如何在SQLServer分析服务中创建KPI,以显示上一年同期的趋势

时间:2012-10-12 07:39:56

标签: ssas

我创建了一个在年级工作的KPI和趋势表达式。如果查看2012年客户的总销售额,趋势会正确显示2011年的销量是增加还是减少。

但是,当我深入了解客户并开始查看月份级别的数据时,kpi正在比较2012年1月与2011年的整体情况,我希望将其与2011年1月的情况自动进行比较。

这是我的表达:

Iif
(
  KPIValue( "Operating Margin vs Last Year" ) >
  ( KPIValue( "Operating Margin vs Last Year" ),
    ParallelPeriod
    ( 
       [Dim Date].[Year No -  Qtr Name -  Month Name].[Year No],
       1,[Dim Date].[Year No -  Qtr Name -  Month Name].CurrentMember
    )
  ), 1, -1
)

我也尝试了以下内容,但我确信它总能与当年的1月份进行比较。如果看一下2012年5月,我认为它只是从5减去12,并将楼层自己归为1(并且不会回滚日期的年份组成部分)。

Iif
(
  KPIValue( "Operating Margin Same Month Last Year" ) >
  ( KPIValue( "Operating Margin Same Month Last Year" ),
    ParallelPeriod
    ( 
       [Dim Date].[Year No -  Qtr Name -  Month Name].[Month No],
       12,
       [Dim Date].[Year No -  Qtr Name -  Month Name].CurrentMember
    )
  ), 1, -1
)

1 个答案:

答案 0 :(得分:0)

我弄清楚为什么第一个选项不起作用。在我的客户端(Excel)中,我从日期维度中选择年/月列,而不是从日期层次结构中选择。

如果我选择日期层次结构,它会正确解析。我直接从日期维度选择年/月,因为我不希望在此报告中显示'Qtr Name'。

我认为从现在开始,我根本不会使日期维度字段可用,从而迫使用户(和我)始终从层次结构中进行选择。其次,我将添加另一个仅为年/月的层次结构,以实现我的最初目标。