Иллюстрированный самоучитель по Delphi 7 для профессионалов

Отчет "один-ко-многим"

А теперь займемся созданием отношения "один-ко-многим".

В подчиненной полосе данных ordBand необходимо задать значения для четырех свойств.

  • Свойство controllerBand должно содержать ссылку на главную полосу CustBand.
  • Свойство MasterDataview должно содержать ссылку на главный объект просмотра CustomersView.
  • В свойстве MasterKey необходимо задать ключевое поле custNo главного просмотра CustomersView, по которому будет установлено отношение.
  • В свойстве DetailKey необходимо задать ключевое поле CustNo подчиненного просмотра Ordersview, по которому будет установлено отношение.

Кроме этого, необходимо настроить атрибуты местоположения полос на странице отчета. Для этого используется Редактор полос отчета Band Style Editor (рис. 26.7), который открывается при щелчке на кнопке свойства Bandstyle Инспектора объектов визуальной среды Rave Reports. В нем в группе Print Location для подчиненной полосы ordBand необходимо установить флажок Detail.

Иллюстрированный самоучитель по Delphi 7 для профессионалов › Отчеты для приложений баз данных › Отчет "один-ко-многим"
Рис. 26.7. Редактор полос отчета Band Style Editor для отчета MasterDetailReport

На этом настройка отношения "один-ко-многим" завершена. Однако скажем еще несколько слов об использовании обычных полос при оформлении такого рода отчетов. В нашем примере две дополнительные полосы OrdHeaderBand и OrdFooterBand помогают визуально выделить группы записей подчиненной полосы. Для этого необходимо в их свойстве controiierBand выбрать полосу данных OrdBand. Затем в редакторе полос отчета в группе Print Location для полосы OrdHeaderBand необходимо выбрать флажок Body Header (В), а для полосы OrdFooterBand – флажок Body Footer (b).

Обратите внимание (см. рис. 26.6 и 26.7), что значки маркировки на полосах страницы и в редакторе полос наглядно демонстрируют текущий статус полосы. Цветом выделены уровни вложения данных и подчиненность полос. Полосы с маркировкой одного цвета печатаются в одном блоке. Квадраты обозначают полосы данных, а треугольники – обычные полосы, при этом направление вершины треугольника обозначает полосу заголовка или окончания. Левая панель редактора полос отчета Band Style Editor (рис. 26.7) наглядно демонстрирует модель отчета, как если бы он был напечатан для трех записей набора данных.

На основе отчета "один-ко-многим" можно легко разработать и более сложные отчеты. Для этого необходимо детальную полосу данных связать с новыми детальными полосами и настроить по описанной методике отношение "один-ко-многим".

Если Вы заметили ошибку, выделите, пожалуйста, необходимый текст и нажмите CTRL + Enter, чтобы сообщить об этом редактору.