Making Client Side Runtime Modifications
Report web services can have a minor number of modifications made to them during runtime. As you learned in Chapter 14, the most flexible way to make runtime report modifications is by using the ReportDocument class. It is far more robust than the viewer control which only has a few properties. Unfortunately, a web service report is generated on the server and consequently this is where the ReportDocument object is instantiated. The client is restricted to using the viewer control and doesn’t have any access to the ReportDocument object.
Only being able to use the viewer control is disappointing. It can only do three things: set the record selection formula, set parameters, and set user credentials for logging into the data source. It can’t get direct access to all the report objects and their properties.
All the code samples that use the viewer to make runtime modifications will work unchanged for report web services.