В практике сопровождения устаревших, но все еще актуальных конфигураций, таких как «1С:Бухгалтерия предприятия 2.0», системные администраторы и программисты часто сталкиваются с аномальным поведением системы при обновлении платформы 1С. Одна из наиболее пугающих ситуаций — когда после запуска базы в режиме «Предприятие» пользователи обнаруживают пустой План счетов, а во всех существующих документах вместо названий счетов отображается надпись «Объект не найден».
В рамках данной статьи мы подробно разберем причины этой проблемы, проанализируем механизмы работы предопределенных данных в различных версиях платформы и выработаем пошаговый алгоритм восстановления работоспособности системы.
Проанализируем ситуацию: если в документах вместо счетов отображается UUID (уникальный идентификатор) в виде «Объект не найден», это означает, что ссылки в табличной части документов указывают на записи, которых физически нет в таблице плана счетов или которые система не может сопоставить с описанием в конфигурации. В случае с БП 2.0 большинство счетов являются предопределенными.
Разберем фундаментальное различие в работе платформы 8.2 и 8.3. В версии 8.2 связь между объектом в базе данных и метаданными была жесткой. Начиная с версии 8.3.4, фирма «1С» изменила механизм: теперь предопределенные элементы — это полноценные объекты базы данных, которыми можно управлять более гибко. При изменении режима совместимости (например, с 8.2.13 на 8.3.5 и выше) платформа инициирует пересчет и сопоставление этих данных. Если этот процесс прерывается или выполняется некорректно, связь между «именем» счета в конфигураторе и его «ссылкой» в базе данных разрывается.
Как показывает практика и опыт участников профессиональных форумов, наиболее частой причиной «исчезновения» счетов является некорректно установленный режим совместимости. Рассмотрим, как это исправить:
Важный нюанс: Для стабильной работы последних версий БП 2.0 на платформе 8.3 рекомендуется использовать режим совместимости не ниже 8.2.16, а саму платформу — не ниже 8.3.9.
Если простая смена режима совместимости не помогла, нам придется принудительно заставить систему сопоставить объекты базы данных с метаданными. Для этого мы воспользуемся встроенными методами платформы 8.3, которые позволяют программно управлять обновлением предопределенных элементов.
Рассмотрим пример кода, который можно запустить во внешней обработке. Этот метод актуален, если счета в конфигураторе видны, а в режиме «Предприятие» — нет.
Процедура ВосстановитьСчета()
// Устанавливаем режим автоматического обновления для плана счетов
ПланыСчетов.Хозрасчетный.УстановитьОбновлениеПредопределенныхДанных(ОбновлениеПредопределенныхДанных.ОбновлятьАвтоматически);
// Инициируем процедуру сопоставления
ПланыСчетов.Хозрасчетный.ВыполнитьОбновлениеПредопределенныхДанных();
Сообщить("Обновление предопределенных счетов завершено успешно.");
КонецПроцедуры
После выполнения данного кода система попытается найти в базе данных объекты, чьи имена совпадают с именами предопределенных счетов в конфигураторе, и свяжет их. Если же объектов в базе нет, платформа создаст их заново с правильными UUID.
Иногда «исчезновение» объектов является иллюзией, вызванной сбоем локального кэша платформы. Рассмотрим шаги по его очистке:
1C:Enterprise 8.3 Server Agent. Перейдем в каталог srvinfo (обычно в C:\Program Files\1cv8\srvinfo) и удалим содержимое папок snccntx и reg_1541 (за исключением файлов конфигурации кластера).Если проблема сохраняется, проанализируем логическую и физическую целостность базы данных. Для этого в конфигураторе воспользуемся инструментом «Администрирование — Тестирование и исправление».
Выберем следующие пункты:
В случае работы с файловой информационной базой (формат .1CD), сбой может произойти на уровне физической структуры файла. Если счета исчезли после аварийного завершения работы или некорректного обновления платформы, выполним проверку утилитой chdbfl.exe.
Выясним алгоритм действий:
bin установленной платформы (например, C:\Program Files\1cv8\8.3.x.x\bin\chdbfl.exe)._Acc (планы счетов) и Config, если они были повреждены.Подводя итог, отметим, что в большинстве случаев для БП 2.0 проблема решается именно правильной настройкой режима совместимости. Помните, что предопределенные данные — это «фундамент» бухгалтерского учета в 1С, и любые манипуляции с версиями платформы должны сопровождаться обязательным созданием архивной копии.
Если вы планируете продолжать работу в «Бухгалтерии предприятия 2.0» на платформе 8.3, убедитесь, что:
8.2.16.Соблюдение этих правил позволит избежать «эффекта исчезновения» и обеспечит корректную работу всех механизмов учета.