Кто и когда поменял документ в 1С: журнал регистрации, версии объектов, технологический журнал

· 9 мин

Содержание

Посмотреть историю изменений в 1С можно двумя способами. Журнал регистрации показывает, кто, когда и с какого компьютера записал, провёл или удалил объект: Администрирование → Обслуживание → Журнал регистрации. Если нужно увидеть, какие именно реквизиты поменялись (было 15 000, стало 1 500), включите историю изменений объектов: Администрирование → Общие настройки → История изменений.

Типичная ситуация: в закрытом квартале «уехала» сумма реализации, а все в бухгалтерии говорят, что ничего не трогали. Журнал подскажет, кто и в какой момент перепровёл документ. История версий покажет, что конкретно стало другим. Технологический журнал и отладчик нужны, когда объект меняет не человек, а обработка, обмен или регламентное задание.

Как включить и настроить журнал регистрации

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

Проверить уровень можно двумя путями:

  1. В Конфигураторе: Администрирование → Настройка журнала регистрации.
  2. В режиме 1С:Предприятие через Все функции → Стандартные → Журнал регистрации (сама команда «Все функции» включается в Сервис и настройки → Параметры, флажок «Отображать команду “Все функции”»).

В окне настройки выберите уровень регистрации:

УровеньЧто попадает в журналКогда выбирать
Не регистрироватьНичегоНикогда для рабочей базы
Регистрировать ошибкиТолько ошибкиНет смысла, если нужна история
Регистрировать ошибки и предупрежденияОшибки, предупрежденияМинимум для небольшой базы
Регистрировать ошибки, предупреждения и информациюПлюс записи данных, входы, проведениеЕсли не хватает места
Регистрировать все событияВсё, включая примечанияРекомендуемый вариант для аудита

Если уровень стоял на «ошибках», события до момента переключения уже не восстановить. Журнал начнёт писать историю только с той минуты, как вы сохраните новую настройку.

Там же задаётся разделение журнала по периодам (день, неделя, месяц, год) и кнопка сокращения журнала. Сокращение удаляет старые записи безвозвратно, поэтому перед ним выгрузите нужный период в файл.

Где лежат файлы журнала

  • 📁 Файловая база — папка 1Cv8Log внутри каталога базы.
  • 🖥️ Клиент-серверная база — srvinfo\reg_1541\<идентификатор базы>\1Cv8Log на сервере 1С.
  • 🗂️ Формат: файл 1Cv8.lgd (SQLite) или последовательный формат из файлов .lgf и .lgp. Последовательный формат удобнее для больших баз, его проще архивировать по периодам.

💡 Папку журнала стоит включить в резервное копирование . При переносе базы через выгрузку .dt журнал регистрации не переносится.

Поиск изменений в документах и справочниках через журнал

Откройте журнал и нажмите «Установить отбор». Для поиска изменений конкретного документа достаточно трёх полей.

  1. Интервал — период, когда, по вашему мнению, произошло изменение. Чем уже, тем быстрее отбор: на базе в 50 ГБ журнал за год может открываться минутами.
  2. События — отметьте группу «Данные»: Данные. Добавление, Данные. Изменение, Данные. Удаление, Данные. Проведение, Данные. Отмена проведения.
  3. Метаданные — выберите нужный вид объекта, например документ «Реализация (акт, накладная, УПД)» или справочник «Номенклатура».

Если известен сам документ, заполните поле Данные: выберите ссылку на конкретный объект. В списке останутся только события по нему.

В каждой строке журнала видно:

  • 👤 пользователя;
  • 🕒 дату и время с точностью до секунды;
  • 💻 компьютер и приложение (тонкий клиент, веб-клиент, COM-соединение, фоновое задание);
  • 🔢 номер сеанса и признак транзакции;
  • 📄 представление объекта («Реализация 0000-000123 от 15.03»).

Журнал регистрации фиксирует факт записи, но не хранит значения реквизитов. По нему видно, что Петрова перепровела документ 15 марта в 17:42. Какая строка табличной части поменялась, журнал не покажет.

Как отличить ручное изменение от автоматического

Посмотрите колонку «Приложение». Если там «Фоновое задание» или «COM-соединение», документ менял обмен, регламентное задание или внешняя программа. В этом случае пользователь в строке — это учётная запись, под которой работает обмен, а не человек.

💡 Чтобы показать журнал коллеге или аудитору, выгрузите отобранные записи: в меню «Еще» есть сохранение в файл. Табличный документ из журнала также сохраняется в Excel.

