Шаг 31 - Группировка записей

Одной лишь сортировкой можно обойтись только для очень небольших отчетов. В общем случае требуется введение в отчет некоторой обобщающей и промежуточной информации. Для этого служат группы Crystal Reports.

После создания группы в отчете, кроме сортировки, добавляются две дополнительные секции отчета:

Добавляются и удаляются эти секции только вместе (но любую из них можно скрыть). Можно поместить в эти секции значения промежуточных итогов и любую обобщающую информацию. Кроме того, группировка создает в отчете дерево групп, что приводит к появлению окна проводника в левой части окна предварительного просмотра (и во вьюверах). Дерево групп поддерживает быстрый просмотр структуры отчета и позволяет перемещаться сразу к определенной группе.

Создать группу можно двумя способами:

Первый способ:

Идем в меню Insert->lGroup. Открывается окно создания группы:

31_1.gif (7900 b)

В верхнем комбобоксе выбирается поле, по которому будет создана группа, в нижнем комбобоксе – порядок сортировки. Здесь кроме сортировки в восходящем и нисходящем порядке доступно еще два значения: in specific order (в порядке определенном пользователем) и in original order (фактически – без сортировки).

Если отметить чекбокс Keep group together, Crystal Reports будет стремиться не разрывать группу при переходе на новую страницу.

Чекбокс Repeat group on each new page – при разрыве группы повторяет ее название в начале новой страницы.

После нажатия кнопки OK, можно сразу же увидеть новые группы:

31_2.gif (3461 b)

Также автоматически создается текстовое поле для вывода имени группы.

Второй способ:

Применяется если в отчете есть поле, по которому необходимо произвести подсчет промежуточных итогов.

Для этого необходимо выделить поле, для которого будут вычисляться промежуточные итоги, и щелкнуть правой кнопкой мыши и выбрать в контекстном меню команду Insert Subtotal пойти в меню: Insert->Subtotal.

Появится окно создания группы (см. выше), только в нем вы сможете прочитать предупреждение о том, что вместе с группой будет создано поле промежуточных итогов. Это поле помещается в колонтитул группы, но оттуда его можно переместить в другое место.

31_3.gif (6131 b)

Внимание! Созданное поле с промежуточным результатом вы не увидите в окне Insert Fields.


Предыдущий Шаг | Следующий Шаг | Оглавление
Автор Юрий Гвоздев.