Поделиться через


IDTSVirtualInput100 Интерфейс

Определение

Представляет столбцы, доступные компоненту из вышестоящего компонента.

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
Атрибуты
Реализации

Примеры

В следующем примере кода показано, как использовать виртуальные входные данные для выбора столбцов, используемых компонентом при программном построении задачи потока данных.

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  

В следующем примере кода показан пользовательский компонент потока данных, который выбирает все столбцы DT_STR из виртуального ввода при подключении входных данных к пути.

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  

Комментарии

Извлекается IDTSVirtualInput100 путем вызова GetVirtualInput метода IDTSInput100 объекта. Свойство VirtualInputColumnCollection содержит столбцы, доступные из вышестоящих компонентов графа.

При программном построении задачи потока данных виртуальные столбцы выбираются для компонента путем вызова SetUsageType метода CManagedComponentWrapperClass.

Разработчики, которые пишут пользовательские компоненты потока данных, используют виртуальные входные данные для обнаружения доступных вышестоящих столбцов и, в зависимости от компонента, для добавления столбцов во входные данные на основе столбцов в виртуальной коллекции.

Так как виртуальные входные данные являются отражением вышестоящих столбцов, изменения виртуальных входных данных или столбцов в виртуальной коллекции входных данных не оказывают никакого IDTSOutput100 влияния на саму себя.

Свойства

Description

Возвращает или задает описание объекта IDTSVirtualInput100.

ID

Возвращает или задает идентификатор виртуального входного объекта.

IdentificationString

Возвращает строку, которая уникальным образом идентифицирует объект IDTSVirtualInput100.

IsSorted

Возвращает значение, показывающее, отсортированы ли виртуальные входные столбцы в объекте IDTSVirtualInput100.

Name

Возвращает или задает имя объекта IDTSVirtualInput100.

ObjectType

Возвращает тип DTSObjectType объекта IDTSVirtualInput100.

SourceLocale

Возвращает код локали (LCID) источника объекта IDTSVirtualInput100.

VirtualInputColumnCollection

Возвращает тип IDTSVirtualInputColumnCollection100 объекта IDTSVirtualInput100.

Методы

SetUsageType(Int32, DTSUsageType)

Сопоставляет объект виртуального входного столбца и задает тип его использования.

Применяется к