Авторизация



Подчиненные отчеты по запросу и по месту вставки

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

По умолчанию, как только Crystal Reports встречает подчиненный отчет при обработке главного отчета, он обрабатывает подчиненный отчет по месту вставки (in-place). Таким образом, если поместить подчиненный отчет в нижний колонтитул группы и просмотреть главный отчет, подчиненный отчет будет обрабатываться каждый раз, когда Crystal Reports будет встречать нижний колонтитул группы. Если отчет содержит 75 групп, то при переходе к последней странице обработано будет 75 подчиненных отчетов.

В зависимости от размеров подчиненного отчета, скорости доступа к базе данных и ряда других факторов, такой тип обработки может приводить к заметному снижению производительности. Поэтому Crystal Reports предлагает другое решение — подчиненные отчеты по запросу (on-demand). Такие подчиненные отчеты отображаются в главном отчете в виде контейнера (подобно гиперссылке на Web-странице) и не обрабатываются вместе с ним. Подчиненный отчет по запросу будет обработан и показан на своей вкладке Preview только после щелчка кнопкой мыши на контейнере.

Изменить тип отчета с “по месту вставки” на “по запросу” можно двумя способами. Если вы только создаете подчиненный отчет, установите флажок On-Demand Subreport (Подчиненный отчет по запросу) в диалоговом окне Insert Subreport, а если вы хотите внести изменения в уже существующий подчиненный отчет, установите флажок On-Demand Subreport на вкладке Subreport редактора Format Editor. После этого во время предварительного просмотра главного отчета на месте подчиненного отчета будет отображаться только его контур. Подчиненный отчет будет обработан и появится на своей собственной вкладке Preview только после того, как пользователь, просматривающей отчет, щелкнет на контуре.

Внимание! Не стоит применять подчиненные отчеты по запросу в тех случаях, когда пользователь не имеет доступа к базе данных, поскольку в таких отчетах данные не сохраняются. Даже если пользователь открывает отчет с опцией Save Data With Report (Сохранять данные с отчетом), для просмотра подчиненных отчетов по запросу требуется подключение к базе данных.

Для того чтобы сделать подчиненные отчеты по запросу более понятными для пользователя, в Crystal Reports используются две опции, которые можно настроить на вкладке Subreport редактора Format Editor: On-Demand Subreport Caption (Заголовок подчиненного отчета по запросу) и Subreport Preview Tab Caption (Заголовок вкладки Preview подчиненного отчета). Обе опции настраиваются через кнопки Conditional Formula (Условная формула) и позволяют создать формулу для строк, отображаемых, соответственно, внутри контейнера и на вкладке Preview подчиненного отчета.

Поскольку обе опции являются формулами, для их создания можно использовать все возможности языка формул Crystal Reports. А это значит, что в формулы можно добавлять информацию из базы данных. Например, чтобы создать строку, предлагающую пользователю щелкнуть кнопкой мыши на контейнере подчиненного отчета для просмотра информации о кредитах в определенном регионе, вы могли бы ввести в поле On-Demand Subreport Caption такое выражение:

"Click to see Credit records for " + GroupName ({Customer.Region})

А чтобы для выбираемого пользователем подчиненного отчета по запросу на вкладке Preview отображалось название региона, вы могли бы ввести в поле Subreport Preview Tab Caption следующее выражение:

GroupName ({Customer .Region}) + 11 credits"

Совет. Опция Subreport Preview Tab Caption доступна для обоих типов подчиненных отчетов. Если выполнить двойной щелчок на отчете по месту вставки, он откроется в отдельной вкладке Preview с заголовком, определяемым формулой. Опция On-Demand Subreport Caption доступна только для подчиненных отчетов по запросу.

В редакторе Format Editor также доступны опции, позволяющие выбирать для контейнера подчиненного отчета тип шрифта, его размер и цвет, а также стиль рамки и цвет фона. Если подходить творчески, контейнеру можно придать максимально осмысленный вид. Также, при наведении курсора на подчиненный отчет по запросу на вкладке Preview, курсор принимает форму стандартного курсора Windows (имеющего вид руки), показывая, что на этом объекте можно щелкнуть кнопкой мыши. Еще на вкладке Common редактора Format Editor можно задать текст для всплывающей подсказки (Tool Tip Text), которая будет появляться при наведении курсора на подчиненный отчет.

На рис. 12.11 показана вкладка Preview главного отчета. Обратите внимание на то. что на ней выбраны несколько подотчетов, вкладки Preview которых были изменены.

Внимание! Если из подчиненного отчета в главный передаются данные, после изменения типа подчиненного отчета на On-Demand Subreport они больше передаваться не будут. Поскольку подчиненные отчеты такого типа не обрабатываются вместе с главным отчетом, им просто нечего передавать обратно в главный отчет.

Передача данных между главным и подчиненным отчетами
Пустые подчиненные отчеты
Определенные виды отчетов
Несвязанные подчиненные отчеты
Подчиненные отчеты с возможностью детализации

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


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