Разработка и Конфигурация · 12 мин
Как изменить номер конфигурации 1С
Как изменить номер версии конфигурации 1С в конфигураторе: где хранится номер, как правильно его обновить при доработке и обновлении, типичные ошибки и проверка результата.
Номер версии конфигурации 1С — это служебный реквизит, который платформа и администраторы используют для идентификации релиза: по нему определяют, какая сборка развёрнута в базе, нужна ли обработка обновления данных и соответствует ли информационная база поставке поставщика. Изменить номер можно только в конфигураторе, при этом важно понимать разницу между номером версии в свойствах конфигурации и версией, которую видит пользователь в разделе «О программе».
Задача возникает в нескольких ситуациях: при выпуске собственной доработки поверх типовой конфигурации, при подготовке файла поставки, при обновлении самописной конфигурации, а также когда требуется исправить ошибочно присвоенный номер. Действие само по себе простое, но ошибка в нумерации способна нарушить механизм обновления: обработчики перехода на новую версию могут не выполниться или, наоборот, запуститься повторно.
Где хранится номер версии конфигурации
В конфигурации 1С номер версии задаётся в свойствах корневого объекта дерева конфигурации — того самого узла, который называется «Конфигурация» и открывается первым в дереве метаданных. Это строковое поле, обычно заполняемое в формате четырёх чисел через точку: редакция, подредакция, версия, сборка (например, 3.1.27.15). Формат не жёстко регламентирован платформой, но типовые конфигурации и библиотека стандартных подсистем ориентированы именно на четырёхкомпонентную схему.
Важно различать два значения. Свойство «Версия» в конфигураторе — это номер, зашитый в метаданные. А номер, который показывается пользователю в форме «О программе», часто берётся из функциональности обновления (в типовых — из константы или регистра сведений с версиями подсистем) и совпадает с версией конфигурации только после успешного выполнения обработчиков обновления. Поэтому смена свойства «Версия» без корректного обновления информационной базы может привести к расхождению этих номеров.
Подготовка перед изменением номера
Любое изменение свойств конфигурации начинается с резервной копии. Для файловой базы достаточно выгрузить информационную базу через пункт «Администрирование — Выгрузить информационную базу» в конфигураторе либо скопировать файл 1Cv8.1CD. Для клиент-серверной базы корректный путь — выгрузка через конфигуратор или средствами СУБД. Копия позволит вернуться к исходному состоянию, если после смены номера обновление пойдёт не по плану.
Далее убедитесь, что конфигурация не находится на полной поддержке с закрытым от изменений корнем. Если включена поддержка «на замке», свойство «Версия» будет недоступно для редактирования — потребуется включить возможность изменения через меню «Конфигурация — Поддержка — Настройка поддержки». Для типовых конфигураций снятие с полной поддержки — осознанное решение: оно усложняет последующие автоматические обновления от поставщика.
Как изменить номер версии в конфигураторе
Основной сценарий занимает несколько минут. Откройте конфигуратор, загрузите нужную информационную базу и откройте конфигурацию через меню «Конфигурация — Открыть конфигурацию». Если конфигурация закрыта, платформа предложит её открыть — подтвердите действие.
В дереве конфигурации выделите самый верхний узел с именем конфигурации, щёлкните по нему правой кнопкой мыши и выберите «Свойства» (или нажмите Alt+Enter). В палитре свойств найдите поле «Версия» и впишите новый номер. Сохраните конфигурацию (Ctrl+S) и обновите конфигурацию базы данных через «Конфигурация — Обновить конфигурацию базы данных» (F7), приняв изменения. После этого новый номер зафиксируется в метаданных.
- 1Сделайте выгрузку информационной базы в файл .dt
- 2Откройте конфигуратор и откройте конфигурацию
- 3Выделите корневой узел дерева и откройте палитру свойств
- 4В поле «Версия» укажите новый номер, например 1.0.2.1
- 5Сохраните конфигурацию и обновите конфигурацию базы данных (F7)
- 6Запустите базу в режиме предприятия и проверьте номер в окне «О программе»
Если конфигурация на поддержке
Для типовой конфигурации, находящейся на поддержке, откройте «Конфигурация — Поддержка — Настройка поддержки», нажмите «Включить возможность изменения» и выберите режим: с сохранением поддержки (объект редактируется) или со снятием с поддержки. Первый вариант предпочтительнее — он сохраняет возможность сравнения с конфигурацией поставщика при будущих обновлениях. После включения изменений поле «Версия» станет доступным.
Изменение через пакетный режим
Для автоматизации сборок номер версии часто меняют не вручную, а выгрузкой конфигурации в файлы и правкой XML, либо через внешние инструменты сборки. В выгрузке в формате XML номер хранится в файле Configuration.xml в элементе Version. Такой подход применяют в связке с системами контроля версий, когда номер релиза подставляется автоматически при сборке поставки.
Как выбрать правильный номер
Нумерация должна быть монотонно возрастающей: каждый следующий релиз получает номер больше предыдущего. Это критично, потому что механизмы обновления сравнивают версии как упорядоченные наборы чисел и выполняют обработчики только для диапазона «старше сохранённой — до новой включительно». Если присвоить номер меньше текущего, обновление данных не запустится; если пропустить диапазон — выполнятся все промежуточные обработчики, что обычно корректно, но требует проверки.
Общепринятая логика четырёх компонентов: первое число — редакция (крупные изменения), второе — подредакция (новый функционал), третье — версия (исправления и небольшие доработки), четвёртое — сборка (технический выпуск). Для собственных доработок поверх типовой конфигурации некоторые команды добавляют суффикс к номеру, но стандартные механизмы сравнения версий работают с числовыми компонентами, поэтому суффиксы используют осторожно и только визуально.
Как выбрать действие
Обновление базы и обработчики перехода
После сохранения конфигурации с новым номером при первом запуске в режиме предприятия типовой механизм обновления сравнивает версию из метаданных с версией, сохранённой в данных. Если новая версия больше, запускаются отложенные и оперативные обработчики обновления, и пользователю может показываться окно прогресса. Для больших баз этот этап занимает заметное время — планируйте его на нерабочие часы.
В самописных конфигурациях без библиотеки стандартных подсистем смена номера ничего автоматически не запускает: номер просто фиксируется в свойствах. Если вам нужен аналогичный контроль версий, его реализуют самостоятельно — например, хранят номер в константе и при старте сравнивают с версией метаданных, выполняя нужные процедуры переноса данных.
Проверка результата
Первый контроль — в самом конфигураторе: повторно откройте свойства корня конфигурации и убедитесь, что поле «Версия» содержит новый номер. Второй контроль — в режиме предприятия: откройте «О программе» (обычно через кнопку с вопросительным знаком или меню «Сервис») и сверьте отображаемый номер версии конфигурации.
Третий контроль касается механизма обновления: если конфигурация типовая или построена на БСП, убедитесь, что после запуска не осталось невыполненных отложенных обработчиков (раздел «Администрирование — Поддержка и обслуживание — Результаты обновления» в типовых). Флаг «обновление завершено успешно» подтверждает, что смена версии прошла штатно.
Как проверить результат
Отображается новый номер
Старый номер — изменение не сохранено или база не обновлена
Номер совпадает с заданным в конфигураторе
Номер старый — обновление данных не выполнялось или завершилось с ошибкой
Все обработчики выполнены, ошибок нет
Есть незавершённые или завершённые с ошибкой обработчики
База открывается штатно, нет блокировки обновлением
Пользователи видят окно обновления или сообщение о несоответствии версий
Типичные ошибки и ограничения
Самая частая ошибка — изменить номер, сохранить конфигурацию, но забыть обновить конфигурацию базы данных. В этом случае рабочая база продолжает использовать старые метаданные, и пользователи не видят нового номера. Вторая ошибка — присвоить номер, меньший уже сохранённого в данных: обработчики обновления не запустятся, а в типовых может появиться предупреждение о несоответствии версий.
Третья группа проблем связана с поддержкой: снятие конфигурации с поддержки ради смены номера без необходимости, а затем попытка вернуть поддержку обратно с потерей истории изменений. Также нельзя менять номер версии внешними средствами напрямую в файле базы — корректный путь только через конфигуратор или через выгрузку/загрузку конфигурации.
Удобно вести простой журнал релизов: номер версии, дата, краткое описание изменений. При обновлении нескольких баз (например, центральной и периферийных) такой журнал позволяет быстро понять, какая база на каком релизе, и не гадать по номеру в окне «О программе».
Частые вопросы
Можно ли изменить номер версии, не снимая конфигурацию с поддержки?
Да, если включить возможность изменения с сохранением поддержки. В настройках поддержки выберите режим, при котором объекты редактируются с сохранением поддержки, — тогда поле «Версия» станет доступным, а связь с конфигурацией поставщика сохранится для последующих обновлений.
Почему после смены номера в окне «О программе» показывается старая версия?
Скорее всего, не выполнено обновление конфигурации базы данных (F7) или обновление данных завершилось с ошибкой. В типовых конфигурациях номер в «О программе» берётся из данных обновления, поэтому проверьте результаты обновления и при необходимости перезапустите базу под пользователем с правами администратора.
Что будет, если присвоить номер меньше текущего?
Механизмы обновления выполняют обработчики только при переходе на более новую версию. При понижении номера обработчики не запустятся, а в конфигурациях на БСП возможны предупреждения о несоответствии версии метаданных и версии данных. Понижать номер следует только осознанно, понимая последствия.
Обязателен ли формат из четырёх чисел?
Платформа хранит версию как строку и жёстко не требует четырёх компонентов. Однако типовые механизмы сравнения версий и практика поставщиков ориентированы на формат X.X.X.X, поэтому отступать от него без необходимости не стоит — это упрощает сравнение и обновление.
Как изменить номер версии автоматически при сборке?
Выгрузите конфигурацию в файлы XML, измените элемент Version в файле Configuration.xml скриптом и загрузите конфигурацию обратно пакетной командой конфигуратора. Такой подход обычно встраивают в конвейер сборки вместе с системой контроля версий.
Опасно ли менять номер версии в рабочей базе?
Само изменение свойства безопасно, но последующий запуск обработчиков обновления может заблокировать работу пользователей и при ошибке привести к некорректным данным. Поэтому изменение делают на тестовой копии, а в продуктив переносят после проверки и с резервной копией.
Что важно запомнить
Номер версии меняется в палитре свойств корня конфигурации в конфигураторе, после чего обязательно обновляется конфигурация базы данных. Номер должен возрастать, изменение выполняется на копии, а результат проверяется в окне «О программе» и в результатах обновления.