Aracılığıyla paylaş


Özel görev için bir kullanıcı arabirim geliştirme

The Integration Services object model provides custom task developers the ability to easily create a custom user interface for a task that can then be integrated and displayed in Business Intelligence Development Studio.Kullanıcı arabirim kullanıcıya yararlı bilgiler sağlayabilirSSISTasarımcı ve doğru yapılandırma özelliklerini ve ayarlarını özel görev. Kullanıcı Kılavuzu

Bir görev için özel kullanıcı arabirim geliştirme kullanarak önemli iki sınıf içerir.Aşağıdaki tablo Bu sınıflar tanımlar.

Sınıf :

Açıklama

DtsTaskAttribute

Bir öznitelik, yönetilen bir görevi tanımlar ve nasıl özelliklerini denetlemek için Tasarım zamanı bilgileri sağlarSSISTasarımcı görüntüler ve etkileşim kurduğunda nesne.

IDtsTaskUI

Göreve göre görevin özel kullanıcı arabirimi ile ilişkilendirmek için kullanılan arabirim.

Rolünü bu bölümde açıklanmaktadırDtsTaskAttributeöznitelik veIDtsTaskUIarabirim özel bir görev için bir kullanıcı arabirimi geliştirme ve oluşturma, tümleştirme, dağıtmak, ve hata ayıklama içinde görev hakkında ayrıntılı bilgi sağlar.SSISTasarımcı.

The SSIS Designer provides multiple entry points to the user interface for the task: Kullanıcı kısayol menüsünde Düzen seçebilir, görevi çift tıklatın veya alt özellik sayfasını. Göster Düzenleyici bağlantıyı tıklatın Bu giriş noktaları, bir kullanıcı erişimSSISTasarımcı bulur ve yükler kullanıcı arabirim içeren derleme görev.Görev için kullanılan kullanıcı arabirim sorumludur kullanıcıya görüntülenen Özellikler iletişim kutusu oluşturmaBusiness Intelligence Development Studio.

Bir görev ve kullanıcı arabirim ayrı varlıklardır.Bunlar yerelleştirme, dağıtım ve Bakım çalışma azaltmak için ayrı derlemelerde uygulanması.Görev DLL değil yüklemek, arama ve genellikle kullanıcı arabirim, içerdiği bilgiler haricinde herhangi bilgi içerenDtsTaskAttributeöznitelik değerleri kodlanmış görev.Bir görev ve kullanıcı arabirim ilişkili olduğunu tek yolu budur.

DtsTask özniteliği

The DtsTaskAttribute attribute is included in the task class code to associate a task with its user interface.The SSIS Designer uses the properties of the attribute to determine how to display the task in the designer.Bu özellikler varsa, görüntü ve simgesi, adını içerir.

Özelliklerini aşağıdaki tabloda açıklanmıştırDtsTaskAttributeöznitelik.

Özellik

Açıklama

DisplayName()

Akış Denetim araç kutusuna görevin adını görüntüler.

Description()

Görev açıklaması (klasörden devralınan DtsLocalizableAttribute).Bu özellik araç ipuçları görüntülenir.

IconResource()

Simge olarak görüntülenirSSISTasarımcı.

RequiredProductLevel()

Kullanılan, değerlerden birine kümeDTSProductLevelnumaralandırma.Örneğin,RequiredProductLevel = DTSProductLevel.None.

TaskContact()

Holds bilgi için görevi teknik destek gerektiren durumlar başvurun.

TaskType()

Bir türüne atar görev.

öznitelik.TypeId

Türetilmiş bir sınıfta uygulanan, bunun için benzersiz bir tanımlayıcı alır öznitelik.Daha fazla bilgi için bkz:Attribute.TypeIDözellik .NET Framework sınıf kitaplığı.

UITypeName()

Tür adı olarak kullanılan derlemeSSISTasarımcıya yük derleme.Bu özellik, kullanıcı arabirim derleme görevi için bulmak için kullanılır.

Aşağıdaki örnekte gösterildiği kodDtsTaskAttributegibi arama, kodlanmış yukarıdaki sınıf tanımı.

using System;
using Microsoft.SqlServer.Dts.Runtime;
namespace Microsoft.SSIS.Samples
{
  [DtsTask
  (
   DisplayName = "MyTask",
   IconResource = "MyTask.MyTaskIcon.ico",
   UITypeName = "My Custom Task," +
   "Version=1.0.0.0," +
   "Culture = Neutral," +
   "PublicKeyToken = 12345abc6789de01",
   TaskType = "PackageMaintenance",
   TaskContact = "MyTask; company name; any other information",
   RequiredProductLevel = DTSProductLevel.None
   )]
  public class MyTask : Task
  {
    // Your code here.
  }
}
Imports System
Imports Microsoft.SqlServer.Dts.Runtime

<DtsTask(DisplayName:="MyTask", _
 IconResource:="MyTask.MyTaskIcon.ico", _
 UITypeName:="My Custom Task," & _
 "Version=1.0.0.0,Culture=Neutral," & _
 "PublicKeyToken=12345abc6789de01", _
 TaskType:="PackageMaintenance", _
 TaskContact:="MyTask; company name; any other information", _
 RequiredProductLevel:=DTSProductLevel.None)> _
