SSAS Sum只显示当前维度中的成员

时间:2015-04-08 12:52:11

标签: mdx ssas-2008

我有以下专栏。 (我现在无法发布图片,所以我希望这是有道理的)

代表名称|预约计数|可用的预约计数

Rep 1 | 0 | 249

Rep 2 | 1 | 249

代表3 | 3 | 249

我正在尝试使用以下Sum(All)公式为SSAS中的“Total Taken Appointments”创建计算度量,以便添加所有约会,无论哪个代表采用了它们。我目前正在使用以下

    SUM(
       (
          [Drug Rep].[Company Name].[All]
        , [Rep].[Rep Name].[All]
        , [Company Team].[Company Team Desc].[All]
       ) 
    ,[Measures].[Appointment Count])

我面临的挑战是,当我这样做时,它会显示数据库中存在的每个代表,包括与客户总预约无关的代表。由于总预约数为0,因此我得到负数,这会破坏职位空缺的计算。

代表名称|预约计数|可用的预约计数| Total_TakenAppoint |空置

Rep 1 | 0 | 249 | 152 | 97

Rep 2 | 1 | 249 | 152 | 97

代表3 | 3 | 249 | 152 | 97

Rep 4 | | | 152 | -152

Rep 5 | | | 152 | -152

代表6 | | | 152 | -152

我希望它能够在总结所有内容的同时,仍然只显示第一个图表中可见的行并保持249-152关系,而不是产生所有'-152'。

1 个答案:

答案 0 :(得分:0)

尝试通过null

为该指标添加一些稀疏性
IIF(
  (
     [Rep].[Rep Name].currentmember
     ,[Measures].[Appointment Count]
  )
 = 0
  ,NULL
  SUM(
   (
      [Drug Rep].[Company Name].[All]
    , [Rep].[Rep Name].[All]
    , [Company Team].[Company Team Desc].[All]
   ) 
  ,[Measures].[Appointment Count])
)