Vzhled
Dovolená
Tento popis vysvětluje, jak systém ve skutečnosti počítá nárok na dovolenou v hodinách pro pracovníky na DPP a DPČ.
Používá se metodika platná od 1. 1. 2024 podle aktuálního českého zákoníku práce, ale výpočet vychází z reálných dat uložených v systému.
Kde je uložený roční nárok na dovolenou
Roční nárok na dovolenou se primárně bere z tabulky povolených typů práce:
wa_allowed_work_type_tab
Klíčem je:
department_idwork_type
Prakticky tedy nejde o nárok uložený jen "u zákazníka", ale přesněji u kombinace:
- pracoviště / oddělení
- typ práce
Pokud pro danou kombinaci není hodnota vyplněná, použije se nárok uložený přímo na pracovní smlouvě:
employment_tab.holiday_year_claim
Při založení smlouvy se tato hodnota obvykle předvyplní takto:
- z
wa_allowed_work_type_tabpodledepartment_id + work_type - pokud tam není, z
agreement_type.default_holiday_year_claim - pokud není ani tam, použije se
0
Jaké hodiny se do výpočtu berou
Do výpočtu vstupují skutečně odpracované a započitatelné hodiny za daný rok.
Používají se jen směny a podklady, které jsou ve správném stavu, například:
- schválené,
- uzamčené,
- dokončené.
Do výpočtu se započítávají i hodiny odpracované ve státní svátek, pokud jinak splňují podmínky pro započtení do nároku na dovolenou.
Jak systém pracuje s různými nároky během roku
Pokud pracovník během roku odpracuje hodiny na více kombinacích:
- různé pracoviště,
- různé typy práce,
a tyto kombinace mají různé roční nároky na dovolenou, systém si je rozdělí automaticky podle skutečně odpracovaných hodin.
Pro každou kombinaci si vezme:
- počet započitatelných hodin,
- odpovídající
holiday_year_claim
a z toho spočítá vážený průměr.
To znamená, že systém interně dělá logiku podobnou "4 týdny / 5 týdnů / 6 týdnů", ale ne podle ručně připravených vstupních polí. Vytváří si ji sám z reálných dat o směnách a z nastavení holiday_year_claim u konkrétní práce.
Kdy nárok vůbec vznikne
Nejprve se ověřuje, jestli pracovník splnil minimální rozsah práce pro vznik nároku.
Tato hranice není v kódu natvrdo jako pevné číslo, ale bere se z parametru:
HOLIDAY_NON_WA_MIN_HOURS_WORKED
pro daný rok a zemi.
V běžném českém nastavení to odpovídá zákonné hranici pro vznik nároku.
Jak se počítá výsledný nárok
Výpočet probíhá zjednodušeně takto:
- sečtou se všechny započitatelné hodiny za rok,
- zjistí se počet celých odpracovaných týdnů,
- spočítá se vážený průměr ročního nároku podle skutečně odpracovaných hodin na jednotlivých typech práce,
- z toho se vypočítá poměrná část dovolené,
- výsledek se zaokrouhlí nahoru na celé hodiny.
Co je "celý odpracovaný týden"
Systém pracuje s týdenním fondem hodin:
weekly_hour_fund = daily_hour_fund * 5
U dohod to v praxi často odpovídá hodnotě:
20 hodin týdně
ale skutečně se bere hodnota nastavená pro daný typ smlouvy.
Počet celých odpracovaných týdnů se určí tak, že se celkové započitatelné hodiny vydělí týdenním fondem a výsledek se zaokrouhlí dolů.
Vážený průměr nároku
Systém si pro jednotlivé kombinace:
pracoviště + typ práce
spočítá:
- odpracované hodiny,
- odpovídající roční nárok na dovolenou
a z toho vytvoří vážený průměr.
Prakticky tedy platí:
- více hodin na práci s vyšším nárokem zvýší výsledný nárok,
- více hodin na práci s nižším nárokem ho sníží.
Finální vzorec
Zjednodušeně se používá tento postup:
hours_worked_sum = součet započitatelných hodinholiday_year_claim_avg = vážený průměr ročního nárokuweekly_hour_fund = týdenní fond hodin
Potom:
holiday_claim = ceil(floor(hours_worked_sum / weekly_hour_fund) / 52 * weekly_hour_fund * holiday_year_claim_avg)
Výsledek se vždy zaokrouhluje:
- nahoru na celé hodiny
Praktický význam
Pokud tedy pracovník během roku:
- pracuje na různých pracovištích,
- nebo na různých typech práce,
- a tyto práce mají různý
holiday_year_claim,
systém nepočítá nárok jednou pevnou sazbou.
Místo toho vezme skutečné hodiny z jednotlivých kombinací a spočítá z nich vážený průměr.
Jednoduchý příklad
Pokud by pracovník odpracoval:
- část hodin na práci s ročním nárokem odpovídajícím
4 týdnům, - část hodin na práci s ročním nárokem odpovídajícím
5 týdnům,
výsledný nárok nebude čistě podle 4 nebo 5 týdnů, ale jako vážený průměr podle skutečně odpracovaných hodin v těchto režimech.
Právě proto může u dvou pracovníků se stejným celkovým počtem hodin vyjít jiný nárok, pokud pracovali na různých typech práce nebo pracovištích s odlišným nastavením dovolené.