Udostępnij za pośrednictwem


Jak obiekt obiekt docelowy jest zestaw rekordów za pomocą

obiekt docelowy zestaw rekordów nie zapisuje danych do zewnętrznego urządzenie źródłowe danych.Zamiast tego należy obiekt docelowy zestaw rekordów zapisuje dane w pamięci w zestawie rekordów, który jest przechowywany w Integration Services Zmienna pakiet Object Typ danych. Po obiekt docelowy zestaw rekordów zapisuje dane, zwykle służy kontener Foreach pętli z modułu wyliczającego Foreach ADO do przetwarzania jeden wiersz w zestawie rekordów czas.Moduł wyliczający Foreach ADO zapisuje wartości z każdego kolumna bieżącego wiersza do zmiennej oddzielnego pakiet.Następnie zadania, które konfiguruje się wewnątrz kontener pętla Foreach odczytać wartości tych zmiennych i wykonania niektórych czynności z nimi.

Można użyć obiekt docelowy zestaw rekordów w wielu różnych scenariuszach.Oto kilka przykładów:

  • Można użyć zadania Wyślij pocztę i Integration Services wyrażenie języka do wysyłania wiadomości e-mail dostosowane dla każdego wiersza w zestawie rekordów.

  • Składnik skryptów, skonfigurowanego jako urządzenie źródłowe, może być używany wewnątrz zadanie przepływ danych, aby odczytać wartości kolumn na kolumna przepływ danych.Następnie umożliwia przekształcenia i miejsc docelowych przekształcenia i zapisaniu wiersza.W tym przykładzie zadanie przepływ danych uruchamia tylko jeden raz dla każdego wiersza.

W poniższych sekcjach najpierw opis ogólnego procesu przy użyciu obiekt docelowy zestaw rekordów, a następnie Pokaż określonych przykład użycia obiekt docelowy.

Ogólne kroki, aby korzystanie z obiekt docelowy zestawu rekordów

Poniższa procedura zawiera podsumowanie kroków, które są wymagane, aby zapisać dane w zestawie rekordów obiekt docelowy, a następnie użyj kontener pętla Foreach do przetworzenia każdego wiersza.

Aby zapisać dane w zestawie rekordów obiekt docelowy i procesu każdego wiersza przy użyciu kontener Foreach pętli

  1. W Business Intelligence Development Studio, Utwórz lub Otwórz Integration Services pakiet.

  2. Tworzenie zmiennej, która będzie zawierać zestaw rekordów zapisanych w pamięci przez obiekt docelowy zestaw rekordów i Ustaw typ zmiennej Object.

  3. Tworzenie dodatkowych zmiennych odpowiednich typów zawierają wartości dla każdej z kolumn w zestawie rekordów, którego chcesz użyć.

  4. Dodawanie i Konfigurowanie menedżer połączeń, wymagane przez urządzenie źródłowe danych, które ma być używany w sieci przepływ danych.

  5. Dodawanie zadanie przepływ danych do pakiet, a następnie na karcie przepływ danych SSIS Projektant, skonfiguruj źródeł i wykonywania przekształceń do ładowania i przekształcania danych.

  6. Dodawanie obiekt docelowy zestaw rekordów do przepływ danych i podłącz go do przekształcenia.Dla VariableName Właściwość Recordset obiekt docelowy, wprowadź nazwę zmiennej, który został utworzony w celu przechowywania zestawu rekordów.

  7. Na karcie przepływ sterowania SSIS Projektant, dodać kontener Foreach pętli i połącz ten kontener po zadanie przepływ danych. Następnie należy otworzyć Edytor foreach pętli skonfigurować pojemnik z następującymi ustawieniami:

    1. Na Kolekcja strona, zaznacz moduł wyliczający Foreach ADO.Następnie aby Zmienna urządzenie źródłowe obiektu ADO, wybierz zmienną, która zawiera zestaw rekordów.

    2. Na Zmienna mapowania strona, od zera indeks każdej kolumna, która ma być używany do zmiennej odpowiednie mapowanie.

      W każdej iteracji pętli moduł wyliczający wypełnia zmienne z wartościami kolumna z bieżącego wiersza.

  8. Wewnątrz kontener Foreach pętli, Dodaj i skonfiguruj zadania do przetwarzania jeden wiersz w zestawie rekordów czas przy odczycie wartości zmiennych.

Przykład za pomocą zestawu rekordów obiekt docelowy

W poniższym przykładzie zadanie przepływ danych ładuje informacje — informacje AdventureWorks pracowników z tabela Sales.SalesPerson do docelowego zestawu rekordów. Następnie kontener pętla Foreach odczytuje jednego wiersza danych w danej chwili i wywołuje zadania Wyślij pocztę.Zadanie wysyłania poczty używa wyrażeń do wysyłania wiadomości e-mail dostosowanych do poszczególnych sprzedawców, informacje o ilości podwyższenie jego lub jej.

Aby utworzyć projekt i skonfigurować zmiennych

  1. W BI Development Studio, Utwórz nowy Integration Services Projekt.

  2. Na SSIS Wybierz opcję menuZmienne.

  3. W Zmienne okna, tworzenie zmiennych, które będzie zawierać zestaw rekordów i wartości kolumna z bieżącego wiersza:

    1. Utwórz zmienną o nazwie, BonusRecord zestaw, a zestaw jego typ na Object.

      The BonusRecordset variable holds the recordset.

    2. Utwórz zmienną o nazwie, AdresEmail, a zestaw jego typ na String.

      The EmailAddress variable holds the salesperson's e-mail address.

    3. Utwórz zmienną o nazwie, Imię, a zestaw jego typ na String.

      The FirstName variable holds the salesperson's first name.

    4. Utwórz zmienną o nazwie, Premiai ustaw jej typ jako Double.

      The Bonus variable holds the amount of the salesperson's bonus.

