次の方法で共有


Events プロパティ

スクリプト タスクを含むパッケージで定義された既存のイベントの IDTSComponentEvents コレクションを返します。

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

構文

'宣言
Public ReadOnly Property Events As EventsObjectWrapper
    Get
'使用
Dim instance As ScriptObjectModel
Dim value As EventsObjectWrapper

value = instance.Events
public EventsObjectWrapper Events { get; }
public:
property EventsObjectWrapper^ Events {
    EventsObjectWrapper^ get ();
}
member Events : EventsObjectWrapper
function get Events () : EventsObjectWrapper

プロパティ値

型: Microsoft.SqlServer.Dts.Tasks.ScriptTask. . :: . .EventsObjectWrapper
スクリプト タスクを含むパッケージで定義された既存のイベントの IDTSComponentEvents コレクションです。

説明

エラー、警告、および情報メッセージを発生させるには、スクリプト タスク コードで Dts オブジェクトの Events プロパティを使用します。

使用例

スクリプト タスク内で使用する次のサンプル コードは、スクリプト タスク内からイベントを発生させる方法を示しています。この例では、ネイティブ Windows API 関数を使用して、インターネット接続が使用できるかどうかを確認します。接続が使用できない場合、エラーを発生させます。使用されているモデム接続が切断される可能性がある場合、この例では警告が発生します。それ以外の場合は、インターネット接続が検出されたことを示す情報メッセージを返します。

Private Declare Function InternetGetConnectedState Lib "wininet" _
    (ByRef dwFlags As Long, ByVal dwReserved As Long) As Long

Private Enum ConnectedStates
    LAN = &H2
    Modem = &H1
    Proxy = &H4
    Offline = &H20
    Configured = &H40
    RasInstalled = &H10
End Enum

Public Sub Main()

    Dim dwFlags As Long
    Dim connectedState As Long

    connectedState = InternetGetConnectedState(dwFlags, 0)

    If connectedState <> 0 Then
        If (dwFlags And ConnectedStates.Modem) = ConnectedStates.Modem Then
            Dts.Events.FireWarning(0, "Script Task Example", _
                "Volatile Internet connection detected.", String.Empty, 0)
        Else
            Dts.Events.FireInformation(0, "Script Task Example", _
                "Internet connection detected.", String.Empty, 0, False)
        End If
    Else
        ' If not connected to the Internet, raise an error.
        Dts.Events.FireError(0, "Script Task Example", _
            "Internet connection not available.", String.Empty, 0)
    End If

    Dts.TaskResult = ScriptResults.Success

End Sub