В процессе ведения зарплатного и налогового учета в программе «1С:Зарплата и управление персоналом» (редакция 3.1) бухгалтеры нередко сталкиваются со странным поведением отчетов. Типичная ситуация: рассчитывается и выплачивается межрасчетная премия, затем начисляется основная заработная плата. При формировании расчетного листка общая сумма удержаний совпадает с реальной, но в детальной расшифровке налога отображается только НДФЛ, рассчитанный с оклада. При этом НДФЛ с премии визуально «пропадает» из детализации листка, хотя в специализированных отчетах по НДФЛ («Анализ НДФЛ по месяцам», «Справка 2-НДФЛ») все цифры сходятся идеально.
В этой статье мы подробно разберем технические причины этого сбоя, выясним, почему регистры программы могут конфликтовать между собой, и рассмотрим пошаговые сценарии исправления ситуации как методами перепроведения документов, так и путем тестирования информационной базы.
Для того чтобы понять природу этой ошибки, нам необходимо заглянуть во внутреннюю архитектуру программы 1С:ЗУП. В отличие от простых учетных систем, в 1С данные для разных отчетов берутся из совершенно разных таблиц базы данных — регистров накопления. Проанализируем ключевое различие:
Расчеты налогоплательщиков с бюджетом по НДФЛ. Записи в него попадают напрямую из документов Премия, Начисление зарплаты и взносов и ведомостей на выплату. Если эти документы проведены, налоговые отчеты сразу же покажут корректные суммы.Взаиморасчеты с сотрудниками и Начисления удержания по сотрудникам.В релизах ветки 1С:ЗУП 3.1.13 (в частности, в релизах 3.1.13.188 и соседних версиях) существовала официально зарегистрированная программная ошибка разработчиков. Если премия регистрировалась отдельным документом в межрасчетный период и выплачивалась до окончательного расчета зарплаты за месяц, алгоритм формирования расчетного листка некорректно сопоставлял удержания из регистров взаиморасчетов. В итоге общая сумма удержанного налога сходилась, но в расшифровке расчетного листка налог «привязывался» исключительно к документу начисления оклада, а строка НДФЛ с премии просто отсутствовала.
Существенное влияние на распределение НДФЛ в программе оказывают настройки самого начисления премии. Рассмотрим две важные детали, которые могут искажать данные в расчетном листке:
1. Флаг «Соответствует оплате труда» в настройках кода дохода.
Для премий используется код дохода 2002. В настройках этого кода (раздел «Налоги и взносы» — «Виды доходов НДФЛ») может быть установлен или снят флаг «Соответствует оплате труда».
Если этот флаг активен, то датой фактического получения дохода в целях НДФЛ считается последний день месяца начисления (например, 30.04.2020), независимо от даты реальной выплаты денег. Если флаг снят (категория дохода определена как «Прочие доходы»), то датой получения дохода считается исключительно дата фактической выплаты по ведомости. Несовпадение этих трактовок часто сбивает с толку алгоритмы расчетного листка.
2. Планируемая дата выплаты в документе «Премия».
В нижней части документа Премия всегда указывается планируемая дата выплаты. Если там по ошибке указана дата следующего месяца (например, май при расчете за апрель), а в программе в настройках расчета зарплаты (раздел Настройка — Дополнительные настройки) активирован режим «Выводить взаиморасчеты по данным бухучета», то программа перенесет НДФЛ с этой премии в майский расчетный листок, а в апреле покажет «пустоту».
Рассмотрим по шагам три метода исправления этой ошибки: от простого восстановления последовательности до технической очистки базы данных.
Самый частый способ решить проблему «разъехавшихся» регистров без вмешательства в конфигуратор — это полное перепроведение цепочки документов с соблюдением строгого временного порядка. Проанализируем, как правильно выполнить эту процедуру:
Начисление зарплаты и взносов, затем ведомость на выплату премии, и в последнюю очередь — сам документ Премия.Премия. Внимательно проверим поле «Дата выплаты». Она должна соответствовать реальному дню выдачи денег (межрасчет). Проведем документ Премия.Ведомость в кассу (или Ведомость в банк), которым выплачивалась премия. Важно убедиться, что дата ведомости совпадает или идет позже планируемой даты выплаты из документа начисления. Перезаполним ведомость, проверим, чтобы в колонке «НДФЛ к удержанию» подтянулась правильная сумма налога с премии, и проведем документ.Начисление зарплаты и взносов за этот месяц. Пересчитаем сотрудника на вкладке «НДФЛ» (кнопка «Обновить налог» или полное перезаполнение вкладки). Программа должна рассчитать налог только с оклада и прочих начислений, не затрагивая уже выплаченную премию. Проведем документ.Такой строгий перезапуск цепочки документов позволяет программе корректно распределить записи по регистру Взаиморасчеты с сотрудниками, что в большинстве случаев полностью решает проблему отображения строк в расчетном листке.
В некоторых случаях при расчете НДФЛ программа может осуществлять скрытые корректировки. Это происходит, если в прошлых периодах по сотруднику были перерасчеты или округления. Нам нужно проверить скрытые движения:
Откроем документ Начисление зарплаты и взносов, перейдем на вкладку «НДФЛ» и найдем нашего сотрудника. Обратите внимание на колонку «Налог». Если по сотруднику зафиксированы какие-то излишки или долги прошлых периодов, в документе может автоматически заполниться скрытая вкладка (или колонка в ведомостях) Корректировка выплаты. Программа пытается перераспределить налог, из-за чего в расчетном листке происходит «схлопывание» сумм удержаний. Если вы обнаружили там необоснованные строки корректировок — их следует удалить вручную, после чего перезаполнить ведомости на выплату.
Если ручное перепроведение документов не дало результата, и в абсолютно чистой базе на том же релизе у других организаций все формируется корректно, это указывает на локальный технический сбой (наличие битых ссылок в регистрах или некорректную работу кэша платформы 1С). Разберем, как исправить эту проблему программными средствами:
Шаг 1. Очистка локального кэша 1С
Часто некорректное отображение отчетов связано с тем, что платформа кэширует схемы компоновки данных. Для очистки кэша выполните следующие действия:
Шаг 2. Запуск процедуры «Тестирование и исправление» (ТИИ)
Как отметил автор темы на форуме, именно этот шаг в сочетании с пересозданием документов помог полностью устранить проблему. ТИИ позволяет восстановить физическую целостность таблиц и индексов регистров взаиморасчетов.
Важно: Перед выполнением тестирования обязательно создайте резервную копию вашей информационной базы!
Для запуска тестирования выполним следующие действия:
После завершения тестирования зайдите в пользовательский режим системы, создайте новые документы Премия и Начисление зарплаты и взносов взамен старых и проведите их по правильной хронологии, описанной в Решении 1. После выполнения этих шагов данные в регистрах обновятся без системных ошибок, и удержанный НДФЛ с премии займет свое законное место в детализации расчетного листка.