2008-10-16 3 views
3

Какие хорошие компоненты и пакеты доступны для генерации HTML-отчетов на основе определений отчетов? У меня есть поистине ужасный проект, в котором каждый отчет представляет собой выделенную страницу aspx, которая создает одну фантастически большую HTML-строку, которую затем присваивает контрольной метке «reportBody».Решение для отчетности по HTML

Стандартные сетки не являются хорошим решением, так как они не обеспечивают возможности группировки, но я открыт для покупки сетки, удобной для группировки, печати и экспорта. FYI - это один вариант механизма отчетности, на который я буду смотреть. Что еще там? SSRS не может быть вариантом, поскольку MSSQL может даже не быть вариантом.

BTW, это веб-сайт ASP.NET.

ответ

0

DevExpress ASPxGridView зарекомендовал себя как отличный инструмент для этой работы.

1

вы можете использовать отчеты RDLC, и просто строить их в локальном режиме (без SQL SERVER требуется). Я регулярно загружаю данные отчетов RDLC из результатов вызовов функций, а не привязываю их к базе данных.

2

Вы можете использовать i-net Clear Reports (используется для i-net Crystal-Clear). Он имеет множество различных форматов вывода, таких как HTML, PDF, Postscript и т. Д. Он может печатать и, конечно же, поддерживает группировку. Он не зависит от платформы. Вы можете использовать его вместе с вашим ASP.NET. Он поддерживает множество различных баз данных, таких как MS SQL, Oracle, MySQL и т. Д. Но также возможны и другие источники данных. Свободный и полностью функциональный report designer очень прост в использовании.

Кроме того, цена намного ниже других инструментов отчетности, таких как Crystal Reports.

+0

Это выглядит великолепно, но это все Java :-(Я ищу .NET-решение. – ProfK 2008-12-02 13:12:06

+0

Я понимаю, что это 1,5 года спустя и все, но мы заняты переносом его на .NET и скоро закончим ... – Epaga 2011-02-14 14:02:25

0

Стандартные сетки не является хорошим решением , поскольку они не дают никакой возможности группируя

Если вы хотите создать свой собственный, я могу дать вам несколько советов. Во-первых, вы могли бы создать группы с операторами ROLLUP или COMPUTE или аналогичными в своем SQL и использовать сетку.

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

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