- •Лабораторная работа №5 Составление отчетов
- •Скомпилируйте приложение
- •Скомпилируйте приложение.
- •1. Первый отчет
- •1.1. Простой отчет
- •1.2. Другие типы секций
- •1.3. Получение данных
- •1.4. Фильтрация и сортировка данных
- •1.5. Добавление текста и полей данных
- •2. Создание отчетов
- •2.1. Разметка, единицы измерения и масштаб
- •2.2. Размер бумаги и границы
- •2.3. Выбор шрифта
- •2.4. Заголовок отчета и описание
- •2.5. Добавление секций
- •2.6. Размеры секций
- •2.8. Выключение секций
- •2.9. Добавление печатных компонент к отчету
- •2.2.10.4. Размер
- •2.2.10.5. Стиль шрифта и цвет текста
- •2.2.10.6. Выравнивание
- •2.2.10.7. Выравнивание по секции
- •2.2.10.8. Цвет фона и прозрачность
- •2.2.10.9. Рамки
- •2.2.10.10. Разрешение и запрет
- •2.2.10.11. Печать статического текста
- •2.11. Печать из полей базы данных
- •2.2.11.1. Форматирование вывода
- •2.2.11.2. Печать мемо полей
- •2.2.11.3. Печать простых графических фигур
- •2.12. Печать графики
- •2.2.12.1. Статические изображения
- •2.2.12.2. Изображения, хранящие в таблицах
- •2.13. Печать RichText полей
- •3. Использование выражений
- •3.1. Создание выражений
- •2.3.1.1. Использование полей базы данных в выражениях
- •2.3.1.2. Использование строк в выражениях
- •2.3.1.3. Примеры выражений
- •3.2. Использование выражений
- •3.3. Размер стека
- •4. Создание групп
Скомпилируйте приложение
Рис.6. Результат отчета по связке главной и подчиненной таблиц
Пример №3. Чтобы подключить к форме приложения отчет с вычислением средней зарплаты, выполните следующие действия:
Перенесите компонент Table на форму. Установите активное соединение с таблицей служащих Employee.db.
Перенесите компонент QuickReport на форму. Свойство DataSet связывает отчет с таблицей Table1.Вставьте в полосы заголовков три компонента QRLabel с названиями отчета – «Отчет по служащим» и столбцов – «Фамилия», «Оклад».
Включите компонент QRBand в лист отчета. Свойство BandType определяет роль rbDetail данной полосы – отображать запись таблицы.
Поместите два компонента QRDBText на полосе Detail. Их свойство DataField специфицирует фамилию LastName и оклад Salary.
Рис.7. Форма отчета
Включите ещё один компонент QRBand в лист отчета. Свойство BandType определяет роль rbSummary данной полосы – отображать итоговые вычисления.
пометите два компонента QRExpr на полосе Summary. Откройте редактор свойств Expression и скомпилируйте формулы для подсчета числа служащих и вычисления среднего значения оклада – COUNT(lastName) и Average(Salary).
Рис.8. Форма итогового отчета
Скомпилируйте приложение.
Рис.9. Результат отчета
Пример №4. Чтобы спроектировать форму приложения для отчета с изображениями, выполните следующие действия.
Перенесите компонент Table на форму. Установите активное соединение с таблицей клиентов Clients.dbf.
Перенесите компонент QuickReport на форму. Свойство DataSet связывает отчет с таблицей Table1.Вставьте в полосы заголовков четыре компонента QRLabel с названиями отчета – «Отчет по клиентам»и столбцов – «Имя», «Фамилия», «Фото».
Включите компонент QRBand в лист отчета. Свойство BandType определяет роль rbDetail данной полосы – отображать запись таблицы.
Разместите два компонента QRDBText на полосе Detail. Их свойства Свойство DataField специфицируют поля записи - имя FIRST_NAME, фамилию -LAST_NAME, и компонент QRDImage для отображения фотографии (поле таблицы - IMAGE).
Скомпилируйте приложение.
Пример:
Техническая документация по использованию QuickReport
Данная глава рассматривает, как создавать отчеты, как осуществлять их просмотр и печать из вашей программы.
1. Первый отчет
В данной главе краткое описание по созданию простого отчета. Большинство основных компонент QuickReport будут кратко рассмотрены в процессе создания отчета.
1.1. Простой отчет
QuickReport это генератор отчетов, основанный на секциях (band). Ваш отчет состоит из секций с текстом и графическими компонентами внутри секции. Данные секции размножаются в процессе создания окончательного отчета, в зависимости от исходных данных. Простой отчет должен следующие компоненты, помещенные на форму.
DataSet (TTable) ;
QuickReport компонент подсоединенный к DataSet;
Секцию Detail;
Компонент TQRDBText в секции Detail.
Для создания отчета выполните следующие шаги:
Создайте новый проект;
Поместите TTable компонент на форму. Выберите алиас DBDemos, как DatabaseName, Customer как TableName и установите Active в True;
Поместите TQuickRep компонент на форму и установите свойство DataSet в Table1;
Раскройте свойство Bands;
Установите HasDetail в True. Эти Вы создали секцию Detail в отчете;
Поместите TQRDBText компонент на секцию Detail, установите DataSet в Table1 и DataField в Company.
Теперь есть все необходимые компоненты для создания отчета.
Для просмотра отчета Вы можете щелкнуть правой кнопкой по компоненту TQuickRep и выбрать пункт Preview. Если вы все выполнили правильно, то вы увидите в окне просмотра готовый отчет.
Сейчас вы имеете отчет, работающий в режиме проектирования (Design Time), для того, чтобы данный отчет работал в режиме runtime, выполните следующие шаги:
Добавьте кнопку на вашу главную форму и установите ее свойство Caption в ‘Preview’;
В обработчике события OnClick наберите следующий текст:
QuickRep1.Preview;
Запустите ваше приложение и нажмите кнопку Preview для просмотра отчета. Для печати отчета вместо метода Preview используйте метод Print.
Так мы создали простой отчет. В следующих главах мы рассмотрим создание остальных типов отчетов.
