Лабораторная работа по курсу Базы данных.
Разработка отчета по таблицам БД. Время выполнения – 2 часа.
Исходные данные: База данных Магазин.mdb. Отлаженное Delphi - приложение, выполненное в рамках лабораторной работы «Пользовательский интерфейс для заполнения таблицы, содержащей данные других таблиц».
Задание1
Создайте Delphi - приложение, которое выполняет предварительный просмотр и печать отчета по данным таблицы продаж БД «МАГАЗИН». Форма должна иметь вид, представленный на Рис.1. Заголовок отчета содержит Вашу фамилию.
Рис.1 Пример отчета по БД
Отчетность в Quick Reports
Генератор отчетов Quick Reports - мощное средство создания отчетов, которое входит в поставку Delphi. Он не является самым быстрым, и в сети Internet можно найти множество более быстрых, как платных, так и бесплатных генераторов отчетов. Но Quick Reports очень мощный, к тому же он установлен в Delphi и готов к работе. Все компоненты Quick Reports находятся на вкладке QReport палитры компонентов. При отсутствии вкладки ее следует добавить, испорльзуя пункт меню
Component/Install Packager/Add
Добавляемый компонент DCLQRT70.PPL найдите в с:/ ProgramFile/ Borland/ Delphi7/ Bin/.
Головной компонент Quick Reports — TQuickRep. Этот компонент — основа любого отчета. Он представляет собой холст листа будущего отчета.
1. В Delphi – среде создайте форму отчета: File/New/Other/New/Report. Появится новая форма с компонентом QuickRep1. Вам надо выровнять края компонента по форме и вы увидите готовый белый лист, на котором можно будет размещать будущее вашего документа. По краям листа находятся синие пунктирные линии, которые показывают границы документа.
2. Подключите к форме отчета модуль данных: File/Use Unit/ Unit2.
3. В инспекторе объектов установите нужные секции - поля отчета, используя свойство Bands – в нем можно указать (True), что должен иметь будущий документ:
¨ • HasCoiumnHeader — заголовки колонок. Если ваш отчет будет содержать таблицу, то она должна иметь шапку, где будут определены названия колонок. Вот именно эту шапку создают в этой части документа. Так что нужно будет присвоить true.
¨ • HasDetaii — если в отчете есть таблица, то вид строк формируется в этом разделе.
¨ • HasPageFooter — в этом разделе создается нижний колонтитул.
¨ • HasPageHeader — здесь создается заголовок документа.
¨ • HasSummary — содержимое этого раздела печатается один раз в конце отчета (на последней странице).
¨ • HasTitie — в этом разделе делается заголовок отчета.
Любую область можно выделить и растянуть или уменьшить.
4. Установите в объекте отчета QuickRep1 свойство DataSet — здесь укажите таблицу, из которой отчет будет брать данные, укажите DM.ADOTBSales.
На рис.2 приведен вид областей заголовка отчета, заголовка колонок, колонтитулов, области строк таблицы и области итогов.
Рис. 2. Вид компонента QuickRep1 с включенными областями
Теперь нужно в этих областях - секциях расположить компоненты, которые будут ото- бражать нужную нам информацию. На вкладке Qreport, палитры компонентов доступны ряд компонентов, которые можно располагать в этих разделах.
QRLabel — надпись. Этот компонент похож на стандартный TLabel и просто отображает нужные данные.
QRDBText — данные. Этот компонент тоже похож на TDBLabel, он предназначен для отображения значения какого-либо поля из базы данных. Тип поля базы данных должен быть совместим с текстом, т. е. может быть целым числом, строкой, датой.
QRSysData —отображает системную информацию: дату, время, номер страницы, номер стр оки в таблицы, общее количество страниц и т. д.
QRShape — компонент для создания обрамлений. Он чем-то похож на стандартный
QRImage — КАРТИНКА Компонент, ПОХОЖИЙ наTImage.
5. Разместите в блоках отчета следующие компоненты
Блок заголовка Title
Объект | Свойство | Значение |
QLLabel1 | Caption | Ведомость продаж |
Font | 16, жирный | |
QLLabel2 | Caption | ЧП ФИО(Ваша) |
Font | 16, жирный | |
QRImage1 | Picture | Небольшой рисунок |