Иллюстрированный самоучитель по Visual Basic 6.0
Ch 18.htm
назад | содержание
| вперед
Проектирование отчета
Теперь, после создания
источников данных, можно приступать к проектированию отчета CustomerOrderReport:
1. Уменьшите размер сетки
области проектирования отчета с помощью свойств Gridx и GridY, установив в них
значение 2.
2. Для подключения источника
данных в свойстве DataSource выберите значение DataEnvironmentMyReport,
в свойстве DataMember — значение CustomerCommand.
3. Для запуска отчета
на выполнение добавьте в форму frmMyReportForm еще одну
кнопку типа CommandButton и назовите ее cbStartOrderReport. В
свойство caption кнопки введите текст Заказы. Вид приложения показан
на рис. 18.15.
Рис.18.15. Приложение
для проверки работы отчетов
4. В событие click созданной
кнопки введите код, с помощью которого отчет CustomerOrderReport будет запускаться
для просмотра данных:
Private Sub cb3tartOrderReport_Click()
CustomerOrderReport.Show
End Sub
Продолжим проектирование
отчета.
5. Выберите объект CustomerOrderReport.
6. Установите курсор на
любую из полос, разделяющих разделы, нажмите правую кнопку мыши и выберите команду
Retrieve Structure (Извлечь структуру) контекстного меню. В отчете появятся
группы в соответствии с иерархией его источника данных.
7. Начнем проектирование
с заголовка отчета (раздел Report Header). Разместите в заголовке объект
RptLabel. Откройте окно Properties и в свойстве Name задайте наименование
rptHeader. В свойство caption введите
текст Список заказов, в свойстве Alignment задайте значение 2-rptJustifyCenter.
Установите для этого объекта полужирный шрифт размером 12.
8. Перейдите к первому
заголовку группы с наименованием Group Header (CustomerCommand_Header).
Разместите в этой группе объект RptTextBox и присвойте ему наименование rptccompany.
Для свойства DataMember установите значение источника данных CustomerCommand,
из списка свойства DataField выберите поле таблицы cCompany. Установите для
объекта шрифт и размер.
9. Перейдите к следующему
заголовку группы — Group Header (OrderCommand_Header). Этот заголовок
состоит из трех строк. В первой строке разместите два объекта типа RptLabel
и назовите их rptCndocHeader И rptDdocHeader. В свойство Caption первого введите
№ заказа, в это же свойство второго — Дата заказа.
Свойство Alignment этих объектов установите в значение 2-rptJustifyCenter.
10. Во вторую строку заголовка
Group Header введите два объекта типа RptTextBox и назовите их rptCndoc
и rptDdoc. Для первого объекта в свойстве DataMember выберите значение OrderCommand,
а в свойстве DataField
— поле cnDoc. Для объекта rptDdoc В свойстве DataMember
выберите значение OrderCommand,
в свойстве DataField — поле таблицы dDoc. Свойство Alignment этих объектов установите
в значение 2-rptJustifyCenter.
11. В третьей строке заголовка
расположите три объекта типа RptLabel и введите для них в свойство caption значения
Товар, Количество, Цена.
Замечание
Периодически в процессе
создания отчета вы можете запускать приложение на выполнение и, нажимая кнопку
Заказы, проверять реальный вид отчета на любой стадии проектирования.
Попробуйте сделать это сейчас.
12. Перейдите к проектированию
раздела отчета Detail (OrderGoodsCommand_ Detail). Добавьте в этот раздел
три объекта типа RptTextBox и назовите ИХ rptCnmgoods, rptNquant И rptNunitprice.
Для объекта rptCnmgoods установите
свойство DataMember в значение OrderGoodsCommand, а в свойстве DataField
выберите поле таблицы cnmGoods. Для объекта rptNquant установите свойство DataMember
в значение OrderDetailCommand, выберите в свойстве DataField поле nQuant.
Для объекта rptNunitprice уста-новите свойство DataMember в значение OrderDetailCommand,
в свойстве DataField выберите поле nUnitprice, а для свойства DataFormat установи-те
значение Currency.
13. Запустите приложение
на выполнение и нажатием кнопки Заказы вызовите окно просмотра отчета.
В отчете не хватает, по
крайней мере, двух очевидных полей: суммы за товар и итоговой информации по
заказу. Однако этих полей нет и в базе данных — их необходимо вычислить. Рассмотрим,
как это делается.
назад | содержание
| вперед