WikiPrint - from Polar Technologies

Szablony

eDokumenty umożliwiają obsługę szablonów pism. Procedura ich tworzenia jest prosta, a sam system zawiera kilka predefiniowanych szablonów. Szablony dostępne są w każdym miejscu w systemie, w którym możemy stworzyć nowy dokument z menu Nowy / Utwórz z szablonu -> wybór właściwego szablonu.

Praca z szablonami, zarządzanie nimi oraz sposób tworzenia opisana jest tu tu?

Tworzenie własnego szablonu

Drzewiasta struktura dostępna jest globalnie dla wszystkich użytkowników W systemie dostępne później są z menu Nowy > Utwórz z szablonu. Aktualnie szablony tworzone są w formacie RTF. Dzięki wtyczkom do Worda i OpenOffice, możliwe jest tworzenie dokumentów z szablonów a następnie dopracowanie ich w edytorze tekstu po czym ponowne zapisanie na serwerze.

Szablony implementują standardowy mechanizm znaczników, znany z innych systemów. Tworzenie szablonu polega więc na tworzeniu dokumentów i wstawianiu w odpowiednie miejsca znaczników. Tak utworzony szablon można bezpośrednio zapisać w systemie do ponownego użycia bezpośrednio z poziomu edytora tekstu.

Dostepne są 3 rodzaje znaczników:

Na start dostępna jest lista predefiniowanych znaczników, które należy zaimportować do aktywnej listy. Po instalacji dostępnych jest kilka znaczników których można używać od razu

W praktyce wystarczy się posługiwać kilkoma znacznikami aby utworzyć większość szablonów. Takimi znacznikami są np.:

                                                                #JEDNOSTKA.MIASTO# dnia: #DATA.DZISIAJ#
                                                                           Znak sprawy: #SPRAWA.SYMBOL#


#JEDNOSTKA.NAZWA#
#PRACOWNIK.JEDNOSTKA_ORG#
#JEDNOSTKA.ULICA# #JEDNOSTKA.NUMER_DOMU#
#JEDNOSTKA.KOD# #JEDNOSTKA.MIASTO#


                                                                                #KONTAKT.SAM_ADRES=bloczek#


                                         Wezwanie do zapłaty


               Wzywam Pana/Panią #KONTAKT.NAZWA# legitymującego się numerem PESEL: #KONTAKT.PESEL# 
                        do uregulowania zaległej płatności w wysokości:
                                        #KONTAKT.SALDO#


                                                          Z poważaniem
                                                          #PRACOWNIK.STANOWISKO#
                                                          #PRACOWNIK.IMIE_NAZWISKO#}}}

Z powyższego szablony obsługiwanymi znacznikami są :

Istnieje możliwość zdefiniowania reszty użytych w powyższym szablonie znaczników przez wdrożeniowca lub programistę.

Oprócz tego istnieje możliwość tworzenia własnych znaczników na podstawie struktury bazy danych i tworzonych cech. Poniżej opisany jest mechanizm tworzenia dla każdego rodzaju znaczników.

Znacznik zwykły - z bazy danych

Format takiego znacznika to #NAZWA_TABELI.NAZWA_POLA# a sposób definiowania opisany jest poniżej:


Znacznik tworzony z cechy

Sposób definiowania tego typu znacznika jest bardzo podobny do poprzedniego z różnicą ostatniego pola "Cecha:"


Znacznik z helperem

Definiowania znacznika z pomocnikiem (helperem):
Górna część definicji znacznika pozostaje taka sama jak w poprzednich. Nowością jest lista predefiniowanych pomocnych znaczników (helperów). Jest to najprostszy sposób definiowania znacznika gdyż nie wymaga znajomości tabel jednak ma ograniczenie gdyż pomocnik jest definiowany tylko przez programistę.

w przypadku tego pola znacznik może produkować dowolnie zdefiniowaną treść jak np.: generowanie tabelki z wykazem zadłużenia.
Znaczniki z helperów mogą (nie wszystkie) udostępniać różne sposoby wyświetlania. Aby spowodować wyświetlenie odpowiedniego formatowania w obrębie znacznika dodajemy odpowiedni token np. #KONTAKT.ADRES=bloczek#


Znacznik jako SQL

Znacznik ten daje największe możliwości jeśli chodzi o pobieranie danych z bazy.

Przykład wykorzystania tego znacznika
Jako przykład niech posłuży pobranie numeru nip jednej ze stron umowy. Zapytanie wygląda następująco:
select nip_ _ _ from contacts where contid = (select toctid from contract where ctrcid={CONTEXT})
Kroki tworzenia takiego zapytania są następujące:

Podzapytanie tworzymy podobnie jak zwykłq zapytanie sql ale jako warunek 'WHERE' wybieramy z listy kontekstów konkretny kontekst. W naszym przypadku będzie to kontekst 'Umowa'. Po wybraniu tego kontekstu w miejsce kursora w polu zapytania sql pojawi się definicja ctrcid={CONTEXT}. Aby zmienić kontekst usuwamy fragment ctrcid={CONTEXT} i ponownie wybieramy kontekst.
Aby obsłużyć brak danych i wypisać własny komunikat należy użyć formy np.
SELECT COALESCE((SELECT nip_ _ _ FROM contacts WHERE contid=c.toctid)::text , 'brak numeru nip') FROM contract c WHERE ctrcid={CONTEXT}
Powodzenia.
UWAGI
W przypadku szablonów tworzonych w formacie rtf należy pamiętać, iż możliwe jest aby tekst w znaczniku był formatowany tak jak sobie tego życzy użytkownik. Znacznik można standardowo sformatować poprzez pogrubienie itd, jednak formatowaniu musi być poddany cały znacznik wraz z znakami '{{' lub '#'.


Nowe znaczniki:
WINDYKACJA.DATA.WYMAGALNOSCI.ZOBOWIAZANIA

KONTAKT.NUMER.NIP

WINDYKACJA.CENA_OBLICZONA

WINDYKACJA.CENA_OBLICZONA_SLOWNIE

WINDYKACJA.WIERZYCIEL.NUMER_NIP

WINDYKACJA.WYDATKI_TYPY_KOSZTOW

WINDYKACJA.WYDATKI_DATY_KOSZTOW

WINDYKACJA.WYDATKI_KWOTY_KOSZTOW

WINDYKACJA.PRZYCHOD_DATY_WPLYWU

WINDYKACJA.PRZYCHOD_KWOTY_WPLYWU

WINDYKACJA.SUMA_ZADLUZENIA_SLOWNIE

WINDYKACJA.DLUZNIK_NUMER_KRS

WINDYKACJA.DLUZNIK_NUMER_NIP

WINDYKACJA.DLUZNIK_NUMER_REGON

WINDYKACJA.ZYSK_BRUTTO

WINDYKACJA.ZYSK_NETTO

WINDYKACJA.ZYSK_VAT

SPRAWA.SYMBOL_SPRAWY_NADRZEDNEJ

WINDYKACJA.DATA_WYSTAWIENIA_PIERWSZEJ_FAKTURY

WINDYKACJA.DATA_WYSTAWIENIA_OSTATNIEJ_FAKTURY

PISMO.OPIS