1. Opis ogólny
2. Wydruki składane
2.1 Opis ogólny
2.2 Przykłady zastosowań
Faktura składana z kilku wzorców
Wstawianie standardowych tekstów
Wstawianie informacji uzupełniających
Różne wzorce zależnie od kontekstu: w różnych językach
Bloki danych
3. Przekazywanie wartości pomiędzy wydrukami
4. Tematy powiązane
1. Opis ogólny
Dokumenty tworzone wg wzorców oraz dokumenty standardowe można ze sobą łączyć
na dwa sposoby:
* kaskada, tj. wywoływanie kolejnego dokumentu po zakończeniu dokumentu poprzedniego
* składanie, tj. tworzenie wydruku z treści wielu dokumentów (wzorców).
Wydruk składany uzyskuje się funkcją [ţWstawWydruk{}], która wstawia do wydruku
bazowego inny wydruk (pod-wydruk).
Funkcje:
ţInnyWydruk{[drukarka];idProces[;p1][;p2][;p3][;...]}
ţWstawWydruk{idProces[;p1][;p2][;p3][;...]}
ţZałączWydrukPDF{idProces[;p1][;p2][;p3][;...]}
ţZałączWydrukHTML{idProces[;p1][;p2][;p3][;...]}
ţZałączWydrukTXT{idProces[;p1][;p2][;p3][;...]}
Funkcje TrExtLang
Wydruk kaskadowy, to wydruk kolejnego dokumentu, po zakończeniu wydruku poprzedniego.
Od strony technicznej, budowanie kaskady wydruków polega na umieszczeniu funkcji
[ţInnyWydruk{}, ţWstawWydruk{}, ţZałączWydruk...{}] w treści wzorca.
Patrz opis szczegółowy:
Wzorce. Wydruki kaskadowe
2. Wydruki składane
2.1. Opis ogólny
Wydruk składany, to wydruk uzyskany z treści wielu wzorców.
[ţWstawWydruk{}] wstawia do wydruku bazowego inny wydruk (pod-wydruk)
Różnica w stosunku do [ţInnyWydruk{}] (wydruk kaskadowy) jest taka,
że wywołany pod-wydruk będzie treścią aktualnego wydruku (bazowego).
Nastąpi złożenie dwóch wydruków w jeden. Stąd nazwa: wydruki składane.
(en: Merge Reports)
Po zakończeniu przetwarzania pod-wydruku wywołanego, program będzie
kontynuował przetwarzanie wydruku głównego (bazowego).
o---------------------o
| Faktura sprzedaży |
| część 1 | <-- Wydruk główny. Cz 1
| |
o---------------------o
| | Pod-wydruk
| Metoda zapłaty P | -------------------------
| ţWstawWydruk... <-------- Nr naszego rachunku
| | .................
| | -------------------------
| |
o---------------------o
| Faktura sprzedaży | <-- Wydruk główny. Cz 2 (kontynuacja)
| część 2 |
| |
o---------------------o
2.2 Przykłady zastosowań wzorców składanych
Faktura składana z kilku wzorców
Podział wzorców wydruku na kilka części, tak aby uniknąć powtórzeń.
Np. teraz oryginał faktury, kopia i duplikat, to są trzy wzorce powstałe
przez kopiowanie pierwszego.
Korekta wzorca oryginału wymaga także korekty wzorca i duplikatu.
Można wydzielić różnice do osobnego wzorca, a część wspólną umieścić w jednym.
Wstawianie standardowych tekstów
Kolejna możliwość, to wstawianie stałych tekstów do wydruku.
Taki tekst można zapisać w osobnym wzorcu i wstawić: ţWstawWydruk,
zamiast przepisywać do wszystkich wzorców.
Takie teksty dodatkowe, można dodawać warunkowo (funkcje ţPorównaj i ţPorównajLiczby)
Np. informacje o płatności przelewem, gdy wybrano tę formę w dokumencie.
Wstawianie informacji uzupełniających
Informacje o fakturach pozostałych do zapłacenia można umieszczać
w treści faktur wysyłanych do kontrahentów
Krok 1: W NA utworzyć wzorzec [SR] Stan należności o nazwie: TR0100ET
(na http: na_sr_tr0100et.xml)
T
T--------------------------------------------------------------------
T Faktura Termin płatności Saldo
T--------------------------------------------------------------------
P şNr rachun.ş ţX{50}20şTer.plş;10 ţX{70}ţDoPrawej{şFakt/not-saldPLNş;10}
T--------------------------------------------------------------------
T Razem: ţX{70}ţDoPrawej{ş-Saldo odb.w PLNş;10}
T
Krok2: Wzorzec ten wstawić w fakturze (lub innym dokumencie) przy użyciu funkcji:
ţWstawWydruk
np.
ţWstawWydruk{NA;SR;TR0100ET;şOdb.ş}
Różne wzorce zależnie od kontekstu: w różnych językach
Automatycznie wybierać wzorzec, w zależności od wartości danych w dokumencie.
Wydruki w różnych językach
Np. wybrać wzorzec w języku angielskim, gdy krajem kontrahenta nie jest Polska [PL]
* Można zastosować funkcję: ţWstawWydruk{}
np.
ţWstawWydruk{'NA';'FA';FV_şWalş;şNr dokum. ş}
^ ^--- pole wzorca: Nr dokumentu
|
+--- Pole wzorca: şWalş - waluta, np. PLN,EUR
dla waluty PLN użyje wzorca: FV_PLN
dla waluty EUR użyje wzorca: FV_EUR
dla waluty USD użyje wzorca: FV_USD
itd.
* Można zastosować funkcję: ţPorównaj oraz ţWstawWydruk
Przykład: Wzorzec po polsku, gdy PLN lub po angielsku gdy EUR
Utworzyć jeden wzorzec sterujący np. FV_WALUT.
Wpisać w nim jedną linię:
ţPorównaj{şWalş;PLN;ţWstawWydruk{NA;FA;FRA_SPRZ;şNr dokum. ş};ţWstawWydruk{NA;FA;FAKTURAA;şNr dokum. ş}}
dla waluty PLN użyje wzorca: FRA_SPRZ [na_fa_faktura_sprzedazy_vat.xml]
dla innych walut użyje wzorca: FAKTURAA [na_fa_faktura_walutowa_angielska.xml]
* Można zastosować: ţInnyWydruk{} Dołącz inny wydruk (kaskadowy)
Patrz szczegóły:
Funkcje TrExtLang
Bloki danych
Służą do wstawiania dodatkowych informacji bezpośrednio podczas drukowania.
Przykładem bloku danych jest zestawienie faktur dotychczas wystawionych
kontrahentowi, które jest automatycznie dołączane na koniec wydruku każdej
faktury.
Blok danych wywoływany jest specjalnym kodem umieszczonym na wzorcu
faktury, tu: [oFVDEVELOP] (skrót od: Deweloper budowlany)
Wzorce dokumentów i etykiet
Bloki danych
============
[oFVDEVELOP] Kronika poprzednich faktur
[oDEKRET] Pieczątka dekretacyjna
Dokumenty poleceń księgowania
[oWYNIKIQA] Wyniki testów kontroli jakości QA
QA System kontroli jakości
[oOPCJEZAM] Opcje (wariant) zamówionego produktu (zapisane w zam sprzedaży)
Produkty wariantowe. Zamówienia sprzedaży
[QRPay] Pole na wzorcu: s-- qr platnosc --s
Linia polecenia przelewu płatności zapisana w kodzie 2-wymiarowym 2D (QR)
3. Przekazywanie wartości pomiędzy wydrukami
Tabela: ţTR_MEM[] przekazuje wartości między wydrukami składanymi.
Zawartość tabeli o nazwie TR_MEM jest widoczna w wydrukach głównym, kaskadowym i składanym.
Funkcje TrExtLang
Tabela: ţTR_MEM[] przekazuje wartości:
- z głównego --> do składanego
- ze składanego --> do głównego
- ze składanego --> do kolejnego składanego
Wydruki składane1. Czym są
Wydruk składany to scalanie treści kilku wzorców w jeden dokument.
Pod-wydruk jest wstawiany w trakcie drukowania dokumentu bazowego i staje się jego częścią.
---
2. Kluczowe cechy
* Scalanie treści - wszystko trafia do jednego pliku/strumienia wydruku.
* Elastyczność struktury - można dodawać moduły w dowolnym miejscu.
* Warunkowe wstawianie - możliwość dodania treści tylko przy spełnieniu określonych warunków.
* Łatwiejsze utrzymanie wzorców - część wspólną można trzymać w jednym miejscu.
---
3. Typowe zastosowania
* Faktura zbudowana z części wspólnej + wariantów (oryginał, kopia, duplikat)
* Wstawianie standardowych tekstów (np. 'Płatność przelewem w terminie 7 dni')
* Wstawianie tabel uzupełniających (np. stan należności kontrahenta)
* Wydruki w różnych językach zależnie od kraju/klienta
* Bloki danych (np. historia faktur, wyniki QA, QR do płatności)
---
4. Zalety
* Zmiana w jednym wzorcu automatycznie aktualizuje wszystkie dokumenty, które go używają.
* Możliwość łatwego personalizowania treści dokumentów.
* Porządek w bazie wzorców (brak wielu kopii z drobnymi różnicami).
---
5. Ograniczenia
* Wszystko trafia do jednego wydruku - nie da się wysłać części dokumentu
jako osobnego pliku bez dodatkowych operacji.
* Wymaga dobrego planu wzorców, by uniknąć chaosu w strukturze.
---
6. Główne funkcje
```
ţWstawWydruk{system;rodzaj;wzorzec;nr dok}
```
---
Porównanie - kaskadowe vs składane
| Cecha | Kaskadowe | Składane |
| --------------------------- | ----------------------------------------- | ---------------------------------------- |
| Efekt | Kilka osobnych dokumentów | Jeden scalony dokument |
| Kolejność | Po sobie | W dowolnym miejscu wydruku |
| Główna funkcja | `ţInnyWydruk{}` | `ţWstawWydruk{}` |
| Możliwość osobnych urządzeń | Tak | Nie (jeden strumień) |
| Zastosowania | Automatyczny przepływ dokumentów, kolejki | Budowa dokumentu z modułów |
| Integracja z SOA | Tak | Rzadziej używane |
| Utrzymanie wzorców | Osobne pliki dla każdego dokumentu | Modułowe, część wspólna w jednym miejscu |
---