К статье
Практический материал

Администрирование · 11 мин

Как сравнить настройки двух баз 1С

Практические способы сравнить настройки двух баз 1С: сравнение конфигураций, выгрузка настроек, типовые инструменты и проверка расхождений. Пошаговая инструкция.

Задача сравнить настройки двух баз 1С возникает регулярно: при переносе рабочей системы на новый сервер, при поиске причины, почему в копии базы отчёт считается иначе, чем в рабочей, при подготовке тестовой среды или при параллельной работе нескольких филиалов. Расхождения могут скрываться на разных уровнях — в конфигурации, в настройках пользователей, в функциональных опциях, в регистрах сведений с параметрами учёта.

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

Ниже описаны конкретные способы сравнения — от штатных средств конфигуратора до выгрузки настроек через обработки и запросы. Подход подходит для типовых конфигураций на управляемых формах (УТ, ERP, Бухгалтерия, ЗУП) и для самописных решений.

Определите, какие именно настройки нужно сравнить

Под «настройками базы» обычно понимают несколько разных слоёв, и путать их — частая причина лишней работы. Первый слой — конфигурация: состав объектов метаданных, модули, роли, подсистемы. Второй — настройки функциональности: функциональные опции, параметры учёта, константы. Третий — регистры сведений, где типовые конфигурации хранят учётную политику, параметры обменов, настройки интеграций. Четвёртый — пользовательские настройки: варианты отчётов, настройки форм, персональные параметры пользователей.

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

Отличается поведение программыРазные версии конфигурации или расширения

Сравнить версии конфигураций и список расширений в обеих базах

Отличаются проводки или расчётыРазные настройки учёта (константы, учётная политика)

Сравнить функциональные опции и регистры параметров учёта

У пользователя недоступны функцииРазные роли или профили групп доступа

Сравнить состав ролей и настройки прав в обеих базах

Отчёт показывает другие цифрыРазные данные или другой вариант отчёта

Сравнить период, настройки варианта отчёта и сами данные

Сравните конфигурации через конфигуратор

Если базы должны быть идентичны по коду, начните со сравнения конфигураций. Для этого из одной базы выгрузите конфигурацию в файл: «Конфигурация» → «Сохранить конфигурацию в файл». Затем откройте конфигуратор второй базы и выберите «Конфигурация» → «Сравнить, объединить с конфигурацией из файла», указав сохранённый файл.

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

Дополнительно проверьте расширения конфигурации: в режиме «1С:Предприятие» откройте «Все функции» → «Стандартные» → «Расширения конфигурации» и сличите списки в обеих базах — имена, версии, активность. Расширение, подключённое в одной базе и отсутствующее в другой, — типичная причина разного поведения при формально одинаковой конфигурации.

Сравните версии и релизы без конфигуратора

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

Для клиент-серверных баз проверьте также настройки информационной базы в консоли кластера: разрешённый объём памяти рабочих процессов, параметры блокировок, режим управления блокировкой данных. Эти параметры не хранятся внутри базы, но напрямую влияют на поведение системы под нагрузкой.

Сравните настройки учёта и функциональные опции

В типовых конфигурациях основная масса прикладных настроек сосредоточена в разделе «Администрирование»: настройки учёта, функциональность, параметры обменов, печатные формы. Визуальное сличение двух открытых окон работает только для небольшого числа опций и чревато пропусками.

Надёжнее выгрузить значения программно. Функциональные опции физически хранятся в константах и регистрах сведений, поэтому их можно выгрузить запросом или обработкой. Простой рабочий приём — выгрузить все константы обеих баз в табличные документы и сравнить их. Пример кода для выгрузки констант:

Для Каждого Константа Из Метаданные.Константы Цикл

Значение = Константы[Константа.Имя].Получить();

Текст.ДобавитьСтроку(Константа.Имя + " = " + Строка(Значение));

КонецЦикла;

Полученные текстовые файлы сравниваются любым инструментом сравнения файлов (WinMerge, Notepad++ с плагином Compare, встроенное сравнение файлов в конфигураторе). Тот же приём применяется к ключевым регистрам сведений: учётная политика организаций, настройки обмена данными, параметры расчёта зарплаты.

Порядок сравнения настроек учёта
  1. 1
    Выгрузите константы обеих баз в текстовые файлы через обработку
  2. 2
    Выгрузите регистры сведений с учётной политикой и параметрами учёта в табличные документы
  3. 3
    Сравните файлы инструментом сравнения текста и зафиксируйте расхождения
  4. 4
    Проверьте каждое расхождение: осознанное оно или случайное
  5. 5
    Приведите настройки к нужному эталону и перепроверьте повторной выгрузкой

Сравните пользовательские настройки и права

