Share via


PipelineComponent.ProcessInput Method

Called at run time when a PipelineBuffer from an upstream component is available to the component to let the component process the incoming rows.

Namespace: Microsoft.SqlServer.Dts.Pipeline
Assembly: Microsoft.SqlServer.PipelineHost (in microsoft.sqlserver.pipelinehost.dll)

Syntax

'Declaration
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
)

Parameters

  • inputID
    The ID of the input of the component.

Remarks

The ProcessInput method is called to provide the component a full PipelineBuffer object that contains rows from the upstream component. The columns contained in buffer include those columns defined in the IDTSInputColumnCollection90 of the component. If the component has synchronous outputs, the buffer will also include the columns added to the output column collection by the component, and all the columns in the output column collection of the components upstream from the component. Columns are located in a buffer row using the FindColumnByLineageID method of the BufferManager.

ProcessInput will be called repeatedly as the data flow task receives full buffers from the upstream components. The final call to ProcessInput is confirmed when the EndOfRowset property is true.

Example

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

Thread Safety

Any public static (Shared in Microsoft Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

For a list of the supported platforms, see Hardware and Software Requirements for Installing SQL Server 2005.

Target Platforms

For a list of the supported platforms, see Hardware and Software Requirements for Installing SQL Server 2005.

See Also

Reference

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