Как правильно выполнить даунгрейд 1С:Бухгалтерии 3.0 с версии КОРП до Базовой?

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

Переход с «продвинутой» версии конфигурации на «младшую» (даунгрейд) — задача нетиповая и зачастую более сложная, чем апгрейд. В рамках данной статьи мы подробно разберем, как перевести базу данных 1С:Бухгалтерия предприятия 3.0 КОРП в статус Базовой, сохранив при этом накопленные учетные данные одной организации. Рассмотрим основные методы, технические препятствия и способы их преодоления.

Основные сложности при переходе с КОРП на Базовую

Перед тем как приступать к техническим манипуляциям, мы должны проанализировать ключевые отличия этих версий. Версия КОРП поддерживает сквозной учет в разрезе подразделений (как обособленных, так и нет), работу с гособоронзаказом, контролируемыми сделками и специфическими налоговыми регистрами. Базовая версия максимально ограничена: одна организация в базе, отсутствие учета по подразделениям в плане счетов и жесткая привязка к лицензии.

Важный нюанс: при прямом даунгрейде данные, специфичные для КОРП (например, аналитика по подразделениям на счетах затрат или расчеты через 79 счет), будут либо безвозвратно удалены при реструктуризации, либо станут недоступными для редактирования и корректного отображения в отчетах.

Метод 1: Прямая загрузка конфигурации (CF)

Этот способ кажется самым быстрым, но он требует ювелирной точности. Основная идея заключается в том, чтобы «накатить» файл конфигурации базовой версии поверх КОРП. Проанализируем алгоритм действий:

  1. Синхронизация релизов. Выясним точный номер релиза нашей КОРП-базы (например, 3.0.145.26). Нам необходимо найти или установить пустую базовую версию строго того же релиза.
  2. Подготовка CF. В конфигураторе пустой базовой версии выполним команду Конфигурация — Выгрузить конфигурацию в файл.... Полученный .cf файл будет нашим донором.
  3. Загрузка в КОРП. Откроем конфигуратор нашей рабочей базы КОРП. Внимание: мы не используем «Сравнение и объединение»! Нам нужна команда «Конфигурация — Загрузить конфигурацию из файла...». Это критически важно для изменения типа конфигурации в заголовке базы данных.
  4. Принятие изменений. После загрузки нажмем F7 (Обновить конфигурацию базы данных). На этом этапе произойдет реструктуризация таблиц. Все объекты метаданных, которых нет в базовой версии (например, справочники подразделений в КОРП-понимании), будут помечены на удаление.

Рассмотрим ситуацию, когда после загрузки .cf база продолжает требовать лицензию ПРОФ/КОРП. Это происходит из-за того, что платформа хранит внутренний флаг «девственности» базы. Если база когда-либо была в статусе ПРОФ, она может не запуститься под базовой лицензией. В таких случаях программисты иногда используют промежуточный этап: КОРП -> ПРОФ -> Базовая, запуская базу в режиме «Предприятие» на каждом шаге для выполнения обработчиков обновления.

Метод 2: Перенос данных через «Конвертацию данных 2.0»

Если метод с .cf кажется слишком рискованным из-за возможных «битых» ссылок, мы можем воспользоваться универсальным средством — КД 2.0. Это позволит нам выгрузить данные из КОРП и загрузить их в абсолютно чистую, «честную» базовую базу.

Разберем процесс настройки правил:

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

Пример кода в обработчике ПередЗагрузкой для объекта, если мы хотим программно очистить ссылки на несуществующие в базе-приемнике аналитики:


// В правилах конвертации свойств для реквизита "ПодразделениеОрганизации"
Если ТипЗнч(Объект) = Тип("ДокументОбъект.РеализацияТоваровУслуг") Тогда
    // В базовой версии этого реквизита нет, 
    // поэтому мы просто игнорируем его при переносе
    ИмяРеквизита = "ПодразделениеОрганизации";
    Значение = Справочники.ПодразделенияОрганизаций.ПустаяСсылка();
КонецЕсли;

Метод 3: Использование выгрузки для перехода в сервис

Существует еще один современный и «красивый» способ даунгрейда, который часто обходят вниманием. Это механизм «Выгрузка данных для перехода в сервис». Рассмотрим его подробнее:

В конфигурации КОРП перейдем в раздел Администрирование — Выгрузить данные для перехода в сервис. Программа сформирует компактный .zip архив, содержащий только необходимые данные в формате XML. Затем мы создадим новую пустую Базовую версию и при первом запуске выберем пункт «Загрузить данные из файла». Платформа сама сопоставит объекты и «отсеет» всё лишнее, что не поддерживается базовым функционалом. Это наиболее безопасный метод с точки зрения лицензионной чистоты базы.

Обязательные действия после даунгрейда

После того как мы успешно «приземлили» конфигурацию в базовый режим, необходимо выполнить «генеральную уборку». Проанализируем состояние базы через Тестирование и исправление (ТиИ):

Обязательно выберем следующие пункты:

Также проверим План счетов. В Базовой версии на счетах 20.01, 26, 44 и других должна отсутствовать аналитика по подразделениям. Если после «накатки» .cf вы видите субконто «Подразделения», значит реструктуризация прошла некорректно или вы используете лицензию ПРОФ, которая «подтягивает» расширенные возможности метаданных.

Выводы и рекомендации

Подводя итог, можно сказать: даунгрейд возможен, но он требует обязательного резервного копирования на каждом этапе. Если организация в базе только одна и не использовались специфические функции КОРП (например, филиальный учет), метод загрузки .cf (КОРП -> ПРОФ -> Базовая) является самым быстрым. Если же база «тяжелая» и сложная, лучше потратить время на КД 2.0 или Выгрузку в сервис, чтобы получить чистую структуру без «хвостов» от старшей версии.

Помните, что Базовая версия — это тупиковая ветвь в плане разработки: вы не сможете вносить изменения в конфигурацию, поэтому убедитесь, что после переноса все данные (особенно остатки по счетам) сошлись с оригиналом с точностью до копейки. Для быстрого поиска ошибок в учете после переноса удобно автоматически сравнить бухгалтерские и налоговые проводки между исходной и созданной базами.

← На главную