Freigeben über


IDTSVirtualInput100 Schnittstelle

Definition

Stellt die Spalten dar, die einer Komponente aus der Upstreamkomponente zur Verfügung stehen.

public interface class IDTSVirtualInput100 : Microsoft::SqlServer::Dts::Pipeline::Wrapper::IDTSObject100
[System.Runtime.InteropServices.Guid("FECB6DEB-654E-43EE-B87D-35F88555172E")]
[System.Runtime.InteropServices.TypeLibType(System.Runtime.InteropServices.TypeLibTypeFlags.FDispatchable | System.Runtime.InteropServices.TypeLibTypeFlags.FDual)]
public interface IDTSVirtualInput100 : Microsoft.SqlServer.Dts.Pipeline.Wrapper.IDTSObject100
[System.Runtime.InteropServices.TypeLibType(System.Runtime.InteropServices.TypeLibTypeFlags.FDispatchable | System.Runtime.InteropServices.TypeLibTypeFlags.FDual)]
[System.Runtime.InteropServices.Guid("3D8056A8-CA41-48E4-A3C2-74542DF68634")]
public interface IDTSVirtualInput100 : Microsoft.SqlServer.Dts.Pipeline.Wrapper.IDTSObject100
[System.Runtime.InteropServices.TypeLibType(System.Runtime.InteropServices.TypeLibTypeFlags.FDispatchable | System.Runtime.InteropServices.TypeLibTypeFlags.FDual)]
[System.Runtime.InteropServices.Guid("937BE9E1-F78D-4582-92EC-355CCF399702")]
public interface IDTSVirtualInput100 : Microsoft.SqlServer.Dts.Pipeline.Wrapper.IDTSObject100
[<System.Runtime.InteropServices.Guid("FECB6DEB-654E-43EE-B87D-35F88555172E")>]
[<System.Runtime.InteropServices.TypeLibType(System.Runtime.InteropServices.TypeLibTypeFlags.FDispatchable | System.Runtime.InteropServices.TypeLibTypeFlags.FDual)>]
type IDTSVirtualInput100 = interface
    interface IDTSObject100
[<System.Runtime.InteropServices.TypeLibType(System.Runtime.InteropServices.TypeLibTypeFlags.FDispatchable | System.Runtime.InteropServices.TypeLibTypeFlags.FDual)>]
[<System.Runtime.InteropServices.Guid("3D8056A8-CA41-48E4-A3C2-74542DF68634")>]
type IDTSVirtualInput100 = interface
    interface IDTSObject100
[<System.Runtime.InteropServices.TypeLibType(System.Runtime.InteropServices.TypeLibTypeFlags.FDispatchable | System.Runtime.InteropServices.TypeLibTypeFlags.FDual)>]
[<System.Runtime.InteropServices.Guid("937BE9E1-F78D-4582-92EC-355CCF399702")>]
type IDTSVirtualInput100 = interface
    interface IDTSObject100
Public Interface IDTSVirtualInput100
Implements IDTSObject100
Attribute
Implementiert

Beispiele

Im folgenden Codebeispiel wird gezeigt, wie Die virtuelle Eingabe verwendet wird, um die spalten auszuwählen, die von einer Komponente beim programmgesteuerten Erstellen der Datenflussaufgabe verwendet werden.

public void SelectColumns(IDTSComponentMetaData100 md)  
{  
    // Create the design time instance of the component.  
    CManagedComponentWrapper wrp = md.Instantiate();  

    // Walk the input collection.  
    foreach (IDTSInput100 input in md.InputCollection)  
    {  
        // Get the virtual input columns.  
        IDTSVirtualInput100 vInput = input.GetVirtualInput();  

        // For each virtual column, set its usagetype to READONLY.  
        foreach (IDTSVirtualInputColumn100 vCol in vInput.VirtualInputColumnCollection)  
            wrp.SetUsageType(input.ID, vInput, vCol.LineageID, DTSUsageType.UT_READONLY);  
    }  
}  
Public Sub SelectColumns(ByVal md As IDTSComponentMetaData100)   
 Dim wrp As CManagedComponentWrapper = md.Instantiate   
 For Each input As IDTSInput100 In md.InputCollection   
   Dim vInput As IDTSVirtualInput100 = input.GetVirtualInput   
   For Each vCol As IDTSVirtualInputColumn100 In vInput.VirtualInputColumnCollection   
     wrp.SetUsageType(input.ID, vInput, vCol.LineageID, DTSUsageType.UT_READONLY)   
   Next   
 Next   
