/ / Tworzenie plików excel dynamicznie w oparciu o parametr - sql-server, excel, excel-vba, reporting-services, ssis, vba

Tworzenie plików excel dynamicznie w oparciu o parametr - sql-server, excel, excel-vba, reporting-services, ssis, vba

Zadanie: w oparciu o dane zwracane przez zapytanie SQL, generuj automatyczne raporty okresowe indywidualnie dla każdego klienta i zapisz je jako osobny plik programu Excel o nazwie nazwa_klienta + [YY-MM] .xlsx (lub jeden plik znacznika czasu z osobnym arkuszem roboczym dla każdego klienta).

Identyfikator klienta może się zmieniać co miesiąc, lista klientów docelowych jest generowana przez zapytanie SQL.

Jaka byłaby najlepsza technologia? Dotychczasowe studia:
SSIS: Nazwy plików lub kart programu Excel powinny być wstępnie zdefiniowane w zadaniach sterowania przepływem i przepływie danych i nie można ich konfigurować dynamicznie. Wynik to niesformatowany plik CSV (zły, ale może sobie z nim poradzić).
Przewyższać: Mogę umieścić zbiorcze dane dla wszystkich klientówExcel, ale nie jestem pewien, czy można napisać makro, które będzie pobierać unikalnych klientów, tworzyć odpowiednie karty i umieścić odpowiednie dane w każdym z nich.
SSRS: Funkcja subskrypcji jest wyłączona na poziomie korporacyjnym - nie może jej użyć :( Mimo to nie jest pewne, czy akceptuje parametry dynamiczne takie jak ta.

Czy tęskniłem za jakąś opcją? A może jest dostępna inna technologia?

Odpowiedzi:

2 dla odpowiedzi № 1

SSIS będzie tu najlepszą opcją z następujących powodów:

  1. Możesz ustawić zestaw szablonów excela, jeśli masz skończoną liczbę wzorów, a następnie użyj SSIS do zapełnienia i zmiany nazwy szablonu całkiem łatwo.
  2. Jeśli potrzebujesz dokładniejszej kontroli, możesz użyć Interop i C #, aby zrobić prawie wszystko, co chcesz w Excelu, jednak jest to bardzo powolne do wykonania i jest czasochłonne do zbudowania.
  3. Łatwo jest ustawić pętlę wykonawczą nazestaw danych (twoja lista klientów) i uwzględniać szablony lub karty, których potrzebują jako część zestawu danych, co sprawia, że ​​konserwacja i dodawanie nowych klientów jest prostsze i prawdopodobnie coś, co można przenieść na stronę biznesową.

Oczywiście SSIS ma także kilka wad, takich jak trudności z uzyskaniem współdziałania formatów kolumny excel podczas korzystania ze złącza Excel, ale nadal jest to prawdopodobnie najlepsza opcja.