IDTSVirtualInput100 Interfaz
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Representa las columnas disponibles para un componente procedentes del componente de nivel superior.
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
- Atributos
- Implementaciones
Ejemplos
En el ejemplo de código siguiente se muestra cómo usar la entrada virtual para seleccionar las columnas usadas por un componente al compilar mediante programación la tarea de flujo de datos.
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
En el ejemplo de código siguiente se muestra un componente de flujo de datos personalizado que selecciona todas las columnas de DT_STR de la entrada virtual cuando la entrada está conectada a una ruta de acceso.
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
Comentarios
IDTSVirtualInput100 Se recupera mediante una llamada al GetVirtualInput método de un IDTSInput100 objeto . La VirtualInputColumnCollection propiedad contiene las columnas que están disponibles en los componentes ascendentes del gráfico.
Al compilar mediante programación una tarea de flujo de datos, las columnas virtuales se seleccionan para un componente mediante una llamada al SetUsageType método de CManagedComponentWrapperClass.
Los desarrolladores que escriben componentes de flujo de datos personalizados usan la entrada virtual para detectar las columnas ascendentes disponibles y, en función del componente, para agregar columnas a la entrada en función de las columnas de la colección virtual.
Dado que la entrada virtual es un reflejo de las columnas ascendentes, las modificaciones en la entrada virtual o las columnas de la colección de entrada virtual no tienen ningún impacto en el IDTSOutput100 mismo.
Propiedades
Description |
Obtiene o establece la descripción de un objeto IDTSVirtualInput100. |
ID |
Obtiene o establece el identificador de un objeto de entrada virtual. |
IdentificationString |
Obtiene una cadena que identifica de forma única el objeto IDTSVirtualInput100. |
IsSorted |
Obtiene un valor que indica si las columnas de entrada virtuales en IDTSVirtualInput100 están ordenadas. |
Name |
Obtiene o establece el nombre de una interfaz IDTSVirtualInput100. |
ObjectType |
Obtiene DTSObjectType de IDTSVirtualInput100. |
SourceLocale |
Obtiene el id. de configuración regional (LCID) del origen de IDTSVirtualInput100. |
VirtualInputColumnCollection |
Obtiene IDTSVirtualInputColumnCollection100 de IDTSVirtualInput100. |
Métodos
SetUsageType(Int32, DTSUsageType) |
Asigna un objeto de columna de entrada virtual y establece su tipo de uso. |