Freigeben über


DtsEventHandler.PrecedenceConstraints Eigenschaft

Definition

Gibt eine Auflistung von Rangfolgeneinschränkungen zurück, die ggf. für ausführbare Elemente in diesem Container gefunden wurden. Diese Eigenschaft ist schreibgeschützt.

public:
 property Microsoft::SqlServer::Dts::Runtime::PrecedenceConstraints ^ PrecedenceConstraints { Microsoft::SqlServer::Dts::Runtime::PrecedenceConstraints ^ get(); };
public Microsoft.SqlServer.Dts.Runtime.PrecedenceConstraints PrecedenceConstraints { get; }
member this.PrecedenceConstraints : Microsoft.SqlServer.Dts.Runtime.PrecedenceConstraints
Public ReadOnly Property PrecedenceConstraints As PrecedenceConstraints

Eigenschaftswert

Eine PrecedenceConstraints-Auflistung.

Implementiert

Beispiele

Im folgenden Codebeispiel wird ein DtsEventHandlerOnError Ereignis im Paket erstellt. Dieser DtsEventHandler Container enthält zwei ausführbare Dateien und stellt eine Rangfolgeeinschränkung zwischen ihnen her. Im Codebeispiel wird die Anzahl der Rangfolgeeinschränkungen im Container angezeigt.

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  

Beispielausgabe:

Name CreationName, Type String

Name DelayValidation, Type Boolean

Name Description, Type String

Name Disable, Type Boolean

Name Ausführbare Dateien, Type-Objekt

Name ExecutionDuration, Type Int32

Name ExecutionResult, Type-Objekt

Name ExecutionStatus, Type-Objekt

NameVariablen, Type-Objekt

Anzahl der Rangfolgeeinschränkungen in DtsEventHandler: 1

Anzahl der ausführbaren Dateien in DtsEventHandler: 2

Neue Anzahl von Exeutables in DtsEventHandler: 1

Hinweise

Eine PrecedenceConstraints Auflistung ist eine Auflistung von PrecedenceConstraint Objekten.

Gilt für: