Podręcznik Modus, Meso
Ślad: • szablony_wydrukow

Szablony wydruków

System Modus dysponuje narzędziem do edycji wydruków, nie ma z góry narzuconego wyglądu dokumentów. W łatwy sposób można zbudować własny szablon dokumentów, raportów, etykiet. Istnieje możliwość samodzielnego zadecydowania, jakie dane ma zawierać każdy dokument, raport i dostosować go do własnych potrzeb.

W programie Modus za pomocą edytora szablonów można tworzyć nowe szablony wydruków dokumentów. Szablony podzielone są na systemowe, (których nie da się edytować ani usunąć) oraz użytkownika (w pełni edytowane).

Stworzenie nowego szablonu wydruku

Szablon wydruku tworzy się na podstawie już istniejącego szablonu. Wybieramy dokument np. ZO lub PZ, klikamy ikonę „drukuj dokument” otworzy się okno podglądu wydruku tego dokumentu.
Po lewej stronie menu pokaże się lista SZABLONY. Zaznacz jeden z istniejących szablonów, wybierz „Zapisz szablon jako” i wpisać nazwę nowego szablonu (kod) oraz zatwierdzić.

Tworzenie szablonu wydruku


Teraz nowy szablon można edytować, zaznacz nowo utworzony szablon na liście i kliknij ikonę „Edytuj szablon”. Otworzy się okno edytora szablonów wydruku FastReport. Zamykając FastReporta pojawi się podgląd zmian, jakie wprowadziliśmy. Żeby zapisać należy rozwinąć przycisk Szablon i wybrać „Zapisz szablon”. Program też przy zamykaniu podglądu wydruku lub zmianie szablonu na inny będzie nas pytał czy zapisać szablon.



Okno edytora wydruku


  1. Pasek menu głównego;
  2. Paski narzędzi;
  3. Obszar roboczy;
  4. Drzewo z danymi - można przeciągnąć elementy do obszaru roboczego;
  5. Karty;
  6. Drzewo obiektów;
  7. Linijka;
  8. Pasek narzędzi obiektów;
  9. Okno właściwości obiektów;
  10. Pasek statusu.



Opcje strony

Zmiana ustawień szablonu dostępne jest za pośrednictwem „Plik | Ustawienia strony…” w menu, lub dwukrotne kliknięcie na stronie w puste miejsce.





W oknie ustawień, można wybrać rozmiar i wyrównanie papieru, jak również ustalić marginesy oraz źródło papieru.

Obiekty

Wszystkie informacje, które znajdują się na szablonie wydruku to obiekty.

Obiekty, dzielą się na:

Obiekt typu dane – zmienna z drzewa danych


Obiekt ten można przeciągnąć za pomocą myszki z drzewa danych.

Obiekt typu tekst – wpisany tekst


Po wybraniu z paska narzędzi obiektu przycisku i wskazania miejsca na szablonie można wstawić dowolny tekst.

Obiekt typu obraz – obraz


Obraz niewielkich rozmiarów (ok.20 KB) umieścimy wybierając z paska narzędzi obiektu i wskazując miejsce. Następnie trzeba wczytać plik i zatwierdzić zielonym OK. Obraz można powiększyć, zmniejszyć, rozciągać za pomocą czarnych punktów w rogach obrazu.

Aby dodać większy obraz należy postępować tak samo tylko nie wczytywać pliku, a zatwierdzić pusty obiekt, następnie wskazać go myszką i w oknie inspektora → Szczegóły w polu FileLink wpisać ścieżkę lokalizacji pliku na tym komputerze. Na innych stanowiskach komputerowych nie będzie widoczny w ten sposób dodany obraz, chyba, że u nich też w takiej samej lokalizacji wkleimy obraz.

Obiekt typu kod kreskowy – kod kreskowy

W szablonie wydruku możesz dodać wiele obiektów z kodami kreskowymi, odpowiadającymi za dowolne pole danych, dostępne w danym szablonie wydruku. Aby dodać taki obiekt:

  1. Kliknij w ikonkę kodu kreskowego na pasku obiektów
  2. Wybierz typ kodu kreskowego
  3. Umieść kod w wybranym przez Ciebie miejscu na szablonie wydruku
  4. Wybierz dane jakie ma zawierać kod kreskowy klikając ikonkę fx
  5. Kliknij dwukrotnie na polu danych i zatwierdź



Kody kreskowe


