Как решить проблемы и ошибки при переходе с 1С:Бухгалтерия 2.0 на 3.0?

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

Переход с редакции 2.0 на редакцию 3.0 конфигурации «Бухгалтерия предприятия» — это не просто очередное плановое обновление, а полноценная техническая реструктуризация всей базы данных. В процессе этого перехода полностью меняется архитектура метаданных, интерфейс переводится на управляемые формы, а устаревшие объекты конфигурации безвозвратно удаляются. Очень часто этот процесс сопровождается критическими ошибками: аварийным завершением работы Конфигуратора, нехваткой оперативной памяти, появлением огромных списков неразрешенных ссылок на удаляемые объекты или ошибками системной СУБД вроде SDBL-ошибки с таблицей ExtensionsInfoNGS.

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

---

Проблема 1. Ошибка «Недостаточно памяти» и вылеты Конфигуратора

При переходе на редакцию 3.0 Конфигуратор выполняет колоссальный объем работы по сравнению и объединению объектов метаданных. Если вы используете стандартную 32-разрядную версию платформы 1С (x86), то в силу архитектурных ограничений операционной системы один процесс может использовать не более 2 ГБ (в редких случаях при специальной настройке до 4 ГБ) оперативной памяти. Как только этот лимит превышается во время сохранения конфигурации, процесс 1cv8.exe аварийно закрывается без сохранения изменений.

Выясним причины и разберем по шагам, как решить проблему с нехваткой памяти:

  1. Использование 64-битной версии платформы 1С:Предприятие. Это самый простой и надежный способ. 64-разрядный Конфигуратор не имеет жесткого ограничения в 2 ГБ и способен использовать всю доступную оперативную память вашего компьютера. Мы рекомендуем установить x64-версию технологической платформы (начиная с версий 8.3.12 и старше) и выполнять обновление именно через нее.
  2. Временное увеличение адресного пространства в ОС Windows. Если у вас нет возможности оперативно установить 64-битный клиент, вы можете разрешить 32-битным приложениям использовать до 3 ГБ памяти. Для этого запустите командную строку от имени администратора и выполните следующую команду: bcdedit /set increaseuserva 3072 После этого обязательно перезагрузите компьютер. После успешного завершения перехода на БП 3.0 рекомендуется вернуть настройки операционной системы в исходное состояние с помощью команды: bcdedit /deletevalue increaseuserva
  3. Предварительная оптимизация файловой базы данных. Перед запуском обновления нам необходимо максимально снизить объем оперативной памяти, требуемый для обработки файла .1CD. Выполните следующие подготовительные действия:
    • Полностью очистите устаревший адресный классификатор (КЛАДР/ФИАС), если он был загружен непосредственно в базу данных. В редакции 3.0 используется принципиально другой механизм работы с адресами через веб-сервис 1С или внешние файлы.
    • Запустите обработку «Удаление помеченных объектов» и очистите базу от накопившегося мусора.
    • Проведите тестирование и исправление (ТиИ) через Конфигуратор с обязательным выбором пункта «Сжатие таблиц базы данных» для уменьшения физического размера файла на диске.

---

Проблема 2. Ошибка «На удаляемый объект ... есть ссылки в объектах основной конфигурации»

Эта проблема возникает тогда, когда ваша база данных находится в режиме «Редактирование с сохранением поддержки» (то есть конфигурация была доработана пользователем или программистом, замок поддержки снят хотя бы с одного объекта). При попытке обновить конфигурацию до БП 3.0 система пытается удалить устаревшие объекты поставщика (например, старые формы регламентированной отчетности по ЕСН, общие картинки, устаревшие обработки), но обнаруживает, что в основной измененной конфигурации на них все еще ссылаются другие объекты.

Чаще всего скрытые «мертвые» ссылки находятся в следующих местах:

Рассмотрим два основных метода борьбы с этим явлением.

Метод А. Загрузка чистого типового файла конфигурации (Рекомендуемый способ)

Если в вашей конфигурации БП 2.0 были сделаны незначительные изменения (например, изменен всего один документ СчетНаОплатуПокупателю, добавлены пара реквизитов или форм), самым быстрым и правильным решением будет временный возврат базы к абсолютно типовому виду. Это позволит полностью очистить конфигурацию от «мусорных» связей.

