Как исправить обнуление окладов после изменения кадрового перевода в 1С:ЗУП 3.1?

Бухгалтер 1С v8.3 (Управляемые формы) 1С:Зарплата и Управление Персоналом Бухгалтерский учет
← На главную

В практической работе с программой «1С:Зарплата и управление персоналом 8» (редакция 3.1) бухгалтеры и кадровики нередко сталкиваются с неприятной ситуацией: после внесения точечных изменений в ранее проведенные кадровые документы «задним числом» программа начинает вести себя непредсказуемо. Типичный пример — когда массовый кадровый перевод от начала апреля редактируют в конце мая ради одного сотрудника (например, переводят его с внешнего совместительства на основное место работы), после чего у всех остальных сотрудников, включенных в этот документ, оклады в начислении зарплаты внезапно сбрасываются в 0.

Даже ручная очистка зарегистрированных перерасчетов не помогает вернуть плановые начисления. В этой статье мы подробно разберем, почему возникает данная проблема, как устроена работа регистров в 1С:ЗУП 3.1 и как пошагово восстановить корректный расчет заработной платы.

Почему оклады обнуляются при редактировании старых документов?

Для того чтобы понять логику программы, рассмотрим внутренний механизм работы документов. Документ КадровыйПеревод (или его списочный аналог КадровыйПереводСписком) — это сложный инструмент, который одновременно производит записи в несколько ключевых регистров программы:

Когда мы повторно открываем и перепроводим апрельский документ в конце мая, программа автоматически считает, что все плановые начисления и показатели сотрудников, указанных в этом документе, были изменены или актуализированы на дату проведения. Если при редактировании документа (даже ради одного сотрудника) система заново инициализировала табличные части, плановые начисления для остальных сотрудников могли перезаписаться некорректно. Происходит разрыв связи в регистре ПлановыеНачисления: старые начисления закрываются датой изменения, а новые не регистрируются, из-за чего оклады становятся равными нулю.

Дополнительно в релизах ветки 3.1.13 (в частности, 3.1.13.188) и ранних версиях 3.1.14 присутствовала зарегистрированная программная ошибка. При перепроведении кадровых переводов у некоторых сотрудников ошибочно сбрасывалось количество занимаемых ставок в регистре кадровой истории. Так как итоговая формула начисления выглядит как Оклад * ВремяВЧасах / НормаВЧасах * ДоляСтавки, при нулевом количестве ставок результат расчета закономерно приравнивался к нулю.

Очистка таблицы через обработку Перерасчеты в данном случае не помогает, так как эта обработка работает лишь как «сигнальная лента» для документа НачислениеЗарплатыИВзносов. Если в самих регистрах сведений плановые начисления уже затерты или закрыты, программа честно рассчитывает нулевой результат на основе пустых показателей.

Решение 1: Правильное использование документа «Перемещение в другое подразделение»

Проанализируем альтернативный и более безопасный подход. Если перед нами стоит задача массово перевести сотрудников из одного подразделения в другое (например, при переезде в новый филиал) без изменения условий оплаты труда, графиков работы и состава начислений, то использовать тяжелый документ КадровыйПеревод не рекомендуется.

Для этих целей в системе 1С:ЗУП 3.1 предусмотрен специализированный документ «Перемещение в другое подразделение». Давайте выясним, почему этот способ решает проблему:

  1. Документ предназначен исключительно для изменения кадровой аналитики (подразделение, организация/филиал).
  2. Он не затрагивает регистры плановых начислений и показатели расчета зарплаты.
  3. При его перепроведении или корректировках риск зануления окладов или ставок сотрудников сведен к минимуму.

Если массовый перевод уже зафиксирован обычным кадровым переводом и база повреждена, для исправления ситуации на будущее рекомендуется заменить этот массовый документ на цепочку «Перемещение в другое подразделение» для общего списка сотрудников, а для проблемного сотрудника, у которого изменился статус (с совместительства на основное место), сделать отдельный точечный документ КадровыйПеревод.

Решение 2: Пошаговый алгоритм восстановления расчетов на копии базы

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

Рассмотрим пошагово надежный алгоритм действий:

Шаг 1. Создание резервной копии. Перед началом любых технических манипуляций обязательно сделайте архивную копию информационной базы (файл 1Cv8.1CD или выгрузку информационной базы dt).

Шаг 2. Разделение кадровых документов. Откройте тот самый проблемный массовый кадровый перевод от 1 апреля. Исключите из него сотрудника, чьи данные (совместительство/основное место) вы правили 29 мая. Верните документ для остальных сотрудников в исходное, первоначальное состояние и проведите его.

Для измененного сотрудника создайте индивидуальный, отдельный документ КадровыйПеревод от нужной даты мая или апреля. Это разорвет ложную связь между сотрудниками в регистрах плановых начислений.

Шаг 3. Отмена проведения начислений (разпроведение). Перейдите в журнал документов начисления зарплаты и последовательно снимите с проведения все документы НачислениеЗарплатыИВзносов, начиная с самого первого проблемного месяца (в нашем примере — с апреля, затем май).

Шаг 4. Очистка очереди перерасчетов. Чтобы программа не пыталась тащить за собой ошибочные хвосты корректировок, перейдите в меню Зарплата — Сервис — Перерасчеты (или через меню «Функции для технического специалиста» — обработки — Перерасчеты). Выделите все записи, зарегистрированные в связи с изменениями этого кадрового перевода, и нажмите кнопку «Отменить» (или удалите их). Наша цель — полностью очистить очередь принудительных перерасчетов за апрель и май.

Шаг 5. Последовательный расчет. Теперь запустите процесс расчета зарплаты строго в хронологическом порядке:

  1. Откройте ранее разпроведенный документ НачислениеЗарплатыИВзносов за апрель.
  2. Выполните команду «Заполнить» (или «Пересчитать сотрудника» для тех, у кого оклады были равны нулю). Проверьте: показатели окладов должны заполниться корректно, так как кадровые регистры теперь находятся в актуальном и чистом состоянии.
  3. Проведите документ за апрель.
  4. Перейдите к документу за май, выполните аналогичное заполнение/перерасчет и проведите его.

Важные нюансы при проверке показателей

Если после выполнения всех шагов оклад у некоторых сотрудников все равно остается нулевым, проанализируем настройки кадрового учета. Зайдите в меню Настройка — Кадровый учет и проверьте флаг «Используется работа по неполной ставке». Если в вашей версии программы отработал баг со сбросом ставок, откройте кадровые документы сотрудников и убедитесь, что в поле «Колич. ставок» явно указано значение «1» (или иное дробное значение), а не пустое поле. При необходимости перевыберите ставку и перепроведите кадровый документ.

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

← На главную