Каскадные фильтры в PerformancePoint Services

Исходная статья опубликована во вторник, 29 ноября 2011 г.

В SharePoint Server 2010 с пакетом обновления 1 (SP1) для PerformancePoint теперь доступны давно ожидаемые каскадные фильтры. В этой статье я продемонстрирую процесс развертывания панели мониторинга с использованием каскадных фильтров, а также покажу всю простоту работы с ними и предоставляемые ими возможности.

Идея каскадных фильтров заключается в том, что результаты работы одного фильтра становятся входными данными для другого или, если говорить точнее, выбранные параметры одного фильтра ограничивают возможные параметры другого. Как правило, это фильтры из одной иерархии, например "время", "географическое расположение" или "организации".

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

В этом примере на базе куба "Продажи" (Sales) базы данных Contoso Retail DW используется каскад фильтров географического расположения (страна/регион, штат/провинция и город). Когда заданы все параметры, зона фильтра на панели мониторинга выглядит следующим образом.

clip_image001

При выборе в фильтре "Штат или провинция" (States or Provinces) другого значения изменяются доступные варианты в фильтре "Города" (Cities).

clip_image002

clip_image003

Для примера изменим значение в фильтре "Северная Америка" (North America).

clip_image004

Обратите внимание, что если теперь открыть фильтр "Штат или провинция" (States or Provinces), в нем будут представлены только канадские провинции.

clip_image005

Если отключить фильтр "Северная Америка" (North America) от фильтра "Штат или провинция" (States or Provinces) и снова открыть его, количество вариантов в нем значительно увеличится.

clip_image006

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

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

clip_image007

Откроем конструктор панели мониторинга и создадим подключение к данным. На рисунке выше показано диалоговое окно, в котором указывается подключение к данным для сервера служб Analysis Services в этом примере. (Если вы повторяете эту процедуру, указанный сервер будет другим.) После сохранения подключения к данным можно создать фильтры.

Выберите раздел "Контент PerformancePoint" (PerformancePoint Content) в обозревателе рабочей области и создайте фильтр в конструкторе панели мониторинга.

clip_image008

Воспользуемся шаблоном фильтра "Выбор элементов" (Member Selection) и только что созданным подключением к данным.

clip_image009

clip_image010

Нам нужно создать фильтры для географического расположения. В иерархии "Территория продаж" (Sales Territory) имеется несколько уровней географических данных. В данном примере мы будем использовать просто иерархию "Sales Territory.Territory Hierarchy", которая содержит все имеющиеся географические объекты, но сосредоточимся на уровне стран и выберем только страны, представленные в разделе "Северная Америка" (North America). Сначала выберем измерение для фильтра.

clip_image011

Затем выберем интересующие нас элементы.

clip_image012

Зададим метод отображения. Простейшим типом является список.

clip_image013

Назовем фильтр "Северная Америка" (North America).

clip_image015

Следующим интересующим нас уровнем в иерархии "Территория продаж" (Sales Territory) являются штаты и провинции. Повторите приведенную выше процедуру, чтобы создать соответствующий фильтр в измерении "Sales Territory.Territory Hierarchy", но в этот раз выберите только дочерние элементы Канады и США.

clip_image016

Укажите для фильтра тип "Список" (List) и назовите его "Штат или провинция" (States or Provinces).

Наконец, создадим фильтр "Города" (Cities), для которого будут использоваться дочерние элементы всех канадских провинций и штатов США.

Совет. Здесь удобно воспользоваться командой "Выбор внучатых элементов" (Select Grandchildren). Здесь можно упростить себе работу: выберите в качестве измерения элемент "Sales Territory.Sales Territory Name", который близко соответствует уровню городов в иерархии, и выберите все элементы. Функция каскадов правильно выберет дочерние элементы вышестоящего фильтра.

clip_image017

Теперь создадим панель мониторинга с несколькими зонами и системой показателей или отчетом. Перетащите фильтры, отчеты и системы показателей на панель мониторинга. Разместите фильтры в естественном порядке от высшего уровня к низшему, чтобы максимально упростить работу для пользователей панели мониторинга.

clip_image019

А теперь, чтобы соединить фильтр "Северная Америка" (North America) с фильтром "Штат или провинция", или

· Перетащите "Уникальное имя элемента" (Member Unique Name) из фильтра "Северная Америка" (North America) в фильтр "Штат или провинция" (States or Provinces)

--или--

· Выполните команду "Создать подключение" (Create Connection) для фильтра "Северная Америка" (North America) (в разделе "Правка" на ленте или в соответствующем меню со стрелкой), чтобы отправить значения в фильтр "Штат или провинция" (States or Provinces) с исходным значением "Уникальное имя элемента" (Member Unique Name).

clip_image020

clip_image021

clip_image022

Аналогично, подключите фильтр "Штат или провинция" (States or Provinces) к фильтру "Города" (Cities) с помощью уникального имени элемента.

Подключите фильтр "Города" (Cities) к любым нужным отчетам и системам показателей. Разверните панель мониторинга, после чего вся система готова к использованию.

Кнопка "Применить фильтры" (Apply Filters) — пакетная модификация

Одним из незначительных на первый взгляд изменений в пакете обновления 1 является возможность добавлять на панель мониторинга кнопку "Применить фильтры" (Apply Filters) в конструкторе панели мониторинга, которая отлично сочетается с каскадными фильтрами.

clip_image023

Кнопка "Применить фильтры" (Apply Filters) является по-настоящему удобным дополнением к каскадным фильтрам, поскольку позволяет сразу задать все параметры фильтров до обновления систем показателей и отчетов. Таким образом, пользователю не нужно ждать изменения систем показателей и отчетов при каждой модификации фильтров.

Добавить кнопку очень легко. Она находится наверху списка фильтров в панели "Сведения" (Details) редактора панелей мониторинга в конструкторе.

clip_image024

Выберите ее и воспользуйтесь элементом управления "Добавить в зону" (Add To Zone) либо просто перетащите ее на панель мониторинга.

clip_image026

Теперь, когда пользователь развернутой панели мониторинга изменяет настройку фильтра, другие фильтры, находящиеся далее по каскаду (зависящие от данного фильтра), будут обновлены, однако отчеты и системы показателей останутся без изменений, позволяя пользователю определить точные значения фильтров. После этого он может нажать эту кнопку и применить все значения фильтров за один раз.

Здесь, например, представлена создаваемая нами панель мониторинга, в которой применены все фильтры. Кнопка "Применить фильтры" (Apply Filters) неактивна, поскольку ожидающих изменений нет.

clip_image028

Теперь измените значение в фильтре "Штат или провинция" (States or Provinces) на "Онтарио" (Ontario). Фильтр "Города" (Cities) изменится в соответствии со значениями вышестоящего фильтра (здесь этот фильтр открыт, чтобы продемонстрировать доступные новые варианты), и кнопка "Применить фильтры" (Apply Filters) станет активной, однако отчет изменен не будет.

clip_image030

При нажатии кнопки "Применить фильтры" (Apply Filters) отчет обновится с учетом новых значений, а кнопка снова станет неактивной.

clip_image032

Итак, мы рассмотрели один из аспектов замечательной возможности каскадных фильтров! Правильная реализация каскадных фильтров повышает эффективность работы и сокращает время раздражающего ожидания для пользователей панелей мониторинга. Дополнительные сведения можно найти в этой статье TechNet.

Удачной работы с панелями мониторинга!

Пол Трешер (Paul Thrasher),
инженер по тестированию в подразделении бизнес-аналитики Office

Это локализованная запись блога. Исходная статья доступна по адресу: Cascading Filters in PerformancePoint Services