W jaki sposób można użyć kontenera pętli foreach w SSIS do iteracji przez tablicę wielowymiarową?

Mam pakiet SSIS, który aktualizuje kilka tabel za pomocą skryptów i kontenera foreach wśród kilku innych rzeczy. używamSqlConnection iSqlCommand wywołać to zapytanie w zadaniu skryptu przed kontenerem foreach:

SELECT TOP 10 DirectoryID, DirectoryPath FROM ProjectDirectory ORDER BY LastAudit

i używamSqlDataReader aby dodać je do tablicy wielowymiarowej [10,2]. Przypisuję tablicę do zmiennej obiektuDirectoryList tak, że mogę iterować po nim w pojemniku pętli foreach. Powinien wyglądać jak {{"1", "C: Folder1"}, {"2", "C: Folder2"}, ...} Wierzę.

Problem polega na tym, że właśnie zacząłem używać tego oprogramowania kilka dni temu i jestem zdezorientowany tym, jak pętla foreach zapętla się przezDirectoryList zmienna. W tej chwili na karcie kolekcji kontenera ustawiłem moduł wyliczający na Foreach From Variable Enumerator, ze zmienną ustawioną jakoUser::DirectoryList. Mam zmienneUser::DirectoryID ustaw na indeks 0 iUser::DirectoryPath ustaw na indeks 1. Próbuję zapętlić tylko najwyższy poziom tablicy, tak aby w każdej pętli zmienne ID i ścieżki były przypisane do „1” i „C: Folder1”, a następnie dalej czas przechodzi przez pętlę są przypisane do „2” i „C: Folder2” itd. Mam komponent skryptu, który używa ścieżki do znalezienia informacji, i używam id do aktualizacji poprawnego wiersza sql stół.

Aby debugować, pokazuję mi identyfikator i ścieżkęMessageBox.Show(Variables.DirectoryID + ", " + Variables.DirectoryPath) pierwszej iteracji i pokazuje „8, 8”. 8 odpowiada identyfikatorowi wiersza, który powinien się pojawić jako pierwszy. Następnym razem, gdy przejdzie, daje mi prawidłową ścieżkę dwa razy, „C: Folder1, C: Folder1”. Najwyraźniej odwzorowanie zmiennych nie działa, odwzorowuje obie zmienne na ten sam indeks. W każdym razie to nie działa, więc myślę, że albo (i być może oba?) Moduł wyliczający Foreach from Variable nie jest tym, który powinienem wybrać, lub że nie mogę użyć wielowymiarowej tablicy w kontenerze foreach. Szukałem i nie znalazłem niczego, a to wszystko może być trudne do zrozumienia, ale wszelkie sugestie?

questionAnswers(1)

yourAnswerToTheQuestion