Как исправить ошибку «Поле объекта не обнаружено (Информация32)» в БиблиотекеКартинок при запуске 1С?

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

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


ОбщийМодуль.ПолучениеОбновленийПрограммыКлиент.Модуль(639)}: Поле объекта не обнаружено (Информация32)
Картинка = БиблиотекаКартинок.Информация32;

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

Почему возникает данная ошибка

Разберем механизм работы платформы при обращении к общим картинкам. В конфигурации присутствует объект метаданных БиблиотекаКартинок, а внутри него — стандартная картинка Информация32. Этот объект широко используется в типовых модулях, в том числе в модуле ПолучениеОбновленийПрограммыКлиент при проверке версий и регламентных обновлений.

Главная причина появления ошибки «Поле объекта не обнаружено» для существующей картинки — рассинхронизация кэша метаданных клиента и фактического состояния информационной базы. Это происходит в следующих случаях:

  1. Устаревший локальный кэш пользователя. После завершения обновления конфигурации тонкий или толстый клиент продолжает использовать закэшированную локальную структуру метаданных. При обращении на клиенте к свойству глобальной коллекции БиблиотекаКартинок система пытается найти идентификатор в старом кэше и не обнаруживает его.
  2. Последствия динамического обновления. Если в базе выполнялось обновление конфигурации «на лету» (динамически без перезапуска сеансов всех пользователей), таблицы метаданных могут рассинхронизироваться. В результате сеансы получают искаженные данные о структуре метаданных.
  3. Зависший кэш кластера серверов 1С. В клиент-серверном режиме работы устаревшие схемы метаданных могут зафиксироваться в сеансовых данных самого сервера приложений.

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

Способ 1. Очистка кэша с помощью параметра запуска /ClearCache

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

  1. Откроем окно запуска «1С:Предприятие».
  2. Выделим нужную информационную базу и нажмем кнопку «Изменить...».
  3. Нажмем «Далее» и перейдем на страницу настроек параметров запуска.
  4. В поле «Дополнительные параметры запуска» пропишем ключ: /ClearCache.
  5. Нажмем «Готово» и запустим базу в обычном режиме.

При использовании параметра /ClearCache платформа принудительно заново загрузит актуальную структуру метаданных с сервера, исключая обращение к поврежденным локальным файлам.

Способ 2. Ручная очистка каталогов временных файлов пользователя

Если ошибка сохраняется или запуск с параметром не помог, проанализируем ручную очистку пользовательских папок кэша. Именно этот способ помог автору темы на форуме.

  1. Полностью закроем все запущенные сеансы «1С:Предприятия» и «Конфигуратора».
  2. Откроем проводник Windows и перейдем по пути: %LOCALAPPDATA%\1C\1cv8\. В этой директории расположены папки с длинными именами в формате GUID (например, a8d29b12-5f6e-4c7b-...).
  3. Удалим все каталоги с названиями GUID. Не следует удалять конфигурационные файлы списка баз, такие как ibases.v8i.
  4. Перейдем в каталог перемещаемого профиля: %APPDATA%\1C\1cv8\ и аналогично очистим папки с GUID-именами.
  5. Запустим информационную базу заново.

Важный момент: при полном ручном удалении папок кэша сбрасываются персональные настройки форм и видимости колонок у пользователя, поэтому для регулярной профилактики лучше предпочесть параметр /ClearCache.

Способ 3. Перерегистрация базы в списке запуска

Рассмотрим альтернативный способ обновления локального кэша, не требующий ручного поиска системных директорий:

  1. В окне запуска выберем сбоящую базу и запишем точный путь к ней (или имя кластера и базы для клиент-серверного варианта).
  2. Нажмем кнопку «Удалить», чтобы исключить базу из списка.
  3. Нажмем кнопку «Добавить», выберем «Добавление в список существующей информационной базы» и заново укажем путь к файловой базе или параметры подключения к серверу.

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

Способ 4. Очистка серверного кэша и устранение последствий динамического обновления

Если проблема возникает у всех пользователей сразу в клиент-серверном варианте базы (на базе СУБД), разберем действия на уровне сервера «1С:Предприятия»:

  1. Остановим службу агента сервера: 1C:Enterprise Server Agent (служба ragent).
  2. В рабочем каталоге кластера (каталог srvinfo) найдем и очистим временные папки сеансов и кэша метаданных (каталоги с префиксом snccntx*).
  3. Запустим службу агента сервера 1С заново.
  4. Откроем базу монопольно через Конфигуратор.
  5. Внесем любое нейтральное изменение в структуру (например, добавим пробел или строку комментария в модуль любого документа или обработки), после чего применим изменения клавишей F7 («Обновить конфигурацию базы данных»). Это принудительно перезапишет таблицы метаданных в СУБД.
  6. Выполним пункт меню «Администрирование» — «Тестирование и исправление информационной базы» с обязательной проверкой логической целостности.

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

← На главную