Администрирование · 10 мин
КДБ в 1С: что это такое и как с ней работать
КДБ в 1С — это конфигурация базы данных. Разбираем, чем она отличается от конфигурации разработчика, как обновить КДБ и исправить расхождения.
КДБ в 1С — это конфигурация базы данных, то есть та версия конфигурации, которая фактически хранится в информационной базе и под управлением которой работают пользователи. Когда вы открываете 1С:Предприятие и видите справочники, документы и отчёты — это КДБ в действии. Она отличается от конфигурации разработчика (основной конфигурации), которую программист редактирует в конфигураторе.
Наличие двух конфигураций — не дублирование, а механизм безопасности. Разработчик может вносить изменения в основную конфигурацию, тестировать их, а пользователи в это время продолжают работать со старой структурой базы. Только после явной команды «Обновить конфигурацию базы данных» изменения применяются к рабочей базе, и именно в этот момент происходит реструктуризация таблиц.
Понимание разницы между конфигурациями критично при обновлении типовых решений, переносе доработок и диагностике ошибок вида «конфигурация базы данных не соответствует сохранённой конфигурации». Ниже разберём, где находится КДБ, как её обновлять, что делать при расхождениях и каких ошибок стоит избегать.
Где в 1С существуют две конфигурации и зачем они нужны
В конфигураторе 1С одновременно существуют минимум две конфигурации. Основная конфигурация (конфигурация разработчика) — рабочая копия, которую вы редактируете: добавляете реквизиты, меняете модули, создаёте новые объекты. Конфигурация базы данных — это «замороженная» версия, по которой база реально функционирует.
Такое разделение позволяет безопасно дорабатывать систему. Пока вы не выполнили обновление КДБ, пользователи не заметят ваших правок — ни новых полей, ни изменённых алгоритмов. Это особенно важно в файловых базах, где нет полноценного механизма транзакционного применения изменений: если обновление прервётся, база может остаться в промежуточном состоянии.
Дополнительно существует конфигурация поставщика — эталонная версия типового решения от разработчика, по которой выполняется автоматическое обновление. Платформа сравнивает все три конфигурации, чтобы понять, какие объекты менял пользователь, а какие пришли с обновлением.
Как посмотреть и сравнить конфигурацию базы данных
Открыть КДБ на просмотр можно прямо из конфигуратора: меню «Конфигурация» → «Конфигурация базы данных» → «Открыть». Окно выглядит как обычное дерево конфигурации, но недоступно для редактирования — это справочный режим, позволяющий убедиться, какая структура сейчас в базе.
Чтобы увидеть различия между основной конфигурацией и КДБ, используйте пункт «Конфигурация» → «Сравнить, объединить с конфигурацией базы данных». Платформа покажет дерево объектов с отметками об изменениях: что добавлено, что удалено, что изменено в модулях и формах.
- 1Откройте конфигуратор под пользователем с правами администратора
- 2Меню «Конфигурация» → «Сравнить, объединить с конфигурацией базы данных»
- 3Изучите дерево различий: объекты с флажками — те, что отличаются
- 4Для детального сравнения модуля выделите объект и нажмите кнопку сравнения текстов
- 5Если различий нет — платформа сообщит, что конфигурации идентичны
Быстрый индикатор расхождения — пункт меню «Обновить конфигурацию базы данных». Если он активен (доступен для нажатия), значит основная конфигурация отличается от КДБ. Если пункт неактивен, конфигурации совпадают.
Как обновить конфигурацию базы данных
Обновление КДБ выполняется командой «Конфигурация» → «Обновить конфигурацию базы данных» или клавишей F7. Перед запуском убедитесь, что в базе не работают другие пользователи: платформа потребует монопольный доступ, иначе обновление не начнётся.
Если изменения затрагивают структуру данных (добавлены реквизиты, изменены типы, созданы новые объекты), платформа покажет окно «Реорганизация информации» со списком изменений. Внимательно прочитайте его: здесь отображается, какие таблицы будут преобразованы. Удаление реквизита означает безвозвратную потерю данных в нём — платформа об этом предупреждает отдельной строкой.
На больших базах реструктуризация может занимать от нескольких минут до нескольких часов — время зависит от объёма данных в изменяемых таблицах. Планируйте такие обновления на нерабочее время. Прерывать процесс кнопкой «Отмена» или закрытием конфигуратора нельзя.
Динамическое обновление: когда оно возможно и чем рискованно
При обновлении КДБ в клиент-серверном варианте платформа может предложить динамическое обновление — применение изменений без завершения сеансов пользователей. Это удобно, когда нельзя прервать работу, но механизм имеет жёсткие ограничения.
Динамическое обновление возможно только при незначительных изменениях: правке модулей, форм, макетов. Если затронута структура таблиц (новые реквизиты, индексы, изменение типов), потребуется полноценное монопольное обновление. После динамического обновления пользователи продолжают работать со старой версией кода до перезапуска сеанса, что может вызывать ошибки при обращении к изменённым объектам.
Типичные проблемы с КДБ и способы их решения
Самая распространённая ошибка — «Конфигурация базы данных не соответствует сохранённой конфигурации». Она возникает после аварийного прерывания обновления или некорректного восстановления из копии. Платформа не может запустить базу, потому что структура таблиц не совпадает с описанием в КДБ.
Порядок действий при такой ошибке: сначала выполните тестирование и исправление информационной базы (конфигуратор → «Администрирование» → «Тестирование и исправление») с проверкой логической и ссылочной целостности. Если это не помогло, попробуйте загрузить в базу сохранённую ранее конфигурацию (.cf) и обновить КДБ заново. В тяжёлых случаях помогает выгрузка базы в .dt и загрузка в пустую базу — при загрузке структура пересоздаётся.
Как выбрать безопасный сценарий работы
Выбор сценария зависит от масштаба изменений и режима работы базы. Небольшие правки модулей в файловой базе можно применять сразу через F7, выгнав пользователей. Серьёзные доработки в клиент-серверной базе лучше сначала отрабатывать на копии, а переносить в рабочую базу через сравнение и объединение с загруженной конфигурацией.
Как выбрать действие
Проверка результата после обновления
После успешного обновления КДБ убедитесь, что всё применилось корректно. Пункт «Обновить конфигурацию базы данных» должен стать неактивным — это признак того, что конфигурации совпадают. Затем запустите базу в режиме предприятия и проверьте ключевые сценарии: открытие изменённых форм, проведение документов, формирование отчётов.
Как проверить результат
Пункт меню неактивен — конфигурации совпадают
Пункт активен — часть изменений не применена
Список содержит только ожидаемые изменения без удаления данных
В списке удаление реквизитов или таблиц, которые должны сохраняться
Формы открываются, документы проводятся без ошибок
Ошибки формата потока, «метаданные не обнаружены» — нужен перезапуск сеансов
Если база клиент-серверная, дополнительно проверьте журнал регистрации на наличие ошибок, возникших в момент обновления. Ошибки фоновых заданий после смены конфигурации часто указывают на то, что регламентные операции используют устаревший код — помогает перезапуск сервера 1С или службы агента.
Что важно запомнить
КДБ — это конфигурация, по которой реально работает база. Изменения разработчика применяются только через обновление КДБ (F7), всегда с резервной копией и монопольным доступом. Расхождения конфигураций диагностируются сравнением, а лечатся тестированием и повторным обновлением.
Частые вопросы о конфигурации базы данных
Чем КДБ отличается от конфигурации поставщика?
КДБ — это рабочая конфигурация вашей базы, а конфигурация поставщика — эталонная версия типового решения от разработчика. Платформа использует конфигурацию поставщика при обновлении, чтобы отличить ваши доработки от типовых объектов. КДБ при обновлении не участвует в сравнении.
Можно ли отменить обновление конфигурации базы данных?
Нет, отката встроенными средствами не существует. После реструктуризации старая структура данных не сохраняется. Единственный способ вернуться — восстановить базу из резервной копии, сделанной до обновления. Поэтому копия перед F7 обязательна.
Почему кнопка «Обновить конфигурацию базы данных» неактивна?
Это нормальное состояние: пункт недоступен, когда основная конфигурация и КДБ идентичны, то есть неприменённых изменений нет. Также кнопка неактивна, если конфигурация не открыта или у пользователя нет прав на изменение конфигурации.
Что делать, если обновление КДБ зависло?
Не закрывайте конфигуратор сразу: реструктуризация больших таблиц может идти долго без видимого прогресса. Проверьте активность на сервере СУБД или диске. Если процесс действительно остановлен и прерван, восстановите базу из копии — продолжить работу с частично обновлённой базой нельзя.
Нужно ли обновлять КДБ после загрузки .cf-файла?
Да. Загрузка конфигурации («Загрузить конфигурацию из файла») изменяет только основную конфигурацию разработчика. Чтобы изменения попали в рабочую базу, после загрузки обязательно выполните обновление конфигурации базы данных.
Можно ли работать в базе, пока идёт обновление КДБ?
Нет, обычное обновление требует монопольного доступа — все сеансы должны быть завершены. Исключение — динамическое обновление в клиент-серверном варианте, но оно применимо только при изменениях без реструктуризации данных и требует последующего перезапуска сеансов пользователей.