2010-01-21 11 views
6

Przy użyciu programu SQL Server Reporting Services (raporty klienta), kiedy raport Client (rdlc) Otwiera Visual Studio Ładunki całych zbiorów danych aplikacyjnych,Jak przyspieszyć ładowanie DataSetów

jak przyspieszenie załadunku to wszystkie zbiory danych lub jak zmienić proces ładowania tylko określonego zestawu danych do użycia w raporcie?

Odpowiedz

1

Bulk Insert (lub narzędzie bcp) jest Twoim Przyjacielem do szybkiego importu danych. Prawdopodobnie będziesz musiał napisać moduł ładujący dane w jakimś języku.

0

I można zrozumieć, że pytanie źle, ale na Win Forms byłem ładowania potrzebne dane ustawia ręcznie. Zasadniczo mam metodę, która ładuje odpowiednie dane z mojej bazy danych, dołączyć potrzebne zestawy danych do mojej przeglądarki raportów za pomocą Me.ReportViewer1.LocalReport.DataSources.Add, a następnie po prostu wyświetlić mój raport za pomocą Me.ReportViewer1.LocalReport.ReportEmbeddedResource. Moje raporty są zasobami osadzonymi, ale możesz też załadować je z pliku, po prostu nie pamiętam z mojej głowy. Po załadowaniu wszystkiego, wywołaj RefreshReport i wyświetli się raport. Cóż, to są główne punkty, nie mam mojego kodu, ale wiem, że to są podstawowe kroki.

Obecnie badam, jak ładować zestawy danych w locie, gdy użytkownik przegląda raport. W tej chwili zajmuję się przechwytywaniem zdarzenia ReportError, sprawdzam, jaki raport próbuje się wyświetlać od nadawcy (jest to obiekt przeglądarki raportów) i ładuję zestaw danych za pomocą powyższego. Jedynym problemem, który mam, jest to, że nie mam ekranu ładowania, gdy ładuję zestaw danych w tym momencie, więc wygląda na to, że moja aplikacja zawiesza się. Nie zorientowałem się, jak wrócić do tego okrągłego ekranu ładowania, ale na razie mam okno ładowania, które jest wyświetlane podczas ładowania. pamiętaj, że kiedy pojawi się błąd, raport, który próbuje być wyświetlony, jest już ustawiony jako lokalna repot, więc wszystko, co musisz zrobić, to mieć case/if statment sprawdza raport i ładuje dane w razie potrzeby.

0

Nie można ustawić parametru domyślnego na coś, co przestaje zwracać wiele, i zmienić go na rzeczywisty w czasie wykonywania?

Powiązane problemy