Edytowanie istniejących kodów kreskowych różni się nieco od powyższej instrukcji. Aby zmienić wyrażenie przedstawione na kodzie kreskowym należy:

  1. Kliknąć na edytowany kod kreskowy
  2. We właściwościach obiektu wybierz pole DataField
  3. Wyszukaj na liście interesujące cie wyrażenie



Edycja kodu kreskowego


Różne typy kodów kreskowych obsługują wybrane znaki, jeśli na wydruku w miejscu kodu pojawi się czerwony napis z błędem, zmień typ kodu kreskowego.
Pamiętaj, aby obiekty nie wychodziły poza ramy wstęgi, w której się znajdują.


Przykład

Formatowanie obiektu

Wyrażenie można sformatować poprzez:

  • edycję zakładki Format
  • stosując następujący zapis [wyrażenie #format]
    • formatowanie Daty/Czasu:
      • dd.mm.yyyy – data typu '23.12.2003'
        przykład użycia: [specyfikacja.„dokument_obcy_data_wystawienia” #dd.mm.yyyy]
      • dd mmm yyyy – data typu '23 Nov 2003'
      • dd mmmm yyyy – data typu '23 November 2003'
      • hh:mm – format czasu '23:12'
      • hh:mm:ss – format czasu '23:12:00'
      • dd mmmm yyyy, hh:mm – format daty i czasu '23 November 2003, 23:12'

Narzędzia obiektu

Wstawianie wstęgi- pozwala na stworzenie projektu strony, na obszarze, który ma określony stosownie do jego rodzaju.

  1. „Tekst” obiekt wyświetla jeden lub kilka wierszy tekstu w prostokątny obszar;
  2. „Zdjęcie” obiekt wyświetla plik graficzny w formacie „bmp”, „JPEG”, „ICO” WMF „lub” EMF „;
  3. „Linia” obiekt wyświetla poziomą lub pionową linię; prostokąt, zaokrąglony prostokąt, elipsa, trójkąt, i diament);
  4. „Kod kreskowy” obiekt wyświetla dane w postaci kodu kreskowego.

Drzewo z danymi



Z drzewa danych z zakładki „Dane” można przeciągać dany obiekt na nasz szablon. Klikając na obiekt będzie widoczna strzałka w dół (jak w otwarciu listy). Za jej pomocą można szybko zmienić obiekt na inny.



Klikając dwa razy otworzy się okno edycji, w którym można dodać tekst, jaki ma być wyświetlany przed zmienną. Np. tekst nazwa.



Bandy – wstęgi
Na wstęgach umieszczane są poszczególne obiekty z drzewa danych.

W celu dodania wstęgi:

  1. Na pasku narzędzi obiektu wybierz Insert band.
  2. Wybierz odpowiedni typ bandy - na szablonie pojawi się nowa wstęga.





Wstęgi

Obiekty z poszczególnych gałęzi drzewa należy umieszczać na wstęgach dotyczących tej samej gałęzi (np obiekty z gałęzi dokument specyfikacja należy umieszczać na wstędze dokument_specyfikacja)


Dodanie nowej wstęgi


Określenie gałęzi z którą wstęga ma być powiązana


Umieszczenie obiektu na odpowiedniej dla niego wstędze



Funkcje

Funkcje wykonywane na ciągach znaków (String):
nr zlecenia zastosowany w przykładach: ZPR 01297/2017

  • [Length(<obiekt>)] - zwraca liczbę znaków jaka występuje w wybranym ciągu
    np: [Length(<zlecenia_produkcyjne.”zlecenie_produkcyjne_numer„>)] ⇒ „14”
  • [Copy(<obiekt>, od znaku, liczba znaków)] - zwraca ciąg o podanej liczbie znaków, zaczynając od podanego znaku
    np: [Copy(<zlecenia_produkcyjne.”zlecenie_produkcyjne_numer„>, 2, 9)] ⇒ ”PR 01297/„
  • [Pos(„ciąg”, <obiekt>)] - zwraca pozycje znaku w podanym ciągu
    np: [Pos(”/„,<zlecenia_produkcyjne.”zlecenie_produkcyjne_numer„>)] ⇒ ”10„

Wyżej wymienione funkcje mogą być łączone.

Przykład:
W polu uwagi do produkcji wpisywane są trzy informacje ale tylko jedna z nich powinna być widoczna na wydruku etykiety produktu:
  • Zawartość pola uwagi do produkcji: Kraków^00012*2017
  • Zawartość pola uwagi widoczna na etykiecie produktu: 00012

Znak ^ oraz * stanowią separatory, które posłużą do wyświetlenia wybranej części ciągu.


Łączenie funkcji (przykład)

Łączenie funkcji (przykład)



Rozwiązanie

W celu wyświetlenia określonego fragmentu z wybranego ciągu należy skorzystać z trzech wyżej wymienionych funkcji:
Length(), Copy(), Pos()

1.) W celu wyświetlenia fragmentu ciągu z pola Uwagi do produkcji należy zastosować funkcję
[Copy(<obiekt>, od znaku, liczba znaków)] gdzie:

