Вкладка Specified Order

Оценить
(1 голос)

Не исключены ситуации, когда вам будет необходимо, чтобы данные в отчете были сгруппированы в определенном порядке, который база данных не может обеспечить. Например, база данных может содержать поле штата, но не иметь поля, которое бы показывало, к какому географическому региону относится данная запись (северо-западному, юго-западному и так далее). Один из вариантов, который может оказаться подходящим для выполнения более сложной “пользовательской” группировки — использовать для группы в качестве основы сложную формулу. Однако если выбранная методика группирования не отличается особой сложностью, применение вкладки Specified Order (Заданный порядок) может оказаться более простым подходом. При таком подходе пользовательские группы можно создавать и без знания языка формул Crystal Reports.

Вкладка Specified Order похожа на диалоговое окно эксперта отбора Select Expert (рассматриваемого в главе 4) и позволяет создавать собственные группы на базе существующих полей баз данных. В рассмотренном выше примере с географическими областями можно было бы создать группу северо-западного региона, состоящую из штатов Вашингтон, Орегон, Айдахо и Монтана. Юго-западная группа могла бы включать штаты Невада, Калифорния, Техас и Аризона. Северо-восточная группа могла бы содержать штаты Нью-Йорк, Мэн, Вермонт и Нью-Гемпшир, а юго-восточная — штаты Флорида, Алабама, Луизиана и Миссисипи. Все остальные штаты, не включенные ни в одну из четырех перечисленных групп, могли бы быть либо проигнорированы, либо помещены в свои собственные отдельные группы, либо собраны в одну общую группу с именем типа “Средний Запад”.

Чтобы определить свою собственную группу, при создании новой или при изменении существующей группы выберите в диалоговом окне Group вариант Specified Order

Вкладка Specified Order

(Специальный порядок), а не Ascending Order или Descending Order. Как раз после этого в диалоговом окне Change Group Options (Изменить параметры группы) и появится вкладка Specified Order (Специальный порядок), показанная на рис. 3.13.

На заметку! Новая, доступная в версии Crystal Reports XI опция Use A Formula As Group Sort (Использовать формулу в качестве сортировки групп) не позволяет выбирать значение Specified Order для формул. Выбрать значение Specified Order можно только тогда, когда флажок Use a Formula As Group Sort Order (Использовать формулу для определения порядка сортировки групп) не установлен.

Щелкните на кнопке New (Создать), чтобы создать новую именованную группу. На экране появится диалоговое окно Define Named Group (Определить именованную группу), показанное на рис. 3.14. Введите имя, под которым группа должна отображаться в отчете, например “Northwest” (“Северо-запад”).

Вкладка Specified Order

Вкладка Specified Order

Далее, используя доступные на вкладках опции, укажите, какие записи будут включены в группу. Например, в группу “Northwest” (“Северо-запад”) могут быть включены записи, в которых Customer. Region (Регион заказчика) принимает одно из следующих значений: WA (Вашингтон), OR (Орегон) и ID (Айдахо).

Если планируется использовать несколько различных критериев для именованной группы, перейдите на вкладку <New> (<Новая>) и добавьте дополнительные критерии. Выполнив все необходимые операции, щелкните на кнопке ОК в диалоговом окне Define Named Group. Именованная группа будет создана и появится в списке именованных групп в диалоговом окне Group Options (Параметры группы). Далее можно еще раз щелкнуть на кнопке New, если требуется добавить еще какие-нибудь именованные группы (например, группу “Southwest” (“Юго-восток”), включающую штаты AZ (Аризона), С А (Калифорния) и ТХ (Техас)).

Совет. Не забывайте, что щелчок на вкладке <New> для создания дополнительных вкладок выбора позволяет осуществлять выбор только по одному полю — полю, на основе которого создавалась группа. Отображаемые на вкладках критерии будут объединены с использованием операции логического ИЛИ — в этом и состоит отличие данного подхода от подхода, подразумевающего применение эксперта Select Expert.

Новые именованные группы (по мере их добавления) появляются на вкладке Specified Order диалогового окна Change Group Options, причем в том порядке, в котором они были созданы, a we в алфавитном порядке. При желании изменить порядок, в котором группы отображаются в отчете, выделите какую-нибудь именованную группу и с помощью кнопок со стрелками вверх и вниз, расположенными рядом со списком именованных групп, измените ее позицию. Однако, группа Other (Другая) всегда будет последней, независимо от того, как вы ее назовете или как вы разместите именованные группы.

