Управление фильтрами PerformancePoint с медленно меняющимися размерами

Просто немного справочной информации:

У меня есть таблица измерений, которая использует SCD2 для отслеживания пользовательских изменений в нашей компании (изменения команды, изменения должности и т. Д.). См. Пример ниже:

Некоторые из столбцов измерения User

Я построил куб служб Analysis Services и создал все необходимые иерархии для измерений, и он хорошо работает при навигации и просмотре таблицы фактов.

SSAS Иерархия

У меня проблема с фильтрами на панели мониторинга PerformancePoint. Поскольку я использую таблицу User Dimension с несколькими экземплярами пользователей, в списке отображаются дубликаты. Я могу понять почему, поскольку суррогатное удостоверение ссылается на измерение. Но если я выберу первый экземпляр группы A, я увижу все их продажи за определенный период, а если я выберу второй экземпляр, я увижу все их продажи за другой период.

Пример 1 из дублированных имен команд

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

Я подумал об использовании фильтров запросов MDX, но хотел бы посмотреть, есть ли что-то, о чем я не думал.

Я понимаю, что это не простой и быстрый вопрос, но любая помощь будет признательна!

1 ответ

Решение

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

  1. Под моим пользовательским измерением я добавил 2 дубликата атрибутов в свой список атрибутов ("Фильтр команды" - это копия "Команда", "Фильтр пользователя" - это копия "Имя пользователя"), они будут использоваться только для фильтрации панели мониторинга.

Окно конструктора размеров

  1. В свойствах атрибутов для каждого дубликата я затем устанавливаю AttributeHierarchyOptimizedState в значение "Неоптимизировано", я также устанавливаю для их AttributeHierarchyVisible значение false, поскольку я показал два дублированных атрибута в окне иерархии в середине.

Свойства атрибута измерения

  1. Разверните куб на сервере и перейдите в PerformancePoint. Создайте новый фильтр MDX (это изображение показывает готовый фильтр)

Создать фильтр многомерных выражений в PerformancePoint

  1. Это код, который я использовал, он показывает только элементы измерения, которые имеют против них факт (значительно сокращает список), и, используя allmembers в измерении, он также дает мне возможность показывать "Все" в верхней части списка.,

Код MDX

  1. Разверните новые фильтры, и теперь вы можете видеть отдельный список пользователей и команд, отлично работает и выбирает каждый экземпляр (независимо от строки SCD2)

Фильтры панели инструментов теперь работают

Другие вопросы по тегам