Перейти к основному содержимому Перейти к дополнительному содержимому

Примеры использования переменной в выражении

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

Пример:  

Переменная x содержит текстовую строку Sum(Sales).

В диаграмме можно определить выражение $(x)/12. Результат такой же, как при наличии выражения диаграммы Sum(Sales)/12.

Однако, если изменить значение переменной x, например, на значение Sum(Budget), данные диаграммы будут немедленно пересчитаны с выражением, интерпретированным как Sum(Budget)/12.

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

Интерпретация имен

Не рекомендуется использовать одинаковые имена для переменной и поля или функции в Qlik Sense. Но при выполнении этого действия необходимо знать о порядке их использования в выражении.

Пример:  

Строка XXX представляет поле, переменную, функцию или меру. XXX будет интерпретироваться как одна из них, в зависимости от способа создания выражения.

Примеры интерпретации имен
Выражение XXX интерпретируется как
XXX мера, переменная или поле
$(XXX) переменная
Count(XXX) поле или переменная
XXX() функция

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

  • Внутри агрегирования у поля есть приоритет над переменной. Метки мер не являются релевантными в агрегированиях и не приоритизируются.

  • Вне агрегирования у метки меры есть приоритет над переменной, у которой в свою очередь есть приоритет над полем.

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

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

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

Для этого примера необходимо, чтобы в редактор загрузки данных были помещены следующие данные.

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

 

Давайте определим следующие две переменные в диалоговом окне «Переменные».

  • Имя vSales Определение'Sum(Sales)'
  • Имя 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) показывает итоговую сумму.

Помогла ли вам эта страница?

Если вы обнаружили какую-либо проблему на этой странице и с ее содержанием — будь то опечатка, пропущенный шаг или техническая ошибка, сообщите нам об этом, чтобы мы смогли ее исправить!