我希望有人可以帮助我完成最新的设计我的mondrian架构。我使用Mondrian 4,Pentaho和Saiku analytics 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>
我的问题是:
对于上面的代码行:
([Performance] .currentmember.prevMember,[Measures]。[Actual Performance1])
如何更改或指定(维度)效果指标“已连接时间”以返回“实际效果”度量值而不是使用之前的成员/值?
在伪代码中我想要这个:
a)找到尺寸“连接时间”
b)返回“连接时间”维度的[Measures]。[Actual Performance1]值
我实际上需要计算比率“占用率”作为“总呼叫时间”除以“连接时间”,但只需要开始查找维度。
目前,我的代码行按照屏幕截图返回上一个成员值,因此我猜我现在正处于正常轨道上,但现在因为我还在学习蒙德里安而陷入困境。我有很多这些KPI需要以这种方式计算。
我需要找到一种以这种方式计算KPI比率的方法,因此无法更改星型模式,性能指标系统是呼叫中心的完整平衡记分卡方法,除了正确计算比率之外,效果很好。
答案 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>