Как новый пользователь Qlikview, я ищу лучший способ создавать вычисляемые переменные и переменные, основанные на вычисленных переменных, в моих данных и использовать их на дисплеях. Мои данные подключены через ODBC.
Например, предположим, что мне нужна переменная Рейтинг, основанная на переменной «Риск» в моем наборе данных. Необработанные данные содержат переменную риска «L» или «H». Я хотел бы создать индикатор, например Risk_H, который равен 0 или 1 (если Risk = 'H'). Затем я хотел бы создать рейтинг типа «Рейтинг = 1 + Risk_H * 2». Могу ли я сделать все это в сценарии и иметь переменную Рейтинг в моем наборе данных?
Когда я пробую описанное выше, я могу создать переменную Risk_H, но тогда я не уверен, как ссылаться на нее в скрипте для вычисления переменной рейтинга. Я прочитал другие сообщения, в которых используется оператор загрузки (Расчетные поля Qlikview с помощью сценария загрузки), но безуспешно использовали вычисляемые переменные для создания новых переменных.
Пример кода (который работает):
SQL SELECT *,
case when (Risk = 'H') then 1
else 0
end as Risk_H
FROM [Data];
Как я могу создать Risk_H, чтобы использовать его в том же скрипте, как показано ниже? В других настройках я бы использовал что-то вроде «рассчитанный Risk_H» для обозначения этого.
SQL SELECT *,
case when (Risk = 'H') then 1
else 0
end as Risk_H,
(10 + Risk_H*2) as Rating // Qlikview says it can't find Risk_H
FROM [Data];
Я пробовал создать Risk_H в сценарии загрузки, но Qlikview не распознает Risk_H в более позднем операторе SQL. Я также пробовал создать таблицу с помощью Risk_H и извлечь данные из этой таблицы. И на самом деле я пытаюсь создать 10+ индикаторов, а не один, поэтому вложенные операторы case - это не ответ.
РЕДАКТИРОВАТЬ: Мне сказали, что резидентные таблицы могут быть ответом на выполнение вычислений. Если вы можете предоставить синтаксис для этого, используя таблицы, подключенные через ODBC, это может ответить на вопрос.