При работе в 1С:Бухгалтерия пользователи иногда сталкиваются с критическими ошибками сразу после обновления программы. Одной из таких неприятных ситуаций является появление сообщения Метод объекта не обнаружен (ГосударствоЧленТаможенногоСоюза) при попытке создать документ на основании другого (например, накладную на основании счета). Давайте разберемся, почему это происходит и как вернуть систему в рабочее состояние.
Ошибка такого типа свидетельствует о том, что программный код конфигурации пытается обратиться к функции, которой в текущей структуре метаданных не существует или путь к ней был изменен. В контексте типовых конфигураций 1С это обычно означает несоответствие между обновленной конфигурацией и существующим кэшем или некорректную установку обновлений/патчей.
Рассмотрим основные причины, которые приводят к подобному поведению системы:
Исправления (патчи) в 1С позволяет оперативно устранять ошибки, но иногда установленные исправления конфликтуют с обновленным релизом конфигурации.Первым делом, при возникновении любых ошибок после обновления, необходимо исключить влияние кэша. Очистка кэша 1С помогает убедиться, что система обращается к актуальным объектам, а не к «фантомным» записям в локальных папках пользователя.
Если очистка кэша не помогла, значит, проблема кроется глубже — в самой конфигурации. В таких случаях мы рекомендуем проверить наличие установленных патчей в разделе Администрирование — Обслуживание — Обновление программы. Иногда удаление ошибочного или устаревшего патча через список Установленные исправления (патчи) решает проблему.
В типовых конфигурациях, особенно в базовых версиях, многие модули закрыты от изменений и имеют пометку «Исходный текст модуля отсутствует». Если вы видите, что вызов метода, например, УчетНДС.ГосударствоЧленТаможенногоСоюза() вызывает ошибку, вполне вероятно, что в новой версии метод был перенесен в другой справочник, например:
// Пример правильного обращения в актуальных версиях
Результат = Справочники.СтраныМира.ГосударствоЧленТаможенногоСоюза(СтранаРегистрацииКонтрагента);
Если вы обнаружили, что в вашем коде используется старая конструкция, а конфигурация «на замке» и обновлялась штатно, это почти всегда означает, что обновление встало некорректно. В таких ситуациях не стоит пытаться исправлять код вручную.
Самым надежным и профессиональным решением в случае сбоя при обновлении является восстановление базы из резервной копии. Рассмотрим алгоритм действий:
Для предотвращения подобных ситуаций в будущем, придерживайтесь следующих правил работы с 1С:
1С исправляет дополнительными патчами в течение нескольких дней.1С, так как проблема может быть на уровне самого дистрибутива релиза.Работая вместе над исправлением таких проблем, мы учимся правильно диагностировать состояние системы, различать ошибки платформы и ошибки процесса обновления. Надеемся, что данное руководство поможет вам быстро вернуть 1С в рабочее состояние!