Contents
Переменная с параметрами в QlikView
В этой статье будет рассмотрен пример создания параметризованной переменной (или пользовательской функции) в QlikView. Допустим у нас есть некоторое выражение, которое мы хотим использовать в выражении:
Формула: $1+$2*$3
Заходим в менеджер переменных и создаем формулу:
Создаем текстовый элемент с функцией:
1 |
=$(myFunction(2,2,3)) |
Использование параметризованной переменной в скрипте загрузки
Еще один пример использования переменной с параметрами. Данный скрипт рассчитывает разницу месяцев между двумя указанными датами.
//Функция для вычисления Months Difference в скрипте
1 |
SET MonthDiff = Num(((year($2) * 12) + month($2)) - (((year($1) * 12) + month($1))) + 1); |
Теперь, мы можем использовать MonthDiff как функцию
1 2 3 4 5 6 7 |
Data: LOAD UniqueNo, StartDate, EndDate, ($(MonthDiff(StartDate, EndDate)) AS MonthsDifference FROM DataSource; |
В приведенном выше операторе load мы вычисляем разницу между двумя датами в месяцах и сохранения результата в отдельном столбце.
Также мы можем использовать MonthDiff в expressions:
1 |
=$(MonthDiff(Today(), Today() + 65)) |
Еще один пример использования переменной с параметрами в QlikView
У нас есть загрузочный скрипт с данными в QlikView:
1 |
Let vCalculateExpression=' |
В выражении в таблице используем формулу:
1 |
$(vCalculateExpression(sum,[Sale Date],[Sales Value])) |
1 |
&1&'({< |
В выражении в таблице используем формулу:
1 |
1 |
&'2={">= |
В выражении в таблице используем формулу:
1 |
1 |
&'(=Date( |
В выражении в таблице используем формулу:
1 |
1 |
&'(vFromDate),''DD/MM/YYYY''))<= |
В выражении в таблице используем формулу:
1 |
1 |
&'(=Date( |
В выражении в таблице используем формулу:
1 |
1 |
&'(vToDate),''DD/MM/YYYY''))"}>} |
В выражении в таблице используем формулу:
1 |
1 |
&'3)'; T1: Load ID,[Sales Person],Date(Date#([Sale Date],'DD/MM/YYYY')) as [Sale Date],[Sales Value] Inline [ ID,Sales Person,Sale Date,Sales Value 1,Tony D,1/12/2015,1000 1,Tony D,1/1/2016,2000 1,Tony D,1/2/2016,3000 1,Sasi P,1/12/2015,1000 1,Sasi P,1/1/2016,3000 1,Sasi P,1/2/2016,5000 1,Will A,1/12/2015,1000 ]; |
В выражении в таблице используем формулу:
1 |
3 Comments