При работе с конфигурацией 1С:Зарплата и Управление Персоналом (ЗУП) версии 3.1.31.67 и выше, пользователи нередко сталкиваются с критической ошибкой при попытке изменить способ выплаты премии на «межрасчетный период». Эта проблема проявляется в виде сообщения «Ошибка при вызове метода контекста (Получить)» с последующим «Значение индекса выходит за границы диапазона». Такая ситуация создает существенные трудности для корректного расчета и выплаты премий, а также влияет на правильное определение даты удержания налога на доходы физических лиц (НДФЛ).
Давайте подробно разберем эту проблему, выясним ее причины и предложим комплексные решения, основанные на опыте пользователей и рекомендациях разработчиков.
Суть проблемы:
Когда вы открываете документ Премия в ЗУП 3.1.31.67 и пытаетесь изменить тип выплаты на «межрасчетный период», система выдает ошибку, которая прерывает процесс расчета. Трассировка ошибки указывает на модуль РасчетДокументовБЗК и далее на модуль объекта документа Премия, а затем на форму документа. Это говорит о том, что ошибка возникает глубоко в механизмах расчета, связанных с обработкой данных для начисления НДФЛ.
Типичная ошибка выглядит следующим образом:
Ошибка при вызове метода контекста (Получить)
{ОбщийМодуль.РасчетДокументовБЗК.Модуль(1654)}:СтрокаФормы = ТаблицаИсточник.Получить(Идентификатор);
{ОбщийМодуль.РасчетДокументовБЗК.Модуль(713)}:СтрокаФормы = СтрокаТаблицыПоНачальнойПозиции(ТаблицаПриемник, ОписаниеТаблицы, ОбходТаблицыИдентификаторов);
{ОбщийМодуль.РасчетДокументовБЗК.Модуль(372)}:УдалитьНеактуальныеСтрокиФормы(ТаблицыНДФЛ.НДФЛ, СоответствиеОбходовФизическихЛиц, ПозицииФизическихЛицНДФЛ, ОписаниеТаблицыНДФЛ);
{EF_60019030 Документ.Премия.МодульОбъекта(53)}:РасчетДокументовБЗК.РасчетЗарплатыНДФЛВДанныеОбъекта(ТаблицыНДФЛ, ДанныеМенеджераРасчета.Зарплата.НДФЛ, ОписаниеТаблицыНДФЛ,, ПараметрыРасчета.ПозицииВставки);
{Документ.Премия.МодульОбъекта(428)}:РасчетЗарплатыВДанныeОбъекта(МенеджерРасчета, ПараметрыРасчета);
{Документ.Премия.Форма.ФормаДокумента.Форма(2209)}:Документ.Рассчитать(ПараметрыРасчета);
{Документ.Премия.Форма.ФормаДокумента.Форма(556)}:РассчитатьСотрудниковНаСервере(ОбщегоНазначения.ВыгрузитьКолонку(Объект.Начисления, "Сотрудник"), ОписаниеТаблицыНачислений(РегистрацияНачисленийДоступна), Истина);
{Документ.Премия.Форма.ФормаДокумента.Форма(536)}:ПланируемаяДатаВыплатыПриИзмененииНаСервере();
[ОшибкаВоВремяВыполненияВстроенногоЯзыка]
по причине:
Значение индекса выходит за границы диапазона
[ОшибкаИспользованияВстроенногоЯзыка]
Дополнительно к этой ошибке, пользователи отмечают, что даже после применения некоторых исправлений может наблюдаться некорректное определение даты НДФЛ для межрасчетных премий, например, вместо 14.02.2024 устанавливается 14.01.2024.
Для полного понимания причин возникновения этих ошибок, нам необходимо рассмотреть значительные изменения в законодательстве по НДФЛ, которые вступили в силу с января 2023 года. Эти изменения кардинально повлияли на порядок учета доходов и удержания налога:
Эти нововведения потребовали серьезной переработки логики расчета НДФЛ в программе 1С, что и привело к появлению новых ошибок в процессе адаптации к изменяющимся требованиям.
Переход на новые правила учета НДФЛ выявил ряд характерных проблем в документе Премия и других межрасчетных начислениях:
СтрокаФормы = ТаблицаИсточник.Получить(Идентификатор);) указывает на то, что в процессе формирования данных для расчета НДФЛ программа пытается обратиться к элементу внутренней таблицы по несуществующему индексу. Это может происходить из-за ряда причин:
Для эффективного устранения описанных ошибок нам потребуется комплексный подход, который включает в себя обновление программы, установку специальных исправлений и правильное проведение документов.
Фирма «1С» оперативно реагирует на возникающие ошибки, выпуская специальные исправления – патчи. В нашем случае, упоминаемые патчи EF_60019030 и его обновленная версия EF_60019030_2 направлены именно на устранение ошибок, связанных с расчетом НДФЛ. Рассмотрим этот аспект подробнее:
EF_60019030_2 частично решает проблему. Однако важно понимать, что иногда патч может исправить одну ошибку, но при этом выявить другую или проявить ее по-новому. Например, после установки патча ошибка «Значение индекса выходит за границы диапазона» может быть устранена, но при этом может возникнуть проблема с некорректной датой НДФЛ, как было отмечено в сообщении пользователя.Помимо патчей, крайне важно использовать самые актуальные версии программы 1С:ЗУП 3.1. Разработчики постоянно выпускают новые релизы, в которых реализуют обновленный функционал в соответствии с изменениями законодательства, а также исправляют обнаруженные ошибки. Например, в релизах ЗУП 3.1.30.152, 3.1.32.39 и 3.1.34.3 были внесены значительные изменения, касающиеся прогрессивной шкалы НДФЛ, расчета районных коэффициентов и северных надбавок, а также множество исправлений по учету и отчетности.
Мы рекомендуем регулярно обновлять вашу конфигурацию до последнего стабильного релиза, так как многие известные проблемы уже могли быть исправлены в новых версиях.
Одним из ключевых шагов для устранения ошибок, особенно после установки патчей или обновления конфигурации, является перепроведение и перерасчет документов. Это позволяет программе заново обработать данные с учетом всех актуальных исправлений и правил.
В некоторых случаях, даже после всех обновлений и перерасчетов, может возникнуть ситуация, когда плановая дата выплаты в межрасчетном документе (будь то Премия, Отпуск или Больничный лист) определяется неверно. Например, если документ создается последним числом месяца, а выплата фактически планируется в межрасчетный период следующего месяца, программа может ошибочно поставить дату начала месяца начисления.
В такой ситуации рекомендуется вручную внести правильную дату выплаты в соответствующем поле документа. Это гарантирует корректное определение даты удержания НДФЛ.
При возникновении любых проблем с расчетом НДФЛ в документе Премия, мы должны убедиться, что настройки начисления корректны. Необходимо проверить:
Давайте систематизируем шаги, которые необходимо предпринять для решения проблемы:
Прежде чем приступать к каким-либо изменениям, создайте полную архивную копию вашей базы данных. Это критически важный шаг для обеспечения безопасности данных. Для автоматического создания резервных копий перед обновлениями применяется автоматическое архивирование и резервное копирование баз 1С.
Обновите конфигурацию 1С:ЗУП 3.1 до последней актуальной версии. После обновления проверьте наличие и установите все рекомендованные актуальные исправления (патчи), в частности, убедитесь, что применен патч EF_60019030_2 или его более новая версия.
После успешного обновления и установки патчей нам потребуется распровести и затем перепровести все документы «Премия», а также, при необходимости, другие межрасчетные документы. Особое внимание уделите документам, относящимся к концу предыдущего года и началу текущего. Согласно рекомендациям, начните с первого декабрьского начисления, выплата по которому планировалась в следующем году. Это поможет гарантировать, что все расчеты НДФЛ будут выполнены по новым правилам.
Мы должны действовать последовательно. Последовательность действий может выглядеть так:
Премия, которые были проведены с декабря прошлого года или в текущем году.Если премия является первым начислением для сотрудника в году с межрасчетной выплатой, и вы наблюдаете некорректный расчет НДФЛ (полное отсутствие или завышение), попробуйте пересчитать сотрудников через контекстное меню в списке документов или непосредственно в документе Премия.
После всех перерасчетов внимательно проверьте даты удержания НДФЛ в документах Премия. Если вы обнаружите, что дата НДФЛ установлена некорректно (например, 14.01.2024 вместо 14.02.2024), скорректируйте дату выплаты вручную в документе. Плановая дата выплаты должна точно соответствовать фактической или предполагаемой дате выдачи денег.
Для контроля корректности расчетов мы можем использовать стандартные отчеты 1С:ЗУП. Регулярно проверяйте регистр НДФЛ удержано и формируйте ОтчетАнализНДФЛ, чтобы своевременно выявлять любые некорректные записи, такие как «минусы» или излишние удержания.
Мы рассмотрели сложную проблему, связанную с ошибкой «Значение индекса выходит за границы диапазона» в документе Премия при выборе межрасчетного периода и некорректным расчетом НДФЛ в 1С ЗУП 3.1. Эти трудности во многом обусловлены изменениями в налоговом законодательстве 2023 года и адаптацией программы к новым требованиям.
Для успешного решения задачи нам необходимо применять комплексный подход: своевременное обновление конфигурации до последних релизов, установка рекомендованных патчей, тщательное перепроведение всех затронутых документов и внимательный контроль дат НДФЛ. Следуя этому алгоритму, мы сможем добиться корректного расчета премий и соблюдения требований налогового законодательства. Для контроля и проверки налога непосредственно в расчетном документе можно использовать отчёт для расшифровки НДФЛ в разрезе регистраторов.