次の方法で共有


IDTSOutput100.ExclusionGroup プロパティ

定義

ExclusionGroup オブジェクトの IDTSOutput100 プロパティを取得します。値の設定も可能です。

public:
 property int ExclusionGroup { int get(); void set(int value); };
[System.Runtime.InteropServices.DispId(101)]
public int ExclusionGroup { [System.Runtime.InteropServices.DispId(101)] get; [System.Runtime.InteropServices.DispId(101)] set; }
[<System.Runtime.InteropServices.DispId(101)>]
[<get: System.Runtime.InteropServices.DispId(101)>]
[<set: System.Runtime.InteropServices.DispId(101)>]
member this.ExclusionGroup : int with get, set
Public Property ExclusionGroup As Integer

プロパティ値

ExclusionGroup オブジェクトの IDTSOutput100 です。

属性

次のコード例では、データ フロー コンポーネントに同じ除外グループ内の 2 つの出力および同一の同期入力がある場合の、ExclusionGroup プロパティの使用法を示しています。

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())  
    {  
        // 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   
   buffer.DirectRow(output1.ID)   
   buffer.DirectRow(output2.ID)   
 End While   
End Sub  

注釈

ExclusionGroup プロパティは、2 つの出力が同じ IDTSInput100 オブジェクトに同期され、行を各出力に排他的に送信する場合に設定されます。 両方の出力の SynchronousInputID プロパティと ExclusionGroup プロパティは同じ値である必要があります。 除外グループを使用する場合は、このプロパティを 0 以外の値に設定する必要があります。それ以外の場合は、既定値の 0 のままにしておきます。

同じ同期入力および 0 以外の同じ除外グループが設定された複数の出力を持つデータ フロー コンポーネントは、実行中に、PipelineBuffer メソッド (DirectRow プロパティが true の場合は IsErrorOut メソッド) を使用して、入力 DirectErrorRow から出力の 1 つに行を送信します。

適用対象