Aby skonfigurować Menedżera połączeń

  1. W obszarze Menedżer połączeń SSIS Projektant, dodawanie i konfigurowanie nowego Menedżera połączenia OLE DB, który łączy się z AdventureWorks Przykładowa baza danych.

    urządzenie źródłowe OLE DB w zadanie przepływ danych użyje tego menedżer połączeń do pobierania danych.

  2. W obszarze Menedżer połączeń Dodawanie i konfigurowanie nowych Menedżer połączeń SMTP, który łączy z dostępnego serwera SMTP.

    Zadania Wyślij pocztę wewnątrz kontener pętla Foreach użyje tego menedżer połączeń do wysyłania wiadomości e-mail.

Aby skonfigurować przepływ danych i obiekt docelowy zestaw rekordów

  1. Na Przepływ sterowania tab of SSIS Projektant, dodawanie zadanie przepływ danych na powierzchnię projektu.

  2. Na Przepływ danych karcie dodać urządzenie źródłowe OLE DB z zadanie przepływu danych, a następnie otwórz Edytor urządzenie źródłowe bazy danych OLE.

  3. Na Menedżer połączeń Strona edytora, skonfigurować urządzenie źródłowe, z następującymi ustawieniami:

    1. Dla Menedżer połączeń OLE DB, Menedżer połączeń OLE DB wybierz uprzednio utworzony.

    2. Dla Tryb dostępu do danych, select Polecenia SQL.

    3. Dla Tekst polecenia SQL, należy wprowadzić następującą kwerendę:

      SELECT     Person.Contact.EmailAddress, Person.Contact.FirstName, CONVERT(float, Sales.SalesPerson.Bonus) AS Bonus
      FROM         Sales.SalesPerson INNER JOIN
                            Person.Contact ON Sales.SalesPerson.SalesPersonID = Person.Contact.ContactID
      

      Uwaga

      Trzeba przekonwertować currency wartość kolumna premia float przed załadowaniem tę wartość do zmiennej pakiet, którego typem danych jest Double.

  4. Na Przepływ danych kartę, dodaj obiekt docelowy zestaw rekordów i połączenie obiekt docelowy po źródeł OLE DB.

  5. Otwórz Edytor obiekt docelowy zestaw rekordówi skonfiguruj obiekt docelowy, z następującymi ustawieniami:

    1. Na właściwość składnika tab, for VariableName Wybierz opcję właściwośćUser::BonusRecordset.

    2. Na Kolumny danych wejściowych karty, zaznacz wszystkie trzy dostępnych kolumn.

Aby skonfigurować kontener Foreach pętli i uruchomić pakiet

  1. Na Przepływ sterowania tab of SSIS Projektant, dodać kontener Foreach pętli, a następnie podłącz kontenera po zadanie przepływ danych.

  2. Otwórz Edytor foreach pętlii skonfiguruj pojemnik z następującymi ustawieniami:

    1. Na Kolekcja strona, for Moduł wyliczający, select Moduł wyliczania obiektów ADO foreach, and for Zmienna urządzenie źródłowe obiektu ADO, select User::BonusRecordset.

    2. Na Zmienna mapowania strona, map User::EmailAddress do indeksu 0, User::FirstName 1 indeksowania i User::Bonus indeksem 2.

  3. Na Przepływ sterowania karcie wewnątrz kontener pętla Foreach dodać zadanie Wyślij pocztę.

  4. Otwórz Wysyłanie poczty zadań edytora, a następnie na Poczta strona, konfigurować zadania z następującymi ustawieniami:

    1. Dla SmtpConnection, Menedżer połączeń wybierz SMTP, który został wcześniej skonfigurowany.

    2. Dla Z, wprowadź adres e-mail odpowiednie.

      Jeśli używasz adresu e-mail, można potwierdzić, że pakiet zostanie wykonane pomyślnie.Użytkownik będzie otrzymywać potwierdzenia niemożliwy do dostarczenia wiadomości wysłane przez zadanie Wyślij pocztę do fikcyjne sprzedawców z AdventureWorks.

    3. Dla Aby, wprowadź domyślny adres e-mail.

      Wartość ta nie będzie używane, ale zostanie zastąpiona przy uruchomieniu czas przez adres e-mail każdego sprzedawcy.

    4. Dla Temat, wpisz "Swoje podwyższenia rocznych".

    5. Dla MessageSourceType, select Bezpośredniego wprowadzania.

  5. Na Wyrażenia stronaWysyłanie poczty zadań edytora, kliknij przycisk wielokropka (... ) Aby otworzyć Edytor wyrażeń właściwość.

  6. W Edytor wyrażeń właściwość, wprowadź następujące informacje:

    1. Dla ToLine, Dodaj następujące wyrażenie:

      @[User::EmailAddress]
      
    2. Dla MessageSource Właściwość, Dodaj następujące wyrażenie:

      "Dear " +  @[User::FirstName] + ": The amount of your bonus for this year is $" +  (DT_WSTR, 12) @[User::Bonus] + ". Thank you!"
      
  7. Należy uruchomić pakiet.

    Jeżeli określono prawidłowy serwer SMTP i podać adres e-mail, zostanie wyświetlony potwierdzenia niemożliwy do dostarczenia wiadomości, która wysyła zadania Wyślij pocztę do fikcyjne sprzedawców z AdventureWorks.