Группировку данных можно производить по одному или нескольким полям. Понятие группировки данных уже использовалось нами при описании запросов, поэтому здесь ограничимся лишь рассмотрением особенностей группирования данных в отчетах. Группировку данных можно задать при создании отчета с помощью мастера. Ниже рассмотрим группировку данных без мастера.
Находясь в режиме конструктора или представления отчета, по кнопке Добавить группировку(внизу окна отчета) выберем из раскрывающегося списка поля, по которым нужно группировать данные, и зададим для этих полей направление сортировки (по возрастанию или по убыванию).
!!!!! Поля, по которым группируются данные, желательно отсортировать.
По умолчанию на планшете отчета будет присутствовать область заголовка группы, а область примечания группы нужно добавить принудительно, если необходимо. Это можно сделать, указав дополнительные параметры из раскрывающегося списка Больше.
Выбор других дополнительных параметров зависит от типа данных в поле
· для текстовых данных: обычный способ (по всему полю, т. е. по всем символам), по первому символу, по двум первым символам и так далее.
· для числовых данных, включая типы Денежный, Счетчик и Числовой, может быть задано значение интервала, например 10, 20, 50 и пр.
· для данных типа Дата/Время могут задаваться диапазоны из набора: год, квартал, месяц, неделя, день, час, минута.
Среди других дополнительных параметров важно указать:
· не удерживать группу на одной странице, что означает возможность перехода группы на следующую страницу;
· удерживать группу на одной странице, что означает расположение группы на одной странице, если возможно. Если группа не помещается на оставшейся части текущей страницы, она выводится, начиная с начала следующей страницы.
· удерживать заголовок и первую запись на одной странице.
При создании групп по нескольким полям (вложенные группы данных) поступают аналогичным образом.
Установка параметров страницы осуществляется в разделе Инструменты конструктора отчетов, если Вы работаете в режиме конструктора, или в разделе Работа с макетами отчета, если Вы работаете в режиме макета.
Рассмотрим процедуру создания простого отчета с группировкой данных по одному полю.
Пример 10. Создать отчет по запросу так, чтобы вместо номера поставщика (PN) в отчете отображалось его имя (PIM), вместо номера детали (DN) отображалось ее название, а остальные поля в отчете были такими же, как в дочерней таблице PD, то есть поле KOL.
Сгруппировать данные в отчете по имени поставщика. В заголовке каждой группы написать слово Поставщик, а далее указать его имя (для каждой группы свое). В примечании группы вывести информацию о количестве записей в группе, в примечании отчета вывести информацию о суммарном значении поля KOL по всем записям. Пронумеровать сквозной нумерацией все записи отчета.
Поставленную задачу можно решить, выполнив следующую цепочку действий:
· создать запрос, показанный на рисунке 76:
Рисунок 76 – запрос для отчета
· сохранить запрос с именем для отчета;
· выделить запрос в браузере объектов;
· создать отчет (Создание/Отчет);
· добавить группировку по полю PIM;
· по кнопке Больше из раскрывающего списка выбрать пункт с разделом примечания;
· перейти в режим конструктора отчетов;
· раздвинуть область заголовка группы и сдвинуть немного вниз поле PIM;
· до поля PIM в верхней части заголовка группы вставить надпись Поставщик;
· раздвинуть область примечаний группы;
· добавить поле в область примечаний группы;
· изменить присоединенную надпись на текст Количество записей в группе;
· открыть для этого поля окно свойств, активизировать вкладку Данные и с помощью построителя выражений задать для свойства Данные значение:
=Count([PIM])
· в области примечаний к отчету создать вычисляемое поле, для которого для свойства Данные задать значение
=Sum([KOL])
· пронумеровать записи в отчете можно с помощью вычисляемого поля, созданного в области данных отчета. Для этого поля свойству Данные нужно задать значение =1 и свойству Сумма с накоплением задать значение Для всего (выбрать из предлагаемого списка).
· изменить заголовок отчета на Отчет по запросу.
На рисунке 77 показан результирующий отчет в режиме конструктора, а на рисунке 78 – в режиме Представление отчета.
Рисунок 77 – Результирующий отчет в режиме конструктора