Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Создание групп






В QuickReport вы можете создавать отчеты с группами очень просто и эффективно. Группы могут быть вложены на неограниченную величину, и если вы свяжете несколько наборов данных в вашем отчете, то вы сможете группировать по любым наборам данных DataSet.

Компонент TQRGroup размещен на палитре компонент страница QuickReport. Когда это помещается в отчет, то это выглядит как секция. Данная секция имеет заголовок группы. Каждый раз, когда группа заканчивается данный заголовок печатается. В дополнение вы можете также добавить подвал для группы. Для этого выберите компонент TQRBand из палитры и поместите его в отчет. Свяжите свойство TQRGroup.FooterBand с новой созданной секцией.

Секция TQRGroup имеет свойство Master, которое автоматически связывается с главным QuickReport компонентом. Это появляется выше секции данных (Detail) в отчете. А корректно связанная группа должна появляться ниже секции данных.

Наиболее важное свойство TQRGroup после Master – это Expression. Введите любое допустимое выражение в инспекторе объектов. Группа заканчивается, когда результат выражения изменяется. Например, для таблицы customer с установленным индексом State + Company. Для печати заголовка группы каждый раз, когда штат изменяется, вы должны ввести State или Customer.State как выражение. Интерпретатор выражений найдет поле State и напечатает заголовок группы, перед каждым новом штатом. Присоединенный подвал группы после того, как будут напечатаны все заказчики из данного штата, удобно для подсчета заказчиков по каждому штату, объема продаж и т.д.

Вот пример образа отчета для получения списка заказчиков:

Для получения используется компонент TQuery со следующим запросом:

select * from customer order by state, company

Выражение группы просто State.

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

if(State < > '', State, 'Unknown state')

Поскольку не все заказчики имеют указанный штат, в этом случае выражение возвращает фразу «неизвестный штат».

Второй TQRExpr размещен в подвале группы и имеет следующее выражение:

'Customers in ' + State + ': ' + Str(Count)

Данное выражение печатает количество заказчиков в каждом штате. Свойство Master связано с компонентом TQuickRep и установлено свойство ResetAfterPrint, так что Count обнуляется после печати каждой группы. Ниже пример из просмотра отчета:

 

 






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.