Nawigacja:  Menu Główne oraz informacje ogólne > Słowniki > Składniki Listy Płac >

Funkcje w formułach obliczeniowych

Poprzednia stronaPowrótNastępna strona

Przykłady zastosowania funkcji w składnikach

 

Funkcje podano w kolejności alfabetycznej.

ASum

DniMca

Etat

Godz

If

Parametry

Sk

xRound

ZasRP

 

DniNN

 

 

 

Podatek

Splata

 

ZUS

 

DniNZ

 

 

 

PoleBazy

Staz

 

 

 

DniRob

 

 

 

 

Sum

 

 

 

DniPracy

 

 

 

 

 

 

 

 

ASum(X,Y) ,  ASum(X,Y,Z), 

 

Funkcja sum (ang. sumować), oblicza wartość składnika X z kartoteki pracownika (z list zaksięgowanych).

 

       X,Y Wywołanie z dwoma parametrami

 

Y>0 - suma składnika X z ostatnich Y miesięcy

BANERprzyklad

Sporządzamy listę za miesiąc marzec. W kartotece są następujące zapisy:

Miesiąc

Składnik

Wartość

Luty

100

70

Styczeń

100

brak (cały m-c chorobowe)

Grudzień

100

50

Listopad

100

50

ASum(100,3) wynik   120,00

 

Funkcja oblicza sumę z wskazanej liczby miesięcy, bez względu na to, czy występowały jakieś wartości cz też nie.

 

BANERuwaga

   Program obsługuje bazy z bieżącego i poprzedniego roku. Funkcja ASum może być wywołana z miesiącem M1 oraz M2 równym ZERO, w takim przypadku zwraca nam wartość zaksięgowanego składnika z bieżącego miesiąca.

 

       X,Y,Z - Wywołanie z trzema parametrami

 

Program oblicza sumę składnika X w przedziale miesięcy od Y do Z bieżącego roku.

W/w funkcję należy używać przede wszystkim, jeśli stwierdzimy potrzebę wykorzystania danych liczbowych pracownika z jego wypłat, z poprzednich miesięcy. Informacje te są niezbędne (na przykład) do wyliczenia średniej do urlopu, z trzech ostatnich miesięcy.

Funkcja ta jest jednak najbardziej pomocna przy wyliczeniu wszystkich danych, potrzebnych do wypełnienia deklaracji podatkowych PIT 8, 11 oraz 40, gdzie musimy podać sumę podatku za kolejne miesiące.

Jeżeli pracujemy w tym samym roku, w którym wystawiamy PIT-y za zakończony rok lub deklarację dla pracownika zwolnionego, to funkcja wyliczenia sumy podatku (załóżmy, że jest on oznaczony kodem 620), będzie wyglądała następująco:

 

ASum(620,1,12)

czyli suma składnika 620 od miesiąca stycznia do grudnia.

Natomiast, jeżeli pracujemy już w następnym roku w styczniu i wystawiamy PIT za rok poprzedni, wtedy formułę należy zamienić na:

ASum(620,-1,-12)

czyli suma składnika 620 od miesiąca stycznia do grudnia z poprzedniego roku.

BANERuwaga

Znak - jest dla programu informacją, że dane należy pobrać z roku poprzedzającego ten, wpisany w parametrach systemu.

Funkcja ASum(x,-1,-12) pobiera dane z całego poprzedniego roku i może występować tylko w takiej postaci.

 

ASum(x,y,0)

Użycie w trzecim parametrze (z) cyfry "0", oznacza że program ma pobrać dane z poprzednich miesięcy (ilość określa parametr druki y), bez względu na to czy dane dotyczą bieżącego czy ubiegłego roku.

BANERprzyklad

Zastosowanie funkcji w miesiącu ASum(100,3,0) w miesiącu:

maju - zsumuje dane składnika z list zaksięgowanych z miesięcy kwietnia, marca oraz lutego

lutym - zsumuje dane składnika z list zaksięgowanych z miesięcy stycznia bieżącego roku oraz z grudnia i listopada roku poprzedniego.

 

 

DniMca(X)

 

