Wydruk etykiet i raporty
Wstęp
Aplikacja AMAGE posiada bogaty zasób wewnętrznych szablonów raportów oraz mechanizmów automatycznie generujących etykiety. Niemniej szablony etykiet nie zawierają wszystkich wariantów etykiet dostępnych na rynku. Każdy klient posiada własne możliwości wdrażania systemu oraz zastosowania własnych metod oznaczania elementów i urządzeń. W związku z powyższym aplikacja AMAGE udostępnia możliwość tworzenia własnych formatów etykiet, które zostaną wykorzystane przez aplikację do generacji i wydruku etykiet z danymi.
Niniejszy dokument opisuje sposób projektowania etykiet, wymagane/dostępne dane dla klienta oraz sposób integracji w aplikacji AMAGE.
Oprogramowanie
Do projektowania nowych formatów etykiet służy oprogramowania Jaspersoft Studio. Oprogramowanie jest oprogramowaniem darmowym do użytku komercyjnego. Oprogramowanie można pobrać z witryny producenta:
-
Jaspersoft Studio - http://community.jaspersoft.com/project/jaspersoft-studio
Po pobraniu, instalacji i uruchomieniu aplikacji pojawia się okno projektanta raportów/etykiet.
Konfiguracja wersji raportów projektanta etykiet
Aktualna wersja aplikacji AMAGE wykorzystuje silnik raportów w wersji 6.2.0. Aby dowiedzieć się, jaką wersję posiada się po zainstalowaniu aplikacji Jaspersoft studio należy przejść do informacji o programie. Wersja projektanta etykiet rysunek 1. W zależności od wersji aplikacji projektanta etykiet należy wybrać wersję biblioteki zgodną z aplikacją AMAGE.
Aby przygotować raporty zgodne z wersją wymaganą przez aplikację AMAGE należy ustalić ścieżkę dostępu do biblioteki raportów zgodną z wykorzystywaną przez aplikację AMAGE. Aby to zrobić należy wybrać Properties z zakładki "Project". W nowo otwartym oknie przejść do "Configure Workspace Settings" → "Manage Jaspersoft Versions" rys. 2
W Manage Jaspersoft Versions klikamy na "add from path", a następnie na "Browse" W oknie przeglądarki plików szukamy katalogu z zainstalowaną aplikacją AmageSystems. Przechodzimy do katalogu amageapplication → modules. W tym katalogu zaznaczamy katalog "ext" i naciskamy "Ok".
Kompilacja raportu/etykiety po ustawieniu wersji biblioteki raportów dostępna jest w menu kontekstowym kompilacji rys. lub w zakładce "Project → build all"
Tworzenie etykiet
Etykiety do wydruku na elementy wymagające identyfikacji mogą posiadać następujące parametry:
-
CODE – kod etykiety 1D/2D w formie uproszczonej tj. zawierającej tylko numer porządkowy, bez numeru klienta i instancji AMAGE np. „0000001”
-
BARCODE – pełny kod 1D/2D do wydruku jako kod DATAMATRIX. Kod zawiera typ obiektu, numer klienta oraz numer instancji AMAGE wraz z numerem porządkowym.
-
TYPE – typ obiektu. W przypadku elementów jest to typ elementu, w przypadku produktów typ produktu. Dla lokalizacji i grup elementów pole pozostaje puste.
-
NAME – nazwa obiektu. Zgodnie z wyborem jest to nazwa lokalizacji, produktu, grupy elementów i elementu.
-
*SERIAL_NUMBER - numer seryjny obiektu
-
TEXT1 – dodatkowy tekst określany podczas generowania etykiet w aplikacji AMAGE
-
TEXT2 – dodatkowy tekst określany podczas generowania etykiet w aplikacji AMAGE
-
parameter_<nazwa parametru> - dla Produktu, Grupy Elementów i Elementu można pobrać dodatkowo dowolny parametr. Nazwę parametru podaje się razem z przedrostkiem 'parameter_'
Pola w projekcie etykiet oznaczane są poprzez zmienne FIELD i umieszczane w obszarze projektowym za pomocą zmiennych $F{<nazwa_pola>}.
Dla etykiet 3x1 i 4x1 dostępne są następujące parametry, które uwarunkowane są numerem etykiety w rzędzie. Opis parametru jest identyczny z opisem z pojedynczej etykiety.
-
CODE1, CODE2, CODE3, CODE4
-
BARCODE1, BARCODE2, BARCODE3, BARCODE4
-
TYPE1, TYPE2, TYPE3, TYPE4
-
NAME1, NAME2, NAME3, NAME4
-
SERIAL_NUMBER1, SERIAL_NUMBER2, SERIAL_NUMBER3, SERIAL_NUMBER4
-
parameter_<nazwa parametru>1/2/3/4
Do identyfikacji w systemie AMAGE stosuje się tylko kody DATAMATRIX. Tylko taki kod będzie poprawnie zidentyfikowany z elementem przez terminale mobilne wyposażone w aplikacje serii AMAGE Mobile/CE. |
Definiowanie parametrów
Parametry mogą być dowolnie edytowalne w programie Jaspersoft studio. Najpierw należy utworzyć nowe pole (fields → create field) i nadać mu nazwę parametru "parameter_nazwaparametru". Następnie trzeba wybrać z palety "text field" i umieścić go na obszarze "detail". Teraz wystarczy już tylko nadać mu wartość wyrażenia (Expressions): $F+{parameter_nazwaparametru}+
i skompilować. Program przekształci plik jrxml do pliku jasper, który jest plikiem wejściowym dla aplikacji.
Szablon etykiety
Przykładowy szablon etykiety znajduje się na rysunku 7. Rysunek ten zawiera wszystkie niezbędne informacje potrzebne do wydrukowania etykiety z wszystkimi w/w polami.
Szablon etykiety dostarczany jest razem z niniejszą dokumentacją w formie pliku „label_50x25.jrxml”. Jest to format etykiety 50mm x 25 mm z podanymi danymi.
W projektancie etykiet można otworzyć dostarczony projekt etykiety i dostosować do swoich wymagań m.in.:
-
Zmieniając rozmiar etykiety
-
Dodając informacje własnościowe np. logo
-
Zmieniając ułożenie elementów
-
Usuwając niepotrzebne wizualnie elementy
Szczegółowa instrukcja obsługi oprogramowania Jaspersoft Studio wykracza poza tą instrukcję. Należy odnieść się do dokumentacji producenta. |
W momencie zakończenia projektowania etykiety plik oryginalny należy zachować do ponownego użycia a następnie wybrać z opcji raportu jego kompilację (menu kontekstowe na raporcie w eksploratorze projektu). Po kompilacji – jeśli cały projekt jest poprawnie wykonany – tworzy się plik wynikowy raportu w formacie *.jasper. Taki plik jest parametrem wejściowym dla aplikacji AMAGE.
Zastosowanie etykiet
Aby wykorzystać własny projekt etykiet należy w momencie wyboru formatu etykiety do wydruku (Kreator drukowania identyfikatorów) wybrać Szablon etykiet: „Własna etykieta” oraz we włączonym polu wyboru wybrać zaprojektowany plik *.jasper.
Następnie można przejść do generacji etykiet i ich wydruku.
Tworzenie własnych wyglądów raportów
Aplikacja posiada wbudowane własne domyślne szablony wszystkich raportów. Użytkownik z odpowiednią wiedzą może dowolnie modyfikować wygląd raportów zgodnie ze swoimi wymaganiami. Pozwala na to możliwość zmiany wyglądu domyślnego raportu oraz zmiany wyglądu poszczególnych zakładek (konfiguracji) raportów. Pozwala to na posiadanie kilku wyglądów (własne, wewnętrzne, dla klienta itp.) każdego z raportów.
Aby zaprojektować dowolny raport należy otrzymać paczkę początkową (inicjalną) raportów dla aktualnej wersji aplikacji. Dla poszczególnych klientów zwykle działy IT posiadają dostęp do zasobów na serwerach AMAGE, które przechowują aktualną paczkę raportów. Na jej bazie można tworzyć dowolne raporty.
Po pobraniu paczki, należy wybrać raport, który jest wymagany do zmiany wyglądu/treści. Następnie przeglądnąć dokumentację raportów dostępną w sekcji "Dla programisty" w portalu pomocy. W niej znajdują się informacje o dostępnych polach i parametrach, które można wykorzystać we własnych raportach.
Po rozpakowaniu wybranego raportu np. ''ReportProduct.jrxml''. Należy go otworzyć w projektancie raportów. Następnie wystarczy dowolnie go zmodyfikować zgodnie z oczekiwaniami (kolory, wygląd, tabele, obrazy itp.). Po poprawnej modyfikacji raportu należy go skompilować do formatu ''jasper''. Następnie wszystkie raporty (główny oraz ewentualnie pomocnicze podraporty) w oryginalnych nazwach (WAŻNE!) należy skompresować do pliku ZIP. Ten plik wgrywamy w głównej aplikacji AMAGE do konfiguracji raportu lub konfiguracji zakładki.
Aby to zrobić, włączamy główną aplikację. Wyświetlamy w eksplorerze listę raportów. Domyślnie wyświetlane są wszystkie raporty, które mają możliwość wyświetlania ich bezpośrednio z eksplorera. Część raportów jest domyślnie niewidoczna, gdyż nie posiadają możliwości wyświetlania samodzielnego np. raporty wyglądu dokumentu zamówienia - generowany jest tylko w kontekście danego zamówienia.
Aby wyświetlić wszystkie szablony raportów dostępne w aplikacji, osoba z odpowiednimi uprawnieniami zaznacza ikonę w dolnej części panelu (pokaż wszystkie) i odświeża widok. W tym przypadku zostaną pokazane wszystkie dostępne szablony raportów.
Wygląd raportu można zmienić na dwa sposoby. Zmiana globalna szablonu raportu - dostępny będzie zawsze w nowym wyglądzie lub dodanie zakładki raportu ze zmianą wyglądu.
Globalną zmiana wyglądu raportu wykonujemy, przez akcję kontekstową na raporcie i wyświetlenie jego właściwości. W tym oknie możemy zaznaczyć nadpisywanie wyglądu raportu oraz wybrać opracowany przez nas zestaw wyglądu w postaci pliku ZIP (patrz wyżej jego opracowanie). Od tego momentu wszystkie raporty generowane z tego typu raportu będą miały zaprojektowany przez nas wygląd.
Jeśli chcemy posiadać kilka wyglądów raportu i/lub dodatkowo określać parametry raportu z panelu filtrów możemy utworzyć zakładkę raportu. Okno dodawania/edycji takiej zakładki posiada możliwość definicji wyglądu dodatkowego tak jak dla globalnego raportu. Jedyną zmianą jest możliwość określenia czy plik ZIP z nowym wyglądem szablonu będzie zapisywany w bazie danych (dostępny dla wszystkich użytkowników), czy będzie odniesieniem do pliku lokalnego na systemie plików.
Wybranie zapisania szablonu, ale BEZ zapisu do bazy danych jest przydatne w przypadku projektowania raportu. Wtedy wystarczy zaktualizować archiwum ZIP na lokalnym dysku i nowe generowanie raportu z tej zakładki spowoduje aktualizację raportu nowym wyglądem. Przyśpiesza to projektowanie. |
Pliki w archiwum ZIP muszą mieć dokładnie taką samą nazwę jak oryginalny plik. Aplikacja rozpoznaje pliki raportu do podmiany właśnie po nazwie. Plik ZIP może mieć już dowolną nazwę. |
Generowanie raportów na serwerze
Serwer AMAGE Sync od wersji 1.12 posiada możliwość generowania raportów bezpośrednio z poziomu serwera i wykorzystać to do np. przesyłania raportów mailowych z wygenerowanym raportem.
Należy przy projektowaniu raportów pamiętać o czcionkach dostępnych z poziomu serwera. Raporty zostaną wygenerowanie poprawnie tylko jeśli odpowiednie czcionki znajdują się na serwerze. Należy uzgadniać to każdorazowo z administratorem serwera aby zapewnić tam dostępność wymaganych czcionek. |
Definicja zestawu czcionek
W przypadku, gdy projektowane etykiety/raporty posiadają własne czcionki nie będące standardową czcionką używaną w systemie do wyświetlania plików PDF (np. Helvetica) należy system skonfigurować do tego, aby wykorzystał te czcionki do generowania plików PDF. Głównym zadaniem tego działania jest dołączenie czcionek do generowanych plików PDF, tak aby były wykorzystywane podczas prezentacji wygenerowanej etykiety/raportu.
Do definicji zestawu czcionek wykorzystujemy oprogramowanie projektanta Jaspersoft Studio. Wchodzimy do ustawień aplikacji i wyszukujemy opcje czcionek (Fonts). Domyślnie lista jest pusta.
Wczytujemy czcionki wybierając odpowiednie opcje np. wskazując katalog, w którym czcionki się znajdują.
Po wczytaniu czcionek, pojawią się one w liście czcionek, które są dostępne w projektancie raportów. Aby udostępnić zestaw czcionek w systemie AMAGE należy utworzyć zestaw czcionek (Fontset). Tworzymy go za pomocą operacji "Create Set"
Po wyborze nazwy zestawu - dowolna nazwa. Tworzony jest zestaw, który może być przenoszony pomiędzy projektantem a innymi aplikacjami.
Lista dostępnych czcionek oraz zestawów (fontset) przedstawiana jest w liście. Można pracować nad zestawami (dodawać/usuwać) w dowolny sposób.
Jeśli zestawy i projektowany z ich wykorzystaniem raport/y są gotowe należy wyeksportować taki zestaw czcionek. Wybieramy zestaw i wybieramy funkcję "Export". Zestaw zostanie zapisany w pliku <nazwa fontsetu>.jar. Taki plik należy wykorzystać w aplikacji AMAGE Desktop oraz/lub na serwerze.
Aby przenieść zestaw czcionek do aplikacji desktop należy wykorzystać opcje aplikacji i w sekcji "Raporty" dodać utworzony zestaw czcionek. W takim przypadku będzie on dostępny na danym komputerze i eksport raportów PDF będzie wykorzystywał te czcionki. |
Dla wersji AMAGE Desktop (instalowalna na komputerze): W przypadku, gdy chcemy wykorzystać czcionki na serwerze (np. przy generowaniu automatycznym raportów) należy wygenerowany zestaw czcionek (fontset) przegrać na serwerze do katalogu uruchomieniowego aplikacji (tzw. userdir) do katalogu fontsdir. |
W przypadku systemów AMAGE Web zestaw czcionek musi znaleźć się na serwerze w odpowiednim katalogu. Prosimy skontaktować się z zarządzającymi systemem AMAGE w Państwa organizacji aby zestaw czcionek został dołączony do Państwa instancji (w katalogu reports/fonts). |
Kompatybilność/tworzenie raportów
Ze względu na zmiany w API systemu lub dostępnych bibliotek należy w przypadku błędów generacji raportów wygenerowanych/przygotowanych dla starszych wersji systemu sprawdzić/zmienić następujące funkcje w raportach:
-
Brak funkcji dekodowania obrazów Base64 Było:
new java.io.StringBufferInputStream( new org.w3c.tools.codec.Base64Decoder($V{logo}).processString()
-
Należy zmienić na:
net.sf.jasperreports.engine.util.JRImageLoader.getInstance(new SimpleJasperReportsContext()).loadAwtImageFromBytes(javax.xml.bind.DatatypeConverter.parseBase64Binary($V+{logo}+))
-
-
obrazy (np. podpisy) w raporcie pola/zmienne powinny być typu
java.io.InputStream
zamiastjava.awt.Image
(lubjava.awt.BufferedImage
)