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

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

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

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

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

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

[](https://help.qlik.com/en-US/qlikview/Subsystems/Client/Content/QV_QlikView/Scripting/ScriptVariables.htm)[](https://help.qlik.com/en-US/qlikview/Subsystems/Client/Content/QV_QlikView/Scripting/ScriptVariables.htm)set variablename = string

или

let variable = expression

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

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

Примеры:

[](https://help.qlik.com/en-US/qlikview/Subsystems/Client/Content/QV_QlikView/Scripting/ScriptVariables.htm)`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) в качестве выражений мер можно увидеть в этой диаграмме с отображением результатов:

Example results

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

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

## Подробнее

* [Расширения со знаком доллара](https://help.qlik.com/ru-RU/qlikview/September2026/Subsystems/Client/Content/QV_QlikView/Scripting/dollar-sign-expansions.htm)