The Design of Software (CLOSED)

A public forum for discussing the design of software, from the user interface to the code architecture. Now closed.

The "Design of Software" discussion group has been merged with the main Joel on Software discussion group.

The archives will remain online indefinitely.

SQL 2005 Report Services - generating reports from code

  I am trying to determine whether it is possible to programmatically invoke a SQL 2005 Report from Reporting Services Server ( could be IIS or some other mechanism). We need to do this from Java, but .NET solutions are OK as well (1 headache at a time thanks !). So in summary this :

  1. Developer creates Report using SQL 2005 Report Designer
  2. Report runtime (??) deployed to Reporting web service ( i don't want to build this if I don't have to).
  2. Java app invokes web service operation 'generateReport' with paramters -> Report ID, ...some parameters like date, etc
  3. result returned straight away as text/binary stream to java client - or later as a PDF on disk.

BTW I don't want to use the MS GUI for this, hence the need to programmatic access.
Serge Merzliakov Send private email
Tuesday, May 22, 2007
Your question is unclear. You do not want to use which "MS GUI" exactly? The Report Designer (a desktop application), the Report Manager (a web application that is used to manage published reports), or the Report Viewer(an HTML rendering of a report)?

If you simply want the report data, that is possible from any language that can make an HTTP request. Make a GET request to a specifically formed URL, and you can get the report back, formatted in any of the supported ways. See the documentation of the URL access at the following Hyperlink.

You can also use the SOAP API for the same purpose. The SOAP API can, in addition, be used to deploy and manage reports. Details can be found here.

And finally, if you don't even want to use the "MS GUI" (the Report Designer, in this case) for defining the report, the report definition format is an XML grammar called Report Definition Language, which is documented here:
Raj Chaudhuri Send private email
Wednesday, May 23, 2007
  we want to use SQL Reports to do every thing with reports - except be the interface for end-users. Hence we want end-users from a Java based web page to:
      1. Get reports generated previously as files (e.g pdf, html or other)
      2. Generate reports with parameters in real time (assuming they don't a long time).

thanks for the links. I will investigate.
Serge Merzliakov Send private email
Wednesday, May 23, 2007
Yes, this is absolutely possible.  You can have to leverage the Reporting Services web service interface to render your reports.
Wednesday, May 23, 2007
Actually what you want to do is quite common and the API supports it fully.  The built-in report manager website that comes with SQL Reporting Services is really just supposed to be a jumping-off point.  There is nothing that report manager does that the API doesn't do.  Feel free to ditch it and write your own.

All the the SQLRS deployments I've done integrate the reporting into the application (mostly web apps) and we always use the API to deploy reports to customer sites in our upgrade packages.
JSmith Send private email
Wednesday, May 23, 2007

This topic is archived. No further replies will be accepted.

Other recent topics Other recent topics
Powered by FogBugz