На предприятии работают как сдельщики (сделка загружается из 1С:ERP с разбивкой по дням), у которых внесена тарифная ставка для расчета ночных, так и окладники.
Потребовалось настроить оплату за выходные и праздники сдельщиков в двойном размере от их сдельной выработки. В интернет более-менее работоспособного способа настроить доплату так, чтобы всем было хорошо - и тем, кто на сделке, и тем, кто на окладе, при этом без доработки конфигурации не нашел, поэтому решил попробовать изобрести сам.
Итак, логика:
Для начала определяем, что кому платить:
- В случае двойной оплаты по приказу (вне графика) половина суммы сдельщикам за работу в праздники и выходные уже оплачивается при расчете зарплаты от сдельной выработки, значит, им необходимо доначислить вторую половину суммы, за праздничный день, при этом в табеле им за эти дни проставляется вид времени РВ.
- Если сдельщик работает в праздничный день по графику, то ему также должна начисляться двойная оплата, половину сдельщик получает с зарплатой, а вторую необходимо доначислить, при этом в табеле у него проставляется рабочее время (Явка - Я или Ночные - Н);
- Если сдельщик согласился отработать в выходной за
хлеб и водуодинарную оплату и отгул, то ничего ему доплачивать не нужно - он все получит с зарплатой; - В случае двойной оплаты по приказу (вне графика), работающие по окладу должны получить сумму в двойном размере за дни/часы отработанные ими в праздники и выходные, в табеле ставится РВ;
- Если окладник работал в праздник по графику, то ему необходимо доплатить сумму равную окладной части за отработанный день;
- При одинарной оплате и отгуле окладнику нужно начислить сумму в одинарном размере;
Исходя из вышесказанного в базе должны быть введены следующие начисления:
- Доплата за работу в праздничные и выходные дни (сдельно)
- Доплата за работу в праздничные дни по графику (сдельно)
- Оплата работы в праздничные и выходные дни
- Оплата работы в праздничные и выходные дни без повышенной оплаты
Формула у первых двух видов начислений одинаковая - ?(СдельныйЗаработок=0,0,СдельныйЗаработок), отличаются они друг от друга настройками вида времени:
Для того, чтобы эти начисления не тянулись в расчетный листок окладникам (хоть и с нулевыми суммами), добавляем оклад в вытесняющие виды расчета:
Формулу для оставшихся видов начислений изменяем на
?(СдельныйЗаработок=0,ВремяВДняхЧасах * СтоимостьДняЧаса * 2,0)
и
?(СдельныйЗаработок=0, ВремяВДняхЧасах * СтоимостьДняЧаса,0)
соответственно, а в список вытесняющих видов расчета добавляем Сдельный заработок.
Рассчитываем зарплату и радуемся видим, что праздничные у сдельщиков рассчитываются неправильно - в начисление падает вся сумма сделки за месяц, хотя в настройках начислений стоит "по соответствию даты регистрации интервалу начисления". Тупик, но тут начинается
Магия:
Если добавить в список начислений, приоритет которых ниже любое (даже какое-нибудь не используемое) начисление, то суммы доплат начинают рассчитываться корректно, с разбивкой по дням.
Если кто-то пояснит логику этого, то изменю название статьи и уберу из нее слово "Магия".
На самом деле я это все настроил несколько лет назад и забыл - проблем не было, но однажды кто-то из расчетчиков удалил вытесняемое начисление, и расчет поехал, пришлось заново разбираться (вспомнить, что я делал несколько лет назад, не вариант). Статью начинал писать давно, до публикации довести все времени не хватало, сейчас релиз 1С:ЗУП 3.1.23.458, проверил, может быть в 1С исправили расчет, но нет - при удалении вытесняемого начисления в расчет тянется весь сдельный заработок, а не только тот, что был оформлен в праздничные дни, значит, имеет смысл статью опубликовать.