При проведении кадровых документов, в частности документа Увольнение в конфигурации 1С:Зарплата и управление персоналом 3.1, пользователи и программисты могут столкнуться с аварийным завершением операции со следующим текстом ошибки:
ЭлектронныеТрудовыеКнижкиКлиентСервер.ДатаВсутпленияВСилуОКПДТР2026 {(1)}: Метод объекта не обнаружен (ДатаВсутпленияВСилуОКПДТР2026)
Разберем природу возникновения данной неисправности, проанализируем внутреннюю структуру вызовов и рассмотрим все практические варианты решения проблемы.
Обратим внимание на написание имени метода в тексте исключения: в слове допущена явная типовая опечатка от разработчиков 1С — ДатаВсутпленияВСилуОКПДТР2026 вместо грамматически корректного «Вступления». Начиная с определенных релизов (в частности, в ветках 3.1.38), фирма 1С добавила поддержку классификатора ОКПДТР, вступающего в силу с 2026 года. Для проверки периодов мероприятий трудовой деятельности в запросах и формах системы был реализован соответствующий метод.
Выясним причину, почему платформа не может обнаружить данный метод:
ЭлектронныеТрудовыеКнижки или модули проведения кадровых документов могли обновиться, а общий модуль ЭлектронныеТрудовыеКнижкиКлиентСервер остался без изменений (например, с него случайно сняли флажок объединения). В результате вызывающий код требует новую функцию, которой физически нет в устаревшем общем модуле.ДатаВступленияВСилуОКПДТР2026, типовые вызовы из запросов и других модулей упадут с ошибкой отсутствия метода с оригинальным именем.Посмотрим на пример вызовов данной функции в типовой конфигурации. Метод задействован как минимум в 11 местах конфигурации, включая общие модули ЭлектронныеТрудовыеКнижки, ЭлектронныеТрудовыеКнижкиПовтИсп, формы списков справочника Должности и модуль объекта справочника ТрудовыеФункции. Например, при формировании запроса установки параметров мероприятий:
Запрос.УстановитьПараметр("ДатаВсутпленияВСилуОКПДТР2026", ЭлектронныеТрудовыеКнижкиКлиентСервер.ДатаВсутпленияВСилуОКПДТР2026());
Рассмотрим по шагам несколько способов устранения данной неполадки в зависимости от регламентов сопровождения вашей базы данных.
Если требуется восстановить работоспособность кадрового учета немедленно, не прибегая к длительной процедуре комплексного обновления всей базы, добавим недостающую функцию напрямую в общий модуль или через расширение конфигурации.
Проанализируем контекст общего модуля ЭлектронныеТрудовыеКнижкиКлиентСервер: модуль имеет установленные флажки Клиент (управляемое приложение) и Сервер. Соответственно, экспортируемая функция должна быть доступна на обеих сторонах.
Откроем конфигуратор, найдем модуль ЭлектронныеТрудовыеКнижкиКлиентСервер и вставим следующий код:
Функция ДатаВсутпленияВСилуОКПДТР2026() Экспорт
Возврат '20260101';
КонецФункции
Функция ДатаВступленияВСилуОКПДТР2026() Экспорт
Возврат '20260101';
КонецФункции
Обратите внимание: мы объявляем две функции — с типовой опечаткой и с исправленным названием. Это гарантирует защиту от сбоев при любых дальнейших вызовах, как со стороны типового неисправленного функционала, так и в случае появления скорректированного кода в будущих патчах.
Если конфигурация находится на типовой поддержке без возможности изменения, создадим собственное расширение конфигурации, добавим в него общий модуль с аналогичными свойствами контекста выполнения (Клиент, Сервер) и определим указанные методы.
Проанализируем установленные в информационной базе автоматические исправления:
Наиболее надежным и архитектурно правильным решением является приведение всех модулей конфигурации к единой актуальной версии поставщика:
ЭлектронныеТрудовыеКнижкиКлиентСервер: напротив него должен стоять флаг объединения.Если программный код функции физически присутствует в конфигурации, но ошибка продолжает возникать, разберем процедуру очистки кэша платформы:
ragent).srvinfo) и удалим временные папки с кэшем сеансов (каталоги с длинными буквенно-цифровыми GUID, не затрагивая конфигурационные файлы и журнал регистрации)./ClearCache или полным удалением информационной базы из списка стартера и ее повторным добавлением.После выполнения указанных действий вызов метода ЭлектронныеТрудовыеКнижкиКлиентСервер.ДатаВсутпленияВСилуОКПДТР2026 отработает корректно, возвращая дату начала действия классификатора, и документ Увольнение проведется в штатном режиме.