Instrukcja administratora > Definiowanie i nadzór > Definiowanie składników | | Drukuj |
Obok ustawienia właściwości składników wynagrodzeń, możemy dodatkowo określić sposób wyliczenia poszczególnego składnika.
Przed przystąpieniem do definiowania musimy uświadomić sobie, że każdy składnik podczas naliczania wynagrodzeń posiada trzy wartości: wartość zadaną, wartość wyliczoną nominalną i wartość wyliczoną. Dodatkowo składniki podstawiane z angażu posiadają w angażu dwie wartości - wartość zadaną i wartość wyliczoną.
W zależności od definicji, wartości te mogą być określane lub wyliczane na różne sposoby. Kolejność i sposób wyliczania jest następująca:
•(1) Wartość zadana w angażu
1.wartość wprowadza się ręcznie podczas wypisywania umowy o pracę
2.oblicza się na podstawie Definicji wartości zadanej
(lub historycznie wpływ na nią mają użyte w Definicji wartości wyliczonej nominalnej funkcje staz() i akrd())
•(2) Wartość wyliczona w angażu
1.przepisuje się wartość zadana
2.oblicza się na podstawie Definicji wartości wyliczonej nominalnej
•(3) Wartość zadana na liście płac
1.wprowadza się ręcznie bezpośrednio podczas naliczania (może być niedostępna do wprowadzania)
2.podstawia z wartości zadanej w angażu
3.podstawia się z danych do naliczeń
4.podstawia z innych ewidencji (np. ewidencji kosztów)
5.oblicza się na podstawie Definicji wartości zadanej
(lub historycznie wpływ na nią mają użyte w Definicji wartości wyliczonej nominalnej funkcje staz() i akrd())
•(4) Wartość wyliczona nominalna na liście płac
1.przepisuje się wartość zadana
2.oblicza się na podstawie Definicji wartości wyliczonej nominalnej
•(5) Wartość wyliczona na liście płac
1.przepisuje się wartość wyliczona nominalna
2.uwzględnia współczynnik obecności (właściwości pomniejszyć o ustawione dla składnika)
3.oblicza się na podstawie Definicji wartości wyliczonej,
Zależności pomiędzy wartościami danego składnika przedstawia rysunek:
Wyjątkiem są składniki następujących 4 rodzajów: płaca godzinowa, dod.stałe godz., nadgodziny i godziny ponadwymiarowe. Składniki te posiadają tylko jedną definicję: Definicja wartości wyliczonej nominalnej, w której definiowana jest tylko stawka (oprócz godzin ponadwymiarowych, w których definiowana jest stawka razy ilość godzin). Dla tych rodzajów składników nie istnieje wartość wyliczona nominalna. Kolejność i sposób wyliczania jest następujący:
•(1) Wartość zadana w angażu
1.wartość wprowadza się ręcznie podczas wypisywania umowy o pracę
•(2) Wartość wyliczona w angażu
1.przepisuje się wartość zadana
•(3) Wartość zadana na liście płac
1.wprowadza się ręcznie bezpośrednio podczas naliczania (może być niedostępna do wprowadzania)
2.podstawia z wartości zadanej w angażu
3.oblicza się na podstawie Definicji wartości wyliczonej nominalnej (w której zdefiniowana jest tylko stawka)
•(5) Wartość wyliczona na liście płac
1.oblicza się na podstawie wartości zadanej i odpowiedniej ilości godzin w zależności od rodzaju:
▪płaca godzinowa, dod.stałe godz. - godziny pracy z karty pracy (Godz.pracy)
▪nadgodziny - dla 50%: godz.nadl.50%, dla 100%: godz.nadl.100%, dla pozostałych (podstawa nadgodzin nie ujęta w płacy zasadniczej): Godz.pracy minus Nomin.godz.pracy, czyli nadwyżka godzin
▪godziny ponadwymiarowe - oblicza się na podstawie Definicji wartości wyliczonej nominalnej, gdzie zdefiniowana jest pełna wartość, a nie stawka jak w pozostałych przypadkach
W ogromnej większości przypadków po wprowadzeniu nowego składnika wystarczy określić rodzaj składnika (Rodzaj), wszystkie właściwości na zakładce Naliczanie i nie musimy wcale definiować sposobu wyliczenia składnika lub używamy tylko Definicji wartości wyliczonej nominalnej.
Wchodząc do definicji możemy wpisać wyrażenie (wzór), służące do określenia sposobu przeliczenia wartości zadanej, nominalnej i wyliczonej danego składnika. Najczęściej wyrażenie wprowadzamy w Definicji wartości wyliczonej nominalnej.
W wyrażeniu możemy używać składniki, pola systemowe, funkcje, liczby i działania.
Przykładowo wyrażenie, określające sposób wyliczenia premii regulaminowej (wartość wyliczona) może mieć postać:
okr(angz(placa zasadnicza)*[premia regulaminowa]/100,-2)
gdzie:
•angz(placa zasadnicza) – funkcja pobierająca wartość zadaną składnika z angażu
•[premia regulaminowa] – składnik wynagrodzenia (wartość zadana wprowadzana w angażu lub podczas naliczania)
•/100 – dzielenie przez 100 (premię regulaminową wprowadzamy w procentach)
•okr(...,-2) – funkcja zaokrąglająca liczbę do pełnych groszy (do 10-2)
Przy definiowaniu składników możemy posługiwać się następującymi symbolami:
Składniki wynagrodzeń - ujęte w nawiasy kwadratowe nazwy składnika oznaczają wartość wyliczoną tego składnika lub wartość zadaną składnika, jeśli używamy nazwy tego samego składnika, który definiujemy
•[płaca zasadnicza] – wartość wyliczona (nie nominalna) płacy zasadniczej
•[premia regulaminowa] – w definicji premii regulaminowej oznacza jej wartość zadaną (wprowadzaną), czyli procent premii
•[premia regulaminowa] – w definicji innego składnika oznacza jej wartość wyliczoną, czyli wartość premii
Pola systemowe – użyte nazwy własne pól systemowych poprzedzone funkcją sys() oznaczają wartości pól systemowych, opisanych wcześniej
•sys(MinKraj) – podstawiona z parametrów systemu wartość najniższego wynagrodzenia za zadany okres
•sys(PrzychodBrutto) – przeliczona na liście płac wartość przychodu brutto
Klikając myszą na danym polu systemowym z wciśniętym klawiszem Ctrl do definicji podstawi się to pole od razu poprzedzone funkcją sys().
Liczby - w definicji można używać bezpośrednio liczb, części dziesiętne liczby powinny być oddzielone kropką, liczby ujemne poprzedza znak (-)
•12400 1200 0.21 -123 -123.45
Operatory arytmetyczne - na dowolnych składnikach, polach oraz liczbach można przeprowadzać podstawowe działania arytmetyczne:
•* – mnożenie
•/ – dzielenie
•+ – dodawanie
•- – odejmowanie lub negacja
Mnożenie i dzielenie wykonywane jest wcześniej niż dodawanie i odejmowanie, kolejność wykonywanych działań można zmieniać stosując nawiasy okrągłe ().
Priorytety działań wykonywanych na podstawie definicji mogą być inne od oczekiwanych, dlatego należy stosować nawiasy okrągłe () w celu nadania odpowiedniej kolejności przeliczeń. Przykładowo a-b+c bez użycia nawiasów od a odejmie sumę b+c, żeby było prawidłowo należy użyć nawiasów: (a-b)+c.
Instrukcja warunkowa - definicja pól listy płac pozwala na stosowanie instrukcji warunkowych typu: jeśli warunek jest spełniony to instrukcja 1, w przeciwnym wypadku instrukcja 2
•warunek ? instrukcja1 : instrukcja2 - jeśli warunek jest spełniony to instrukcja1 w przeciwnym wypadku instrukcja2
przy zadawaniu warunków można używać operatorów logicznych:
o& - i
o| - lub
o! - negacja
o> - większe
o>= - większe lub równe
o< - mniejsze
o<= - mniejsze lub równe
o= - równe
o!= - różne
Na przykład:
sys(Etat)<1 ? 0 : sys(MinKraj) – jeśli pracownik jest zatrudniony na niepełny etat to podstaw zero, w przeciwnym wypadku podstaw najniższą krajową
(sys(Etat)=1) & ([płaca brutto]<sys(MinKraj)) ? sys(MinKraj) : 0 – jeśli pracownik jest zatrudniony na cały etat i jednocześnie płaca brutto jest mniejsza od najniższej krajowej, to podstaw najniższą krajową, w przeciwnym wypadku zero
Kompilacja warunkowa - ujęta w nawiasy {} część definicji brana jest pod uwagę podczas przeliczania list płac, natomiast pomijana jest przy przeliczaniu składników w angażu (dotyczy składników ujętych w angażu)
•instrukcja1 {instrukcja2} instrukcja3 {instrukcja4} instrukcja5
•w angażu wykonana zostanie: instrukcja1 instrukcja3 instrukcja5
•natomiast przy naliczaniu wynagrodzeń: instrukcja1 instrukcja2 instrukcja3 instrukcja4 instrukcja5
Na przykład:
[stawka godz.szkodl.]{*godz(5,0)} – jeśli stawka za godziny szkodliwe byłaby określona w angażu, to w wartości wyliczonej w angażu przepisałaby się stawka podana w wartości zadanej, natomiast na liście płac w wartości zadanej obliczyłaby się kwota, czyli stawka razy ilość godzin
Funkcje - dostępne są następujące funkcje:
Funkcje przeliczeniowe:
•znak(x) - znak liczby
np. znak(12.34)=1 znak(-12.34)=-1 znak(0)=0
•min(x,y) - mniejsza z dwóch liczb
np. min(3,7)=3
•max(x,y) - większa z dwóch liczb
np. max(5,10)=10 max(10,5)=10
•dod(x) - dodatnia część liczby
np. dod(12.34)=12.34 dod(-12.34)=0
•mod(x) - wartość bezwzględna liczby
np. mod(12.34)=12.34 mod(-12.34)=12.34
•okr(x,n) - zaokrąglenie części całkowitej z dokładnością 10n,
dla n równego 0 zaokrąglamy do pełnej części całkowitej (okr(x,0) - zaokrąglenie do pełnych złotych)
np. okr(1.2,0)=1 okr(1.7,0)=2 okr(1.5,0)=2
dla n dodatniego zaokrąglamy do n miejsc po przecinku w lewo (okr(x,1) - zaokrąglenie do pełnych 10 zł, okr(x,2) - do pełnych setek)
np. okr(234.56,2)=200
dla n ujemnego zaokrąglamy do n miejsc po przecinku w prawo (okr(x,-1) - zaokrąglenie do pełnych 10 gr, okr(x,-2) - do pełnych groszy)
np. okr(234.56,-1)=234.6 okr(234.5666,-1)=234.67
•okrd(x,n) - zaokrąglenie części całkowitej w dół na zasadach podobnych jak okr(x,n),
np. okrd(1.2,0)=2 okrd(1.7,0)=2
•okrg(x,n) - zaokrąglenie części całkowitej w górę na zasadach podobnych jak okr(x,n),
np. okrg(1.2,0)=1 okrg(1.7,0)=1
Funkcje pobierające kwoty z angażu i z danych do naliczeń:
•angz(nazwa) - podaje wartość zadaną (wprowadzoną) składnika z angażu, obejmującego naliczany okres
np. angz(płaca zasadnicza)=2000.00 (złotych, płaca nominalna)
angz(premia regulaminowa)=10.00 (procent)
•angw(nazwa) - podaje wartość wyliczoną składnika z angażu, obejmującego naliczany okres
np. angw(płaca zasadnicza)=2000.00 (zł, płaca za zadany okres)
angw(premia regulaminowa)=200.00 (zł, premia za zadany okres)
•nngz(nazwa), nngw(nazwa) - funkcje zachowujące się podobnie jak angz() i angw() z tą różnicą, że przy wyliczaniu podstawy do urlopu nie będzie pobierana aktualna wartość z angażu, lecz za poprzedni okres
•danl(nazwa) - podaje wartość składnika z danych do naliczeń
Funkcje pobierające kwoty z aktualnego naliczania:
•wz(nazwa) - podaje wartość zadaną (wprowadzoną) składnika podczas naliczania (tożsame z [nazwa] dla definicji tego samego składnika)
np. wz(premia uznaniowa)=150.00 (kwota wprowadzona)
wz(premia regulaminowa)=10.00 (procent)
•ww(nazwa) - podaje wartość wyliczoną składnika (podczas naliczania), tożsame z [nazwa] dla definicji innego składnika
np. ww(premia uznaniowa)=150.00 (kwota przeliczona, czyli faktyczna wartość danego składnika)
ww(premia regulaminowa)=160.00 (kwota)
•nom(nazwa) - podaje nominalną wartość wyliczoną składnika (podczas naliczania)
np. nom(premia uznaniowa)=150.00
nom(premia regulaminowa)=200.00 (kwota przeliczona nominalna)
•wsp(nazwa) - podaje współczynnik pomniejszenia wartości wyliczonej w stosunku do nominalnej, zapamiętany na podstawie właściwości składnika pomniejszyć o
np. wsp(premia uznaniowa)=1.00 (kwota nie pomniejszona)
wsp(premia regulaminowa)=0.80 (kwota pomniejszona o 80 procent)
•sys(nazwa)- podaje wartość pola systemowego (jest to jakby wartość wyliczona, gdyż pola systemowe nie mają wartości zadanej
np. sys(MinKraj) – aktualna wartość najniższej krajowej, podstawiona z parametrów naliczania
sys(PrzychodBrutto) – kwota przychodu brutto
Funkcje pobierające kwoty z naliczeń za poprzednie miesiące:
•dskl(nazwa,m1,m2) - wartość wyliczona składnika nazwa wypłacona za okres od sprzed m1 miesięcy do sprzed m2 miesięcy, czyli na podstawie daty wypłaty
np. dskl(premia uznaniowa,1,3) - wartość premii uznaniowej wypłaconej w 3 poprzednich miesiącach
•dsklp(nazwa,m1,m2) - jak dskl, tylko pobiera dane ze wszystkich aktualnych zatrudnień pracownika
•wskl(nazwa,m1,m2) - wartość wyliczona składnika nazwa za okres wynagrodzeń za okres od sprzed m1 miesięcy do sprzed m2 miesięcy, czyli na podstawie okresu wynagrodzeń
np. wskl(premia uznaniowa,1,3) - wartość premii uznaniowej wypłacona za okres 3 miesięcy
•wsklp(nazwa,m1,m2) - jak wskl, tylko pobiera dane ze wszystkich aktualnych zatrudnień pracownika
•kskl(nazwa,m1,m2) - wartość wyliczona składnika nazwa za okres kartoteki za okres od sprzed m1 miesięcy do sprzed m2 miesięcy, czyli na podstawie miesiąca kartoteki wynagrodzeń
np. kskl(premia uznaniowa,1,3) - wartość premii uznaniowej wypłacona za okres 3 miesięcy, na podstawie kartoteki wynagrodzeń przypisanej do listy płac
•dnskl(nazwa,m) - wartość wyliczona składnika nazwa narastająco od miesiąca stycznia do miesiąca sprzed m miesięcy, na podstawie daty wypłaty
np. dnskl(premia uznaniowa,0) - wartość premii uznaniowej wypłaconej od stycznia do bieżącego miesiąca
dnskl(premia uznaniowa,1) - wartość premii uznaniowej wypłaconej od stycznia do poprzedniego miesiąca
•wnskl(nazwa,m) - wartość wyliczona składnika nazwa narastająco od miesiąca stycznia do miesiąca sprzed m miesięcy, na podstawie okresu wynagrodzeń
np. wnskl(premia uznaniowa,0) - wartość premii uznaniowej za okres od stycznia do naliczanego miesiąca
wnskl(premia uznaniowa,1) - wartość premii uznaniowej za okres od stycznia do poprzedniego naliczonego miesiąca
•knskl(nazwa,m) - wartość wyliczona składnika nazwa narastająco od miesiąca stycznia do miesiąca sprzed m miesięcy, na podstawie kartoteki wynagrodzeń
np. knskl(premia uznaniowa,0) - wartość premii uznaniowej z kartoteki od stycznia do bieżącej kartoteki listy
knskl(premia uznaniowa,1) - wartość premii uznaniowej od stycznia do kartoteki z poprzedniego miesiąca
•dskz(nazwa,m1,m2), wskz(nazwa,m1,m2), kskz(nazwa,m1,m2) - funkcje w działaniu podobne do dskl(), wskl(), kskl() podające wartości zadane, a nie wyliczone
•dsys(nazwa,m1,m2) - analogicznie jak funkcja dskl(nazwa,m1,m2) dla pól systemowych
np. dsys(PrzychodBrutto,1,3) - wartość przychodu brutto z dochodów w 3 poprzednich miesiącach
•dsysp(nazwa,m1,m2) - analogicznie jak funkcja dsys, tylko pobiera dane ze wszystkich aktualnych zatrudnień pracownika
•wsys(nazwa,m1,m2) - analogicznie jak funkcja wskl(nazwa,m1,m2) dla pól systemowych
np. wsys(PrzychodBrutto,1,3) - wartość przychodu brutto z okresu wynagrodzeń w 3 poprzednich miesiącach
•wsysp(nazwa,m1,m2) - analogicznie jak funkcja wsys, tylko pobiera dane ze wszystkich aktualnych zatrudnień pracownika
•ksys(nazwa,m1,m2) - analogicznie jak funkcja kskl(nazwa,m1,m2) dla pól systemowych
np. ksys(PrzychodBrutto,1,3) - wartość przychodu brutto z kartotek wynagrodzeń w 3 poprzednich miesiącach
•dnsys(nazwa,m), wnsys(nazwa,m), knsys(nazwa,m) - funkcja podobne do dnskl(), wnskl(), knskl() pobierające narastające wartości pól systemowych, a nie składników
np. dnsys(PrzychodBrutto,1) - wartość przychodu brutto narastająco od stycznia do miesiąca poprzedniego
Funkcje określające daty listy płac:
•dm(x) - miesiąc (x=1) i rok (x=2) daty wypłaty listy
np. gdy data wypłaty listy to 10-12-2002, to dm(1)=12, dm(2)=2002
•wm(x) - miesiąc (x=1) i rok (x=2) końcowego okresu wynagrodzeń listy (daty wynagrodzenia za okres do)
np. gdy wynagrodzenia za okres od 01-11-2002 do 30-11-2002, to wm(1)=11, wm(2)=2002
•wo(x) - miesiąc (x=1) i rok (x=2) początkowego okresu wynagrodzeń listy (daty wynagrodzenia za okres od)
•km(x) - miesiąc (x=1) i rok (x=2) kartoteki wynagrodzeń listy
np. gdy do kartoteki wynagrodzeń miesiąc: listopad, rok: 2002, to km(1)=11, km(2)=2002
•nm(x) - miesiąc (x=1) i rok (x=2) końcowego okresu nieobecności listy (daty nieobecności za okres do)
np. gdy nieobecności za okres od 01-11-2002 do 30-11-2002, to wm(1)=11, wm(2)=2002
•no(x) - miesiąc (x=1) i rok (x=2) początkowego okresu nieobecności listy (daty nieobecności za okres od)
Funkcje pobierające dane z karty pracy:
•dni(id,mod,k) - podaje dni z karty pracy za naliczany okres
oid - oznacza rodzaj dni z karty pracy:
0 - nominalne dni pracy,
1 - dni wolne,
2 - dni pracy,
3 - delegacje,
4 - chorobowe,
5 - chorobowe 100%,
6 - chorobowe wypadkowe,
7 - rehabilitacja i rehabilitacja 100%,
8 - rehabilitacja wyp.,
9 - opieka n.dzieckiem,
10 - opieka inne,
11 - macierzyński i ojcowski,
12 - urlop wypoczynkowy,
13 - urlop okolicznościowy,
14 - urlop n.dzieckiem,
15 - urlop dodatkowy,
16 - nieobecność płatna,
17 - urlop wychowawczy,
18 - urlop bezpłatny,
19 - nieobecność uspr.,
20 - nieobecność nieuspr.,
21 - służba wojskowa,
23 - chorobowe szpitalne,
24 - urlop wypoczynkowy limitowany (na żądanie),
25 - chorobowe niepłatne inne i z tyt.nienabycia prawa do zas.,
26 - urlop szkoleniowy,
28 - urlop opiekuńczy,
29 - nieobecność płatna - siła wyższa,
99 - dni nieobjęte umową oraz dodatkowo szczegółowe rodzaje dni z karty zasiłkowej:
100 - wynagr.za czas choroby 80%,
101 - wynagr.za czas choroby 100%,
102 - wynagr.za czas choroby 100% wypadkowe,
103 - zasiłek chorobowy 80%,
104 - zasiłek chorobowy 100%,
105 - zasiłek chorobowy 100% wypadkowe,
106 - świadczenie rehabilitacyjne 90%,
107 - świadczenie rehabilitacyjne wypadkowe,
108 - zasiłek opiekuńczy nad dzieckiem 80%,
109 - zasiłek opiekuńczy inne 80%,
110 - zasiłek macierzyński 100%,
111 - zasiłek chorobowy 70%,
112 - niepłatny,
113 - świadczenie rehabilitacyjne 75%,
114 - świadczenie rehabilitacyjne 100%,
115 - zasiłek macierzyński 60%,
116 - zasiłek macierzyński 80%,
117 - zagraniczny,
118 - zagraniczny wypadek,
119 - rodzicielski 70%,
120 - macierzyński 81,5%
omod - pobiera dni z wszystkich dni (0), tylko z dni pracujących (1) lub tylko z dni oznaczonych jako wolne od pracy (2) ponadto w przypadku dni chorobowych (dla id równe 4, 5 lub 6) możemy przy dodatkowych ustawieniach mod uzyskać:
3 - dni zakładowe wszystkie,
4 - dni zusowskie wszystkie,
5 - dni zakładowe pracujące,
6 - dni zusowskie pracujące
7 - dni zakładowe wolne,
8 - dni zusowskie wolne
ok - rodzaj okresu listy płac:
0 - z okresu wynagrodzeń, 1 - z okresu nieobecności
np. dni(2,0,0) - dni przepracowane
dni(0,1,0) - nominalne dni pracy
dni(99,1,0) - dni pracujące nieobjęte umową
dni(99,0,0) - dni nieobjęte umową (razem z sobotami i niedzielami)
•dni(id,mod,k,m1,m2) - podobnie jak funkcja dni(id,mod,k) podaje dni z karty pracy, ale za okres sprzed m1 do sprzed m2 miesięcy
np. dni(2,0,0,1,3) - dni przepracowane w poprzednich 3 miesiącach
•dnix(id,mod,k,m,d1,d2) - podobnie jak funkcja dni(id,mod,k,m1,m2)podaje dni z karty pracy sprzed m m-cy od d1 dnia okresu do d2 dnia okresu
•dniz(igz,id,mod,k,m,d1,d2) - podobnie jak funkcja dni(id,mod,k,m1,m2), tylko sumuje dni dla okreslonej grupy zleceń igz
•dgo(id,mod,k) - podaje dni z karty pracy za naliczany okres w przeliczeniu na godziny pracy, parametry identyczne jak w funkcji dni(id,mod,k)
np. dgo(12,1,0) - ilość godzin urlopu wypoczynkowego
•dgo(id,mod,k,m1,m2) - podobnie jak funkcja dgo(id,mod,k) podaje dni w godzinach, ale z poprzednich kart pracy za okres sprzed m1 do sprzed m2 miesięcy
np. dgo(12,1,0,1,3) - godziny urlopu w poprzednich 3 miesiącach
•godz(id,mod) - podaje liczbę godzin z karty pracy
oid - oznacza rodzaj godzin z karty godzinowej:
0 - Nomin.godz.pracy,
1 - Godz.pracy,
2 - Godz.nadl.50 %
3 - Godz.nadl.100 %
4 do 19 - dodatkowe godziny określone w składnikach karty pracy
dodatkowo w przypadku rozbudowanej karty pracy (patrz Godziny do odpracowania) godziny faktyczne:
101 - Godz.pracy fakt.,
102 - Godz.nadl.50 % f.
103 - Godz.nadl.100 % f.
omod - pobiera godziny:
0 - z wszystkich dni,
1 - tylko z dni pracujących,
2 - tylko z dni oznaczonych jako wolne od pracy
5 - z nominalnych dni pracujących z kalendarza pracownika,
6 - z nominalnych dni pracy z kalendarza urzędowego,
7 - z nominalnych dni pracy z kalendarza urzędowego z uwzględnieniem oddawania dnia wolnego za święto
np. godz(1,0) - wszystkie godziny pracy|
godz(1,1) - godziny przepracowane w dni pracujące
godz(1,2) - godziny przepracowane w dni wolne
godz(2,0) - nadgodziny 50%
godz(3,0) - nadgodziny 100%
godz(0,1) - nominalne godziny pracy
+ dodatkowo dla id=102 i id=103 możemy wybrać nadgodziny do odpracowania tylko dodatnie (3) (zielone do zwrotu) lub tylko ujemne (4) (czerwone do odpracowania)
+ dodatkowo dla id=0 możemy pobrać nominalne godziny pracy bezpośrednio z kalendarza (5) - godz(0,5)
•godz(id,mod,m) - podobnie jak funkcja godz(id,mod) pobiera godziny z karty pracy, ale sprzed m miesięcy
np. godz(2,0,1) - nadgodziny 50% z poprzedniego miesiąca
•godzw(id,mod), godzw(id,mod,m) - działa tak samo jak funkcja godz(), ale pobiera dane z okresu wynagrodzeń listy, a nie z okresu nieobecności
•godzz(igz,id,mod,m) - podobnie jak funkcja godz(id,mod,m) pobiera godziny z karty pracy, sprzed m miesięcy, ale tylko z grupy zleceń określonej przez identyfikator igz
np. godz(5,2,0,1) - nadgodziny 50% z poprzedniego miesiąca tylko z grupy zleceń o ide=5
•gpz(id) - pobiera ilość godzin pracy zdalnej do składnika wynagrodzeń:
id = 0 - praca zdalna hybrydowa id = 1 - praca zdalna polecona id = 2 - praca zdalna okazjonalna id = 3 - praca zdalna stała |
•gfer(id,mod) - średnia feryjna - podaje średnią ilość godzin ponadwymiarowych liczoną jako suma godzin o rodzaju id od września do grudnia podzielona przez 120
•gwkc(id,mod) - średnia wakacyjna - podaje średnią ilość godzin ponadwymiarowych liczoną jako suma godzin o rodzaju id od sierpnia roku poprzedniego do maja podzielona przez 270
Zakres brany pod uwagę przy obliczaniu średniej feryjnej i średniej wakacyjnej można zmienić w ustawieniach płacowych na zakładce Definicje.
•bogo(id) - w przypadku rozbudowanej karty pracy (patrz Godziny do odpracowania) funkcja pobiera ilość godzin pozostałych z poprzedniego okresu do odpracowania/zwrotu w zależności od id: 1 - nadgodziny 50%, 2 - nadgodziny 100%
•hgodz(id_harm,id,mod), hgodz(id_harm,id,mod,m) - w przypadku wykorzystania szablonów harmonogramów (patrz Wewnętrzny system RCP) funkcje analogiczne do godz() pobierające godziny z karty pracy dla zadanego harmonogramu, należy podać identyfikator szablonu harmonogramu (id_harm)
•hgodzw(id_harm,id,mod), hgodzw(id_harm,id,mod,m) - funkcje analogiczne do hgodz() pobierające godziny z karty pracy dla zadanego harmonogramu, ale po okresie wynagrodzeń listy, a nie okresie nieobecności
Funkcje pobierające lata pracy:
•staz(id) - w zależności od dotychczasowej ilości lat pracy funkcja zwraca wartości, określone w definicji stażu o numerze id (standardowo staz(1))
Używając tej funkcji w Definicji wartości wyliczonej nominalnej automatycznie podstawi się również wartość zadana jako wartość tej funkcji (czyli po prostu procent stażu). W takim przypadku w definicji wartości wyliczonej nominalnej funkcji tej możemy użyć tylko raz (kolejne użycia zastępując funkcją stla()).
W przypadku bardziej skomplikowanych wyliczeń dodatku stażowego do ukazania procentu stażu używamy Definicję wartości zadanej, w której funkcję staz() możemy wykorzystywać wielokrotnie.
•stla(id) - funkcja ta zwraca identyczną wartość co funkcja staz() lecz nie powoduje zmiany wartości zadanej i można ją używać wielokrotnie w jednej definicji wartości wyliczonej nominalnej
Funkcje pobierające dodatkowe parametry naliczania:
•par(id) - w zależności od parametru id możemy uzyskać wartości wprowadzone w parametrach naliczania (menu Ustawienia - Parametry naliczania) na poszczególnych zakładkach:
oDodatkowe
1 do 20 - wartości dodatkowych 20 parametrów własnych
oSkładki ZUS
101 - procent składki emerytalnej płatnej przez zakład
102 - procent składki emerytalnej płatnej przez pracownika
103 - procent składki rentowej płatnej przez zakład
104 - procent składki rentowej płatnej przez pracownika
105 - procent składki chorobowej
106 - procent składki wypadkowej
1106 - procent składki wypadkowej wpisany w parametrach firmy
107 - procent składki zdrowotnej
108 - procent składki zdrowotnej odliczanej od podatku
109 - procent składki na FP
110 - procent składki na FGŚP
161 - procent składki na FEP
oPodstawy ZUS
111 - podstawa składki emerytalno-rentowej dla właściciela
112 - podstawa składki chorobowo-wypadkowej dla właściciela
113 - podstawa składki zdrowotnej dla właściciela
114 - podstawa obniżonej składki emerytalno-rentowej dla właściciela
115 - podstawa obniżonej składki chorobowo-wypadkowej dla właściciela
116 - kwota ograniczenia podstawy wymiaru składek emerytalno-rentowych
146 - podstawa wymiaru składki społecznej przy zasiłku wychowawczym
160 - podstawa wymiaru składki zdrowotnej przy zasiłku wychowawczym
168 - najniższy zasiłek macierzyński
oZasiłki ZUS (obecnie niewykorzystywane)
117 - zasiłek pielęgnacyjny
118 - zasiłek rodzinny na 1 i 2 dziecko
119 - zasiłek rodzinny na 3 dziecko
120 - zasiłek rodzinny na każde kolejne dziecko
121 - zasiłek wychowawczy
122 - zasiłek dla samotnie wychowujących dziecko
151 - zasiłek rehabilitacyjny na dziecko do 5 roku
152 - zasiłek rehabilitacyjny na dziecko powyżej 5 roku
153 - rozpoczęcie roku szkolnego
154 - nauka w szkole - zakwaterowanie
155 - nauka w szkole - dojazd
oKoszty uzyskania
124 - kwota miesięcznych kosztów uzyskania
125 - kwota kosztów podwyższonych
126 - procent kosztów umów zlecenia
127 - procent kosztów umów o dzieło
128 - procent kosztów praw autorskich
129 - kwota progu naliczania kosztów
oPodatek
130 - procent podatku poniżej pierwszego progu podatkowego
131 - procent podatku poniżej drugiego progu podatkowego
132 - procent podatku powyżej drugiego progu podatkowego
133 - kwota pierwszego progu podatkowego
134 - kwota drugiego progu podatkowego
135 - procent podatku ryczałtowego
147 - procent podatku od dywidendy
137 - kwota miesięcznej ulgi podatkowej
138 - kwota rocznej ulgi podatkowej
159 - roczna kwota ulgi z tytułu wychowywania dziecka
oWynagrodzenia
136 - najniższa krajowa
143 - świadczenia urlopowe
144 - przeciętne wynagrodzenie za ostatni kwartał
148 - wynagrodzenie uczniów 1 roku
149 - wynagrodzenie uczniów 2 roku
150 - wynagrodzenie uczniów 3 roku
162 - przeciętne wynagrodzenie do podstawy chorobowego
163 - minimalna stawka godzinowa
166 - przeciętne wynagr. za IV kw. ub.r.
167 - współczynnik ekwiwalentu
oRyczałty
139 - stawka ryczałtu samochodowego do 900 ccm (za 100 km)
140 - ryczałt samochodowy powyżej 900 ccm (za 100 km)
141 - ryczałt za motocykl (za 100 km)
142 - ryczałt za motorower (za 100 km)
156 - ryczałt za dojazdy
157 - dzienna dieta
158 - ryczałt za nocleg
oSzkoła
145 - najniższa stażysty (nauczyciele)
•pstw(id) - pobierane z parametrów naliczania (po dacie wypłaty listy w przeciwieństwie do funkcji par pobierającej po okresie wynagrodzeń) podstawy ZUS właściciela (zakładka Podstawy ZUS) w zależności od id id: 0 - emerytalno-rentowa, 1 - chorobowo-wypadkowa, 2 - zdrowotna, 3 - E-R obniżona, 4 - C-W obniżona, 5 - zdrowotna obniżona
Funkcje dodatkowe:
•akrd(id,mod) - w zależności od parametru mod pobrana zostanie kwota z ewidencji akordu za okres wynagrodzeń listy - akrd(0,0) lub za okres nieobecności - akrd(0,1),
parametr id umożliwia pobieranie składowych kwot akordu dla poszczególnych składników akordu i określa numer kolejny składnika akordu; funkcja akrd(id,mod) dla id>0 użyta w definicji wartości zadanej składnika zwraca nie kwotę, a ilość
np. akrd(1,0) - kwota akordu sumowana tylko dla składnika pierwszego
akrd(2,0) - kwota z drugiego składnika akordu (AGE 00001)
akrd(0,0) - całkowita kwota akordu
•pztr() - w przypadku dwóch aktualnych zatrudnień funkcja zwraca wartość 1,00 gdy naliczamy pracownika z jego zatrudnienia głównego (podstawowego) (Ustaw jako główne), natomiast 0,00 w przy zatrudnieniu dodatkowym
•aztr(mod,k) - zwraca liczbę lat, miesięcy lub dni (mod=0, 1, 2) z aktualnego zatrudnienia na początek lub koniec okresu wynagrodzeń listy (k=0, 1)
•hztr(id,mod,k) - zwraca liczbę lat, miesięcy lub dni (mod=0, 1, 2) stażu określonego w id z całego zatrudnienia na początek lub koniec okresu wynagrodzeń listy (k=0, 1). Wartości id:
o0 - staż
o1 - staż branżowy
o2 - staż do urlopu
o3 - staż do jublieuszu
o4 - staż stanowiskowy
•kszt(id) - w zależności od parametru id pobrane zostaną godziny (1), kwota (2) lub procent (3) z ewidencji kosztów za okres wynagrodzeń listy
•wynu() - wynagrodzenie uczniów na podstawie umowy o pracę (pole Rodzaj pracownika na zakładce Inne) i kwot wynagrodzeń pracowników młodocianych, określonych w parametrach naliczania (Ustawienia – Parametry naliczania, zakładka Inne)
•rycz(id[,mod]) - pobiera kwoty z ewidencji ekwiwalentów i ryczałtów za okres wynagrodzeń listy, id to rodzaj ryczałtu: 1 - ekwiwalent za odzież, 2 - ekwiwalent za pranie, 3 - ryczałt samochodowy, 4 do 8 - dodatkowe ryczałty #1 do #5, 9 - Pr.zdalna-ekwiwalent, 10 - Pr.zdalna-ryczałt mies., 11 - Pr.zdalna-ryczałt godz.;
dla mod=0 pobiera kwotę, dla mod=1 pobiera ilość
•sldp(id) - aktualne saldo potrąceń i pożyczek, id to rodzaj potrącenia: 1 - pożyczka KZP, 2 - pożyczka mieszkaniowa, 3 - komornik, 4 - inne pożyczki, 5 do 14 - dodatkowe potrącenia #1 do #10
•urlk(id) - pobiera dni kalendarzowe urlopu (razem z sobotami i niedzielami), id to rodzaj urlopu z karty urlopowej
•list(id) - parametry przypisane do listy płac, zwracające numer (X_I) definicji (id=0), rejestru (id=1) i rodzaju listy (id=2)
•dlg(id[,mod]) - pobiera kwotę do wypłaty z ewidencji delegacji w zależności od id:
o0 - początek delegacji (czas od) mieści się w okresie wynagrodzeń listy
o1 - data rozliczenia delegacji mieści się w okresie wynagrodzeń listy oraz status rachunku jest zatwierdzony
o2 - koniec delegacji (czas do) mieści się w okresie wynagrodzeń listy
opcjonalny parametr mod podstawia wartości: 0 - do zapłaty, 1 - il.diety śniad., 2 - il.diety obiad, 3 - il.diety kolacja, 4 - il.diety zagr.śniad., 5 - il.diety zagr.obiad, 6 - il.diety zagr.kolacja, 7 - il.diety zagr.inne, 8 - il. diet, 21 - noclegi wg rachunków plus noclegi-ryczałt, 22 - koszt ogółem, 23 - zaliczka, 24 - rozliczenie końcowe, 25 - dyspozycja rozl. w walucie, 26 - kwota ponad limit w zł, 27- noclegi i diety wg rach., 28 - noclegi ryczałt, 29 - noclegi zagraniczne ryczałt, 30 - pobyt w szpitalu za granicą, 31 - inne wydatki wg załączników, 32 - ryczałty za dojazdy 33 - ryczałty za dojazd do dworca (zagr.), 34 - ryczałty za dojazdy komunikacją (zagr.), 35 - ryczałty za dojazdy w zł, 36 -diety ponad limit w zł, 37 - noclegi ponad limit w zł
•kng(id) - pobiera kwoty z ewidencji kar i nagród za okres wynagrodzeń listy w zależności od parametru id: 0 - suma kar pieniężnych z okresu, 1 - suma nagród pieniężnych z okresu
•calc(x,id,k) - kalkulator płacowy, na podstawie podanej kwoty x oblicza w zależności od id:
o1 - netto z brutto
o2 - brutto z netto
o3 - koszt zakładu z brutto
o4 - koszt zakładu z netto
o5 - netto z kosztu zakładu
o6 - brutto z kosztu zakładu
dla umowy o pracę (k=0) lub umowy zlecenia (k=1), przy przeliczaniu uwzględniane są koszty uzyskania i ulga podatkowa w wysokości ustawionej przy urzędzie skarbowym pracownika; dodatkowo dla k=2 oblicza netto lub brutto dla umowy o pracę, ale bez podatku dochodowego
•calc(x,id,k,p1,p2) - przy przeliczaniu uwzględniane są również zadane wartości kosztów uzyskania (p1) i ulgi podatkowej (p2), a calc([premia_netto],2,0,sys(KosztUzysk),sys(UlgaPodat)) uwzględni koszty i ulgę bezpośrednio z listy
•calc(x,id,k,p1,p2,p3,p4,p5) - kalkulator płacowy, dodatkowo uwzględniający przy przeliczeniach zadaną wartość podstawy wymiaru składki emerytalno-rentowej (p3), ulgę dla osób do 26 lat (p4) oraz % podatku (p5)
Dla wartości parametru p1 (kosztów uzyskania) oraz p2 (ulgi podatkowej) zalecamy wykorzystywanie parametów:
Koszty uzyskania i ulga podatkowa:
•sys(KosztUzysk), sys(UlgaPodat) - do wyliczenia składnika zostaną zastosowane koszty uzyskania oraz ulga podatkowa fizycznie z listy płac
Ulgi podatkowej:
•0 - wartość ulgi podatkowej uwzględnionej w wyliczeniach składnika będzie zerowa, dla obliczeń według przepisów za rok obecny, ale zostanie uwzględiona ulga podatkowa według wyliczeń na dzień 31 grudnia 2021. np. calc([premia_netto],2,0,0,0) nie uwzględni kosztów, a ulga zostanie uwzględniona tylko dla małych kwot. (wg wyliczeń na grudzień 2021)
sys(KosztUzysk) / sys(UlgaPodat) - wartość ulgi podatkowej / kosztów uzyskania wykorzystanych przez funkcję zostanie podstawiona w wysokości bezpośrednio z listy płac
•-1 - wartość ulgi podatkowej uwzględnionej w wyliczeniach składnika będzie zerowa, zarówno dla obliczeń według przepisów za rok obecny, jak i w przypadku wyliczeń wg przepisów na dzień 31 grudnia 2021
np. calc([premia_netto],2,0,0,-1) nie uwzględni kosztów i ulgi przy ubruttowieniu
•zwc() - przy ciągłych zwolnieniach w karcie zasiłkowej na przełomie miesięcy zwraca ilość przełomowych miesięcy
•dnz(m) - zwraca ilość niewypłaconych dni zwolnienia sprzed m miesięcy
•wazt(m1,m2) - zwraca liczbę miesięcy aktualnego zatrudnienia wg okresu wynagrodzeń sprzed m1 miesięcy do m2 miesięcy
•zfss(id) - pobiera na listę płac wartość z ewidencji zakładowego funduszu świadczeń socjalnych, z rodzaju świadczenia określonego w id, lub z wszystkich rodzajów jeśli id=0
•kurs(id,k) - kurs waluty o identyfikatorze id na dzień wypłaty dla k=0, na dzień poprzedzający dzień wypłaty dla k=10, na dzień końca okresu wynagrodzeń dla k=1, na początek okresu wynagrodzeń dla k=2, na dzień poprzedzający koniec okresu wynagrodzeń dla k=11 oraz na dzień poprzedający początek okresu wynagrodzeń dla k=12
•tab(id,mod) - zwraca wartość z tabeli zaszeregowania (patrz: Defincje - Tabele zaszeregowania) o identyfikatorze id według daty wypłaty dla mod=0, okresu wynagrodzeń dla mod=1, i okresu kartoteki dla mod=2
•wkl(id) - pobiera na listę płac wartość wkładu o rodzaju określonym w id (id=0 - KZP, id=1 - Fundusz mieszkaniowy, id=2 - Inne)
•wklz(id,k) - pobiera na listę płac wartość kwoty zwiększenia (k=1) lub zmniejszenia (k=2) wkładu o rodzaju określonym w id (id=0 - KZP, id=1 - Fundusz mieszkaniowy, id=2 - Inne)
•sldw(id) - pobiera na listę płac saldo wkładu o rodzaju określonym w id(id=0 - KZP, id=1 - Fundusz mieszkaniowy, id=2 - Inne)
•stan(id) - pobiera na listę płac wartość jednego z trzech parametrów stanowiska (id=1..3)
•ekw(id) - pobiera z ewidencji wyposażenia wartość ekwiwalentu wyposażenia (id=1-ekwiwalent; id=2-ekwiwalent za przedłużenie okresu użytkowania; id=3-koszt pracownika)
•kom(id) - zwraca wartość ujętych na liście innych potrąceń komorniczych (id=0) lub alimentów (id=1)
•pozu(id) - pobiera na listę płac ilość pozostałych do wykorzystania godzin urlopu wypoczynkowego (id=0) lub dodatkowego (id=1)
•zas() - pobiera na listę płac kwotę zasiłku z karty zasiłkowej
•ppar(id) - pobiera na listę płac parametry naliczania z aktualnego zatrudnienia (id=1 - koszty uzyskania, id=2 - ulga podatkowa)
•ide(id) - zwraca identyfikator aktualnego rekordu (X_I) z odpowiednich tabel,w zależności od parametru id: id=1 - identyfikator pracownika, id=2 - identyfikator aktualnego zatrudnienia pracownika, id=3 - identyfikator listy płac, id=4 - identyfikator pozycji listy płac, id=5 - identyfikator umowy o pracę aktualnie naliczanego pracownika, id=6 - identyfikator definicji listy, id=7 - identyfikator aktualnej firmy, id=8 - ID kalendarza
•sf_() - wywołanie funkcji składowanej w bazie firmy, można wykorzystać istniejące standardowe funkcje składowane lub utworzyć własną funkcję; dla przykładowej funkcji w bazie:
function [dbo].[fn_KP_SumGP] (@NumGP int, @NumNGP int, @X_IHistorii int, @Mies int, @Rok int).
wywołanie może wyglądać następująco:
sf_fn_KP_SumGP(2,0,ide(2),11,2011) pod warunkiem, że funkcja fn_KP_SumGP będzie zdeklarowana w funkcjach użytkownika
•calcgl(x,id,d) - kalkulator globalny (x-zadana wartość, id-numer pola systemowego, d-dokładność); przelicza pozycję listy płac, aż pole systemowe o identyfikatorze id osiągnie zadaną wartość x z dokładnością d (dokładność d oznacza wyliczenie pola systemowego pomiędzy wartościami x-d a x+d)
np. zdefiniowanie premii miesięcznej jako: calcgl(wz(premia miesięczna),92,0) obliczy taką wartość premii miesięcznej, aby jej wartość zadana była równa płacy netto (pole systemowe o ide=92)
•sysk(id) - pobiera na listę płac wartość pola systemowego id z listy korygowanej
•sklk(id) - pobiera na listę płac wartość składnika id z listy korygowanej
•sysw(id) - pobiera na listę płac wartość pola systemowego id z listy wyrównywanej
•sklw(id) - pobiera na listę płac wartość składnika id z listy wyrównywanej
•skok(id) - pobiera na listę płac wartość składnika id z ewidencji składników okresowych
•rezu(id[,mod]) - rezerwa urlopu do wykorzystania na ostatni dzień okresu wynagrodzenia listy, dla id=0 urlop wypoczynkowy, dla id=1 urlop dodatkowy; dla mod=0 poprzedni i bieżący proporcjonalny limit, dla mod=1 tylko poprzedni limit
•wynp() - pobiera na listę płac wynagrodzenie z Umowy o praktykę absolwencką
•dnsklp(x,m) - pobiera na listę płac wartość składnika według dochodów narastająco dla wszystkich zatrudnień od miesiąca stycznia do miesiąca sprzed m miesięcy
•wnsklp(x,m) - pobiera na listę płac wartość składnika według wynagrodzeń narastająco ze wszystkich zatrudnień od miesiąca stycznia do miesiąca sprzed m miesięcy
•ncp(id [,mod]) - funkcja pobierająca na koniec okresu rozliczeniowego przekroczenia norm czasu pracy, otrzymujemy dla id równego:
o1 - liczba godzin przepracowanych w okresie rozliczeniowym,
o2 - liczba dni przepracowanych w okresie rozliczeniowym,
o3 - średnia liczba godzin przepracowanych w tygodniu,
o4 - liczba nadgodzin w okr. rozl.,
o5 - średnia liczba nadgodzin w tygodniu,
o6 - norma czasu pracy w godzinach,
o7 - norma czasu pracy w dniach,
o8 - liczba godzin nieoddanych niedziel,
o9 - liczba godzin nieoddanych świąt,
o10 - liczba godzin nieoddanych wolnych,
o11 - liczba godzin braku przerw dobowych,
o12 - liczba godzin braku przerw tygodniowych,
o13 - liczba godzin wejść w dobę pracowniczą,
o14 - ilość nadgodzin w roku ponad limit,
o15 - liczba niezachowanych przerw tygodniowych,
opcjonalny parametr mod dla wartości: 1 - umożliwia pobranie przekroczenia norm obliczone dla jednego miesiąca, a nie całego okresu rozliczeniowego
Należy zwrócić uwagę na fakt, iż Definicja wartości zadanej i Definicja wartości wyliczonej nominalnej wykorzystywane są przy przeliczaniu składników zarówno w angażu, jak i przy naliczaniu wynagrodzeń na liście płac. Niektóre funkcje (np. zależne od okresu wynagrodzeń) nie działają w angażu, natomiast muszą być użyte w definicji, gdyż od nich zależy prawidłowe naliczenie wynagrodzeń (np. godz()). W takich przypadkach część wyrażenia, zawierająca taką funkcję, powinna być ujęta w nawiasy {}. Dotyczy to oczywiście definicji składników występujących w angażu.