言語

ReportingService2005.SetDataSourceContents メソッド

定義

データソースの内容を設定します。

public:
 void SetDataSourceContents(System::String ^ DataSource, ReportService2005::DataSourceDefinition ^ Definition);
public void SetDataSourceContents(string DataSource, ReportService2005.DataSourceDefinition Definition);
member this.SetDataSourceContents : string * ReportService2005.DataSourceDefinition -> unit
Public Sub SetDataSourceContents (DataSource As String, Definition As DataSourceDefinition)

パラメーター

DataSource
String

データソースの完全なパス名。

Definition
DataSourceDefinition

データソースの定義を含む DataSourceDefinition オブジェクトです。

以下のコード例をコンパイルするには、Reporting ServicesのWSDLを参照し、特定の名前空間をインポートする必要があります。 詳細については 、「コード例のコンパイルと実行」をご覧ください。 以下の例コードは、既存のデータソース「AdventureWorks」のデータソース定義を設定するために SetDataSourceContents メソッドを使用しています。

Imports System  
Imports System.Web.Services.Protocols  

Class Sample  
   Public Shared Sub Main()  
      Dim rs As New ReportingService2005()  
      rs.Credentials = System.Net.CredentialCache.DefaultCredentials  

      Dim definition As 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 = Nothing  
      definition.WindowsCredentials = False  

      Try  
         rs.SetDataSourceContents("/SampleReports/AdventureWorks", definition)  

      Catch e As SoapException  
         Console.WriteLine(e.Detail.OuterXml)  
      End Try  
   End Sub 'Main  
End Class 'Sample  
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);  
      }  
   }  
}  

注釈

以下の表は、この操作のヘッダーおよび権限情報を示しています。

SOAPヘッダー (イン) BatchHeaderValue

(アウト) ServerInfoHeaderValue
必要なアクセス許可 UpdateContent

データソースの定義に含まれるプロパティを削除するには、それらのプロパティの値をnull(Visual BasicNothing)に設定してください。

データソース定義の CredentialRetrieval プロパティを Integrated または Promptに設定した場合、 UserNamePasswordの値は提供しないでください。 これを行うと、エラーコード rsInvalidElementCombinationを含むSOAP例外が発生します。

データソースの定義の CredentialRetrieval プロパティを Integrated または Storeに設定すると、 Prompt プロパティに割り当てた値は保存されません。

サブスクリプションの場合、サブスクリプションが無人で実行できるようにレポートサーバーデータベースに認証情報を保存する必要がある場合があります。

データソース定義のConnectionStringプロパティをnull(Visual BasicでNothing)に設定すると、エラーコードrsInvalidXMLを含むSOAP例外が発生します。 ConnectionStringの値を提供したい場合は、空文字列("")に設定してください。

適用対象