PipelineComponent.ProcessInput Method

上流コンポーネントからの PipelineBuffer がコンポーネントで利用可能な場合、実行時に呼び出され、コンポーネントが受信行を処理できるようにします。

名前空間: Microsoft.SqlServer.Dts.Pipeline
アセンブリ: Microsoft.SqlServer.PipelineHost (microsoft.sqlserver.pipelinehost.dll 内)

構文

'宣言
Public Overridable Sub ProcessInput ( _
    inputID As Integer, _
    buffer As PipelineBuffer _
)
public virtual void ProcessInput (
    int inputID,
    PipelineBuffer buffer
)
public:
virtual void ProcessInput (
    int inputID, 
    PipelineBuffer^ buffer
)
public void ProcessInput (
    int inputID, 
    PipelineBuffer buffer
)
public function ProcessInput (
    inputID : int, 
    buffer : PipelineBuffer
)

パラメータ

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

解説

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

ProcessInput は、データ フロー タスクが上流コンポーネントから受け取るバッファがいっぱいになるたびに、繰り返し呼び出されます。EndOfRowset プロパティが true の場合、ProcessInput メソッドの最後の呼び出しが確認されます。

使用例

public override void ProcessInput( int inputID, PipelineBuffer buffer )
{
    if( !buffer.EndOfRowset)
    {
        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) 
 If Not buffer.EndOfRowset Then 
   While buffer.NextRow 
    ' TODO: Read or write data to the columns in the buffer.
   End While 
 End If 
End Sub

スレッド セーフ

この型の public static (Microsoft Visual Basic では共有 ) メンバは、スレッド セーフです。インスタンス メンバの場合は、スレッド セーフであるとは限りません。

プラットフォーム

開発プラットフォーム

サポートされているプラットフォームの一覧については、「SQL Server 2005 のインストールに必要なハードウェアおよびソフトウェア」を参照してください。

対象プラットフォーム

サポートされているプラットフォームの一覧については、「SQL Server 2005 のインストールに必要なハードウェアおよびソフトウェア」を参照してください。

参照

関連項目

PipelineComponent Class
PipelineComponent Members
Microsoft.SqlServer.Dts.Pipeline Namespace