다음을 통해 공유


PipelineComponent 클래스

정의

관리되는 데이터 흐름 구성 요소를 개발할 때 사용되는 기본 클래스를 정의합니다.

public ref class PipelineComponent
public class PipelineComponent
type PipelineComponent = class
Public Class PipelineComponent
상속
PipelineComponent
파생

예제

다음 코드 예제에서는 클래스에서 PipelineComponent 구현 DtsPipelineComponentAttribute 하 고 상속 하는 구성 요소를 보여 줍니다.

using System;  
using Microsoft.SqlServer.Dts.Pipeline.Wrapper;  
namespace Microsoft.Samples.SqlServer.Dts  
{  
    [DtsPipelineComponent(DisplayName="SampleComponent")]  
    public class SampleComponent : PipelineComponent  
    {  
        public override ProvideComponentProperties()  
        {  
            // TODO: Implement component intialization.  
        }  
        public override DTSValidationStatus Validate()  
        {  
            // TODO: Implement component validation.  
        }  
        public override void ProcessInput( int inputID, PipelineBuffer buffer)  
        {  
            // TODO: For transformation and destination components,  
            //  implement code to process incoming rows.  
        }  
    }  
}  
Imports System   
Imports Microsoft.SqlServer.Dts.Pipeline.Wrapper   
Namespace Microsoft.Samples.SqlServer.Dts   

 <DtsPipelineComponent(DisplayName="SampleComponent")> _   
 Public Class SampleComponent   
 Inherits PipelineComponent   

   Public Overrides Sub ProvideComponentProperties()   
    ' TODO: Implement component intialization.  
   End Sub   

   Public Overrides Function Validate() As DTSValidationStatus   
    ' TODO: Implement component validation.  
   End Function   

   Public Overrides Sub ProcessInput(ByVal inputID As Integer, ByVal buffer As PipelineBuffer)   
    ' TODO: For transformation and destination components,  
    '  implement code to process incoming rows.  
   End Sub   
 End Class   
End Namespace  

설명

이 클래스에서 상속하여 사용자 고유의 데이터 흐름 구성 요소를 만듭니다. 이 클래스는 필요한 구성 요소 인터페이스 및 IDTSDesigntimeComponent100IDTSRuntimeComponent100. 이러한 메서드의 기본 클래스 구현을 재정의하여 구성 요소의 기능을 제공합니다. PipelineComponent 는 구성 요소 인터페이스의 메서드 외에도 도우미 메서드를 제공하여 구성 요소를 개발하는 데 도움을 줍니다.

생성자

PipelineComponent()

PipelineComponent 클래스의 새 인스턴스를 초기화합니다.

필드

s_STOCKPROPNAME_COMPFLAGS

데이터 흐름 구성 요소의 ComparisonFlags 속성 이름을 포함합니다.

s_STOCKPROPNAME_DELOUTPUTONPATHDETACHED

데이터 흐름 구성 요소의 DeleteOutputOnPathDetached 속성의 이름을 포함합니다.

s_STOCKPROPNAME_EXCLGROUP

데이터 흐름 구성 요소의 ExclusionGroup 속성 이름을 포함합니다.

s_STOCKPROPNAME_HASSIDEEFFECTS

데이터 흐름 구성 요소의 HasSideEffects 속성 이름을 포함합니다.

s_STOCKPROPNAME_ISDISTRIBUTABLE

데이터 흐름 구성 요소의 IsDistributable 속성 이름을 포함합니다.

s_STOCKPROPNAME_ISERROROUT

데이터 흐름 구성 요소의 IsErrorOut 속성 이름을 포함합니다.

s_STOCKPROPNAME_ISSORTED

데이터 흐름 구성 요소의 IsSorted 속성 이름을 포함합니다.

s_STOCKPROPNAME_REFMETADATAID

데이터 흐름 구성 요소의 ReferenceMetaDataID 속성 이름을 포함합니다.

s_STOCKPROPNAME_SORTKEYPOS

데이터 흐름 구성 요소의 SortKeyPosition 속성 이름을 포함합니다.

s_STOCKPROPNAME_SYNCINPUTID

데이터 흐름 구성 요소의 SynchronousInputID 속성 이름을 포함합니다.

속성

BufferManager

파이프라인 구성 요소의 IDTSBufferManager100을 가져옵니다.

ComponentMetaData

구성 요소에 대한 IDTSComponentMetaData100을 가져옵니다.

ErrorSupport

ErrorSupport 구성 요소가 네이티브 코드로 작성된 Integration Services 구성 요소에서 반환한 HRESULT를 기반으로 오류, 경고 또는 기타 정보 이벤트를 발생시키는 개체를 반환합니다.

