0
votes

We have a SSRS report server 2008 (not R2) on our internal network that has reports (and data) we want users on the Internet to be able to run. We've created a vb.net web application that users will log into and run reports from. The application runs in our DMZ and is connected to the SQL Server database (running on the same server as the SSRS) via an open port.

I suspect we have to use SSRS Web Service to access the reports since url access would require opening up the SQL Reporting Server to the outside (we don't want to do this). Correct?

I've created a page in the Web application that can render a SSRS report to file but I want to display the report to the user on a web page (and still provide ability to save report). What do I need to do? Can I have the resuls of the Render command be displayed in the Report Viewer or some other control?

Pointers to examples would be great.

Thanks

1

1 Answers

1
votes

You're looking for the ReportViewer Controls, specifically the Web version (there's also a WinForms version):

  • If you incorporate that into your web application you will get a control you can place on any page;
  • The control can connect to your SQL backend from the web server, so you don't have to expose your SQL backend to anyone else;
  • The control by default renders in the browser (utilizing the html renderer) providing the user with a nice preview.
  • The control comes with a nice toolbar that allows for navigating, searching, printing, and also exporting (i.e. saving) to various formats.

Check out the download link for Microsoft Report Viewer 2010 Redistributable Package, which contains both the Web and WinForms controls.

PS. Opening up the SSRS Web Service directly to the world is not something you'd typically want to do. The web service is great for secure communication with your own applications, and gives you some more fine-grained control (as you've noted, by creating a page to export/render reports). For providing a site with reports however, I'd recommend the ReportViewer.