Другие состояния

Описание

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

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

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

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

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

Настройка других состояний

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

  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, однако ту же самую функцию можно достичь путем создания кнопки действия, соединенной с действием «Очистить» с определенным состоянием.

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

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

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

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

Переменные принадлежат состоянию по умолчанию. Изменения в других состояниях не влияют на значения переменных.

Note: Триггеры срабатывают во всех состояниях.

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

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

Note:

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

См.: Функции поля