ReportingService2006.CreateDataSource メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
SharePoint ライブラリ内に新しいデータ ソースを作成します。
public:
ReportService2006::CatalogItem ^ CreateDataSource(System::String ^ DataSource, System::String ^ Parent, bool Overwrite, ReportService2006::DataSourceDefinition ^ Definition, cli::array <ReportService2006::Property ^> ^ Properties);
public ReportService2006.CatalogItem CreateDataSource (string DataSource, string Parent, bool Overwrite, ReportService2006.DataSourceDefinition Definition, ReportService2006.Property[] Properties);
member this.CreateDataSource : string * string * bool * ReportService2006.DataSourceDefinition * ReportService2006.Property[] -> ReportService2006.CatalogItem
Public Function CreateDataSource (DataSource As String, Parent As String, Overwrite As Boolean, Definition As DataSourceDefinition, Properties As Property()) As CatalogItem
パラメーター
- DataSource
- String
ファイル名と拡張子 (.rsds) を含む、データ ソースの名前です。
- Parent
- String
データ ソースを格納する親フォルダーの完全修飾 URL です。
- Overwrite
- Boolean
指定した場所に同じ名前のデータ ソースが既に存在する場合に上書きするかどうかを示す Boolean
式です。
- Definition
- DataSourceDefinition
DataSourceDefinitionデータ ソースの接続プロパティを表す オブジェクト。
戻り値
新しく作成されたデータ ソースの CatalogItem オブジェクトです。
例
using System;
using System.Collections.Generic;
using System.IO;
using System.Text;
using System.Web;
using System.Web.Services;
using System.Web.Services.Protocols;
class Sample
{
static void Main(string[] args)
{
ReportingService2006 rs = new ReportingService2006();
rs.Url = "http://<Server Name>" +
"/_vti_bin/ReportServer/ReportService2006.asmx";
rs.Credentials =
System.Net.CredentialCache.DefaultCredentials;
string name = "AdventureWorks.rsds";
string parent = "http://<Server Name>/Docs/Documents/";
// Define the data source definition.
DataSourceDefinition definition = new DataSourceDefinition();
definition.CredentialRetrieval =
CredentialRetrievalEnum.Integrated;
definition.ConnectString =
"data source=(local);initial catalog=AdventureWorks";
definition.Enabled = true;
definition.EnabledSpecified = true;
definition.Extension = "SQL";
definition.ImpersonateUserSpecified = false;
//Use the default prompt string.
definition.Prompt = null;
definition.WindowsCredentials = false;
try
{
rs.CreateDataSource(name, parent, false,
definition, null);
}
catch (SoapException e)
{
Console.WriteLine(e.Detail.InnerXml.ToString());
}
}
}
Imports System
Imports System.Web.Services
Imports System.Web.Services.Protocols
Class Sample
Public Shared Sub Main()
Dim rs As New ReportingService2006()
rs.Url = "http://<Server Name>" + _
"/_vti_bin/ReportServer/ReportService2006.asmx"
rs.Credentials = _
System.Net.CredentialCache.DefaultCredentials
Dim name As String = "AdventureWorks.rsds"
Dim parent As String = "http://<Server Name>/Docs/Documents/"
' Define the data source definition.
Dim definition As New DataSourceDefinition()
definition.CredentialRetrieval = _
CredentialRetrievalEnum.Integrated
definition.ConnectString = _
"data source=(local);initial catalog=AdventureWorks"
definition.Enabled = True
definition.EnabledSpecified = True
definition.Extension = "SQL"
definition.ImpersonateUserSpecified = False
'Use the default prompt string.
definition.Prompt = Nothing
definition.WindowsCredentials = False
Try
rs.CreateDataSource(name, parent, False, _
definition, Nothing)
Catch e As SoapException
Console.WriteLine(e.Detail.InnerXml.ToString())
End Try
End Sub
End Class
注釈
次の表に、この操作に関連するヘッダーおよび権限の情報を示します。
SOAP ヘッダー | (In) TrustedUserHeaderValue (Out) ServerInfoHeaderValue |
必要なアクセス許可 | 新しいデータ ソースの作成: Parent に対する <xref:Microsoft.SharePoint.SPBasePermissions.AddListItems>既存のデータ ソースの更新: DataSource に対する <xref:Microsoft.SharePoint.SPBasePermissions.EditListItems> |
データ ソース名に .rsds 拡張子を含めない場合、rsFileExtensionRequired
エラーが返されます。 .odc 拡張子を指定した場合、rsNotSupported
エラーが返されます。
エラーが発生すると、データ ソースは作成されません。
パラメーターの Parent
長さは 260 文字を超えることはできません。それ以外の場合は、エラー コード rsItemLengthExceeded で SOAP 例外がスローされます。
Parent
パラメーターを NULL または空の文字列にすることはできません。また、予約文字 : ? ; @ & = + $ , \ * > < | . "
を含めることもできません。 スラッシュ (/) は、フォルダーの完全なパス名内の各項目を区切るために使用することはできますが、フォルダー名の末尾には使用できません。