IDTSBufferManager100.FindColumnByLineageID(Int32, Int32) メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
指定した 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
パラメーター
- hBufferType
- Int32
列を含む IDTSBuffer100 オブジェクトの ID です。
- nLineageID
- Int32
IDTSBuffer100 で検索する列の系列 ID です。
戻り値
IDTSBuffer100 内の列の場所をインデックスで示す整数です。
- 属性
例
次のコード例では、出力列を持っていない変換コンポーネントが FindColumnByLineageID を使用してバッファー内の入力列を検索します。
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
注釈
このメソッドは、指定した IDTSInput100 で IDTSOutput100 または IDTSBuffer100 の列を検索します。 バッファーのインスタンスには、グラフのコンポーネントの IDTSOutputColumn100 コレクションに定義されているすべての IDTSOutputColumnCollection100 オブジェクトが含まれるため、このメソッドが必要です。 コンポーネントは、バッファー行のその列のインデックスとして、出力列または入力列のインデックス位置を使用することに依存できません。 このため、コンポーネントは、バッファー内で列を検索するには、FindColumnByLineageID を使用する必要があります。