Public Class MyTask
  Inherits Task

  ' Your code here.

End Class 'MyTask

The SSIS Designer uses the UITypeName() property of the attribute that includes the assembly name, type name, version, culture, and public key token, to locate the assembly in the Global Assembly Cache (GAC) and load it for use by the designer.

Derleme sonrasında yer,SSISTasarımcı kullanan diğer özellikler öznitelik görev hakkında ek bilgi görüntülemek içinSSISTasarımcı, ad, simge ve açıklama görev.

The DisplayName(), Description(), and IconResource() properties specify how the task is presented to the user.The IconResource() property contains the resource ID of the icon embedded in the user interface assembly.Tasarımcı simge kaynak kodu tarafından derleme yükler ve görev için bir paket eklendiğinde, araç ve Tasarımcı yüzey üzerinde görev adının yanında görüntülenir.Görev bir simge kaynaðýnýn sağlamaz, Tasarımcı görev için varsayılan simge kullanır.

IDTSTaskUI arabirim

The IDtsTaskUI interface defines the collection of methods and properties called by SSIS Designer to initialize and display the user interface associated with the task.Bir görev için kullanılan kullanıcı arabirim, çağrılır, Tasarımcı çağrılarıInitialize(TaskHost, IServiceProvider)yöntem, yazdığınız zaman görevin kullanıcı arabirim tarafından uygulanan ve daha sonra sağlarTaskHostveConnectionsbiri görev ve paket, sırasıyla gibi parametreler.Bu derlemeleri yerel olarak depolanan ve daha sonra kullanılanGetView()yöntem.

Tasarımcı çağrılarıGetView()pencere içinde gösterilen istek yöntemSSISTasarımcı.Görev, görev için kullanıcı arabirim içerir, ve kullanıcı arabirim Tasarımcısı görüntülemek için pencere bir örneğini oluşturur.Genellikle,TaskHostveConnectionsnesneleri, pencereye yapılandırmak için kullanılabilir, böylece bir aþýrý yüklenmiþ kurucu ile sağlanır görev.

The SSIS Designer calls the GetView() method of the task UI to display the user interface for the task.Görev kullanıcı arabirim bu yöntem Windows formu verir veSSISTasarımcı gösterir bu formu bir kalıcı iletişim kutusu.Form kapatıldığındaSSISTasarımcısı değerini incelerDialogResultgörev değişiklik yapılmış ve bu değişikliklerin kaydedilmesi gereken, özelliğini.If the value of the DialogResult property is OK, the SSIS Designer calls the persistence methods of the task to save the changes; otherwise, the changes are discarded.

Aşağıdaki kod örneği uygularIDtsTaskUIarabirim ve bir Windows formunda sınıf adı varlığını kabul eder SampleTaskForm.

using System;
using System.Windows.Forms;
using Microsoft.SqlServer.Dts.Runtime;
using Microsoft.SqlServer.Dts.Runtime.Design;

namespace Sample
{
   public class HelloWorldTaskUI : IDtsTaskUI
   {
      TaskHost   taskHost;
      Connections connections;
      public void Initialize(TaskHost taskHost, IServiceProvider serviceProvider)
      {
         this.taskHost = taskHost;
         IDtsConnectionService cs = serviceProvider.GetService
         ( typeof( IDtsConnectionService ) ) as   IDtsConnectionService; 
         this.connections = cs.GetConnections();
      }
      public ContainerControl GetView()
      {
        return new HelloWorldTaskForm(this.taskHost, this.connections);
      }
     public void Delete(IWin32Window parentWindow)
     {
     }
     public void New(IWin32Window parentWindow)
     {
     }
   }
}
Imports System
Imports Microsoft.SqlServer.Dts.Runtime
Imports Microsoft.SqlServer.Dts.Runtime.Design
Imports System.Windows.Forms

Public Class HelloWorldTaskUI
  Implements IDtsTaskUI

  Dim taskHost As TaskHost
  Dim connections As Connections

  Public Sub Initialize(ByVal taskHost As TaskHost, ByVal serviceProvider As IServiceProvider) _
    Implements IDtsTaskUI.Initialize

    Dim cs As IDtsConnectionService

    Me.taskHost = taskHost
    cs = DirectCast(serviceProvider.GetService(GetType(IDtsConnectionService)), IDtsConnectionService)
    Me.connections = cs.GetConnections()

  End Sub

  Public Function GetView() As ContainerControl _
    Implements IDtsTaskUI.GetView

    Return New HelloWorldTaskForm(Me.taskHost, Me.connections)

  End Function

  Public Sub Delete(ByVal parentWindow As IWin32Window) _
    Implements IDtsTaskUI.Delete

  End Sub

  Public Sub [New](ByVal parentWindow As IWin32Window) _
    Implements IDtsTaskUI.[New]

  End Sub

End Class
Integration Services icon (small)tümleştirme Services ile güncel kalın

En son karşıdan yüklemeler, makaleler, örnekler, Microsoft Office 2010 Suite gelen video yanı sıra, seçilen topluluk çözümleri için ziyaret edin veIntegration ServicesMSDN veya TechNet sayfa:

Bu güncelleştirmeler otomatik bildirilmesi için sayfanın RSS akışlarını için abone olmak olun.