gumek napisał(a):OK, dzięki.
Dorzucam raport.
Sprawdź, czy działa.
Dzięki za raport, o coś takiego właśnie mi chodziło.
Naniosłem tylko małą poprawkę, bo drukował tylko osoby bez wpisanej daty końca zatrudnienia.
Teraz drukuje wszystkich, którzy przepracowali choć jeden dzień w danym roku, i nie drukuje osób "ukrytych".
Jeśli chodzi o przeliczanie tabeli urlopów to: "YES! YES! YES!"

liczy wszytko ślicznie.
Żeby nie było tak słodko to można komplikować system dalej

Chodzi o wymiar urlopu zatrudnionych na okres próbny (w Karierze kod rodzaju umowy 'P').
W tej chwili Kadruś traktuje takie osoby jak zatrudnione na normalną umowę na czas określony i liczy im urlop proporcjonalnie, a niestety liczy się taki urlop ciut inaczej.
zacytuję jeden z poradników:
Ile dni urlopu otrzyma pracownik na próbie?
Oznacza to, że pracownik zatrudniony na podstawie umowy na okres próbny z każdym przepracowanym miesiącem nabywa prawo do 1/12 wymiaru urlopu przysługującego po przepracowanym roku. Jest to zatem urlop cząstkowy nabywany z dołu, czyli przysługujący za każdy przepracowany miesiąc. Przy ustalaniu wymiaru urlopu niepełny dzień urlopu zaokrągla się w górę do pełnego dnia. Podstawowy wymiar urlopu wypoczynkowego (pełen etat) wynosi przy tym 20 dni roboczych – jeżeli pracownik jest zatrudniony krócej niż 10 lat i 26 dni roboczych – jeżeli pracownik jest zatrudniony co najmniej 10 lat.
Przykład: Pracownik rozpoczyna swoją pierwszą pracę 1 marca 2016 roku i przysługuje mu 20 dni urlopu. 31 marca będzie mu przysługiwało prawo do 1/12 wymiaru urlopu, czyli 1/12*20 dni = 1,66 dnia. 30 kwietnia uzyska prawo do kolejnej 1/12, czyli pod koniec drugiego miesiąca pracy będzie miał prawo do 2/12*20 dni = 3,32 dnia. Po 3 miesiącach pracownik ma prawo do 4,98 dnia urlopu, czyli do 5 dni wolnych.
Jeżeli stosunek pracy został nawiązany w trakcie miesiąca, pracownik nabywa prawo do urlopu wypoczynkowego w następnym miesiącu kalendarzowym z upływem dnia poprzedzającego datą dzień nawiązania stosunku pracy.
Kluczowe jest ostatnie zdanie i oto przykład z mojego poletka:
pracownik zatrudniony na okres próbny od 2019-08-26 do 2019-10-20:

- Screenshot_20191211_125806.png (8.04 KIB) Obejrzany 24844 razy
Kadruś liczy mu 2019.08 - 2019.10 -> 7dni (staż pow. 10lat)

- Screenshot_20191211_134527.png (7.22 KIB) Obejrzany 24843 razy
niby OK ale nie na okresie próbnym:
pierwsze 1/12 urlopu (1/12*26=2,16 ~ 3dni urlopu) nabędzie po przepracowaniu 30 dni czyli dopiero 2019-09-26
drugie 1/12 urlopu (2/12*26=4,33 ~ 5 dni) nabyłby po przepracowaniu kolejnych 30 dni czyli 2019-10-26, ale skończył pracować już 2019-10-20 czyli nie zdążył nabyć tej cząstki urlopu.
W efekcie powinien otrzymać ekwiwalent za 3dni urlopu a nie za 7 dni jak mu wyliczył Kadruś.
Nie wiem czy jest sens dalej komplikować algorytmy
Moja propozycja jest taka, żeby naprawić w tabeli urlopów mechanizm ręcznych poprawek. W tej chwili jak ręcznie wprowadzę jakieś wartości to przy przeliczaniu wszystko jest kasowane, zaznaczona flaga "Czy zapis ręczny?" nie ma przy tym znaczenia.