次の方法で共有


Task.InitializeTask Method

タスクに関連付けられたプロパティを初期化します。このメソッドはランタイムで呼び出されるメソッドであり、コードでは使用されません。

名前空間: Microsoft.SqlServer.Dts.Runtime
アセンブリ: Microsoft.SqlServer.ManagedDTS (microsoft.sqlserver.manageddts.dll 内)

構文

'宣言
Public Overridable Sub InitializeTask ( _
    connections As Connections, _
    variableDispenser As VariableDispenser, _
    events As IDTSInfoEvents, _
    log As IDTSLogging, _
    eventInfos As EventInfos, _
    logEntryInfos As LogEntryInfos, _
    refTracker As ObjectReferenceTracker _
)
public virtual void InitializeTask (
    Connections connections,
    VariableDispenser variableDispenser,
    IDTSInfoEvents events,
    IDTSLogging log,
    EventInfos eventInfos,
    LogEntryInfos logEntryInfos,
    ObjectReferenceTracker refTracker
)
public:
virtual void InitializeTask (
    Connections^ connections, 
    VariableDispenser^ variableDispenser, 
    IDTSInfoEvents^ events, 
    IDTSLogging^ log, 
    EventInfos^ eventInfos, 
    LogEntryInfos^ logEntryInfos, 
    ObjectReferenceTracker^ refTracker
)
public void InitializeTask (
    Connections connections, 
    VariableDispenser variableDispenser, 
    IDTSInfoEvents events, 
    IDTSLogging log, 
    EventInfos eventInfos, 
    LogEntryInfos logEntryInfos, 
    ObjectReferenceTracker refTracker
)
public function InitializeTask (
    connections : Connections, 
    variableDispenser : VariableDispenser, 
    events : IDTSInfoEvents, 
    log : IDTSLogging, 
    eventInfos : EventInfos, 
    logEntryInfos : LogEntryInfos, 
    refTracker : ObjectReferenceTracker
)

パラメータ

  • connections
    タスクで使用される接続のコレクションです。
  • variableDispenser
    変数をロックするための VariableDispenser オブジェクトです。
  • events
    IDTSInfoEvents インターフェイスを実装するオブジェクトです。
  • log
    IDTSLogging インターフェイスを実装するオブジェクトです。
  • eventInfos
    タスクの実行中に発生させるイベントを含むコレクションです。
  • logEntryInfos
    ログ エントリのコレクションです。
  • refTracker
    オブジェクト参照トラッカです。

解説

ストック タスクの場合、このメソッドを使用して各タスクのログ イベントを設定します。

ランタイム エンジンは、タスクが作成されるとすぐ、検証、実行、または保存操作の前に InitializeTask を呼び出します。

使用例

タスク開発者は、Task 基本クラスの InitializeTask メソッドをオーバーライドし、EventInfo を新規作成して、カスタム イベントを定義します。次のコード サンプルは、カスタム タスクの InitializeTask メソッドを示しています。このメソッドでは、2 つのカスタム イベントが作成されて、eventInfos コレクションに追加されます。

public override void InitializeTask(Connections connections, VariableDispenser variables, IDTSInfoEvents events, IDTSLogging log, EventInfos eventInfos, LogEntryInfos logEntryInfos, ObjectReferenceTracker refTracker)
{
    this.eventInfos = eventInfos;
    string[] paramNames = new string[1];
    TypeCode[] paramTypes = new TypeCode[1]{TypeCode.Int32};
    string[] paramDescriptions = new string[1];

    paramNames[0] = "InitialValue";
    paramDescriptions[0] = "The value before increment.";

    this.eventInfos.Add("OnBeforeIncrement","Fires before the task increments the value.",true,paramNames,paramTypes,paramDescriptions);
    this.onBeforeIncrement = this.eventInfos["OnBeforeIncrement"];

    paramDescriptions[0] = "The value after increment.";
    this.eventInfos.Add("OnAfterIncrement","Fires after the initial value is updated.",true,paramNames, paramTypes,paramDescriptions);
    this.onAfterIncrement = this.eventInfos["OnAfterIncrement"];
}
Public Overrides Sub InitializeTask(ByVal connections As Connections,  ByVal variables As VariableDispenser, ByVal events As IDTSInfoEvents, ByVal log As IDTSLogging, ByVal eventInfos As EventInfos, ByVal logEntryInfos As LogEntryInfos, ByVal refTracker As ObjectReferenceTracker) 
    Me.eventInfos = eventInfos
    Dim paramNames(0) As String
    Dim paramTypes(0) As TypeCode = {TypeCode.Int32}
    Dim paramDescriptions(0) As String
    
    paramNames(0) = "InitialValue"
    paramDescriptions(0) = "The value before increment."
    
    Me.eventInfos.Add("OnBeforeIncrement", "Fires before the task increments the value.", True, paramNames, paramTypes, paramDescriptions)
    Me.onBeforeIncrement = Me.eventInfos("OnBeforeIncrement")
    
    paramDescriptions(0) = "The value after increment."
    Me.eventInfos.Add("OnAfterIncrement", "Fires after the initial value is updated.", True, paramNames, paramTypes, paramDescriptions)
    Me.onAfterIncrement = Me.eventInfos("OnAfterIncrement")
End Sub

スレッド セーフ

この型の public static (Microsoft Visual Basic では共有 ) メンバは、スレッド セーフです。インスタンス メンバの場合は、スレッド セーフであるとは限りません。

プラットフォーム

開発プラットフォーム

サポートされているプラットフォームの一覧については、「SQL Server 2005 のインストールに必要なハードウェアおよびソフトウェア」を参照してください。

対象プラットフォーム

サポートされているプラットフォームの一覧については、「SQL Server 2005 のインストールに必要なハードウェアおよびソフトウェア」を参照してください。

参照

関連項目

Task Class
Task Members
Microsoft.SqlServer.Dts.Runtime Namespace