2010-11-30 6 views
0

Я разрабатываю проект расчета заработной платы в vb.net с SQL-сервером, в этом я использую отчет Crystal Reports для отчета, если я использую более 10 вспомогательных отчетов в погоде за один отчет, это влияет на эффективность моего проекта или это займет больше времениCrystal report & sub report

ответ

1

Да, потребуется больше времени с тех пор, как вы на самом деле запускаете 10 различных запросов, а инструмент отчетности, вероятно, должен связать результаты всех этих запросов.

Я написал отчеты с 3 или 4 подзаголовками, но обычно больше не нужно. Я попытался бы подумать об обходном пути для многих подписок - обычно есть способ. (Например, используйте столбец в качестве переключателя для отображения/скрытия или группировки данных.)

0

На самом деле трудно сказать, как ваши подзаголовки влияют на производительность. Я разработал отчеты, в которых использование подписок делает весь отчет более быстрым - иногда не так просто построить базовый запрос, чтобы быть более эффективным, чем многие более простые запросы для подписок.

Один из примеров - это отчеты типа ABAC, в которых есть много отношений «один ко многим» из главной таблицы/запроса (A) в поддиски/запросы (B, C). И пользователи хотят видеть все данные типа BC сразу (не по требованию). Для одиночного запроса для обработки (и реализации отвратительной логики для секций «показать-скрыть») будут использоваться строки A * B * C, используя подзаголовки, с которыми вы можете обрабатывать полные строки A * (B + C) для обработки и отображения.

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

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