СТАТЬЯ |
26.01.01
|
Cтатья была опубликована на сайте www.olap.ru
Реляционные базы данных обеспечивают практически весь спектр необходимых функций по анализу данных и составлению отчетов. Тем не менее, немногие организации смогли извлечь преимущества из наиболее гибких и сложных инструментов анализа. Во многих случаях, высококлассные аналитики компании по-прежнему используют электронные таблицы в сочетании с реляционными базами данных для принятия стратегических решений.
Оперативная аналитическая обработка данных Online analytical processing (OLAP) - новая, более гибкая методика анализа корпоративных данных. Crystal Reports поддерживает большинство инструментов OLAP и позволяет вам создавать отчеты для этих баз данных.
Обычно данные компании отображаются в двумерном виде не зависимо от того, просматриваются ли они в средствах для работы с отчетами, таких как Crystal Reports, или в электронной таблице, например, в Microsoft Excel. В случае электронной таблицы (Microsoft Excel) строки и столбцы образуют плоское (двумерное) поле анализа. Можно просматривать, например, такие данные: сбыт товара по регионам, объем проданного по категориям товара, или распределение покупателей по возрасту. Каждый раз вы, как правило, видите одновременно лишь два измерения, даже когда желательно проанализировать комбинацию из трех и более факторов.
Сначала ваша информация может быть представлена в виде электронной таблицы, где информация выводится в двумерном виде, например, сбыт товара в долларах по штатам (быть может, по странам или регионам мира, с возможностью перехода на уровень штатов). Несмотря на то, что одновременно видны лишь два параметра, можно изменять параметры, находящихся как бы за кадром, чтобы ограничить видимые (сбыт в долларах по штатам). Если вам нужны данные о сбыте по штатам, в определенных торговых представительствах, для покупателей определенного возраста или по определенным категориям товара - перед вами по-прежнему будут те же параметры Доллары и Штаты, но численные значения в ячейках таблицы будут отфильтрованы по другим параметрам. Вы можете, также быстро просмотреть данные о сбыте товара по его категориям, возраст покупателей по штатам или какие-нибудь другие сочетания параметров. Использование OLAP инструмента анализа "slicing and dicing", не сложнее, чем перетащить и поместить один параметр на другой. Рис. 1 демонстрирует просмотр многомерной базы данных "FoodMart" в Seagate Analysis, которая прилагается к Microsoft SQL Server 7 0 OLAP Services.
Если реляционные базы данных представляют данные в виде двумерной (плоской) структуры строка/столбец (или поле/запись), то базы данных OLAP применяют для этого многомерную структуру - куб (которая, невзирая на свое название, может содержать в себе более трех измерений данных). Часто кубы строятся на обычных реляционных базах данных (реляционные базы данных заполняются простым вводом или импортом данных, а куб формируется из реляционной базы данных). Кубы можно обновлять или заново заполнять обычным образом, с использованием многомерного анализа данных в реляционной базе данных в реальном времени.
Вы можете спросить, "Как во все это вписывается Crystal Reports?" Crystal Reports может создавать отчеты на основе данных, взятых из двумерной реляционной базы данных. В то же время, Crystal Reports позволяет создавать отчеты на основе OLAP-кубов различных промышленных стандартов. На практике, Crystal Reports может комбинировать отчеты, созданные и на реляционных базах данных и на OLAP-кубах. Есть несколько вариантов:
Хотя до последнего времени OLAP-технология была отчасти фрагментирована и разобщена, стали возникать промышленные стандарты. Crystal Reports будет работать как с ведущими OLAP-базами данных, так и появляющимся стандартом Open OLAP. Таким образом, Crystal Reports 8 может создавать OLAP-отчеты, основанные на кубах, сгенерированных с помощью следующих инструментальных средств:
Crystal Reports может создавать несколько различных типов OLAP-отчетов, в зависимости от OLAP-куба, на котором основан отчет. Обычный тип отчета основан на объекте OLAP-grid (OLAP-сетка). OLAP-сетка внешне и функционально очень похожа на Cross-Tab объект. OLAP-сетка отображает одно или более измерение куба в таблице отчета. Как и в матричном отчете (cross-tab report) можно задавать формат отдельных строк и столбцов. Можно так же легко менять местами или вращать строки и столбцы, меняя, таким образом, вид OLAP-сетки.
В Crystal Reports 8 кроме стандартной OLAP-сетки можно создавать дополнительный тип OLAP-отчета с помощью Informix MetaCube. Создание отчетов методом Informix MetaCube SQL очень похоже на использование стандартной реляционной базы данных при создании отчета по OLAP-данным. Для получения дополнительной информации, отобразите интерактивную справку Crystal Reports, нажмите закладку Contents и перейдите в раздел "Using the Informix MetaCube SQL Method for Reporting" в категории "Creating and Updating OLAP Reports".
Поскольку объект сетки OLAP общий для всех инструментов OLAP , эта статья сосредоточится на нем, как на OLAP методе создания отчетов. Специфическая информация по другим методам содержится в документации к Crystal Reports или в online Help.
Создание отчетов с OLAP-кубами – простая процедура, очень похожая на создание отчетов с обычными реляционными базами данных. Можно либо запустить OLAP Report Expert (Мастер Отчетов) прямо из Report Gallery (Галереи Отчетов) либо выбрать опцию Blank Report (Пустой Отчет). В первом случае, OLAP Report Expert проведет вас шаг за шагом через процедуру выбора куба и измерений, которые будут использоваться в строках и столбцах вашего отчета. Затем мастер создаст отчет, содержащий сетку OLAP. Во втором случае (если была выбрана опция Blank Report) можно вручную создать в отчете один или несколько объектов OLAP-сетка. Создание OLAP-сетки очень похоже на создание объекта Cross Tab
Мастер OLAP Report Expert можно вызвать из Report Gallery, которая возникает каждый раз при создании нового отчета. Просто нажмите кнопку OLAP для использования мастера. Появится окно с закладками, как и в других мастерах Crystal Reports.
В начале на закладке Data (Данные) выберите OLAP-базу данных, на которой будет создаваться ваш OLAP отчет. Нажмите кнопку Server Type (Тип Сервера), чтобы выбрать OLAP базу данных, поддерживаемую Crystal Reports. Появится список типов баз данных.
Если типа вашей OLAP базы данных в списке нет, вам возможно понадобится установить клиентское программное обеспечение для вашей OLAP системы, например, приложение для просмотра кубов. После этого перезапустите программу и попытайтесь создать отчет снова.
Выберите желательный тип OLAP базы данных. В зависимости от вашего выбора, вам придется либо зайти на OLAP-сервер, либо перейти в соответствующую папку к файлу OLAP базы данных, на которой будет создаваться отчет. По завершении выбора все поля на закладке Data будут заполнены. Если в выбранной базе данных содержится более одного куба, выберите куб, по которому будет создаваться отчет, из разворачивающегося списка кубов.
Затем перейдите в закладку Rows/Columns (Строки/Столбцы), показанную на рис.2, чтобы выбрать измерение (или измерения), которые будут размещены в строках и столбцах вашего отчета.
К Crystal Reports 8 прилагается образец Holos OLAP куба для базы данных Xtreme Mountain Bike, Inc, с которым можно поэкспериментировать при создании OLAP-отчетов. Файл XTREME.HDC находится в следующем каталоге: каталог программы Crystal Reports\Samples\Databases\Olap Data. А примеры, приведенные в этой главе, основаны на образце OLAP куба, который прилагается к Microsoft SQL Server 7 0 OLAP Services.
Выберите из списка Dimensions (Измерения) измерение, которое должно содержаться в строке OLAP отчета. Затем просто перетащите его в окно Rows (Строки) или нажмите кнопку Add Row (Добавить Строку). Так же, перетащите в окно Columns (Столбцы) измерение, которое будет в столбце OLAP отчета. Или выделите измерение и нажмите кнопку Add Column (Добавить Столбец).
В окна Rows и Columns можно добавлять более одного измерения. В этом случае Crystal Reports "сгруппирует" их в OLAP отчете. Например, добавлены измерения "Штат" и "Покупатель". Crystal Reports напечатает штаты и покажет покупателей разбитых по штатам. Если измерения случайно попадут в окно Rows или Columns в неверном порядке, можно либо просто перетащить их на правильные позиции, либо выделите измерение и переместите его на правильное положение стрелками "вверх" и "вниз" рядом с окнами Rows и Columns.
Чтобы удалить измерение из окон Rows или Columns, либо перетащите его обратно в список Dimensions, либо выделите соответствующее измерение и нажмите кнопку Remove (Удалить).
Чтобы Crystal Reports мог использовать в OLAP отчете "длинные имена" или "псевдонимы" вместо сокращенного кода, содержащегося в некоторых кубах, следует установить флажок Use Long Field Names (Использовать Длинные Имена Полей). Например, если этот флажок установлен, Crystal Reports выведет полные названия штатов вместо двухбуквенного кода, принятого для обозначения штатов.
Влияние опции Use Long Field Names зависит от используемой базы данных и куба OLAP. Если в OLAP отчете присутствует нечто похожее на сокращенный код, возможно, эта опция не установлена. Однако, если база данных и куб OLAP не предназначены для использования длинных имен и псевдонимов установка этого флажка ничего не изменит.
В зависимости от куба, который вы выбрали для отчета, некоторые измерения могут содержать много уровней или генераций. Генерация (generation) - информация более низкого уровня, на которую дробится верхний уровень. Например, измерение "Продукция" может содержать несколько генераций: тип продукции, название продукции в ее типе, и размеры в названии продукции. Каждая новая генерация детализирует информацию предыдущей, образуя иерархию данных в измерении.
Если в выбранном измерении OLAP отчета есть генерации, то, по умолчанию, при его отображении в Crystal Reports будет показано самая верхняя генерация в иерархии группы. Хотя, возможно, что отчет должен быть отображен именно так, показанный уровень данных может оказаться слишком высоким. Иногда вам приходится добавлять несколько измерений в окна отчета Rows и Columns, чтобы OLAP отчет показал единственное число на пересечении одной строки и столбца. Если нужно увеличить количество отображаемых генераций в данном измерении отчета, дополнительные генерации можно указать в Field Picker'е.
Чтобы вызвать Field Picker, нажмите кнопку рядом с измерением, с которым хотите работать. Появится диалоговое окно Select Fields (Выбрать Поля). Здесь можно выбрать поколения, которые будут использованы в этом конкретном отчете OLAP.
Диалоговое окно Select Fields отображает генерации измерения в иерархическом порядке, помеченные плюсами и минусами, аналогично отображению папок и файлов в Проводнике Windows. Нажав на плюс можно развернуть соответствующий иерархический список, чтобы увидеть подчиненные генерации. Чтобы увидеть только главные генерации (уровнем выше), достаточно нажать на минус и свернуть список.
Когда измерения генерации развернуты до нужного уровня, можно просто выделить или снять выделение с индивидуальных генераций. Выделенные генерации будут включены в отчет, остальные - нет. Можно выделить или снять выделение со всех генераций кнопками Select All и Unselect All. Этими кнопками удобно пользоваться если в отчет надо включить либо почти все либо только некоторые генерации.
Если выбрана генерация верхнего уровня (генерация, у которой есть, по крайней мере, один нижележащий уровень), кнопками Children (Дети) или Descendents (Потомки) можно выбрать определенные уровни поколений ниже выбранного. Рассмотрим следующие поколения измерения "Продукция":
Если выделить генерацию верхнего уровня, а затем нажать кнопку Children, будет выделена только ближайшая подчиненная генерация:
Если выделить генерацию верхнего уровня, а затем нажать кнопку Descendents, будут выделены все подчиненные генерации:
По завершении выбора генераций, необходимых для отчета, нажмите OK. В закладке Rows/Columns ничего не изменится. Чтобы увидеть выбранные генерации, нужно вновь нажать Field Picker.
Перейдите в закладку Filter/Page, показанную на рис.3, чтобы узнать, как влияют
на ваш OLAP отчет остальные измерения куба.
Для того чтобы разбить на страницы отчет, основанный на каком-либо измерении, выберите соответствующее измерение в списке Filter и нажмите стрелку вправо. Еще раз будет открыто диалоговое окно Select Fields, в котором можно снова выбрать любое сочетание генераций (кнопками Children и Descendents). По завершении выбора нажмите OK. Диалоговое окно Select Fields будет закрыто. Выбранное для разбиения измерение появится в списке Page, в правой части закладки. Чтобы впоследствии изменить генерации, на которые будет разбит отчет, вернитесь на закладку Filter/Page и нажмите Field Picker рядом с измерением в списке Page.
В список Page можно добавлять по несколько генераций. В этом случае порядок, в котором Crystal Reports сгруппирует OLAP отчет, можно изменить. Для этого достаточно выделить одно из измерений и переместить его, нажимая стрелки "вверх" и "вниз". Чтобы удалить измерение из списка Page, выберите его в списке и нажмите стрелку "влево". По завершении фильтрации и группировки, и если вас устраивает форматирование, производимое в Crystal Reports по умолчанию, OLAP отчет можно выводить на экран.
В закладках OLAP Report Expert (Мастера OLAP Отчетов) Style (Стиль) и Customize Style (Настройка Стиля) можно настроить формат создаваемых Мастером объектов OLAP Grid. Эти закладки работают точно так же, как и в случае объектов cross-tab. Закладка Labels (Метки) - новая в Crystal Reports 8, она позволяет настраивать метки, которые встречаются вместе с объектом OLAP сетка. Подробнее OLAP метки будут обсуждены в этой главе позже. Наконец, в закладке Chart (Диаграмма) можно выбрать настройки диаграммы, создаваемой по OLAP сетке.
Кнопка Finish (Закончить) в OLAP Report Expert запускает отчет и демонстрирует его в закладке Preview (Предварительный Просмотр). Чтобы сразу перейти к закладке Design и продолжить настройку отчета нажмите кнопку Design Report. В зависимости от того, какие страницы измерений выбраны, вы увидите несколько простых объектов отчета, таких как, дата или заголовок отчета. Так же будут отображены один или более объектов сетки OLAP плюс все группы, созданные для отображения измерений страницы.
Чтобы что-либо изменить в отчете OLAP, можно вернуться в OLAP Report Expert , либо нажав кнопку Report Expert на панели инструментов Standard (Стандартная), либо выбрав в меню Report | Report Expert.
В качестве альтернативы, можно выбрать объект OLAP сетка, просто нажав на его верхний левый угол (если объектов несколько - выберите тот, который следует изменить). Затем нажмите кнопку Object Properties (Свойства Объекта) в панели инструментов Supplementary (Дополнительная), щелкните правой кнопкой мыши и во всплывающем (контекстном) меню выберите Format | OLAP Grid. Появится диалоговое окно с закладками Format OLAP Grid Object, в котором можно внести изменения в измерения и раскладку объекта сетка OLAP.
Вам, наверняка, придется столкнуться с ситуацией, когда нужно в стандартной базе данных создать отчет, содержащий одну или несколько сеток OLAP. Опция дает большую гибкость при создании отчетов такого типа. Просто создайте базовый отчет, одним из описанных в этой книге способов.
Может оказаться полезным построить главный отчет относительно некоторых полей вашей OLAP базы данных. Чтобы использовать OLAP базу данных для главного отчета, найдите ее в Data Explorer (Проводнике Данных). Например, можно найти источник ODBC данных установленный именно для вашей OLAP БД, или использовать OLE DB в категории Other Data Sources (Другие Источники Данных) для связи с данными Open OLAP. По завершении выбора, можно войти в вашу OLAP БД. Перед вами будет выведен либо список OLAP куба или кубов, либо связанных таблиц, которые использовались в Data Explorer при создании куба. К отчету можно добавить столько кубов сколько нужно. В зависимости выбранного вами от типа БД Field Explorer выведет измерения и поколения для выбранных кубов или поля в выбранных таблицах. Эти поля можно добавлять к главному отчету как обычные поля БД. Возможно, вам понадобится немного поэкспериментировать, чтобы определить какие из измерений и поколений могут использоваться, - OLAP данные часто ведут себя не так как данные реляционных БД. Когда главная часть вашего отчета готова, можно добавить необходимые OLAP сетки.
Хотя опция Blank Report и позволяет обращаться к кубу OLAP, здесь нельзя вставлять значения куба ни в какие разделы отчета. Можно лишь вставлять и управлять именами измерений. Единственный способ вставить числовые величины из куба - это создать сетку OLAP.
Для того чтобы создать OLAP сетку в уже существующем отчете, выберите из ниспадающего меню команду Insert (Вставить) | OLAP Grid. Появится диалоговое окно Insert OLAP Grid Object (Вставить Объект OLAP Сетка).
Закладки в этом окне ведут себя почти так же, как аналогичные закладки в мастере OLAP Report Expert, описанном в предыдущей главе. Чтобы выбрать куб и измерения для сетки OLAP, в закладках Data и Rows/Columns выполните описанные выше действия. В закладках Style и Customize Style сетку OLAP можно отформатировать. Две закладки заслуживают более подробного обсуждения: Filter/Page и Labels.
Как уже было сказано выше, фильтр измерения можно настроить, нажав на Field Picker рядом со списком Filter. Здесь все работает так же. Однако методика выбора Page измерений (измерений для разбиения на страницы) немного отличается от методики, описанной ранее для OLAP Report Expert.
В случае OLAP Report Expert, все измерения, выбранные как Page измерения, создадут в отчете одну или несколько групп автоматически. Опция позволяет вам создавать структуру отчета по своему усмотрению, возможно с вашей собственной группировкой. Если в группах должна присутствовать OLAP сетка (например, если отчет сгруппирован по регионам и нужно, чтобы OLAP сетка была в заголовке каждой группы, для вывода информации специфической для каждого региона), то нужно заранее подумать, как добавить измерение Page. Выбранное вами измерение Page задает надлежащее "выравнивание" сетки OLAP в существующей группировке отчета.
Установить измерение как измерение Page можно также, выбрав его в списке и нажав "стрелку вправо", при этом появится другое диалоговое окно
Как и предлагает заголовок окна, нужно связать измерение, выбранное в качестве измерения Page, с полем реляционной БД, по которой создается отчет.
На этой иллюстрации измерение Store из сетки OLAP связывается с полем Store Name, которое использовано при группировке существующего отчета. Если сделать правильный выбор, сетка OLAP будет показывать данные именно для той группы, в которой она находится.
Многие кубы, даже умеренной сложности, часто содержат несколько измерений. Несмотря на это, объект OLAP сетка не обладает высоким уровнем интерактивности характерным для OLAP инструментов анализа "slicing and dicing" (например, Seagate Analysis). Также Вам, вероятно, придется использовать лишь несколько измерений (или только одно) для строк и столбцов. Остальные измерения, фактически не появляющиеся в виде строк и столбцов (часто называемые уточняющими измерениями) могут быть либо просто проигнорированы, либо быть использованы в качестве фильтрующих или Page измерений. Особый интерес представляет информация о том, как программа просмотра отчета сможет узнать настройки фильтрующего измерения: если сетка OLAP ограничена лишь одним продуктом, одним полом, и одним магазином, как это будет известно? Ответ: посредством меток OLAP.
При создании сетки OLAP мастером OLAP Report Expert или вручную, OLAP метки добавляются автоматически так, как показано здесь.
Обратите внимание, что перечислены все измерения Filter (например, 1997). В противном случае появятся обозначения All. Это указывает программе просмотра отчета, что на OLAP сетку наложены ограничения. Можно сократить предложенный набор меток OLAP, например, оставить только фильтрующие измерения. Можно также настроить способ отображения меток OLAP. Для этого нажмите закладку, показанную на рис. 16-4, в мастере OLAP Report Expert или в диалоговом окне Format OLAP Grid Object (Формат Объекта Сетка OLAP).
По умолчанию, все уточняющие измерения (те, что присутствуют в кубе, но не являются строками или столбцами в сетке) помещены в правое поле Labeled Dimensions (Измерения с Метками). Здесь можно изменить порядок, в котором они появляются вслед за сеткой OLAP. Для этого выберите метку и переместите ее вверх или вниз маленькими стрелками над полем Labeled Dimensions. Если какая-либо не должна появляться, выделите ее и, нажав стрелку "влево" переместите в поле Unlabeled Dimensions (Измерения без Меток).
Можно также подобрать интервалы между метками, которыми разделит их Crystal Reports, указав их новые значения в текстовых полях Vertical Gap (Вертикальный Промежуток) и Horizontal Gap (Горизонтальный Промежуток). И, наконец, можно выбрать, где расположить весь набор меток: сверху или слева от OLAP сетки (либо вообще не показывать их).
Когда все необходимые изменения в диалоговое окно Format OLAP Grid Object внесены, нажмите OK. Возле курсора мыши появится контур объекта сетка OLAP.
Поместите объект в желательной части отчета (если для объекта сетка OLAP было выбрано Page измерение, убедитесь, что объект будет помещен во всех необходимых разделах отчета, таких как заголовки групп).
В дальнейшем можно внести изменения или дополнения в объект сетка OLAP. Для этого выделите его, а затем отформатируйте при помощи опций из ниспадающего меню, кнопки Object Properties (Свойства Объекта) в панели инструментов Supplementary или опций формата из контекстного меню (возникающего при нажатии правой клавиши мыши).
Сетка OLAP "указывает" на определенное положение куба OLAP на сервере. В случае если это положение изменяется, или требуется создать отчет на другом кубе без перепроектирования всей сетки OLAP, нужно изменить положение базы данных OLAP, на которое ссылается сетка.
Выберите сетку OLAP, нажав на ее левый верхний угол, которую надо изменить. Щелкните правой клавишей мыши и выберите из всплывающего контекстного меню команду Set OLAP Cube Location (Установить Положение OLAP Куба), либо выберите Database I Set OLAP Cube Location в ниспадающем меню. Появится диалоговое окно Set OLAP Cube Location.
Выберите новый куб OLAP или новое положение сервера для соответствующей базы данных OLAP. Затем нажмите Ok.
Сетка OLAP организует информацию куба в виде строк и столбцов почти так же, как и Cross-tab-объект. Поэтому форматирование и изменение OLAP сетки по существу совпадает с форматированием матричного отчета. При форматировании OLAP сетки следует использовать закладки Style или Customize Style. Здесь можно выбрать либо встроенные стили на закладке Style, либо произвести более детальное форматирование отдельных элементов на закладке Customize Style.
Выберите индивидуальные поля, образующие сетку OLAP, и измените их размер или отформатируйте по отдельности. При измерении размеров каждого поля, соответствующие строка и столбец также изменятся. Можно изменить тип, размер и цвет шрифта. Также, при форматировании числовой информации, например, полей со значениями OLAP сетки, можно выбрать округление, положение десятичной точки, обозначение денежной единицы, и другие элементы форматирования, применимые к данному типу поля.
Выполните условное форматирование, используя значения в сетке OLAP, основанные на фактических числовых данных, содержащихся в ячейках, либо основанные на Row или Column поле ячейки (это новая возможность появилась в версии 8).
Форматирование сеток OLAP практически идентично форматированию cross-tab объектов.
Хотя Crystal Reports не обладает достаточной "slice and dice" гибкостью по сравнению с вашими специализированными инструментами OLAP анализа, удивительно, как легко можно перенастроить вид объекта сетки OLAP. При создании сетки OLAP, вы выбираете, какие измерения будут строками, а какие - столбцами. Если выбрано несколько измерений для строк или столбцов, они будут сгруппированы согласно порядку их добавления.
В дальнейшем можно изменить порядок группировки строк или столбцов OLAP сетки, переставить или повернуть строки и столбцы. Это просто и прозрачно, просматриваете ли вы сетку OLAP на закладке Preview или работаете с ней в закладке Design:
Обсудить на форуме Seagate
Отправить ссылку на страницу по e-mail
Interface Ltd.Отправить E-Mail http://www.interface.ru |
|
Ваши замечания и предложения отправляйте автору По техническим вопросам обращайтесь к вебмастеру Документ опубликован: 26.01.01 |