Почему в 1С:ЗУП 3.1 происходит двойное удержание взысканий в ведомости и как это исправить

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

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

Анализ ситуации: механизм возникновения ошибки

Рассмотрим типичный сценарий. В настройках программы (раздел Настройка – Расчет зарплаты) установлен флаг Ограничивать сумму удержаний процентом от заработной платы. У сотрудника есть исполнительный лист (например, 25%). В течение месяца выполняются следующие действия:

  1. Начисляется и выплачивается отпуск (межрасчет). Программа корректно рассчитывает взыскание и отражает его в ведомости.
  2. Выплачивается аванс, где также фиксируется сумма взыскания.
  3. Бухгалтер обнаруживает необходимость изменить сумму отпуска. Нажимается кнопка "Исправить" в исходном документе отпуска в том же расчетном периоде.
  4. Проводится итоговое начисление зарплаты.

В этот момент мы обнаруживаем, что в финальной ведомости сумма в колонке "Взыскано" подбирается без учета того, что часть суммы уже была удержана при выплате отпуска. Проанализируем причину: это происходит из-за того, что при включенном ограничении взысканий алгоритм 1С переходит на сложную модель учета очередей и лимитов. В этой модели цепочка «начисление — выплата — исчисление удержания» разрывается, если база для расчета «плавает» внутри одного месяца из-за сторнирующих записей документа исправления.

Почему настройка ограничения взысканий меняет поведение программы?

Выясним причину зависимости от флажка ограничения. Когда флаг Ограничивать сумму удержаний... снят, программа использует упрощенный метод: она просто вычитает сумму всех удержаний из всех начислений. Но как только флаг установлен, в расчет вступает регистр накопления Удержания по исполнительным документам и механизм очередности. Программа пытается сопоставить каждое начисление с конкретной выплатой.

Если мы используем документ "Исправление", создаются записи сторно. Механизм ограничения в текущих релизах (включая 3.1.30.81) имеет зарегистрированную ошибку №000159298. Суть ее в том, что программа не анализирует движения по выплаченным ведомостям при пересчете базы внутри месяца, если была создана корректирующая цепочка документов.

Решение 1: Отказ от использования кнопки "Исправить" внутри месяца

Проанализируем самый эффективный способ избежать дублирования сумм. Методологически в 1С:ЗУП принято правило: если расчетный период еще не закрыт (зарплата не выплачена окончательно и отчетность не сдана), использовать механизм исправления (кнопку внизу документа) не рекомендуется.

Пошаговый алгоритм действий:

  1. Отмените проведение документа "Исправление отпуска".
  2. Удалите этот документ.
  3. Зайдите в исходный документ отпуска и внесите изменения напрямую в него.
  4. Пересчитайте документ и проведите его.
  5. В документе "Начисление зарплаты и взносов" обновите расчетную базу (кнопка "Пересчитать сотрудника").

При таком подходе не создается лишних записей в регистре Взаиморасчеты по сотрудникам и Удержания по исполнительным документам, и программа корректно «видит» остаток долга по взысканию.

Решение 2: Использование документа "Ограничение взысканий"

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

Рассмотрим последовательность:

  1. Проведите все межрасчетные документы и ведомости к ним.
  2. Проведите документ "Начисление зарплаты и взносов".
  3. Создайте документ "Ограничение взысканий" (раздел Зарплата). Нажмите кнопку "Заполнить".
  4. Даже если суммы не уменьшаются, документ может «схлопнуть» излишне начисленные удержания, возникшие из-за корректировок.
  5. Только после этого формируйте итоговую ведомость.

Решение 3: Ручная корректировка колонки "Взыскано" в ведомости

Разберем ситуацию, когда расчет уже выполнен и времени на перепроведение документов нет. Важно понимать техническую суть колонки "Взыскано" в ведомости. Эта колонка не влияет на бухгалтерское сальдо сотрудника (на него влияют суммы в колонке "Удержания"). Значение "Взыскано" нужно исключительно для передачи в банк в соответствии с 229-ФЗ, чтобы банк понимал, какую сумму уже удержал работодатель.

Если вы видите, что сумма в ведомости «двоится»:

  1. Откройте ведомость на выплату.
  2. Нажмите на ссылку в колонке "Взыскано".
  3. В открывшемся окне вручную скорректируйте сумму, вычтя из нее то, что уже было удержано в межрасчетных выплатах.
  4. Проведите ведомость.

Это гарантирует, что сотрудник получит верную сумму на руки, а банк не спишет лишнее с его счета при зачислении зарплаты.

Техническая справка: как программа хранит эти данные

Для программистов и продвинутых пользователей будет полезно знать, как выглядят движения в регистрах. Удержания для ведомостей хранятся в регистре накопления Удержания по исполнительным документам. Посмотрим на логику его заполнения при исправлении документа внутри месяца:


// Примерная схема логической ошибки алгоритма:
База_Итого = Сумма_Отпуска_Новая + Прочая_Зарплата;
Удержание_Всего = База_Итого * 0.25;

// ОШИБКА: Программа берет Удержание_Всего и вычитает только Удержано_В_Авансе,
// забывая проанализировать Удержано_В_Межрасчете, если связь с исходным 
// документом была разорвана через "Сторно".
К_Удержанию_В_Ведомости = Удержание_Всего - Удержано_В_Авансе; 

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

← На главную