История изменений объектов: что было и что стало

Чтобы видеть значения реквизитов до и после правки, в типовых конфигурациях на БСП (Бухгалтерия 3.0, ЗУП 3.1, УТ 11, ERP, КА) есть подсистема версионирования объектов.

Как включить в Бухгалтерии предприятия 3.0:

  1. Откройте Администрирование → Общие настройки.
  2. В группе «История изменений» установите флажок «Хранить историю изменений».
  3. Нажмите ссылку «Настроить» и для нужных видов объектов выберите режим: не хранить, хранить при записи или хранить при проведении (для документов).

После этого в форме документа или элемента справочника появляется команда «История изменений» (обычно в меню «Еще»). Она открывает список версий: номер, автор, дата, комментарий.

КонфигурацияГде включается история изменений
Бухгалтерия предприятия 3.0Администрирование → Общие настройки
ЗУП 3.1Администрирование → Общие настройки
УТ 11, КА 2, ERPНСИ и администрирование → Администрирование → Общие настройки

Что умеет список версий:

  • 📋 открыть отчёт по одной версии — снимок документа на тот момент;
  • 🔍 выделить две версии и сравнить их: изменённые реквизиты и строки табличных частей подсвечиваются;
  • ↩️ вернуться к выбранной версии, если правка была ошибочной.

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

История занимает место в базе. Для крупного документооборота включайте хранение выборочно: договоры, приходы, реализации, кадровые приказы. Для справочника номенклатуры с ежедневной загрузкой цен из обмена хранение каждой записи быстро раздует таблицу версий.

Что именно нужно узнать?

Действия пользователей и права доступа

Журнал помогает восстановить хронологию работы конкретного сотрудника. Поставьте отбор только по пользователю и интервалу, без отбора по событиям. Получится лента: вход в программу, открытие и запись документов, выход.

Полезные события для разбора:

  • 🔑 Сеанс. Начало и Сеанс. Завершение — когда человек входил и сколько работал;
  • ❌ события аутентификации с ошибкой в группе «Сеанс» — попытки входа с неверным паролем;
  • 👥 Пользователи. Новый, Пользователи. Изменение, Пользователи. Удаление — кто менял учётные записи и их роли в списке пользователей информационной базы;
  • 🗑️ Данные. Удаление — непосредственное удаление объектов (а не установка пометки).

Пометка на удаление в журнале отражается как обычное изменение объекта. Если нужен именно момент удаления помеченных объектов, ищите события удаления в день, когда запускали обработку удаления помеченных.

Права самого сотрудника удобно проверить в карточке пользователя: Администрирование → Настройки пользователей и прав → Пользователи. Там видны группы доступа и отчёт о правах. Сопоставьте его с журналом: если в журнале есть изменение документа, а по группам доступа у человека права на этот документ нет, значит, права меняли, и это видно в событиях группы «Пользователи» или в истории групп доступа.

💡 Чтобы просматривать журнал регистрации, у пользователя должно быть право «Журнал регистрации» в одной из ролей. Рядовым бухгалтерам его обычно не дают, поэтому разбор делает администратор.

Технологический журнал: когда журнала регистрации мало

Технологический журнал (ТЖ) — это низкоуровневый лог платформы. Он пишет запросы к СУБД, исключения, блокировки, вызовы сервера. Для бухгалтера он избыточен. Для программиста и администратора это способ поймать изменение, которое делает код: обмен, подписка на событие, регламентное задание.

ТЖ включается файлом logcfg.xml в каталоге conf платформы, например C:\Program Files\1cv8\conf\logcfg.xml. На сервере файл кладут на машину с рабочими процессами. Пример настройки, который пишет исключения и запросы к СУБД длиннее одной секунды:

<?xml version="1.0" encoding="UTF-8"?>
<config xmlns="http://v8.1c.ru/v8/tech-log">
  <log location="D:\TechLog" history="24">
    <event>
      <eq property="name" value="EXCP"/>
    </event>
    <event>
      <eq property="name" value="DBMSSQL"/>
      <gt property="duration" value="1000000"/>
    </event>
    <property name="all"/>
  </log>
</config>

Атрибут history задаёт, сколько часов хранить логи. Длительность duration на платформе 8.3 указывается в микросекундах: 1 000 000 — это одна секунда.

