В процессе ведения учета в программе 1С:Зарплата и управление персоналом 8 (редакция 3.1) бухгалтеры нередко сталкиваются с ситуацией, когда после фактического увольнения сотрудника и проведения окончательного расчета выясняется, что в периоде работы были допущены ошибки или пропущены важные начисления. Стандартным механизмом исправления таких ситуаций является создание документа-исправления для первичного «Увольнения». Однако на некоторых релизах (особенно ветки 3.1.5 и смежных) при попытке провести такое исправление возникает критическая ошибка: «Запись с такими ключевыми полями существует! ЗначениеРазовыхПоказателейРасчетаЗарплатыСотрудников...». Особенно часто это проявляется, если для сотрудника ведется суммированный учет рабочего времени.
В данной статье мы подробно разберем причины возникновения этой проблемы, проанализируем техническую сторону вопроса и рассмотрим несколько эффективных способов обхода ошибки, чтобы вы могли корректно доначислить компенсацию при увольнении и пересчитать налоги.
Проанализируем ситуацию: программа сообщает о дублировании записи в регистре сведений ЗначениеРазовыхПоказателейРасчетаЗарплатыСотрудников. Этот регистр предназначен для хранения значений показателей, которые используются при расчете зарплаты, но не имеют постоянного характера (например, часы переработок, сдельная выработка и т.д.).
Когда мы работаем с документом Увольнение для сотрудника на суммированном учете, система автоматически рассчитывает часы переработок за весь учетный период. Эти данные фиксируются в указанном регистре. При создании документа-исправления программа должна «затоваривать» (стонировать) движения старого документа и записывать новые. Однако из-за зарегистрированной программной ошибки (№10196417) механизм замещения записей в этом конкретном регистре дает сбой. Система пытается записать данные о переработках (показатель ПереработаноПоСуммированномуУчету) повторно, используя те же ключевые поля (сотрудник, период, документ-основание), что и приводит к конфликту уникальности.
Прежде всего, рассмотрим наиболее правильный путь решения — обновление программного продукта. Поскольку данная проблема является официально признанным багом, разработчики выпустили исправления в последующих версиях. Рассмотрим, какие релизы содержат исправление:
Если обновление по каким-то причинам невозможно в данный момент (например, база сильно кастомизирована или период отчетности не позволяет проводить технические работы), перейдем к альтернативным методам.
Разберем методику, предложенную опытными пользователями, которая позволяет «обмануть» логику программы без вмешательства в код. Суть заключается в изменении последовательности ввода документов, чтобы избежать конфликта в регистре показателей.
Выполним следующие шаги:
Разовое начисление, который был введен в марте за февраль. Это необходимо, так как наличие этого документа может влиять на расчеты внутри «Увольнения».Увольнение и нажмем в левом нижнем углу ссылку Исправить. Будет создан новый документ в текущем периоде (марте).Разовое начисление.Иногда ошибка возникает из-за того, что старые записи в регистре ЗначениеРазовыхПоказателейРасчетаЗарплатыСотрудников блокируют запись новых, даже если они должны их замещать. Попробуем следующую последовательность действий:
Увольнение за февраль. Важно: помните, что это может временно «развалить» расчеты в феврале, поэтому действуйте аккуратно и только в копии базы для начала.Поскольку корень проблемы кроется в показателе Переработано по суммированному учету, мы можем попробовать исключить расчет переработок непосредственно из документа Увольнение.
Рассмотрим, как это сделать:
Переработки при суммированном учете.Регистрация переработок (раздел Зарплата) перед созданием исправления.Увольнение (исправлении) на вкладке Оплата труда проверим, чтобы расчет переработок не дублировался. Если данные о переработках будут зафиксированы отдельным документом, Увольнение может перестать пытаться записать данные в проблемный регистр, что позволит провести его без ошибок.Если исправить само Увольнение категорически не удается, проанализируем возможность использования специализированного инструмента для прошлых периодов.
В разделе Зарплата имеется документ Доначисление, перерасчет. Разберем по шагам работу с ним:
Доначисление, перерасчет мартом.Разового начисления за прошлый период является таким изменением), сотрудник должен появиться в списке.Увольнение, так как он работает с разницами основных начислений. Для корректного доначисления именно компенсации вам может потребоваться вручную рассчитать разницу в среднем заработке и добавить ее отдельной строкой или воспользоваться ручной корректировкой среднего.Важно понимать, почему бухгалтер в Сообщении 4 настаивал именно на исправлении документа. В системе 1С:ЗУП 3.1 при расчете среднего заработка для компенсации при увольнении (которое произошло 28.02) в расчетную базу входят данные за 12 предшествующих месяцев. Если увольнение происходит в последний день месяца, то этот месяц (февраль) также включается в расчет.
Если мы просто введем Разовое начисление мартом, оно по умолчанию попадет в доходы марта. Чтобы оно «увиделось» в расчете среднего для февральской компенсации, документ Увольнение должен быть либо перепроведен (что невозможно, если период закрыт), либо исправлен мартовским документом-исправлением. Только механизм исправления позволяет системе понять, что доход, зарегистрированный в марте, относится к февралю и должен повлиять на расчет среднего заработка февральского события.
Мы рассмотрели техническую ошибку, связанную с дублированием записей в регистре ЗначениеРазовыхПоказателейРасчетаЗарплатыСотрудников. Подведем итоги наших действий:
Следуя этим инструкциям, вы сможете обойти программное ограничение и обеспечить корректность ведения учета и расчета налогов при увольнении сотрудников.