obiekt - pole zawierające szukany fragment ciągu
od znaku - pozycja znaku od którego ma zostać wyświetlony subciąg (nieznana, do wyliczenia)
jak wiele znaków ma zostać wyświetlone (nieznana, do wyliczenia)


2.) W celu wyświetlenia fragmentu ciągu zaczynając od wybranego separatora należy wyliczyć jego pozycję. W podanym przykładzie wyliczana jest pozycja znaku ^. W tym celu należy zastosować poniższą funkcje :

od znaku = [Pos("^",<produkty."uwagi_do_produkcji">)]
wyznaczona wartość to: od znaku = 7


3.) W celu wyświetlenia fragmentu ciągu należy określić liczbę znaków które mają zostać wyświetlone. W podanym przykładzie nie jest to stała wartość tylko liczba znaków od separatora ^ do separatora *. W tym celu należy:

wyznaczyć długość ciągu do znaku * (z pominięciem znaków separujących subciągi) 
dł_ciągu_do_* = Length(<//ciąg do separatora *//>)
ciąg do separatora * = Copy(<produkty."uwagi_do_produkcji">, //pierwszy znak//, //pozycja separatora *//)
pozycja separatora * = Pos("*",<produkty."uwagi_do_produkcji">)
ciąg do separatora * = Copy(<produkty."uwagi_do_produkcji">, 1, Pos("*",<produkty."uwagi_do_produkcji">)))
dł_ciągu_do_* = [Length(Copy(<produkty."uwagi_do_produkcji">, 1, Pos("*",<produkty."uwagi_do_produkcji">)))-2]
wyznaczona wartość to: dł_ciągu_do_* = 11
wyznaczyć długość ciągu do znaku ^ (z pominięciem znaków separujących subciągi) 
dł_ciągu_do_^ = Length(<//ciąg do separatora ^//>)
ciąg do separatora ^ = Copy(<produkty."uwagi_do_produkcji">, //pierwszy znak//, //pozycja separatora ^//)
pozycja separatora ^ = Pos("^",<produkty."uwagi_do_produkcji">)
ciąg do separatora ^ = Copy(<produkty."uwagi_do_produkcji">, 1, Pos("^",<produkty."uwagi_do_produkcji">)))
dł_ciągu_do_^ = [Length(Copy(<produkty."uwagi_do_produkcji">, 1, Pos("^",<produkty."uwagi_do_produkcji">)))-1]
wyznaczona wartość to: dł_ciągu_do_* = 6
odjąć dwie powyższe wartości
liczba znaków = (dł_ciągu_do_*) - (dł_ciągu_do_^)
liczba znaków = [(Length(Copy(<produkty."uwagi_do_produkcji">, 1, Pos("*",<produkty."uwagi_do_produkcji">)))-2)- (Length(Copy(<produkty."uwagi_do_produkcji">, 1, Pos("^",<produkty."uwagi_do_produkcji">)))-1)]**
liczba znaków = 11-6
liczba znaków = 5


4.) W celu wyświetlenia ciągu znaków pomiędzy znakami ^ i * należy podstawić wyznaczone wartości do funkcji głównej:

subciąg = [Copy(<//obiekt//>, //od znaku//, //długość ciągu//)]** gdzie:
obiekt = <produkty."uwagi_do_produkcji">
od znaku = Pos(„^”,<produkty.”uwagi_do_produkcji”>)+1
długość ciągu= (Length(Copy(<produkty."uwagi_do_produkcji">, 1, Pos("*",<produkty."uwagi_do_produkcji">)))-2)- (Length(Copy(<produkty."uwagi_do_produkcji">, 1, Pos("^",<produkty."uwagi_do_produkcji">)))-1)

Gotowe rozwiazanie:

[Copy(<produkty."uwagi_do_produkcji">, Pos("^",<produkty."uwagi_do_produkcji">)+1,(Length(Copy(<produkty."uwagi_do_produkcji">, 1, Pos("*",<produkty."uwagi_do_produkcji">)))-2)-(Length(Copy(<produkty."uwagi_do_produkcji">, 1, Pos("^",<produkty."uwagi_do_produkcji">)))-1))] 

Przykłady:

Logo na wydruku

W konfiguracji globalnej w zakładce System/Drukowanie wprowadzono możliwość wczytania do bazy logo firmy, które będzie dostępne na wszystkich udostępnionych do edycji wydrukach dokumentów. Dostępny jest tam również podgląd wczytanego logo, jednak w tej wersji tylko dla obrazków w formacie .bmp.

Aby wstawić logo na wydruk, należy w edytorze wydruków położyć na szablonie wydruku obiekt typu ‘Obraz’, a gdy pojawi się okno dialogowe ‘Obraz’ - zamknąć je bez wczytywania obrazka. Następnie należy ustawić właściwości nowego obiektu według poniższych wskazówek:

  1. DataSet: _firma
  2. DataField: LOGO

wielkość obrazka zostanie dostosowana do wielkości obiektu na szablonie z zachowaniem proporcji; aby pokazać obrazek w skali 1:1 należy ustawić właściwość AutoSize na wartość ‘true’.

Logo - wydruk


Grafika/Zdjęcie produktu na Karcie produktu lub etykiecie

Na szablonie wydruku Karty produktu i na etykiecie nr seryjny (Produkcja/Planowanie) istnieje możliwość dodania zdjęcia produktu, które uprzednio zostało dodane w kartotece produktu (Magazyn → Asortyment/ Zakładka: Zdjęcia).

Aby wstawić zdjęcie na wydruk, należy:

  1. Szablon do którego ma zostać dodane zdjęcie zapisać pod nową nazwą.
  2. W edytorze wydruków położyć na szablonie wydruku obiekt typu ‘Obraz’, a gdy pojawi się okno dialogowe ‘Obraz’ - zamknąć je bez wczytywania obrazka.
  3. Ustawić właściwości nowego obiektu według poniższych wskazówek:
    • DataSet: zdjecia
    • DataField: ZDJECIE1

wielkość obrazka zostanie dostosowana do wielkości obiektu na szablonie z zachowaniem proporcji; aby pokazać obrazek w skali 1:1 należy ustawić właściwość AutoSize na wartość ‘true’.

Zdjęcie produktu - wydruk


Zmiana liczby miejsc po przecinku

W systemie Modus wartości na dokumentach zaokrąglane są do dwóch miejsc po przecinku. Na szablonie wydruku można jednak zmienić liczbę drukowanych miejsc po przecinku. W tym celu należy:

  1. Przejdź do edycji szablonu wydruku.
  2. Wskaż element (wartość), który powinien być wyświetlany z inną ilością miejsc po przecinku i naciśnij Enter.
  3. Przejdź do zakładki Format.
  4. W polu Format string zmień ustawienia z %2.2n na %2.Xn, gdzie X oznacza liczbę miejsc po przecinku jaka ma być drukowana (np %2.4n).
  5. Naciśnij OK.


Edycja szablonu wydruku


Zmiana liczby miejsc po przecinku


Szablon po zmianach


Ponieważ formatowanie można definiować również z poziomu zakładki Text może się zdarzyć że pomimo, iż w polu Format string znajduje się %2.2n to zaokrąglenie jest inne niż dwa miejsca po przecinku. W takim wypadku

  1. Przejdź do edycji szablonu wydruku.
  2. Wskaż element, który powinien być wyświetlany z inną ilością miejsc po przecinku i naciśnij Enter.
  3. Pozostań w zakładce Text.
  4. W polu zmień ustawienia z [dokument_specyfikacja.”ilosc„ #n%2,4n] na [dokument_specyfikacja.”ilosc„ #n%2,Xn],
    gdzie X oznacza liczbę miejsc po przecinku jaka ma być drukowana (np [dokument_specyfikacja.”ilosc„ #n%2,0n]).
  5. Naciśnij OK.

Edycja etykiety asortymentu

Na etykiecie asortymentu domyślnie kodowany jest kod kreskowy asortymentu, można to jednak zmienić:

  1. Dla standardowego szablonu wydruku etykiety wybierz 'Zapisz szablon jako…' i podaj nową nazwę.
  2. Na etykiecie zaznacz kod kreskowy.
  3. Z lewej strony ekranu w zakładce 'Properties' zawartość pola 'DataField' zmienić z 'kod_kreskowy' na 'kod'.
  4. Zamknij edytor wydruków FastReport.
  5. Wybierz 'Zapisz szablon'.
  6. Na koniec warto nowy szablon ustawić jako domyślny (Lista szablonów/funkcja Edytuj po zaznaczeniu nowego szablonu).

Operacje matematyczne

W systemie Modus możliwe jest wykonywanie operacji matematycznych na elementach raportu. W celu wykonania np. mnożenia:

  1. Dodaj element Tekst do raportu.
  2. W zakładce Text wpisz nazwy nazwy elementów na których chcesz wykonać operacje, zwracając uwagę na nawiasy oraz sympol operacji matematycznej np. w celu pomnożenia masy jednostkowej przez ilość wprowadź:
    [<dokument_specyfikacja."produkt_masa_jednostkowa_netto">*<partie_specyfikacja."ilosc">]




Sumowanie wartości

Na szablonie wydruku istnieje możliwość sumowania wartości z wybranych kolumn. W celu dodania sumy wybranej kolumny:

  1. Jeśli na szablonie nie ma wstęgi stopka dodaj ją.
  2. Jeśli chcesz sumować wartości kolumny której domyślnie nie ma na szablonie dodaj nowy obiekt na odpowiedniej wstędze np. [dokument_specyfikacja.”produkt_ilosc_opakowan„].
  3. W polu stopki pod wybrana kolumną umieścić:
    [SUM(<dokument_specyfikacja."produkt_ilosc_opakowan">,specyfikacja)]
  4. W polu stopki umieść ewentualny opis sumy.
Istnieje również możliwość dodania pola z podsumowaniem do nagłówka. Instrukcja dostępna jest tutaj

Sortowanie

System Modus umożliwia określenie kolumny, według której dane znajdujące się wydruku mają być sortowane. Możliwe jest również określenie kierunku sortowania. W celu zmiany sortowania:

  1. Wydrukuj wybrany dokument.
  2. Kliknij strzałkę znajdującą się obok ikony Szablony.
  3. Wybierz Edytuj definicję szablonu.
  4. Kliknij Wyczyść w celu usunięcia dotychczasowych ustawień sortowania.
  5. Rozwiń listę kolumn dostępnych do sortowania.
  6. Wybierz kierunek sortowania klikając jedną ze strzałek znajdującą się obok wybranego elementu.
  7. Kliknij Zatwierdź.


Wydruk przed zmianą sortowania


Zmiana sortowania


Wydruk po zmianie sortowania


Zastosowanie funkcji IIF (jeżeli)

System Modus umożliwia stosowanie różnego rodzaju funkcji. Jedną z nich jest funkcja jeżeli - IIF.

I przykład zastosowania:
Na zamówieniu do dostawcy określono termin realizacji zamówienia, a dodatkowo dla kilku zamawianych asortymentów określono inne terminy realizacji. W związku z możliwością określenia dwóch terminów realizacji, na szablonie dostępne są również dwa terminy realizacji:

  • [dokument_specyfikacja.”planowany_termin_dostawy„] - termin realizacji konkretnej pozycji zamówienia
  • [dokument.”planowany_termin_dostawy„] - ogólny termin realizacji zamówienia


Wydruk z dwiema kolumnami
Wydruk z dwiema kolumnami

Zastosowanie funkcji IIF pozwala uniknąć konieczności umieszczania obu kolumn na szablonie wydruku. Umieszczenie kolumny z następującą funkcją:

[IIF(<dokument_specyfikacja."planowany_termin_dostawy">==0, <dokument."planowany_termin_dostawy">, <dokument_specyfikacja."planowany_termin_dostawy">)]

spowoduje, że jeśli dla pozycji dokumentu określano indywidualny termin realizacji to zostanie on wyświetlony, a w przeciwnym wypadku wyświetlony zostanie termin realizacji zamówienia.

Wydruk z zastosowaniem funkcji IIF
Wydruk z zastosowaniem funkcji IIF

II przykład zastosowania:

Na poglądzie wydruku dokumentu produkt kompletowany nie posiada receptury. Przedstawiona poniżej funkcja:

  • sprawdza czy pole kod receptury jest puste
  • jeśli pole kod receptury jest puste, wyświetlany jest w tym polu kod asortymentu
  • jeśli pole kod receptury nie jest puste, pozostaje jest w tym polu kod receptury
 [IIF(<partie_sprzedaz."receptura_kod">=="",<partie_sprzedaz."asortyment_kod">,<partie_sprzedaz."receptura_kod">)] 

Sortowanie na szablonie z agregacją (WZ)

W przypadku wydruków zawierających pozycje zagregowane sortowanie należy zdefiniować dla dwóch gałęzi. Sortowanie na drugiej gałęzi odbywa się w ramach drzewa danych partie_specyfikacja. Dla poprawnego działania szablonu agregacja musi odbywać się w obrębie elementów drzewa partie specyfikacja (każdy GroupHeader musi być ustawiony na partie_specyfikacja).

W celu konfiguracji szablonu wydruku:

  1. Wydrukuj wybrany dokument.
  2. Kliknij strzałkę znajdującą się obok ikony Szablony.
  3. Wybierz Edytuj szablon.
  4. Sprawdź czy wstęgi odpowiadające za agregację są ustawione na partie_specyfikacja oraz których pól dotyczą np. asortyment_kod (GroupHeader: partie_specyfikacja.”asortyment_kod„) [Ekran: 1]
  5. Zamknij FastReport.
  6. Kliknij strzałkę znajdującą się obok ikony Szablony.
  7. Wybierz Edytuj definicję szablonu.
  8. Uzupełnij pola dotyczące sortowania danych z gałęzi: partie_specyfikacja.

Należy wprowadzić pola po których ma się odbywać sortowanie. Muszą to być te same pola, które zdefiniowano dla agregacji (w punkcie 4) i należy wprowadzić je w tej samej kolejności [Ekran: 2]. Aby uzupełnić pola:

  • rozwiń listę kolumn dostępnych do sortowania [Ekran:3]
  • wybierz kierunek sortowania klikając jedną ze strzałek znajdującą się obok wybranego elementu.


Ekran 1: Konfiguracja nagłówka GroupHeader
Ekran 1: GroupHeader

Ekran 2: Konfiguracja sortowania na szablonie z agregacją
Ekran 2: Konfiguracja sortowania na szablonie z agregacją

Ekran 3: Wybór kolumn do sortowania
Ekran 3: Wybór kolumn do sortowania

Zmiana wagi brutto na netto (dla dokumentu CMR)

Pozycje na dokumencie CMR są grupowane, z tego powodu w celu zmiany wagi brutto na netto nie wystarczy wymiana elementu na szablonie wydruku. W celu edycji szablonu dokumentu CMR i zmiany wagi brutto na netto:

  1. Przejdź do edycji szablonu wydruku dokumentu CMR.
  2. Edytuj szablon zgodnie z przykładem [Ekran 1].
  3. Przejdź do zakładki Code.
  4. Edytuj kod szablonu zgodnie z przykładem [Ekran 2].
  5. Zamknij edytor wydruków FastReport.
  6. Wybierz 'Zapisz szablon'.


Ekran 1: Edycja szablonu wydruku dokumentu CMR
Ekran 1: Edycja szablonu wydruku dokumentu CMR

Ekran 2: Edycja kodu szablonu
Ekran 2: Edycja kodu szablonu

Kod QR

Szablony wydruków umożliwiają generowanie wydruków zawierających kody QR. Kod tego rodzaju może zawierać znacznie więcej danych od standardowych kodów kreskowych.

Przygotowując kod QR na szablonie wydruku należy zwrócić uwagę na:
  • nazwy pól z bazy danych wprowadzane są w nawiasach <> (przykład poniżej)
  • tekst wprowadzany ręcznie (a nie pole z bazy danych) wprowadzany jest w cudzysłowu ” „
  • znak separacji wprowadzany w cudzysłowu np. ” {„
  • łączenie danych odbywa się za pomocą znaku +
  • w przypadku łączenia pól liczbowych i tekstowych należy liczbę zmienić na tekst funkcją FloatToStr()
    FloatToStr(<specyfikacja.”partia_ilosc_wydana„>)+
    ” {„+<specyfikacja.”asortyment_kod„>

Przykładowe zastosowanie kodów QR:
Kontrahent dysponuje systemem i narzędziami umożliwiającymi odczyt kodu QR z etykiety produktu (etykieta pozycji dokumentu WZ), w którym oczekuje następujących informacji:

  • ilość wydana = 150 - pole z bazy danych (specyfikacja.”partia_ilosc_wydana„)
  • jednostka miary = szt - pole z bazy danych (specyfikacja.”jm_bazowa„)
  • kod dostawcy = RHO Software - tekst
  • kod asortymentu = Modus ERP - pole z bazy danych (specyfikacja.”asortyment_kod„)
  • numer partii = 610 - pole z bazy danych (specyfikacja.”partia_numer„)

Powyższe dane muszą być odczytywane zgodnie z następującym formatem:

 150 {szt {RHO Software {Modus ERP {610


W celu dodania takiego kodu kreskowego na szablonie wydruku należy:

  • Dodać obiekt obCatBarcode.
  • Wybrać DataMatrix.
  • W polu Expression wpisać:
FloatToStr(<specyfikacja.”partia_ilosc_wydana„>)+” {„+<specyfikacja.”jm_bazowa„>+” {„+
„RHO Software”+” {„+<specyfikacja.”asortyment_kod„>+” {„+<specyfikacja.”partia_numer„>


Wyrażenie dla kodu QR


W celu przeskalowania kodu QR należy zastosować parametr Zoom:

  • Zaznaczyć obiekt DataMatrix/QRCode.
  • W polu Zoom wartość (wartość liczbowa):
    • < 1 - pomniejszenie
    • 1 - rozmiar automatyczny
    • > 1 powiększenie


Ukrycie usługi transportowej na szablonie wydruku CMR

Aby ukryć usługi transportowe na szablonie wydruku CMR, należy:

  1. Przejść do modułu Transport - Listy przewozowe CMR.
  2. Kliknąć Drukuj - Szablony - Edytuj Szablon.
  3. Na szablonie Edycji wydruku dwukrotnie kliknąć w żółte pole 'specyfikacja'.
  4. W miejscu Filter wkleić wartość:
    <specyfikacja."produkt_jest_usluga">==0 
  5. Kliknąć OK, wyjść z edycji szablonu i go zapisać.


Szablon wydruku listu CMR przed zmianami
Ekran 1: Szablon wydruku listu CMR przed zmianami

Edycja szablonu wydruku
Ekran 2: Edycja szablonu wydruku

Szablon wydruku listu CMR po zmianach
Ekran 3: Szablon wydruku listu CMR po zmianach

Filtrowanie danych na wydrukach

Przykład: Ukrycie surowców w tabeli zużycia na Karcie produktu

Jeśli chcemy, aby na wydruku karty produktu nie pojawiało się zużycie niektórych surowców, należy:

  1. Przejść do edycji szablonu wydruku Karty produktu.
  2. Kliknąć w belkę danych „zużycie surowców” i wprowadzić wartości filtra ( po lewej stronie, w „properties→Filter” ).
  3. Wersja filtra:
    (<zuzycie_surowcow."asortyment_nazwa">=="Tkanina czarna")||(<zuzycie_surowcow."asortyment_nazwa">=="Guzik czarny") 
  4. Kliknąć OK, wyjść z edycji szablonu i go zapisać.


Wydruk przed filtrowaniem

Ekran 1: Edycja karty produktu

Edycja wartości filtru
Ekran 2: Edycja wartości filtru

Szablon wydruku po zmianach
Ekran 2: Szablon wydruku po zmianach

Może zdarzyć się że pomimo poprawnej formuły filtrującej pojawia się komunikat typu:

The following error(s) have occured:
Error in expression '<analiza.”czynnosc_kod„>==„Szycie” ': ';' expected

W takim przypadku należy przejść do zakładki Code i w polu Language wybrać C+Script

Automatyczne dostosowanie wysokości wierszy

Dodając nową wstęgę danych do szablonu wydruku, domyślnie wyłączona jest opcja „Stretched”. Jej zadaniem jest poszerzenie naszego wydruku jeśli w którejś komórce znajduje się za duża ilość danych. W przypadku którym nasz wydruk nałożył na siebie jakieś dane, sprawdź czy masz włączoną opcję „Stretched”.

Dostosowanie wysokości wierszy


Okno wprowadzania danych (Inputbox)

Zdarza się że na wydruku niezbędne jest zamieszczenie jakiejś dodatkowej informacji. Zastosowanie funkcji Inputbox sprawia że, podczas generowania wydruku pojawi się okno służące do wprowadzania danych, a następnie wpisana informacja pojawi się na wydruku:

W celu zastosowania funkcji należy:
1. Na szablonie dodać nowe pole tekstowe
2. Sprawdzić nazwę pola np Memo3
4. W zakładce Code wprowadzić np:

Memo3.text=InputBox("Etykieta","Data...",<Date>); \\ 
(w oknie służącym do wprowadzania danych pojawi się bieżąca data, którą można zmienić)\\ 
\\ 
Memo3.text=InputBox("Etykieta","Data...",""); \\ 
(okno służące do wprowadzania danych będzie puste, wpisana wartości wyświetli się na wydruku)\\ 



Wprowadzanie danych 1


Wprowadzanie danych 2


Wprowadzanie danych 3


Okno wprowadzania danych - ilość stron

W systemie Modus możliwe jest dodanie okna, służącego do wpisania liczby stron danego szablonu wydruku, jakie chcemy wyświetlić.

W tym celu należy:

1. Przejść do edycji szablonu wydruku
2. W zakładce Kod wprowadzić:

Przykład:

     Page1.pagecount = strtoint(InputBox("Ile etykiet","Wpisz ilośc etykiet","1"));

3. Wyjść z szablonu i zapisać go
4. Przy próbie otworzenia szablonu pojawi się okno z miejscem służącym do wpisania ilości. System wyświetli taką ilość stron, jaka została tam wprowadzona

Wprowadzanie kodu


Okno do wprowadzania danych


Wybór szablonu domyślnego

W celu oznaczenia jednego z szablonów jako domyślny:

  1. Wydrukuj wybrany dokument.
  2. Kliknij strzałkę znajdującą się obok ikony Lista szablonów.
  3. Zaznacz szablon, który chcesz oznaczyć jako domyślny.
  4. Kliknij Edytuj.
  5. Zaznacz opcje Używaj tego szablonu jako domyślnego.
  6. Kliknij Zatwierdź.

Premie pracowników

Jeśli chcemy premiować pracowników na podstawie uzyskanej przez nich średniej wydajności należy:

  1. Przejść do modułu Analizy i wybrać analizę Czasy realizacji czynności.
  2. Kliknąć Drukuj i utworzyć nowy szablon wydruku.
  3. Na szablonie umieścić nowe pole: [<analiza.”wydajnosc„>]
  4. Jako podsumowanie umieścić nowe pole, obliczające średnią wydajność pracownika:
    [AVG(<analiza."wydajnosc">,MasterData1)]
  5. Dodać nowe pole, które będzie obliczać premię, w zależności od uzyskanej wydajności.
    [IIF(AVG(<analiza."wydajnosc">,masterdata1)<=65,"0zl",
    (IIF(AVG(<analiza."wydajnosc">,masterdata1)<=85,"300zl",
    (IIF(AVG(<analiza."wydajnosc">,masterdata1)<=86,"500zl","500zl")))))]
  6. Kliknąć OK, wyjść z edycji szablonu i go zapisać.



Szablon wydruku po zmianach
Ekran 1: Szablon wydruku po zmianach

Aby szablon zadziałał konieczna może być zmiana języka w edycji szablonu wydruku w zakładce Code z języka PascalScript na C++Script.






» Wróć do: PODRĘCZNIK UŻYTKOWNIKA

Poprzednia Następna

Narzędzia witryny

  • Indeks

Narzędzia strony

  • Pokaż źródło strony
  • Odnośniki
  • Do góry

Narzędzia użytkownika

  • Zaloguj
pl/podrecznik/globalne/szablony_wydrukow.txt · ostatnio zmienione: 2025/01/07 09:40 przez paulina
Podręcznik Modus, Meso

Spis treści

Spis treści

  • Szablony wydruków
    • Stworzenie nowego szablonu wydruku
      • Obiekty
      • Formatowanie obiektu
      • Narzędzia obiektu
      • Drzewo z danymi
      • Wstęgi
      • Funkcje
    • Przykłady:
      • Logo na wydruku
      • Grafika/Zdjęcie produktu na Karcie produktu lub etykiecie
      • Zmiana liczby miejsc po przecinku
      • Edycja etykiety asortymentu
      • Operacje matematyczne
      • Sumowanie wartości
      • Sortowanie
      • Zastosowanie funkcji IIF (jeżeli)
      • Sortowanie na szablonie z agregacją (WZ)
      • Zmiana wagi brutto na netto (dla dokumentu CMR)
      • Kod QR
      • Ukrycie usługi transportowej na szablonie wydruku CMR
      • Filtrowanie danych na wydrukach
      • Automatyczne dostosowanie wysokości wierszy
      • Okno wprowadzania danych (Inputbox)
      • Okno wprowadzania danych - ilość stron
    • Wybór szablonu domyślnego
    • Premie pracowników