次の方法で共有


Task.InitializeTask メソッド

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

名前空間:  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 _
)
'使用
Dim instance As Task 
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 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
)
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 function InitializeTask(
    connections : Connections, 
    variableDispenser : VariableDispenser, 
    events : IDTSInfoEvents, 
    log : IDTSLogging, 
    eventInfos : EventInfos, 
    logEntryInfos : LogEntryInfos, 
    refTracker : ObjectReferenceTracker
)

パラメーター

説明

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

ランタイム エンジンは、タスクが作成されるとすぐ、検証、実行、または保存操作の前に 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

関連項目

参照

Task クラス

Microsoft.SqlServer.Dts.Runtime 名前空間