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

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

Как включить историю изменений в 1С

Пошаговая инструкция по включению истории изменений в 1С через версионирование объектов: настройка, просмотр версий, ограничения и типичные ошибки.

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

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

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

Что такое версионирование объектов и как оно работает

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

Хранятся версии в специальном регистре сведений «Версии объектов» внутри информационной базы. Данные обычно сериализуются в формате XML, поэтому объём хранения зависит от количества версионируемых объектов и частоты их изменений. При активной работе пользователей регистр может расти заметно, и это нужно учитывать.

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

Где находится настройка в типовых конфигурациях

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

Внутри находится пункт «Версионирование объектов» или ссылка «Настройки версионирования объектов». В 1С:Бухгалтерии путь обычно такой: Администрирование → Общие настройки → Версионирование объектов. В Управлении торговлей и ERP: НСИ и администрирование → Администрирование → Поддержка и обслуживание.

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

Пошаговое включение истории изменений

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

Порядок действий
  1. 1
    Откройте раздел «Администрирование» (или «НСИ и администрирование»).
  2. 2
    Перейдите в «Общие настройки» или «Поддержка и обслуживание».
  3. 3
    Найдите пункт «Версионирование объектов» и откройте его.
  4. 4
    Установите флаг «Версионировать объекты» (или выберите режим «Версионировать»).
  5. 5
    В таблице видов объектов отметьте нужные: документы, справочники — и задайте для каждого режим хранения.
  6. 6
    Сохраните настройки и проверьте работу на тестовом объекте.

Для каждого вида объектов можно задать отдельный режим: «Версионировать», «Версионировать при проведении» (для документов) или «Не версионировать». Режим «при проведении» экономит место: версии создаются только при проведении документа, а не при каждом сохранении черновика.

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

Как посмотреть историю изменений конкретного объекта

После включения механизма откройте любой документ или элемент справочника, для которого настроено версионирование, и внесите тестовое изменение — например, измените комментарий и запишите объект. Затем найдите в форме кнопку «История изменений» — обычно она расположена в меню «Ещё» или на командной панели формы.

Откроется список версий с указанием номера версии, даты, времени и пользователя. Выделив две версии (с зажатой клавишей Ctrl), можно выполнить сравнение: система покажет отчёт, в котором подсвечены изменённые реквизиты — старое и новое значение.

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

Контрольные точки

Как проверить результат

Кнопка «История изменений» в форме объекта
Норма

Кнопка доступна, открывается список версий

Тревожный признак

Кнопки нет — версионирование не включено для этого вида объектов

Новая версия после записи
Норма

После изменения объекта появляется версия с вашим именем и текущим временем

Тревожный признак

Версия не создаётся — проверьте режим версионирования и права

Сравнение версий
Норма

Отчёт показывает старые и новые значения реквизитов

Тревожный признак

Отчёт пустой, хотя изменения были — объект записан без фактических изменений

Ограничения и влияние на производительность

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

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

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

Альтернативы и дополнительные инструменты аудита

Если штатного версионирования недостаточно, есть дополнительные варианты. Журнал регистрации (Администрирование → Поддержка и обслуживание → Журнал регистрации) позволяет отфильтровать события изменения данных по пользователю и объекту — он не покажет старые значения, но подтвердит факт и время изменения.

Для конфигураций, где подсистема версионирования не внедрена, существует платформенный механизм «История данных» (доступен в платформе 8.3.11 и новее). Он настраивается через конфигуратор или программно и хранит историю на уровне платформы, а не прикладного кода. Это вариант для самописных и сильно доработанных конфигураций.

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

Сравнение вариантов

Версионирование объектов (БСП)

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

Журнал регистрации

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

История данных (платформа)

Платформенный механизм для конфигураций без БСП. Требует настройки в конфигураторе и прав администратора кластера.

Собственная разработка

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

Типичные ошибки при настройке

Типичные ошибки
01
Включение версионирования и ожидание истории за прошлые периоды — механизм не работает задним числом, версии начинают создаваться только после включения.
02
Выбор режима «Версионировать» для всех документов без ограничения — регистр быстро растёт, база увеличивается, замедляется запись.
03
Настройка без проверки прав — рядовые пользователи не видят кнопку «История изменений», если у них нет соответствующей роли.
04
Отсутствие регламентной очистки старых версий — через год-два регистр занимает значительную часть базы, хотя старые версии уже никому не нужны.
05
Попытка найти версионирование в самописной конфигурации — если подсистема не внедрена, настройки в интерфейсе просто не будет.

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

Часто задаваемые вопросы

Можно ли узнать, кто изменил документ, если версионирование не было включено?

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

Почему кнопка «История изменений» есть, но список версий пустой?

Наиболее вероятные причины: объект не изменялся после включения версионирования, для этого вида объектов задан режим «Не версионировать» или «Версионировать при проведении» (а документ записан без проведения). Проверьте настройку для конкретного вида объекта и внесите тестовое изменение.

Сильно ли версионирование замедляет работу базы?

При точечной настройке (несколько видов критичных документов и справочников) влияние на скорость записи практически незаметно. Замедление становится ощутимым при версионировании всех объектов в базе с интенсивной работой пользователей и при массовых обработках данных.

Как удалить старые версии, чтобы уменьшить размер базы?

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

Работает ли версионирование в файловой базе?

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

Что делать, если в конфигурации нет пункта «Версионирование объектов»?

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

Итог

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

История изменений в типовых 1С включается через «Администрирование» → «Версионирование объектов»: установите флаг, выберите виды объектов и режим хранения. Просмотр версий — из формы объекта по кнопке «История изменений». Механизм работает только с момента включения, увеличивает объём базы, поэтому настраивайте его точечно и не забывайте про очистку старых версий.