Zwraca liczbę dni kalendarzowych miesiąca X z uwzględnieniem lat przestępnych. Dla parametru X=0 zwraca liczbę dni bieżącego miesiąca (miesiąca z aktualnie przetwarzanej listy roboczej).

 

DniNN(X)

 

Podaje ilość dni nieobecności pracownika, wpisanych w kartotece osobowej, w harmonogramie pracy dla bieżącego miesiąca.

 

Dla wartości parametru X zwracane są dni:

 

1

Dzień roboczy

2

Urlop wypoczynkowy

3

Urlop okolicznościowy

4

Urlop bezpłatny

5

Nieobecność nieusprawiedliwiona

6

Nieobecność usprawiedliwiona

7

Zasiłek Chorobowy - wypłacany przez Zakład

8

Świadczenia Ciążowe - wypłacane przez Zakład

9

Świadczenia Powypadkowe - wypłacane przez Zakład

10

Opieka nad zdrowym dzieckiem

11

Zasiłek Chorobowy - wypłacany przez ZUS

12

Świadczenia ciążowe - wypłacane przez ZUS

13

Świadczenia Powypadkowe -  wypłacane przez ZUS

14

Zasiłek Macierzyński

15

Urlop Wychowawczy

16

Zasiłek Opiekuńczy

17

Świadczenie Rehabilitacyjne

18

Inne 1

19

Inne 2

20

Opieka nad zdrowym dzieckiem w przypadku choroby opiekuna

21

Szkolenia (nieobecność usprawiedliwiona)

22

Urlop na żądanie

23

Delegacja

24

Dzień wolny za przepracowane godziny nadliczbowe

 

 

Należy pamiętać, że liczba kolejna przypisana jest do konkretnego rodzaju nieobecności. Dlatego jeżeli użyjemy funkcji DniNN(1), program obliczy nam z harmonogramu ilość dni roboczych, natomiast jeśli użyjemy funkcji DniNN(4), otrzymamy liczbę dni urlopu bezpłatnego, itd. Ilość wybranych dni z kalendarza osobistego pracownika, użyta zostanie do wyliczenia wynagrodzenia, więc zwracajmy uwagę na to, czy kalendarz każdego pracownika wypełniony jest odpowiednimi danymi.

BANERpamietaj

DniNN(2) dla pracownika Kowalskiego wyniesie 3, jeżeli był on 3 dni na urlopie wypoczynkowym w danym miesiącu i miał on te dni ZAZNACZONE w swoim harmonogramie.

 

 

 

DniNZ

 

Zwraca liczbę dni, w których pracownik nie był zatrudniony w bieżącym miesiącu. Funkcję możemy zastosować do wyliczenia płacy zasadniczej przy uwzględnieniu jego dni nieobecności (płaca musi zostać pomniejszona)

BANERprzyklad

xRound(Sum(98)*(30-Sum(4,19)-DniNZ)/30, 2)

 

DniRob(X)

 

Podaje ilość dni roboczych dla miesiąca X (dni wpisane w Parametrach Systemu).

 

Jeżeli X=0, to podaje ilość dni roboczych dla bieżącego miesiąca.

BANERprzyklad

DniRob(0) - Ilość dni roboczych dla pracownika Kowalskiego wyniesie w miesiącu styczniu np.: 22, ponieważ tyle było dni tyle było dni roboczych w Zakładzie Kowalskiego. Funkcja ta nie odnosi się do konkretnego pracownika, tylko pobiera ilość dni roboczych (firmy w danym miesiącu) jako liczbę potrzebną do przeliczeń np.: wynagrodzenia zasadniczego Kowalskiego.

 

W zależności od sposobu liczenia niektórych składników wynagrodzenia - jeśli pracownik był w lutym 3 dni na urlopie wypoczynkowym, wtedy wynagrodzenie zasadnicze jest pomniejszone o nieobecności (w niektórych firmach).

 

Kolejność jest następująca:

Wynagrodzenia zasadnicze dzielone jest przez ilość dni roboczych, a następnie pomnożone przez liczbę dni pracy (funkcja DniPracy(0)), czyli obecności pracownika.

