Переменные скрипта

Переменная в QlikView является контейнером, содержащим статическое значение или вычисление, например числовое или буквенно-числовое значение. При использовании этой переменной в документе любое изменение, выполненное в переменной, применяется везде, где эта переменная используется. Переменные определяются в скрипте с помощью редактора скриптов, переменная получает свое значение от операторов управления Let, Set или других операторов управления в скрипте загрузки.

Если первый символ в значении переменной — это знак равенства «=», то программа QlikView рассчитывает значение по формуле (выражение QlikView) и выводит или возвращает результат, а не визуальное написание формулы.

При использовании вместо переменной подставляется его значение. Переменные можно использовать в скрипте для расширения со знаком доллара и в различных операторах управления. Это очень удобно, если одна и та же строка повторяется в скрипте множество раз, например путь.

В начале выполнения скрипта программа QlikView устанавливает некоторые особые системные переменные независимо от их предыдущих значений.

Ниже представлен синтаксис для определения переменной:

set variablename = string

или

let variable = expression

используется. Команда Set присваивает текст справа от знака равенства переменной, в то время как команда Let вычисляет выражение.

В переменных учитывается регистр.

Examples:  

set HidePrefix = $ ; // , в переменной символ «$» будет получен как значение.

let vToday = Num(Today()); // возвращает серийный номер сегодняшней даты.

Вычисление переменной

Существует несколько способов использования переменных с вычисляемыми значениями в программе QlikView. Результат зависит от того, как это будет определено и названо в выражении.

В этом примере загружаются некоторые встроенные данные:

LOAD * INLINE [ Dim, Sales A, 150 A, 200 B, 240 B, 230 C, 410 C, 330 ];

Давайте определим две переменные.

Let vSales = 'Sum(Sales)' ;
Let vSales2 = '=Sum(Sales)' ;

Во второй переменной мы добавляем знак равенства перед выражением. В результате переменная будет вычислена до того, как она будет расширена, а выражение оценено.

При использовании неизмененной переменной vSales, например, в мере, результатом будет строка Sum(Sales), то есть вычисления не будут выполнены.

В случае добавления расширения со знаком доллара и вызова элемента $(vSales) в выражении переменная будет расширена, а сумма Sales отобразится.

Наконец, если будет вызван элемент $(vSales2), вычисление переменной будет выполнено до ее расширения. Это означает, что отображаемый результат — это итоговая сумма элементов Sales. Разницу использования элементов =$(vSales) и =$(vSales2) в качестве выражений мер можно увидеть в этой диаграмме с отображением результатов:

Dim $(vSales) $(vSales2)
A 350 1560
B 470 1560
C 740 1560

Как можно увидеть, элемент $(vSales) показывает частичную сумму для значения измерения, а элемент $(vSales2) показывает итоговую сумму.