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

Альтернативные состояния

Описание

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

Разработчик QlikView может создать несколько состояний в документе QlikView и назначить их определенным объектам в этом документе. Конечный пользователь может создать копии этих объектов (объекты на сервере) и задать для них разные состояния.

Основное различие между отделением и альтернативными состояниями заключается в том, что ВСЕ объекты в заданном состоянии соответствуют пользовательским выборкам, выполненным в этом состоянии. Пользовательские выборки в других состояниях не затрагивают объекты в данном состоянии.

Функция альтернативных состояний недоступна в скрипте load.

Примечание к информацииФункция альтернативных состояний включается разработчиком QlikView и ее следует использовать осторожно, поскольку она может запутать конечных пользователей, так как на экране отсутствует автоматическая индикация о том, что объекты или выражения находятся в альтернативных состояниях или ссылаются на них. Эта информация должна быть предоставлена конечному пользователю разработчиком QlikView с помощью функции StateName().
Примечание к информацииВ ходе визуализации выборки альтернативного состояния может возникнуть ошибка, если данные предоставляются с помощью доступа к секции или к ним применяется функция сокращения количества данных. Визуализация выборки альтернативного состояния не поддерживается, если пользователи, работающие с документом QlikView с помощью доступа к секции, не имеют доступа к данным.

Настройка альтернативных состояний

Чтобы включить и настроить альтернативные состояния, выполните следующие действия.

  1. Щелкните Альтернативные состояния... на вкладке Свойства документа: Общие.
    Откроется диалоговое окно Альтернативные состояния.
  2. Нажмите кнопку Добавить..., чтобы создать несколько состояний, и укажите их имя. Эти имена будут называться идентификаторами состояния.
  3. Чтобы закрыть диалоговое окно, нажмите ОК.

Теперь разработчики QlikView могут создавать альтернативные состояния из экранных объектов.

Конечные пользователи, имеющие доступ к документам QlikView с сервера QlikView, могут использовать альтернативные состояния, но не могут создавать их

Назначение состояний для объектов

Чтобы назначить состояние для объекта, выполните следующие действия:

  1. Откройте диалоговое окно Свойства и выберите вкладку Общие.
  2. Задайте Альтернативное состояние для идентификатора состояния, которое необходимо использовать для объекта.

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

Всегда доступны два состояния: состояние по умолчанию и унаследованное. Состояние по умолчанию — это состояние, в котором QlikView чаще всего используется, и оно обозначено $. Документ QlikView всегда находится в состоянии по умолчанию. Объекты могут наследовать состояния от объектов более высокого уровня, таких как листы и контейнеры. Это означает, что состояния наследуются следующим образом: документ — лист — объекты листа. Листы и объекты листа всегда находятся в состоянии унаследовано, если это не переопределено разработчиком QlikView.

Сравнение альтернативных состояний

Можно сравнить два состояния одного и того же объекта. Например, можно создать линейный график, чтобы отобразить оба состояния данных по той же оси, назначив состояние в выражении с помощью функции анализа множеств.

Пример:  

Если определены состояния Group1 и Group2, можно сравнить средние значения поля Adj.Close для групп путем отображения двух выражений на линейном графике:

Avg({[Group1]} [Adj.Close])

Avg({[Group2]} [Adj.Close])

Поведение логики при использовании альтернативных состояний

Нажатие кнопки Очистить влияет на все состояния.
В подключаемом модуле Internet Explorer в раскрывающееся меню была добавлена кнопка Очистить, которая позволяет пользователю очистить выборки определенного состояния. Данное меню недоступно в клиенте Ajax, однако ту же самую функцию можно достичь путем создания кнопки действия, соединенной с действием «Очистить» с определенным состоянием.

Нажатие кнопок Назад и Вперед влияет на все состояния. Механизм перехода вперед-назад между определенными состояниями отсутствует.

Нажатие кнопок Заблокировать и Разблокировать влияет на все состояния. С помощью этих кнопок невозможно заблокировать и разблокировать какие-то отдельные состояния. Можно заблокировать определенные поля в состояниях, используя контекстное меню в окнах списков в определенном состоянии.

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

Альтернативные состояния могут использоваться со связанными объектами. Состояние применяется ко всем экземплярам объекта. Изменение состояния связанного объекта приведет к помещению других связанных объектов в это же состояние.

Примечание к информацииТриггеры срабатывают во всех состояниях.

Можно установить выполнение действий в различных состояниях. Одним единственным исключением является действие Запуск макроса. Может быть установлено его выполнение в определенном состоянии; однако макросы запускаются во всех состояниях.

Объекты, использующие отсутствующее состояние (состояние удалено разработчиком), возвратятся в состояние по умолчанию, хотя в раскрывающемся списке Альтернативное состояние отобразится что-либо наподобие:
AlternateStateName <unavailable>.

Примечание к информации

Функции полей можно использовать только с аргументом Состояние вместе с альтернативными состояниями.

Функции поля

Переменные в альтернативных состояниях

Состояние, используемое при расширении переменной, можно определить. Изменения в определенном состоянии не влияют на значения переменной, расширенные в другом состоянии. Если состояние не указано, переменная будет расширена в состоянии по умолчанию.

Пример:  

Если имеется состояние MyState и переменная vMyVar:

  • $(vMyVar) расширяет переменную в состоянии по умолчанию.
  • $({MyState} vMyVar) расширяет переменную в состоянии MyState.

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

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

Присоединяйтесь к программе модернизации аналитики

Remove banner from view

Модернизируйте ваши важные приложения QlikView без ущерба с помощью программы модернизации аналитики. Щелкните здесь для получения дополнительной информации или свяжитесь с нами: ampquestions@qlik.com