PipelineComponent.ProcessInput(Int32, PipelineBuffer) Méthode

Définition

Appelé à l’exécution lorsque un PipelineBuffer composant en amont est disponible pour le composant afin de permettre au composant de traiter les lignes entrantes.

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)

Paramètres

inputID
Int32

L’ID de l’entrée du composant.

Exemples

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  

Remarques

La ProcessInput méthode est appelée pour fournir au composant un objet complet PipelineBuffer contenant des lignes provenant du composant en amont. Les colonnes contenues dans le tampon incluent celles définies dans le IDTSInputColumnCollection100 de du composant. Si le composant possède des sorties synchrones, le tampon inclura également les colonnes ajoutées à la collection de colonnes de sortie par le composant, ainsi que toutes les colonnes de la collection de colonnes de sortie des composants en amont du composant. Les colonnes sont situées dans une ligne tampon en utilisant la FindColumnByLineageID méthode de la BufferManager.

ProcessInput sera appelée à plusieurs reprises lorsque la tâche de flux de données reçoit des tampons complets des composants en amont. La ProcessInput méthode est appelée jusqu’à ce que la EndOfRowset propriété soit true.

Le schéma correct pour utiliser la NextRow méthode et la EndOfRowset propriété est :

pendant que (buffer. NextRow())

{

Fais quelque chose à chaque rangée.

}

si (tampon. EndOfRowset)

{

En option, faites quelque chose après que toutes les lignes ont été traitées.

}

S’applique à