Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
РиЭУБД(4к2с).docx
Скачиваний:
4
Добавлен:
24.08.2019
Размер:
162 Кб
Скачать

Использование компонента Rave для построения отчета

Пример: Создать отчет для просмотра списка клиентов.

  1. В главном меню создать пункт «Отчеты» и в нем подпункт «Клиенты»

  2. Расположить не визуальный компонент RvProject и компонент RvDataSetConnection с вкладки Rave на главную форму приложения

  3. Установить свойства для этих компонентов:

RvProject – Name – RvKlient

RvDataSetConnection – Name – RvDataKlient

DataSet – ADOKlient_2

  1. Вызвать утилиту по строительству отчетов

Tools – RaveDesiner

Если при запуске конструктор отчета запустится последний отчет, выполнить команду File - New

  1. Создать в отчете объект данных Dateview для доступа данных к таблице

File – new data object – выделяем directdataview – next – выбрать компонент связи с таблицей

RvDataKlient – finish

  1. При правильном подключении в правой части окна появится компонент DataView, который содержит все поля привязанной таблицы. Если таблиц будет несколько, то эти компоненты нужно переименовать.

  2. На пустой странице отчета разместить необходимые надписи. Для этого использовать вкладки drawing, standard.

В кладке standard (text)

(Microsoft sane serif) – для выбора русского языка.

  1. Для того, чтобы в отчете выдавались сведения из БД, из вкладки Report, расположить компонент Region

  2. На данный компонент разместить полоску Band, для заголовка название полей.

Для данного компонента в редакторе свойств bandstyle – bodyheader

  1. Для заголовка полей name – (text)

  2. За полосой заголовка расположить полосу databand

Свойство dataview – dataklient

Расположить на созданную полосу datatext и установить свойства:

Dataview – dataklient

Datafield – fam

И аналогично для всех полей

  1. Сохранить отчет в папке. Для просмотра F9. Для компонента RvKlient свойства:

Project file - … - klient otch

  1. В главном меню приложения прописать команду отчета:

Begin

Rvklient.execute

End;

  1. Создать отчет для списка поставщиков.

Создание сложного отчета

При помощи средств Rave можно создавать сложные отчеты, которые связаны с несколькими таблицами БД.

Пример: создать отчет, выводящий список клиентов с соответствующими покупками выбранного товара.

  1. Рассмотреть схему базы данных, уточнить, какие таблицы нужны для отчета и если в модуле UnitBD нет компонентов, связывающих приложение с базой данных, то их надо создать (ADOTable, DataSource).

  2. Создать форму, вызывающую отчеты по выбору из списка.

Создаем новую форму

Save As UnitOtchetTovar.

Name - FormOtchetTovar

Caption – Отчеты по товару

FormStyle – MDIChild

Position – DefolPosOnly

OnClose – action:=caFree;

Project – option – вправо

Use unit – UnitBD

В главном меню создать подменю для вызова формы

  1. Label1 DBLookUpComboBox1

Button1 button2

Label1 – Товар

DBLookUpComboBox1:

List source - adotovar

List field - name

Key field – id_tov

Data source – adoprodaga

Data field – id_tov

Button1 – Поиск

Button2 – Сброс

  1. С вкладки Rave добавляем не визуальные компоненты

RvProject и 4 компонента RvDataSetConnection

RvProject name RvTovar

RvDataSetConnection Name RvDataТаблица

DataSet – ADOТаблицы

  1. Вызвать утилиту по строительству отчетов

Tools – RaveDesiner

Если при запуске конструктор отчета запустится последний отчет, выполнить команду File - New

В редакторе отчетов выполнить следующие действия:

    1. Подключить набор данных для создаваемого отчета

File – NewDataObject – DirectDataView – выбираем компонент – finish

Переименовываем компонент DataТаблица. Аналогично подключаем все остальные таблицы.

    1. В конструкторе отчетов при помощи вкладок standard и drawing создать заголовок отчета.

В свойстве Text – отчет по продажам товара.

    1. Расположить на лист компонент Region и растянуть его на ширину листа. На эту область расположить полосу Band и в белой полоске создать заголовки будущих столбцов таблицы.

Аналогично с 8 пункта прошлой лекции.

    1. При компоновке следующих компонентов DataBand необходимо следовать следующей логике:

Первый компонент Databand прикрепляется к набору, по которому идет поиск.

Располагаем DataBand, подсоединяем этот компонент к набору dataTovar.

Dataview – datatovar, переименовываем datatovar1

Располагаем DataBand, подсоединяем этот компонент к набору dataprodaga.

Dataview – dataprodaga, переименовываем dataprodaga1

Controller – datatovar1

Masterdataview – datatovar

Masterkey – id_tov

Detalkey – id_tov

Bandstyle – detaly - V

Располагаем DataBand, подсоединяем этот компонент к набору dataklient.

Dataview – dataklient, переименовываем dataklient1

Controller – dataprodaga1

Masterdataview – dataprodaga

Masterkey – id_klient

Detalkey – id_klient

Bandstyle – detaly - V

    1. На полосе dataklient1 расположить все поля, отображающие необходимую информацию.

Dataview – klient

Datafield – fam

И аналогично остальные столбцы.

    1. Для создания суммирующего поля необходимо добавить полосу band в нижнюю часть отчета и установить свойства:

Groupdataview – dataprodaga

Расположить на эту полоску calctext и установить свойства: controller – prodaga, dataview- dataprodaga,datafield – summa_prod

    1. Для компонента RaveADOTovar прописать путь к отчету:

Projectfile - … - оставляем только имя (как в связи с БД)

    1. Обработать кнопку поиск

If length(dblookupcombobox1.text)>0 then

Databd.adotovar.filter:=’nam=’’’+dblookupcombobox1.text+’’’’;

Databd.adotovar.filtered:=true;

rvTovar.execute;

    1. Обработать кнопку сброс

Databd.adotovar.filtered:=false;