End Sub  

Das folgende Codebeispiel zeigt eine benutzerdefinierte Datenflusskomponente, die alle DT_STR Spalten aus der virtuellen Eingabe auswählt, wenn die Eingabe mit einem Pfad verbunden ist.

public override void OnInputPathAttached(int inputID)  
{  
    IDTSInput100 input = ComponentMetaData.InputCollection.GetObjectByID(inputID);  
    IDTSVirtualInput100 vInput = input.GetVirtualInput();  

    foreach (IDTSVirtualInputColumn100 vCol in vInput.VirtualInputColumnCollection)  
    {  
        if (vCol.DataType == DataType.DT_STR)  
        {  
            this.SetUsageType(inputID, vInput, vCol.LineageID, DTSUsageType.UT_READONLY);  
        }  
    }  
}  
Public Overrides Sub OnInputPathAttached(ByVal inputID As Integer)   
 Dim input As IDTSInput100 = ComponentMetaData.InputCollection.GetObjectByID(inputID)   
 Dim vInput As IDTSVirtualInput100 = input.GetVirtualInput   
 For Each vCol As IDTSVirtualInputColumn100 In vInput.VirtualInputColumnCollection   
   If vCol.DataType = DataType.DT_STR Then   
     Me.SetUsageType(inputID, vInput, vCol.LineageID, DTSUsageType.UT_READONLY)   
   End If   
 Next   
End Sub  

Hinweise

Die IDTSVirtualInput100 wird abgerufen, indem die GetVirtualInput Methode eines IDTSInput100 Objekts aufgerufen wird. Die VirtualInputColumnCollection Eigenschaft enthält die Spalten, die aus den vorgelagerten Komponenten im Diagramm verfügbar sind.

Beim programmgesteuerten Erstellen einer Datenflussaufgabe werden die virtuellen Spalten für eine Komponente ausgewählt, indem sie die SetUsageType Methode der CManagedComponentWrapperClass.

Entwickler, die benutzerdefinierte Datenflusskomponenten schreiben, verwenden die virtuelle Eingabe, um die verfügbaren Upstreamspalten zu ermitteln, und fügen Sie je nach Komponente Spalten zur Eingabe basierend auf den Spalten in der virtuellen Auflistung hinzu.

Da die virtuelle Eingabe eine Spiegelung der vorgelagerten Spalten ist, haben Änderungen an der virtuellen Eingabe oder die Spalten in der virtuellen Eingabesammlung keine Auswirkungen auf die IDTSOutput100 selbst.

Eigenschaften

Description

Ruft die Beschreibung eines IDTSVirtualInput100-Objekts ab oder legt sie fest.

ID

Ruft die ID eines virtuellen Eingabeobjekts ab oder legt sie fest.

IdentificationString

Ruft eine Zeichenfolge ab, durch die IDTSVirtualInput100 eindeutig identifiziert wird.

IsSorted

Ruft einen Wert ab, der angibt, ob die virtuellen Eingabespalten in IDTSVirtualInput100 sortiert sind.

Name

Ruft den Namen von IDTSVirtualInput100 ab oder legt ihn fest.

ObjectType

Ruft die DTSObjectType von IDTSVirtualInput100 ab.

SourceLocale

Ruft die Gebietsschema-ID (LCID) der Quelle von IDTSVirtualInput100 ab.

VirtualInputColumnCollection

Ruft die IDTSVirtualInputColumnCollection100 von IDTSVirtualInput100 ab.

Methoden

SetUsageType(Int32, DTSUsageType)

Ordnet ein virtuelles Eingabespaltenobjekt zu und legt seinen Verwendungstyp fest.

Gilt für: