次の方法で共有


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  

注釈

このクラスから継承し、独自のデータ フロー コンポーネントを作成します。 このクラスは、必要なコンポーネント インターフェイスである IDTSDesigntimeComponent100 および IDTSRuntimeComponent100 を実装します。 独自のコンポーネント機能を提供するには、これらのメソッドの基本クラス実装をオーバーライドしてください。 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)

IDTSInput100IDTSInputCollection100 オブジェクトを追加します。

InsertOutput(DTSInsertPlacement, Int32)

新しい IDTSOutput100 オブジェクトを追加します。

InsertOutputColumnAt(Int32, Int32, String, String)

新しい IDTSOutputColumn100 オブジェクトを作成して、IDTSOutputColumnCollection100 に挿入します。

IsCompatibleNumericTypes(DataType, DataType)

2 つの数値データ型に、一方の型からもう一方の型への変換をサポートするための互換性があるかどうかを判断します。

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 をスローしないでください。これは、ランタイムが targetServerVersion によってこのメソッドを呼び出すかどうかを判断することしかできないためです。コンポーネントのバージョンは、コンポーネントのバージョンが 2 つの 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()

コンポーネントから、各 IDTSInput100 および IDTSOutput100 オブジェクトを削除します。

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()

コンポーネントが正しく構成されていることを確認します。

適用対象