Natomiast jego wynagrodzenie za 3 dni urlopu liczone jest na innych zasadach, np. jako średnia z trzech miesięcy, przypadająca na jeden dzień i pomnożona przez liczbę dni urlopu.

 

ETAT

 

Funkcja zwraca współczynnik wymiaru czasu pracy wpisany w kartotece osobowej pracownika w opcji Wykaz Pracowników. Wartość podana jest w postaci ułamka np. 3/4, wynikiem będzie współczynnik 0.75

 

 

GODZ(x)

 

Funkcja oblicz liczbę godzin z kalendarza pracownika GODZ(x) gdzie x:

 

       1 - godziny przepracowane

       2 - nadliczbowe 50%

       3 - nadliczbowe 100%

       4 - II zmiana

       5 - III zmiana

       6 - nocne

       7 - w dni świąteczne

 

If(L,X,Y)

if - ang., jeżeli, jeśli

Jest to funkcja logiczna, często stosowana w wyliczaniu list płac. Jej ogromne znaczenie spowodowane jest tym, że program przy liczeniu kolejnych składników listy, ciągle musi “decydować”, które funkcję lub działanie  powinien wybrać.

Każdy użytkownik powinien sobie zdawać sprawę z zasad jej działania.

Funkcja ta składa się z trzech parametrów. Rezultatem działania jest podanie parametru X, jeżeli wartość L (wyrażenie logiczne określające parametr X) jest prawdziwe, w przeciwnym wypadku podaje parametr Y.

Dla funkcji IF dopuszczalne są operatory logiczne: = równy, > większy, < mniejsze, <>różny

 

BANERprzyklad

"Składka na jakiś cel" - składnik nr 570

if(Sk(890)=1,6.5,0)   

Jeżeli wartość składnika  890 jest = 1,  wtedy wstawiana jest wartość składnika 6,50. W innym wypadku wstawiana jest wartość 0.

Załóżmy że w firmie część pracowników będzie płacić składki na jakiś cel. Wtedy deklarujemy składnik (np. 890) jako informację o tym. Jeśli pracownik będzie płacił taką składkę, wybieramy składnik 890 jako stały i w polu Formuła wprowadzamy wartość 1 każdemu pracownikowi, któremu będziemy potrącać kasę.

Program przy pomocy formuły if(Sk(890)=1,6.5,0), w składniku 570 sprawdzi, który pracownik posiada składnik z zadeklarowaną chęcią płacenia składki:składnik 890 = 1 i potrąci mu 6,50 z pensji.

W  przypadku, gdy pracownik nie ma zadeklarowanego składnika 890 lub gdy ma ale z innym niż "1" wpisem,  program wstawi wartość 0 (zero).

Jeśli nastąpi zmiana wartości składki, wtedy wystarczy zrobić poprawkę, tylko w wybranym składniku, bez konieczności dokonywania zmiany w danych poszczególnych pracowników.

BANERuwaga

Znakami przecinka oddzielamy kolejne parametry funkcji. Aby wprowadzić wartość dziesiętną posługujemy się kropką.

BANERpamietaj

Wartości 1 lub 0 wykorzystujemy także odwołując się do danych z kartotek pracowniczych, gdzie znajdują się pola fajka1pustafajka1.

Znak fajka1 = 1, Znak fajka1pusta = 0

KPformulaFajki

 

 

Parametry('X')

 

Funkcja zwraca wartość zasiłków, kosztów, podatków itp. zawartych w Parametrach Systemu.

X jest nazwą pola tabeli danych.

 

BANERuwaga

Nazwę pola ograniczamy pojedynczymi "uszami".

 

BANERprzyklad

Parametry('Koszty1') - koszty uzyskania zwykłe

Parametry('Koszty2') - koszty uzyskania podwyższone

Parametry('SK_Emerytalne') - procent składki na ub. Emerytalne

Parametry('PG1') - pierwszy próg podatkowy

Parametry('PS1') - stawka z pierwszego progu podatkowego

Parametry('PG2') - drugi próg podatkowy

Parametry('PS2') - stawka z drugiego progu podatkowego

Parametry('PG3') - trzeci próg podatkowy

Parametry('PS3') - stawka z trzeciego progu podatkowego

Parametry('Granica_Skladek') - wartość granicy składek ZUS

 

 

