При работе в актуальных релизах программы 1С:Зарплата и Управление Персоналом 3.1 пользователи часто сталкиваются с досадной проблемой. При попытке создать или отредактировать элемент справочника Трудовые функции система выдает блокирующую ошибку: «Поле "ОКПДТР Код" не заполнено». Самое неприятное в этой ситуации то, что программа требует заполнения поля, которое предназначено для периода «до 2026 года», но при этом само поле может быть заблокировано для редактирования или скрыто с формы, если вы уже начали заполнять сведения по новым правилам.
В этой статье мы подробно разберем, почему возникает эта ошибка, проанализируем официальную позицию разработчиков 1С и рассмотрим несколько способов решения проблемы: от быстрых «лайфхаков» до корректного исправления через обновление системы.
Проанализируем ситуацию с технической точки зрения. Разработчики 1С начали масштабную подготовку к изменениям в классификаторах, которые вступят в полную силу с 2026 года. В связи с этим в справочнике Трудовые функции появилось разделение сведений ОКПДТР на два периода: до 31.12.2025 и начиная с 01.01.2026, что требует выполнить загрузку данных ОКПДТР 2026 в справочник.
Ошибка зарегистрирована в официальном баг-трекере 1С под номером 70142583. Суть бага заключается в том, что в коде конфигурации (обычно в процедуре ПередЗаписью) жестко прописана проверка на заполненность «старого» кода ОКПДТР. Однако программный интерфейс (логика формы) блокирует эти поля, если рабочая дата пользователя или текущая дата системы указывают на переходный период. В итоге получается замкнутый круг: программа требует данные, которые сама же не дает ввести.
Рассмотрим самый простой метод, который позволяет обойти проверку без привлечения программистов и внесения изменений в конфигурацию. Этот способ предложили опытные пользователи на форумах, и он подтвердил свою эффективность.
Важный момент: этот метод помогает «обмануть» логику формы, делая доступными скрытые реквизиты, аналогично тому, как устраняются ошибки записи данных на некорректные даты. После записи элемента данные сохранятся в базе, и ошибка при последующих открытиях (даже с текущей датой) возникать не должна, так как поле уже будет заполнено.
Посмотрим на ситуацию со стороны системного администрирования. Фирма 1С оперативно выпускает исправления (патчи) для критических ошибок, не дожидаясь выхода полноценного релиза конфигурации. Для данной ошибки был выпущен патч EF_70142583.
Разберем по шагам, как проверить наличие и установить исправление:
EF_70142583, нажмем кнопку Поиск и установка исправлений (требуется подключение к интернет-поддержке).После установки патча перезагрузка сервера 1С обычно не требуется, достаточно перезапустить клиентское приложение. Проверка на обязательность старого кода ОКПДТР станет «умной» и будет игнорироваться, если заполнены новые сведения.
Если в вашей базе большое количество трудовых функций и менять дату для каждой из них слишком трудозатратно, воспользуемся стандартной обработкой Групповое изменение реквизитов. Проанализируем, как это сделать безопасно:
Код по ОКПДТР (тот, что относится к периоду до 2026 года).ПередЗаписью).Если вы имеете доступ к консоли кода или создаете внешнюю обработку, проблему можно решить прямым заполнением через программный объект. Проанализируем пример кода, который принудительно записывает значение, игнорируя проверки формы:
// Пример программного исправления трудовой функции
ТФОбъект = Справочники.ТрудовыеФункции.НайтиПоНаименованию("Бухгалтер").ПолучитьОбъект();
Если ТФОбъект <> Неопределено Тогда
// Заполняем реквизит, который требует система
ТФОбъект.ОКПДТРКод = "20335"; // Пример кода для бухгалтера
// Используем режим загрузки для пропуска проверок в модуле объекта
ТФОбъект.ОбменДанными.Загрузка = Истина;
Попытка
ТФОбъект.Записать();
Сообщить("Данные успешно обновлены");
Исключение
Сообщить("Ошибка при записи: " + ОписаниеОшибки());
КонецПопытки;
КонецЕсли;
Использование свойства ОбменДанными.Загрузка = Истина является ключевым в данной ситуации, так как оно отключает выполнение стандартных проверок в процедуре ПередЗаписью, которые и вызывают ошибку в дефектных релизах.
Многие пользователи задаются вопросом: зачем вообще заполнять сведения, которые будут актуальны только в 2026 году? Проанализируем последствия. Данные из справочника Трудовые функции напрямую попадают в отчетность ЕФС-1 (бывшая СЗВ-ТД). Если сейчас оставить поля пустыми или заполнить их некорректно, используя обходные пути, то при наступлении 2026 года программа может начать формировать отчеты с ошибками.
Рекомендуем:
Таким образом, несмотря на наличие программной ошибки, существует множество способов продолжить работу. Выбирайте наиболее удобный для вас вариант и помните о важности корректного ведения кадровых сведений для будущей отчетности.