Program aracılığıyla veri akışı bileşenleri bağlama
veri akışı görevi için bileşenleri ekledikten sonra veri akışı kaynakları dönüşümleri aracılığıyla hedeflere temsil eden bir yürütme ağacı oluşturmak için bunları bağlayın.Kullandığınız IDTSPath100 nesnelere bağlanmak bileşenlerinde veri akışı.
Bir yol oluşturma
Call New yöntem, PathCollection özellik MainPipe Yeni bir yol oluşturmak ve yolda koleksiyonuna eklemek için arabirim veri akışı görevi.Bu yöntem yeni bir döndürür, bağlantısı kesilen IDTSPath100 nesnesi, daha sonra kullandığınız bağlanmak iki bileşenleri.
Call AttachPathAndPropagateNotifications bağlanma yöntem yol ve de katılan bileşenlerin bildirmek için yol bağlı.Bu yöntem kabul eden bir IDTSOutput100 ters yönde bileşeni ve bir IDTSInput100 aşağı akım bileşeni olarak parametreleri.Varsayılan olarak, bileşen çağrısı ProvideComponentProperties yöntem girdileri ve bileşenleri, var. çıkışları için tek bir çıkış olan bileşenleri için tek bir giriş oluştururAşağıdaki örnek, bu varsayılan çıkış kaynak ve hedef girişi kullanır.
Sonraki Adım
İki bileşenler arasındaki yol kurduktan sonra sonraki bölümde açıklanan, aşağı akım bileşenindeki giriş sütunları eşleştirmek için bir sonraki adım ise Program aracılığıyla giriş sütunları seçme.
Örnek
Aşağıdaki kod örneği, bir iki bileşenler arasındaki yol oluşturmak nasıl gösterir.
using System;
using Microsoft.SqlServer.Dts.Runtime;
using Microsoft.SqlServer.Dts.Pipeline;
using Microsoft.SqlServer.Dts.Pipeline.Wrapper;
namespace Microsoft.SqlServer.Dts.Samples
{
class Program
{
static void Main(string[] args)
{
Package package = new Package();
Executable e = package.Executables.Add("STOCK:PipelineTask");
TaskHost thMainPipe = e as TaskHost;
MainPipe dataFlowTask = thMainPipe.InnerObject as MainPipe;
// Create the source component.
IDTSComponentMetaData100 source =
dataFlowTask.ComponentMetaDataCollection.New();
source.ComponentClassID = "DTSAdapter.OleDbSource";
CManagedComponentWrapper srcDesignTime = source.Instantiate();
srcDesignTime.ProvideComponentProperties();
// Create the destination component.
IDTSComponentMetaData100 destination =
dataFlowTask.ComponentMetaDataCollection.New();
destination.ComponentClassID = "DTSAdapter.OleDbDestination";
CManagedComponentWrapper destDesignTime = destination.Instantiate();
destDesignTime.ProvideComponentProperties();
// Create the path.
IDTSPath100 path = dataFlowTask.PathCollection.New();
path.AttachPathAndPropagateNotifications(source.OutputCollection[0],
destination.InputCollection[0]);
}
}
}
Imports Microsoft.SqlServer.Dts.Runtime
Imports Microsoft.SqlServer.Dts.Pipeline
Imports Microsoft.SqlServer.Dts.Pipeline.Wrapper
Module Module1
Sub Main()
Dim package As Microsoft.SqlServer.Dts.Runtime.Package = _
New Microsoft.SqlServer.Dts.Runtime.Package()
Dim e As Executable = package.Executables.Add("STOCK:PipelineTask")
Dim thMainPipe As Microsoft.SqlServer.Dts.Runtime.TaskHost = _
CType(e, Microsoft.SqlServer.Dts.Runtime.TaskHost)
Dim dataFlowTask As MainPipe = CType(thMainPipe.InnerObject, MainPipe)
' Create the source component.
Dim source As IDTSComponentMetaData100 = _
dataFlowTask.ComponentMetaDataCollection.New()
source.ComponentClassID = "DTSAdapter.OleDbSource"
Dim srcDesignTime As CManagedComponentWrapper = source.Instantiate()
srcDesignTime.ProvideComponentProperties()
' Create the destination component.
Dim destination As IDTSComponentMetaData100 = _
dataFlowTask.ComponentMetaDataCollection.New()
destination.ComponentClassID = "DTSAdapter.OleDbDestination"
Dim destDesignTime As CManagedComponentWrapper = destination.Instantiate()
destDesignTime.ProvideComponentProperties()
' Create the path.
Dim path As IDTSPath100 = dataFlowTask.PathCollection.New()
path.AttachPathAndPropagateNotifications(source.OutputCollection(0), _
destination.InputCollection(0))
End Sub
End Module
|