Функция peek () в QlikView используется для извлечения значения поля из предыдущей записи и использования его в вычислениях.
Входные данные
Давайте рассмотрим ежемесячный объем продаж, как показано ниже. Сохраните данные с именем файла month_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. Выберите опцию Table Files для файла, содержащего вышеуказанные данные. Отредактируйте скрипт загрузки, чтобы добавить следующий код. Нажмите OK и нажмите 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 . Появится следующее окно, в котором мы упоминаем заголовок таблицы и выбираем обязательные поля для отображения. При нажатии OK отображаются данные из файла CSV в поле таблицы QlikView, как показано ниже. Также установите порядок сортировки, как показано ниже, чтобы получить результат в том же порядке поля Месяц, что и в источнике.
После завершения вышеуказанных шагов и нажатия кнопки « Готово» мы получим окно «Таблица» с данными, приведенными ниже.
Использование функции 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 . Появится следующее окно, в котором мы упоминаем заголовок таблицы и выбираем обязательные поля для отображения. Нажатие ОК отображает данные из файла CSV в окне таблицы QlikView, как показано ниже.