Как работать с ТЖ при расследовании:

  1. Включите журнал на короткое время, когда изменение воспроизводится.
  2. Найдите в логах событие DBMSSQL с текстом UPDATE или INSERT в таблицу нужного объекта.
  3. Посмотрите свойства события: пользователь (Usr), контекст (Context) — в нём виден модуль и строка кода, откуда пришла запись.

ТЖ с отбором property name="all" без фильтров за час может занять десятки гигабайт и нагрузить диск сервера. Ставьте фильтры по событиям и по базе, указывайте отдельный диск и выключайте журнал сразу после сбора данных. Удаление logcfg.xml выключает запись без перезапуска сервера: платформа перечитывает файл примерно раз в минуту.

Отладчик: как поймать момент изменения

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

Порядок действий:

  1. Откройте копию базы в Конфигураторе.
  2. Найдите модуль объекта нужного документа и поставьте точку останова в процедурах ПередЗаписью, ПриЗаписи или ОбработкаПроведения.
  3. Запустите 1С:Предприятие в режиме отладки (F5).
  4. Повторите действие, после которого документ меняется: запуск обмена, проведение, групповую обработку.
  5. Когда сработает точка останова, откройте стек вызовов. В нём видно, какая процедура и какой модуль инициировали запись.

Если изменение делает фоновое или регламентное задание на сервере, отладку на сервере нужно разрешить. Для этого служба агента сервера 1С запускается с ключом -debug. Это меняет параметры службы и требует её перезапуска, а перезапуск обрывает все сеансы пользователей. Делайте это только на тестовом сервере или в согласованное окно.

💡 В меню отладки включите «Остановку по ошибке». Если изменение сопровождается исключением, отладчик сам остановится в нужной строке.

Подписки на события и расширения

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

  • 🔗 ветку «Общие → Подписки на события» в дереве конфигурации: источник, событие (ПриЗаписи, ПередЗаписью) и обработчик;
  • 🧩 подключённые расширения: Конфигурация → Расширения конфигурации;
  • 🗂️ внешние обработки заполнения и дополнительные обработки, назначенные документу.

Сравнение версий конфигурации и данных

Иногда вопрос звучит не «кто поменял документ», а «кто поменял программу». Ответ даёт сравнение конфигураций.

ЗадачаИнструментГде найти
Сравнить текущую конфигурацию с файлом .cfСравнение конфигурацийКонфигурация → Сравнить конфигурации
Увидеть, кто и когда помещал измененияИстория хранилищаКонфигурация → Хранилище конфигурации → История хранилища
Сравнить две версии из хранилищаИстория хранилищаВыделить две версии → сравнение
Сравнить два состояния документаИстория изменений объектаФорма объекта → «История изменений»
Сравнить данные двух базВыгрузка и сверка отчётовОтчёты, например оборотно-сальдовая ведомость, в каждой базе

История хранилища показывает автора, дату, комментарий и список изменённых объектов метаданных по каждой версии. Если разработка ведётся без хранилища, держите копии .cf перед каждым изменением: без них сравнивать будет не с чем.

Для данных полезен приём со снимками: перед закрытием периода сохраните ключевые отчёты (ОСВ, книги покупок и продаж) в файлы. При расхождении сравните сохранённый отчёт с текущим, найдите счёт и период с разницей, а затем по журналу регистрации ищите документы этого периода, изменённые после даты снимка.

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

Сколько хранится журнал регистрации?
Бессрочно, пока его не сократят вручную или не удалят папку 1Cv8Log. Ограничивает только место на диске.
Можно ли узнать, кто изменил документ, если журнал был выключен?
Частично. Посмотрите поле «Ответственный» или «Автор» и комментарий в самом документе. Восстановить точное время и прежние значения без журнала и версий нельзя, помогут только старые резервные копии базы.
Видны ли в журнале изменения, сделанные через Конфигуратор?
Обновление конфигурации базы данных фиксируется в журнале отдельным событием, но без списка изменённых объектов: его даёт сравнение конфигураций. Правку данных обработкой из Конфигуратора журнал покажет как запись данных с приложением «Конфигуратор».
Почему в журнале нет нужного документа, хотя его точно меняли?
Проверьте уровень регистрации и интервал отбора. Ещё одна причина — журнал сократили или база восстановлена из выгрузки .dt, при которой журнал не переносится.
Хранится ли история изменений регистров сведений?
Подсистема версионирования в типовых конфигурациях работает с документами и справочниками. Изменения записей регистров ищите через журнал регистрации по метаданным регистра.