次の方法で共有


InitializeTask メソッド

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

名前空間:  Microsoft.SqlServer.Dts.Tasks.XMLTask
アセンブリ:  Microsoft.SqlServer.XMLTask (Microsoft.SqlServer.XMLTask.dll)

構文

'宣言
Public Overrides Sub InitializeTask ( _
    connections As Connections, _
    variableDispenser As VariableDispenser, _
    events As IDTSInfoEvents, _
    log As IDTSLogging, _
    eventInfos As EventInfos, _
    logEntryInfos As LogEntryInfos, _
    refTracker As ObjectReferenceTracker _
)
'使用
Dim instance As XMLTask
Dim connections As Connections
Dim variableDispenser As VariableDispenser
Dim events As IDTSInfoEvents
Dim log As IDTSLogging
Dim eventInfos As EventInfos
Dim logEntryInfos As LogEntryInfos
Dim refTracker As ObjectReferenceTracker

instance.InitializeTask(connections, _
    variableDispenser, events, log, eventInfos, _
    logEntryInfos, refTracker)
public override 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
) override
abstract InitializeTask : 
        connections:Connections * 
        variableDispenser:VariableDispenser * 
        events:IDTSInfoEvents * 
        log:IDTSLogging * 
        eventInfos:EventInfos * 
        logEntryInfos:LogEntryInfos * 
        refTracker:ObjectReferenceTracker -> unit 
override InitializeTask : 
        connections:Connections * 
        variableDispenser:VariableDispenser * 
        events:IDTSInfoEvents * 
        log:IDTSLogging * 
        eventInfos:EventInfos * 
        logEntryInfos:LogEntryInfos * 
        refTracker:ObjectReferenceTracker -> unit 
public override function InitializeTask(
    connections : Connections, 
    variableDispenser : VariableDispenser, 
    events : IDTSInfoEvents, 
    log : IDTSLogging, 
    eventInfos : EventInfos, 
    logEntryInfos : LogEntryInfos, 
    refTracker : ObjectReferenceTracker
)

パラメーター

説明

XMLTask およびその他のストック タスクの場合、このメソッドを使用して、各タスクのログ イベントを設定します。ランタイム エンジンは、タスクが作成されるとすぐ、検証、実行、または保存操作の前に、このメソッドを呼び出します。このメソッドはコードでは使用されません。ただし、カスタム タスクを作成する場合は、このメソッドをオーバーライドし、タスクに対する初期値を提供することが必要になる場合があります。

使用例

タスク開発者は、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"];
}