Telegram и WhatsApp в России работают с перебоями. Пишите нам в чат на сайте: ответ придёт и в окно, и на почту. Открыть чат

Коротко

Код обращается к реквизиту, колонке или свойству, которого у значения нет. В скобках — имя, которое не нашлось; по нему и по модулю из фигурных скобок определяется, чей это код.

Как выглядит

{ВнешняяОбработка.ПримерОбработки.Форма.Форма.Форма(48)}: Поле объекта не обнаружено (КодТовара)

Причины

  • Реквизит переименован или удалён при обновлении конфигурации, а внешняя обработка, отчёт или расширение обращается к старому имени.
  • Обработка написана для другой конфигурации или другой редакции: в ней используется реквизит, которого в вашей базе нет.
  • В имени реквизита опечатка. Обращение через точку не проверяется при сохранении модуля, ошибка проявляется только при выполнении этой строки.
  • В переменной значение другого типа, чем ожидает код: например, в составном реквизите лежит ссылка на другой справочник, у которого такого реквизита нет.
  • Код обращается к колонке, которой нет в результате запроса или в таблице значений: колонку не выбрали в запросе или назвали другим псевдонимом.

Что делать

Пользователю

  1. Скопируйте текст ошибки целиком вместе со строкой в фигурных скобках и запомните, при каком действии она возникла.
  2. Если в фигурных скобках написано «ВнешняяОбработка» или «ВнешнийОтчет», ошибка в подключённой обработке, а не в самой программе. Сообщите о ней тому, кто обработку поставлял.
  3. Повторное проведение или нажатие той же кнопки не поможет: пока код не исправлен, ошибка будет повторяться.

Администратору

  1. По строке в фигурных скобках определите источник: модуль конфигурации, расширение или внешняя обработка.
  2. Проверьте, не обновлялась ли недавно конфигурация. После обновления внешние обработки и расширения часто обращаются к реквизитам, которых больше нет.
  3. На копии базы отключите расширения по одному и проверьте, исчезает ли ошибка.
  4. Для внешней обработки запросите у поставщика версию под вашу редакцию конфигурации.

Разработчику

  1. Найдите в модуле строку из фигурных скобок и имя из скобок в тексте ошибки.
  2. В отладчике посмотрите фактический тип значения, к которому идёт обращение: часто это не тот тип, который предполагался.
  3. Для реквизитов, которых может не быть, проверяйте наличие свойства через метаданные объекта, а не обращайтесь к нему напрямую через точку.
  4. Для результата запроса проверьте, что колонка выбрана и названа тем же псевдонимом, что и в коде.

Помогло?

Не помогло? Напишите специалисту

Ответ придёт на указанный email. Текст ошибки вставьте целиком, вместе со стеком.

Необязательно — ответим на email.

Частые вопросы

Почему ошибка появилась после обновления?

Обновление меняет состав реквизитов. Код, который обращался к старому имени, начинает падать при первом выполнении этой строки.

Могут ли пострадать данные?

Как правило, нет: действие прерывается, а незавершённая транзакция отменяется. Данные, записанные до ошибки вне транзакции, остаются.

Все ошибки раздела «Платформа» · Справочник ошибок 1С

Комментарии

Комментариев пока нет. Если решение сработало иначе, чем описано, расскажите об этом.