Проектирование мобильных панелей мониторинга
Данный материал является логическим продолжением статьи «Мобильные панели мониторинга Datazen со службами аналитики и функцией детализации». Настоятельно рекомендую с ней ознакомиться, прежде чем приступать к прочтению данной статьи.
Итак, приступим... нет, все-таки продолжим!
Фильтр для панели мониторинга
Как вы помните, мы использовали в качестве исходинка данных базу работы авиалиний. На данный момент мы имеем двав представления - Airports Med (средние аэропорты) и Large Hub (крупные узловые аэропорты), которые служат источником данных для навигаторов сраху двух списков выбранных аэропортов. Теперь мы переходим к элементу управления списком выбранных аэропортов вылета (Origin Airport), на странице Data View необходимо указать, что представление данных об эффективности работы аэропортов вылета и прилета Perf Origin Dest 2015 должно фильтроваться по этому списку (см. скриншот ниже). То же представление будет фильтроваться по столбцу списка выбранных аэропортов назначения (Destination Airport).
Остальные элементы управления привязаны к различным столбцам представления Perf Origin Dest 2015. Поскольку данные фильтруются на мобильном устройстве с использованием результата, находящегося в кэше, взаимодействие с элементами управления на панели мониторинга должно быть очень оперативным. На странице параметров панели мониторинга Dashboard Settings я указываю заголовок и имя файла: Origin and Destination Performance. Щелкаю правой кнопкой для публикации на сервере, затем еще раз — для сохранения локальной копии (я предпочитаю перестраховаться и всегда храню две копии), и, наконец, последний раз — для возврата на домашнюю страницу.
Панель детализации
На представлении данных следующей панели мониторинга, где будет отображаться детальная информация о работе аэропортов вылета и назначения (Performance Origin and Destination Detail), результаты будут фильтроваться по двум параметрам. Учитывая, что каждый год совершается примерно шесть миллионов внутренних рейсов, запрос, возвращающий любую возможную комбинацию аэропортов вылета и назначения, будет выполняться очень медленно. Более эффективное решение — передача этих значений как параметров для фильтрации результатов на сервере базы данных.
Начну с запроса с жестко запрограммированными аэропортами вылета и назначения для рейсов, следующих из Бостона в Сиэтл (см. код ниже). Для добавления параметров на представление данных в качестве частоты обновления Refresh Frequency задан режим в реальном времени Real-time. При такой установке активируется ссылка на страницу определения параметров Define Parameters, где я добавляю параметры @ DestinationCode (кодовое обозначение аэропорта назначения) и @ OriginCode (кодовое обозначение аэропорта вылета), которым присваиваю значения по умолчанию для тестирования (см. скриншот выше). Этими параметрами я заменяю буквенные значения в запросе. При этом используются определенные обозначения.
Datazen распознает параметр по двойным фигурным скобкам. Данное выражение прикрепляет значение параметра к ссылке на полноправный член (например, ‘[Origin], [Airport].& [BOS]’), как показано в коде ниже. Тому, кто знаком с MDX, известно, что STRTOMEMBER— стандартная функция MDX, возвращающая член, указанный в строковом выражении. Если для вас это новость, просто запомните, что данная методика также широко используется с запросами MDX во многих других инструментах отчетности, таких как службы Reporting Services. В сущности, эта методика обеспечивает правильное выполнение запроса со значениями параметров.
Проектирование панели мониторинга, содержащей детальные данные об эффективности работы аэропортов вылета и прилета и использующей представление параметризованных данных, ничем не отличается от проектирования любой другой панели мониторинга, и это единственное представление данных, используемое данной панелью мониторинга.
Разберетесь во всех хитросплетениях проектирование мобильных панелей мониторинга, но только после того, как подберете подарки для свои подчиненных из IT-отдела, которые поработали в этом месяце на славу! Сувениры на заказ (http://vetus-s.com) станут идеальным вариантом. Во-первых, их стоимость не сильно ударит по вашему бюджету и, во-вторых, они определенно точно придутся по вкусу всем вашим сотрудникам. Подробности на vetus-s.com.