DTSPrecedenceEvalOp 열거형
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
선행 제약 조건에서 사용하는 평가 작업을 나타냅니다.
public enum class DTSPrecedenceEvalOp
public enum DTSPrecedenceEvalOp
type DTSPrecedenceEvalOp =
Public Enum DTSPrecedenceEvalOp
- 상속
-
DTSPrecedenceEvalOp
필드
Constraint | 2 | 실행 결과에 따라 제약 조건이 지정된 컨테이너 또는 태스크의 실행 여부가 결정되도록 지정합니다. Value의 PrecedenceConstraint 속성을 DTSExecResult 열거형에서 원하는 값으로 설정합니다. |
Expression | 1 | 식의 값에 따라 제약 조건이 지정된 컨테이너 또는 태스크의 실행 여부가 결정되도록 지정합니다. Expression의 PrecedenceConstraint 속성을 설정합니다. |
ExpressionAndConstraint | 3 | 제약 조건 결과가 발생해야 하며 식에서 제약 조건이 지정된 컨테이너 또는 태스크의 실행을 평가해야 하도록 지정합니다. 의 Value 속성과 Expression 속성을 PrecedenceConstraint모두 설정하고 해당 LogicalAnd 속성을 true로 설정합니다. |
ExpressionOrConstraint | 4 | 제약 조건 결과가 발생해야 하거나 식에서 제약 조건이 지정된 컨테이너 또는 태스크의 실행을 평가해야 하도록 지정합니다. 의 Value 속성과 Expression 속성을 PrecedenceConstraint모두 설정하고 해당 LogicalAnd 속성을 false로 설정합니다. |
예제
다음 코드 예제에서는 세 개의 태스크를 만들고 둘 사이에 우선 순위 제약 조건을 배치합니다. 컬렉션을 사용하여 패키지의 PrecedenceConstraints 제약 조건을 반복하여 이 열거형의 값 중 하나를 포함하는 속성을 포함하여 EvalOp 각 제약 조건에 대한 정보를 표시합니다. 그런 다음 코드 예제에서는 이 열거형을 EvalOp 사용하는 값을 변경합니다.
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
샘플 출력:
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
설명
우선 순위 항목은 식 또는 실행 결과(완료, 성공 또는 실패)가 다음 작업 또는 컨테이너, 제한된 항목이 실행되는지 여부를 결정하는 태스크 또는 컨테이너입니다. 기본값은 Constraint입니다. 자세한 내용은 Precedence Constraints을(를) 참조하세요.