Export (0) Print
Expand All
Expand Minimize

ReportingService2005.SetDataSourceContents Method

Sets the contents of a data source.

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

public void SetDataSourceContents(
	string DataSource,
	DataSourceDefinition Definition
)

Parameters

DataSource
Type: String
The full path name of the data source.
Definition
Type: ReportService2005.DataSourceDefinition
A DataSourceDefinition object that contains the definition for the data source.

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

SOAP Headers

(In) BatchHeaderValue

(Out) ServerInfoHeaderValue

Required Permissions

UpdateContent

To remove properties that are part of the data source definition, set the values of those properties to null (Nothing in Visual Basic).

If you set the CredentialRetrieval property of the data source definition to Integrated or Prompt, do not supply values for UserName or Password. Doing so results in a SOAP exception with the error code rsInvalidElementCombination.

If you set the CredentialRetrieval property of the data source definition to Integrated or Store, any value you supply for the Prompt property is not saved.

With subscriptions, it may be necessary to store credentials in the report server database so that the subscriptions can run unattended.

Setting the ConnectionString property of the data source definition to null (Nothing in Visual Basic) results in a SOAP exception with the error code rsInvalidXML. If you do not want to supply a value for ConnectionString, set its value to an empty string ("").

To compile the following code example, you must reference the Reporting Services WSDL and import certain namespaces. For more information, see Compiling and Running Code Examples. The following example code uses the SetDataSourceContents method to set the data source definition for an existing data source named "AdventureWorks":

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

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

      DataSourceDefinition definition = new DataSourceDefinition();
      definition.CredentialRetrieval = CredentialRetrievalEnum.Integrated;
      definition.ConnectString = "data source=(local);initial catalog=AdventureWorks2000";
      definition.Enabled = true;
      definition.EnabledSpecified = true;
      definition.Extension = "SQL";
      definition.ImpersonateUser = false;
      definition.ImpersonateUserSpecified = true;
      definition.Prompt = null;
      definition.WindowsCredentials = false;

      try
      {
         rs.SetDataSourceContents( "/SampleReports/AdventureWorks", definition );
      }

      catch (SoapException e)
      {
         Console.WriteLine(e.Detail.OuterXml);
      }
   }
}
Was this page helpful?
(1500 characters remaining)
Thank you for your feedback

Community Additions

ADD
Show:
© 2014 Microsoft