QlikView - RangeSum 函数


QlikView 中的RangeSum ()函数用于对所选字段进行选择性求和,这是 sum 函数无法轻松实现的。它可以将包含其他函数的表达式作为其参数并返回这些表达式的总和。

输入数据

让我们考虑如下所示的每月销售数据。使用文件名monthly_sales.csv 保存数据。

Month,Sales Volume
March,2145
April,2458
May,1245
June,5124
July,7421
August,2584
September,5314
October,7846
November,6532
December,4625
January,8547
February,3265

加载脚本

使用脚本编辑器将上述数据加载到 QlikView 内存中。从“文件”菜单打开脚本编辑器或按Control+E。从“文件中的数据”选项卡中选择“表文件”选项,然后浏览包含上述数据的文件。编辑加载脚本以添加以下代码。单击确定,然后单击Control+R将数据加载到 QlikView 的内存中。

LOAD 
Month, [Sales Volume]
FROM
[C:\Qlikview\data\monthly_sales.csv]
(txt, codepage is 1252, embedded labels, delimiter is ',', msq);

应用 RangeSum() 函数

将上述数据加载到 QlikView 内存中后,我们编辑脚本以添加新列,这将给出每月销量的滚动总和。为此,我们还借助前面章节中讨论的 peek 函数来保存前一条记录的值,并将其添加到当前记录的销量中。以下脚本实现了结果。

LOAD
Month, [Sales Volume],
rangesum([Sales Volume],peek('Rolling')) as Rolling
FROM
[C:\Qlikview\data\monthly_sales.csv]
(txt, codepage is 1252, embedded labels, delimiter is ',', msq);

创建工作表对象

让我们创建一个Table Box工作表对象来显示上面给定脚本生成的数据。转到菜单布局 → 新建工作表对象 → 表格框

将出现以下窗口,其中我们提到表的标题并选择要显示的所需字段。单击确定将在 QlikView Table Box 中显示 CSV 文件中的数据,如下所示。

范围和