1
votes

I'm looking into upgrading a .net 2.0 app. The app is used by the public authorities of a certain city to keep track of expenses and generate reports and forms.

The reports and forms were generated in VS2005 using Crystal report. They follow a well defined layout, like official documents usually do.

I am looking at options to upgrade the application and the main problem I have is in determining how to deal with the crystal report files. I have successfully upgraded to VS2008, but any version after that doesn't have CR anymore, so my company would have to pruchase CR separately and because the client and my company are both tight, I'm looking at alternatives...

The obvious one is using SSRS. I have never touched it before in my life, but after playing around with it for a bit, I get the impression that it is not very well suited to generating forms with lots of non-tabular content and lots of formatting. Or am I wrong? It seems that every line has to be drawn separately. There is no (that I can see) accurate way of positioning lines for formatting... But I'm just a beginner, so I might be getting this all wrong?

If that is the case, are there any other alternatives to CR and SSRS?

I was thinking of maybe having a separate MVC web site project in the solution. Have that generate the layout in html and css with data from my entity model, then view the result in a (built-in or not) web browser. Am I overcomplicating on this?

I really need advice from somebody who's done that kind of thing before.

3
How eventually did you address this? Can you please share?FMFF
After doing a fair bit of research, I came to the conclusion that whatever I did I would have to rewrite at least all the existing reports in SSRS. I didn't have the time to learn SSRS and then rewrite the reports as my main goal was to rewrite a completely different part of the programme, so I ended up leaving the solution in .NET 2.0 to be able to continue using Crystal Reports. It was very unsatisfactory...yu_ominae

3 Answers

1
votes

What SSRS is good for:

  1. Talking to SQL Server, much faster than other products as it in many cases retains the database better when in other programs IMHO they repeat query at times.
  2. Designing collapsable grids and chart objects from datasets. You can have 'groups' that can nest aggregates of collapsed values and can be un collapsed or collapsed on demand based on expressions, parameters, or a recusive parent set.
  3. A web service for deployment ease where you can deploy one or many objects. You can also write add ons for this service with C# and the ReportingService.asmx web service.
  4. You can talk to the web service directly in a 'form' object in HTML and manipulate it's output.
  5. You can schedule reports to send out via email and file saves automatically to clients or internal users.

What SSRS IS NOT GOOD FOR:

  1. It is not event driven hardly at all except for parameters. You cannot click on many things and get other parts on the form itself to update. You may do an 'action' that goes to another location, report, or site. But in essence you are calling a seperate object, not the same instance again.
  2. Multiple layers of reporting. Beyond tweaking tool tips you cannot do 'hover over' reporting without hacking SSRS. You can make javascript windows show other reports but it is not baked in to SSRS. So you are either clicking into new reports or tab stops in a report but not getting hover over quick objects beyond text and expressions that are in tool tips.

What do you want before considering what you need to impement?

  1. I want to input and export things while talking to my database - ASP.NET with potentially HTML 5 or MVC4 if you want to be very new. ASP.NET is made for actively talking to a server and taking commands IN as well as OUT.

  2. I want a form to auto update periodically on a page as a landing site and dashboard - AJAX and Javascript on top of HTML, Java or ASP.NET.

  3. I want to create reports that exist on a Server and can be hosted on a wide variety of platforms in .NET via web service calls - SSRS.

SSRS's biggest selling point to me is it's reusability once you dial a report in. They are pretty easy to create, easy to configure, easy to deploy, and if you get a little advanced in calling the webservice you can get SSRS report objects in other technologies if you want.

0
votes

There is Crystal reports for VS2010 and VS2012. It is just not shipped with them. You can download the installation from here: http://scn.sap.com/docs/DOC-7824

0
votes

I am running through the same decision process at this time. There is a .NET product from a company called "Windward" that will allow you to design your reports in Microsoft Office. If you are in the MS ecosystem already or want your users to design reports instead of always calling on you, this might help.

Their template design tool is called AutoTag and you can deploy these template to their .NET based engine in a few lines of code.

I know the question is regarding SSRS vs. Crystal comparison but thought you should know there are other alternatives and some can make life easier

Ryan