IDTSVirtualInput100 インターフェイス
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
public interface class IDTSVirtualInput100 : Microsoft::SqlServer::Dts::Pipeline::Wrapper::Sql2014::IDTSObject100
[System.Runtime.InteropServices.Guid("DD9E7F1F-A112-4EBD-9178-EE7DB0F2EDEC")]
[System.Runtime.InteropServices.TypeLibType(System.Runtime.InteropServices.TypeLibTypeFlags.FDispatchable | System.Runtime.InteropServices.TypeLibTypeFlags.FDual)]
public interface IDTSVirtualInput100 : Microsoft.SqlServer.Dts.Pipeline.Wrapper.Sql2014.IDTSObject100
[<System.Runtime.InteropServices.Guid("DD9E7F1F-A112-4EBD-9178-EE7DB0F2EDEC")>]
[<System.Runtime.InteropServices.TypeLibType(System.Runtime.InteropServices.TypeLibTypeFlags.FDispatchable | System.Runtime.InteropServices.TypeLibTypeFlags.FDual)>]
type IDTSVirtualInput100 = interface
interface IDTSObject100
Public Interface IDTSVirtualInput100
Implements IDTSObject100
- 属性
- 実装
例
以下のコード例は、仮想入力を使ってデータフロータスクをプログラム的に構築する際にコンポーネントが使用する列を選択する方法を示しています。
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
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);
}
}
以下のコード例は、入力がパスに接続された際に仮想入力からすべてのDT_STR列を選択するカスタムデータフローコンポーネントを示しています。
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
注釈
IDTSVirtualInput100は、IDTSInput100オブジェクトのGetVirtualInputメソッドを呼び出して取得します。 VirtualInputColumnCollectionプロパティはグラフ内の上流コンポーネントから利用可能な列を含みます。
データフロータスクをプログラム的に構築する際、CManagedComponentWrapperClassのSetUsageTypeメソッドを呼び出してコンポーネントの仮想列を選択します。
カスタムデータフローコンポーネントを作成する開発者は、仮想入力を使って利用可能な上流列を発見し、コンポーネントによっては仮想コレクション内の列に基づいて入力に追加します。
仮想入力は上流の列の反映であるため、仮想入力や仮想入力コレクション内の列の変更は IDTSOutput100 自体に影響を与えません。
プロパティ
| 名前 | 説明 |
|---|---|
| Description | |
| ID | |
| IdentificationString | |
| IsSorted | |
| Name | |
| ObjectType | |
| SourceLocale | |
| VirtualInputColumnCollection | |
メソッド
| 名前 | 説明 |
|---|---|
| SetUsageType(Int32, DTSUsageType) | |