ScriptTask クラス
スクリプト タスクのクラスを定義します。開発者は、このクラスを使用して Integration Services で提供される組み込みのタスクで利用できない機能を実行するカスタム コードを作成します。
継承階層
System. . :: . .Object
Microsoft.SqlServer.Dts.Runtime. . :: . .DtsObject
Microsoft.SqlServer.Dts.Runtime. . :: . .Task
Microsoft.SqlServer.Dts.Tasks.ScriptTask..::..ScriptTask
名前空間: Microsoft.SqlServer.Dts.Tasks.ScriptTask
アセンブリ: Microsoft.SqlServer.ScriptTask (Microsoft.SqlServer.ScriptTask.dll)
構文
'宣言
<GuidAttribute("2EC4E475-058D-3590-8909-279F833D8B9C")> _
<ComVisibleAttribute(True)> _
Public Class ScriptTask _
Inherits Task _
Implements IDTSBreakpointSite, IDTSSuspend, IDTSComponentPersist
'使用
Dim instance As ScriptTask
[GuidAttribute("2EC4E475-058D-3590-8909-279F833D8B9C")]
[ComVisibleAttribute(true)]
public class ScriptTask : Task, IDTSBreakpointSite,
IDTSSuspend, IDTSComponentPersist
[GuidAttribute(L"2EC4E475-058D-3590-8909-279F833D8B9C")]
[ComVisibleAttribute(true)]
public ref class ScriptTask : public Task,
IDTSBreakpointSite, IDTSSuspend, IDTSComponentPersist
[<GuidAttribute("2EC4E475-058D-3590-8909-279F833D8B9C")>]
[<ComVisibleAttribute(true)>]
type ScriptTask =
class
inherit Task
interface IDTSBreakpointSite
interface IDTSSuspend
interface IDTSComponentPersist
end
public class ScriptTask extends Task implements IDTSBreakpointSite, IDTSSuspend, IDTSComponentPersist
ScriptTask 型は、以下のメンバーを公開しています。
プロパティ
名前 | 説明 | |
---|---|---|
BreakpointManager | このタスクのブレークポイントを制御するために使用される BreakpointManager を返します。 | |
Breakpoints | このタスクに設定されたブレークポイントの配列を返します。 | |
DebugMode | タスクがデバッグ モードで実行されているかどうか、およびタスクの実行中に OnBreakpointHit イベントを発生させる必要があるかどうかを示す値を取得します。値の設定も可能です。 | |
EntryPoint | エントリ ポイントとして実行されるクラスの名前を取得します。値の設定も可能です。 | |
ExecutionValue | ユーザー定義のオブジェクトを返します。このフィールドは読み取り専用です。 (Task. . :: . .ExecutionValue をオーバーライドします。) | |
ReadOnlyVariables | 読み取り専用アクセスのユーザーがパッケージで利用できる既存の変数のコンマ区切りの一覧を取得します。値の設定も可能です。 | |
ReadWriteVariables | 読み取り/書き込みアクセスのユーザーがパッケージで利用できる既存の変数のコンマ区切りの一覧を取得します。値の設定も可能です。 | |
ScriptingEngine | VSTATaskScriptingEngine クラスを取得します。 | |
ScriptLanguage | スクリプトを記述するプログラミング言語を取得します。値の設定も可能です。 | |
ScriptLoaded | タスクにカスタム スクリプトが含まれるかどうかを示す値を取得します。 | |
ScriptProjectName | スクリプト プロジェクトの名前を取得します。値の設定も可能です。 | |
ScriptStorage | [VSTAScriptProjectStorage] を取得します。 | |
SuspendRequired | タスクがブレークポイントに到達したときにタスクを中断するかどうかを示す Boolean を取得します。値の設定も可能です。この値は、ブレークポイントに到達したときにタスクおよびコンテナに対してランタイム エンジンで設定されます。 | |
Version | *** このメンバーは非推奨です。「解説」を参照してください。 *** タスクのバージョンを返します。このプロパティは読み取り専用です。 (Task から継承されています。) |
先頭に戻る
メソッド
名前 | 説明 | |
---|---|---|
AcceptBreakpointManager | タスクに BreakpointManager を渡します。このメソッドはランタイムで呼び出されるメソッドであり、コードでは使用されません。 | |
CanUpdate | *** このメンバーは非推奨です。「解説」を参照してください。 *** 新しいパッケージの XML で古いパッケージの XML を更新できるかどうかを示す Boolean 値。 (Task から継承されています。) | |
Equals | 2 つのオブジェクト インスタンスが等しいかどうかを示します。 (DtsObject から継承されています。) | |
Execute | スクリプト タスクを実行します。 (Task. . :: . .Execute(Connections, VariableDispenser, IDTSComponentEvents, IDTSLogging, Object) をオーバーライドします。) | |
Finalize | ScriptTask で使用されるすべてのリソースを解放します。 (Object. . :: . .Finalize() () () () をオーバーライドします。) | |
GetConnectionID | 接続の ID を含む String を取得します。 (Task から継承されています。) | |
GetConnectionName | 接続の名前を含む String を取得します。 (Task から継承されています。) | |
GetHashCode | このインスタンスのハッシュ コードを返します。 (DtsObject から継承されています。) | |
GetType | (Object から継承されています。) | |
InitializeTask | スクリプト タスクに関連付けられたプロパティを初期化します。このメソッドはランタイムで呼び出されるメソッドであり、コードでは使用されません。 (Task. . :: . .InitializeTask(Connections, VariableDispenser, IDTSInfoEvents, IDTSLogging, EventInfos, LogEntryInfos, ObjectReferenceTracker) をオーバーライドします。) | |
LoadFromXML | XML からスクリプト タスク データを読み込みます。このメソッドをアプリケーション コードから呼び出すことはできません。.xml として保存されたパッケージを読み込むには、Application..::..LoadPackage メソッドを使用します。 | |
MemberwiseClone | (Object から継承されています。) | |
ReportBreakpointChanges | インフラストラクチャです。 | |
ResumeExecution | 一時停止した後、ランタイム エンジンでタスクまたはコンテナの実行を再開します。 | |
SaveToXML | XML にスクリプト タスクのコンポーネントを保存します。このメソッドをアプリケーション コードから呼び出すことはできません。パッケージを .xml として保存するには、Application..::..SaveToXml メソッドを使用します。 | |
SetUniqueScriptProjectName | スクリプト プロジェクトの一意の名前を設定します。 | |
SuspendExecution | 実行可能ファイルで実行を中断する必要があることを示します。このメソッドはランタイム エンジンで呼び出されます。 | |
ToString | (Object から継承されています。) | |
Update | *** このメンバーは非推奨です。「解説」を参照してください。 *** CanUpdate が true に設定されている場合、このメソッドによって、古いパッケージ XML が新しいパッケージ XML で更新されます。 (Task から継承されています。) | |
Validate | コンポーネントが正しく構成されていることを確認します。 (Task. . :: . .Validate(Connections, VariableDispenser, IDTSComponentEvents, IDTSLogging) をオーバーライドします。) |
先頭に戻る
説明
ScriptTask クラスは、スクリプト タスクを定義し、ランタイムと Visual Studio for Applications でのスクリプト タスクの対話を処理します。
詳細については、「スクリプト タスク」および「スクリプト タスクのコーディングおよびデバッグ」を参照してください。
使用例
コンソール アプリケーションで実装された次のコード サンプルでは、ScriptTask をパッケージに追加し、そのプロパティの一部の既定値を表示します。
using System;
using Microsoft.SqlServer.Dts.Runtime;
namespace ScriptTaskCS
{
class Program
{
static void Main(string[] args)
{
Package pkg = new Package();
string newLine = System.Environment.NewLine;
Executable exe = pkg.Executables.Add("STOCK:ScriptTask");
TaskHost thTask = (TaskHost)exe;
string taskInfo;
taskInfo =
"Entry point: " +
thTask.Properties["EntryPoint"].GetValue(thTask) + newLine +
"Script Language: " +
thTask.Properties["ScriptLanguage"].GetValue(thTask) + newLine +
"ReadOnlyVariables: " +
thTask.Properties["ReadOnlyVariables"].GetValue(thTask) + newLine +
"ReadWriteVariables: " +
thTask.Properties["ReadWriteVariables"].GetValue(thTask);
Console.WriteLine(taskInfo);
Console.Read();
}
}
}
Imports Microsoft.SqlServer.Dts.Runtime
Module Module1
Sub Main()
Dim pkg As New Package
Dim newLine As String = System.Environment.NewLine
Dim exe As Executable = pkg.Executables.Add("STOCK:ScriptTask")
Dim thTask As TaskHost = CType(exe, TaskHost)
Dim taskInfo As String
taskInfo =
"Entry point: " & _
thTask.Properties("EntryPoint").GetValue(thTask) & newLine & _
"Script Language: " & _
thTask.Properties("ScriptLanguage").GetValue(thTask) & newLine & _
"ReadOnlyVariables: " & _
thTask.Properties("ReadOnlyVariables").GetValue(thTask) & newLine & _
"ReadWriteVariables: " & _
thTask.Properties("ReadWriteVariables").GetValue(thTask)
Console.WriteLine(taskInfo)
Console.Read()
End Sub
End Module
スレッド セーフ
この型の public static (Visual Basic では Shared) のメンバーはすべて、スレッド セーフです。インスタンス メンバーの場合は、スレッド セーフであるとは限りません。