2010-09-09 12 views

Odpowiedz

16

Musisz zadeklarować dwie zmienne SSIS

  • zmiennej kolekcja (źródło dla Dla każdego wyliczający)
  • zmienna dla jednego elementu (wykorzystywany w wyliczający)

powiedzmy masz List<string> i musisz iterować przez jego elementy. Oto przykład jak to zrobić:

  1. w SSIS okno zmienne utworzyć zmienną o nazwie "col", typu "obiekt"
  2. utworzyć zmienną o nazwie "s", typu "string"
  3. tworzyć przykładowe zadanie skryptu, które wypełni kolekcję "col" i doda zmienną "User :: col" do listy zadań ReadWriteVariables. Ciało scenariusz byłby następujący:

    List<string> col = new List<string>() {"One", "Two", "Three"}; 
    Dts.Variables["User::col"].Value = col; 
    
  4. utworzyć kontener pętli foreach i skonfigurować go, aby wpisać „Od zmiennej enumator” nad zmiennej „Użytkownik :: Col”.

  5. w Foreach kontenerowych zmiennych odwzorowań dodać mapowanie dla „Użytkownikiem :: s” zmienna
  6. utworzyć zadanie skrypt wewnątrz pojemnika Foreach, wykazując spożywanie iteracji (dodać „Użytkownik :: s” do ReadOnlyVariables zadania). Treść skryptu będzie następująca:

    string val = (string)Dts.Variables["User::s"].Value; 
    MessageBox.Show(val); 
    
  7. Wykonaj próbę wciskając F5 w BIDS. Powinien wyświetlić trzy okna dialogowe z tekstami "Jeden", "Dwa", "Trzy".

Uwaga: Próbki skrypty są napisane w C# dla BIDS 2008.

Powiązane problemy