Reporting in C# project RRS feed

  • Question

  • I suspect this is in the wrong forum, but I couldnt find the appropriate forum for it.

    Basically, I'm writing a C# windows application, and I need to write some reports (as in, the things that print out on a peice of paper). Within visual studio, there are Reports (Microsoft reporting Technology), and Crystal Reports.

    Which should I be using? What are the differences?

    Wednesday, March 5, 2008 4:45 AM

All replies

  • Take my comments with a grain of salt because I have never held an IT position. I have just done some part-time learning of C# for a couple of years.

    (By ReportViwer I mean SSRS ReportViewer versus CrystalReportViewer)

    I suppose it's possible that if you are producing super-complex reports that Crystal might provide more functionality.  But I work for a medical billing company  (200 employees) that has been doing lots of reporting for about 20 years. I've been with them 13 years and have never seen them produce anything that  "needed" Crystal. That is to say, the VS 2005 ReportViewer control (Sequel Server Reporting Services) has all the functionality we'll ever need - in  fact much more.

    So is there any need for Crystal?  There are complaints about ReportViewer performance:
    However,  in most cases  performance won't be a problem because you can implement paging in ReportViewer with a scant few lines of code.  One nice thing about ReportViewer is that it is free even in  VS StandardEdition.  I have VS 2005 standard Edition which doesn't have Crystal.  One of the companies i that thread is apparently a software vendor that actually produces reporting tools - if they feel that SSRS is good enough for them, it's probably good enough for you.  Lots of companies are using it, and many of them feel there is no logner any need for Crystal.

    Nonetheless there are many complaints  of minor (but  irritating) bugs with the SSRS ReportViewer, and I don't know if these have all been fixed in VS 2008.   Crystal is the more seasoned product (it's not a newbie like ReportViewer), so it will probably have less bugs.

    Let me say this - whether workign with Crystal or SSRS, it is probably best to "push" the data into the report rather than have the report connect to the database directl (i.e.  you should preload the data into a datatable and then push the datatable into the report). You'll probably get better performance, and  less bugs.

    Crystal used to have a licensing issue where they charged extra for deployment. That changed in VS 2005, as far as I know it's now free - meaning if it shipped with your version of VS 2005  it now "yours" so you can do anythign you want with it.

    At work we use Crystal and I'm very impressed by the performance, so if you've got Crystal, why not go ahead and use it? Here's a big plus:  You will probably find more book and articles on Crystal than on ReportViewer since Crystal has been around longer.

    I can provide you sample code for  a basic reporrt (all I know is the absolute basics) in both technologies. Ease of use seems to me about the same, so far.

    And if I come accross any more info regarding the SSRS versus Crystal, I'll try to aprprise you - I'm curious about your question myself.

    Wednesday, March 5, 2008 6:19 AM
  • Nice review jal2...


    I've never used SSRS before as I've been using Crystal Reports since before .NET. And I primarly use Crystal for creating pdf reports; does SSRS have that built in?





    Wednesday, March 5, 2008 2:50 PM
  • Export to PDF is built-in to ReportViewer control - the user can do it from the toolbar (as I seem torecall) or you can definitely do it using code (I tried it once). Also there is export to Excel.


    But at least for VS 2005, Crystal offers more export formats - pdf, excel, Ms Word, XML, RTF, plain text, and CSV.




    Wednesday, March 5, 2008 5:28 PM
  • Thanks Jal2. I might give Crystal a go I suppose - there seems to be much more information on it out there anyway. Have struggled to find much about the windows reporting thing.


    As far as the data - my project has a service layer, so I'm kind of thinking I'll run it off  that.


    Thursday, March 6, 2008 5:48 AM