Source プロパティ
Analysis Services サーバーに送信される DDL ステートメントのテキストを取得します。値の設定も可能です。
名前空間: Microsoft.DataTransformationServices.Tasks.DTSProcessingTask
アセンブリ: Microsoft.SqlServer.ASTasks (Microsoft.SqlServer.ASTasks.dll)
構文
'宣言
Public Property Source As String
Get
Set
'使用
Dim instance As ASExecuteDDLTask
Dim value As String
value = instance.Source
instance.Source = value
public string Source { get; set; }
public:
property String^ Source {
String^ get ();
void set (String^ value);
}
member Source : string with get, set
function get Source () : String
function set Source (value : String)
プロパティ値
型: System. . :: . .String
Analysis Services サーバーに送信される DDL ステートメントのテキストです。
説明
このプロパティは、SourceType プロパティと連携して動作します。ソースの種類が変数で、その変数が null の場合は、返される String が空になります。ソースの種類が接続の場合に、その接続を取得する際にエラーが発生すると、返される String が空になります。
DDL ステートメントは、XMLA コマンドの Create、ALTER、または Delete を含む XML for Analysis (XMLA) ステートメントで構成されています。形式は次の例のとおりです。
<Create xmlns="https://schemas.microsoft.com/analysisservices/2003/engine">
<ParentObject>
<DatabaseID>Adventure Works DW</DatabaseID>
</ParentObject>
<ObjectDefinition>
<Dimension xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<ID>Dim Customer</ID>
<Name>Customer</Name>
<Annotations>
...
</Annotations>
<Source xsi:type="DataSourceViewBinding">
<DataSourceViewID>Adventure Works DW</DataSourceViewID>
</Source>
<Type>Customers</Type>
<Language>1033</Language>
<Collation>Latin1_General_CI_AS</Collation>
<UnknownMemberName>Unknown</UnknownMemberName>
<Translations>
...
</Translations>
<Attributes>
...
</Attributes>
...
</Dimension>
</ObjectDefinition>
</Create>
使用例
次のコード サンプルでは、実行する DDL ステートメントをファイル接続から読み込む新しい ASExecuteDDLTask を作成し、構成して実行します。このサンプルでは、Source プロパティを使用しています。
using Microsoft.SqlServer.Dts.Runtime;
using Microsoft.DataTransformationServices.Tasks.DTSProcessingTask;
class Module1
{
public static void Main()
{
Package pkg = new Package();
ConnectionManager asCM;
asCM = pkg.Connections.Add("MSOLAP100");
asCM.Name = "Analysis Services Connection Manager";
asCM.ConnectionString = "Data Source=<servername>;" +
"Initial Catalog=Adventure Works DW;Provider=MSOLAP;" +
"Integrated Security=SSPI;Impersonation Level=Impersonate;";
ConnectionManager cmdCM;
cmdCM = pkg.Connections.Add("FILE");
cmdCM.Name = "Command Source Connection Manager";
cmdCM.ConnectionString = "C:\\ddltest.txt";
Executable exe = pkg.Executables.Add("Microsoft.DataTransformationServices.Tasks.DTSProcessingTask.ASExecuteDDLTask, " +
"Microsoft.SqlServer.ASTasks, Version=10.0.0.0, " +
"Culture=neutral, PublicKeyToken=89845dcd8080cc91");
TaskHost thTask = (TaskHost) exe;
{
thTask.Properties("ConnectionName").SetValue(thTask, "Analysis Services Connection Manager");
thTask.Properties("SourceType").SetValue(thTask, DDLSourceType.FileConnection);
thTask.Properties("Source").SetValue(thTask, "Command Source Connection Manager");
}
DTSExecResult valResults = pkg.Validate(pkg.Connections, pkg.Variables, null, null);
if (valResults==DTSExecResult.Success)
{
pkg.Execute();
}
}
}
Imports Microsoft.SqlServer.Dts.Runtime
Imports Microsoft.DataTransformationServices.Tasks.DTSProcessingTask
Module Module1
Sub Main()
Dim pkg As New Package
Dim asCM As ConnectionManager
asCM = pkg.Connections.Add("MSOLAP100")
asCM.Name = "Analysis Services Connection Manager"
asCM.ConnectionString = "Data Source=<servername>;" & _
"Initial Catalog=Adventure Works DW;Provider=MSOLAP;" & _
"Integrated Security=SSPI;Impersonation Level=Impersonate;"
Dim cmdCM As ConnectionManager
cmdCM = pkg.Connections.Add("FILE")
cmdCM.Name = "Command Source Connection Manager"
cmdCM.ConnectionString = "C:\ddltest.txt"
Dim exe As Executable = pkg.Executables.Add( _
"Microsoft.DataTransformationServices.Tasks.DTSProcessingTask.ASExecuteDDLTask, " & _
"Microsoft.SqlServer.ASTasks, Version=10.0.0.0, " & _
"Culture=neutral, PublicKeyToken=89845dcd8080cc91")
Dim thTask As TaskHost = CType(exe, TaskHost)
With thTask
.Properties("ConnectionName").SetValue(thTask, _
"Analysis Services Connection Manager")
.Properties("SourceType").SetValue(thTask, DDLSourceType.FileConnection)
.Properties("Source").SetValue(thTask, "Command Source Connection Manager")
End With
Dim valResults As DTSExecResult = pkg.Validate( _
pkg.Connections, pkg.Variables, Nothing, Nothing)
If valResults = DTSExecResult.Success Then
pkg.Execute()
End If
End Sub
End Module