Почему в 1С:Бухгалтерии 3.0 отличаются версии в «О программе» и в «Настройке поддержки»?

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

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

Разберем три вида конфигурации в одной базе

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

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

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

Выясним причины расхождения данных

Рассмотрим подробнее, почему возникают ситуации, когда «на клетке слона написано буйвол»:

Некорректное использование «Сравнения и объединения». Если вместо штатного механизма «Поддержка — Обновить конфигурацию» использовалась команда «Конфигурация — Сравнить, объединить с конфигурацией из файла», то связь между объектами может быть нарушена. При таком способе часто забывают установить галочку на самом верхнем уровне (на свойствах конфигурации). В результате код программы обновляется до версии 183.24, а строковое свойство Версия в корне конфигурации остается старым (например, 173.23). Именно поэтому в «О программе» мы видим старые цифры.

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

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

Как определить реальную версию программы

Чтобы понять, до какого уровня фактически обновлены данные, не стоит полагаться только на окно «О программе». Проанализируем содержимое регистров сведений в режиме «Предприятие».

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

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

Инструкция по исправлению и восстановлению поддержки

Если мы обнаружили расхождение и хотим привести систему к единообразию, выполним следующие шаги. Важно: перед любыми действиями обязательно создайте резервную копию (выгрузку .dt или копию файла .1cd)!

Способ 1: Восстановление через загрузку файла конфигурации (.cf)

Этот метод подходит, если база типовая (без доработок) или если вы готовы пожертвовать изменениями ради восстановления корректной поддержки.

  1. Получим файл конфигурации (.cf) нужной версии (той, которая должна быть итоговой).
  2. В Конфигураторе выберем пункт меню «Конфигурация — Загрузить конфигурацию из файла».
  3. После загрузки система предложит обновить конфигурацию базы данных — нажмем «Да» (или клавишу F7).

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

Способ 2: «Фиктивное» обновление для исправления свойств

Если в базе есть доработки, которые нельзя терять, используем механизм сравнения и объединения, но с акцентом на свойства конфигурации.

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

Разберем ситуацию со снятой поддержкой

Если в окне «Настройка поддержки» указано, что конфигурация не стоит на поддержке, нам нужно ее вернуть. Рассмотрим, как это сделать правильно:

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

Помните, что версия в настройке поддержки — это лишь декларация. Главное, чтобы конфигурация базы данных (F7) соответствовала структуре данных в таблицах SQL или файле базы. Если после обновления в конфигураторе вы не увидели окно с прогресс-баром «Обновление программы» в пользовательском режиме, значит, процедуры обновления не завершены, и работа в такой базе может привести к ошибкам в расчете налогов или заполнении отчетности.

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

← На главную