QlikView – 窥视功能

QlikView – 窥视功能


QlikView 中peek()函数用于从先前记录中获取字段的值并将其用于计算。

输入数据

让我们考虑如下所示的每月销售数字。使用文件名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],
     peek('Sales Volume') as Prevmonth
FROM
[C:\Qlikview\data\monthly_sales.csv]
(txt, codepage is 1252, embedded labels, delimiter is ',', msq);

创建图纸对象

让我们创建一个Table Box 工作表对象来显示由上述脚本生成的数据。转到菜单项Layout → New Sheet Object → Table Box出现以下窗口,我们在其中提及表的标题并选择要显示的必填字段。单击确定将在 QlikView 表格框中显示来自 csv 文件的数据,如下所示。还可以设置如下所示的排序顺序,以按照与源中的字段Month相同的顺序获取结果

Monthly_sales_load_order

完成上述步骤并单击Finish 后,我们会看到 Table 框显示如下所示的数据。

Monthly_sales_prevmonth

在计算中使用 peek() 函数

PEEK()可以在涉及其他列计算中使用。让我们显示每个月销售量的百分比变化。下面的脚本实现了这个结果。

LOAD
Month, [Sales Volume],
peek('Sales Volume') as Prevvolume,
(([Sales Volume]-peek('Sales Volume')))/peek('Sales Volume')*100  as Difference
FROM
[C:\Qlikview\data\monthly_sales.csv]
(txt, codepage is 1252, embedded labels, delimiter is ',', msq); 

创建图纸对象

让我们创建一个Table Box 工作表对象来显示由上述脚本生成的数据。转到菜单项Layout → New Sheet Object → Table Box出现以下窗口,我们在其中提及表的标题并选择要显示的必填字段。单击确定将在 QlikView 表格框中显示来自 CSV 文件的数据,如下所示。

Monthly_sales_prevmonth_diff

觉得文章有用?

点个广告表达一下你的爱意吧 !😁