Qlikview 简明教程

QlikView - RangeSum Function

QlikView 中的 RangeSum() 函数用于对选定字段执行选择性求和,而求和函数难以实现此目的。它可以将包含其他函数的表达式作为其参数并返回这些表达式的总和。

Input Data

让我们按如下所示考虑每月销售数字。使用文件名 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

Load Script

上述数据通过使用脚本编辑器加载到 QlikView 内存。从文件菜单打开脚本编辑器或按 Control+E 。从 Data from Files 选项卡中选择 Table Files 选项,并浏览包含上述数据的文件。编辑加载脚本以添加以下代码。单击 OK ,再单击 Control+R 可将数据加载到 QlikView 的内存中。

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

Applying RangeSum() Function

通过将以上数据加载到 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);

Creating Sheet Object

让我们创建一个 Table Box 表对象以显示由以上给定的脚本生成的数据。转到 Layout → New Sheet Object → Table Box 菜单。

出现以下窗口,我们在其中指定表的标题并选择要显示的必需字段。单击确定可按如下所示在 QlikView 表格框中显示 CSV 文件中的数据。

RangeSum