1

我需要将维度成员作为计算度量返回。

鉴于:

方面

  • 客户 {ACME, EMCA, Universal Imports, Universal Exports}
  • 销售员{鲍勃、弗雷德、玛丽、乔}
  • 信用类型{董事、经理}

措施

  • 贷记价值
  • 价值

关系

  • 客户是包含价值的事实的维度
  • 客户、销售人员和信用类型是包含信用价值的事实的维度

我正在尝试执行以下操作:

创建计算的度量,将返回在客户角色中记入最大 $s 的销售人员。例如

| Customer          | Director | Manager | Value |
|-------------------|----------|---------|-------|
| ACME              | Bob      | Fred    | 500   |
| EMCA              | Bob      | Fred    | 540   |
| Universal Imports | Mary     | Joe     | 1000  |
| Universal Exports | Mary     | Fred    | 33    |
  • ACME 已将 Bob 评为 490 作为主管
  • ACME 已将 Fred 评为 500 作为经理
  • ACME 将 Mary 评为 10 位董事

我想将此用作计算量度,我可以在客户是 ROW 的任何情况下使用它。

4

1 回答 1

1

如果我正确理解了您的问题,那么沿着这条线的东西应该可以解决问题(当然,您必须使用正确的级别、层次结构和多维数据集名称):

   with
    member [Measures].[DirectorTemp] as topcount([Salesperson].[Salesperson].members,1,([Measures].[Credited Value],[Credit Type].[Director],[Customer].currentmember)).item(0).properties("Caption")   
    member [Measures].[Director] as iif([Measures].[DirectorTemp] = [Salesperson].UnknownMember.properties("caption"), null, [Measures].[DirectorTemp])
    member [Measures].[ManagerTemp] as topcount([Salesperson].[Salesperson].members,1,([Measures].[Credited Value],[Credit Type].[Manager],[Customer].currentmember)).item(0).properties("Caption") 
    member [Measures].[Manager] as iif([Measures].[ManagerTemp] = [Salesperson].UnknownMember.properties("caption"), null, [Measures].[ManagerTemp])


    select
        {[Measures].[Director],[Measures].[Manager],[Measures].[Value]} on 0,
        {[Customer].members} on 1
    from MyCube
于 2009-06-05T17:17:35.023 回答