- •Общая форма приложения
- •Использование компонента Rave для построения отчета
- •Создание сложного отчета
- •Создание сложного отчета (повторение)
- •Создание файла помощи
- •Создание установочного файла
- •Создание однодокументного приложения
- •Окна сообщений и диалоговые окна (модальные формы)
- •Массивы. Компонент Memo.
- •Использование компонентов Memo и ListBox
- •Одномерные массивы
- •Многомерные массивы
- •Реализация интерфейса с использованием графики
- •Дополнительные возможности с Формой
- •Шаблоны
- •Мультипликация
- •Мультипликация. Возможности Delphi
- •Многоугольники
Использование компонента Rave для построения отчета
Пример: Создать отчет для просмотра списка клиентов.
В главном меню создать пункт «Отчеты» и в нем подпункт «Клиенты»
Расположить не визуальный компонент RvProject и компонент RvDataSetConnection с вкладки Rave на главную форму приложения
Установить свойства для этих компонентов:
RvProject – Name – RvKlient
RvDataSetConnection – Name – RvDataKlient
DataSet – ADOKlient_2
Вызвать утилиту по строительству отчетов
Tools – RaveDesiner
Если при запуске конструктор отчета запустится последний отчет, выполнить команду File - New
Создать в отчете объект данных Dateview для доступа данных к таблице
File – new data object – выделяем directdataview – next – выбрать компонент связи с таблицей
RvDataKlient – finish
При правильном подключении в правой части окна появится компонент DataView, который содержит все поля привязанной таблицы. Если таблиц будет несколько, то эти компоненты нужно переименовать.
На пустой странице отчета разместить необходимые надписи. Для этого использовать вкладки drawing, standard.
В кладке standard (text)
(Microsoft sane serif) – для выбора русского языка.
Для того, чтобы в отчете выдавались сведения из БД, из вкладки Report, расположить компонент Region
На данный компонент разместить полоску Band, для заголовка название полей.
Для данного компонента в редакторе свойств bandstyle – bodyheader
Для заголовка полей name – (text)
За полосой заголовка расположить полосу databand
Свойство dataview – dataklient
Расположить на созданную полосу datatext и установить свойства:
Dataview – dataklient
Datafield – fam
И аналогично для всех полей
Сохранить отчет в папке. Для просмотра F9. Для компонента RvKlient свойства:
Project file - … - klient otch
В главном меню приложения прописать команду отчета:
Begin
Rvklient.execute
End;
Создать отчет для списка поставщиков.
Создание сложного отчета
При помощи средств Rave можно создавать сложные отчеты, которые связаны с несколькими таблицами БД.
Пример: создать отчет, выводящий список клиентов с соответствующими покупками выбранного товара.
Рассмотреть схему базы данных, уточнить, какие таблицы нужны для отчета и если в модуле UnitBD нет компонентов, связывающих приложение с базой данных, то их надо создать (ADOTable, DataSource).
Создать форму, вызывающую отчеты по выбору из списка.
Создаем новую форму
Save As UnitOtchetTovar.
Name - FormOtchetTovar
Caption – Отчеты по товару
FormStyle – MDIChild
Position – DefolPosOnly
OnClose – action:=caFree;
Project – option – вправо
Use unit – UnitBD
В главном меню создать подменю для вызова формы
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 – Сброс
С вкладки Rave добавляем не визуальные компоненты
RvProject и 4 компонента RvDataSetConnection
RvProject name RvTovar
RvDataSetConnection Name RvDataТаблица
DataSet – ADOТаблицы
Вызвать утилиту по строительству отчетов
Tools – RaveDesiner
Если при запуске конструктор отчета запустится последний отчет, выполнить команду File - New
В редакторе отчетов выполнить следующие действия:
Подключить набор данных для создаваемого отчета
File – NewDataObject – DirectDataView – выбираем компонент – finish
Переименовываем компонент DataТаблица. Аналогично подключаем все остальные таблицы.
В конструкторе отчетов при помощи вкладок standard и drawing создать заголовок отчета.
В свойстве Text – отчет по продажам товара.
Расположить на лист компонент Region и растянуть его на ширину листа. На эту область расположить полосу Band и в белой полоске создать заголовки будущих столбцов таблицы.
Аналогично с 8 пункта прошлой лекции.
При компоновке следующих компонентов 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
На полосе dataklient1 расположить все поля, отображающие необходимую информацию.
Dataview – klient
Datafield – fam
И аналогично остальные столбцы.
Для создания суммирующего поля необходимо добавить полосу band в нижнюю часть отчета и установить свойства:
Groupdataview – dataprodaga
Расположить на эту полоску calctext и установить свойства: controller – prodaga, dataview- dataprodaga,datafield – summa_prod
Для компонента RaveADOTovar прописать путь к отчету:
Projectfile - … - оставляем только имя (как в связи с БД)
Обработать кнопку поиск
If length(dblookupcombobox1.text)>0 then
Databd.adotovar.filter:=’nam=’’’+dblookupcombobox1.text+’’’’;
Databd.adotovar.filtered:=true;
rvTovar.execute;
Обработать кнопку сброс
Databd.adotovar.filtered:=false;
