У ряда сотрудников период “страхового стажа с учетом не страховых периодов” может превышать обычный страховой стаж.
При расчете больничного у таких сотрудников заполняется колонка “в том числе за счет федерального бюджета“. В общем случаи данная колонка рассчитывается по формуле сумма положенная по “стажу с учетом не страховых периодов” минус сумма положенная по обычному страховому стажу.
Например посчитаем по такому больничному:
Рассчитаем по формуле: [Средне дневной заработок]*[Районный коэф.]*[Дней]*[% по стажу с УНП] – [Средне дневной заработок]*[Районный коэф.]*[Дней]*[% по обыч. стажу]
1679,63 * 1 * 3дн * 0,8 – 1679,63 * 1 * 3дн * 0,6 = 4031,1 – 3023,34 = 1007,76. Расчет верный.
Но попался Больничный лист по которому данный расчет не бился:
Если посчитать по формуле выше, то получиться такой результат:
665,08 * 1 * 3 * 1,0 – 665,08 * 1 * 3 * 0,8 = 1995,24 – 1596,19 = 399,04.
Но программа посчитала 133,11.
В интернете никаких объяснений кроме этой формулы найти не удалось, поэтому пришлось искать ответ в коде, который удалось найти в процедуре РассчитатьПособиеПоНетрудоспособности общего модуля УчетПособийСоциальногоСтрахования, в котором рассчитывается переменная ОграничениеПособияСнизу = ОграничениеПособияСнизуМРОТ(…).
Из этой строчки можно понять, что есть еще некая величина связанная с МРОТ которая влияет на наш расчет, а именно программа берет [МРОТ за месяц] / [Календарные дни] * [Дней].
ОграничениеПособияСнизу = (19242 / 31) * 3 = 1862,13.
И если эта сумма больше, чем та что получилось во второй части формулы то используется она, т.е. наш расчет измениться таким образом:
1995,24 – 1596,19 1862,13 = 133,11. Совпадает с суммой в документе.