gifts2017

Расчет компенсации за задержку заработной платы

Опубликовал Айрат (Craig) в раздел Обработки - Обработка документов

Обработка рассчитывает размер компенсации за задержку заработной платы по дням согласно действующему законодательству, с учетом даты выплаты отпускных.

В обработке производится расчет компенсации за задержку заработной платы по одному сотруднику. Дни выплаты берутся из настроек программы, учитывают регламентированный  календарь и сравниваются с фактическими днями выплаты. Если день выплаты заработной платы приходится на выходной день, то автоматически день выплаты сдвигается на последний рабочий день.

За каждый просроченный день система рассчитывает 1/300 ставки рефинансирования. Учитываются дни выплаты, как заработной платы, так и аванса.

Если сотрудник отработал менее 15 дней, то аванс не должен быть выплачен, соответственно и компенсация тоже не рассчитывается.  

К сожалению, типовой механизм расчета компенсации слишком примитивен, и может быть рассчитан только по одному документу. Типовой механизм удобен, если задержка зарплаты была разовой, а не систематической. Но если в компании систематически происходит задержка, то тут нужен совершенно другой подход.  

В настройках системы должны быть обязательно указаны дни выплаты зарплаты, а также актуальная ставка рефинансирования. 


Тестировалась на 1С:ЗУП 2.5 и 1С:УПП 1.3, подойдёт и для комплексной.  

Скачать файлы

Наименование Файл Версия Размер
Расчет компенсации за несвоевременную выплату зарплаты 7
.epf 17,01Kb
25.04.16
7
.epf 5.01 17,01Kb Скачать

См. также

Подписаться Добавить вознаграждение

Комментарии

1. Stanislav Orlov (stvorl) 11.11.16 01:33
Спасибо, отличная обработка. Снимаю шляпу: столько нюансов, и в общем-то вы их учли.

Вы только ставку рефинансирования на 100% поделите, а то бухгалтеры как сумму увидели - бросились было заказывать валокордин ящиками.
Кроме того, в этом году ставка менялась аж три раза, поэтому лучше ее выбирать динамически в цикле подсчета:

	Для каждого СтрокаДня из ТаблицаРезультата Цикл
///...
		
		СтавкаРефинансирования = СтавкаРефинансированияНаДату(СтрокаДня.ДатаКалендаря); 
		
		СтрокаДня.СуммаЗадолженности =  ОбщийДолг;
		ОбщийДолг = ОбщийДолг+ СтрокаДня.СуммаАванса + СтрокаДня.СуммаОтпускных +  (СтрокаДня.СуммаРасчета - СуммаАвансаВЭтомМесяце) - СтрокаДня.СуммаВыплаты ; //За первый день не выплачиваем долг
		СтрокаДня.СуммаКомпенсации = ? (Окр(СтрокаДня.СуммаЗадолженности * СтавкаРефинансирования/300,2)>0,Окр(СтрокаДня.СуммаЗадолженности * СтавкаРефинансирования/300,2),0);

//...
	КонецЦикла;

Функция СтавкаРефинансированияНаДату(ВхДата)
	//Это костыль, мне стыдно, зато быстро. Вообще надо в запросе соединить.
	Возврат РегистрыСведений.СтавкаРефинансированияЦБ.ПолучитьПоследнее(ВхДата).Размер / 100;
КонецФункции
...Показать Скрыть


А если уж совсем вдаваться в детали, то с 03 октября 2016 года компенсация платится в доле не 1/300 а 1/150 ставки.
2. Айрат (Craig) 13.11.16 17:49
(1) stvorl, Спасибо! Приятно что оценили!

Обработка писалась в конце 2015 года, а опубликована была в апреле. На тот период я не владел информацией о грядущих изменениях.
Для написания сообщения необходимо авторизоваться
Прикрепить файл
Дополнительные параметры ответа