gumek napisał(a):Dni kalendarzowe DM_W=Dkal()
Dni absencji w delegacji N_DABS= (DM_W-Dnikal(,,.T.))+(DniAbs('?234ABCEFGHIJKLMNOPQRSTUWXYZ',,.T.))
Dni diety to różnica między tymi składnikami.
Można zrobić automat do przeliczania wg kursu itd. Kompletną listę dla diet zagranicznych.
Powodzenia.
Mam to właśnie tak zrobione i formuła:
N_DABS= (DM_W-Dnikal(,,.T.))+(DniAbs('?234ABCEFGHIJKLMNOPQRSTUWXYZ',,.T.))
dla podanego przeze mnie przykładu daje wynik 10 dni
Czyli wg tej formuły pracownik w lipcu, przebywając na urlopie od 8.07.2019 do 19.07.2019 ma 10 dni absencji w Lipcu.
W dniach roboczych TAK, ale w dniach kalendarzowych to nie prawda bo ma 12 dni absencji.
W efekcie pracownik w lipcu od wynagrodzenia ma odejmowaną zawyżoną ilość diet:
31dni lipca - 10 dni absencji = 21 dni * 49 EUR = 1029 EUR diety
a powinien mieć:
31 dni lipca - 12 dni absencji = 19 dni * 49 EUR = 931 EUR diety
Powyższą formułę próbowałem zmodyfikować tak:
N_DABS= (DM_W-Dnikal(,,.T.))+(DniAbs('?234ABCEFGHIJKLMNOPQRSTUWXYZ',,.T.))+DniAbsW('W',.T.)
ale nic z tego bo DniAbsW w tym przypadku zwraca 0 zamiast 2