# Расширение со знаком доллара с использованием выражения

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

Содержимое в скобках должно начинаться со знака «равно»:

`$(=expression)`

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

```
// returns a string with the current year
$(=Year(Today())); 
```

```
// returns the year before the selected one
$(=Only(Year)-1);
```

## Пример: выбор меры путем ссылки на нее в выражении диаграммы

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/dollar-sign-expansion-using-expression.htm)

#### Пример: скрипт загрузки

Скрипт загрузки

Загрузите следующие данные через встроенную загрузку в редакторе загрузки данных:

```
// Load string “=MinString(Measure)” into variable VSelectMeasure
Let vSelectMeasure = '=MinString(Measure)';
MyTable1: // Create table and load values for Dim and Sales
Load * inline [
Dim, Sales
A, 150
A, 200
B, 240
B, 230
C, 410
C, 330 ];                      
 
 
MyTable2: // Create table and load aggregations as field values for Measure
Load * Inline [
Measure
avg(Sales)
sum(Sales)
count(distinct Dim)];
```

Для получения дополнительной информации об использовании встроенных загрузок см. [Использование встроенных загрузок для загрузки данных](https://help.qlik.com/ru-RU/sense/November2025/Subsystems/Hub/Content/Sense_Hub/Scripting/inline-loads-qs.htm).

Объяснение

Скрипт позволяет выбрать меру, ссылаясь на нее в выражении диаграммы. Выражение диаграммы содержит расширение переменной `$(=MinString(Measure))`. Функция `MinString()` находит строковые значения в выражении и возвращает первое по алфавиту текстовое значение, в данном случае `avg(Sales)`. Это позволяет решать (и выбирать) в интерактивном режиме, какое выражение использовать в визуализации, не обращаясь к свойствам объекта и не манипулируя ими.

Выходные данные

Создайте следующую таблицу в Qlik Sense с использованием:

* Измерение: `Dim`

* Меры:

  * `='$(vSelectMeasure)'`

  * `=$(=MinString(Measure))`

  * `Avg(Sales)`

Таблица. Расширение со знаком доллара с использованием выражения

| Dim | ='$(vSelectMeasure)' | =$(=MinString(Measure)) | Avg(Sales) |
| --- | --- | --- | --- |
| Итоги | - | 260 | 260 |
| A | avg(Sales) | 175 | 175 |
| Б | avg(Sales) | 235 | 235 |
| C | avg(Sales) | 370 | 370 |

## Пример: расчет квоты между двумя измерениями

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/dollar-sign-expansion-using-expression.htm)

#### Пример: скрипт загрузки

Скрипт загрузки

Загрузите следующие данные через встроенную загрузку в редакторе загрузки данных:

```
Let vDivision = '=MinString(Numerator) / MinString(Denominator)';
Load recno() as Numerator autogenerate 100;
Load recno() as Denominator autogenerate 100;
```

Объяснение

Этот сценарий создает пару полей, содержащих по 100 значений, которые выполняют функции числителей и знаменателей при расчете квоты между ними. Мера диаграммы содержит расширение переменной ='$( vDivision )', что позволяет решать (и выбирать) в интерактивном режиме, какую квоту нужно рассчитать.

Выходные данные

Создайте следующую таблицу в Qlik Sense с использованием:

* Измерения:

  * Numerator

  * Denominator

* Мера: ='$(vDivision)'

На итоговую квоту (Totals) влияют выбранные значения в полях. Numerator (=5) и Denominator (=3) будут пересчитываться при каждой новой выборке в любом из полей.

Таблица. Расширение со знаком доллара в качестве выражения

| Числитель | Знаменатель | ='$(vDivision)' |
| --- | --- | --- |
| Итоги | - | 1,6666666666667 |
| 5 | 3 | 1,6666666666667 |

## Включение файла

Включение файла выполняется с помощью расширений со знаком доллара. Синтаксис имеет следующий вид:

$(include=filename)

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

Для получения дополнительной информации см. [Include](https://help.qlik.com/ru-RU/sense/November2025/Subsystems/Hub/Content/Sense_Hub/Scripting/SystemVariables/Include.htm).

## Расширения со знаком доллара и альтернативные состояния

Расширение со знаком доллара обычно не чувствительно к альтернативным состояниям. Однако если у расширения со знаком доллара есть выражение, оно вычисляется в состоянии, относящемся к объекту, в котором расширение со знаком доллара сделано.

Пример.

```
$(=Sum(Amount))
```

Будет вычислена функция sum от суммы на основе выборки в состоянии объекта.

## Взаимодействия между расширениями со знаком доллара и внешними выражениями множеств

Когда расширения со знаком доллара используются в комбинации с внешними выражениями множества, применяется особый порядок вычисления. Дополнительную информацию см. [Внешние выражения множества и расширения со знаком доллара](https://help.qlik.com/ru-RU/sense/November2025/Subsystems/Hub/Content/Sense_Hub/ChartFunctions/SetAnalysis/outer-set-expression-dollar-sign-expansion.htm).