Lekcja 2-2: Dodaj i skonfiguruj kontener Foreach Loop

Dotyczy:SQL Server Środowisko SSIS Integration Runtime w usłudze Azure Data Factory

W tym zadaniu dodajesz możliwość przechodzenia przez folder plików płaskich i stosowania transformacji przepływu danych z Lekcji 1 do każdego z tych plików płaskich. Można to zrobić, dodając i konfigurując kontener Foreach Loop w przepływie sterowania.

Kontener Foreach Loop, który dodasz, musi być w stanie łączyć się z każdym płaskim plikiem w folderze. Ponieważ wszystkie pliki w folderze mają ten sam format, kontener Foreach Loop może używać tego samego menedżera połączeń z płaskimi plikami do łączenia się z każdym z tych plików. Menedżer połączeń Flat File, którego używa kontener, to ten, który stworzyłeś w Lekcji 1.

Obecnie menedżer połączeń plików płaskich z Lekcji 1 łączy się tylko z jednym konkretnym plikiem płaskim. Aby iteracyjne podłączyć się do każdego płaskiego pliku w folderze, musisz skonfigurować zarówno kontener Foreach Loop, jak i menedżera połączeń Flat File w następujący sposób:

  • Kontener pętli Foreach: Mapujesz wyliczoną wartość kontenera na zmienną pakietową zdefiniowaną przez użytkownika. Kontener następnie wykorzystuje tę zmienną do dynamicznej modyfikacji właściwości ConnectionString w menedżerze połączeń plików płaskich i iteracyjnie łączy się z każdym plikiem płaskim w folderze.

  • Menedżer połączeń plików płaskich: Modyfikujesz menedżera połączeń utworzonego w Lekcji 1, używając zmiennej zdefiniowanej przez użytkownika do wypełnienia właściwości ConnectionString w menedżerze połączeń.

Procedury w tym zadaniu pokazują, jak stworzyć i zmodyfikować kontener Foreach Loop, aby używać zmiennej pakietu zdefiniowanej przez użytkownika, oraz jak dodać zadanie przepływu danych do pętli. Nauczysz się, jak zmodyfikować menedżera połączeń plików płaskich, aby używał tej zmiennej zdefiniowanej przez użytkownika w następnym zadaniu.

Po wprowadzeniu tych modyfikacji w pakiecie, po uruchomieniu pakietu kontener pętli Foreach iteruje po wszystkich plikach w folderze „Sample Data”. Za każdym razem, gdy zostanie znaleziony plik spełniający to kryterium, kontener pętli Foreach przypisuje nazwę pliku do nowej zmiennej, mapuje tę zmienną do właściwości ConnectionString menedżera połączeń Sample Currency Data Flat File, a następnie uruchamia przepływ danych dla tego pliku. W ten sposób w każdej iteracji pętli Foreach zadanie Przepływ danych przetwarza inny plik płaski.

Uwaga / Notatka

Ponieważ Microsoft Integration Services oddziela przepływ sterowania od przepływu danych, żadne pętle, które dodajesz do przepływu kontrolnego, nie będą wymagały modyfikacji przepływu danych. Dlatego przepływ danych z Lekcji 1 nie musi być zmieniany.

Dodaj kontener Foreach Loop

  1. W SQL Server Data Tools wybierz zakładkę Control Flow.

  2. W skrzynce narzędzi SSIS rozwiń Kontenery, a następnie przeciągnij Kontener Pętli Foreach na powierzchnię projektową zakładki Control Flow .

  3. Kliknij prawym przyciskiem myszy na nowy kontener pętli Foreach i wybierz Edytuj.

  4. W oknie dialogowym edytora pętli Foreach , na stronie ogólnej , dla nazwy wpisz plik Foreach w folderze. Kliknij przycisk OK.

  5. Kliknij prawym przyciskiem myszy na kontener Foreach Loop, wybierz Właściwości, a w oknie Właściwości sprawdź, czy właściwość LocaleID jest ustawiona na angielski (Stany Zjednoczone).

Konfiguruj enumerator kontenera Foreach Loop

  1. Kliknij dwukrotnie plik Foreach w folderze , aby ponownie otworzyć edytor pętli Foreach.

  2. Wybierz kolekcję.

  3. Na stronie Kolekcja wybierz Foreach File Enumerator.

  4. W grupie Konfiguracja enumeratora wybierz opcję Przeglądaj.

  5. W oknie dialogowym Przeglądaj foldery znajdź folder na swoim komputerze, który zawiera pliki Currency_*.txt dołączone do przykładowych danych.

  6. W polu Pliki wpisz Currency_*.txt.

Przypisz enumerator do zmiennej zdefiniowanej przez użytkownika

  1. Wybierz Mapowania zmiennych.

  2. Na stronie Mapowania zmiennych, w kolumnie Variable, wybierz pustą komórkę i wybierz <Nowa zmienna...>.

  3. W oknie dialogowym Dodaj zmienną , dla nazwy wpisz varFileName.

    Uwaga / Notatka

    W nazwach zmiennych jest rozróżniana wielkość liter.

  4. Kliknij przycisk OK.

  5. Wybierz OK ponownie, aby opuścić okno dialogowe Foreach Loop Editor .

Dodaj zadanie przepływu danych do pętli

  • Przeciągnij zadanie przepływu danych Extract Sample Currency Data do kontenera pętli Foreach Foreach File in Folder.

Przejdź do następnego zadania

Krok 3. Modyfikowanie menedżera połączeń plików prostych