Учебник 1: Создание простого списка
В этом разделе приведены пошаговые инструкции по созданию отчета со списком клиентов, номеров телефонов и
контактных лиц. В отчете используются данные из примера базы данных, входящего в состав проектировщика
отчетов BIRT (Classic Models). На Рис. 1-1 показан фрагмент
готового отчета.
Рис. 1-1 Отчет со списком клиентов, номерами телефонов и контактными лицами.
В ходе данного упражнения нужно будет выполнить следующие задачи:
- Создайте проект.
Если вы пользуетесь проектировщиком отчетов BIRT RCP, этот шаг выполнять не нужно.
Задача 1: Создайте проект.
В Eclipse файлы хранятся в составе проектов. Можно хранить все отчеты в одном проекте, а можно - в
нескольких, разделив их по категориям. Для каждого проекта Eclipse создает отдельный каталог в файловой
системе.
Если вы пользуйтесь проектировщиком отчетов BIRT RCP, этот шаг выполнять не нужно.
- Выберите Файл->Создать->Проект. Появится окно
Создать проект, показанное на рис. 1-2, со списком возможных типов
проектов.
Рис. 1-2 Новый проект
- Разверните раздел Бизнес-аналитика и отчеты,
выберите пункт Проект отчета и нажмите кнопку Далее.
- В окне Создать проект отчета введите следующий текст,
как показано на рис. 1-3:
- Для создания проекта нажмите кнопку Готово. Проект
будет показан в Навигаторе (см. рис. 1-4).
Рис. 1-4 Проект в дереве объектов Навигатора
Задача 2: Создайте отчет.
Отчет можно создать несколькими способами:
- Создать отчет с нуля.
- Воспользоваться шаблоном.
В проектировщике отчетов BIRT предусмотрены памятки с
пошаговыми инструкциями по созданию всех видов отчетов.
В данном учебнике отчет создается с нуля.
- Выберите Файл->Создать->Отчет. Появится окно
Создать отчет. Соответствующее окно проектировщика отчетов BIRT показано на
рис. 1-5. Новый отчет в окне проектировщика
отчетов BIRT немного отличается от существующих.
Рис. 1-5 Новый отчет в окне проектировщика отчетов BIRT
- Выберите созданный проект в разделе Введите или выберите
родительскую папку окна проектировщика отчетов BIRT. Этот шаг нужно выполнять только пользователям
проектировщика отчетов BIRT.
- Введите следующее имя файла:
- Нажмите кнопку Далее. В окне создания отчета
предусмотрена возможность создания отчета с нуля или на основе одного из шаблонов, как показано на
рис. 1-6.
Рис. 1-6 Шаблоны отчетов в окне Создать отчет
- Выберите опцию Пустой отчет и нажмите кнопку Готово.
Новый отчет будет показан в главном окне. Это окно будет представлять собой редактор макета, показанный на
рис. 1-7. В редакторе макета будет показана пустая страница отчета.
В дальнейших разделах этого учебника приведены подробные инструкции по созданию отчета о клиентах
компании.
Рис. 1-7 Создание отчета с нуля
Задача 3: Создайте источник данных
Перед созданием макета отчета нужно создать источник данных BIRT для подключения отчета к базе данных или
одному из других источников данных. Создание источника данных заключается в указании класса драйвера, имени
источника данных и параметров соединения, включая идентификатор пользователя и пароль. В этом учебнике в
качестве источника данных используется пример базы данных (Classic Models), настроенный для применения с
проектировщиком отчетов BIRT. Для этого примера базы данных не нужно указывать параметры соединения.
- Откройте меню данных. Если вы пользуетесь стандартной
проекцией создания отчетов, меню данных находится слева от редактора отчетов, рядом с палитрой, как показано
на рис. 1-8. Если оно не показано, выберите Окно->Показать
панель->Меню данных.
Рис. 1-8 Меню данных
- Щелкните правой кнопкой мыши на опции Источники данных и
выберите опцию Создать источник данных. Появится окно со списком поддерживаемых типов источников данных,
показанное на рис. 1-9.
Рис. 1-9 Новый источник данных
- Выберите в списке типов источников данных базу данных
Classic Models Inc. Оставьте без изменения предложенное по умолчанию имя источника данных и нажмите кнопку
Далее. Будут показаны параметры соединения с источником данных.
- Нажмите кнопку Готово. Проектировщик отчетов BIRT
создаст источник данных и соединение с указанным примером базы данных. Источник данных будет добавлен в
список источников данных в меню данных, показанное на рис. 1-10.
Рис. 1-10 Источники данных в меню данных
Задача 4: Создайте набор данных
Теперь можно приступить к созданию набора данных. Набор данных представляет собой описание данных,
извлекаемых из источника. Если в отчете используется источник данных JDBC, в качестве набора данных можно
указать оператор SQL SELECT.
- В меню данных щелкните правой кнопкой на опции Наборы
данных и выберите опцию Создать набор данных в контекстном меню.
- В окне Создать набор данных укажите следующее значение в
поле Имя набора данных, как показано на рис. 1-11:
- Оставьте значения по умолчанию в остальных полях:
- В поле Источник данных будет указано имя источника
данных, созданного ранее.
- В поле Тип набора данных будет указан оператор SQL SELECT.
- Нажмите кнопку Далее.
В поле Запрос будет показана дополнительная информация по
созданию запроса SQL. В списке Доступные элементы будут показаны все таблицы базы данных Classic Models. Для
просмотра столбцов таблицы нужно щелкнуть на знаке плюса (+) рядом с таблицей. В текстовой области в правой
части окна Изменить набор данных будут показаны необходимые ключевые слова оператора SQL SELECT:
- Введите следующий оператор SQL SELECT в текстовой
области:
Хотя в редакторе набора данных имена таблиц и столбцов будут
показаны прописными буквами, указывать их можно в любом регистре, поскольку в языке SQL регистр не
учитывается. Если вы не хотите вводить запрос, можно перенести столбцы и таблицы из списка Доступные элементы
в текстовую область.
Новый оператор SELECT, показанный на
рис. 1-12, извлекает значения из столбцов CUSTOMERNAME,
CONTACTLASTNAME, CONTACTFIRSTNAME и PHONE таблицы CUSTOMERS.
Рис. 1-12 Оператор SQL SELECT в окне Изменить набор данных
- Нажмите кнопку Готово для сохранения набора данных.
В окне Изменить набор данных будут показаны столбцы, выбранные для запроса, и опции изменения набора данных.
- Нажмите кнопку Просмотр результатов для проверки запроса
и правильности возвращаемых данных. Если оператор SELECT указан правильно, запрос выдаст результаты,
показанные на рис. 1-13. Это строки данных, возвращаемые запросом.
Рис. 1-13 Строки данных, возвращаемые оператором SQL SELECT
- Нажмите кнопку OK.
Задача 5: Создайте макет отчета
Эта процедура заключается в размещении элемента набора данных на странице отчета. Сначала нужно вставить
элемент таблицы, а потом элементы данных в таблицу. Очень важно понять набор функций, предоставляемый
таблицей.
- В таблице будут показаны все строки данных,
входящие в набор.
- Строки и столбцы таблицы можно расположить в любом
удобном порядке.
- Выберите палитру. На палитре показаны все элементы,
которые можно включить в отчет.
- Перенесите элемент таблицы из палитры в макет
отчета. В окне Вставить таблицу нужно будет указать количество строк и столбцов.
- Укажите 3 столбца и 1 строку и нажмите кнопку OK. В
макет будет добавлена таблица, состоящая из трех столбцов и одной строки. Теперь можно перейти к вставке
данных в таблицу.
- Откройте меню данных.
- В меню данных разверните наборы данных, а затем
набор данных Customers. В разделе Customers будет показан список столбцов запроса.
- Перенесите столбец CUSTOMERNAME из меню данных в
первую ячейку таблицы, как показано на рис. 1-14. В строке данных
будут показаны данные отчета. В готовом отчете в строке данных будут последовательно показаны все строки
набора данных.
Рис. 1-14 Перенос столбца из меню данных в ячейку таблицы
Проектировщик отчетов BIRT создает именованный столбец,
привязанный к полю набора данных. Укажите привязку данных, как показано на
рис. 1-15.
Рис. 1-15 Именованный столбец, привязанный к полю набора данных
- Нажмите кнопку OK для принятия привязки данных,
предложенной по умолчанию.
В ячейке таблицы, в которую было перенесено поле
CUSTOMERNAME, будет показан элемент данных [CUSTOMERNAME]. Над этим элементом будет показан элемент метки,
который автоматически создается для строки заголовка. Элемент метки представляет собой имя поля. Он
выступает в роли заголовка столбца. На
рис. 1-16 показаны элементы
данных и меток.
Рис. 1-16 Элементы данных и меток в таблице
- Перенесите поле PHONE из меню данных во вторую ячейку
строки данных. Нажмите кнопку OK для принятия привязки данных, предложенной по умолчанию.
- Перенесите поле CONTACTFIRSTNAME из меню данных в
третью ячейку строки данных. Нажмите кнопку OK для принятия привязки данных, предложенной по умолчанию.
- Перенесите поле CONTACTLASTNAME в третью ячейку строки
данных под значение CONTACTFIRSTNAME. Нажмите кнопку OK для принятия привязки данных, предложенной по
умолчанию. Страница отчета должна выглядеть так, как показано на рис.
1-17.
Рисунок 1-17 Сведения о клиенте и контактная информация в таблице
- Откройте вкладку Просмотр в нижней части окна
редактора макета. Проектировщик отчетов BIRT создаст и покажет отчет в формате HTML, как показано на
рис. 1-18. Пролистайте отчет до конца. Отчет можно также просмотреть в
формате PDF. Для этого нужно выбрать Файл->Показать отчет в формате PDF в главном меню.
Как показано на
рис.
1-18, данные выбраны правильно, но не упорядочены. Имеет смысл отсортировать данные по алфавиту по имени
клиента. Кроме того, можно улучшить оформление отчета.
Рис. 1-18 Просмотр данных отчета
Задача 6: Отсортируйте данные
При первом просмотре вновь созданного отчета строки данных показаны в том порядке, в котором они
будут получены при выполнении запроса. Порядок строк зависит от различных факторов, включая порядок
их занесения в источник данных. В большинстве случаев будет целесообразно отсортировать строки данных в
отчете.
- Откройте вкладку Макет для возврата в редактор
макета.
- При необходимости откройте редактор свойств. Если вы
пользуйтесь стандартной проекцией создания отчетов, редактор свойств находится под редактором макета. Если
редактор свойств не показан, выберите Окно->Показать панель->Редактор свойств.
- Выберите таблицу в редакторе макета. Для этого нужно
щелкнуть на вкладке Таблица в левом нижнем углу. Эта вкладка появляется при наведении указателя мыши на
данную область. В редакторе свойств можно изменять свойства таблицы, как показано на
рис. 1-19.
Рис. 1-19 Редактор свойств
- Откройте вкладку Сортировка.
- Нажмите кнопку Добавить для создания условия
сортировки. Будет показана строка под полем Ключ сортировки.
- Щелкните на строке под полем Ключ сортировки, затем
нажмите появившуюся кнопку со стрелкой и выберите значение CUSTOMERNAME в выпадающем списке.
- Оставьте без изменения значение По возрастанию в поле
Направление сортировки, как показано на рис. 1-20.
Рис. 1-20 Сортировка по возрастанию
- Просмотрите отчет. Данные будут отсортированы по имени
клиента, как показано на рис. 1-21.
Рис. 1-21 Сортировка данных по имени клиента
Обратите внимание на то, что значения, начинающиеся с
прописной буквы, показаны в начале списка. BIRT сортирует данные по значениям кодовых точек UCS2. В наборах
символов на основе ASCII значения кодовых точек у прописных букв меньше, чем у строчных. Поэтому
прописные буквы при сортировке по алфавиту идут раньше строчных.
- Для сортировки записей по именам клиентов без учета
регистра, чтобы компания ANG Resellers была показана после American Souvenirs Inc., а не до нее, нужно
указать следующее выражение в поле Ключ сортировки:
Это выражение переводит названия клиентов в верхний регистр
с помощью функции JavaScript toUpperCase() перед сортировкой. В именах функций JavaScript учитывается
регистр символов, поэтому нужно ввести toUpperCase() именно так, как указано. Регистр символов также
учитывается в именах столбцов. В данном выражении должно быть указано row["CUSTOMERNAME"]. Если вы
укажете, например, row["customername"], при создании отчета проектировщик BIRT выдаст
сообщение об ошибке. Регистр букв в имени столбца можно сверить с его написанием в меню данных.
- Просмотрите отчет. Названия клиентов будут показаны в
другом порядке. Значения, начинающиеся с прописных букв, не будут находиться в начале списка.
Задача 7: Отформатируйте отчет
После проверки правильности данных и их сортировки можно приступить к оптимизации оформления отчета. Для
этого нужно выполнить следующие задачи:
- Изменить заголовки столбцов
- Отформатировать заголовки столбцов, чтобы они отличались от строк данных.
- Обеспечить вывод имен и фамилий контактных лиц на одной строке.
- Увеличить расстояние между строками.
Изменить заголовки столбцов
- Откройте вкладку Макет для возврата в редактор макета.
- Дважды щелкните на заголовке первого столбца: CUSTOMERNAME.
Заголовки столбцов находятся в первой (верхней) строке таблицы.
- Для замены выделенного текста начните ввод и по
завершении нажмите Enter. Для изменения текста щелкните один раз для снятия выделения с текста, затем
поместите курсор в нужную позицию и добавьте или удалите символы по необходимости.
Укажите следующее значение вместо CUSTOMERNAME:
- Повторите шаги 2 и
3 для изменения заголовков второго и третьего столбцов на
следующие значения:
Отчет должен выглядеть так, как показано на
рис. 1-22.
Рис. 1-22 Отчет с измененными заголовками столбцов
Отформатируйте заголовки столбцов
Форматирование элемента отчета заключается в изменении его свойств. Это можно сделать двумя способами:
- Задать свойства элемента с помощью редактора свойств.
- Создать стиль с нужными свойствами, а затем
применить этот стиль к элементу. Такой подход удобен для применения одного и того же стиля форматирования к
нескольким элементам.
В этой процедуре первый метод будет применяться для выделения заголовков полужирным шрифтом, а второй - для
изменения цвета строки заголовка.
- Для выделения заголовков столбцов полужирным шрифтом с
помощью редактора свойств выполните следующие действия:
- Выделите все заголовки столбцов. Для выделения
нескольких элементов нужно щелкнуть на них, держа нажатой клавишу Shift. В редакторе свойств можно изменять
свойства выделенных элементов, как показано на рис. 1-23.
Рис. 1-23 Свойства выделенных элементов в редакторе свойств
- Нажмите клавишу B для выделения заголовков столбцов полужирным шрифтом.
- Для того чтобы снять выделение с заголовков столбцов,
щелкните мышью за пределами таблицы.
- Для изменения цвета фона строки заголовка с помощью
стиля выполните следующие действия:
- Выберите Элемент->Создать стиль в главном меню.
Появится окно Создать стиль,
показанное на
рис. 1-24. В левой части этого окна будут показаны
категории свойств. В правой части окна показаны свойства выбранной категории.
Рис. 1-24 Создание стиля
- Укажите следующее имя для нового стиля:
- Выберите Фон в списке категорий свойств. Будут показаны
свойства фона, которые можно изменить.
- Укажите цвет фона одним из следующих способов:
- Нажмите кнопку, расположенную рядом со свойством,
затем выберите цвет в появившейся палитре.
- Выберите цвет в выпадающем списке.
Нажмите кнопку OK.
- Выберите таблицу в редакторе макета. Для этого нужно
щелкнуть на вкладке Таблица в левом нижнем углу. Эта вкладка появляется при наведении указателя мыши на
данную область. Над таблицей и слева от нее будут показаны направляющие ячейки, как показано на
рис. 1-25.
Рис. 1-25 Направляющие ячейки над таблицей и слева от нее
- Выберите направляющую ячейку, расположенную рядом
со строкой заголовка. В редакторе свойств будут показаны свойства выбранной строки.
- Выберите Свойства - Общие для просмотра общих
свойств строки.
- Примените новый стиль, выбрав значение table_header_row
в выпадающем списке Стиль. Проектировщик отчетов BIRT применит стиль к строке заголовка, что приведет к
изменению ее цвета.
- Просмотрите отчет. Отчет должен выглядеть так, как
показано на рис. 1-26.
Рис. 1-26 Внешний вид отчета после применения стиля к строке заголовка
На данный момент основное улучшение заключалось в том,
что четко видны и определены заголовки.
Обеспечить вывод имен и фамилий на одной строке
Если поместить несколько элементов в одну ячейку, проектировщик отчетов BIRT создает элементы block.
Если вы знакомы с языком HTML, вы знаете, что каждый элемент block выводится в отдельной строке. Для
вывода нескольких элементов в одной строке нужно пользоваться элементами inline. Кроме того,
можно объединить имя и фамилию в одно значение, как продемонстрировано в данной процедуре.
- Откройте вкладку Макет для возврата в редактор макета.
- Удалите элемент данных, соответствующий фамилии
контактного лица.
- Удалите элемент данных, соответствующий имени
контактного лица.
В списке Выбрать привязку данных будут показаны все
привязки, используемые в отчете. Отметка напротив поля CONTACTFIRSTNAME указывает на привязку, применяемую
для выбранного элемента данных.
- Щелкните на ячейке, в которой показано выражение
dataSetRow["CONTACTFIRSTNAME"], и нажмите кнопку с многоточием (...).
В текстовой области в верхней части окна компоновщика
выражений будет показано следующее выражение:
- Для объединения имен с фамилиями укажите следующее выражение:
На
рис. 1-27 это
выражение показано в компоновщике выражений. Пробел в кавычках (" ") применяется для отделения
имени от фамилии. Можно либо ввести выражение в текстовой области, либо дважды щелкнуть на элементе, который
нужно вставить, в нижнем правом углу окна.
Рис. 1-27 Объединенные поля в компоновщике выражений
- Нажмите кнопку OK, чтобы закрыть компоновщик
выражений, а затем кнопку ОК в окне Выбрать привязку данных для сохранения измененного выражения.
- Просмотрите отчет. Отчет должен выглядеть так, как
показано на рис. 1-28.
Рис. 1-28 Отчет с объединенными полями имен и фамилий
Увеличить расстояние между строками
По умолчанию строки таблицы располагаются на минимальном расстоянии друг от друга. В большинстве случаев
имеет смысл увеличить это расстояние.
- Откройте вкладку Макет для возврата в редактор макета.
- Выделите все ячейки в строке данных (средней строке).
Для выделения нескольких ячеек щелкните на них, удерживая нажатой клавишу Shift. Обратите внимание на то, что
нужно выделить сами ячейки, а не элементы данных в них. Вокруг выделенных ячеек будет показана квадратная
рамка, как на рис. 1-29.
Рис. 1-29 Выделенные ячейки в редакторе макета
В редакторе свойств будут показаны свойства ячеек. В
названии окна редактора свойств будет указан тип выбранного элемента, поэтому в данном случае будет
показано Редактор свойств - Ячейка.
- Нажмите кнопку Отступ. В редакторе свойств
будут показаны свойства отступа. Можно указать размер отступа сверху, снизу, слева и справа от границ ячейки до
элемента данных.
- Задайте отступ в 12 пунктов сверху.
В этот момент у вас может возникнуть вопрос: почему бы не
изменить отступ для всей строки вместо того, чтобы изменять его для отдельных ячеек. В проектировщике отчетов
BIRT не предусмотрено изменение отступа для строк, поскольку эта функция поддерживается не всеми
браузерами.
- Просмотрите отчет. Отчет должен выглядеть так, как
показано на рис. 1-30. Расстояние между строками данных станет
больше.
Рис. 1-30 Вид отчета с увеличенным расстоянием между строками
Задача 8: Создайте заголовок отчета
Теперь осталось только создать заголовок отчета. Заголовок может представлять собой элемент метки, элемент
текста или элемент данных:
- Элемент метки лучше всего подходит для короткого
статического текста, например заголовка столбца.
- Элемент данных лучше всего подходит для вывода
динамических значений из поля данных или поля выражения.
- Элемент текста лучше всего подходит для вывода
нескольких строк текста с различным форматированием или динамическими элементами.
В ходе выполнения данной процедуры текст будет отформатирован с помощью элемента текста и тегов HTML. Отметим,
что не обязательно пользоваться языком HTML для форматирования текста. Однако если вы хорошо знакомы с
HTML и разработкой web-страниц, рекомендуется отформатировать текст с помощью HTML.
- Откройте вкладку Макет для возврата в редактор макета.
- Выберите палитру.
- Перенесите элемент текста из палитры в таблицу.
- В выпадающем списке окна Изменить элемент текста
выберите значение HTML/Динамический текст вместо значения Обычный текст.
Выбрав значение HTML/Динамический текст, можно внедрять в
текст теги HTML и свойства CSS. Самые распространенные теги HTML можно вставлять автоматически, а остальные -
вводить вручную.
- Укажите следующий текст в области текста, как
показано на рис. 1-31:
- Нажмите кнопку OK и просмотрите отчет. Отчет должен
выглядеть так, как показано на рис. 1-32.
Рис. 1-32 Отчет с отформатированным заголовком
Как показано на этом примере, применение тегов HTML с элементом текста позволяет решить несколько задач:
- По-разному отформатировать разные строки в многострочной области текста.
- Вставить динамические значения, например текущую дату.
Кроме того, можно выбрать и другие подходы:
- Воспользоваться двумя элементами метки для вывода первой и
второй строк статического текста.
- Воспользоваться элементом данных для вывода третьей
строки с динамическим значением.
Следующие шаги
Вы только что создали первый отчет и получили опыт работы с некоторыми основными инструментами и функциями
проектировщика отчетов BIRT. С помощью других функций можно создавать более сложные отчеты. В других
главах этой книги, помимо прочего, описаны следующие задачи:
- Подключение к собственному источнику данных
- Создание диаграмм
- Создание параметров отчета для ввода данных
- Создание отчетов с вложенными отчетами
- Условное форматирование элементов отчета
- Условное скрытие отчетов
- Добавление в отчет гиперссылок на другие разделы отчета и web-страницы