EventInfos

IDTSEventInfos100 개체의 PipelineComponent 컬렉션을 가져옵니다.

LogEntryInfos

구성 요소에서 등록한 로깅 이벤트의 IDTSLogEntryInfos100 컬렉션을 가져옵니다.

ReferenceTracker

구성 요소와 연결된 IDTSObjectReferenceTracker100을 가져옵니다.

VariableDispenser

데이터 흐름 구성 요소의 IDTSVariableDispenser100을 가져옵니다.

메서드

AcquireConnections(Object)

연결 관리자에 대한 연결을 설정합니다.

AddErrorOutput(String, Int32, Int32)

개체를 IDTSOutput100 추가하고 속성을 true로 설정 IsErrorOut 하여 오류 출력으로 표시합니다.

BufferTypeToDataRecordType(DataType)

Integration Services 데이터 형식을 기반으로 관리되는 데이터 형식을 반환합니다.

Cleanup()

리소스를 해제하고 구성 요소 실행을 완료합니다.

ConvertBufferDataTypeToFitManaged(DataType, Boolean)

관리 코드에서 적절한 Integration Services를 DataType 가져옵니다.

DataRecordTypeToBufferType(Type)

관리되는 형식에 해당하는 Integration Services DataType 를 가져옵니다.

DeleteExternalMetadataColumn(Int32, Int32)

외부 메타데이터 열의 컬렉션에서 지정된 인덱스 위치에 있는 외부 메타데이터 열을 삭제합니다.

DeleteInput(Int32)

IDTSInput100 컬렉션에서 IDTSInputCollection100 개체를 삭제합니다.

DeleteOutput(Int32)

IDTSOutput100 컬렉션에서 IDTSOutputCollection100 개체를 삭제합니다.

DeleteOutputColumn(Int32, Int32)

IDTSOutputColumn100 컬렉션에서 IDTSOutputColumnCollection100 개체를 삭제합니다.

DescribeRedirectedErrorCode(Int32)

출력 버퍼에 추가된 PipelineBuffer 행에 대한 오류 코드 정보를 제공합니다.

GetDependentInputs(Int32)

추가 데이터를 기다리고 있으며 따라서 지정한 입력을 차단하고 있는 입력의 입력 ID로 구성된 컬렉션을 반환합니다.

GetErrorOutputInfo(Int32, Int32)

구성 요소 오류 출력의 인덱스 및 ID를 반환합니다.

idxOfBufferType(DataType)

버퍼 인덱스의 유형을 지정합니다.

idxOfDataRecordType(Type)

데이터 레코드 인덱스의 유형을 지정합니다.

Initialize()

파생 클래스에서 재정의되면 사용자 지정 데이터 흐름 구성 요소의 새 인스턴스를 초기화합니다.

InsertExternalMetadataColumnAt(Int32, Int32, String, String)

새 외부 메타데이터 열을 외부 메타데이터 열 컬렉션의 지정된 인덱스 위치에 삽입합니다.

InsertInput(DTSInsertPlacement, Int32)

IDTSInput100 개체를 IDTSInputCollection100에 추가합니다.

InsertOutput(DTSInsertPlacement, Int32)

IDTSOutput100 개체를 추가합니다.

InsertOutputColumnAt(Int32, Int32, String, String)

IDTSOutputColumn100 개체를 만들어 IDTSOutputColumnCollection100에 삽입합니다.

IsCompatibleNumericTypes(DataType, DataType)

두 숫자 데이터 형식이 호환되어 한 형식에서 다른 형식으로의 변환을 지원할 수 있는지 여부를 결정합니다.

IsInputReady(Int32[], Boolean[])

구성 요소에 연결된 입력 중 추가 데이터를 기다리고 있으며 처리하기에 충분한 데이터가 있고 차단되어 있는 입력을 확인합니다.

MapInputColumn(Int32, Int32, Int32)

입력 열과 해당 외부 메타데이터 열 사이의 관계를 설정합니다.

MapOutputColumn(Int32, Int32, Int32, Boolean)

출력 열과 해당 외부 메타데이터 열 사이의 관계를 설정합니다.

OnDeletingInputColumn(Int32, Int32)

IDTSInputColumn100에서 IDTSInputColumnCollection100 개체를 삭제합니다.

OnInputPathAttached(Int32)

IDTSInput100 인터페이스를 통해 IDTSPath100 개체가 구성 요소에 연결될 때 호출됩니다.

OnInputPathDetached(Int32)