После создания, по меньшей мере, одной именованной группы, в диалоговом окне Group появляется вкладка Others (Другие). Эта вкладка предназначена для работы со всеми остальными записями, которые не вошли ни в одну из созданных именованных групп. Вы можете отказаться от остальных записей, поместить их без разбора в одну группу, присвоив ей произвольное имя, либо оставить их в собственных отдельных группах, созданных на основе полей из базы данных. В рассмотренном выше примере с географическими областями, группы “Northwest” (“Северо-запад”), “Southwest” (“Юго- запад”), “Northeast” (“Северо-восток”) и “Southeast” (“Юго-восток”) были созданы как именованные группы. В этом случае вкладка Others могла бы быть использована для помещения всех регионов, которые не вошли в перечисленные именованные группы, в группу “Midwest” (“Средний запад”), как показано на рис. 3.15.

Совет. Вы наверняка заметили на вкладке Specified Order выпадающий список Named Group (Именованная группа). Этот список содержит выборки значений фактического поля, на основе которого создается группа. Если вы выберете одну из предложенных выборок, Crystal Reports создаст именованную группу с тем же именем, что и у фактического поля базы данных. Это удобно в тех случаях, когда вы хотите создать такие же группы, как и группы с порядком по возрастанию или убыванию, но упорядочить их определенным образом.

После создания именованных групп и щелчка на кнопке ОК в диалоговом окне Change Group Options отчет будет отображать новое разбиение на группы. На рис. 3.16 показан отчет, сгруппированный по пяти описанным выше географическим областям.

При желании изменить какой-нибудь из заданных специальных параметров группирования или вообще удалить их все сразу так, чтобы записи отображались в своих собственных группах, просто выполните перечисленные выше действия для изменения существующих групп. Откроется диалоговое окно Change Group Options, в котором можно будет отредактировать созданные группы или изменить порядок их следования, на возрастающий или убывающий, в результате чего специальная группировка будет Отменена.

Вкладка Specified Order

Переход на более высокий уровень детализации данных

Одним из наиболее мощных средств Crystal Reports является возможность создавать отчеты в онлайновом (интерактивном) режиме. И хотя отчеты могут распечатываться через принтер или экспортироваться в файлы других форматов, таких как Word и Excel, истинная мощь большинства отчетов проявляется только тогда, когда пользователи могут просматривать их и взаимодействовать с ними в интерактивном режиме. Это означает, что пользователь напрямую просматривает .RPT-файл, который создает Crystal Reports. В результате доступными становятся следующие возможности:

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

•    Пользователь может работать с отчетом, используя дерево групп и возможности детализации.

В разных редакциях Crystal Reports интерактивный режим создания отчетов реализован различными способами:

•    За счет предоставления пользователям их собственной копии Crystal Reports, которая позволяет открывать, просматривать и модифицировать отчеты по своему усмотрению.

•    За счет создания отчетов с помощью Web-браузера и системы Crystal Reports Server или Business Objects Enterprise (этот способ описывается в части II книги).

•    За счет включения отчета в пользовательское Windows-приложение (этот способ описывается в части III книги).

•    За счет предоставления пользователям любого из многочисленных доступных на сегодняшний день средств независимых производителей, которое позволяет запускать отчеты в интерактивном режиме (многие из этих средств описаны на Web- сайте CrystalBook. com. Посетите этот сайт для получения более подробной информации по данному вопросу).

Все эти интерактивные методы позволяют увеличивать уровень детализации (drill down) отчета. Эта технология была заимствована из ранних версий программных систем принятия решений и позволяет просматривать отчет, начиная с данных более высокого уровня. Например, отчет может начинаться с уровня стран. Если пользователь, просматривающий этот отчет, обнаруживает в нем промежуточные суммы или сводки (либо некоторый элемент секторной или какой-то другой диаграммы), касающиеся конкретной страны, он может дважды щелкнуть на этом числе. В результате отчет перейдет на следующий, более высокий уровень детализации, возможно, на уровень страны или штата, где пользователь сможет увидеть сводки по каждому штату или региону Если отчет создан с несколькими уровнями детализации, пользователь может дважды щелкнуть на интересующем его регионе и на экране отобразятся соответствующие данные по всем городам этого региона. Детализация может продолжаться и далее, позволяя пользователям “спускаться” до уровня городов и, наконец, почтовых индексов, для которых доступна своя детальная информация.

