В современных релизах конфигурации 1С:Зарплата и управление персоналом (начиная с версии 3.1.10 и выше) пользователи часто сталкиваются с неприятной ситуацией. При попытке заполнить документ Разовое начисление сотрудники, у которых в текущем периоде зарегистрированы отсутствия (отпуск, больничный, отсутствие по невыясненным причинам), автоматически удаляются из табличной части сразу после выбора. Это происходит даже в тех случаях, когда начисление производится фиксированной суммой и не должно зависеть от отработанного времени.
Разберем детально, почему программа ведет себя подобным образом и как правильно настроить систему, чтобы избежать принудительного исключения сотрудников.
Проанализируем работу системы расчетов. В 1С:ЗУП реализован жесткий механизм контроля периодов. Если для конкретного вида начисления настроено вытеснение другими видами расчетов, программа считает, что в период отсутствия сотрудник не может получать данную доплату. Как только даты в документе Разовое начисление пересекаются с датами документа Отпуск или Больничный лист, срабатывает алгоритм исключения.
Для решения этой проблемы выполним следующие шаги:
Отпуск основной, Больничный или иные отсутствия, их необходимо удалить из этого списка.Когда мы удаляем отпуск из списка вытесняющих видов расчета, мы «сообщаем» программе, что данное начисление может быть назначено сотруднику поверх его отсутствия. Это критически важно для стимулирующих выплат, премий или доплат по эффективным контрактам, которые выплачиваются независимо от фактического присутствия человека на рабочем месте.
Выясним, как настройки учета времени влияют на поведение документа. Даже если начисление задано фиксированной суммой, у него все равно есть параметры учета времени. Рассмотрим вкладку Учет времени в настройках начисления.
Если в поле Вид времени выбрано значение Явка или иное рабочее время, программа сопоставляет этот параметр с графиком сотрудника и его фактическим состоянием. В период отпуска у сотрудника нет Явки, поэтому система аннулирует строку. Чтобы избежать этого, попробуем изменить настройки:
Рассмотрим ситуацию, описанную пользователями: начисления часто выплачиваются месяцем позже. Например, в августе мы платим за июль. В 1С:ЗУП 3.1 есть разница между Месяцем начисления (когда сумма попадет в расчетный листок и будет выплачена) и Периодом (за который производится расчет).
Посмотрим на пример: если сотрудник был в отпуске с 1 по 25 августа, а мы пытаемся ввести разовое начисление за весь август, программа выкинет сотрудника. Если же мы укажем период в табличной части с 26 по 31 августа, строка останется. Однако, если политика предприятия требует начислить сумму целиком, необходимо:
Проанализируем технический нюанс работы интерфейса. В версиях 3.1.10.111 и близких к ней был замечен баг формы подбора. При использовании кнопки Подбор система применяет скрытые фильтры по «работающим» сотрудникам. Если на дату документа сотрудник находится в состоянии «Отпуск», он может не проходить фильтрацию или сбрасываться после добавления.
Рекомендуем следующий алгоритм действий для проверки:
Подбор, а через кнопку Добавить, выбирая его напрямую из справочника.Enter — проблема на 100% заключается в настройках вытеснения (приоритетов).Разберем по шагам, как привести настройки в порядок, чтобы документы проводились без «магии» с удалением строк:
Настройка -> Начисления.Разовое начисление.Основное: в поле Начисление выполняется должно стоять По отдельному документу.Расчет базы (если начисление процентное) убеждаемся, что в базу не попадают те начисления, которые могут конфликтовать по времени.Приоритет. Это ключевой момент. В левом окне (те, кто вытесняет наше начисление) удаляем:
После этого вернемся в документ Разовое начисление. Теперь, даже если период начисления полностью перекрывается отпуском, система позволит строке остаться в документе и произвести расчет. Это корректно с точки зрения методологии 1С, так как вы явно указали, что данная выплата не зависит от факта присутствия (явки) сотрудника.
Проблема «выкидывания» сотрудников — это не всегда ошибка программы, а чаще результат работы нового механизма контроля пересечений. Система пытается предотвратить двойную оплату одного и того же времени. Но для разовых премий и стимулирующих выплат этот контроль лишний. Удаление видов расчета из списка приоритетов — самый чистый и надежный способ решения данной задачи без использования «костылей» вроде временного распроведения отпусков.
Важный совет: Перед массовым изменением приоритетов убедитесь, что это начисление действительно не должно уменьшаться при наличии прогулов или больничных. Если оно должно рассчитываться пропорционально отработанному времени, то удалять вытеснения нельзя — в этом случае нужно корректировать даты в самом документе (вводить начисление только за рабочие дни).