PipelineComponent 클래스

정의

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

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

예제

다음 코드 예시는 DtsPipelineComponentAttribute 와 를 구현하는 컴포넌트를 보여줍니다.PipelineComponent

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 구성 요소 인터페이스 방법뿐만 아니라 보조 방법도 제공하여 구성 요소 개발에 도움을 줍니다.

생성자

Name Description
PipelineComponent()

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

필드

Name Description
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 속성 이름을 포함하고 있습니다.

속성

Name Description
BufferManager

파이프라인 구성 요소를 얻 IDTSBufferManager100 습니다.

ComponentMetaData

컴포넌트에 대해 얻 IDTSComponentMetaData100 습니다.

ErrorSupport

통합 서비스 컴포넌트가 네이티브 코드로 작성한 HRESULT를 기반으로 오류, 경고 또는 기타 정보 이벤트를 생성할 수 있는 객체를 ErrorSupport 반환합니다.

EventInfos

객체 수집 PipelineComponentIDTSEventInfos100 받아.

LogEntryInfos

컴포넌트가 등록한 로그 이벤트 모음을 IDTSLogEntryInfos100 받습니다.

ReferenceTracker

부품과 연관된 것을 IDTSObjectReferenceTracker100 얻습니다.

VariableDispenser

데이터 흐름 구성 요소의 를 IDTSVariableDispenser100 얻습니다.

메서드

Name Description
AcquireConnections(Object)

연결 관리자와의 연결을 설정합니다.

AddErrorOutput(String, Int32, Int32)

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

BufferTypeToDataRecordType(DataType)

통합 서비스 데이터 타입을 기반으로 한 관리 데이터 타입을 반환합니다.

Cleanup()

리소스를 해제하고 컴포넌트 실행을 완료합니다.

ConvertBufferDataTypeToFitManaged(DataType, Boolean)

관리형 코드에서 적절한 통합 서비스를 DataType 받아야 합니다.

DataRecordTypeToBufferType(Type)

관리형 타입에 해당하는 통합 서비스를 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)

인터페이스를 통해 IDTSPath100 객체가 IDTSInput100 컴포넌트에서 분리될 때 호출됩니다.

OnOutputPathAttached(Int32)

컴포넌트의 객체가 IDTSOutput100 하위 컴포넌트에 부착될 때 호출됩니다.

PerformDowngrade(Int32, DTSTargetServerVersion)

기본적으로 PerformDowngrade는 ComponentDowngradeFailedException을 던지지 않아야 하는데, 런타임은 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)

런타임에 상위 컴포넌트에서 a PipelineBuffer 가 컴포넌트에 접근 가능할 때 호출하여 컴포넌트가 들어오는 행을 처리할 수 있도록 합니다.

ProvideComponentProperties()

컴포넌트가 데이터 플로우 태스크에 처음 추가될 때 호출되어 컴포넌트의 초 ComponentMetaData 기화를 수행합니다.

RegisterEvents()

커스텀 데이터 플로우 컴포넌트를 개발할 때는 이 메서드를 오버라이드하여 커스텀 이벤트를 생성합니다.

RegisterLogEntries()

컴포넌트가 기록할 이벤트를 등록합니다.

ReinitializeMetaData()

검증 과정에서 발견되어 설계 시점에 부품이 반환 VS_NEEDSNEWMETADATA 되는 오류를 수리합니다.

ReleaseConnections()

. 동안 생성된 AcquireConnections(Object)연결을 해제합니다. 설계 시점과 실행 시점에 호출되었습니다.

RemoveAllInputsOutputsAndCustomProperties()

IDTSInput100 객체와 IDTSOutput100 객체를 컴포넌트에서 삭제합니다.

SetComponentProperty(String, Object)

컴포넌트의 a 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)

객체에 대한 IDTSOutput100 값 a IDTSCustomProperty100 를 설정합니다.

SetUsageType(Int32, IDTSVirtualInput100, Int32, DTSUsageType)

컴포넌트의 객체를 생성 IDTSInputColumn100 하고 열의 속성을 설정합니다IDTSInputColumnCollection100.UsageType

Validate()

구성 요소가 올바르게 구성되었는지 확인합니다.

적용 대상