|
Wzór makiety przygotowujemy w formacie HTML. Oprócz standardowego formatu HTML program wymaga pewnych dodatkowych danych:
21 pierwszych linii przeznaczonych jest na ustawienie konfiguracji wydruku w programie
między znakami # wstawiane są instrukcje interpretowane przez program
Wzór makiety modyfikujemy na zakładce Źródło.
Przy modyfikacji i tworzeniu nowych dokumentów trzymamy się następujących zasad:
wzorujemy się na wcześniej utworzonych lub standardowych makietach
używamy standardowego języka HTML
niestandardowe instrukcje interpretowane przez program (#...#) wstawiamy klikając w zaplanowanym miejscu prawym klawiszem myszy
przechodząc na zakładkę Podgląd możemy od razu zobaczyć efekt swojej modyfikacji
W przygotowywanym wzorze oprócz układu ramek i stałych tekstów chcielibyśmy umieścić dane konkretnego pracownika. W tym celu w wybranym miejscu klikamy prawym klawiszem myszy i wybieramy odpowiednio:
Wstaw dane - podczas wydruku symboliczna dana zastąpiona zostanie faktyczną,
np. w miejscu #P_Nazwisko# podstawi się nazwisko konkretnego pracownika.
Szczególne dane z podmenu "Inne":
#AktualnaData# - bieżąca data z ustawień programu
#Data_Do# - "data do" z seryjnych dokumentów własnych
#Data_Od# - "data od" z seryjnych dokumentów własnych
#NastXx# - podaje datę dnia tygodnia Xx następującego po bieżącej dacie w ustawieniach programu (Xx=Pn,Wt,Śr,Cz,Pi,So,Ni)
#TytulDokumentu# - podaje tytuł bieżącego dokumentu
Dla zestawień SQL możemy wybrać pola od #SQL_00# do #SQL_99#. Odpowiadają one kolejności pól, jakie pokażą się na zestawieniu.
Wstaw znaki sterujące - podczas wydruku symboliczny znak sterujący ustawi np. kolor systemowy
wybrany w programie.
Wykaz znaków sterujących:
#SON# - Zmienia czcionkę na ARIAL i zmniejsza rozmiar
#SOF# - Wyłącza #SON#'
#AON# - Zmień czcionkę na ARIAL i wytłuść
#AOF# - Wyłącza #AON#'
#bgBiały# - Zmienny kolor systemowy
#bgJasny# - Zmienny kolor systemowy
#bgPośredni# - Zmienny kolor systemowy
#bgCiemny# - Zmienny kolor systemowy
#bgCzarny# - Zmienny kolor systemowy
#_bgBiały# - Stały kolor systemowy (niezależny od ustawień z/bez odcieni szarości)
#_bgJasny# - Stały kolor systemowy (niezależny od ustawień z/bez odcieni szarości)
#_bgPośredni# - Stały kolor systemowy (niezależny od ustawień z/bez odcieni szarości)
#_bgCiemny# - Stały kolor systemowy (niezależny od ustawień z/bez odcieni szarości)
#_bgCzarny# - Stały kolor systemowy (niezależny od ustawień z/bez odcieni szarości)
#_KolorRamki# - Tak jak #_bgCiemny#, ale do użycia w stylach
#KolorRamki# - Tak jak #bgCiemny#, ale do użycia w stylach
#Pole_wyboru# - Pole wyboru (kwadrat pusty)
#Pole_wyboru_c# - Pole wyboru (kwadrat czarny)
#X# - Znacznik (X)
# # - Znacznik ( )
#Pole_wyboru_x# - Pole wyboru (zaznaczone)
#Pole_wyboru_puste# - Pole wyboru (puste)
#Kontrolka_SQL_0..9# - Kontrolka zestawienia SQL (kolejność odpowiada użytym kontrolkom z zestawienia)
Wstaw pętlę - jeśli we wstawionej pętli wstawimy dane, np.
#LOOP Członkowie rodziny#
#R_Imię#
#ENDLOOP#
otrzymamy listę imion dzieci danego pracownika
Wstaw warunek - używamy, jeśli chcemy umieścić fragment tekstu drukowany tylko wtedy, gdy spełniony zostanie odpowiedni warunek, np.
#IF SYS_Wynagrodzenie_brutto#>0
pracownik otrzymał wynagrodzenie
#ELSE#
pracownik nie otrzymał wynagrodzenia
#ENDIF#
jeśli wynagrodzenie brutto było większe od zera zostanie wydrukowany tekst "pracownik otrzymał wynagrodzenie", a w przeciwnym wypadku tekst "pracownik nie otrzymał wynagrodzenia"
Wstaw funkcję - możemy wykonywać proste operacje na kwotach i wyrazach. Lista dostępnych funkcji:
$Oblicz{...} - oblicza wyrażenie arytmetyczne np: $Oblicz{#SYS_Wynagrodzenie_brutto#-#SYS_Podatek_dochodowy#-#SYS_Składka_ZUS_prac.#-#SYS_Składka_zdrow.#}. Funkcja musi być zapisana w jednej linii.
$Słownie - podaje słowną interpretację kwoty np: #SYS_Wynagrodzenie_brutto#$Słownie
$Dużymi - drukuje dane dużymi literami np: #P_Nazwisko#$Dużymi
$Suma - podaje sumę dowolnego pola np: #SYS_Wynagrodzenie_brutto#$Suma
$Abs - podaje wartość bezwzględną kwoty np: #SYS_Wynagrodzenie_brutto#$Abs
$Znak - podaje i-ty znak dowolnego pola np: #P_Nazwisko#$Znak[1]
$SQL{...} - wstawia wynik zapytania SQL podanego pomiędzy nawiasami klamrowymi. Jeśli zapytanie zwróci kilka wierszy lub kolumn (np.jakąś tabelę), jego wiersze zostaną opatrzone atrybutami <tr>...</tr>, a kolumny <td>...</td>, dlatego aby poprawnie go wyświetlić należy funkcję objąć atrybutami <table>...</table>. Funkcja musi być zapisana w jednej linii.
Np. funkcja zwraca wiele wartości:
<table>
$SQL{select * from PRACOWNK}
</table>
Funkcja zwraca jedną wartość:
$SQL{select [Nazwisko] from PRACOWNK where [X_I]=12}
W zapytaniu SQL można używać tych samych wyrażeń jak w obiektach użytkownika i w zestawieniach SQL, a w szczególności:
UWAGA 1 - tworzenie dokumentu wielostronicowego
1. Należy w nagłówku makiety (pierwsze 21 linii) zmodyfikować linię sterującą liczba stron #... (wpisać ich liczbą po znaku #)
2. Na początku każdej następnej strony (za wyjątkiem pierwszej) wpisać klauzulę <!-- NOWA STRONA -->
UWAGA 2 - użycie kontrolek w funkcji $SQL
Należy w nagłówku makiety (pierwsze 21 linii) zmodyfikować linię sterującą inne #0 na inne #2
Zmodyfikowaną makietę zapisujemy klikając w przycisk .
Makiety można także tworzyć według nowego stylu, gdzie zamiast tradycyjnych tagów (np.#Pole#) używane są pola z tabel aplikacji, tak jak w wyzwalaczach i innych obiektach.
Można utworzyć:
pętle ( zrobi tabelę) np.
{TABELA.^BEGINLOOP}
warunki np.
{^IF}{TABELA.POLE}>0 (lub dowolne wyrażenie warunkowe)
zrób coś
{^ELSEIF}
zrób coś innego
{^ENDIF}
obliczanie wyrażeń np.
{^COUNT}({TABELA.POLE1}+{TABELA.POLE2})/2
zapytanie sql np.
{^SQL} select [jakieś_pole] from jakaś_tabela where jakiś_warunek (dowolny sql)
suma pól tabeli np.
{TABELA.^SUM.POLE}
Pętle i warunki mogą być zagnieżdżane dowolnie.