Udostępnij za pośrednictwem


Metody czasu projektowania składnik przepływu danych

Przed wykonaniem zadanie przepływ danych jest nazywany jest w stanie czas projektowania, co podlega on zmian przyrostowych.Zmiany mogą obejmować dodawaniem i usuwaniem składników, dodawania lub usuwania obiektów ścieżka, które składniki i zmiany połączyć metadane składników.Gdy zmiany metadane, składnika można monitorować i reagowanie na zmiany.Na przykład składnik można uniemożliwić pewnych zmian lub wprowadzić dodatkowe zmiany w odpowiedzi na zmiany.W czasie projektowania Projektant komunikuje się z części do czas projektowania IDTSDesigntimeComponent100 interfejs.

Projektowanie-czas implementacji

Interfejs czas projektowania składnika jest opisany przez IDTSDesigntimeComponent100 interfejs. Mimo, że ten interfejs nie należy jawnie implementować, znajomość metody, określone w tym interfejsie pomoże zrozumieć, jakie metody PipelineComponent Klasa podstawowa odpowiadają wystąpienie czas projektowania składnika.

Gdy składnik jest ładowany w Business Intelligence Development Studio, których wystąpienia tworzone wystąpienie składnika czas projektowania i metody IDTSDesigntimeComponent100 Interfejs są nazywane jest edycji składnika. Implementacja klasy podstawowej pozwala zastąpić tylko tych metod, która wymaga składnika.W wielu przypadkach może spowodować zastąpienie tych metod, aby zapobiec edycji rekordów nieodpowiedni do składnika.Na przykład, aby uniemożliwić użytkownikom dodawanie dane wyjściowe do składnika, należy zastąpić InsertOutput(DTSInsertPlacement, Int32) Metoda. W przeciwnym razie po wywołaniu stosowania tej metoda przez klasę podstawową dodaje produkcji, do składnika.

Niezależnie od celu i funkcji składnika, należy zastąpić ProvideComponentProperties(), Validate(), a ReinitializeMetaData() metody. Aby uzyskać więcej informacji na temat Validate() i ReinitializeMetaData(), zobacz Validating a Data Flow Component.

Metoda ProvideComponentProperties

Inicjowanie składnika występuje w ProvideComponentProperties() Metoda. Ta metoda jest wywoływana przez SSIS Projektant, gdy składnik zostanie dodany do zadania przepływ danych i jest podobna do konstruktora klasy. Deweloperzy składników należy utworzyć i zainicjować wejść, wyjść i właściwości niestandardowych podczas tego wywołania metoda.The ProvideComponentProperties() metoda differs from a constructor because it is not called every czas that the design-czas wystąpienie or run-czas wystąpienie of the component is instantiated.

Implementacja klasy podstawowej metoda dodaje dane wejściowe i wyjściowe składnika i przypisuje identyfikator dane wejściowe SynchronousInputID() Właściwość. Jednak w SQL Server, nie zostaną nazwane obiekty wejściowe i wyjściowe, dodane przez klasę podstawową. Pakiety, które zawierają składnik z wejściowych lub wyjściowych obiektów, których Name Właściwość nie jest zestaw nie zostanie pomyślnie załadowany. W związku z tym, korzystając z bazowego wykonania, konieczne jest przypisanie wartości bezpośrednio do Name Właściwość domyślne dane wejściowe i wyjściowe.

public override void ProvideComponentProperties()
{
    /// TODO: Reset the component.
    /// TODO: Add custom properties.
    /// TODO: Add input objects.
    /// TODO: Add output objects.
}
Public Overrides Sub ProvideComponentProperties()
    ' TODO: Reset the component.
    ' TODO: Add custom properties.
    ' TODO: Add input objects.
    ' TODO: Add output objects.
End Sub

Tworzenie właściwości niestandardowych

Wywołanie ProvideComponentProperties() Metoda jest deweloperzy składnik powinien dodawać właściwości niestandardowych)IDTSCustomProperty100) do składnika. właściwość niestandardowe właściwość typu danych nie jest konieczne.Typ danych właściwości niestandardowych jest zestaw przez typ danych wartości przypisane do jego Value() Właściwość. Jednak po przypisaniu wartość początkową właściwość niestandardowej można przypisać wartości z innego typu danych.

