назад | содержание | вперед

Проектирование отчета

Теперь, после создания источников данных, можно приступать к проектированию отчета 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. Запустите приложение на выполнение и нажатием кнопки Заказы вызовите окно просмотра отчета.

В отчете не хватает, по крайней мере, двух очевидных полей: суммы за товар и итоговой информации по заказу. Однако этих полей нет и в базе данных — их необходимо вычислить. Рассмотрим, как это делается.

 

назад | содержание | вперед