KPformulaParametry

 

 

 

Podatek(X,Y)

 

Oblicza stawkę podatkową (współczynnik %), uwzględniając progi podatkowe zawarte w Parametrach Systemu.

 

KPparametry

 

 

X - kod składnika Brutto do opodatkowania,

Y - współczynnik podwojonej górnej granicy podatkowej dla rozliczających się wspólnie z małżonkiem (liczba 2). Wszystkie inne wartości tego parametru traktowane są jako 1.

 

BANERprzyklad

Podatek(603,SK(900))

603 - kod składnika brutto

900 - kod składnika stałego zawierającego ew. współczynnik 2

 

BANERuwaga

Nie musimy wprowadzać składnika stałego 900 z wartością jeden. Podatek(603,1) - gdy nie mamy pracowników z podwójną granicą.

 

BANERprzyklad

KPfunkcjePodatek

 

xRound(xRound(Sum(610),0)*Podatek(300,Sk(882))-Sum(604),1)

BANERuwaga

Nie musimy definiować pracownikom składnika stałego z wartością 1. Wartość ta przyjmowana jest domyślnie.

 

PoleBazy('PARAMETRY', 'Pr_Wypadkowe'),

 

PoleBazy('ZUS', 'Kod_Tyt_Ubezp2')

 

W związku ze zmianą stawki procentowej Składki Ubezpieczenia Wypadkowego, która teraz zależy od „parametrów” firmy, została ona dodatkowo zdefiniowana w Parametrach Systemu (Parametry są indywidualne dla każdej firmy w bieżącym roku).

W module Płacowym, dostęp do tej wartości możemy uzyskać właśnie za pomocą tej funkcji, która pobiera dane z następujących tabel (pisanych dużymi literami i w pojedynczych "uszach"):

'OSOBY'

'ZUS'

'PARAMETRY'

 

BANERprzykladskładnik 605 z listy gotowych składników

PoleBazy('Osoby','Rodzaj_Kosztów')

 

KPformula3b

 

 

Sk(X)

 

Funkcja Sk(X) odwołuje się do innego składnika X Stałego, bądź Tymczasowego pracownika (patrz funkcja Splata(X,Y)). Nie przelicza, a tylko odwołuje się (najczęściej w przypadku potrzeby skorzystania z danego składnika przy używaniu innych funkcji).

BANERprzyklad

Liczymy  20 % premii od stawki zasadniczej bez względu na inne czynniki:

Formuła jest następująca: sum(sk(800)*0.2) gdzie Sk(800) jest pomnożone przez 0.2 (inaczej 20%). Sk(800) jest odwołaniem się do składnika 800, gdzie umieszczono stawkę pracownika, np. w wysokości 1000 zł. Rezultatem będzie suma 200 zł.

 

 

Splata(X,Y)

 

Spłata kredytu. Funkcja szeroko stosowana do rozliczeń spłacanych kwot kredytu.

Jeżeli chcemy potrącać pracownikowi, co miesiąc z wypłaty, pewną ustaloną kwotę np.:

       ratę z kasy zapomogowo pożyczkowej,
       ratę spłaty funduszu mieszkaniowego,
       kwotę zwolnienia z podatku ustaloną dla pracownika przez Urząd Skarbowy,
       lub inne kwoty (spłacane regularnie, co miesiąc),

wtedy nie musimy pamiętać, co miesiąc o tych potrąceniach, gdyż program sam będzie pobierał z zadeklarowanej kwoty nazwijmy to kredytu X wyznaczone raty spłat  Y.

 

System za pomocą tej funkcji potrąca odpowiednią kwotę, aż do wyczerpania kredytu. Za każdym razem po wykonaniu operacji i po zaksięgowaniu listy (!!!!!!), automatycznie obniżane jest saldo kredytu o spłacone raty, aż do zera.

 

BANERuwaga

Saldo kredytu X musi być zdefiniowane w Składnikach stałych. Rata Y może być składnikiem stałym lub może być podawana jako liczba.

BANERprzyklad

KPformulaSpataKZP

 

1  sposób