IDTSInput100 인터페이스를 통해 구성 요소에서 IDTSPath100 개체의 연결이 끊어질 때 호출됩니다.

OnOutputPathAttached(Int32)

구성 요소의 IDTSOutput100 개체가 다운스트림 구성 요소에 연결될 때 호출됩니다.

PerformDowngrade(Int32, DTSTargetServerVersion)

기본적으로 PerformDowngrade는 ComponentDowngradeFailedException을 throw해서는 안 됩니다. 런타임은 targetServerVersion을 통해서만 이 메서드를 호출할지 여부를 결정할 수 있기 때문입니다. 구성 요소 버전이 두 SSIS 버전 간에 변경되었는지 여부를 알 수 없으므로 구성 요소 버전을 확인할 수 없습니다. 반면, 메서드 PerformUpgrade는 패키지 xml의 구성 요소 버전이 호출되기 전에 현재 구성 요소 버전보다 작은지 확인합니다.

PerformUpgrade(Int32)

구성 요소 메타데이터를 로컬 컴퓨터에 설치된 구성 요소 버전으로 업그레이드합니다.

PostExecute()

구성 요소 실행 끝과 Cleanup() 사이에서 호출됩니다.

PreExecute()

PrepareForExecute() 이후와 PrimeOutput(Int32, Int32[], PipelineBuffer[])ProcessInput(Int32, PipelineBuffer) 이전에 호출됩니다.

PrepareForExecute()

PreExecute() 이전에서 호출됩니다.

PrimeOutput(Int32, Int32[], PipelineBuffer[])

비동기 출력을 포함하는 원본 구성 요소 및 변환 구성 요소에서 출력 버퍼에 행을 추가할 수 있도록 이러한 구성 요소에 대해 런타임에 호출됩니다.

ProcessInput(Int32, PipelineBuffer)

업스트림 구성 요소의 PipelineBuffer가 구성 요소에서 들어오는 행을 처리할 수 있도록 사용 가능할 때 런타임에 호출됩니다.

ProvideComponentProperties()

구성 요소의 ComponentMetaData를 초기화하기 위해 구성 요소가 먼저 데이터 흐름 태스크에 추가될 때 호출됩니다.

RegisterEvents()

사용자 지정 데이터 흐름 구성 요소를 개발할 때 이 메서드를 재정의하여 사용자 지정 이벤트를 만듭니다.

RegisterLogEntries()

구성 요소가 로깅할 이벤트를 등록합니다.

ReinitializeMetaData()

구성 요소에서 디자인 타임에 VS_NEEDSNEWMETADATA를 반환하는 유효성 검사 중 식별된 오류를 복구합니다.

ReleaseConnections()

AcquireConnections(Object)를 실행하는 동안 설정된 연결을 해제합니다. 디자인 타임과 런타임에 호출됩니다.

RemoveAllInputsOutputsAndCustomProperties()

구성 요소에서 각 IDTSInput100IDTSOutput100 개체를 삭제합니다.

SetComponentProperty(String, Object)

구성 요소의 IDTSCustomProperty100에 값을 할당합니다.

SetExternalMetadataColumnDataTypeProperties(Int32, Int32, DataType, Int32, Int32, Int32, Int32)

지정된 외부 메타데이터 열의 데이터 형식 속성을 설정합니다.

SetExternalMetadataColumnProperty(Int32, Int32, String, Object)

외부 메타데이터 열의 개별 속성을 설정합니다.

SetInputColumnProperty(Int32, Int32, String, Object)

IDTSCustomProperty100 개체의 IDTSInputColumn100에 값을 할당합니다.

SetInputProperty(Int32, String, Object)

IDTSCustomProperty100 개체의 IDTSInput100에 값을 할당합니다.

SetOutputColumnDataTypeProperties(Int32, Int32, DataType, Int32, Int32, Int32, Int32)

IDTSOutputColumn100 개체의 데이터 형식 속성을 설정합니다.

SetOutputColumnProperty(Int32, Int32, String, Object)

IDTSCustomProperty100 개체에 대한 IDTSOutputColumn100의 값을 설정합니다.

SetOutputProperty(Int32, String, Object)

IDTSCustomProperty100 개체에 대한 IDTSOutput100의 값을 설정합니다.

SetUsageType(Int32, IDTSVirtualInput100, Int32, DTSUsageType)

구성 요소의 IDTSInputColumn100IDTSInputColumnCollection100 개체를 만들고 해당 열의 UsageType 속성을 설정합니다.

Validate()

구성 요소가 제대로 구성되었는지 확인합니다.

적용 대상