Выполним процедуру по шагам:

  1. Обязательно сделайте резервную копию вашей информационной базы (выгрузка в файл .dt или просто копирование файла 1Cv8.1CD).
  2. Найдите или создайте на пустой базе гарантированно чистый, типовой файл конфигурации (.cf) точно такого же релиза, который сейчас установлен у вас (например, 2.0.66.77).
  3. Откройте вашу рабочую базу в Конфигураторе, перейдите в меню Конфигурация — Поддержка — Настройка поддержки. Нажмите кнопку «Включить возможность изменения» (если она еще не включена), а затем нажмите кнопку «Снять с поддержки». Подтвердите действие. Не пугайтесь, ваши данные в таблицах базы данных при этом никуда не исчезнут.
  4. В главном меню выберите пункт Конфигурация — Загрузить конфигурацию из файла... и укажите подготовленный ранее чистый типовой файл .cf вашей версии. При этом конфигурация полностью заменится на типовую, а все ваши доработки (например, изменения в документе «Счет на оплату покупателю») будут заменены на стандартные.
  5. Выполните сохранение изменений (нажмите F7) и обновите конфигурацию базы данных.
  6. Теперь запустите процедуру стандартного обновления на редакцию 3.0 через поиск доступных обновлений или путем выбора файла обновления (.cfu / .cf) редакции 3.0. Переход пройдет гладко и без ошибок удаления объектов.
  7. После успешного завершения перехода на 3.0 перенесите все ваши доработки (изменения документа «Счет на оплату») с помощью современного и безопасного механизма — **Расширения конфигурации**. Это позволит вам в дальнейшем безболезненно обновлять базу 1С в автоматическом режиме.

Метод Б. Ручная очистка «зависших» связей

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

  1. Проанализируйте список ошибок, выдаваемый Конфигуратором. Найдите объекты основной конфигурации, которые держат ссылки. Например, если ошибка указывает на Отчет.АнализРасходовНаОплатуТруда.Справочная информация, откройте этот отчет в конфигураторе.
  2. Перейдите в свойства данного отчета, найдите строку «Справочная информация», откройте встроенный HTML-редактор и полностью удалите текст или очистите ссылки на удаляемые объекты.
  3. Если ссылки ведут на формы документов, которые отсутствуют в новой конфигурации поставщика, вам придется временно открыть эти объекты на редактирование и вручную удалить устаревшие реквизиты, элементы форм или очистить модули от обращений к удаленным объектам.

---

Проблема 3. Ошибка SDBL: «В схеме базы данных нет таблицы с именем ExtensionsInfoNGS»

Такая ошибка (системного двухуровневого библиографического языка 1С) обычно возникает из-за аварийного завершения работы платформы в момент записи изменений метаданных (например, когда Конфигуратор «вылетел» по нехватке памяти, о чем мы говорили в первом разделе). В этот момент структура таблиц физической СУБД (файла базы данных) рассинхронизируется с логической структурой конфигурации.

Платформа считает, что системная таблица расширений нового поколения ExtensionsInfoNGS должна существовать в СУБД, однако физически в файле базы данных она отсутствует или повреждена.

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

  1. Очистка локального кэша 1С. Очень часто старая «сломанная» структура кэшируется платформой на компьютере пользователя. Нам необходимо принудительно удалить временные файлы. Для этого удалите базу из списка запуска 1С и добавьте ее заново (при этом изменится идентификатор базы и кэш создастся с нуля). Также вы можете вручную очистить каталоги временных файлов на диске:
    
    %localappdata%\1C\1Cv8
    %appdata%\1C\1Cv8
    
    Удалите из этих папок все каталоги с длинными буквенно-цифровыми именами (например, 2a4b8c9d-e3f4-...).
  2. Использование утилиты физического исправления файловых баз. Перейдите в каталог установки вашей платформы 1С (например, C:\Program Files\1cv8\8.3.XX.XXXX\bin\) и запустите утилиту chdbfl.exe. Укажите путь к файлу вашей базы данных 1Cv8.1CD, установите флаг «Находить ошибки и исправлять их» и запустите проверку. Утилита пересоздаст поврежденные индексы и исправит физическую структуру файла.
  3. Тестирование и исправление в Конфигураторе. Если Конфигуратор запускается, обязательно проведите полное тестирование базы данных. Зайдите в меню Администрирование — Тестирование и исправление.... Установите флаги:
    • Реструктуризация таблиц информационной базы;
    • Проверка логической целостности;
    • Проверка ссылочной целостности (с выбором действия «Создавать объекты» или «Очищать ссылки»).
    Нажмите кнопку «Выполнить». Реструктуризация принудительно пересоздаст все системные таблицы, включая недостающую ExtensionsInfoNGS.

---

Важная деталь перехода: Роль для первого запуска

Малоизвестный, но крайне важный нюанс при переходе с БП 2.0 на БП 3.0: перед началом обновления обязательно убедитесь, что учетная запись администратора, под которой вы будете выполнять первый запуск обновленной информационной базы в режиме «Предприятие», обладает всеми необходимыми правами.

В конфигурации «Бухгалтерия предприятия» редакции 2.0 у вашего пользователя, помимо роли ПолныеПрава, обязательно должна быть включена специальная служебная роль АдминистраторСистемыДляПереходаНаРедакцию30. Если этой роли у пользователя нет, то при первом запуске БП 3.0 фоновые обработчики обновления данных не смогут корректно выполниться, что приведет к труднодиагностируемым сбоям в учете и незавершенному обновлению регистров.

Проверьте этот момент в списке пользователей Конфигуратора БП 2.0 перед тем, как накатывать обновление!

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

← На главную