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