|
|
|||||||||||||||||||||||||||||
|
Введение в Seagate Crystal Reports 8.0 (главы из книги)Источник: Interface Ltd Сергей Маклаков
Аннотация Книга представляет собой практическое руководство по созданию аналитических отчетов с помощью всемирно известного генератора отчетов Crystal Reports. Она содержит как подробное описание функциональности последней версии Crystal Reports 8.0, так и практические советы по созданию сложных отчетов. Книга предназначена как для новичков в области информационных технологий, так и для опытных пользователей. Содержание
Одной из главных задач корпоративных информационных систем является оперативное предоставление информации, необходимой для принятия решений. Вместе с тем, структура современных СУБД, на которых основаны ИС, ориентированы в первую очередь на компактное и непротиворечивое хранение информации, а не на оптимизацию произвольной выборки и представления данных. Вследствие этого информация, хранящаяся в корпоративных информационных системах, как правило, используется неэффективно. Главной проблемой становится не хранение информации, а предоставление ее конечному пользователю в виде отчета в нужном контексте. Традиционно ИС масштаба предприятия имеют ограниченное число встроенных отчетов, прямое назначение которых - предоставление отчетной информации вышестоящим организациям или государственным службам, а не информационная поддержка руководящего звена. Специфика аналитических отчетов, предназначенных для облегчения процесса принятия решений состоит в их изменчивости, поскольку в реальной жизни требования бизнеса меняются чуть ли не каждый день. Заказы на разработку таких отчетов поступают разработчикам отдела автоматизации предприятия (если таковой имеется), либо разработчикам сторонних фирм, причем потребности в аналитических отчетах растут по мере их создания в геометрической прогрессии. Рано или поздно разработчик понимает, что решить эту проблему средствами, встроенными в среду разработки крайне затруднительно. Для такой задачи гораздо лучше подходит специализированный генератор отчетов подобный Crystal Reports. Имеется три пути применения Crystal Reports.
В настоящей книге будут показаны основные возможности среды Crystal Reports Designer 8.0 и приемы создания отчетов средней сложности. Глава 2. Создание простых отчетов2.1. Создание отчета с помощью Standart Report ExpertПервый шаг создания отчета - нажатие (Click) на кнопку Новый Отчет на Bottom bar’е. Открывается диалог Report Gallery (рис. 2.1.1). Report Gallery предлагает несколько опций для построения нового отчета. Существует несколько типов сложных отчетов: Form Letter, Form, Cross-Tab, Subreport, Mail Label, Drill Down и OLAP. Рассмотрим стандартный отчет - Standart Report, который определен по умолчанию. После щелчка по кнопке OK в диалоге Report Gallery открывается диалог Standart Report Expert. Закладка Data служит для выбора источника данных для отчета. Кнопка Database позволяет выбрать в качестве источника базу данных. Щелчок по этой кнопке вызывает диалог Data Explorer, в котором можно выбрать соответствующую базу данных либо с использованием ODBC, либо с использованием драйвера прямого доступа. Кнопка Add позволяет добавить в отчет выбранный источник данных. После выбора таблиц БД можно перейти к закладке Fields Закладка Fields позволяет с помощью кнопок Add и Remove включить в отчет необходимые поля предварительно отобранных для отчета таблиц. Щелчок по кнопке Next переключает диалог на следующую закладку - Закладка Group позволяет сгруппировать данные по какому-либо полю, причем сортировка групп может быть установлена по возрастанию значения поля (числового, строкового или даты), по убыванию или в специальном порядке. Подробнее группировка данных отчета будет рассмотрена позже. Закладки Total и Top N позволяют более эффективно обрабатывать сгруппированные данные. В закладке Total можно выбрать поля, по которым в отчете будет проведено агрегатирование данных. Crystal Reports содержит целый набор агрегативных функций, например суммирование, вычисление среднего, максимального и минимального значения, подсчет количества записей и т.д. Так, сгруппировав клиентов по странам (см. рис. 2.1.5), можно подсчитать количество клиентов в каждой стране и общий объем продаж в каждой стране. Специальная группировка Top N позволит, например, оставить в отчете только те страны, которые занимают N первых мест по объему продаж, а остальные объединить в группу "Прочие". Более подробно возможности агрегатирования и специальной группировки будут рассмотрены в последующих главах. Закладка Chart позволяет включить в отчет деловую графику и содержит, в свою очередь несколько закладок (рис. 2.1.6). Для создания графика в первой закладке (Type) следует выбрать тип графика, во второй (Data) - источник данных. График в Crystal Reports 8.0 может быть создан на основе агрегативной или детальной информации, на основе информации из матричных отчетов или OLAP - источников. Подробнее создание графики будет рассмотрено в главе 6. Закладка Select диалога Standart Report Expert служит для отбора данных для отчета. В закладке можно установить для каждого поля логическое условие - предикат, например значение Last Year’s Sales>3300 (рис. 2.1.7). Если строка удовлетворяет заданным условиям, она включается в отчет. Предикаты, установленные для различных полей объединяются логическим "и". Кнопка Browse Data служит для просмотра значений выбранного поля, причем показываются первые 100 неповторяющихся значений. Группа полей и комбобоксов в правой нижней части закладки контекстные - их тип и количество зависят от типа выбранного поля и условия выборки. Более сложные условия отбора данных можно установить в диалоге Select Report Expert, который будет рассмотрен позже. Закладка Закладка Slyle диалога Standart Report Expert (рис. 2.1.8) служит для форматирования будущего отчета. Crystal Reports содержит 10 предопределенных стилей. В дальнейшем форматирование отчета можно изменить. Кнопка в нижней части закладки позволяет включить в отчет рисунок в формате bmp, например логотип компании. В том случае если отчет строится более чем по одной таблице, в диалоге Standart Report Expert становится доступной закладка Links (рис. 2.1.9). Функциональность этой закладки идентична функциональности диалога Visual Linking Expert, который будет рассмотрен в главе 13. После нажатия на кнопку Finish, открывается главное окно Report Designer (рис. 2.1.10), которое содержит две главные закладки - Design и Preview. Закладка Preview позволяет не только просмотреть отчет, но и редактировать его с "живыми данными" прямо в режиме просмотра. В окне просмотра можно производить многие операции - построение отчета, группировка, суммирование и форматирование. Закладка Design специально предназначена для редактирования отчета. Упражнение
2.2. Вставка в отчет и форматирование полей базы данных. Рассмотрим, как выглядит отчет в закладке Design. Большая белая область в середине закладки - Edit box. Edit box разделен на секции горизонтальными линиями. При добавлении секции в отчет (например, при группировке данных), Crystal Reports автоматически добавляет линию. Серая область слева от Edit box’а дает дополнительную информацию, помогающую работать с данными и объектами. Горизонтальные линии продолжаются в серую область, определяя секции, и Crystal Reports идентифицирует каждую секцию по аббревиатуре или выбранному имени. Секция заголовка отчета Report Header (RH) изображается единожды в самом начале отчета. Секции Page Header (PH) и Page Footer (PF) показываются единожды на каждой странице и обычно используются для заголовков, нумерации страниц и т.д. Секция Detail(D) - это список информации нашего отчета. Секция Report Footer (RF) показывается единожды в самом конце отчета. Для внесения поля в отчет нужно выбрать меню Insert/Database Field или кликнуть по соответствующей кнопке на панели инструментов (см. главу 1). Появляется диалог Field Explorer (рис. 2.2.1), который служит для внесения в отчет полей базы данных, специальных полей, формул и параметров. Панель инструментов диалог Field Explorer имеет следующие кнопки (слева направо):
При внесении поля базы данных доступны только первые две кнопки. Для внесения поля в отчет нужно выбрать поле в списке, перейти в режим внесения объекта и щелкнуть по свободной части какой-либо секции отчета. Можно также перенести поле из списка в секцию отчета методом drag&drop.
Рис. 2.2.1. Диалог Field Explorer. Поля можно выбрать индивидуально, по порядку, или группой. Существует 3 пути выбора поля для отчета:
Поля будут размещены в порядке их расположения в диалоге, но не в порядке выбора. Размер поля в отчете зависит от размера поля в БД. В секцию Page Header одновременно вносится текстовый объект - заголовок поля, который представляет собой название колонки в базе данных. Упражнение 2.2.1Расположите следующие поля БД в секции отчета Detail:Contact Last NameContact First NameContact Title Для просмотра полученного в закладке Preview отчета следует кликнуть по кнопке просмотр на панели инструментов. Отметим, что Status bar в Preview дает информацию об использованных в отчете данных. Он показывает, как много записей выбрано и общее число прочитанных записей. Crystal Reports позволяет нам изменить порядок расположения полей отчета. Для этого можно просто перенести поле внутри секции или между секциями методом drag&drop. Можно также сразу перенести группу полей. Для этого нужно предварительно выбрать их, кликнув по каждому, одновременно нажимая клавишу Shift или Ctrl. Для более тщательного форматирования полей можно использовать специальный инструмент Guidelines- опорными линиями, к которым можно привязать поля отчета. Для отображения Guidelines нужно перейти в меню Files/Options и в закладке Layout включить опции Show Guidelines.
Рис. 2.2.2. Форматирование полей с помощью Guidelines. Для форматирования поля нужно подвести его левый край к опорной линии (а не наоборот!). То, что поле связано с опорной линией, показывают небольшие красные метки по периметру поля. Если с одной линией связаны несколько полей, то перемещение опорной линии в верхней или левой линейке форматирования (рис. 2.2.2) проводит к перемещению группы полей по горизонтали или по вертикали соответственно. Если привязать правый край поля, то с помощью опорной линии можно изменить его размер. Создать новую опорную линию можно, дважды кликнув по линейке форматирования. Удалить опорную линию можно, переместив ее (drag&drop) из линейки форматирования. Упражнение 2.2.2
Таким же способом можно передвигать любые другие поля. После выполнения упражнения отчет должен выглядеть выглядит так:
Рис. 2.2.3. Внешний вид отчета после выполнения упражнения 2.2.2. Если создать отчет и, затем, сохранить или закрыть его, Crystal Reports по умолчанию сохраняет данные с отчетом. Если после этого открыть отчет, он основывается на сохраненных данных. Время и дата последнего обновления данных будут показаны в правой верхней части закладки Preview. Для принудительного обновления данных следует выбрать пункт меню Report / Refresh Report Data либо нажать кнопку F5. Для форматирования поля служит диалог Format Editor (рис. 2.2.4), который можно вызвать, кликнув правой кнопкой мыши по полю и выбрав в контекстном меню пункт Format Field. Закладки диалога Format Editor позволяют задавать свойства полей безусловно (поля выбора) или по условию (кнопки вызова редактора формул справа от каждого условия). С помощью редактора формул можно создать формулу, возвращающую логическое значение "истина" или "ложь". При выполнении условия (значение "истина") форматирование будет выполняться, в противном случае - нет. Синтаксис формул будет рассмотрен в главе 7. Так, опция Suppress позволяет скрыть поле. Если задать формулу, то, например, можно скрывать только поля, содержащие значения меньше 1000.
Рис. 2.2.4. Диалог Format Editor Закладка Common диалога Format Editor содержит следующие опции форматирования:
Закладка Border позволяет создать рамку для объекта. В закладке Font можно установить размер, стиль и цвет шрифта. Закладка Paregraph Formating служит для форматирования текста, если он расположен в несколько строк. С помощью закладки Hyperlink можно установить гиперссылку на другой объект текущего отчета, web-сайт, адрес электронной почты или другой отчета. Упражнение
2.3. Вставка в отчет текстовых объектов. Для вставки текстового объекта нужно кликнуть по кнопке Вставка текстового поля на панели инструментов или выбрать из меню Insert/Text Object. После этого следует перенести маркер и кликнуть по свободному месту в секции отчета, например Page Header. Разместить текстовый объект можно как в режиме Preview Window, так и в Design Window.
Рис. 2.3.1. Текстовый объект После размещения текстового объекта Crystal Reports переходит в режим редактирования. При помощи клавиатуры можно набрать текст, а в верхней части окна появляется окно форматирования текстового объекта. Можно импортировать текст из текстового файла. Для этого в режиме редактирования следует кликнуть правой кнопкой мыши по текстовому объекту и выбрать из контекстного меню Import From File. Поддерживается импорт из файлов формата ASCII, HTML и MS Word. Текстовый объект в Crystal Reports может содержать не только текст, но и поля базы данных, формулы, специальные поля и параметры. Для внесения поля в состав текстового объекта, нужно сначала создать его в какой-либо секции отчета, а затем, находясь в режиме редактирования переместить его (drag&drop) внутрь текстового объекта.
Рис. 2.3.2. Текстовый объект, содержащий поля базы данных. Для того чтобы изменить свойства текстового объекта, необходимо выйти из режима редактирования (кликнув по любому другому полю отчета) и правой кнопкой мыши кликнуть по текстовому объекту. В появившемся контекстном меню следует выбрать Format Text. Диалог Format Editor, служащий для редактирования свойств текстового объекта полностью аналогичен соответствующему диалогу для редактирования свойств поля базы данных. Для возвращения в режим редактирования следует дважды кликнуть по текстовому объекту. Если текстовый объект содержит поля базы данных, специальные поля или формулы, то в режиме редактирования можно задавать свойства для каждого из подобъектов отдельно. Упражнение
2.3. Вставка в отчет специальных объектов. Помимо текстовых полей в отчет могут быть включены специальные поля, которые могут содержать дополнительную информацию, такую как номер страницы, номер записи, дата отчета и т.д. Для вставки специального поля необходимо выбрать меню Insert/ Special Field. Рассмотрим доступные в Crystal Reports специальные поля.
|
|