Bagikan melalui


PipelineBuffer.DirectRow(Int32) Metode

Definisi

Mengirim baris dari PipelineBuffer ke yang ditentukan IDTSOutput100.

public:
 void DirectRow(int outputID);
public void DirectRow (int outputID);
member this.DirectRow : int -> unit
Public Sub DirectRow (outputID As Integer)

Parameter

outputID
Int32

ID tempat IDTSOutput100PipelineBuffer baris dikirim.

Contoh

Contoh berikut menunjukkan komponen yang berisi dua output dalam grup pengecualian yang sama. Selama ProcessInput baris dikirim ke satu atau yang lain dari output dengan menggunakan DirectRow metode .

public override void ProvideComponentProperties()  
{  
    IDTSInput100 input = ComponentMetaData.InputCollection.New();  
    Input.Name = "DTSSampleInput";  

    IDTSOutput output = ComponentMetaData.OutputCollection.New();  
    output.ExclusionGroup = 1;  
    output.Name = "Output1";  
    output.SynchronousInputID = input.ID;  

    IDTSOutput output = ComponentMetaData.OutputCollection.New();  
    output.ExclusionGroup = 1;  
    output.Name = "Output2";  
    output.SynchronousInputID = input.ID;  
}  
public override void ProcessInput(int inputID, PipelineBuffer buffer)  
{  
    IDTSInput100 input = ComponentMetaData.InputCollection.GetObjectByID(inputID);  

    IDTSOutput100 output1 = ComponentMetaData.OutputCollection[0];  
    IDTSOutput100 output2 = ComponentMetaData.OutputCollection[1];  

    while( buffer.NextRow())  
    {  
        // TODO: Insert if/then block here.  
        // If criteria is met, direct the buffer row to output1.  
        buffer.DirectRow(output1.ID);  
        // Otherwise, direct the row to output2.  
         buffer.DirectRow(output2.ID);  
    }  
}  
Public Overrides Sub ProvideComponentProperties()   
 Dim input As IDTSInput100 = ComponentMetaData.InputCollection.New   
 Input.Name = "DTSSampleInput"   
 Dim output As IDTSOutput = ComponentMetaData.OutputCollection.New   
 output.ExclusionGroup = 1   
 output.Name = "Output1"   
 output.SynchronousInputID = input.ID   
 Dim output As IDTSOutput = ComponentMetaData.OutputCollection.New   
 output.ExclusionGroup = 1   
 output.Name = "Output2"   
 output.SynchronousInputID = input.ID   
End Sub   

Public  Overrides Sub ProcessInput(ByVal inputID As Integer, ByVal buffer As PipelineBuffer)   
 Dim input As IDTSInput100 = ComponentMetaData.InputCollection.GetObjectByID(inputID)   
 Dim output1 As IDTSOutput100 = ComponentMetaData.OutputCollection(0)   
 Dim output2 As IDTSOutput100 = ComponentMetaData.OutputCollection(1)   
While buffer.NextRow   
  ' TODO: Insert if/then block here.  
  ' If criteria is met, direct the buffer row to output1.  
   buffer.DirectRow(output1.ID)   
  ' Otherwise, direct the row to output2.  
   buffer.DirectRow(output2.ID)   
 End While   
End Sub  

Keterangan

Metode DirectRow ini dipanggil oleh komponen yang berisi beberapa output dalam yang sama ExclusionGroup. Ini digunakan untuk mengarahkan PipelineBuffer baris ke output yang ditentukan—output tertentu dalam komponen. Metode ini dapat digunakan untuk output kesalahan dan non-kesalahan, namun, DirectErrorRow metode harus digunakan untuk mengirim baris ke output kesalahan.

Jika komponen yang memiliki dua output sinkron dalam grup pengecualian yang sama memajukan buffer ke baris berikutnya menggunakan NextRow metode tanpa mengarahkan baris ke output tertentu, baris dikirim ke kedua output.

Berlaku untuk