Udostępnij za pośrednictwem


Wyliczenie DTSPrecedenceEvalOp

Wskazuje operacji oceny, które używa ograniczenie pierwszeństwa.

Przestrzeń nazw:  Microsoft.SqlServer.Dts.Runtime
Zestaw:  Microsoft.SqlServer.ManagedDTS (w Microsoft.SqlServer.ManagedDTS.dll)

Składnia

'Deklaracja
Public Enumeration DTSPrecedenceEvalOp
'Użycie
Dim instance As DTSPrecedenceEvalOp
public enum DTSPrecedenceEvalOp
public enum class DTSPrecedenceEvalOp
type DTSPrecedenceEvalOp
public enum DTSPrecedenceEvalOp

Elementy członkowskie

Nazwa elementu członkowskiego Opis
Expression Określa wartość wyrażenie czy ograniczonego kontener lub zadanie jest uruchamiane.Ustaw Expression Właściwość PrecedenceConstraint.
Constraint Określa wynik wykonanie czy ograniczonego kontener lub zadanie jest uruchamiane.Ustaw Value Właściwość PrecedenceConstraint na żądaną wartość z DTSExecResult wyliczania.
ExpressionAndConstraint Określa, że wynik ograniczenie musi wystąpić i wyrażenie musi być ograniczone kontener lub uruchomienie zadania.zestawzarówno Value i Expression Właściwości PrecedenceConstraint, i zestaw jego LogicalAnd Właściwość true.
ExpressionOrConstraint Określa, że albo w wyniku ograniczenie musi wystąpić lub wyrażenie należy ocenić ograniczonego kontener lub uruchomienie zadania.zestawzarówno Value i Expression Właściwości PrecedenceConstraint, i zestaw jego LogicalAnd Właściwość false.

Uwagi

Priorytet jest zadanie lub kontener, którego wynik wyrażenie lub wykonanie (zakończenia, Sukces lub niepowodzenie) określa, czy działa następnego zadania lub kontener ograniczonego element.Wartością domyślną jest Constraint.Aby uzyskać więcej informacji, zobacz tematy Pierwszeństwo ograniczenia i Ustawienie ograniczenia priorytet zadania i kontenerów.

Przykłady

Poniższy przykład kodu tworzy trzy zadania i umieszcza więzów kolejności między nimi.Za pomocą PrecedenceConstraints kolekcja, jego iteracje nad ograniczenia w pakiet, wyświetlanie informacji na temat każdego z ograniczeń łącznie z EvalOp właściwość, która zawiera jedną z wartości z wyliczenia.Przykład kodu zmieni wartość EvalOp przy użyciu wyliczania.

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

namespace PrecedenceConst
{
    class Program
    {
        static void Main(string[] args)
        {
            Package pkg = new Package();
            // Add a File System task.
            Executable eFileTask1 = pkg.Executables.Add("STOCK:FileSystemTask");
            TaskHost thFileTask1 = eFileTask1 as TaskHost;

            // Add a second File System task.
            Executable eFileTask2 = pkg.Executables.Add("STOCK:FileSystemTask");
            TaskHost thFileTask2 = eFileTask2 as TaskHost;

            // Add a Bulk Insert task.
            Executable eBulkInsert = pkg.Executables.Add("STOCK:BulkInsertTask");
            TaskHost thBulkInsert = eBulkInsert as TaskHost;

            // Add a precedence contraint between eFileTask1 and eFileTask2.
            // Set the constraint to be that eFileTask2 cannot run 
            // until eFileTask1 completes.
            PrecedenceConstraint pcFileTasks = pkg.PrecedenceConstraints.Add(eFileTask1, eFileTask2);
            pcFileTasks.Name = "constraint between File System Tasks";

            // Add another precedence contraint. Add it between eFileTask2 and BulkInsert.
            // Again, set the constraint to be that BulkInsert cannot run 
            // until eFileTask2 completes.
            PrecedenceConstraint pcFiletoBulk = pkg.PrecedenceConstraints.Add(eFileTask2, eBulkInsert);
            pcFileTasks.Name = "constraint between File System and Bulk Insert Tasks";

            // Obtain the precedence constraint collection.
            PrecedenceConstraints pConsts = pkg.PrecedenceConstraints;
            Boolean containsConstraint = pkg.PrecedenceConstraints.Contains("constraint between File System and Bulk Insert Tasks");
            Console.WriteLine("Contains the constraint between File System and Bulk Insert Tasks? {0}", containsConstraint);

            foreach (PrecedenceConstraint pc in pConsts)
            {
                Console.WriteLine("Constrained container  {0}", pc.ConstrainedExecutable);
                Console.WriteLine("Evaluation operation   {0}", pc.EvalOp);
                Console.WriteLine("Evaluates true         {0}", pc.EvaluatesTrue);
                Console.WriteLine("ID                     {0}", pc.ID);
                Console.WriteLine("LogicalAnd             {0}", pc.LogicalAnd);
                Console.WriteLine("Precedence Executable  {0}", pc.PrecedenceExecutable);
                Console.WriteLine("-----------------------------------");
            }

            // Set the EvalOp of the first constraint using the DtsPrecedenceEvalOp enumerator.
            PrecedenceConstraint firstPC = pConsts[0];
            firstPC.EvalOp = DTSPrecedenceEvalOp.Expression;
            Console.WriteLine("Evaluation operation after {0}", firstPC.EvalOp);
        }
    }
}
Imports System
Imports System.Collections.Generic
Imports System.Text
Imports Microsoft.SqlServer.Dts.Runtime
Imports Microsoft.SqlServer.Dts.Tasks.BulkInsertTask
Imports Microsoft.SqlServer.Dts.Tasks.FileSystemTask
 
