Как исправить ошибку «Значение индекса выходит за границы диапазона» в документе Премия 1С ЗУП 3.1 при выборе межрасчетного периода и некорректный расчет НДФЛ?

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

При работе с конфигурацией 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 года, повлиявшие на расчет

Для полного понимания причин возникновения этих ошибок, нам необходимо рассмотреть значительные изменения в законодательстве по НДФЛ, которые вступили в силу с января 2023 года. Эти изменения кардинально повлияли на порядок учета доходов и удержания налога:

  1. Дата фактического получения дохода: С 2023 года датой фактического получения дохода в виде оплаты труда (включая премии) признается дата его фактической выплаты. Ранее для оплаты труда датой получения дохода считался последний день месяца, за который был начислен доход. Это ключевое отличие.
  2. Удержание НДФЛ при любой выплате: Теперь НДФЛ должен удерживаться при каждой выплате дохода, будь то аванс, заработная плата или любая межрасчетная выплата (отпускные, больничные, премии). Это означает, что программа должна корректно рассчитывать и удерживать налог непосредственно в момент осуществления выплаты, а не только по окончании месяца.

Эти нововведения потребовали серьезной переработки логики расчета НДФЛ в программе 1С, что и привело к появлению новых ошибок в процессе адаптации к изменяющимся требованиям.

Типовые ошибки расчета НДФЛ, возникающие в межрасчетных документах

Переход на новые правила учета НДФЛ выявил ряд характерных проблем в документе Премия и других межрасчетных начислениях:

  1. Некорректное начисление налога: Из-за изменившейся логики учета НДФЛ по дате выплаты, часто возникают ситуации, когда налог в межрасчетных документах (таких как премии) рассчитывается не с начала года, а с начала месяца. Это может приводить к искажениям в учете, особенно если документы начисления зарплаты за предыдущий месяц были проведены некорректно или их расчетная база не была полностью учтена. В результате, доход и налог в текущем месяце могут отражаться неверно.
  2. Ошибки в дате НДФЛ: Мы уже упоминали о проблеме, когда при межрасчетной выплате премии программа ошибочно определяет дату НДФЛ. Например, вместо корректной даты выплаты 14.02.2024, система может указать 14.01.2024. Это напрямую нарушает требования законодательства и приводит к искажению отчетности по НДФЛ.
  3. Проблема «Значение индекса выходит за границы диапазона»: Эта ошибка (СтрокаФормы = ТаблицаИсточник.Получить(Идентификатор);) указывает на то, что в процессе формирования данных для расчета НДФЛ программа пытается обратиться к элементу внутренней таблицы по несуществующему индексу. Это может происходить из-за ряда причин:
    • Некорректное формирование данных: После изменений в законодательстве, механизмы подготовки данных для расчета НДФЛ могли быть изменены, и в определенных условиях (например, при сочетании старых и новых данных, или специфических параметрах расчета премии) эти данные формируются неполно или ошибочно.
    • Наличие неактуальных или поврежденных данных: Если в базе данных присутствуют устаревшие или поврежденные записи, относящиеся к НДФЛ или сотрудникам, это также может вызывать сбой при попытке их обработки.
    • Ошибки в коде патчей: Иногда вновь выпущенные патчи могут содержать свои недоработки, которые проявляются при определенных сценариях использования.
  4. Возможное задвоение НДФЛ: После установки обновлений на определенные релизы, особенно такие как ЗУП 3.1.31.67, у некоторых сотрудников могут появляться завышенные суммы по НДФЛ или даже полное задвоение налога. Это часто случается, если часть документов начисления (например, премии) с выплатой в текущем году была создана до обновления программы, а затем была пересчитана или проведена уже после установки новой версии.
  5. Премия – первое начисление в году с межрасчетной выплатой: В ситуациях, когда премия является первым начислением для сотрудника в году, и ее выплата осуществляется межрасчетно, могут возникнуть аномалии в расчете НДФЛ. У одних сотрудников налог может вовсе не рассчитываться, у других – значительно увеличиваться. Это связано с особенностями инициализации расчетных баз и доходов в начале налогового периода. Для решения этой проблемы часто помогает принудительный перерасчет сотрудников через контекстное меню.

Стратегии решения проблемы и применение исправлений (патчей)

Для эффективного устранения описанных ошибок нам потребуется комплексный подход, который включает в себя обновление программы, установку специальных исправлений и правильное проведение документов.

Применение патчей (исправлений)

Фирма «1С» оперативно реагирует на возникающие ошибки, выпуская специальные исправления – патчи. В нашем случае, упоминаемые патчи EF_60019030 и его обновленная версия EF_60019030_2 направлены именно на устранение ошибок, связанных с расчетом НДФЛ. Рассмотрим этот аспект подробнее:

  1. Что такое патчи: Патчи — это небольшие обновления, которые точечно исправляют ошибки в программе, не требуя полного обновления всей конфигурации. Они могут устанавливаться как автоматически (при подключении сервиса «Интернет-поддержки» и настроенной автозагрузке исправлений), так и вручную через меню «Администрирование» -> «Интернет-поддержка и сервисы» -> «Обновление программы» -> «Установленные исправления (патчи)».
  2. Установка и проверка: Пользователи форума подтверждают, что патч EF_60019030_2 частично решает проблему. Однако важно понимать, что иногда патч может исправить одну ошибку, но при этом выявить другую или проявить ее по-новому. Например, после установки патча ошибка «Значение индекса выходит за границы диапазона» может быть устранена, но при этом может возникнуть проблема с некорректной датой НДФЛ, как было отмечено в сообщении пользователя.
  3. Важно: Всегда проверяйте актуальность устанавливаемых патчей. Иногда для корректной работы требуется не только сам патч, но и определенная версия платформы или конфигурации.

