Który z Crystal Reports i SSRS (SQL Server Reporting Services) jest lepszy w użyciu?
Który z Crystal Reports i SSRS (SQL Server Reporting Services) jest lepszy w użyciu?
Odpowiedzi:
Z jednej strony Crystal Reports to kupa drogich i przereklamowanych kupek osła, z drugiej strony SSRS faktycznie spełnia wszystkie obietnice, jakie stawia marketing CR - i to za darmo.
Moja pogarda dla CR wynika z wieloletniego przymusu używania okropności. Naprawdę nie ma sensu szczegółowo opisywać całkowitej odrażającej CR, kiedy mogę podać odniesienia, takie jak Clubbing the Crystal Dodo lub Crystal Reports Sucks Donkey Dork (nie tak zabawne, ale raczej piśmienne i uzasadnione szczegółami technicznymi).
Wolny?! Tak. Nie musisz nawet kupować MS SQL Server, aby go uzyskać - możesz zainstalować SQL Express z usługami zaawansowanymi. Jest to dostępne do pobrania, które obejmuje usługi SQL Server Reporting Services . Chociaż SQL Express ma ograniczoną liczbę jednoczesnych użytkowników, których może obsługiwać, istotne są następujące obserwacje:
Licencja na SSRS uzyskana w ramach SQL Express wymaga jedynie, aby została ona wdrożona jako część SQL Express. Nic nie zabrania połączenia z innymi źródłami danych ani nie wymaga, aby raport uzyskał dane z SQL Server.
Wyżej wymieniona wersja usługi SSRS nie ma żadnych wewnętrznych ograniczeń dotyczących połączeń użytkowników. Wszystkie ograniczenia dotyczą aparatu bazy danych SQL Express.
SSRS korzysta z ADO.NET, który zawiera po wyjęciu z pudełka sterowniki dla Oracle, Jet (Access), OLEDB i ODBC
W ten sposób możesz podłączyć bezpłatną wersję SSRS do dowolnego zaplecza, do którego możesz podłączyć ADO.NET, w tym (na przykład) MySQL. Rory powiedział mi w komentarzu poniżej, że to nie jest obsługiwane. To prawda, ale nie mogę znaleźć niczego w licencji, co by tego zabraniało i chociaż sterowniki nie są dostarczane przez SSExpress , z pewnością są dostarczane przez większość wersji Visual Studio i możesz je wysłać w zestawie instalacyjnym. Może to nie jest wyraźnie obsługiwana konfiguracja, ale co z tego? Nawet jeśli masz pełną licencję na MSSQL, wymagałoby to trochę dużo, aby oczekiwać, że Microsoft pomoże ci porozmawiać z jakąś zewnętrzną bazą danych (nie wspominając o nieco dziwnym).
W pracy intensywnie korzystam z usług SSRS, zarówno w przypadku raportów skierowanych do wewnątrz, jak i do raportów wychodzących na zewnątrz osadzonych w aplikacjach ASP.NET, które świadczą usługi biurowe dużej liczbie płacących klientów. W naszym przypadku zdarza się, że magazyn zapasowy jest licencjonowaną kopią Microsoft SQL Server 2008, ale jest to uboczne z technicznego punktu widzenia naszego rozwiązania do raportowania.
Istnieje długa lista funkcji, które Crystal Reports twierdzi, że obsługuje, ale które albo nie działają, albo wymagają oszałamiająco drogiej licencji, jeśli chcesz mieć więcej niż pięciu użytkowników. Nie możesz nawet ufać CR, że poprawnie wykonuje SQL. SELECT COUNT(*) FROM SOMETABLE WHERE 1=0
powinien dać wynik zero, ale daje jeden . Wbudowany silnik zapytań jest uszkodzony, a zespół, który spieprzy coś, co grupa amatorów może zrobić za darmo (np. MySQL), nie ma nadziei na uzyskanie czegoś, co można opisać jako wydajność ze swojego kodu.
A oni tego nie robią. Zło wycieka z pamięci jak wiadro bez dna, a jeśli użyjesz narzędzi do profilowania SQL, okaże się, że jest to spektakularnie nieefektywne.
Jeśli chodzi o rzekome wsparcie, osobiście mogę zaświadczyć, że błędy zmiany rozmiaru okien dialogowych nie były korygowane przez dziesięciolecia po tym, jak zostały po raz pierwszy publicznie udokumentowane. Jeśli wyjmiesz swoją kartę kredytową i zapłacisz wymuszony okup (ja też chciałbym, żeby przystojniak zapłacił za taki horror), znajdziesz się w rozmowie z kimś, kto twierdzi, że nazywa się David, ale w niewytłumaczalny sposób wymawia to „Dah-feet”, a kto nawet nie rozumie twojego pytania, a tym bardziej nie ma odpowiedzi.
Sytuacja obsługi SSRS jest dość podobna, ale w rzeczywistości działa, więc tak naprawdę nie potrzebujesz wiele.
Z drugiej strony SSRS robi wszystko, do czego twierdzi CR. Nie jest pozbawiony błędów, ale jest ich zachwycająco niewiele i rzadko przeżywają więcej niż jeden cykl wydawniczy.
Interfejs użytkownika projektanta usług SSRS jest hostowany w środowisku IDE programu Visual Studio. Jest atrakcyjnie przedstawiony w typowym stylu Microsoft, ale co więcej, jest dość dobrze przemyślany i zawiera kilka prostych, ale fundamentalnych odstępstw od tradycyjnych projektantów raportów. Na przykład, aby przedstawić dane tabelaryczne, należy zdefiniować tabelę, zamiast majstrować przy poszczególnych polach tekstowych. W rezultacie nie musisz się pieprzyć, próbując je wyrównać, a umieszczanie na nich granic jest trywialnym ćwiczeniem z arkusza stylów.
SSRS faktycznie robi wszystko, do czego twierdzi CR, jest niedrogi, istnieje obszerna niezawodna dokumentacja techniczna, została zaprojektowana do rozszerzania (również udokumentowana) i można ją podłączyć do wszystkiego, do czego można uzyskać sterownik ODBC. To nie myślenia.
W rzeczywistości wygląda na to, że nakładające się grupy można również zrobić za pomocą SSRS2005, chociaż nigdy o tym nie wiedziałem. Zastanawiam się, czy ktoś kiedykolwiek złamał problem z pozycjonowaniem w stosunku do dołu?
Używałem Crystal Report do wersji 10 i zawsze robiłem z powodzeniem rzeczy, które chciałem, razem z aplikacjami ASP.NET. Jego wyniki w Internecie są naprawdę dobre, jak WYSIWYG, a eksport do Excela i PDF jest również dokładny. Druk jest również cudownie poprawny.
Niedawno pracowałem nad SSRS 2005 od około roku i żyję, aby być świadkiem wielu braków, które musiały być również dostarczone po wyjęciu z pudełka. Wynik sieciowy SSRS różni się znacznie w zależności od różnych przeglądarek i rozdzielczości różnic i łatwo spowodowałby chorobę programisty. Co więcej, problemy z przewijaniem w przeglądarce raportów bardzo wcześnie doprowadzałyby użytkownika końcowego do szału, ponieważ jest ona oparta na HTML przy użyciu IFRAME. ( Uwaga: Crystal 13 używa IFRAME w przeglądarce internetowej, która cierpi na sporadyczne zawijanie tekstu i nakładanie się). Eksport wcale nie jest dobry. Nie można wyrównywać obrazów do lewej lub do środka w komórkach ani określać kolorów tła obrazów. Nie można wyśrodkować całej treści raportu. Dla możliwości bawiłem się godzinami renderowanym kodem HTML i wymyśliłem dokładne zamienniki, aby to działało, ale te proste poprawki nie były znane programistom SSRS, ponieważ prawdopodobnie nigdy nie używali SSRS dla siebie.
Co więcej, w aplikacjach internetowych musisz znosić zły interfejs użytkownika dla parametrów od razu po wyjęciu z pudełka. Po prostu całkowicie go usunąłem, a koszt tworzenia go na stronach ASPX skłonił mnie do zaprojektowania raportów tabelarycznych w DataGrids zamiast przy użyciu ObjectDataSource i techniki stronicowania bazy danych. Nie możesz dopasować parametrów do swoich potrzeb. Błędy w sekcjach parametrów powodują powrót do pełnych raportów bez żadnych zmian. Stronicowanie z grupowaniem działa podstępem, ale sortowanie kończy się niepowodzeniem w przypadku całego zestawu danych. Przy każdym średnim lub zaawansowanym poziomie wymagań interfejsu użytkownika, SSRS kosztuje tyle czasu, aby dowiedzieć się, że jest to po prostu niemożliwe. Ponieważ jest mniej użytkowników usług SSRS, społeczność internetowa nie ma dobrych rozwiązań prostych problemów. Nie zapominajmy, że dobrą stroną SSRS jest jego wdrożenie, wbudowane powiadomienia, buforowanie i konfiguracja, ale brak interfejsu użytkownika do wygrania.
BOTTOMLINE jest takie, że widziałem, jak SSRS frustruje Cię tylko z powodu braku reakcji zespołu pomocy technicznej Microsoft, kiedy muszą powiedzieć „przepraszam! nie teraz ”po miesiącu. SSRS 2008 również nie ma wielu z tych problemów naprawionych od razu. Co więcej, przejście na SSRS '08 oznacza również całkowitą migrację platform zaplecza. Mając na uwadze równanie, że im częściej używasz oprogramowania, tym bardziej staje się ono dojrzałe z czasem, Crystal jest i tak o wiele lepszym wyborem, ponieważ SSRS szybko kumuluje koszty samodzielnego naprawiania błędów.
Możesz wdrożyć aplikację przy użyciu usług Reporting Services, dołączając 3 pliki DLL. To ogromna korzyść. (Uwaga - musisz pobrać jeden z 3 plików DLL z GAC.)
W przypadku Crystal Reports należy zainstalować środowisko wykonawcze na każdym komputerze, na którym będzie działać aplikacja (witryna internetowa lub aplikacja kliencka).
Usługi Reporting Services mają wszystkie funkcje, których potrzebuje większość ludzi, a ich wdrożenie jest DUŻO łatwiejsze. Nigdy nie będę korzystać z Crystal Reports, chyba że będę musiał.
Ponieważ ten wątek ponownie się otworzył, dodam moje dwa centy. Musiałem używać Crystal przez około trzy lata podczas wersji 7 i 8 dni. Nienawidziłem każdej jego minuty. Widziałem trochę nowszych wersji i nadal mi się to nie podoba.
Nie podoba mi się to tak bardzo, że boli mnie, gdy mówię: z mojego doświadczenia Crystal lepiej nadaje się do złożonych raportów niż SSRS. Współpracownik i ja desperacko próbowaliśmy uzyskać średnio złożony układ raportu do pracy w SSRS i zrezygnowaliśmy. Mam wrażenie, że produkt - tylko moja opinia, pamiętaj - jest taki, że nie jest jeszcze gotowy na najlepszy czas.
Crystal sprawi, że nienawidzisz swojego życia i będziesz szukać innej pracy, ale jest powód, dla którego jest tak wszechobecny: działa.
Z mojego doświadczenia wynika, że usługi raportowania są znacznie lepsze. Jest to lepsze środowisko, ale najlepsze ze wszystkich połączeń (źródeł danych) są oddzielne od raportu i można je udostępniać. To znacznie upraszcza wdrażanie między środowiskami.
Użyłem obu, dodam kilka punktów do tego, co już zostało powiedziane:
W przypadku prostych rzeczy polecam domyślnie SSRS. Crystal jest nieco nadęty i dziwaczny.
Crystal może łatwo eksportować do formatu MS Word (.doc). Z mojego doświadczenia wynika, że klienci często tego chcą.
Jeśli formatowanie jest ważne, Crystal może być lepszy. Na przykład raporty SSRS nie mogą zawierać więcej niż jednego typu tekstu w jednym polu tekstowym. Oznacza to, że nie możesz mieć, powiedzmy, komentarza u góry raportu, który zawiera zarówno kursywę, jak i zwykły tekst. Crystal może to zrobić:
Uwaga: ten raport zawiera dane od daty rozpoczęcia do daty zakończenia włącznie z tymi datami.
SRSS nie może (bez wielu nakładających się pól tekstowych). Kiedyś otrzymałem 20-stronicowy dokument do przekonwertowania na raport z danymi dla kilkunastu wykresów i tabel. Zacząłem w SSRS, ale zdałem sobie sprawę, że w Crystal mogę po prostu skopiować i wkleić zakodowane na stałe fragmenty raportu prosto ze słowa, z kolorowymi nagłówkami i wszystkim innym, i zaoszczędzić dni pracy. Więc Crystal ma pod wieloma względami lepszego „projektanta”.
Aktualizacja:
Najwyraźniej oba te problemy zostały naprawione w obecnym SRSS. Czy ktoś chciałby to skomentować dalej?
Zgadzam się z @Carltonem częściowo z powodów, które opisuje. Uważam też, że usługi raportowania są bardziej dojrzałym produktem (mimo że Crystal Reports istnieje dłużej). Model Testuj i wdrażaj jest dość rozbudowany, a wbudowana możliwość śledzenia wykorzystania raportów jest bardzo pomocna.
Dużo łatwiej jest mi również projektować raporty w usługach Reporting Services - Microsoft nauczył się, jak zbudować dobre IDE, podczas gdy Crystal IDE zawsze wydawało się następstwem przemyślenia (choć to lepsze niż poród, który był tym, czym był) .
Edycja: Dodatkowe przemyślenia Myślę również, że w sklepie Windows, SSRS oferuje wszelkiego rodzaju słodkie integracje z systemem operacyjnym i SQL Server. Możesz dość łatwo polegać na zestawach SQL w celu ponownego wykorzystania wbudowanego kodu w usługach SSRS, a integracja z modelem zabezpieczeń Active Directory sprawia, że zabezpieczanie raportów jest bardzo łatwe.
Człowieku ... moja firma ma tak wiele kryształowych raportów ... a wcześniejsza firma też. Od wersji 8.5 do 11.5. Można by powiedzieć, że mają już nogę w drzwiach. Myślę, że CrystalReportViewer to parujący kawałek badziewia, ale działa (w większości).
Po przeczytaniu niektórych z tych odpowiedzi przechodzę na SSRS do następnego projektu raportowania! Napis na ścianie ... MS upuści Crystal z VS i zastąpi SSRS. Jedyne, co będzie do niczego, to kiedy MS zacznie za to ładować.
EDYCJA: Dzisiejsze zamieszanie z SSRS i wygląda całkiem obiecująco. Muszę przyznać, że projektant trochę się przyzwyczaił ... CR Designer wyróżnia się łatwością obsługi. Można powiedzieć, że jest to przeznaczone dla programistów, gdzie CR jest skierowany do projektantów raportów.
EDIT2: SSRS naprawdę nie spełnia moich potrzeb w zakresie raportowania. Projektowanie raportów jest do niczego, gdy chcesz wyświetlić podgląd, a monit o parametry nie jest dostępny dla wersji autonomicznej. Czy jest lepszy sposób na ich zaprojektowanie ... najlepiej nie w VS?
Czy myślałeś o alternatywie? Jeśli chcesz korzystać z funkcji Crystal Reports, ale nie chcesz za to płacić, możesz rzucić okiem na Crystal-Clear, które jest narzędziem raportowania opartym na Javie, obsługującym również szablony Crystal Reports. Jest wyposażony w projektanta GUI, a źródła danych można również konfigurować dla każdego systemu. (Prawie jak ODBC, wystarczy ustawić nazwę połączenia, a połączenie jest skonfigurowane w systemie).
Zastanawiam się, dlaczego nikt nie wspomniał o jednym dużym problemie z CR - że po prostu zawodzi w kontroli źródła lub środowisku zespołowym. Popraw mnie, jeśli się mylę, ale naprawdę szukałem narzędzi do porównywania raportów. Jest jeden (wydany około rok temu), ale po prostu nie działa dobrze - nie dlatego, że jest zły, ale (chyba) dlatego, że CR po prostu nie ujawnia poprawnie struktury raportu lub coś takiego ... Próbowałem wyeksportować .rpt do XML, ale jest niezgrabny i zły. Próbowałem nawet napisać własny plik porównawczy .rpt.
Nie chodzi tylko o rozwój zespołu; Nawet jeśli jest jeden programista, utrzymanie wersji raportów jest koszmarem, a jeśli klient zdecydował się dodać kilka rzeczy lub zmienić kilka kolorów, jesteś teraz przeklęty, aby śledzić każde pole tekstowe, ponieważ absolutnie nie ma sposobu, aby dowiedzieć się o zmianach.
Format RDL jest znacznie bardziej przejrzysty i otwarty. A to może być bardzo dużą zaletą.
Używam obu od lat. Crystal informuje, że opłaty są zbyt wysokie i staram się używać SSRS, gdy tylko jest to możliwe. Jednak SSRS nie obsługuje Firefoksa ani żadnej innej przeglądarki, tylko IE, to jest problem. Raporty w Crystal wyglądają ładniej, a eksport jest potężniejszy, użytkownicy chcą dobrego eksportu do programu Word. Jeśli jesteś programistą Java, użyłbym Jasper Reports, jest darmowy i używa języka Java do funkcji.
Użyłem obu (Crystal Reports 2008 i SSRS 2008), ponieważ nie zauważyłem tego wątku na czas.
Oprócz konfiguracji, która była nieco łatwiejsza w CR, nie zauważyłem ani jednej funkcji, w której CR jest co najmniej na równi z SSRS. Tak, Crystal Reports jest naprawdę takie złe.
Moim zdaniem zdecydowanie najgorszą częścią CR jest IDE. Ale są też inne zabójcze funkcje, takie jak słaba wydajność SQL i strasznie wyglądające wykresy (przynajmniej w wersji CR dołączonej do VS 2008), które również są godnymi uwagi funkcjami "zabójczymi".
Pracowałem zarówno z CR, jak i SSRS i to, co znalazłem.
Crystal Reports działa we własnej pamięci, podczas gdy usługi SSRS działają w ograniczonej pamięci programu SQL Server.
Raport kryształowy jest zbyt drogi. Ostatnio obniżyli cenę do 250 $, myślę, że w odpowiedzi na wydanie SSRS 2008.
Usługa SSRS jest bezpłatna.
Największy powód, dla którego raport Crystal rozwija się:
Możesz zaprojektować 80% raportów w projekcie przy użyciu SSRS. Ale dla pozostałych 20% musisz użyć innego narzędzia raportowania. Z tych 20% raportów korzysta nikt inny niż menedżerowie najwyższego szczebla, dyrektorzy i prezes. Ich wymagania nigdy nie mogą zostać podważone, a CR wykonuje tam wspaniałą pracę.
Raport Crystal jest nadal oparty na modelu COM. co jest uciążliwe dla a **.
W raporcie Crystal nie brakuje możliwości ani funkcji. To koń roboczy SAP. Jednak wiele jego klas jest chronionych i nie zapewnia dostępu programistom. To jest zamierzone. Ludzie SAP są tak chciwi, że chcą kontrolować każdą funkcję i żądać dodatkowej fortuny za ujawnianie klauzul i obiektów programistom w ramach specjalnych umów licencyjnych. Po prostu debuguj i szybko obserwuj obiekt ReportDocument w VS, będziesz wiedział, że pomimo wszystkiego, co jest dostępne w obiekcie, prawie nie możesz ich użyć w swoim kodzie !!
Jeśli chodzi o problemy z GUI i CSS, oczekiwanie obiektu COM, który jest przeznaczony do precyzyjnego drukowania, do prawidłowego renderowania w każdej przeglądarce jest kwestią sporną, ponieważ nawet prosty element div renderuje się inaczej w różnych przeglądarkach.
Pracuję z raportami Crystal od 7 lat i przeklinam je cały czas, aktywnie badając wszystkie inne alternatywy. Ale nie znalazłem jeszcze czegoś tak elastycznego jak Cystal Report. Dla większości pracy SSRS jest dobre. Ale w przypadku pulpitów nawigacyjnych, złożonych raportów z podraportami, bilansów, sald próbnych nigdy nie będę tracić czasu w SSRS.
Po prostu spróbuj wyszukać w Trendach Google w Crystal Report. Od 6 lat systematycznie spada. z pewnością przyszłość CR nie wygląda dobrze.
Ale hej ! MS, SAP i ORACLE nadal wspierają Crystal Report jako podstawę swoich aplikacji !! i żaden produkt BI nie jest tani.
Czuję się jak Marsjanin mający rozległe i pozytywne (ale czasami złożone) doświadczenie z Crystal Reports, które jest teraz całkowicie zintegrowane z naszym interfejsem użytkownika (VBA), gdzie żądane parametry raportów i filtry są przejrzyście dziedziczone z interfejsu użytkownika ...
Jeśli rozważasz usługę SSRS i obawiasz się, że jest ona „bezpłatna”, ale musisz kupić i dodatkową licencję na SQL Server lub dystrybuować SQL Express, możesz być zainteresowany raportami Data Dynamics
Oferuje wszystko, co jest w SSRS i dodaje raporty główne, motywy, region danych kalendarza, wizualizację danych (Databar, Sparkline, Iconset, ColorScale, ...), kompletny model obiektowy dla maksymalnej elastyczności programowania, darmowy projektant raportów użytkownika końcowego, kod kreskowy element raportu, eksport szablonów Excela i scalanie danych i wiele więcej. Możesz pobrać wersję próbną z Data Dynamics (obecnie GrapeCity) i wypróbować ją z kilkoma raportami, nie będziesz rozczarowany.
Pracowałem teraz z oboma i widziałem ich obok siebie. Crystal był dobry, ale kosztował przez lata. Jest niezgrabny, ale przyzwyczailiśmy się do niego i zaznajomiliśmy z interfejsem. Nie pracuję w środowisku LAMP, ten dom współpracuje z MS Dynamics i MAS z kilkoma dość dużymi klientami.
Uwielbiam nie martwić się o instalację klienta dla SSRS. Dystrybucja jest znacznie łatwiejsza, a udostępnianie źródeł danych i modeli raportów działa dobrze.
Jeśli chodzi o przeglądarkę, widziałem doskonale wyrenderowane wskaźniki SSRS 2008 w Firefoksie. Bez problemu wyeksportowałem te mierniki do programu Excel. Wdrażałem raporty z MOSS i bez niego na telefony. Możliwość wykorzystania uwierzytelniania systemu Windows do wdrażania raportów, a także ich ukrywania jest fantastyczna. Obiekt przeglądarki raportów w VS 2005 i późniejszych jest słodki.
Ludzie, zapoznaj się z wersją, o której mówisz!
Na przykład wbudowane bezpłatne raportowanie RDLC w VS2008 (tak samo jak SQL Server 2005 Reporting Services) nie obsługuje pól powiązań w nagłówku i stopce i jest to podstawowa funkcja!
Teraz konwertuję ogromny raport z tego VS2008 Reporting / RDLC 2005 na Crystal Report 2008 Basic (który jest dostarczany z VS2008), ponieważ nie ma on tej podstawowej funkcji.
Jestem przekonany, że usługi Reporting Services 2.0 / RDLC 2008 (dostarczane z Visual Studio 2010), a jeszcze lepiej, najnowsze Reporting Services 3.0 / RDLC 2010 ( które są dostępne ZA DARMO w SQL Server 2008 R2 Express z usługami zaawansowanymi ) są lepszymi rozwiązaniami SSRS.
SQL Server R2 Express z usługami zaawansowanymi (BEZPŁATNYM) http://www.microsoft.com/express/Database/InstallOptions.aspx
W tej chwili tworzę Proof of Concept for Reporting Services 3.0 / RDLC 2010 i opublikuję wyniki.
Usługi raportowania (SSRS / RDLC) są zawsze łatwiejsze w obsłudze, ale mają swoją cenę. W przypadku prostych raportów zawsze wybieraj SSRS / RDLC. W przypadku złożonych raportów ze szczegółami wzorcowymi, kontrolą strony itp., Przygotuj PoC tych scenariuszy z najnowszymi wersjami SSRS / RDLC (2008,2010), a także z Crystal Reports.
Dla tych, którzy porównują starą wersję Crystal Reports XI i Reporting Service 1.0, zobacz ten post z 2005 roku:
Usługi SQL Server Reporting Services i Crystal Reports: analiza konkurencji http://www.crystalreportsbook.com/SSRSandCR_Conclusion.asp