ЗУП: Как посчитать число дней отпуска, положенных сотруднику на дату Х? #319661


#0 by Гений 1С
Отчет запускается по некоторую дату ДатаКонца. Пусть сотрудник принят на работу в дату ДатаПриема. Тогда мы разбивает период ДатаПриема - ДатаКонца на календарные месяцы. На отрезке ДатаПриема - ДатаКонца мы выбрасываем календарные дни, которые можно исключить (например по уходу за ребенком или отуск без сохранения заработной платы). Потом за каждый месяц считаем количество оставшихся календарных дней (именно календарных а не рабочих). Если таких дней остается больше 15, то считаем число месяцев за 1, иначе за 0. Далее суммируем все месяцы. Допустим получаем сумму ЧислоМесяцев. Тогда число положенных дней отпуска = ЦЕЛОЕ(ЧислоМесяцев/12)*28+ОСТАТОКДЕЛЕНИЯ(ЧислоМесяцев/12)*2.33 Пример: Число месяцев 13, получаем = ЦЕЛОЕ(13/12)*28+ОСТАТОКДЕЛЕНИЯ(13/12)*2.33 = 1*28+1*2.33=30.33 Так? Интересно с точки зрения закона.
#1 by RomaH
1 день - 28/365 = 0,76 дня отпуска за отработаный день или 28/(365-30,5) = 0,83 дня за календарынй работы
#2 by almar
Не забудь вычесть уже отгулянные дни :) И с отпуском без сохранения зп там достаточно хитро.
#3 by Гений 1С
Уф ты... Спросил у бухгалтера, мучал ее 2 часа, просек наконец то алгоритм... Считаем с даты приема сотрудника по дату конца отчета. Месяцы считаем с числа по число, т.е. если сотрудник принят 9-го, то с 9-го одного по 9-ое след.месяца. Если есть исключаемые дни, то месяц удлиняется на это число дней. Т.е. если 10 дней, то уже не по 9-е, а по 19-е. Ну а дальше просто. Если в месяце отработано больше 15 дней, то 1 месяц, если меньше то ноль месяцев. Если 12 месяцев, то 28 дней, если меньше, то число месяцев * 2.33. Вроде так?
#4 by Гений 1С
действительно хитро... офигеть
#5 by Гений 1С
Блин, все равно есть погрешность из-за разного числа дней в месяце. Кто-нибудь знает как правильно считать таки?
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С