Селекционный выбор. Руководство пользователя sap businessObjects Web Intelligence
Скачать 3.62 Mb.
|
Объекты результата в панели запроса. 2. Нажмите кнопку Добавить ранжирование на панели инструментов в верхней части панели Фильтры запроса. Схема ранжирования отобразится на панели Фильтры запроса. Примечание: Кнопка Добавить ранжирование отключается, если база данных не поддерживает ранжирование. 3. Выберите направление и тип ранжирования (Top, Top%, Bottom, Bottom%). 4. Введите количество записей (если выбран вариант Top или Bottom) или процентную долю записей (если выбран вариант Top% или Bottom%), которые должны возвращаться в ранжировании, в следующем поле. Можно указать вместо константы запрос, щелкнув стрелку рядом с числом и выбрав вариант Подсказка. Если выбрать вариант "Подсказка", то при выполнении запроса пользователь должен будет ввести число записей ранжирования. 5. Перетащите измерение ранжирования в поле слева от поля Основано на. 6. Перетащите меру, на которой должно быть основано ранжирование, в поле Основано на. 7. Перетащите измерение, определяющее контекст вычисления для меры, в поле Ранжировано по. Указывать это измерение не обязательно. Чтобы отобразить поле Ранжировано по, щелкните стрелку справа от меры Основано на. 8. Перетащите любые измерения, которые необходимо включить в ограничение WHERE, в область, расположенную в нижней части схемы ранжирования. 9. Нажмите кнопку Выполнить запрос. См. также • Определенные подзапросы 4.8.4 Ранжирование первых 10 сотрудников с наибольшим окладом в каждом из отделов Панель запросов открыта. 1. Перетащите объекты "Отдел", "Имя сотрудника" и "Оклад" на панель Объекты отчета, расположенную на панели запроса. 2012-12-04 120 Создание запросов 2. Нажмите кнопку Добавить ранжирование в верхней части панели Фильтры запроса. Структура ранга базы данных добавляется на панель Фильтр запроса. 3. Отранжируйте 10 первых сотрудников в нисходящем порядке, выбрав направление/тип ранжирования "Первые" и установив количество записей для параметра "Первые" равным 10. 4. Отранжируйте сотрудников, перетащив объект "Имя сотрудника" в поле рядом с количеством записей. 5. Выберите ранжирование сотрудников по окладу, перетащив объект "Оклад" в поле Основано на. 6. Щелкните стрелку рядом с мерой Основано на, если поле Ранжировано по еще не отображается, чтобы отобразить поле Ранжировано по. 7. Отранжируйте сотрудников по окладу по отделам, перетащив объект "Отдел" в поле Ранжировано по. 8. Выполните запрос, чтобы возвратить ранжирование. 4.9 Фильтрация данных в запросах 4.9.1 Фильтрация данных с помощью фильтров запросов 4.9.1.1 Определение фильтров запроса Применение фильтров при определении запроса позволяет ограничить объем данных, возвращаемых в документ. Благодаря использованию фильтров запроса обеспечивается безопасность данных, которые нежелательно предоставлять определенным группам пользователей, и ограничивается размер документов, хранимых в сети. При выполнении запроса к данным документа запрос возвращает только те значения, которые удовлетворяют определениям фильтра запроса. Фильтры запросов ограничивают возвращаемые в документ данные. С помощью фильтров из базы данных извлекается подмножество данных, и соответствующие значения возвращаются в документ. Фильтры определяются в соответствии с возникающими деловыми вопросами. Например, можно отфильтровать измерение "Год", чтобы просмотреть только доходы от продаж за 2003 год; или отфильтровать измерение "Годовой доход", чтобы получить информацию только о тех заказчиках, годовой доход у которых не менее 1,5 миллиона долларов. 2012-12-04 121 Создание запросов Фильтры запроса позволяют: • извлекать только те данные, которые требуются для ответа на конкретные деловые вопросы; • скрывать данные, которые нежелательно предоставлять конкретным пользователям при просмотре документа; • уменьшать объем данных, возвращаемых в документ, что в свою очередь позволяет оптимизировать производительность системы. Пример: В каких магазинах моего региона продаж валовая прибыль в четвертом квартале 2002 года превысила отметку в 130 тыс. долларов? Региональному менеджеру по маркетингу из Техаса интересно проанализировать валовую прибыль в Техасе, однако юниверс продаж содержит данные по всем регионам США. Кроме того, он желает просмотреть информацию только о тех магазинах, валовая прибыль которых в четвертом квартале 2002 года превысила плановый квартальный показатель, установленный в размере 130 000 долларов. Чтобы создать документ, содержащий только требуемую информацию, необходимо применить фильтры к измерениям "Штат", "Год" и "Квартал", а также к мере "Прибыль": Год Equal to 2002 AND Квартал Equal to К4 Штат Equal to Техас Прибыль Greater than or equal to 130 000 Чтобы не отображать отфильтрованные значения "Техас", "2002" и "К4" в столбцах таблицы "Год", "Квартал" и "Штат", на панели "Объекты результатов" следует исключить объекты "Год", "Квартал" и "Штат". При генерации отчета возвращаются значения, соответствующие тем магазинам в Техасе, чья валовая прибыль за 4-й квартал 2002 года составляла не менее 130 000 долларов: Валовая прибыль Доход от продаж Название магазина 133 802 307 914 e-Fashion Houston 136 055 316 232 e-Fashion Houston Leighton 4.9.1.2 Сравнение фильтров запросов и фильтров отчетов Фильтры в документе можно применять на двух уровнях: • фильтры запросов – эти фильтры определяются в запросах; они отбирают данные, извлекаемые из источника данных и возвращаемые в документ. 2012-12-04 122 Создание запросов • фильтры отчетов – эти фильтры ограничивают значения, отображаемые в отчетах, таблицах, на диаграммах, в разделах документа, но не изменяют данные, извлекаемые из источника данных; они просто скрывают значения на уровне отчетов. 4.9.1.3 Структура фильтров запроса Фильтры запроса имеют следующую структуру: фильтруемый объект, оператор, операнд. В фильтре [Страна] InList (США;Франция) измерение [Страна] – это фильтруемый объект, InList – оператор, а список значений (США;Франция) – операнд. Фильтр удаляет из результатов запроса все значения измерения [Страна], отличные от "США" и "Франция". Таблица 4-35: Компоненты фильтра запроса Описание_Компонент'>Описание Компонент Фильтруемый объект – это объект, значения которого подвергаются фильтрации. В качестве фильтруемых объектов можно использовать измерения, атрибуты, меры, иерархии и уровни. За исключением запросов BEx, фильтруемый объект не обязательно должен появляться в запросе в виде объекта результатов. Например, запрос, содержащий объекты [Заказчик] и [Доход], можно фильтровать по объекту [Регион]. Если фильтр определен как [Регион] Равно "Юго-Запад" , запрос вернет заказчиков только из региона "Юго-Запад". Фильтруемый объект Оператор используется для сравнения фильтруемого объекта с опе- рандом. Например, оператор "Равно" оставляет только те значения фильтруемого объекта, которые точно соответствуют значению опе- ранда. Оператор Операнд предоставляет значение или значения, используемые для фильтрации фильтруемого объекта. В следующей таблице описаны типы операндов. Операнд 2012-12-04 123 Создание запросов Таблица 4-36: Типы операндов Описание Тип операнда Операнд-константа используется для непосредственного ввода значе- ний. Например, константу можно использовать для ввода значения "Франция" в фильтр [Страна] Равно Франция. Операнд не может быть константой, если фильтруемый объект – иерархия и иерархия не используется вместе с операторами Соответ ствует шаблону или Отличается от шаблона. Константа Операнд "Список значений" используется для выбора значений из списка, связанного с фильтруемым объектом. Например, если филь- труемый объект – [Город], список значений можно использовать для выбора одного или нескольких значений, связанных с объектом. Список значений Подсказка – это динамический фильтр, определяемый при обновлении запроса. Подсказка Отфильтровать фильтруемый объект можно относительно значений объекта, выбранного из юниверса. Примечание: Нельзя выбрать объект юниверса в качестве операнда для некоторых источников данных OLAP или если фильтруемый объект является иерархией. Объект юниверса Фильтруемый объект можно сравнить со значениями, возвращенными другим запросом. Результаты из друго- го запроса См. также • Определение запросов BEx 4.9.1.3.1 Фильтр запросов и операторы подсказок Список операторов Оператор "Равно" Оператор "Равно" служит для получения данных, равных значению. 2012-12-04 124 Создание запросов Например, чтобы вернуть данные только по США, создайте фильтр "Страна Равно США". Оператор "Не равно" Оператор "Не равно" служит для получения данных, которые не равны значению. Например, чтобы получить данные по всем странам, за исключением США, создайте фильтр "Страна "Не равно" США". Примечание: Этот оператор не используется для иерархий подчинения на основе UNX-юниверса OLAP или для запросов BEx. Оператор "Больше" Для получения данных, значение которых больше значения переменной, используйте оператор "Больше". Например, чтобы получить данные по клиентам старше 60 лет, создайте фильтр "[Возраст клиента] "Больше" 60". Примечание: Этот оператор не используется для иерархий подчинения на основе UNX-юниверса OLAP или для запросов BEx. Оператор "Больше или равно" Оператор "Больше или равно" служит для извлечения данных, которые больше указанного значения или равны ему. Например, для извлечения данных по доходу начиная с 1,5 млн. долларов, создайте фильтр "[Доход] "Больше или равно" 1500000". Примечание: Этот оператор не используется для иерархий подчинения на основе UNX-юниверса OLAP или для иерархий BEx. Оператор Less Than (меньше) Для получения данных, значение которых меньше значения переменной, используйте оператор Less Than. Например, чтобы загрузить все данные результатов сдачи экзамена с баллом ниже 40, создайте фильтр "[Оценка за экзамен] Less Than 40". Примечание: Этот оператор не допускается использовать для UNX-юниверсов OLAP, иерархий в фильтрах и иерархий в запросах BEx. 2012-12-04 125 Создание запросов Оператор "Меньше или равно" Оператор "Меньше или равно" служит для извлечения данных, которые меньше указанного значения или равны ему. Например, чтобы извлечь данные по клиентам, чей возраст составляет 30 лет и менее, создайте фильтр "[Возраст] "Меньше или равно" 30". Примечание: Этот оператор не допускается использовать для UNX-юниверсов OLAP, иерархий в фильтрах и иерархий в запросах BEx. Оператор "Между" Оператор "Между" служит для извлечения данных между двумя граничными значениями (включая два граничных значения). Первое объявленное значение должно быть меньше второго значения. Например, для извлечения данных для недель начиная 25 и оканчивая 36 (включая недели 25 и 36) создайте фильтр "[Неделя] "Между" 25 и 36". Примечание: Этот оператор не используется для UNX-юниверса OLAP и для иерархий BEx в фильтрах. Оператор "Не между" Оператор "Не между" служит для извлечения данных, которые не попадают в диапазон между двумя значениями. Например, для извлечения данных по всем неделям года за исключением недель с 25 по 36 (не включительно) создайте фильтр "[Неделя] "Не между" 25 and 36". Примечание: Этот оператор не используется для UNX-юниверса OLAP и для иерархий BEx в фильтрах. Оператор "В списке" Оператор "В списке" служит для извлечения данных, соответствующих значениям из списка. Например, чтобы извлечь данные только для США, Великобритании и Японии, создайте фильтр [Страна] "В списке", где можно вводить значения в поле "Ввод значений", и укажите в этом поле значение "США;Великобритания;Япония". При использовании фильтра запросов с иерархическим списком значений (из измерения, связанного с иерархическим списком значений, или объекта иерархии), оператор "В списке" позволяет выбирать более одного элемента из любых уровней иерархии. Например, запрос в иерархии [География] с оператором "В списке" позволяет выбрать в запросе [Париж] на уровне "Город" и [Канада] на уровне "Страна". При использовании с фильтром отчета оператор "В списке" выдает простой список значений. 2012-12-04 126 Создание запросов Оператор "Не в списке" Оператор "Не в списке" служит для извлечения данных, которые не соответствуют набору значений. Например, чтобы не извлекать данные для США, Великобритании и Японии, создайте фильтр "[Страна] "Не в списке", где можно вводить значения в поле "Ввод значений", и укажите в этом поле значение "США;Великобритания;Япония". При использовании с иерархическим списком значений (из измерения, связанного с иерархическим списком значений, объекта иерархии или объекта уровня) оператор "Не в списке" позволяет выбирать множество объектов-элементов на любых уровнях иерархии. Например, подсказка для иерархии [Географическое положение], использующее оператор "Не в списке", позволяет выбрать [Париж] на уровне "Город" и [Канада] на уровне "Страна". Примечание: Этот оператор можно использовать только в определенных типах иерархий, например в иерархиях на основе уровней. Оператор "Соответствует шаблону" Оператор "Соответствует шаблону" служит для извлечения данных, которые содержат определенную строку или часть строки. Например, для извлечения клиентов, которые родились в 1972 году, создайте фильтр "[ДР] "Соответствует шаблону" "72"". Примечание: Этот оператор не используется для иерархий BEx. Оператор "Отличается от шаблона" Оператор "Отличается от шаблона" используется для получения данных, в которых отсутствует определенная строка. Например для получения сведений о покупателях, дата рождения которых отличается от 1972, создайте фильтр "[Дата рождения] "Отличается от шаблона" "72"". Примечание: Этот оператор не используется для иерархий, в которых родительским элементом служит UNX-юниверс OLAP или BEx. Оператор "Оба" Оператор "Оба" служит для извлечения данных, соответствующих двум значениям. Например, для извлечения клиентов, у которых есть как стационарный, так и мобильный телефоны, создайте фильтр [Тип учетной записи] "Оба" "Стационарный" And "Мобильный". 2012-12-04 127 Создание запросов Примечание: Этот оператор не поддерживается в фильтрах на базе иерархических объектов, а также в юниверсах на базе источников данных OLAP. Оператор "Кроме" Оператор "Кроме" служит для извлечения данных, которые соответствуют одному значению и исключают другое. Например, чтобы извлечь клиентов, у которых есть стационарный телефон и нет мобильного, создайте фильтр "[Тип учетной записи] "Стационарный" "Кроме" "Мобильный"". Оператор "Кроме" является более ограничивающим, чем операторы Отличается от шаблона или Не в списке. Например, в отчете, который возвращает список покупателей и содержит фильтр [Линии] "Отличается от" "Аксессуары" опускаются все записи о продажах, где проданный элемент является частью линии "Аксессуары". Если один и тот же покупатель приобрел элементы из раздела "Аксессуары" и "Не аксессуары", он все равно будет включен в отчет, но зарегистрировано будет только количество денег, потраченное на приобретение товаров из раздела "Не аксессуары". Если фильтр настроен [Строки] "Кроме" "Аксессуары", то в отчет включаются только клиенты, которые не приобретали аксессуары. Примечание: Этот оператор не поддерживается в юниверсах на базе источников данных OLAP. См. также • Оператор "Отличается от шаблона" • Оператор "Не в списке" Ограничения для операторов фильтра В следующей таблице перечислены ограничения для операторов подсказки и фильтра с учетом фильтруемого объекта и типа запроса. Доступные фильтры Объект Равно , Не равно, В списке, Не в списке, Соответствует шаблону , Не соответству ет шаблону Иерархия на базе уровня Равно , В списке, Соответствует шаблону Иерархия подчинения РавноВ списке Иерархия в запросе BEx 2012-12-04 128 Создание запросов 4.9.1.4 Типы фильтра запроса Можно создать фильтры следующих типов: • предопределенные фильтры – создаются администратором; • пользовательские фильтры – определяются пользователем для запроса; • упрощенные фильтры – упрощенная форма пользовательского фильтра для создания несложных фильтров; • подсказки – эти динамические фильтры создаются, чтобы отобразить вопрос или список значений, с помощью которых пользователи могут выбирать различные значения для фильтра при каждом запуске запроса. В одном запросе можно использовать фильтры различных типов. 4.9.1.4.1 Предопределенные фильтры запросов Предопределенные фильтры обеспечивают постоянную доступность конкретных данных, которые чаще всего нужны в отчетах. Эти фильтры создаются администратором и сохраняются вместе с юниверсом. Предопределенные фильтры часто содержат сложные выражения, для построения которых требуется доскональное знание структуры базы данных. После включения в юниверс предопределенных фильтров отпадает необходимость каждый раз создавать одни и те же пользовательские фильтры при создании новых документов на основе данного юниверса. Просматривать компоненты, из которых состоят предопределенные фильтры, и изменять эти фильтры невозможно. Выбор предварительно заданного фильтра запроса • Дважды щелкните предварительно заданный фильтр или перетащите его на панель Фильтры запроса. При выполнении запроса в отчет возвращаются данные, соответствующие выбранным фильтрам запроса. 4.9.1.4.2 Быстрые фильтры Быстрые фильтры позволяют быстро определить значения, которые необходимо извлекать для определенного объекта результата, не запуская редактор фильтров. По умолчанию быстрые фильтры используют оператор равенства ("Равно"), если выбрано одно значение, или оператор вхождения в список ("В списке"), если выбрано несколько значений. Пример. • При выборе измерения [Состояние платежа] и значения "не оплачено" создается фильтр: [Состояние платежа] Equal to "не оплачено" • При выборе измерения [Страна] и значений "США", "Япония", "Германия" создается фильтр: [Страна] в списке "США;Япония;Германия". 2012-12-04 129 Создание запросов |