Uwaga

The IDTSCustomProperty100 interfejs has limited support for właściwość values of type Object. Tylko obiekt, który można przechowywać jako wartość właściwość niestandardowej jest tablicą z prostych typów, takich jak ciągi lub liczb całkowitych.

Można wskazać, że z właściwości niestandardowych obsługuje właściwość wyrażeń ustawiając wartość jej ExpressionType() Właściwość CPET_NOTIFY z DTSCustomPropertyExpressionType wyliczenia, jak pokazano w poniższym przykładzie. Nie trzeba dodawać kod do obsługi lub do sprawdzania poprawności wyrażenie właściwość wprowadzone przez użytkownika.zestaw wartość domyślną dla właściwość, sprawdzania jego wartości i odczytywać i używać jej wartość normalnie.

  IDTSCustomProperty100 myCustomProperty;
  ...
  myCustomProperty.ExpressionType = DTSCustomPropertyExpressionType.CPET_NOTIFY;
  Dim myCustomProperty As IDTSCustomProperty100
  ...
  myCustomProperty.ExpressionType = DTSCustomPropertyExpressionType.CPET_NOTIFY

Można ograniczać użytkowników do wybierania wartości właściwość niestandardowej z wyliczenia przy użyciu TypeConverter() właściwość, jak pokazano w poniższym przykładzie założono, został zdefiniowany publiczny wyliczenia o nazwie MyValidValues.

  IDTSCustomProperty100 customProperty = outputColumn.CustomPropertyCollection.New();
  customProperty.Name = "My Custom Property";
  // This line associates the type with the custom property.
  customProperty.TypeConverter = typeof(MyValidValues).AssemblyQualifiedName;
  // Now you can use the enumeration values directly.
  customProperty.Value = MyValidValues.ValueOne;  
  Dim customProperty As IDTSCustomProperty100 = outputColumn.CustomPropertyCollection.New 
  customProperty.Name = "My Custom Property" 
  ' This line associates the type with the custom property.
  customProperty.TypeConverter = GetType(MyValidValues).AssemblyQualifiedName 
  ' Now you can use the enumeration values directly.
  customProperty.Value = MyValidValues.ValueOne

Aby uzyskać więcej informacji, zobacz "Powszechny konwersja typu" i "" Wdrażanie konwertera typu "w Biblioteka MSDN.

Okno dialogowe Edytor niestandardowych dla wartości z właściwość niestandardowych można określić przy użyciu UITypeEditor() właściwość, jak pokazano w poniższym przykładzie. Po pierwsze należy utworzyć niestandardowy typ edytora, która dziedziczy System.Drawing.Design.UITypeEditor, jeśli nie można zlokalizować interfejsu użytkownika typu edytora klasy istniejącej, odpowiada potrzebom użytkownika.

  public class MyCustomTypeEditor : UITypeEditor
  {
  ...
  }
Public Class MyCustomTypeEditor
  Inherits UITypeEditor 
  ...
End Class

Następnie należy określić tej klasy jako wartość UITypeEditor() Właściwość swoje właściwości niestandardowej.

  IDTSCustomProperty100 customProperty = outputColumn.CustomPropertyCollection.New();
  customProperty.Name = "My Custom Property";
  // This line associates the editor with the custom property.
  customProperty.UITypeEditor = typeof(MyCustomTypeEditor).AssemblyQualifiedName;
  Dim customProperty As IDTSCustomProperty100 = outputColumn.CustomPropertyCollection.New 
  customProperty.Name = "My Custom Property" 
  ' This line associates the editor with the custom property.
  customProperty.UITypeEditor = GetType(MyCustomTypeEditor).AssemblyQualifiedName

Aby uzyskać więcej informacji, zobacz "" Wdrażanie a interfejsu użytkownika typu Edytor"w Biblioteka MSDN.

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.