DQL-- 分析指标配置说明

最近有很多童鞋咨询分析指标配置页面的一些概念含义,今天我们以最简单的占比计算来讲解下相关的概念和实现原理。
下图所示为占比计算的相关配置和结果:

imagepng

为什么要这么配置呢?我们先来看一下原理:
内置的排名、占比、累计、同比等其实相当于之前报表教程里的格间计算,每一个表达式配置都可以按照这个原理去理解(格间计算教程地址:http://doc.raqsoft.com.cn/report/tutorial/zbbb116.html)


拿一个具体的需求来说:计算上级是王伟的雇员在 2010 年 5 月份的商品入库量占全年的百分比,也就是计算占比
占比计算表达式为:?1/?2(当月值对应?1 当前值,当年总计对应?2 条件查找值)
从表达式来看,计算占比我们要获取到两个值:一个是当前月份的值,一个是年合计值

当前月份的商品入库量我们可以用月当前值获取,也就是对应下面这个数据:

imagepng
那么我们可以吧所有xx 字段当前值可以理解为当前单元格值,类似于固定单元格的 value() 取值

本年度的入库量总计是需要计算出来的,那么此时我们需要使用“查找值”,而这个查找值的计算是有一个计算前提的,这个计算前提我们需要配置到下面的条件框中:

imagepng
在这个具体示例中,本年度的合计值有两个条件:年份相同、上级相同,且两个条件是并列关系,所以就得到了上图所示的配置

那么我们可以吧所有xx 字段查找值理解为:在所有数据里找到符合条件的那个值或者计算出来的符合条件的值,查找值通常结合查找条件使用

其他概念说明:
序号:在报表教程中我们有个 seq()函数,用于计算连续序号,那么在 dql 中我们也可以吧序号理解为是 seq() 计算出来的连续序号,也可以理解为是 row() 计算出来的行号
所以,当前序号是当前值所在行的行号,查找序号对应查找值所在的行号

总结
首先确定要进行哪个指标计算:排名、占比、同比、累计等
然后理解指标计算原理,比如占比是当前值 / 当前总计
最后配置条件表达式获取到正确数据,例如获取总计的计算结果