PipelineComponent.ProcessInput(Int32, PipelineBuffer) メソッド

定義

上流コンポーネントからの PipelineBuffer が利用可能な実行時に呼び出され、そのコンポーネントが着信行を処理するために使われます。

public:
 virtual void ProcessInput(int inputID, Microsoft::SqlServer::Dts::Pipeline::PipelineBuffer ^ buffer);
public virtual void ProcessInput(int inputID, Microsoft.SqlServer.Dts.Pipeline.PipelineBuffer buffer);
abstract member ProcessInput : int * Microsoft.SqlServer.Dts.Pipeline.PipelineBuffer -> unit
override this.ProcessInput : int * Microsoft.SqlServer.Dts.Pipeline.PipelineBuffer -> unit
Public Overridable Sub ProcessInput (inputID As Integer, buffer As PipelineBuffer)

パラメーター

inputID
Int32

コンポーネントの入力IDです。

buffer
PipelineBuffer

PipelineBuffer オブジェクトです。

public override void ProcessInput( int inputID, PipelineBuffer buffer )  
{  
    while( buffer.NextRow() )  
    {  
        // TODO: Read or write data to the columns in the buffer.  
    }  
}  
Public Overrides Sub ProcessInput(ByVal inputID As Integer, ByVal buffer As PipelineBuffer)   
 While buffer.NextRow   
  ' TODO: Read or write data to the columns in the buffer.  
 End While   
End Sub  

注釈

ProcessInputメソッドは、上流コンポーネントの行を含む完全なPipelineBufferオブジェクトを提供するために呼び出されます。 バッファに含まれる列には、コンポーネントの IDTSInputColumnCollection100 で定義された列が含まれます。 コンポーネントに同期出力がある場合、バッファにはコンポーネントが出力カラムコレクションに追加した列や、そのコンポーネントの上流にある出力カラムコレクション内のすべてのカラムも含まれます。 カラムはBufferManagerFindColumnByLineageID法を用いてバッファ行に配置されます。

ProcessInput データフロータスクが上流コンポーネントから完全なバッファを受け取るたびに繰り返し呼び出されます。 ProcessInputメソッドはEndOfRowsetプロパティがtrueされるまで呼び出されます。

NextRow法とEndOfRowset性質を正しく使用するパターンは以下の通りです:

ただし(バッファ。NextRow())

{

各段に何かしらのことをしてください。

}

もし(バッファ。RowSet終了)

{

オプションとして、すべての行が処理された後に何かを行うこともあります。

}

適用対象