DTSBufferManagerClass.FindColumnByLineageID(Int32, Int32) Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
public:
virtual int FindColumnByLineageID(int hBufferType, int nLineageID) = Microsoft::SqlServer::Dts::Pipeline::Wrapper::Sql2014::IDTSBufferManager100::FindColumnByLineageID;
public virtual int FindColumnByLineageID(int hBufferType, int nLineageID);
abstract member FindColumnByLineageID : int * int -> int
override this.FindColumnByLineageID : int * int -> int
Public Overridable Function FindColumnByLineageID (hBufferType As Integer, nLineageID As Integer) As Integer
Parameter
- hBufferType
- Int32
- nLineageID
- Int32
Gibt zurück
Eine ganze Zahl, die den Standort der Spalte im IDTSBuffer100Index angibt.
Implementiert
Beispiele
Das folgende Codebeispiel zeigt, wie eine Transformationskomponente, die keine Ausgabespalten hat, FindColumnByLineageID verwendet, um ihre Eingabespalten im Puffer zu lokalisieren.
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
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);
}
}
Hinweise
Diese Methode lokalisiert die Spalte eines IDTSInput100 oder IDTSOutput100 in der angegebenen IDTSBuffer100. Diese Methode ist notwendig, weil eine Instanz eines Puffers alle IDTSOutputColumn100 in der GetObjectIndexByID Komponente eines Graphen definierten Objekte enthält. Komponenten können sich nicht darauf verlassen, die Indexposition einer Ausgabespalte oder Eingabespalte als Index dieser Spalte in einer Pufferzeile zu verwenden. Daher müssen Komponenten die FindColumnByLineageID-Methode verwenden, um die Spalten im Puffer zu lokalisieren.