PipelineComponent.ProcessInput(Int32, PipelineBuffer) Methode

Definition

Wird zur Laufzeit aufgerufen, wenn eine PipelineBuffer von einer Upstream-Komponente für die Komponente verfügbar ist, damit die Komponente die eingehenden Zeilen verarbeiten kann.

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)

Parameter

inputID
Int32

Die ID des Eingangs der Komponente.

buffer
PipelineBuffer

Das PipelineBuffer-Objekt.

Beispiele

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  

Hinweise

Die Methode ProcessInput wird aufgerufen, um der Komponente ein vollständiges PipelineBuffer Objekt bereitzustellen, das Zeilen aus der vorgelagerten Komponente enthält. Die im Puffer enthaltenen Spalten umfassen jene, die in der der IDTSInputColumnCollection100 Komponente definiert sind. Wenn die Komponente synchrone Ausgaben hat, enthält der Puffer auch die Spalten, die von der Komponente zur Output-Spaltensammlung hinzugefügt wurden, sowie alle Spalten in der Ausgabespaltensammlung der Komponenten stromaufwärts von der Komponente. Spalten befinden sich in einer Pufferzeile mit der FindColumnByLineageID Methode der BufferManager.

ProcessInput wiederholt aufgerufen werden, während die Datenflussaufgabe volle Puffer von den Upstream-Komponenten erhält. Die Methode ProcessInput wird aufgerufen, bis die Eigenschaft EndOfRowset lautet true.

Das korrekte Muster für die Verwendung der Methode NextRow und der Eigenschaft EndOfRowset ist:

während (Puffer. NextRow())

{

Mach mit jeder Reihe etwas.

}

wenn (Puffer. EndOfRowset)

{

Optional kann man etwas tun, nachdem alle Reihen bearbeitet wurden.

}

Gilt für: