IDTSSequence.PrecedenceConstraints 속성
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
컨테이너와 연결된 PrecedenceConstraint 개체 컬렉션을 반환합니다. 이 필드는 읽기 전용입니다.
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
속성 값
PrecedenceConstraints 컨테이너에 대한 개체를 PrecedenceConstraint 포함하는 컬렉션입니다.
예제
클래스는 PackageIDTSSequence 컬렉션을 상속하고 구현합니다. PrecedenceConstraints 다음 코드 샘플에서는 패키지에 두 개의 작업을 추가하는 방법을 보여 줍니다. A PrecedenceConstraint 가 컬렉션에 추가됩니다 PrecedenceConstraints . 태스크 간에 생성된 제약 조건으로 인해 첫 번째 작업이 완료될 때까지 두 번째 작업이 실행되지 않습니다.
using System;
using System.Collections.Generic;
using System.Text;
using Microsoft.SqlServer.Dts.Runtime;
using Microsoft.SqlServer.Dts.Pipeline.Wrapper;
using Microsoft.SqlServer.Dts.Tasks.FileSystemTask;
namespace DataFlow_Conceptual
{
class Program
{
static void Main(string[] args)
{
Package p = new Package();
// Add a File System task.
Executable eFileTask1 = p.Executables.Add("STOCK:FileSystemTask");
TaskHost thFileHost1 = eFileTask1 as TaskHost;
// Add a second File System task.
Executable eFileTask2 = p.Executables.Add("STOCK:FileSystemTask");
TaskHost thFileHost2 = eFileTask2 as TaskHost;
// Put a precedence constraint between the tasks.
// Set the constraint to be that thFileTask2 cannot run
// until thFileTask1 completes.
PrecedenceConstraint pcFileTasks = p.PrecedenceConstraints.Add((Executable)thFileHost1, (Executable) thFileHost2);
pcFileTasks.Value = DTSExecResult.Completion;
}
}
}
Imports System
Imports System.Collections.Generic
Imports System.Text
Imports Microsoft.SqlServer.Dts.Runtime
Imports Microsoft.SqlServer.Dts.Pipeline.Wrapper
Imports Microsoft.SqlServer.Dts.Tasks.FileSystemTask
Namespace DataFlow_Conceptual
Class Program
Shared Sub Main(ByVal args() As String)
Dim p As Package = New Package()
' Add a File System task.
Dim eFileTask1 As Executable = p.Executables.Add("STOCK:FileSystemTask")
Dim thFileHost1 As TaskHost = eFileTask1 as TaskHost
' Add a second File System task.
Dim eFileTask2 As Executable = p.Executables.Add("STOCK:FileSystemTask")
Dim thFileHost2 As TaskHost = eFileTask2 as TaskHost
' Put a precedence constraint between the tasks.
' Set the constraint to be that thFileTask2 cannot run
' until thFileTask1 completes.
Dim pcFileTasks As PrecedenceConstraint = p.PrecedenceConstraints.Add(CType(thFileHost1,CType(thFileHost2, Executable, Executable)))
pcFileTasks.Value = DTSExecResult.Completion
End Sub
End Class
End Namespace
설명
선행 제약 조건은 실행 개체가 패키지에서 실행되는 순서를 설정합니다. 선행 제약 조건을 사용하면 패키지의 컨테이너 및 태스크를 이전 태스크 또는 컨테이너 실행의 결과에 따라 제어할 수 있습니다. 선행 제약 조건은 컨테이너 개체에서 컬렉션의 PrecedenceConstraints 메서드를 Add 호출하여 두 Executable 개체 간에 설정됩니다. 두 실행 개체 Value 간에 제약 조건을 만든 후 이 속성은 제약 조건에 정의된 두 번째 실행 파일을 실행하기 위한 조건을 설정하도록 설정됩니다.