Mondrian Schema - 计算成员维度查找

时间:2016-04-13 08:15:04

标签: schema pentaho dimension mondrian saiku

我希望有人可以帮助我完成最新的设计我的mondrian架构。我使用Mondrian 4,Pentaho和Saiku analytics 3.7。

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

enter image description here

<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>  

我的问题是:

对于上面的代码行:

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

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

在伪代码中我想要这个:

a)找到尺寸“连接时间”

b)返回“连接时间”维度的[Measures]。[Actual Performance1]值

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

目前,我的代码行按照屏幕截图返回上一个成员值,因此我猜我现在正处于正常轨道上,但现在因为我还在学习蒙德里安而陷入困境。我有很多这些KPI需要以这种方式计算。

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

1 个答案:

答案 0 :(得分: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>