Crystal Reports - narzędzie do raportowania - Technical Forum - PUG Poland - Progress Community

Crystal Reports - narzędzie do raportowania

 Technical Forum

Crystal Reports - narzędzie do raportowania

  • Witajcie,

    Ostatnio kilku klientów zwróciło się do nas z podobnym pytaniem, związanym z raportowaniem w Progress OpenEdge.

    Jak wiadomo, do wersji 9 był Report Builder - narzędzie Progressa. Później Progress rekomendował Crystal Reports, narzędzie zewnętrzne, bardzo czytelne, intuicyjne, które dzięki kontrolkom OCX dawało możliwość osadzania raportów w aplikacjach ABL.

    Obecnie Crystal Reports jest własnością SAP, który wstrzymał wsparcie dla OCX. Wspiera natomiast środowisko Java i .NET, a .NET to już blisko aplikacji ABL.

    Używając środowiska OE Developer Studio można otworzyć w aplikacji ABL wygenerowany wcześniej raport. Bardzo przydaje się znajomość programowania w .NET.

    Samo tworzenie raportów w CR na bazie OE wymaga połączenia poprzez ODBC.

  • Wykorzystuję  w aplikacji OE 10.2B01 (Win32) raporty tworzone w CRXI R2, z aplikacji są one dostępne właśnie poprzez kontrolkę OCX. Rozważam przejście na nowsze wydanie Crystala oraz OE 11, potrzebowałbym informacji nt. - rodzajów/cen licencji najnowszego Crystala. A także jakiś minimalnie skomlikowany przykład dla OE 11 - jak można wywołać z programu *.p raport w Crystalu, tak żeby pojawił się w oknie/ramce/viewerze podobnie jak było to możliwe z zastosowaniem OCX (OCX dla CR nie działa w OE 11).    

  • Witaj Marku na PUGu,

    Odpowiedź na pierwsze Twoje pytanie jest prosta. Na całą firmę wymagana jest jedna licencja developerska o wartości 479 Euro.

  • Wracam do pytania odnośnie osadzania raportów we własnych aplikacjach.

    W ABL można zrobić to przez formy .NET.

    Należy pobrać i zainstalować Crystal Reports Runtime Engine, zawierający dll dla CR.

    Ja pobrałem ze strony: www.jeff-net.com/.../index.php

    Nastęny krok, lub raczej zestaw czynności został dokładnie opisany w bazie wiedzy pod hasłem:

    How to add the .NET Crystal Reports Viewer into a form?

  • ReportViewer.cls

    W powyższym artykule definiujemy klasę ReportViewer.cls.

    Aby otworzyć konkretny raport należy przekazać odpowiednie parametry lub zrobić to bezpośrednio w klasie.

    Załączam przykład dla c:\Raport1.rpt.

  • runForm.p

    Aha, jeszcze przykład jak uruchomić klasę jak plik procedury (.p).

    Załóżmy, że chcemy uruchomić formę myForm.cls.

    Wystarczy uruchomić prosty załączony program runForm.p.

  • Dziękuję za przykłady ilustrujące możliwość wywołania "nie OCX-owego" viewera Crystala z aplikacji ABL. To co byłoby mi faktycznie potrzebne, to przykład tak opracowany, by nie było konieczne korzystanie z Visual Designera (mam "stary" typ licencji Visual Studio - nie zawierający Visual Designera, a jedynie AppBuilder) oraz bardziej rozwinięta sekcja dotycząca wywołania raportu - chodzi o dynamiczne przyłączenie bazy (lub kilku baz) bezpośrednio przed uruchomieniem raportu oraz dynamiczne podstawienie parametrów raportu. Na pewno taki przykład można opracować - w końcu Progress wszystko może :). Natomiast raport wywołany tak jak w podanym przykładzie - przyłącza bazę (lub bazy), która była na sztywno zapisana w trakcie projektowania raportu (design time), a wszystkie ewentualne parametry wywołania raportu użytkownik musi wklepać z ręki w pojawiającym się okienku dialogowym. W wielu zastosowaniach - cześć (lub wszystkie) parametry raportu wynikają z kontekstu wywołania z aplikacji i uzytkownik nie powinien ich własnoręcznie wprowadzać. Jeśli chodzi o przyłączanie baz, to w Crystalu jest to dodatkowo skomplikowane w przypadku np., gdy raport korzysta z kilku baz, a także w przypadku użycia podraportów.

  • Witam ..

    Widzę że masz problem z Crystall Report ..

    My w INFO-KOR używaliśmy tego narzędzia ale trochę inaczej.

    Podstawowe założenie: że raporty będą w formacie PDF i że na żadnym stanowisku roboczym nie musisz instalować Crystall Report. Muszę nadmienić że korzystamy z AppServer'a.

    Problemem było przyłączenie się do bazy, więc ominęliśmy to zrzucając dane do DATASET'a a ten DATASET w postaci pliku był źródłem danych do raportu.  Skończyły się problemy z ODBC , z licencją  pod SQL, zmiana struktury  itp.

    Uruchamiany był raport podajemy parametry i otrzymujemy plik PDF który prezentujemy klientowi.

    Wiem, że nie pozwala to na interaktywne raporty, ale to odrzuciliśmy w początkowym założeniu.

    Jeśli jeszcze coś Ci mogę pomóc to dzwoń :

    Paweł Korczak 604 224 394

  • Problemem nie jest Crystal czy SQL, tylko trudność zmiany implementacji prezentacji raportu jaką zastosowałem ileś lat temu w aplikacji, bazującej na technice viewera OCX (sugerowanej wtedy przez Progress Support w KB), która "wyleciała z obiegu" w OE 11. Problemem nie jest też źródło danych (plik czy baza) ani format prezentacji (pdf czy Crystal Viewer). Problemem jest brak  (mimo pewnego szkicu w KB i przykładu Piotrka, których nie udało mi się zaadoptować do moich potrzeb) - prostej instrukcji/przykładu jak zaimplementować "wywołanie raportu w viewerze" w dostępnej obecnie technice.

    Jeśli już ograniczyć się do statycznego pdf jako formatu prezentacji i źródeł danych do raportów w postaci plików (nie koniecznie muszą być generowane z Data Setów) - to pozostaje pytanie czy wogóle warto do tego zaprzęgać Crystala.

  • Dostałem zapytanie od klienta czy to prawda, że do tworzenia raportów w VS 2013 trzeba mieć wersję Professional - Express nie wystarczy. Zainstalowałem Crystal Reports for Visual Studio 2013

    ( www.aspsnippets.com/.../Download-Crystal-Reports-for-Visual-Studio-2013.aspx )

    W Visual Studio powinienem mieć teraz opcję Add => New Item => Reporting => Crystal Report

    ale nic z tego, nie ma. Mam pytanie do kogoś kto jest biegły w VS i .NET czy tak rzeczywiście jest, że trzeba mieć wersję Profi? Mogę dodać assemblies Crystala, ale co dalej?

    Dzięki.