Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Delphi_Прак_2010.DOC
Скачиваний:
33
Добавлен:
10.11.2018
Размер:
2.31 Mб
Скачать

5.1. Создание отчета в Delphi

В предыдущих версиях Delphi для создания отчетов использовались компоненты вкладки QReport, с помощью которых программист мог сравнительно легко создавать достаточно сложные отчеты. Однако данные компоненты имели один существенный недостаток: их нельзя было использовать в кросс-платформенных приложениях. В связи с этим в версии 7 компоненты QReport заменены компонентами вкладки Rave, имеющими схожую функциональность (создание отчетов), но обладающих более широкими возможностями и, главное, поддерживающими кросс-платформенные приложения. Единственным существенным недостатком технологии Rave Reports является ее некоторая «сыроватость», что приводит к ряду проблем при ее использовании (некорректность работы в Windows 95/98, неотображение ряда кириллических шрифтов и т.д.).

В основе технологии Rave Reports лежит идея отделения процесса разработки от процесса создания отчета за счет использования промежуточного документа, который называется проектом отчета. Проект отчета создается с помощью среды Rave (Report Authoring Visual Environment – визуальная среда автора отчета), а в создаваемую программу внедряется так называемая машина генератора отчета, которая по данным, полученным из файла проекта, создает документ отчета.

На вкладке Rave имеются два ключевых компонента – RvProject и RvSystem, перенос которых в программу внедряет в нее машину генератора отчетов. Проект будущего отчета создается заранее с помощью утилиты Report Manager Designer, которая вызывается из Delphi и взаимодействует с загруженной в среду Delphi программой.

Вызов Rave Designer. Вызов отчета будет производиться с помощью пунктов меню.

Первоначально необходимо поместить на форму, где находится главное меню, компонент TRVTableConnection (вкладка Rave) и связать его с таблицей, по которой создается отчет, например, Table1 (свойство Table).

Вся дальнейшая работа осуществляется под управлением утилиты Rave Reports Designer. Для ее вызова необходимо выбрать в главном меню команду Tools/Rave Designer.

Утилита Rave Designer имеет собственную палитру компонентов, дерево объектов и набор инструментальных кнопок. Центральную часть окна занимает рабочая область с двумя вкладками – Page Designer и Event Editor.

Первая используется подобно окну формы среды Delphi – на ней размещают нужные компоненты из палитры Rave Designer.

На вкладке Event Editor можно написать код для обработчиков событий OnBeforePrint, OnBeforeReport, OnAfterPrint, OnAfterReport для любого размещенного на вкладке Page Designer компонента отчета. Обработчики пишутся на языке, который представляет собой подмножество языка Delphi.

5.2. Создание отчета на основе одной таблицы

1. На форму, где находится главное меню, поставить компонент Table (вкладка BDE), для него настроить свойства: DataBaseName – имя базы данных, TableName – имя таблицы Книги, Active – true.

2. На эту же форму поместить компонент TRVTableConnection (вкладка Rave) и в его свойстве Table выбрать Table1.

3. Вся дальнейшая работа осуществляется под управлением утилиты Rave Reports Designer. Для ее вызова необходимо выбрать в главном меню пункты Tools/Rave Designer.

4. Создать источник данных для отчета. Для этого вызвать пункты меню File/New Data Object, откроется диалоговое первое окно, в котором выбирают Direct Data View, кнопка Next, в следующем окне выбирают RvTableConnection1, кнопка Finish. В результате создается источник данных (первый раз – это DataView1).

5. Вызывают мастера отчетов для создания отчета на основе одной таблицы. Для этого выбирают пункты меню Tools/Report Wizards/Simple Table. Вызванный мастер с помощью последовательно раскрывающихся окон определяет основные параметры отчета:

в первом окне выбирают источник данных (DataView1 или DataView2 и т.д.),

во втором – отображаемые поля (отмечают флажками нужные поля или отмечают все, нажав кнопку All);

в третьем окне можно изменить порядок следования полей (в данном случае можно оставить все как есть);

в четвертом окне задают заголовок отчета в поле Report Title (например, КНИГИ) и определяют ширину полей (отступы сверху, снизу, слева, справа), по умолчанию стоит 1 (это 1 дюйм или 2.54 см);

в пятом окне выбирают типы шрифтов, которыми будут отображаться основные части отчета: его заголовок (верхняя полоса), заголовки столбцов или шапка документа (средняя полоса) и данные (нижняя полоса). Установка шрифта осуществляется при щелчке по кнопке Change font. Для отображения русского шрифта необходимо выбрать MS Sans Serif. Для верхней полосы можно выбрать жирный шрифт размера 14, для средней полосы – жирный шрифт размера 12, для нижней полосы размер шрифта 12.

После щелчка по кнопке Generate в завершающем окне мастера происходит начальная генерация файла проекта отчета, который появляется в окне Rave Designer.

6. Сохранить файл проекта отчета с помощью пунктов меню File/Save. Сохранить файл под именем Project1.rav в той же папке, что и проект.

Редактирование отчета.

Возможны следующие изменения в отчете:

- формирование даты генерации;

- изменение формата вывода данных;

- вставка нумерации страниц;

- обводка отчета горизонтальными и вертикальными линиями.

Для формирования даты размещают в заголовке отчета компонент DataText (вкладка Report палитры компонентов Rave Designer) и устанавливают для него следующие свойства: Left=0; Width=7,9; Top=0,6; FontJustify=pjLeft; Font=MS Sans serif, обычный, 14. Теперь в свойстве DataField раскрывают редактор поля (кнопка с изображением многоточия в правом углу значения свойства), в поле DataText окна Data Text Editor вводят ‘от ’ +, раскрывают список ReportVariables и выбирают в нем пункт DateLong, после чего щелкают на кнопке Insert Report Var.

Изменение формата отображения данных. В полосе заголовков полей отчета DataView1Region: DataView1Band изменяют формат заголовков полей с помощью следующих свойств:

Left – расстояние от левого края отчета до заголовка поля;

Width – длина заголовка поля;

Font – свойства шрифта заголовка поля;

FontJustify – выравнивание текста заголовка поля.

В свойстве Text можно изменить название заголовка (ввести русские названия полей).

Аналогичные операции (кроме свойства Text) можно проделать и с полями данных в полосе отчета DataView1Region: DataView1DataBand.

Вставка нумерации страниц. В нижней части отчета под серым пространством (если пространство занимает всю страницу, с помощью мыши подтяните его вверх) помещают компонент DataText. Устанавливают для компонента шрифт MS Sans Serif, обычный, 12 в свойстве Font. В свойстве DataField помещают такую строку:

'Стр. '+Report.RelativePage+' из '+Report.TotalPages

Обрисовку линиями элементов отчета выполняют с помощью компонент HLine и VLine (вкладка Drawings). Основные свойства:

Top – выравнивание компонента по верхнему краю;

Left – выравнивание компонента по левому краю;

Height – высота линии;

Width – ширина (горизонтальная длина) линии;

LineStyle – тип линии;

LineWidth – толщина линии.

Для предварительного просмотра формируемого отчета нажимают клавишу F9.

После подготовки проекта отчета сохранить его на диске, закрыть окно утилиты Rave Designer и вернуться в Delphi.

Вызов отчета из главного меню.

Поместить на форму с главным меню компонент RvProject (вкладка Rave) и в его свойстве ProjectFile указать на файл проекта Project1.rav. Осуществить двойной щелчок по пункту меню, вызывающему отчет. Написать такой обработчик событий:

RvProject1.Execute;

Сохранить и проверить работу.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]