One of the best kept secrets of the PPJ Framework was support for the Report Viewer object, a standalone control for reporting purposes that is in some ways compatible with Microsoft SQL Server Reporting Services.
We built the conversion target and accompanying runtime support a couple of years ago for an interesting project in the UK. Since then interest was limited and most customers decided for Crystal Reports or Stimulsoft Reports.Net as their preferred migration target.
Just recently the ReportViewer implementation has started to bring in new clients. By looking at the projects and the decision making process we found three reasons for this:
- ReportViewer is a free and somewhat standardized component that ships with Visual Studio. It is not part of the .NET framework but can be distributed royalty-free if you have your licensed copy of VS. This means no third-party components, no incompatabilities, hassle-free deployment. There is even a free stand-alone editor with an implementation of the XML-based RDL (report definition language).
- While the first versions of this component had their limits, Microsoft did a good job in improving functionality and adding missing features. Today the ReportViewer and its big brother Reporting Services have evolved to a powerful duo that can compete with industry-leading solutions such as Crystal Reports. The PPJ Framework now supports the latest version that came with Visual Studio 2012.
- Microsoft SQL Server Reporting Services is just one step away. Once ported it is very easy to refactor a previously client-side embedded report into a server-based reporting landscape with automated report delivery, powerful performance improvements, and dashboard-like integrations.
Once again, porting can open doors and unlock the true value and potential of man-years of development. Using Ice Porter and the PPJ Framework is not a one-way path. We actually help to bring existing applications to the great new world of today's products and technologies, fully relying on world-proven systems and components.