IDTSBufferManager100.FindColumnByLineageID(Int32, Int32) Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Obtient l'emplacement, selon l'index, d'une colonne dans un objet IDTSBuffer100 spécifié.
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
Paramètres
- hBufferType
- Int32
ID de l'objet IDTSBuffer100 qui contient la colonne.
- nLineageID
- Int32
ID de lignage de la colonne à rechercher dans l'objet IDTSBuffer100.
Retours
Entier qui indique l'emplacement, d'après l'index, de la colonne dans le IDTSBuffer100.
- Attributs
Exemples
L’exemple de code suivant montre comment un composant de transformation qui n’a pas de colonnes de sortie utilise les FindColumnByLineageID colonnes d’entrée pour localiser ses colonnes d’entrée dans la mémoire tampon.
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
Remarques
Cette méthode localise la colonne d’un IDTSInput100 ou IDTSOutput100 dans le fichier spécifié IDTSBuffer100. Cette méthode est nécessaire, car une instance d’une mémoire tampon contient tous les IDTSOutputColumn100 objets définis dans les IDTSOutputColumnCollection100 collections des composants d’un graphique. Les composants ne peuvent pas s’appuyer sur l’utilisation de l’emplacement d’index de sa colonne de sortie ou de sa colonne d’entrée, comme index de cette colonne dans une ligne de mémoire tampon. En raison de cela, les composants doivent utiliser FindColumnByLineageID pour localiser les colonnes dans la mémoire tampon.