Splata(870,sk(871)) - Saldo kredytu jest pod kodem 870, a rata pod kodem  871 w zbiorze składników stałych.

 

2 sposób

Splata(871,50) - Saldo jw. Rata dla wszystkich pracowników 50 zł

 

Staz(X)

 

X - oznacza ilość lat.

Funkcja podaje aktualny staż, jeżeli przepracowany okres czasu jest większy od parametru X. Wartość zwracana jest jako współczynnik tzn. dla  5% stażu będzie 0.05

Do prawidłowego działania funkcji należy w kartotece pracownika w opcji PRACOWNICY - Wykaz Pracowników, wypełnić pola:

 

KPkartotekaPracStaz

 

Program oblicza bieżącą datę jako 01.mm.rrrr gdzie:

~ mm oznacza miesiąc, dla którego sporządzana jest lista np. 01

~ rrrr - rok (wpisany w parametrach systemu) np. 2006

 

 

 

BANERuwaga

W bieżącej dacie przyjmowany jest zawsze pierwszy dzień miesiąca np.  01.05.2006. Jeżeli bieżąca data jest mniejsza od daty zmiany stażu (w kartotece), wtedy funkcja zwraca aktualny staż (z kartoteki), w przeciwnym wypadku do aktualnego stażu dodawany jest jego przyrost z parametrów systemu.

Jeżeli bieżąca data jest większa bądź równa dacie zmiany stażu, wtedy podczas zapisu listy (klawisz F9 w Listach Roboczych) następuje aktualizacja pól: Aktualny staż (zwiększony jest o przyrost stażu - w Parametry Systemu).

 

BANERprzyklad

KPformulaStaz

 

Z zamieszczonego wyżej przykładu wynika, że ustalono coroczny przyrost 1% do dodatku stażowego, nie większy jednak niż 20%.

 

Sum(X)  i Sum(X,Y)

 

Funkcja sum dodaje składniki z bieżącej listy

KPformula1

 

Wynikiem będzie suma wartości jakie obliczone zostaną w składniku 450 (BRUTTO) oraz w składniku 540 (Razem ZUS).

 

 

Funkcja sum wywołana z dwoma parametrami X,Y

KPformula

 

Wynikiem będzie suma składników od 300 do 400 dodana do składnika 440.

 

X,Y - oznaczają kody składników, które należy sumować

Formuła oblicza sumę wartości składnika (X) lub sumę wartości dla przedziału od składnika X do składnika Y dla bieżącej listy.

Nie jest wymagane uzupełnianie zerami składników o kodach poniżej 100. Dla kodu 021 wystarczy wpisać 21. Funkcję można stosować także z jednym tylko parametrem, wówczas zwracana jest wartość podanego składnika.

 

BANERprzyklad:

Sum(21,25) - podaje sumę składników od 21 do 25, czyli 21+22+23+24+25

Sum(100) - podaje wartość składnika 100

 

 

BANERwskazowki

1. Funkcję stosujemy do sumowania składników aktualnie przetwarzanej listy roboczej.

2. Funkcja może sumować składniki o kodach mniejszych niż kod składnika aktualnie obliczanej formuły.

 

 

xRround(X,Y) round - ang. zaokrąglać

 

Zaokrągla wartość parametru X w zależności od parametru Y.

 

Jest to zwykła funkcja matematyczna, służąca do zaokrąglania liczb. Podczas przeliczania listy płac, niektóre składniki muszą być zaokrąglone do: 10gr. , 1 grosza, całych złotych (np. przy obliczaniu podatku czy składki ZUS.)

Może być również funkcją wewnętrzną, tworzącą bazę dla innej, wykorzystującej liczby całkowite do dalszego przeliczania wartości.

 

BANERprzyklad

Wartość X (1425,756), poddamy różnym zaokrągleniom przy użyciu różnych parametrów - Y.

 

funkcja

wynik

xRound(1425.756,-3)

1 000,-

xRound(1425.756,-2)

1 400,-

xRound(1425.756,-1)

1 430,-

xRound(1425.756, 0)

1 426,-

xRound(1425.756, 1)

1 425,8

xRound(1425.756, 2)

1 425,76

 

BANERuwaga

