0

我希望有人可以帮助我设计我的蒙德里安模式。我使用 Mondrian 4、Pentaho 和 Saiku 分析 3.7。

我正在设计一个基于不同 KPI 的性能指标系统,它似乎运行良好。我的问题是在 mondrian 模式中计算比率值,我需要在其中查找特定维度,然后为给定 KPI 计算返回适当的度量值

在此处输入图像描述

<CalculatedMember name="Actual Performance" dimension="Measures">
      <Formula>IIF([Performance].currentmember.name = 'Occupancy', 

      ([Performance].currentmember.prevMember ,[Measures].[Actual Performance1])          

      , [Measures].[Actual Performance1])</Formula> 
      <CalculatedMemberProperty name="FORMAT_STRING" value="#,###"/>
      <CalculatedMemberProperty name="DATATYPE" value="Numeric"/>
</CalculatedMember>  

我的问题是这样的:

对于上面的代码行:

([绩效].currentmember.prevMember,[措施].[实际绩效1])

如何更改或指定(维度)性能指标“连接时间”以返回“实际性能”度量值,而不是使用以前的成员/值?

在伪代码中我想要这个:

a) 找到维度“连接时间”

b) 返回“Connected Time”维度的 [Measures].[Actual Performance1] 值

我实际上需要计算比率“占用”作为“总通话时间”除以“连接时间”,但只需要开始维度查找。

目前我的代码行根据屏幕截图返回前一个成员值,所以我猜我有点走在正确的轨道上,但现在卡住了,因为我还在学习蒙德里安。我有很多需要以这种方式计算的 KPI。

我需要找到一种以这种方式计算 KPI 比率的方法,因此无法更改星型模式,性能指标系统是呼叫中心的完整平衡计分卡方法,除了正确计算比率之外,它工作得很好。

4

1 回答 1

1

好的,经过长时间的斗争,我找到了一种方法。

<CalculatedMember name="Actual Performance" dimension="Measures">
        <Formula>
        IIF
        (
            [Performance].currentmember.name = 'Occupancy',             
            (
                ([Performance].[Total Call Time] ,[Measures].[Actual Performance1]) / ([Performance].[Connected Time] ,[Measures].[Actual Performance1]) * 100              
            ),
            [Measures].[Actual Performance1]
        )           
        </Formula>  
      <CalculatedMemberProperty name="FORMAT_STRING" value="#,###"/>
      <CalculatedMemberProperty name="DATATYPE" value="Numeric"/>
</CalculatedMember>  
于 2016-04-13T14:39:25.590 回答