Актуальные релизы программы

Помимо патчей, крайне важно использовать самые актуальные версии программы 1С:ЗУП 3.1. Разработчики постоянно выпускают новые релизы, в которых реализуют обновленный функционал в соответствии с изменениями законодательства, а также исправляют обнаруженные ошибки. Например, в релизах ЗУП 3.1.30.152, 3.1.32.39 и 3.1.34.3 были внесены значительные изменения, касающиеся прогрессивной шкалы НДФЛ, расчета районных коэффициентов и северных надбавок, а также множество исправлений по учету и отчетности.

Мы рекомендуем регулярно обновлять вашу конфигурацию до последнего стабильного релиза, так как многие известные проблемы уже могли быть исправлены в новых версиях.

Перерасчет документов

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

  1. Какие документы пересчитывать: Нам необходимо распровести и перепровести все документы «Премия», которые могли быть затронуты изменениями, а также, возможно, другие межрасчетные документы.
  2. С какого периода: Особое внимание следует уделить документам, начиная с первого декабрьского начисления предыдущего года, если выплата по этим начислениям переходит на следующий налоговый период (год). Это критически важно для корректного формирования налоговой базы и удержания НДФЛ в новом году.
  3. Условия: Проводить перерасчет следует строго в последнем актуальном релизе программы и при отключенных ранее установленных, но уже неактуальных патчах для перехода года. Это позволит избежать конфликтов и неверных расчетов.

Ручное исправление даты выплаты

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

В такой ситуации рекомендуется вручную внести правильную дату выплаты в соответствующем поле документа. Это гарантирует корректное определение даты удержания НДФЛ.

Проверка настроек НДФЛ

При возникновении любых проблем с расчетом НДФЛ в документе Премия, мы должны убедиться, что настройки начисления корректны. Необходимо проверить:

  1. Код дохода НДФЛ: Убедитесь, что для вида начисления «Премия» указан правильный код дохода НДФЛ в соответствии с законодательством (например, 2002).
  2. Период, за который начисляется премия: Проверьте, что период начисления премии соответствует действительности, так как это влияет на отнесение дохода к определенному налоговому периоду.

Примерный алгоритм действий при возникновении ошибки

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

  1. Подготовка и обновление:

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

    Обновите конфигурацию 1С:ЗУП 3.1 до последней актуальной версии. После обновления проверьте наличие и установите все рекомендованные актуальные исправления (патчи), в частности, убедитесь, что применен патч EF_60019030_2 или его более новая версия.

  2. Перерасчет и перепроведение документов:

    После успешного обновления и установки патчей нам потребуется распровести и затем перепровести все документы «Премия», а также, при необходимости, другие межрасчетные документы. Особое внимание уделите документам, относящимся к концу предыдущего года и началу текущего. Согласно рекомендациям, начните с первого декабрьского начисления, выплата по которому планировалась в следующем году. Это поможет гарантировать, что все расчеты НДФЛ будут выполнены по новым правилам.

    Мы должны действовать последовательно. Последовательность действий может выглядеть так:

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

    Если премия является первым начислением для сотрудника в году с межрасчетной выплатой, и вы наблюдаете некорректный расчет НДФЛ (полное отсутствие или завышение), попробуйте пересчитать сотрудников через контекстное меню в списке документов или непосредственно в документе Премия.

  3. Контроль и корректировка дат НДФЛ:

    После всех перерасчетов внимательно проверьте даты удержания НДФЛ в документах Премия. Если вы обнаружите, что дата НДФЛ установлена некорректно (например, 14.01.2024 вместо 14.02.2024), скорректируйте дату выплаты вручную в документе. Плановая дата выплаты должна точно соответствовать фактической или предполагаемой дате выдачи денег.

    Для контроля корректности расчетов мы можем использовать стандартные отчеты 1С:ЗУП. Регулярно проверяйте регистр НДФЛ удержано и формируйте ОтчетАнализНДФЛ, чтобы своевременно выявлять любые некорректные записи, такие как «минусы» или излишние удержания.

Мы рассмотрели сложную проблему, связанную с ошибкой «Значение индекса выходит за границы диапазона» в документе Премия при выборе межрасчетного периода и некорректным расчетом НДФЛ в 1С ЗУП 3.1. Эти трудности во многом обусловлены изменениями в налоговом законодательстве 2023 года и адаптацией программы к новым требованиям.

Для успешного решения задачи нам необходимо применять комплексный подход: своевременное обновление конфигурации до последних релизов, установка рекомендованных патчей, тщательное перепроведение всех затронутых документов и внимательный контроль дат НДФЛ. Следуя этому алгоритму, мы сможем добиться корректного расчета премий и соблюдения требований налогового законодательства. Для контроля и проверки налога непосредственно в расчетном документе можно использовать отчёт для расшифровки НДФЛ в разрезе регистраторов.

← На главную