Udostępnij przez


Opracowywanie niestandardowych obiektów dla usług integracja Services

When the control flow and data flow objects that are included with SQL Server Integration Services do not completely meet your requirements, you can develop many types of custom objects on your own including:

  • Niestandardowe zadania.

  • Menedżerowie niestandardowego połączenia.    Podłącz do źródeł danych zewnętrznych, które nie są obecnie obsługiwane.

  • Niestandardowe włączeni.     Rejestrowanie zdarzeń pakiet w formatach, które nie są obecnie obsługiwane.

  • Niestandardowe moduły wyliczające.    Obsługuje iterację przez zestaw formatów obiektów lub wartości, które nie są obecnie obsługiwane.

  • Dane niestandardowe składniki przepływu.    Można skonfigurować jako, transformacje, miejsca źródłowego i docelowego.

The Integration Services object model facilitates this custom development with base classes that provide a consistent and reliable framework for your custom implementation.

Jeśli nie masz do ponownego użycia niestandardowe funkcje w wielu pakietów, zadanie skryptów i składników skryptów zapewniają pełne prawo zarządzanych języka programowania z kodem znacznie mniej infrastruktury do zapisu.Aby uzyskać więcej informacji zobaczPorównanie rozwiązania wykonywanie wykonywanie skryptów i niestandardowych obiektów.

Aby próbek pracy każdego typu obiektu zobacz Programming Samples.

Kroki opisane w tworzenie obiektów niestandardowych dla usług integracja Services

Podczas opracowywania niestandardowych obiektów do użycia w Integration Services, rozwijać Biblioteka klas (DLL), który zostanie załadowany w czasie projektowania i wykonywania przez projektanta SSIS i Integration Services środowiska wykonawczego. Najważniejsze metod, które należy zaimplementować nie są metody, które można wywoływać z własnego kodu, ale metod, które wywoła w czasie wykonywania na potrzeby razy do inicjowania i sprawdzanie poprawności składnik i wywołać jego funkcję.

Poniżej przedstawiono kroki, które można wykonać w tworzeniu niestandardowych obiektów:

  1. Utwórz nowy projekt typu biblioteki klas w sieci preferowanych zarządzanych języka programowania.

  2. Dziedziczyć odpowiedniej klasy podstawowej, jak pokazano w poniższej tabela.

  3. Zastosować odpowiedni atrybut do nowej klasy, jak pokazano w poniższej tabela.

  4. Zastępować metod klasy podstawowej zgodnie z wymaganiami, a następnie napisać kod niestandardowe funkcje obiektu.

  5. Opcjonalnie można utworzyć interfejs użytkownika niestandardowego dla składnika.W celu ułatwienia wdrożenia można rozwijać interfejs użytkownika jako oddzielne projektu w ramach tego samego rozwiązania i zbudować go jako oddzielnego wirtualny plik dziennika.

  6. Budowania, wdrożyć i debugowania do nowego obiektu niestandardowego, zgodnie z opisem w Budowanie, wdrażanie i debugowanie obiekty niestandardowe.

Klasy podstawowej, atrybuty i metody ważny

Ta tabela zapewnia proste odwołanie do najważniejszych elementów w Integration Services model obiektowy dla każdego typu obiektów niestandardowych, które można opracować.

Obiekt niestandardowy

Klasa podstawowa

Attribute

Ważne metod

Zadanie

Task

DtsTaskAttribute

Execute(Connections, VariableDispenser, IDTSComponentEvents, IDTSLogging, Object)

Menedżer połączeń

ConnectionManagerBase

DtsConnectionAttribute

AcquireConnection(Object), ReleaseConnection(Object)

Dostawca dziennika

LogProviderBase

DtsLogProviderAttribute

OpenLog(), Log(String, String, String, String, String, String, String, DateTime, DateTime, Int32, array<Byte[]), CloseLog()

Moduł wyliczający

ForEachEnumerator

DtsForEachEnumeratorAttribute

GetEnumerator(Connections, VariableDispenser, IDTSInfoEvents, IDTSLogging)

składnik przepływ danych

PipelineComponent

DtsPipelineComponentAttribute

ProvideComponentProperties(), PrimeOutput(Int32, array<Int32[], array<PipelineBuffer[]), ProcessInput(Int32, PipelineBuffer)

Dostarczanie niestandardowego interfejs użytkownika

Aby umożliwić użytkownikom niestandardowy obiekt do konfigurowania jego właściwości, należy również rozwijać interfejs użytkownika niestandardowego.W tych przypadkach, gdy interfejs użytkownika niestandardowego nie jest absolutnie konieczne można utworzyć bardziej przyjazny dla użytkownika interfejsu niż Edytor domyślny.

W projekcie interfejsu użytkownika niestandardowego lub w zestawie zazwyczaj mają dwie klasy — klasy, która implementuje Integration Services interfejs dla interfejsów użytkownika dla określonego typu niestandardowego obiektu i formularzy systemu Windows, wyświetlający uzyskanie informacji od użytkownika. Interfejsy, które można zaimplementować ma tylko kilka metod, a interfejs użytkownika niestandardowego nie jest trudne do rozwoju.

Uwaga

Wiele Integration Services włączeni mieć implementujące interfejs użytkownika niestandardowego IDtsLogProviderUI i zastępuje Konfiguracja pole tekstowe z filtrowanej listy rozwijanej menedżerów dostępnego połączenia.Jednak interfejsów użytkownika niestandardowego dla dostawców dzienników niestandardowe nie zostały zaimplementowane w tym wydaniu Integration Services. Podanie wartości UITypeName() Właściwość DtsLogProviderAttribute nie ma znaczenia.

Poniższa tabela zawiera proste odwołanie bezwzględne do interfejsów, które należy zaimplementować podczas opracowania niestandardowych interfejs dla każdego typu obiektów niestandardowych.Wyjaśniono również, jakie użytkownik widzi użytkownik nie chce opracowanie interfejsu użytkownika niestandardowego dla obiektu lub nie można połączyć obiekt z jego interfejs użytkownika przy użyciu UITypeName Właściwość w atrybucie tego obiektu. Chociaż Zaawansowany edytor zaawansowany może być zadowalające składnika przepływ danych, okno właściwości to rozwiązanie mniej przyjaznej dla użytkownika dla zadań i Menedżera połączeń i niestandardowy moduł wyliczający ForEach nie może zostać skonfigurowany na wszystkich bez formularza niestandardowego.

Obiekt niestandardowy

Klasa podstawowa dla interfejs użytkownika

Domyślne zachowanie edycji, jeśli zostanie podana bez interfejs użytkownika niestandardowego

Zadanie

IDtsTaskUI

Tylko okno właściwości

Menedżer połączeń

IDtsConnectionManagerUI

Tylko okno właściwości

Dostawca dziennika

IDtsLogProviderUI

(Nie jest zaimplementowana w Integration Services)

Pole tekstowe Konfiguracja kolumna

Moduł wyliczający

ForEachEnumeratorUI

Tylko okno właściwości.Moduł wyliczający konfiguracja obszaru Edytor jest pusty.

składnik przepływ danych

IDtsComponentUI

Zaawansowany edytor

Integration Services icon (small) Konfiguracja w aktualizacji z usług integracja Services pobytu

Najnowsze pliki do pobrania, artykuły, próbki, i pliki wideo firmy Microsoft, jak również wybranego rozwiązania od Wspólnoty, odwiedź witrynę Integration Services strona w witrynie MSDN lub TechNet:

Automatycznego powiadomienie tych aktualizacji należy subskrybować źródła danych RSS, które jest dostępne strona.