Как перевести конфигурацию 1С:Бухгалтерия предприятия КОРП на поддержку версии ПРОФ?

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

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

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

Анализ ключевых различий между КОРП и ПРОФ

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

Если мы просто «накатим» версию ПРОФ поверх КОРП, мы рискуем потерять данные в тех полях, которых нет в целевой конфигурации. Поэтому наша задача — не просто заменить одну конфигурацию другой, а перевести систему на поддержку нового поставщика, сохранив структуру метаданных КОРП как «расширенную» версию ПРОФ.

Способ 1: Смена поставщика через сравнение и объединение

Рассмотрим наиболее распространенный метод, который позволяет оставить объекты на замке. Пошагово разберем алгоритм действий:

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

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

Способ 2: Загрузка в пустую базу и перенос данных

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

Разберем процесс по этапам:

  1. Создадим пустую базу и загрузим в нее cf от ПРОФ-версии.
  2. Включим в ней возможность изменения (без снятия с поддержки), чтобы подготовить структуру к приему специфических данных, если они все же нужны.
  3. Используем специализированные обработки для выгрузки и загрузки данных в формате XML или через Конвертацию данных.

Важный нюанс: при таком подходе мы столкнемся с проблемой идентификаторов UUID. Если в базе КОРП объект Справочник.Контрагенты имеет один внутренний идентификатор, а в новой базе ПРОФ — другой, то при простом копировании данных через COM-соединение или простые обработки могут возникнуть дубли. Рекомендуется использовать сопоставление по коду или ИНН/КПП.

Проблема идентификаторов метаданных (UUID)

Проанализируем ситуацию с внутренними идентификаторами объектов метаданных. Даже если имена справочников в КОРП и ПРОФ совпадают (например, Справочник.СтатьиЗатрат), их UUID в дереве конфигурации могут быть разными. Это происходит потому, что ветки разработки КОРП и ПРОФ в 1С хоть и синхронизированы, но являются разными конфигурациями.

При выполнении сравнения и объединения (Способ 1) платформа пытается сопоставить объекты сначала по идентификаторам, а затем по именам. Если вы видите в окне объединения, что 1С предлагает «удалить» старый справочник и «добавить» новый с таким же именем — это значит, что UUID не совпали. В этом случае необходимо вручную выполнить сопоставление (перетащить один объект на другой), иначе вы получите дубли метаданных, и данные в базе «исчезнут», так как они привязаны к старым идентификаторам.

Риски работы с регистром бухгалтерии

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


Движение = Проводки.Добавить();
Движение.СчетДт = ПланыСчетов.Хозрасчетный.ТоварыНаСкладах;
Движение.ПодразделениеДт = СсылкаНаПодразделение; // Это поле есть в КОРП

В типовой конфигурации ПРОФ поле ПодразделениеДт в объекте РегистрБухгалтерииЗапись.Хозрасчетный может отсутствовать или иметь другую логику заполнения. После того как вы поставите конфигурацию на поддержку ПРОФ, при первом же обновлении через cfu (файл обновления) система попытается заменить ваши модули проведения на типовые от ПРОФ. В этих модулях нет обращения к подразделениям КОРП. Как результат — при перепроведении документов данные о подразделениях в старых периодах могут очиститься, если вы не адаптируете код под свои нужды.

Итоги и рекомендации

Подводя итог, можно сказать, что технически поставить КОРП на поддержку ПРОФ возможно, но это требует ювелирной работы в окне сравнения и объединения.

Основные правила для успешного перехода:

Таким образом, мы рассмотрели процесс трансформации поддержки конфигурации. Главное здесь — не спешить на этапе сопоставления объектов и четко понимать, какие именно данные в регистрах являются критически важными для вашего учета.

← На главную