Dane użytkownika programu (określone w oknie Konfiguracja):
@_miejscowosc (@_place) - miejscowość
@_adres (@_address) - adres, ulica, nr domu
@_kod (@_zip_code) - kod pocztowy
@_firma (@_company) - nazwa firmy
@_miesiac (@_month) - nazwa wybranego miesiąca
@_miesiac_nr (@_month_no) - numer wybranego miesiąca
@_miesiac_ile_roboczych (@_month_days_qty) - ilość dni roboczych w wybranym miesiącu
@_miesiac_ile_calozmianowych (@_month_all_shift_duty_qty) - ilość dyżurów, o długości pierwszej zmiany, w wybranym miesiącu
@_miesiac_ile_dni (@_month_days) - ilość dni w wybranym miesiącu
@_rok (@_year) - wybrany rok
@_grupa_nazwa (@_group_name) - nazwa wybranej grupy pracowników
@_grupa_normatyw (@_group_normative) - normatyw miesięczny dla wybranej grupy pracowników
@_grupa_dopracowanie (@_group_least) - dopracowanie dla wybranej grupy pracowników
@_dzien_nr (@_day_no) - numer kolejny dnia
@_dzien_klasa_tytul (@_day_class_title) - nazwa "klasy" dla języka HTML, pozwalająca sformatować nagłówek tabeli z podziałem na dni świąteczne i zwykłe (wiersz w tabeli z tytułami kolumn)
@_dzien_klasa (@_day_class) - nazwa "klasy" dla języka HTML, pozwalająca sformatować tabelę z podziałem na dni świąteczne i zwykłe
@_1n_dzien_klasa (@_n1_day_class) - nazwa "klasy" dla języka HTML, dla pierwszego dnia następnego miesiąca, pozwalająca sformatować tabelę z podziałem na dni świąteczne i zwykłe
@_dzien_nazwa - nazwa dnia
@_dzien_nazwa_krotka - krótka nazwa dnia
@_dzien_uwagi - notatki dla dnia
@_zmiana_symbol[_nr_zmiany] (@_shift_symbol) - symbol dyżyru całozmianowego
@_zmiana_nazwa[_nr_zmiany] (@_shift_name) - nazwa zmiany
@_zmiana_od[_nr_zmiany] (@_shift_from) - godzina, od której zaczyna się zmiana robocza
@_zmiana_do[_nr_zmiany] (@_shift_to) - godzina, o której kończy się zmiana robocza
@_zmiana_nr[_nr_zmiany] (@_shift_no) - numer zmiany roboczej
@_dyzur_kto[_nr_zmiany] (@_duty_who) - skrócone nazwy pracowników mających dyżur na wybranej zmianie
Jeżeli, któraś z powyższych sześciu zmiennych zostanie zawarta pomiędzy <_ZMIANA> a </ZMIANA>, wówczas nawiasy kwadratowe oraz numer zmiany pomiędzy nimi nie muszą być podawane
@_dzien_kto_8 (@_day_who_8) - lista pracowników, którzy w danym dniu pełnią dyżur na zmianie "8"
@_dzien_kto_dopr (@_day_who_least) - lista pracowników, którzy w danym dniu pełnią dyżur o czasie trwania równym dopracowaniu
@_dzien_kto_inny (@_day_who_other) - lista pracowników, którzy w danym dniu pełnią dyżur o nietypowym czasie trwania
@_dzien_kto_urlopy (@_day_who_holiday) - lista pracowników, którzy w danym dniu pozostają na urlopie wypoczynkowym
@_dzien_kto_wolne (@_day_who_dayoff) - lista pracowników, którzy w danym dniu mają dzień wolny
@_dzien_kto_wolne_1 (@_day_who_dayoff_1) - lista pracowników, którzy w danym dniu mają dzień wolny za pracę w niedzielę
@_dzien_kto_wolne_7 (@_day_who_dayoff_7) - lista pracowników, którzy w danym dniu mają dzień wolny za pracę w sobotę
@_dzien_kto_wolne_s (@_day_who_dayoff_s) - lista pracowników, którzy w danym dniu mają dzień wolny za pracę w święto
@_dzien_kto_zwolnienia (@_day_who_zwolnienia) - lista pracowników, którzy w danym dniu pozostają na zwolnieniu lekarskim
@_dzien_kto_inne_wolne (@_day_who_other_dayoff) - lista pracowników, którzy w danym dniu są nieobecni z innego powodu
@_dzien_ile_dyz (@_day_duties_count) - ilość rozpisanych dyżurów w danym dniu
@_dzien_max_dyz_tydz (day_max_duties_week) - największa ilość rozpisanych dyżurów w ciągu dnia w danym tygodniu (tydzień liczony od poniedziałku do niedzieli)
@_suma_wypr (@_all_sum) - suma wszystkich wypracowanych godzin (przez wszystkich pracowników)
@_dyzur_typ (@_duty_type) - numer zmiany, na której wypada początek dyżuru
@_dyzur_zmiana (@_duty_shift) - nazwa zmiany, na której wypada początek dyżuru
@_dyzur_uwagi (@_duty_note) - notatka dodana do dyżuru
@_dyzur_symbol (@_duty_symbol) - symbol dyżuru
@_dyzur_wolne_symbol (@_duty_dayoff_symbol) - symbol dyżuru lub wolnego, w zależności od tego co jest w danym dniu wstawione
@_dyzur_ile (@_duty_length) - czas trwania dyżuru
@_dyzur_ile_d (@_duty_d_quantity) - ilość godzin "dziennych" przypadających na dyżur
@_dyzur_ile_n (@_duty_n_quantity) - ilość godzin "nocnych" przypadających na dyżur
@_dyzur_ile_s (@_duty_h_quantity) - ilość godzin "świątecznych" przypadających na dyżur
@_dyzur_ile_dyz (@_duty_day_length) - czas trwania dyżuru (przypisany do dnia, w którym rozpoczął się dyżur)
@_dyzur_ile_dyz_d (@_duty_day_d_quantity) - ilość godzin "dziennych" przypadających na dyżur (przypisane do dnia, w którym rozpoczął się dyżur)
@_dyzur_ile_dyz_s (@_duty_day_h_quantity) - ilość godzin "świątecznych" przypadających na dyżur (przypisane do dnia, w którym rozpoczął się dyżur)
@_dyzur_ile_dyz_g (@_duty_day_length_all) - czas trwania dyżuru łącznie z godzinami nadliczbowymi (przypisany do dnia, w którym rozpoczął się dyżur)
@_dyzur_od (@_duty_from) - godzina rozpoczęcia dyżuru
@_dyzur_do (@_duty_to) - godzina zakończenia dyżuru
@_dyzur_oddo (@_duty_fromto) - godzina rozpoczęcia oraz zakończenia dyżuru
@_dyzur_oddo_g (@_duty_fromto_all) - godzina rozpoczęcia oraz zakończenia dyżuru, z uwzględnieniem godzin nadliczbowych
@_dyzur8_do (@_duty8_to) - godzina zakończenia dyżuru "8"
@_dopracowanie_do (@_least_to) - godzina zakończenia dyżuru, o czasie trwania równemu dopracowaniu
@_dyzur_nadgodz (@_duty_overtime) - ilość godzin nadliczbowych
@_dyzur_nadgodz_do (@_duty_overtime_to) - godzina zakończenie godzin nadliczbowych
@_dyzur_100_nadgodz (@_duty_100_overtime) - ilość godzin nadliczbowych liczonych jako 100%
@_dyzur_50_nadgodz (@_duty_50_overtime) - ilość godzin nadliczbowych liczonych jako 50%
@_dyzur_wolne_ile (@_duty_dayoff_quantity) - ilość godzin dyżuru lub wolnego, jeśli jest ono wstawione
@_dyzur_wolne_dyz_ile (@_duty_day_dayoff_quantity) - ilość godzin dyżuru lub wolnego, jeśli jest ono wstawione
@_wolne_ile (@_dayoff_quantity) - ilość godzin wolnego
@_wolne_typ (@_dayoff_type) - typ wolnego (pobierany z konfiguracji, zakładka "Urlopy")
@_wolne_nazwa (@_dayoff_name) - nazwa wolnego (pobierana z konfiguracji, zakładka "Urlopy")
@_1n_dzien_symbol (@_n1_day_symbol) - symbol dyżuru w pierwszym dniu następnego miesiąca
@_1n_dzien_ile_d (@_n1_day_d_qty) - ilość godzin "dziennych" przypadających na dyżur w pierwszym dniu następnego miesiąca
@_1n_dzien_ile_n (@_n1_day_n_qty) - ilość godzin "nocnych" przypadających na dyżur w pierwszym dniu następnego miesiąca
@_prac_nr (@_worker_no) - muner porządkowy pracownika
@_prac_nazwisko (@_worker_surname) - nazwisko pracownika
@_prac_imie (@_worker_name) - imię pracownika
@_prac_skrot (@_worker_nick) - skrót pracownika
@_prac_adres (@_worker_adress) - adres pracownika
@_prac_poczta (@_worker_postoffice) - poczta
@_prac_kod (@_worker_zipcode) - kod pocztowy
@_prac_telefon (@_worker_phone) - telefon
@_prac_email (@_worker_email) - e-mail
@_prac_stanowisko (@_worker_occupation) - stanowisko zajmowane przez pracownika
@_prac_etat (@_worker_part_time) - wymiar etatu
@_prac_nadpr_z_poprz_mies (@_worker_prev_month_extra_time) - nadpracowanie/niedopracowanie z poprzedniego miesiąca
@_prac_reczna_korekta_normatywu (@_worker_manual_correction) - ręczna korekta normatywu
@_prac_urlop_wyp_poz (@_worker_holiday_remain) - całkowita ilość urlopu wypoczynkowego pozostała do wykorzystania
@_prac_urlop_wyp_poz_pop_rok (@_worker_holiday_remain_last_year) - ilość urlopu wypoczynkowego pozostała do wykorzystania z poprzedniego roku
@_prac_urlop_wyp_poz_ten_rok (@_worker_holiday_remain_this_year) - ilość urlopu wypoczynkowego pozostała do wykorzystania z bieżącego roku
Uwaga: Zmienne dotyczące urlopu zwracają dane aktualne na dzień generowania wydruku. Tzn. jeżeli z jakiegoś powodu trzeba będzie wygenerować wydruk dla jakiegoś wcześniejszego miesiąca to dane urlopowe wykazane na wydruku będą i tak dotyczyły dnia bieżącego.
@_prac_pesel (@_worker_national_identity) - PESEL pracownika
@_prac_wyksztalcenie (@_worker_education) - wykształcenie pracownika
@_prac_kursy (@_worker_courses) - kursy i szkolenia ukończone przez pracownika
@_prac_inne1 (@_worker_user1) - dane dodatkowe dotyczące pracownika
@_prac_inne2 (@_worker_user2) - dane dodatkowe dotyczące pracownika
@_prac_inne3 (@_worker_user3) - dane dodatkowe dotyczące pracownika
@_prac_normatyw (@_worker_normative) - normatyw pracownika w wybranym miesiącu
@_prac_normatyw_bu (@_worker_normative_wd) - normatyw pracownika w wybranym miesiącu pomniejszony o wymiar urlopu
@_prac_suma_wypr (@_worker_all_sum) - sumaryczna ilość godzin wypracowanych w wybranym miesiącu z godzinami nadl.
@_prac_suma_wypr_bn (@_worker_all_sum_wo) - sumaryczna ilość godzin wypracowanych w wybranym miesiącu bez godzin nadliczbowych
@_prac_normatyw_bn (@_worker_normative_wo) - miesięczny normatyw pracownika z pominięciem nadpracowania/niedopracowania z poprzedniego miesiąca
@_prac_suma_dyzur (@_worker_duty_sum) - sumaryczna ilość godzin, przypadających na dyżury, wypracowanych w wybranym miesiącu z godzinami nadl.
@_prac_suma_dyzur_bn (@_worker_duty_sum_wo) - sumaryczna ilość godzin, przypadających na dyżury, wypracowanych w wybranym miesiącu bez godzin nadliczbowych
@_prac_suma_d (@_worker_d_sum) - sumaryczna ilość godzin "dziennych" wypracowanych w wybranym miesiącu
@_prac_suma_n (@_worker_n_sum) - sumaryczna ilość godzin "nocnych" wypracowanych w wybranym miesiącu
@_prac_suma_n_ilosc (@_worker_n_sum_qty) - ilość dyżurów "nocnych" w wybranym miesiącu
@_prac_suma_s (@_worker_h_sum) - sumaryczna ilość godzin "świątecznych" wypracowanych w wybranym miesiącu
@_prac_suma_so (@_worker_sa_sum) - sumaryczna ilość godzin "dziennych" wypracowanych w soboty w wybranym miesiącu
@_prac_suma_ab (@_worker_ab_sum) - sumaryczna ilość godzin wolnego w wybranym miesiącu
@_prac_suma_g1 (@_worker_ot1_sum) - sumaryczna ilość godzin nadliczbowych "100%" wypracowanych w wybranym miesiącu
@_prac_suma_g2 (@_worker_ot2_sum) - sumaryczna ilość godzin nadliczbowych "50%" wypracowanych w wybranym miesiącu
@_prac_suma_gn (@_worker_ot_sum) - sumaryczna ilość godzin nadliczbowych "50%" orz "100%" wypracowanych w wybranym miesiącu
@_prac_roznica_normatyw (@_worker_diffrence_normative) - różnica pomiędzy ilością godzin wypracowanych a normatywem miesięcznym
@_prac_roznica_normatyw_pracownika (@_worker_diffrence_worker_normative) - różnica pomiędzy ilością godzin wypracowanych a normatywem miesięcznym pracownika
@_prac_roznica_normatyw_pracownika_bn (@_worker_diffrence_worker_normative_wo) - różnica pomiędzy ilością godzin wypracowanych a normatywem miesięcznym pracownika bez godzin nadliczbowych
//symbole dni wolnych:
//a-na żądanie,
//u-wypoczynkowy,
//m-macierzyński,
//w-wychowawczy,
//s-szkoleniowy,
//z-zwolnienie,
//o-opieka,
//i-inny,
//n-nieusprawiedliwiony,
//ż-dzień, w którym pracownik nie chce dyżuru,
//1-wolne za niedzielę/święto,
//7-wolne za sobotę,
//9-wolne za święto,
//5-wolne wynikające z 5-dniowego tygodnia pracy
//b-bezpłatny
//r-opieka nad członkiem rodziny
//d-zwolnienie na dziecko
//h-rehabilitacyjny
//k-okolicznościowy
//j-ojcowski
//t-tacierzyński
//c-rodzicielski
@_wolne_typ_ilosc_[symbol(e)_dni_wolnych] (dayoff_type_qty_) - typ wolnego (pobierany z konfiguracji, zakładka "Urlopy") wraz z miesięczną ilością godzin wolnego danego typu
@_prac_wolne_ile_[symbol(e)_dni_wolnych] - ilość godzin wolnego w danym dniu
@_prac_wolne_suma_[symbol(e)_dni_wolnych] - ilość godzin wolnego w wybranym miesiącu
@_prac_ile_dyz_wol(worker_duty_dayoff_qty) - ilość dyżurów i wolnych w miesiącu
@_prac_ile_dyz(worker_duty_qty) - ilość dyżurów w miesiącu
@_prac_ile_wol(worker_dayoff_qty) - ilość wolnych w miesiącu
@_wolne_do (@_dayoff_to) - numer dnia miesiąca, w którym kończy się wolne
@_wolne_ile_dni (@_dayoff_days_quantity) - czas trwania wolnego wyrażony w dniach
@_wolne_ile_dni_roboczych (@_dayoff_work_days_quantity) - czas trwania wolnego wyrażony w dniach roboczych
@_wolne_ile_godzin (@_dayoff_hours_quantity) - czas trwania wolnego, wynikający z dyżurów rozpisanych w jego czasie, wyrażony w godzinach
@_wolne_ile_godzin_norma (@_dayoff_hours_norma_quantity) - czas trwania wolnego, wynikający z normatywu, wyrażony w godzinach
@_read_all_groups - powoduje, że na niektórych wydrukach mogą być pokazywane dodatkowo dyżury pełnione w innych grupach (dotyczy pracowaników pracujących w ciągu tego samego miesiąca w ramach różnych grup). Zmienna powinna być umieszczana na początku szablonu
@_dot_as_time_sep - ustawia kropkę zamiast dwukropka jako separator godzin i minut. Zmienna powinna być umieszczana na początku szablonu
@_clear_auto_eols - usuwa wszystkie automatyczne znaki końca linii. Zmienna powinna być umieszczana na początku szablonu
@_eol - znak końca linii
Dodatkowo:
- jeżeli zmienna przybiera wartość 0 (zero) i wartość ta ma być pokazana na wydruku to na końcu zmiennej należy dodać symbol 0 np: @_prac_suma_d0
- jeżeli wartość zmiennej to godzina i wymagany jest zapis w formacie: 00:00 to na końcu zmiennej należy dodać symbol : np: @_prac_suma_d:
Ponadto w/w zmienne można umieszczać pomiędzy znacznikami:
<_DZIEN> zmienne* </DZIEN>, zmienne* dotyczące dni przybiorą wartości adekwatne do poszczególnych dni miesiąca, np. zapis w szablonie <_DZIEN>@_dzien_nr, </DZIEN> da na wydruku tekst 1, 2, 3, itd. aż do numeru ostatniego dnia danego miesiąca.
<_PRAC> zmienne* </PRAC>, zmienne* dotyczące pracowników przybiorą wartości adekwatne do kolejnych pracowników, np. zapis w szablonie <_PRAC>@_prac_nazwisko @_prac_imie, @_prac_suma_wypr <br></PRAC>da na wydruku listę pracowników z ilością wypracowanych w danym miesiącu godzin.
<_ZMIANA> zmienne* </ZMIANA>, zmienne* dotyczące zmian przybiorą wartości adekwatne do kolejnych zmian.
<_GRUPA> zmienne* </GRUPA>, zmienne* dotyczące grup pracowników przybiorą wartości adekwatne do kolejnych grup pracowników.
<_NADGODZ> zmienne* </NADGODZ>.
Znaczniki można zagnieżdżać w sobie, pilnując by liczba poziomów zagnieżdżenia nie przekroczyła dwóch, np.
<_PRAC>@_prac_nazwisko @_prac_imie<br>
<_DZIEN>
@_dyzur_wolne_symbol
</DZIEN>
</PRAC>
@_miejscowosc (@_place) - miejscowość
@_adres (@_address) - adres, ulica, nr domu
@_kod (@_zip_code) - kod pocztowy
@_firma (@_company) - nazwa firmy
@_miesiac (@_month) - nazwa wybranego miesiąca
@_miesiac_nr (@_month_no) - numer wybranego miesiąca
@_miesiac_ile_roboczych (@_month_days_qty) - ilość dni roboczych w wybranym miesiącu
@_miesiac_ile_calozmianowych (@_month_all_shift_duty_qty) - ilość dyżurów, o długości pierwszej zmiany, w wybranym miesiącu
@_miesiac_ile_dni (@_month_days) - ilość dni w wybranym miesiącu
@_rok (@_year) - wybrany rok
@_grupa_nazwa (@_group_name) - nazwa wybranej grupy pracowników
@_grupa_normatyw (@_group_normative) - normatyw miesięczny dla wybranej grupy pracowników
@_grupa_dopracowanie (@_group_least) - dopracowanie dla wybranej grupy pracowników
@_dzien_nr (@_day_no) - numer kolejny dnia
@_dzien_klasa_tytul (@_day_class_title) - nazwa "klasy" dla języka HTML, pozwalająca sformatować nagłówek tabeli z podziałem na dni świąteczne i zwykłe (wiersz w tabeli z tytułami kolumn)
@_dzien_klasa (@_day_class) - nazwa "klasy" dla języka HTML, pozwalająca sformatować tabelę z podziałem na dni świąteczne i zwykłe
@_1n_dzien_klasa (@_n1_day_class) - nazwa "klasy" dla języka HTML, dla pierwszego dnia następnego miesiąca, pozwalająca sformatować tabelę z podziałem na dni świąteczne i zwykłe
@_dzien_nazwa - nazwa dnia
@_dzien_nazwa_krotka - krótka nazwa dnia
@_dzien_uwagi - notatki dla dnia
@_zmiana_symbol[_nr_zmiany] (@_shift_symbol) - symbol dyżyru całozmianowego
@_zmiana_nazwa[_nr_zmiany] (@_shift_name) - nazwa zmiany
@_zmiana_od[_nr_zmiany] (@_shift_from) - godzina, od której zaczyna się zmiana robocza
@_zmiana_do[_nr_zmiany] (@_shift_to) - godzina, o której kończy się zmiana robocza
@_zmiana_nr[_nr_zmiany] (@_shift_no) - numer zmiany roboczej
@_dyzur_kto[_nr_zmiany] (@_duty_who) - skrócone nazwy pracowników mających dyżur na wybranej zmianie
Jeżeli, któraś z powyższych sześciu zmiennych zostanie zawarta pomiędzy <_ZMIANA> a </ZMIANA>, wówczas nawiasy kwadratowe oraz numer zmiany pomiędzy nimi nie muszą być podawane
@_dzien_kto_8 (@_day_who_8) - lista pracowników, którzy w danym dniu pełnią dyżur na zmianie "8"
@_dzien_kto_dopr (@_day_who_least) - lista pracowników, którzy w danym dniu pełnią dyżur o czasie trwania równym dopracowaniu
@_dzien_kto_inny (@_day_who_other) - lista pracowników, którzy w danym dniu pełnią dyżur o nietypowym czasie trwania
@_dzien_kto_urlopy (@_day_who_holiday) - lista pracowników, którzy w danym dniu pozostają na urlopie wypoczynkowym
@_dzien_kto_wolne (@_day_who_dayoff) - lista pracowników, którzy w danym dniu mają dzień wolny
@_dzien_kto_wolne_1 (@_day_who_dayoff_1) - lista pracowników, którzy w danym dniu mają dzień wolny za pracę w niedzielę
@_dzien_kto_wolne_7 (@_day_who_dayoff_7) - lista pracowników, którzy w danym dniu mają dzień wolny za pracę w sobotę
@_dzien_kto_wolne_s (@_day_who_dayoff_s) - lista pracowników, którzy w danym dniu mają dzień wolny za pracę w święto
@_dzien_kto_zwolnienia (@_day_who_zwolnienia) - lista pracowników, którzy w danym dniu pozostają na zwolnieniu lekarskim
@_dzien_kto_inne_wolne (@_day_who_other_dayoff) - lista pracowników, którzy w danym dniu są nieobecni z innego powodu
@_dzien_ile_dyz (@_day_duties_count) - ilość rozpisanych dyżurów w danym dniu
@_dzien_max_dyz_tydz (day_max_duties_week) - największa ilość rozpisanych dyżurów w ciągu dnia w danym tygodniu (tydzień liczony od poniedziałku do niedzieli)
@_suma_wypr (@_all_sum) - suma wszystkich wypracowanych godzin (przez wszystkich pracowników)
@_dyzur_typ (@_duty_type) - numer zmiany, na której wypada początek dyżuru
@_dyzur_zmiana (@_duty_shift) - nazwa zmiany, na której wypada początek dyżuru
@_dyzur_uwagi (@_duty_note) - notatka dodana do dyżuru
@_dyzur_symbol (@_duty_symbol) - symbol dyżuru
@_dyzur_wolne_symbol (@_duty_dayoff_symbol) - symbol dyżuru lub wolnego, w zależności od tego co jest w danym dniu wstawione
@_dyzur_ile (@_duty_length) - czas trwania dyżuru
@_dyzur_ile_d (@_duty_d_quantity) - ilość godzin "dziennych" przypadających na dyżur
@_dyzur_ile_n (@_duty_n_quantity) - ilość godzin "nocnych" przypadających na dyżur
@_dyzur_ile_s (@_duty_h_quantity) - ilość godzin "świątecznych" przypadających na dyżur
@_dyzur_ile_dyz (@_duty_day_length) - czas trwania dyżuru (przypisany do dnia, w którym rozpoczął się dyżur)
@_dyzur_ile_dyz_d (@_duty_day_d_quantity) - ilość godzin "dziennych" przypadających na dyżur (przypisane do dnia, w którym rozpoczął się dyżur)
@_dyzur_ile_dyz_s (@_duty_day_h_quantity) - ilość godzin "świątecznych" przypadających na dyżur (przypisane do dnia, w którym rozpoczął się dyżur)
@_dyzur_ile_dyz_g (@_duty_day_length_all) - czas trwania dyżuru łącznie z godzinami nadliczbowymi (przypisany do dnia, w którym rozpoczął się dyżur)
@_dyzur_od (@_duty_from) - godzina rozpoczęcia dyżuru
@_dyzur_do (@_duty_to) - godzina zakończenia dyżuru
@_dyzur_oddo (@_duty_fromto) - godzina rozpoczęcia oraz zakończenia dyżuru
@_dyzur_oddo_g (@_duty_fromto_all) - godzina rozpoczęcia oraz zakończenia dyżuru, z uwzględnieniem godzin nadliczbowych
@_dyzur8_do (@_duty8_to) - godzina zakończenia dyżuru "8"
@_dopracowanie_do (@_least_to) - godzina zakończenia dyżuru, o czasie trwania równemu dopracowaniu
@_dyzur_nadgodz (@_duty_overtime) - ilość godzin nadliczbowych
@_dyzur_nadgodz_do (@_duty_overtime_to) - godzina zakończenie godzin nadliczbowych
@_dyzur_100_nadgodz (@_duty_100_overtime) - ilość godzin nadliczbowych liczonych jako 100%
@_dyzur_50_nadgodz (@_duty_50_overtime) - ilość godzin nadliczbowych liczonych jako 50%
@_dyzur_wolne_ile (@_duty_dayoff_quantity) - ilość godzin dyżuru lub wolnego, jeśli jest ono wstawione
@_dyzur_wolne_dyz_ile (@_duty_day_dayoff_quantity) - ilość godzin dyżuru lub wolnego, jeśli jest ono wstawione
@_wolne_ile (@_dayoff_quantity) - ilość godzin wolnego
@_wolne_typ (@_dayoff_type) - typ wolnego (pobierany z konfiguracji, zakładka "Urlopy")
@_wolne_nazwa (@_dayoff_name) - nazwa wolnego (pobierana z konfiguracji, zakładka "Urlopy")
@_1n_dzien_symbol (@_n1_day_symbol) - symbol dyżuru w pierwszym dniu następnego miesiąca
@_1n_dzien_ile_d (@_n1_day_d_qty) - ilość godzin "dziennych" przypadających na dyżur w pierwszym dniu następnego miesiąca
@_1n_dzien_ile_n (@_n1_day_n_qty) - ilość godzin "nocnych" przypadających na dyżur w pierwszym dniu następnego miesiąca
@_prac_nr (@_worker_no) - muner porządkowy pracownika
@_prac_nazwisko (@_worker_surname) - nazwisko pracownika
@_prac_imie (@_worker_name) - imię pracownika
@_prac_skrot (@_worker_nick) - skrót pracownika
@_prac_adres (@_worker_adress) - adres pracownika
@_prac_poczta (@_worker_postoffice) - poczta
@_prac_kod (@_worker_zipcode) - kod pocztowy
@_prac_telefon (@_worker_phone) - telefon
@_prac_email (@_worker_email) - e-mail
@_prac_stanowisko (@_worker_occupation) - stanowisko zajmowane przez pracownika
@_prac_etat (@_worker_part_time) - wymiar etatu
@_prac_nadpr_z_poprz_mies (@_worker_prev_month_extra_time) - nadpracowanie/niedopracowanie z poprzedniego miesiąca
@_prac_reczna_korekta_normatywu (@_worker_manual_correction) - ręczna korekta normatywu
@_prac_urlop_wyp_poz (@_worker_holiday_remain) - całkowita ilość urlopu wypoczynkowego pozostała do wykorzystania
@_prac_urlop_wyp_poz_pop_rok (@_worker_holiday_remain_last_year) - ilość urlopu wypoczynkowego pozostała do wykorzystania z poprzedniego roku
@_prac_urlop_wyp_poz_ten_rok (@_worker_holiday_remain_this_year) - ilość urlopu wypoczynkowego pozostała do wykorzystania z bieżącego roku
Uwaga: Zmienne dotyczące urlopu zwracają dane aktualne na dzień generowania wydruku. Tzn. jeżeli z jakiegoś powodu trzeba będzie wygenerować wydruk dla jakiegoś wcześniejszego miesiąca to dane urlopowe wykazane na wydruku będą i tak dotyczyły dnia bieżącego.
@_prac_pesel (@_worker_national_identity) - PESEL pracownika
@_prac_wyksztalcenie (@_worker_education) - wykształcenie pracownika
@_prac_kursy (@_worker_courses) - kursy i szkolenia ukończone przez pracownika
@_prac_inne1 (@_worker_user1) - dane dodatkowe dotyczące pracownika
@_prac_inne2 (@_worker_user2) - dane dodatkowe dotyczące pracownika
@_prac_inne3 (@_worker_user3) - dane dodatkowe dotyczące pracownika
@_prac_normatyw (@_worker_normative) - normatyw pracownika w wybranym miesiącu
@_prac_normatyw_bu (@_worker_normative_wd) - normatyw pracownika w wybranym miesiącu pomniejszony o wymiar urlopu
@_prac_suma_wypr (@_worker_all_sum) - sumaryczna ilość godzin wypracowanych w wybranym miesiącu z godzinami nadl.
@_prac_suma_wypr_bn (@_worker_all_sum_wo) - sumaryczna ilość godzin wypracowanych w wybranym miesiącu bez godzin nadliczbowych
@_prac_normatyw_bn (@_worker_normative_wo) - miesięczny normatyw pracownika z pominięciem nadpracowania/niedopracowania z poprzedniego miesiąca
@_prac_suma_dyzur (@_worker_duty_sum) - sumaryczna ilość godzin, przypadających na dyżury, wypracowanych w wybranym miesiącu z godzinami nadl.
@_prac_suma_dyzur_bn (@_worker_duty_sum_wo) - sumaryczna ilość godzin, przypadających na dyżury, wypracowanych w wybranym miesiącu bez godzin nadliczbowych
@_prac_suma_d (@_worker_d_sum) - sumaryczna ilość godzin "dziennych" wypracowanych w wybranym miesiącu
@_prac_suma_n (@_worker_n_sum) - sumaryczna ilość godzin "nocnych" wypracowanych w wybranym miesiącu
@_prac_suma_n_ilosc (@_worker_n_sum_qty) - ilość dyżurów "nocnych" w wybranym miesiącu
@_prac_suma_s (@_worker_h_sum) - sumaryczna ilość godzin "świątecznych" wypracowanych w wybranym miesiącu
@_prac_suma_so (@_worker_sa_sum) - sumaryczna ilość godzin "dziennych" wypracowanych w soboty w wybranym miesiącu
@_prac_suma_ab (@_worker_ab_sum) - sumaryczna ilość godzin wolnego w wybranym miesiącu
@_prac_suma_g1 (@_worker_ot1_sum) - sumaryczna ilość godzin nadliczbowych "100%" wypracowanych w wybranym miesiącu
@_prac_suma_g2 (@_worker_ot2_sum) - sumaryczna ilość godzin nadliczbowych "50%" wypracowanych w wybranym miesiącu
@_prac_suma_gn (@_worker_ot_sum) - sumaryczna ilość godzin nadliczbowych "50%" orz "100%" wypracowanych w wybranym miesiącu
@_prac_roznica_normatyw (@_worker_diffrence_normative) - różnica pomiędzy ilością godzin wypracowanych a normatywem miesięcznym
@_prac_roznica_normatyw_pracownika (@_worker_diffrence_worker_normative) - różnica pomiędzy ilością godzin wypracowanych a normatywem miesięcznym pracownika
@_prac_roznica_normatyw_pracownika_bn (@_worker_diffrence_worker_normative_wo) - różnica pomiędzy ilością godzin wypracowanych a normatywem miesięcznym pracownika bez godzin nadliczbowych
//symbole dni wolnych:
//a-na żądanie,
//u-wypoczynkowy,
//m-macierzyński,
//w-wychowawczy,
//s-szkoleniowy,
//z-zwolnienie,
//o-opieka,
//i-inny,
//n-nieusprawiedliwiony,
//ż-dzień, w którym pracownik nie chce dyżuru,
//1-wolne za niedzielę/święto,
//7-wolne za sobotę,
//9-wolne za święto,
//5-wolne wynikające z 5-dniowego tygodnia pracy
//b-bezpłatny
//r-opieka nad członkiem rodziny
//d-zwolnienie na dziecko
//h-rehabilitacyjny
//k-okolicznościowy
//j-ojcowski
//t-tacierzyński
//c-rodzicielski
@_wolne_typ_ilosc_[symbol(e)_dni_wolnych] (dayoff_type_qty_) - typ wolnego (pobierany z konfiguracji, zakładka "Urlopy") wraz z miesięczną ilością godzin wolnego danego typu
@_prac_wolne_ile_[symbol(e)_dni_wolnych] - ilość godzin wolnego w danym dniu
@_prac_wolne_suma_[symbol(e)_dni_wolnych] - ilość godzin wolnego w wybranym miesiącu
@_prac_ile_dyz_wol(worker_duty_dayoff_qty) - ilość dyżurów i wolnych w miesiącu
@_prac_ile_dyz(worker_duty_qty) - ilość dyżurów w miesiącu
@_prac_ile_wol(worker_dayoff_qty) - ilość wolnych w miesiącu
@_wolne_do (@_dayoff_to) - numer dnia miesiąca, w którym kończy się wolne
@_wolne_ile_dni (@_dayoff_days_quantity) - czas trwania wolnego wyrażony w dniach
@_wolne_ile_dni_roboczych (@_dayoff_work_days_quantity) - czas trwania wolnego wyrażony w dniach roboczych
@_wolne_ile_godzin (@_dayoff_hours_quantity) - czas trwania wolnego, wynikający z dyżurów rozpisanych w jego czasie, wyrażony w godzinach
@_wolne_ile_godzin_norma (@_dayoff_hours_norma_quantity) - czas trwania wolnego, wynikający z normatywu, wyrażony w godzinach
@_read_all_groups - powoduje, że na niektórych wydrukach mogą być pokazywane dodatkowo dyżury pełnione w innych grupach (dotyczy pracowaników pracujących w ciągu tego samego miesiąca w ramach różnych grup). Zmienna powinna być umieszczana na początku szablonu
@_dot_as_time_sep - ustawia kropkę zamiast dwukropka jako separator godzin i minut. Zmienna powinna być umieszczana na początku szablonu
@_clear_auto_eols - usuwa wszystkie automatyczne znaki końca linii. Zmienna powinna być umieszczana na początku szablonu
@_eol - znak końca linii
Dodatkowo:
- jeżeli zmienna przybiera wartość 0 (zero) i wartość ta ma być pokazana na wydruku to na końcu zmiennej należy dodać symbol 0 np: @_prac_suma_d0
- jeżeli wartość zmiennej to godzina i wymagany jest zapis w formacie: 00:00 to na końcu zmiennej należy dodać symbol : np: @_prac_suma_d:
Ponadto w/w zmienne można umieszczać pomiędzy znacznikami:
<_DZIEN> zmienne* </DZIEN>, zmienne* dotyczące dni przybiorą wartości adekwatne do poszczególnych dni miesiąca, np. zapis w szablonie <_DZIEN>@_dzien_nr, </DZIEN> da na wydruku tekst 1, 2, 3, itd. aż do numeru ostatniego dnia danego miesiąca.
<_PRAC> zmienne* </PRAC>, zmienne* dotyczące pracowników przybiorą wartości adekwatne do kolejnych pracowników, np. zapis w szablonie <_PRAC>@_prac_nazwisko @_prac_imie, @_prac_suma_wypr <br></PRAC>da na wydruku listę pracowników z ilością wypracowanych w danym miesiącu godzin.
<_ZMIANA> zmienne* </ZMIANA>, zmienne* dotyczące zmian przybiorą wartości adekwatne do kolejnych zmian.
<_GRUPA> zmienne* </GRUPA>, zmienne* dotyczące grup pracowników przybiorą wartości adekwatne do kolejnych grup pracowników.
<_NADGODZ> zmienne* </NADGODZ>.
Znaczniki można zagnieżdżać w sobie, pilnując by liczba poziomów zagnieżdżenia nie przekroczyła dwóch, np.
<_PRAC>@_prac_nazwisko @_prac_imie<br>
<_DZIEN>
@_dyzur_wolne_symbol
</DZIEN>
</PRAC>