IDTSBufferManager100.FindColumnByLineageID(Int32, Int32) Metodo
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.
Ottiene la posizione, tramite indice, di una colonna in un oggetto specificato IDTSBuffer100 .
public:
int FindColumnByLineageID(int hBufferType, int nLineageID);
[System.Runtime.InteropServices.DispId(121)]
public int FindColumnByLineageID(int hBufferType, int nLineageID);
[<System.Runtime.InteropServices.DispId(121)>]
abstract member FindColumnByLineageID : int * int -> int
Public Function FindColumnByLineageID (hBufferType As Integer, nLineageID As Integer) As Integer
Parametri
- hBufferType
- Int32
L'ID dell'oggetto IDTSBuffer100 che contiene la colonna.
- nLineageID
- Int32
L'ID della linea di discendenza della colonna da localizzare nel IDTSBuffer100.
Valori restituiti
Un intero che indica la posizione, tramite indice, della colonna nel IDTSBuffer100.
- Attributi
Esempio
Il seguente esempio di codice mostra come un componente di trasformazione che non ha colonne di output utilizza il FindColumnByLineageID per localizzare le sue colonne di input nel buffer.
int[] bufferColumnIndex;
public override void PreExecute()
{
IDTSInput100 input = ComponentMetaData.InputCollection[0];
bufferColumnIndex = new int[BufferManager.GetColumnCount(input.Buffer)];
for( int col=0; col < input.InputColumnCollection.Count; col++)
{
IDTSInputColumn100 iCol = input.InputColumnCollection[col];
bufferColumnIndex[col] = BufferManager.FindColumnByLineageID(input.Buffer, iCol.LineageID);
}
}
Private bufferColumnIndex As Integer()
Public Overloads Overrides Sub PreExecute()
Dim input As IDTSInput100 = ComponentMetaData.InputCollection(0)
bufferColumnIndex = New Integer(BufferManager.GetColumnCount(input.Buffer) - 1) {}
Dim col As Integer = 0
While col < input.InputColumnCollection.Count
Dim iCol As IDTSInputColumn100 = input.InputColumnCollection(col)
bufferColumnIndex(col) = BufferManager.FindColumnByLineageID(input.Buffer, iCol.LineageID)
col -= 1
End While
End Sub
Commenti
Questo metodo localizza la colonna di un IDTSInput100 o IDTSOutput100 nel specificato IDTSBuffer100. Questo metodo è necessario perché un'istanza di buffer contiene tutti gli IDTSOutputColumn100 oggetti definiti nelle IDTSOutputColumnCollection100 collezioni dei componenti di un grafo. I componenti non possono fare affidamento sull'uso della posizione indice della loro colonna di output, o della colonna di input, come indice di quella colonna in una riga buffer. Per questo motivo, i componenti devono usare FindColumnByLineageID per localizzare le colonne nel buffer.