Селекционный выбор. Руководство пользователя sap businessObjects Web Intelligence
Скачать 3.62 Mb.
|
4. Нажмите кнопку Далее. Выполняются сопоставления по умолчанию для исходных и целевых объектов. Если в источниках данных содержатся иерархические данные, все объекты иерархии отображаются под родительской иерархией. 5. Для каждой пары объектов сопоставляемых вручную щелкните кнопку ... для вызова диалогового окна «Отображение объекта». 6. Диалоговое окно «Отображение объекта» используется для выбора объектов из нового юниверса, которые заменят объекты текущего юниверса. По умолчанию объекты сопоставляются по типу объекта, типу данных, имени и пути в исходном и целевом источниках данных. Можно принять сопоставление по умолчанию или выбрать собственное. Если сопоставление по умолчанию выполнить невозможно, объект отображается в целевом источнике данных как Удалить результирующий объект. Если объект из нового источника данных не выбран, при смене источника данных не отображаемый объект удаляется из запроса. Если удаленный объект является отфильтрованным объектом или основанным на ранжировании базы данных, выводится предупреждение. При удалении такие объекты удаляются из ранжирования или подзапроса. Если удаленный объект является отфильтрованным объектом в запросе по фильтру запроса, выводится сообщение с предупреждением. При удалении объекта запрос по фильтру запроса удаляется. 7. Для изменения источника данных нажмите кнопку Готово. 4.6 Работа с множественными запросами 4.6.1 Использование множественных запросов 2012-12-04 110 Создание запросов В документ можно включить один или множество запросов. Эти запросы могут использовать любой из поддерживаемых источников данных. Например, в один документ можно включить и данные о продажах продуктов, и данные о заказчиках. В этом случае корпоративные данные о продажах семейства продуктов доступны в одном юниверсе, а данные о заказчиках – в другом. Необходимо в одном отчете представить результаты продаж семейства продуктов и сведения о возрастных группах заказчиков. Для этого создается один документ, который включает в себя два запроса – по одному для каждого юниверса. Затем в один отчет можно включить результаты выполнения двух запросов и отформатировать их. Определять множество запросов в одном документе необходимо в том случае, когда данные, которые включаются в документ, доступны в нескольких источниках данных, или если нужно создать несколько по-разному настроенных запросов к одному источнику данных. Определить множество запросов можно при формировании нового документа или добавлением дополнительных запросов в существующий документ. В рамках одного документа информацию, полученную в результате выполнения всех запросов, можно представить в виде одного или нескольких отчетов. 4.6.2 Сравнение множественных запросов, комбинированных запросов и синхронизированных запросов В документе множественные запросы могут быть связаны различными способами. • Базовые множественные запросы извлекают несвязанные данные из различных источников. • «Синхронизированные запросы» связывают данные из различных запросов относительно измерения, которое содержит данные, общие для обоих запросов. Такие измерения называются объединенными измерениями. Объединение измерений выполняется после создания и запуска множественных запросов. • «Комбинированные запросы» – это особый вид запросов. Комбинированные запросы генерируют код SQL, содержащий операторы UNION, INTERSECT и MINUS (если база данных их поддерживает), или симулируют действие этих операторов. Комбинированные запросы позволяют получать ответы на сложные бизнес-вопросы, которые трудно сформулировать с помощью стандартных запросов. Примечание: Этот параметр недоступен для баз данных OLAP и для реляционных баз данных UNX. Он доступен только для реляционных юниверсов UNV. 2012-12-04 111 Создание запросов 4.7 Использование комбинированных запросов 4.7.1 Определение комбинированных запросов Комбинированный запрос – это группа совместно выполняемых запросов, которые возвращают один результат. Запросы можно комбинировать с помощью трех операций: • union • intersect • minus При комбинировании запросов с помощью объединения (UNION) принимаются данные из обоих запросов, исключаются повторяющиеся строки и создается комбинированный набор данных. Запрос пересечения (INTERSECT) возвращает данные, присутствующие в обоих запросах. Запрос разности (MINUS) возвращает те данные из первого запроса, которые отсутствуют во втором запросе. Примечание: Не допускается комбинировать запросы BEx и OLAP. Пример: Запросы с использованием операций объединения, пересечения и разности В этом примере два запроса возвращают списки стран, как показано в следующей таблице. Значения Запрос США; Великобритания; Германия; Франция Запрос 1 США; Испания Запрос 2 Различные типы комбинируемых запросов возвращают следующие значения: Значения Тип комбинирования США; Великобритания; Германия; Франция; Испания ОБЪЕДИНЕНИЕ США; Параметр INTERSECT Великобритания; Германия; Франция ВЫЧИТАНИЕ 2012-12-04 112 Создание запросов См. также • Определение запросов BEx 4.7.2 Использование комбинированных запросов Комбинированные запросы позволяют получить ответ на вопросы, которые в противном случае сложно или невозможно сформулировать в рамках стандартного запроса. Пример: Получение наборов данных с помощью комбинированного запроса Рассматриваемый в примере юниверс "Маркетинг островных курортов" содержит измерение "Год", которое возвращает данные о гостях, уже посетивших курорт, и измерение "Год резервирования", которое возвращает данные о гостях, которые планируют приехать на курорт в будущем. Структура базы данных и юниверса такова, что эти объекты несовместимы, а это означает невозможность включить их в один блок отчета. Предположим, необходимо создать список лет, который включает в себя годы, в которые курорт посетили более n гостей, и те годы, в которые более n гостей зарезервировали поездки на курорт. Это можно сделать, используя комбинированный запрос следующим образом. Возвращает Запрос Годы, в которые курорт посетили более n го- стей Запрос 1 ОБЪЕДИНЕНИЕ Годы, в которые более n гостей зарезервиро- вали поездки на курорт Запрос 2 Объединение этих двух запросов возвращает искомый список лет. 4.7.3 Cоздание комбинированных запросов Если база данных поддерживает используемый тип комбинирования, то комбинированные запросы работают на уровне базы данных: они изменяют запрос, который направляется базе данных. При этом создается скрипт запроса, содержащий операторы UNION, INTERSECT или MINUS. 2012-12-04 113 Создание запросов Если база данных не поддерживает присутствующий в запросе тип комбинирования, то комбинирование проводится после извлечения данных. В этом случае все запросы возвращают данные в отчет, а затем данные обрабатываются, и получается результат, который выдал бы комбинированный запрос на уровне базы данных. 4.7.4 Создание комбинированного запроса 1. Создайте начальный запрос на панели запросов. 2. На панели инструментов щелкните значок Добавить комбинированный запрос для отображения панели Комбинированные запросы под списком объектов запроса. На панели Комбинированные запросы отобразится текущий запрос. Можно изменить имя запроса, щелкнув запрос на панели, выбрав в меню команду Изменить имя и введя новое имя в появившемся диалоговом окне Имя. 3. Чтобы добавить другой запрос, нажмите кнопку Добавить запрос. В области Комбинированные запросы появится второй запрос. • Он будет связан с исходным запросом с помощью оператора UNION. • Запрос получит имя Комбинированный запрос #n. 4. Чтобы переключиться на запрос, щелкните его на панели Комбинированные запросы. 5. Чтобы удалить запрос, выберите его в области Комбинированные запросы и нажмите клавишу DELETE либо перетащите запрос в структуру юниверса. 6. Чтобы изменить тип комбинирования, дважды щелкните оператор. Оператор при этом переключается в следующей последовательности: UNION, INTERSECTION, MINUS. 7. Создавайте каждый из запросов, входящих в комбинированный запрос, точно так же, как и любой другой обычный запрос. 8. Нажмите кнопку Выполнить запрос. 4.7.5 Структура комбинированного запроса Запросы в рамках комбинированного запроса должны возвращать одинаковое количество объектов одного типа данных, а объекты должны следовать в одном порядке. Запросы нельзя комбинировать, если количества объектов в результатах запросов и типы данных этих объектов не идентичны. Например, нельзя комбинировать запрос, который возвращает "Год", с запросом, возвращающим "Год" и "Прибыль". Также запрос, который возвращает "Год", не комбинируется с запросом, возвращающим "Прибыль". Необходимо также уделять внимание семантике комбинируемых запросов. Несмотря на то, что можно комбинировать запрос, который возвращает "Год", с запросом, возвращающим "Регион", если оба измерения имеют один тип данных, результат – смешанный список лет и регионов – 2012-12-04 114 Создание запросов вряд ли будет иметь смысл. Обычно, если первый запрос содержит измерение "Год", второй запрос также содержит измерение, которое возвращает список лет. 4.7.5.1 Получение списка лет посещения и лет резервирования на основе количества гостей Требуется создать запрос, который возвращает список тех лет, в которые курорт посетили более n гостей, и тех лет, в которые более n гостей зарезервировали поездки на курорт. Объект, для которого применяется фильтр, должен быть расположен в области «Объекты результатов». 1. Выберите в списке юниверсов юниверс "Маркетинг островных курортов" и откройте панель запросов. 2. Перетащите объекты Year, Number of Guests и Future Guests в область Объекты результатов. 3. Перетащите объект "Количество гостей" на панель Фильтры запроса и создайте фильтр отчета, ограничивающий значения этого объекта до значений, превышающих n. 4. Нажмите Добавить комбинированный запрос. В нижнем левом углу панели запросов откроется панель Комбинированный запрос с двумя запросами, соединенными оператором UNION. 5. Щелкните второй запрос и удалите объекты "Год" и "Количество гостей". 6. Перетащите объект "Год резервирования" на панель Объекты результата. 7. Перетащите объект "Будущие гости" на панель Фильтры запроса и создайте фильтр отчета, ограничивающий значения этого объекта до значений, превышающих n. 8. Нажмите кнопку "Выполнить запрос". Запрос возвратит комбинированный список лет посещения и лет резервирования. 4.7.6 Приоритет при выполнении комбинированного запроса Конечный результат комбинированного запроса может существенно зависеть от порядка выполнения его компонентов. В простейшем случае в комбинированном запросе объединяются два или более запроса, между которыми устанавливается следующее отношение: Запрос 1 Запрос 2 INTERSECTION Запрос 3 2012-12-04 115 Создание запросов В этом случае первым вычисляемым результатом будет пересечение комбинированного запроса n и комбинированного запроса n+1. Следующим результатом будет пересечение первого результата и комбинированного запроса n+2. Выполнение запроса следует этому алгоритму при обработке всех запросов в отношении. Для приведенного выше примера будет возвращен следующий результат: Данные Запрос США; Великобритания; Франция; Германия Запрос 1 США; Франция; Финляндия Запрос 2 США; Франция INTERSECTION запросов 1 и 2 США; Испания Запрос 3 США Окончательный результат INTERSECTION 4.7.6.1 Вложенные комбинированные запросы По умолчанию каждый добавляемый комбинированный запрос объединяется с существующими запросами на исходном уровне комбинирования. Каждый добавляемый запрос расширяет список комбинированных запросов. Если запрос 3 добавляется к запросу 1 и запросу 2, уже связанным отношением UNION, получается следующий результат: Запрос 1 UNION Запрос 2 Запрос 3 Для управления порядком выполнения комбинированные запросы можно вкладывать и создавать сложные, многоуровневые отношения, как в следующем примере, где результат отношения запрос 1 MINUS запрос 2 связывается с запросом 3 отношением INTERSECT. Комбинированный запрос 1 MINUS Комбинированный запрос 2 INTERSECT Запрос 3 2012-12-04 116 Создание запросов Каждая из групп запроса обрабатывается в направлении справа налево и сверху вниз. (Группы с более высоким приоритетом, такие как группа MINUS в приведенном выше примере, отображаются с отступом право.) В приведенном выше примере первым вычисляемым запросом будет запрос MINUS. Затем результат запроса MINUS связывается с запросом 3 отношением INTERSECT. Результат Запрос США; Великобритания; Испания; Германия Запрос 1 Германия Запрос 2 США; Великобритания; Испания Запрос 1 MINUS Запрос 2 США; Испания; Финляндия Запрос 3 США; Испания (Запрос 1 MINUS Запрос 2) INTERSECT Запрос 3 Примечание: Если база данных обеспечивает прямую поддержку типа комбинированного запроса, который нужно выполнить, в сценарий, создаваемый из запроса, операторы комбинирования будут включены непосредственно. В этом случае приоритет зависит от приоритета, определенного в базе данных. Для получения дополнительных сведений обратитесь к администратору базы данных. 4.7.6.2 Установка порядка приоритета комбинированных запросов 1. Создайте запросы, которые необходимо упорядочить, на панели Комбинированные запросы. 2. Чтобы связать два запроса и создать новый узел комбинированного запроса, нажмите кнопку "Добавить новый узел комбинированного запроса", затем перетащите запрос на другой запрос, с которым его требуется связать. По умолчанию для нового узла комбинированного запроса используется отношение UNION. 3. Продолжайте добавлять запросы в группу вложения, перетаскивая их в пространство между двумя уже существующими в группе запросами. 4. Чтобы создать дополнительные группы вложения внутри существующей группы с более высоким приоритетом, повторите два предыдущих шага. 5. При необходимости щелкните операторы комбинирования во всех группах запроса и измените их. 2012-12-04 117 Создание запросов См. также • Создание комбинированного запроса 4.8 Ранжирование данных с использованием ранжирования базы данных 4.8.1 Определение ранжирования базы данных При ранжировании данных они сортируются и фильтруются в соответствии с критерием ранжирования. Из базы данных можно возвращать неранжированные данные, а потом выполнять их ранжирование в отчете. Ранжирование базы данных позволяет ранжировать данные на уровне базы данных, при этом все возвращаемые запросами данные будут уже ранжированы. Ранжирование базы данных имеет следующие преимущества: • Ранжирование может быть трудоемким с точки зрения обработки. При ранжировании базы данных такую обработку выполняет сервер, который, как правило, намного мощнее клиентского компьютера. • Предварительное ранжирование данных сокращает объем данных, передаваемых по сети и сохраняемых в документе. Ранжирование базы данных вносит изменения в создаваемые запросами скрипты. Если база данных, на которой основан запрос, не поддерживает ранжирование, то параметр ранжирования на панели запросов будет недоступен. Примечание: Иерархические объекты нельзя включать в ранжирования базы данных. См. также • Ранжирование данных 4.8.2 Параметры ранжирования базы данных Ранжирование базы данных доступно в области "Фильтры запроса" панели запросов. В таблице ниже приводится описание параметров ранжирования слева направо. 2012-12-04 118 Создание запросов Описание Параметр • Top – ранжирует первые [количество запи- сей] значения в ранжируемом измерении в нисходящем порядке. • Bottom – ранжирует первые [количество значений] значения в ранжируемом измере- нии в восходящем порядке. • Top% – ранжирует первые [количество за- писей] процентов значений в ранжируемом измерении в нисходящем порядке. • Bottom% – ранжирует первые [количество записей] процентов значений в ранжируе- мом измерении в восходящем порядке. Направление и тип ранжирования Количество записей (например, первые 10 за- писей) или процентная доля (например, послед- ние 10%)записей), возвращаемые при ранжи- ровании Количество записей/процентная доля Измерение, используемое при ранжировании. Например, если измерением является "Регион" и ранжирование осуществляется по критерию "Первые 10", то в результате такого ранжиро- вания возвращаются первые 10 регионов. Ранжированное измерение Мера, по которой ранжируется измерение. Например, если выбраны мера "Доход" и изме- рение "Регион", то при ранжировании регионы упорядочиваются по сумме полученного в них дохода. На основе Измерение, определяющее дополнительный контекст вычисления для ранжирования. На- пример, если выбраны измерение ранжирова- ния "Регион", мера "Доход" и измерение "Ран- жировано по" – "Страна", то регионы ранжиру- ются по доходу в каждой из стран. Ранжировано по (необязательно) Дополнительное ограничение значений, воз- вращаемых в результате ранжирования, кото- рое отображается под другими параметрами. Например, ранжирование регионов с услови- ем, ограничивающим параметр "Страна" зна- чением "США", выполнит ранжирование только находящихся в США регионов. Условие WHERE (необязательное) 2012-12-04 119 Создание запросов |