1. Funkcję xRound należy stosować we wszystkich formułach obliczeniowych, w których wykorzystujemy mnożenie bądź dzielenie.

2. Należy ustawić zaokrąglenie do dwóch miejsc po przecinku (1-go grosza), chyba, że wymagane jest inne (podatki, deklaracje). Jeśli wszystkie składniki zaokrąglone będą do pełnego grosza, wtedy nie będzie problemów z uzgodnieniem zbiorówek.

 

 

ZasRP(X,Y)

 

 

Funkcja stosowana do obliczenia kwoty oraz ilości osób uprawnionych do zasiłku rodzinnego i pielęgnacyjnego.

X=1 zasiłek rodzinny,

X=2 zasiłek pielęgnacyjny

 

Y=1 kwota zasiłku,

Y=2 ilość osób uprawnionych do zasiłku

 

BANERprzyklad

ZasRP(1,1) - kwota zasiłku rodzinnego

ZasRP(1,2) - liczba osób uprawnionych do zasiłku rodzinnego

 

Do prawidłowego działania funkcji muszą być wypełnione stawki zasiłków w Parametrach Systemu oraz zaznaczone uprawnienia odpowiednich członków rodziny w danych o rodzinie pracownika (F10 lub) w opcji Wykaz Pracowników.

 

KPparamZasilki

 

Zus(X)

 

Funkcja korzysta z danych zawartych w tabeli kp_osoby.

Dzięki jej zastosowaniu możemy znacznie ograniczyć konieczność definiowania dodatkowych Składników Stałych.

 

Parametr X przyjmuje wartość od 1 do 14:

 

(1)

Zwraca cały kod tytułu ubezpieczenia (sześć cyfr).

Otrzymana wartość jest liczbą, dlatego dla kodu 011000 zwracana jest liczba 11000.

(2)

Zwraca tylko kod tytułu ubezpieczenia (cztery cyfry).

Otrzymana wartość jest liczbą, dlatego dla kodu 0110 zwracana jest liczba 110.

(3)

Zwraca kod: ustalone prawo do emerytury lub renty. Jeśli jest to:

0 - nie ma ustalonego prawa;

1 - ma ustalone prawo do emerytury;

2 - ma ustalone prawo do renty.

(4)

 

Zwraca kod stopnia niepełnosprawności. Jeśli jest to:

0 - nie posiada orzeczenia o niepełnosprawności;

1 - lekki stopień niepełnosprawności;

2 - umiarkowany stopień niepełnosprawności;

3 - znaczny stopień niepełnosprawności.

(5)

Kontrola bieżącej daty obliczonej jako 1-szy dzień miesiąca, za który obliczana jest lista, z datą końcową okresu, na jaki orzeczony został stopień niepełnosprawności. Jeżeli bieżąca data jest większa to zwracana jest wartość zero. W przeciwnym wypadku jeden.

(6)

Czy podlega ubezpieczeniu emerytalnemu? Jeśli zwraca:

1=Tak, 0=Nie.

(7)

Czy podlega ubezpieczeniu rentowemu? Jeśli zwraca:

1=Tak, 0=Nie.

(8)

Czy podlega ubezpieczeniu chorobowemu? Jeśli zwraca:

1=Tak, 0=Nie.

(9)

Czy podlega ubezpieczeniu wypadkowemu? Jeśli zwraca:

1=Tak, 0=Nie.

(10)

Wnosi o objęcie dobrowolnym ubezpieczeniem emerytalnym.

(11)

Wnosi o objęcie dobrowolnym ubezpieczeniem rentowym.

(12)

Wnosi o objęcie dobrowolnym ubezpieczeniem chorobowym.

(13)

Kod stopnia niezdolności do pracy.

(14)

Kontrola bieżącej daty obliczonej jako 1-szy dzień miesiąca, za który obliczana jest lista, z datą końcową okresu, na jaki orzeczony został stopień niezdolności do pracy. Jeżeli bieżąca data jest większa to zwracana jest wartość zero. W przeciwnym wypadku jeden.

(15)

Zwraca kod tytułu ubezpieczenia II (cztery cyfry). Zwracana wartość jest liczbą.

 

 

BANERprzyklad

KPformulaZUS