Przejdź do głównej zawartości

Posty

Wyświetlanie QRCode

Ostatnio coraz większą popularnością cieszą się tzw. foto-kody, czyli dwuwymiarowe kody kreskowe. Umożliwiają one przechowywanie zakodowanych informacji, które możemy odczytać za pomocą czytnika kodów kreskowych lub telefonem komórkowym dzięki specjalnej aplikacji. W fotokodzie może być zakodowany nie tylko tekst lecz adres URL, wizytówka vcard lub wiadomość sms. Jednym z najbardziej popularnych standardów jest QR Code . Crystal Reports nie posiada niestety wbudowanej obsługi kodów dwuwymiarowych.  Przedstawię wam prosty sposób na rozwiązanie tego problemu, bez potrzeby kupowania dodatkowych bibliotek. Otóż Crystal Reports umożliwia wstawienie obrazka graficznego spod wskazanego adresu url. Natomiast Google udostępnia usługę do generowania kodów kreskowych o nazwie Google Chart API . Musimy tylko przygotować odpowiedni url i w rezultacie otrzymamy obrazek graficzny w formacie PNG. Przykładowo, aby zakodować tekst Crystal Reports wystarczy wpisać do przeglą...

Znikające obrazki

Ostatnio spotkała mnie niemiła niespodzianka w Crystal Reports. Postanowiłem wykorzystać to narzędzie do drukowania certyfikatów dla uczestników moich szkoleń. Umieściłem na raporcie obrazek przygotowany przez grafika i dodałem kilka pól dynamicznie pobieranych z bazy danych (imię, nazwisko, nazwa szkolenia itp). Certyfikat był gotowy! Jakież było moje zaskoczenie gdy po ponownym otwarciu tego raportu, obrazek zniknął! Nie było go widać ani na podglądzie ani na projekcie. Nieco podłamany przeszukałem sieć, czy ktoś również spotkał się z takim problemem. Okazało się, że nie jestem sam na świecie, gdyż w Crystal Reports jest od dawna bug, który objawia się tym, że  obrazki o dużych rozmiarach znikają. Korzystam z CR 2008 SP4 i jak widać nie został on poprawiony. Nie poddałem się jednak i znalazłem rozwiązanie: 1. Obrazek umieściłem na publicznym serwerze http 2. Wstawiłem zastępczą, małą grafikę na raporcie (Insert | Picture)  3. Wybrałem Format Graph...

Zagubiony Field Explorer

Podczas pracy z Crystal Reports zdarza się, że przez przypadek zamkniemy sobie podstawowe narzędzie pracy czyli Field Explorer. Wystarczy wówczas wybrać z menu View | Field Explorer i pracujemy dalej. Zdarzyło mi się jednak dzisiaj całkowicie zagubić Field Explorer i powyższa opcja nie dawała żadnego skutku. Rozgorączkowany tym faktem i wizją utraty możliwości wytwórczych przeszukałem sieć. Okazało się, że trzeba zaznaczyć Toolbox i wybrać opcję Reset all toolbars and explorers on next restart, a następnie uruchomić Crystal Reports ponownie. Uff, Field Explorer powrócił na swoje miejsce. Mogę znów tworzyć raporty...

Funkcje warunkowe

W większości raportów w formułach stosujemy funkcje warunkowe. Okazuje się, że Crystal Reports posiada wiele różnych konstrukcji warunkowych, które warto znać i dobierać do konkretnego przypadku. Funkcja if-else-then To podstawowa i najczęściej stosowana funkcja warunkowa w Crystal Reports. Przykład: Pamiętajcie, że typ formuły jest określany na podstawie pierwszej zwracanej wartości. W związku z tym nie możemy mieszać typów w jednej formule. Przykład niepoprawny: if {Orders Detail.Quantity} <> 0 then {Orders Detail.Quantity} else "nothing"  Taka formuła wyświetli błąd, gdyż Crystal spodziewa się wartości numerycznej na podstawie pierwszej pierwszej wartości. Zatem musimy dokonać jawnej konwersji typu. Przykład poprawny: If {Orders Detail.Quantity} <> 0 Then ToText({Orders Detail.Quantity}) Else "nothing"  Funkcje if-then-else można zagnieżdżać, ale lepiej zachować umiar. Przykład: Funkcja IIF Bardzo podobną k...

Dynamiczna zmiana rozmiaru i położenia

Podczas jednego z moich szkoleń, spotkałem się z pytaniem, w jaki sposób przesuwać pola zależnie od wartości. Otóż na każdym obiekcie (pole, grafika, itd.) pod prawym przyciskiem jest opcja Size and Position , która wyświetli okno: Jak widzicie, można tutaj wpisać dokładne położenie oraz rozmiar obiektu z ręki, ale co więcej, przy atrybutach X i Width można wpisać formułę. I tutaj napotykamy problem... Wpisując tam przykładowe wartości rzędu 10, 20 wydaje się, że to w ogóle nie działa. Obiekt ani drgnie... Myślałem swego czasu, że to bug, i że poprawią to w kolejnym Service Packu, aż wreszcie uważnie wczytałem się w dokumentację... Okazuje się, że wszystko jest OK. Po prostu wartość wpisana za pomocą formuły, przesuwa w prawo (X) lub poszerza pole (Width) względem położenia obiektu, a nie raportu . Ale to nie wszystko... Wartości tych nie podajemy w centymetrach ani pikselach, lecz w ... twipsach! Cóż to takiego??? Twip to taka specjalna jednostka miary, używana ...

Crystal Reports 2008 Service Pack 4

Właśnie zainstalowałem najnowszy Service Pack 4 do Crystal Reports 2008 oznaczony jako 12.4.0.966. Niestety nigdzie nie udało mi się znaleźć informacji co zostało poprawione. Mam tylko nadzieję, że będzie się mniej wieszał i wykresy będą sprawiały mniej problemów. Co ciekawe, automatyczne sprawdzanie aktualizacji nie wykryło tego nowego Service Packa. Musiałem osobiście (na szczęście zdalnie) odwiedzić witrynę SAP'a i pobrać odpowiedni plik. W razie czego podaję linka .