Вы можете создавать ссылки на переменные в анализах и на информационных панелях.
Тип ссылки на переменную зависит от выполняемой задачи. Для задач, где пользователю предлагается заполнить поля в диалоговом окне, необходимо указывать только тип и имя переменной (не полный синтаксис). В качестве примера можно привести ссылку на переменную в определении фильтра.
Для других задач, таких как создание ссылки на переменную в представлении заголовка, указывается синтаксис переменной. Используемый синтаксис зависит от типа переменной (см. нижеприведенную таблицу).
| Тип | Синтаксис | Пример |
|---|---|---|
|
Сеанс |
@{biServer.variables['NQ_SESSION.variablename']} где variablename – имя переменной сеанса, например DISPLAYNAME. |
@{biServer.variables['NQ_SESSION.SalesRegion']} |
|
Семантическая модель (репозиторий) |
@{biServer.variables.variablename} или @{biServer.variables['variablename']} где variablename – имя переменной, например prime_begin |
@{biServer.variables.prime_begin} или @{biServer.variables['prime_begin']} |
|
Презентация или запрос |
@{variables.variablename}[format]{defaultvalue} или @{scope.variables['variablename']} где: variablename – имя переменной презентации или запроса, например MyFavoriteRegion. (не обязательно) format – маска формата, зависящая от типа данных переменной, например: #,##0, ММ/DD/YY hh:mm:ss. (Обратите внимание, что формат не применяется к значению по умолчанию.) (Не обязательно) defaultvalue – ссылка на константу или переменную, указывающая значение, которое будет использоваться, если не заполнена переменная, на которую ссылается variablename. scope – квалификаторы переменной. Область указывается, когда переменная используется на нескольких уровнях (анализы, страницы информационной панели, информационные панели) и требуется доступ к определенному значению. (Если область не указана, при использовании переменной соблюдается следующий порядок очередности: "анализы - страницы информационной панели - информационные панели".) При использовании запроса информационной панели с переменной презентации, которая может принимать несколько значений, синтаксис зависит от типа столбца. Несколько значений разделяются запятыми, поэтому любой оператор форматирования применяется к каждому значению до того, как значения соединяются запятыми. |
@{variables.MyFavoriteRegion}{EASTERN REGION} или @{dashboard.MyFavoriteRegion}{EASTERN REGION} или @{dashboard.variables['MyFavoriteRegion']} или (@{myNumVar}[#,##0]{1000}) или (@{variables.MyOwnTimestamp}[YY-MM-DD hh:mm:ss]{) или (@{myTextVar}{A, B, C}) |
|
Глобальные |
@{global.variables.variablename} где variablename – имя глобальной переменной, например gv_region. При создании ссылки на глобальную переменную необходимо использовать полное имя, как показано в примере. Имена глобальных переменных должны соответствовать спецификациям языка ECMA Scripting для JavaScript. Длина имени не должна превышать 200 символов. Имя не должно содержать встроенных пробелов, зарезервированных слов и специальных символов. Если вы не знакомы с требованиями языка JavaScripting, обратитесь к вспомогательной документации |
@{global.variables.gv_date_n_time} |
Также можно ссылаться на переменные в выражениях. Инструкции по созданию ссылок на переменные в выражениях приведены в последующих разделах.
Ссылаясь на переменные сеанса в выражениях, можно использовать следующие рекомендации.
Пример:
"Market"."Region"=VALUEOF("NQ_SESSION"."SalesRegion")
Ссылаясь на переменные презентации в выражениях, можно использовать следующие рекомендации.
Ссылаясь на переменную презентации, используйте следующий синтаксис:
@{variablename}{defaultvalue}
где variablename – имя переменной презентации, defaultvalue (не обязательно) – ссылка на константу или переменную, указывающая значение, которое используется, если не заполна переменная, на которую ссылается variablename.
Чтобы преобразовать переменную в строку или включить в нее несколько переменных, заключите всю переменную в одинарные кавычки, например:
'@{user.displayName}'
Если за символом @ не следует фигурная скобка {, он расценивается как символ @. При использовании переменной презентации, которая может принимать несколько значений, синтаксис меняется в зависимости от типа столбца.
Для создания корректных инструкций SQL используйте следующий синтаксис для указанного типа столбца:
Текст — (@{variablename}['@']{'defaultvalue'})
Числовые значения — (@{variablename}{defaultvalue})
Дата-время – (@{variablename}{timestamp 'defaultvalue'})
Дата (только указанная дата) – (@{variablename}{date 'defaultvalue'})
Время (только указанное время) – (@{variablename}{time 'defaultvalue'})
Пример:
'@{user.displayName}'
Ссылаясь на переменные семантической модели (репозитория) в выражениях, можно использовать следующие рекомендации.
Пример:
CASE WHEN "Hour" >= VALUEOF("prime_begin") AND "Hour" < VALUEOF("prime_end") THEN 'Prime Time' WHEN ... ELSE...END