Многие пользователи и разработчики сталкиваются с ситуацией, когда после проведения документа Кадровый перевод в середине месяца, плановое начисление сотрудника начинает рассчитываться в двойном размере. Давайте разберемся, почему это происходит и как устранить данную проблему, чтобы расчет зарплаты стал корректным.
Основная причина заключается в архитектуре расчета зарплаты в 1С:ЗУП 3.1. Система жестко привязана к регистрам сведений, в которых хранятся данные о плановых начислениях. Когда вы проводите Кадровый перевод, программа автоматически закрывает старую запись о плановом начислении на дату перевода и создает новую запись с этой же даты. В итоге, месяц разбивается на два интервала.
Если в вашей формуле начисления используется показатель, зависящий от времени, например: РазмерНадбавки * ?(ВремяВЧасах > 0, 1, 0), то при расчете зарплаты система «видит» два периода. Для каждого из этих периодов условие ВремяВЧасах > 0 выполняется, и начисление применяется дважды. Это приводит к суммированию результата по каждому отрезку времени внутри месяца.
Рассмотрим несколько подходов, которые помогут исправить ситуацию и избежать «задвоения» выплат.
Прежде чем менять формулы, необходимо убедиться, что проблема действительно в кадровом событии. Выполним следующие действия:
Плановые начисления сотрудников.Кадровый перевод на закладке Оплата труда начисление не дублируется, а при необходимости прекращается старое и назначается новое.Если вы хотите избежать зависимости от отработанного времени внутри периодов, лучше всего отойти от использования ВремяВЧасах в формуле. Вместо этого рекомендуется настроить механизм приоритетов.
Механизм приоритетов позволяет программе автоматически вытеснять начисления при возникновении определенных событий (например, отсутствие или изменение условий труда), не привязываясь к расчетам часов вручную. Это исключает необходимость проверки ?(ВремяВЧасах > 0, 1, 0).
Если специфика начисления такова, что оно не может быть корректно обработано механизмом «плановых» начислений при частых переводах, проанализируем вариант вывода этого начисления из состава плановых:
Кадровый перевод или Изменение плановых начислений).Разовое начисление.Разовое начисление выберите нужное начисление и укажите фиксированную сумму.Это позволит полностью исключить влияние алгоритма автоматического деления месяца на расчет данной надбавки, так как документ Разовое начисление не учитывает периоды действия плановых записей, а рассчитывается как итоговая сумма за месяц.
Проанализировав ситуацию, можно сделать вывод, что «двоение» — это следствие автоматического пересчета начислений при делении расчетного периода. Самым надежным способом является либо отказ от использования показателя ВремяВЧасах в пользу стандартных механизмов Вытеснения, либо использование Разового начисления для сложных выплат. Мы рекомендуем первым делом проверить записи в регистре Плановые начисления сотрудников, чтобы убедиться в отсутствии дублей, созданных вручную или вследствие ошибки при проведении кадрового перевода.