IDTSVirtualInput100 Interfaccia
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
public interface class IDTSVirtualInput100 : Microsoft::SqlServer::Dts::Pipeline::Wrapper::Sql2012::IDTSObject100
[System.Runtime.InteropServices.Guid("9944F684-49C4-4354-AB7F-EE422A650E0E")]
[System.Runtime.InteropServices.TypeLibType(System.Runtime.InteropServices.TypeLibTypeFlags.FDispatchable | System.Runtime.InteropServices.TypeLibTypeFlags.FDual)]
public interface IDTSVirtualInput100 : Microsoft.SqlServer.Dts.Pipeline.Wrapper.Sql2012.IDTSObject100
[<System.Runtime.InteropServices.Guid("9944F684-49C4-4354-AB7F-EE422A650E0E")>]
[<System.Runtime.InteropServices.TypeLibType(System.Runtime.InteropServices.TypeLibTypeFlags.FDispatchable | System.Runtime.InteropServices.TypeLibTypeFlags.FDual)>]
type IDTSVirtualInput100 = interface
interface IDTSObject100
Public Interface IDTSVirtualInput100
Implements IDTSObject100
- Attributi
- Implementazioni
Esempio
Nell'esempio di codice riportato di seguito viene illustrato come utilizzare l'input virtuale per selezionare le colonne utilizzate da un componente quando si compila l'attività flusso di dati a livello di codice.
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
Nell'esempio di codice seguente viene illustrato un componente flusso di dati personalizzato che seleziona tutte le colonne DT_STR dall'input virtuale quando l'input è connesso a un percorso.
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
Commenti
IDTSVirtualInput100Viene recuperato chiamando il GetVirtualInput metodo di un IDTSInput100 oggetto. La VirtualInputColumnCollection proprietà contiene le colonne disponibili dai componenti a Monte nel grafico.
Quando si compila un'attività flusso di dati a livello di codice, le colonne virtuali vengono selezionate per un componente chiamando il SetUsageType metodo dell'oggetto CManagedComponentWrapperClass .
Gli sviluppatori che scrivono componenti del flusso di dati personalizzati utilizzano l'input virtuale per individuare le colonne upstream disponibili e, a seconda del componente, per aggiungere colonne all'input in base alle colonne della raccolta virtuale.
Poiché l'input virtuale è un riflesso di colonne upstream, le modifiche apportate all'input virtuale o alle colonne nella raccolta di input virtuali non hanno alcun effetto sull'oggetto IDTSOutput100 stesso.
Proprietà
| Description | |
| ID | |
| IdentificationString | |
| IsSorted | |
| Name | |
| ObjectType | |
| SourceLocale | |
| VirtualInputColumnCollection |
Metodi
| SetUsageType(Int32, DTSUsageType) |