Export (0) Print
Expand All

ReportingService2005.GetReportParameters Method (String, String, Boolean, ParameterValue[], DataSourceCredentials[])

 

Applies To: SQL Server 2016 Preview

Returns report parameter properties for a specified report. The GetReportParameters method can also be used to validate parameter values against parameters for a specified report.

Namespace:   ReportService2005
Assembly:  ReportService2005 (in ReportService2005.dll)

public ReportParameter[] GetReportParameters(
	string Report,
	string HistoryID,
	bool ForRendering,
	ParameterValue[] Values,
	DataSourceCredentials[] Credentials
)

Parameters

Report
Type: System.String

The full path name of the report.

HistoryID
Type: System.String

The ID of the report history snapshot. Set the ForRendering parameter to a value of true in order to retrieve parameter properties for a report history snapshot. Set the value to null (Nothing in Visual Basic) if you are retrieving parameters for a report that is not a report history snapshot.

ForRendering
Type: System.Boolean

A Boolean expression that indicates how the parameter values are to be used. If set to a value of true, parameter properties that are returned are based on the parameter data that was used during the execution of the report.

Values
Type: ReportService2005.ParameterValue[]

The parameter values (ParameterValue objects) that can be validated against the parameters of a report that is managed by the report server.

Credentials
Type: ReportService2005.DataSourceCredentials[]

The data source credentials (DataSourceCredentials objects) that can be used to validate query parameters.

Return Value

Type: ReportService2005.ReportParameter[]

An array of ReportParameter objects that lists the parameters for the report.

The table below shows header and permissions information on this operation.

SOAP Headers

(Out) ServerInfoHeaderValue

Required Permissions

ReadProperties

If the execution setting for the report is Snapshot, the parameter metadata that is returned is the data that was used when the report history snapshot was created. If the execution setting for the report is Live, the parameter metadata returned represents the parameter data that is associated with the specified report.

If you provide a value for the HistoryID parameter and set the ForRendering parameter value to true, the parameter metadata returned represents the parameter data that was used when the report history snapshot was created. The value supplied for HistoryID is ignored if ForRendering is set to false.If ForRendering is false, the parameter metadata returned represents the parameter data that is currently associated with the specified report.

If any parameters values are based on a query and you are interested in returning the query-based parameters' valid values list, set ForRendering to true. In addition, for query-based parameters, you must pass in all of the credential information required to return the query parameters.

When using the GetReportParameters method to validate parameters, the Values parameter is required.

If report parameters do not exist for the given report, an empty ReportParameter array is returned.

Legacy Code Example

To compile this code example, you must reference the Reporting Services WSDL and import certain namespaces. For more information, see . The following code example uses the GetReportParameters method to retrieve a list of parameter metadata for a report and then displays the name of each parameter:

using System;
using System.Web.Services.Protocols;

class Sample
{
   public static void Main()
   {
      ReportingService2005 rs = new ReportingService2005();
      rs.Credentials = System.Net.CredentialCache.DefaultCredentials;

      string report = "/SampleReports/Employee Sales Summary";
      bool forRendering = false;
      string historyID = null;
      ParameterValue[] values = null;
      DataSourceCredentials[] credentials = null;
      ReportParameter[] parameters = null;

      try
      {
         parameters = rs.GetReportParameters(report, historyID, forRendering, values, credentials);

         if (parameters != null)
         {
            foreach (ReportParameter rp in parameters)
            {
               Console.WriteLine("Name: {0}", rp.Name);
            }
         }
      }

      catch (SoapException e)
      {
         Console.WriteLine(e.Detail.InnerXml.ToString()); 
      }
   }
}
Return to top
Was this page helpful?
(1500 characters remaining)
Thank you for your feedback
Show:
© 2015 Microsoft