Namespace PrecedenceConst
    Class Program
        Shared  Sub Main(ByVal args() As String)
            Dim pkg As Package =  New Package() 
            ' Add a File System task.
            Dim eFileTask1 As Executable =  pkg.Executables.Add("STOCK:FileSystemTask") 
            Dim thFileTask1 As TaskHost =  eFileTask1 as TaskHost 
 
            ' Add a second File System task.
            Dim eFileTask2 As Executable =  pkg.Executables.Add("STOCK:FileSystemTask") 
            Dim thFileTask2 As TaskHost =  eFileTask2 as TaskHost 
 
            ' Add a Bulk Insert task.
            Dim eBulkInsert As Executable =  pkg.Executables.Add("STOCK:BulkInsertTask") 
            Dim thBulkInsert As TaskHost =  eBulkInsert as TaskHost 
 
            ' Add a precedence contraint between eFileTask1 and eFileTask2.
            ' Set the constraint to be that eFileTask2 cannot run 
            ' until eFileTask1 completes.
            Dim pcFileTasks As PrecedenceConstraint =  pkg.PrecedenceConstraints.Add(eFileTask1,eFileTask2) 
            pcFileTasks.Name = "constraint between File System Tasks"
 
            ' Add another precedence contraint. Add it between eFileTask2 and BulkInsert.
            ' Again, set the constraint to be that BulkInsert cannot run 
            ' until eFileTask2 completes.
            Dim pcFiletoBulk As PrecedenceConstraint =  pkg.PrecedenceConstraints.Add(eFileTask2,eBulkInsert) 
            pcFileTasks.Name = "constraint between File System and Bulk Insert Tasks"
 
            ' Obtain the precedence constraint collection.
            Dim pConsts As PrecedenceConstraints =  pkg.PrecedenceConstraints 
            Dim containsConstraint As Boolean =  pkg.PrecedenceConstraints.Contains("constraint between File System and Bulk Insert Tasks") 
            Console.WriteLine("Contains the constraint between File System and Bulk Insert Tasks? {0}", containsConstraint)
 
            Dim pc As PrecedenceConstraint
            For Each pc In pConsts
                Console.WriteLine("Constrained container  {0}", pc.ConstrainedExecutable)
                Console.WriteLine("Evaluation operation   {0}", pc.EvalOp)
                Console.WriteLine("Evaluates true         {0}", pc.EvaluatesTrue)
                Console.WriteLine("ID                     {0}", pc.ID)
                Console.WriteLine("LogicalAnd             {0}", pc.LogicalAnd)
                Console.WriteLine("Precedence Executable  {0}", pc.PrecedenceExecutable)
                Console.WriteLine("-----------------------------------")
            Next
 
            ' Set the EvalOp of the first constraint using the DtsPrecedenceEvalOp enumerator.
            Dim firstPC As PrecedenceConstraint =  pConsts(0) 
            firstPC.EvalOp = DTSPrecedenceEvalOp.Expression
            Console.WriteLine("Evaluation operation after {0}", firstPC.EvalOp)
        End Sub
    End Class
End Namespace

Przykładowe dane wyjściowe:

Contains the constraint between File System and Bulk Insert Tasks? True

Constrained container Microsoft.SqlServer.Dts.Runtime.TaskHost

Evaluation operation Constraint

Evaluates true True

ID {0EDDD5B8-7135-4A73-B240-EDF54C0E66AC}

LogicalAnd True

Precedence Executable Microsoft.SqlServer.Dts.Runtime.TaskHost

-----------------------------------

Constrained container Microsoft.SqlServer.Dts.Runtime.TaskHost

Evaluation operation Constraint

Evaluates true True

ID {80584B94-A3D0-4E08-B9C1-8CCC7BD7D086}

LogicalAnd True

Precedence Executable Microsoft.SqlServer.Dts.Runtime.TaskHost

-----------------------------------

Evaluation operation after Expression