次の方法で共有


ScriptObjectModel クラス

スクリプト タスクの開発者が、グローバルな Dts オブジェクトを介して、パッケージで定義されたオブジェクトにプログラムでアクセスできるようにします。 Dts オブジェクトは、ScriptObjectModel クラスのインスタンスです。

継承階層

System.Object
  Microsoft.SqlServer.Dts.Tasks.ScriptTask.ScriptObjectModel

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

構文

'宣言
Public Class ScriptObjectModel
'使用
Dim instance As ScriptObjectModel
public class ScriptObjectModel
public ref class ScriptObjectModel
type ScriptObjectModel =  class end
public class ScriptObjectModel

ScriptObjectModel 型は、以下のメンバーを公開しています。

プロパティ

  名前 説明
パブリック プロパティ Connections スクリプト タスクを含むパッケージで定義された既存の接続の Connections コレクションを返します。
パブリック プロパティ Events スクリプト タスクを含むパッケージで定義された既存のイベントの IDTSComponentEvents コレクションを返します。
パブリック プロパティ ExecutionValue タスクの実行結果についての追加情報を提供するユーザー定義のオブジェクトを取得します。値の設定も可能です。
パブリック プロパティ TaskResult スクリプト タスクの DTSExecResult を返します。
パブリック プロパティ Transaction スクリプト タスクのコンテナーに関連付けられたトランザクションを返します。
パブリック プロパティ VariableDispenser 既存の変数と連携するためにスクリプト タスク内で使用できる VariableDispenser を返します。
パブリック プロパティ Variables スクリプト タスクを含むパッケージで定義された既存の変数の Variables コレクションを返します。

先頭に戻る

メソッド

  名前 説明
パブリック メソッド Equals (Object から継承されています。)
プロテクト メソッド Finalize (Object から継承されています。)
パブリック メソッド GetHashCode (Object から継承されています。)
パブリック メソッド GetType (Object から継承されています。)
パブリック メソッド Log 有効なすべてのログ プロバイダーにエントリを記録します。
プロテクト メソッド MemberwiseClone (Object から継承されています。)
パブリック メソッド ToString (Object から継承されています。)

先頭に戻る

説明

Microsoft Visual Studio Tools for Applications (VSTA) スクリプト環境内で、スクリプト タスクはグローバルな Dts オブジェクトを提供します。このオブジェクトにより、開発者は、パッケージ内の他の場所で定義されたオブジェクト (接続、変数、イベントなど) に、ScriptObjectModel クラスのプロパティとメソッドを介してプログラムでアクセスできるようになります。 Dts オブジェクトは、ScriptObjectModel クラスのインスタンスです。

使用例

スクリプト タスク内で使用する次のサンプル コードは、VariablesEvents、および TaskResult プロパティの使用方法を示します。 詳細については、「スクリプト タスクによる Active Directory へのクエリの実行」を参照してください。

Public Sub Main()

    Dim directory As DirectoryServices.DirectorySearcher
    Dim result As DirectoryServices.SearchResult
    Dim email As String

    email = Dts.Variables("email").Value.ToString

    Try
        directory = New _
            DirectoryServices.DirectorySearcher("(mail=" & email & ")")
        result = directory.FindOne
        Dts.Variables("name").Value = _
            result.Properties("displayname").ToString
        Dts.Variables("title").Value = _
            result.Properties("title").ToString
        Dts.TaskResult = ScriptResults.Success
    Catch ex As Exception
        Dts.Events.FireError(0, _
            "Script Task Example", _
            ex.Message & ControlChars.CrLf & ex.StackTrace, _
            String.Empty, 0)
        Dts.TaskResult = ScriptResults.Failure
    End Try

End Sub

スレッド セーフ

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

関連項目

参照

Microsoft.SqlServer.Dts.Tasks.ScriptTask 名前空間