Crystal Reports автоматически устанавливает иерархию детализации в процессе создания групп. Каждая создаваемая группа может детализироваться, отображая группу более низкого уровня и, в конечном итоге, раздел подробностей.

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

Создав группы, вы можете просмотреть содержащиеся в них дополнительные уровни детализации, расположенные под именем группы (которое автоматически было помещено в заголовок группы) либо под итоговым полем (или полем промежуточной суммы), которое вы поместили в заголовок или нижний колонтитул группы. При наведении курсора на эти объекты курсор изменит свою форму со стрелки на изображение увеличительного стекла (или на изображение указательного пальца, как на традиционной Web- странице). Курсор такого вида называется курсором детализации. Он показывает, что вы можете получить более подробную информацию о группе, если дважды щелкните на ней (или один раз, когда речь идет о Web-странице). После двойного щелчка рядом с вкладкой Preview появится вкладка детализации, содержащая данные группы более низкого уровня или отдельные детали. При каждом переходе на более высокий уровень детализации появляется отдельная вкладка детализации.

После достаточного числа переходов на более высокий уровень детализации для отображения всех вкладок детализации, а также вкладок Preview и Design, на экране может просто не хватить места. В этом случае рядом с последней вкладкой детализации появятся две маленькие стрелки. Вы можете щелкать на этих стрелках, чтобы просмотреть те вкладки, которые не уместились на экране. Вы также можете закрыть любую ненужную вкладку детализации, щелкнув на расположенной на ней кнопке Close (Закрыть). В результате текущая вкладка будет закрыта, а та, что находилась слева от нее, будет отображаться на переднем плане. Подобным способом можно закрыть любую вкладку (в том числе и вкладку Preview), но не вкладку Design.

Совет. Если планируется печатать отчет на принтере или экспортировать его в файл другого формата, имейте в виду, что распечатан и экспортирован будет только материалу который отображается на текущей вкладке. Если в это время на экране отображается вкладка Preview, распечатан и экспортирован будет сводный отчет. Однако если на момент печати или экспорта открыта одна из вкладок детализации, то распечатан или экспортирован будет только материал из этой вкладки.

На рис. 3.17 показан отчет с несколькими вкладками детализации. Обратите внимание на то, что на экране не хватает места для отображения всех вкладок, поэтому справа от последней вкладки детализации видны две маленькие стрелки. Также обратите внимание на то, что форма курсора мыши изменилась и приобрела вид увеличительного стекла, поскольку на текущий момент курсор находится на объекте имени группы.

Детализация может выполняться в любом отчете, который содержит, по крайней мере, одну группу, даже если все разделы подробностей уже отображаются. Возможность детализации может весьма пригодиться при работе со сводными (итоговыми) отчетами, в которых изначально отображаются только высокоуровневые данные. Пользуясь функцией детализации, пользователь ожидает увидеть лишь группы более низкого уровня и их описание. Поэтому разделы подробностей, а также заголовки и нижние колонтитулы групп более низких уровней лучше скрывать. Это сделает отчет с детализацией более эффективным. О том, как скрывать и подавлять разделы, будет рассказано в главе 8.

Совет. Управление режимом детализации отчета, например, принятие решения о том, нужно ли показывать все заголовки групп высокого уровня при переходе на более высокий уровень детализации, либо показывать заголовки одних групп и не показывать заголовки других, может потребовать использования формул или условного форматирования. В Crystal Reports имеется фунщия DrillDdownGroupLevel, упрощающая процесс настройки такого поведения. Найти эту функцию можно в окне Function Tree (Дерево функций) редактора формул, в разделе Print State (Состояние печати). О формулах более подробно рассказывается в главе 5, а о способах условного форматирования — в главах 7 и 8.

Группирование по полям даты
Настройка полей имен групп
Группирование по полям формул
Список Тор N
Иерархические группы

Добавить комментарий


Защитный код
Обновить