次の方法で共有


DtsEventHandler.PrecedenceConstraints Property

このコンテナ内の実行可能オブジェクトに優先順位制約がある場合、優先順位制約のコレクションを返します。このプロパティは読み取り専用です。

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

構文

'宣言
Public ReadOnly Property PrecedenceConstraints As PrecedenceConstraints
public PrecedenceConstraints PrecedenceConstraints { get; }
public:
virtual property PrecedenceConstraints^ PrecedenceConstraints {
    PrecedenceConstraints^ get () sealed;
}
/** @property */
public final PrecedenceConstraints get_PrecedenceConstraints ()
public final function get PrecedenceConstraints () : PrecedenceConstraints

プロパティ値

PrecedenceConstraints コレクションです。

解説

PrecedenceConstraints コレクションは、PrecedenceConstraint オブジェクトのコレクションです。

使用例

次のコード例では、パッケージの OnError イベントの DtsEventHandler を作成します。この DtsEventHandler コンテナに 2 つの実行可能オブジェクトを追加し、これらのオブジェクト間に優先順位制約を設定します。次に、コンテナに含まれる優先順位制約の数を表示します。

using System;
using System.Collections.Generic;
using System.Text;
using Microsoft.SqlServer.Dts.Runtime;
using Microsoft.SqlServer.Dts.Tasks.SendMailTask;
using Microsoft.SqlServer.Dts.Tasks.BulkInsertTask;

namespace Microsoft.SqlServer.SSIS.Samples
{
    class Program
    {
        static void Main(string[] args)
        {
            Package pkg = new Package();
            // Set up a DtsEventHandler for the OnError event of the package.
            DtsEventHandler dtsEH = (DtsEventHandler)pkg.EventHandlers.Add("OnError");

            // Show the name and type of the properties in DtsEventHandler
            // using the Properties collection.
            DtsProperties props = dtsEH.Properties;
            String name;
            TypeCode propType;
            foreach (DtsProperty prop in props)
            {
                propType = prop.Type;
                name = prop.Name;
                Console.WriteLine("Name {0}, Type {1}", name, propType);
            }

            // When an OnError Event occurs, the Executables collection contains
            // the items to run. For this example, there will be a SendMailtTask
            // and a BulkInsertTask with a precedence constraint between them.
            Executable dtsEH1 = dtsEH.Executables.Add("STOCK:SendMailTask");
            TaskHost th = (TaskHost)dtsEH1;
            SendMailTask smTask = (SendMailTask)th.InnerObject;
            smTask.Subject = "Send Mail task";
            
            // Add a second executable to the DtsEventHandler.
            Executable dtsEH2 = dtsEH.Executables.Add("STOCK:BulkInsertTask");
            TaskHost th2 = (TaskHost)dtsEH2;

            // Add a precedence constraint between the two tasks.
            PrecedenceConstraint pc = dtsEH.PrecedenceConstraints.Add(dtsEH1, dtsEH2);
            pc.Value = DTSExecResult.Completion;

            // Review the number of constraints in the DtsEventHandler collection.
            PrecedenceConstraints pcDTSEH = dtsEH.PrecedenceConstraints;
            Console.WriteLine("Number of precedence constraints in DtsEventHandler: {0}", dtsEH.PrecedenceConstraints.Count);

            // Review the number of executables in the DtsEventHandler collection.
            Console.WriteLine("Number of executables in DtsEventHandler: {0}", dtsEH.Executables.Count);

            // Remove the first executable in the DtsEventHandler collection.
            dtsEH.Executables.Remove(0);
            Console.WriteLine("New number of exeutables in DtsEventHandler: {0}", dtsEH.Executables.Count);
        }
    }
}
Imports System
Imports System.Collections.Generic
Imports System.Text
Imports Microsoft.SqlServer.Dts.Runtime
Imports Microsoft.SqlServer.Dts.Tasks.SendMailTask
Imports Microsoft.SqlServer.Dts.Tasks.BulkInsertTask
 
Namespace Microsoft.SqlServer.SSIS.Samples
    Class Program
        Shared  Sub Main(ByVal args() As String)
            Dim pkg As Package =  New Package() 
            ' Set up a DtsEventHandler for the OnError event of the package.
            Dim dtsEH As DtsEventHandler = CType(pkg.EventHandlers.Add("OnError"), DtsEventHandler)
 
            ' Show the name and type of the properties in DtsEventHandler
            ' using the Properties collection.
            Dim props As DtsProperties =  dtsEH.Properties 
            Dim name As String
            Dim propType As TypeCode
            Dim prop As DtsProperty
            For Each prop In props
                propType = prop.Type
                name = prop.Name
                Console.WriteLine("Name {0}, Type {1}", name, propType)
            Next
 
            ' When an OnError Event occurs, the Executables collection contains
            ' the items to run. For this example, there will be a SendMailtTask
            ' and a BulkInsertTask with a precedence constraint between them.
            Dim dtsEH1 As Executable =  dtsEH.Executables.Add("STOCK:SendMailTask") 
            Dim th As TaskHost = CType(dtsEH1, TaskHost)
            Dim smTask As SendMailTask = CType(th.InnerObject, SendMailTask)
            smTask.Subject = "Send Mail task"
 
            ' Add a second executable to the DtsEventHandler.
            Dim dtsEH2 As Executable =  dtsEH.Executables.Add("STOCK:BulkInsertTask") 
            Dim th2 As TaskHost = CType(dtsEH2, TaskHost)
 
            ' Add a precedence constraint between the two tasks.
            Dim pc As PrecedenceConstraint =  dtsEH.PrecedenceConstraints.Add(dtsEH1,dtsEH2) 
            pc.Value = DTSExecResult.Completion
 
            ' Review the number of constraints in the DtsEventHandler collection.
            Dim pcDTSEH As PrecedenceConstraints =  dtsEH.PrecedenceConstraints 
            Console.WriteLine("Number of precedence constraints in DtsEventHandler: {0}", dtsEH.PrecedenceConstraints.Count)
 
            ' Review the number of executables in the DtsEventHandler collection.
            Console.WriteLine("Number of executables in DtsEventHandler: {0}", dtsEH.Executables.Count)
 
            ' Remove the first executable in the DtsEventHandler collection.
            dtsEH.Executables.Remove(0)
            Console.WriteLine("New number of exeutables in DtsEventHandler: {0}", dtsEH.Executables.Count)
        End Sub
    End Class
End Namespace

サンプルの出力 :

Name CreationName, Type String

Name DelayValidation, Type Boolean

Name Description, Type String

Name Disable, Type Boolean

Name Executables, Type Object

Name ExecutionDuration, Type Int32

Name ExecutionResult, Type Object

Name ExecutionStatus, Type Object

Name Variables, Type Object

Number of precedence constraints in DtsEventHandler: 1

Number of executables in DtsEventHandler: 2

New number of exeutables in DtsEventHandler: 1

スレッド セーフ

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

プラットフォーム

開発プラットフォーム

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

対象プラットフォーム

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

参照

関連項目

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