Персональные настройки пользователей (варианты отчётов, настройки форм, избранное) хранятся в системном хранилище настроек. В конфигураторе доступны «Администрирование» → «Пользователи» и просмотр настроек через «Сервис» → «Параметры», но массовое сравнение удобнее делать через стандартную обработку выгрузки настроек или через консоль запросов к таблицам хранилища.

Права сравниваются на двух уровнях. Внутри конфигурации — состав ролей и их назначение пользователям (в типовых — через профили групп доступа в разделе «Администрирование» → «Настройки прав и пользователей»). Снаружи — список пользователей информационной базы в конфигураторе. Выгрузите списки пользователей с ролями из обеих баз и сравните построчно. Расхождение в одном профиле доступа объясняет, почему у кассира в одной базе есть кнопка, а в другой нет.

Сравнение данных между базами

Когда настройки совпадают, а результат отличается, сравнивают сами данные. Для баз, доступных по сети, используют обработки сравнения данных через COM-соединение: обработка подключается ко второй базе, выбирает объекты за период и сверяет реквизиты, табличные части и движения документов. Такие обработки есть в открытых источниках и на диске ИТС.

Для точечной проверки достаточно консоли запросов: выполните один и тот же запрос в обеих базах (например, обороты по счёту за период или список документов по контрагенту) и сравните результаты. Если объёмы большие, выгрузите результат запроса в табличный документ и сохраните в mxl — табличные документы тоже можно сравнивать программно или визуально.

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

Типичные ошибки
01
Сравнивать только конфигурацию и игнорировать расширения — доработка в расширении остаётся незамеченной
02
Сличать настройки визуально по открытым окнам — пропускаются опции на других вкладках
03
Сравнивать копию и рабочую базу без учёта даты снятия копии — ложные расхождения в данных
04
Забыть про настройки кластера и СУБД — базы идентичны, но поведение разное из-за окружения
05
Выполнять объединение конфигураций вместо просмотра различий — случайное изменение рабочей базы

Проверка результата и выбор инструмента

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

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

Маршрут решения

Как выбрать способ сравнения

Нужно проверить, одинаковый ли код и метаданныеСравнение конфигурации с файлом в конфигураторе
Различаются проводки, расчёты или доступность функцийВыгрузка констант и регистров параметров учёта с сравнением файлов
У пользователей разные права или состав кнопокСравнение профилей групп доступа и списков пользователей
Настройки совпадают, а цифры в отчётах разныеСравнение данных консолью запросов или обработкой через COM
Базы на разных серверах и ведут себя по-разному под нагрузкойПроверка версий платформы и настроек кластера серверов

Частые вопросы

Можно ли сравнить две базы 1С без конфигуратора?

Частично. Версии платформы и конфигурации видны в окне «О программе», настройки учёта — в разделе «Администрирование», расширения — в соответствующем списке. Но полноценное сравнение метаданных и кода возможно только в конфигураторе, поэтому для глубокого анализа доступ к нему необходим.

Чем сравнить выгруженные файлы настроек?

Подойдёт любой инструмент сравнения текстов: WinMerge, Notepad++ с плагином Compare, функция сравнения файлов в самом конфигураторе («Файл» → «Сравнить файлы»). Важно, чтобы выгрузки из обеих баз формировались одной и той же обработкой — тогда строки будут в одинаковом порядке и расхождения покажут только реальные различия.

Переносится ли всё при выгрузке базы в dt-файл?

Файл выгрузки включает конфигурацию, данные и пользовательские настройки, хранящиеся внутри базы. Не переносятся настройки кластера серверов, параметры СУБД, внешние компоненты на клиентских машинах и привязанные к серверу лицензии. После развёртывания копии эти элементы проверяют отдельно.

Почему базы идентичны, а отчёт показывает разные суммы?

Чаще всего причина в данных: разный период снимка, незакрытый месяц в одной из баз, разные варианты настроек самого отчёта. Реже — в различиях учётной политики или в том, что в одной базе выполнены регламентные операции (пересчёт итогов, расчёт себестоимости), а в другой нет.

Как сравнить настройки обмена между базами?

Настройки обмена хранятся в узлах планов обмена и связанных регистрах сведений. Выгрузите список узлов с их основными реквизитами (код, наименование, параметры) из обеих баз и сравните. Дополнительно проверьте регламентные задания синхронизации — их расписание и активность тоже могут различаться.

Опасно ли сравнение конфигураций для рабочей базы?

Само по себе сравнение безопасно: окно различий только показывает отличия. Опасность представляет кнопка «Выполнить», запускающая объединение, — она изменяет конфигурацию. Правило простое: для анализа просмотрите различия и закройте окно, а любые изменения делайте только после резервной копии.

Итог

Что важно запомнить

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