7
votes

In one of the enterprise-level projects, we are using ASP.Net MVC for the web application portion. The reporting system is a huge system with hundreds of reports plus adhoc reporting, printing and notifications, the whole nine yards.

Although we are using MVC for the web portion, the reporting doesn't need to be in the same technology, it's an enterprise software and it can be a separate and independent modules/system.

I have considered the following options, but both have pros and cons:

  • Crystal Report & Crystal Enterprise
  • SQL Server Reporting Services 2005

For example, SQL Reporting Services 2005 is powerful when it comes down to predefined and adhoc reporting, but not good enough for printing. Not sure about 2008.

Considering the need, what reporting tool/system do you suggest for an enterprise level .Net based software, and why?

1
Reporting can be done in ASP.NET MVC itself quite easily using views, although it might not scale with the degree of reporting that you require.Robert Harvey
Out of curiosity, why is SQL Reporting Services 2005 not good enough for printing?Robert Harvey
It's also mentioned by Microsoft in one of online resources that it's not the tool for fine printing. There are some workarounds (like converting to an image then direct printing). I wish I had the url. I'll try to find it and post it here. There may be improvements in 2008 though. Not quite sure.Amin Emami
For simple reports MVC is good, but how about the enterprise level printing services? I don't even mind paying for a tool which serves the purpose.Amin Emami
A simple example is to print on pre-printed forms. We can't just print the html output on a pre-printed paper.Amin Emami

1 Answers

1
votes

We use EasyQuery.NET (http://devtools.korzh.com/eq/dotnet) for ad-hoc reporting. EasyQuery is not a reporting solution but some kind of user-friendly query builder instead. For most cases it is enough: we just allow our users to query the data they want, then EasyQuery generates SQL, we execute it and show the result in some grid.