Как найти автора правки документа или справочника по журналу событий 1С

· 9 мин

Содержание

Журнал регистрации в 1С 8.3 открывается через Администрирование → Обслуживание → Журнал регистрации (БП 3.0, ЗУП 3.1, УТ 11) или в любой конфигурации через ≡ → Все функции → Стандартные → Журнал регистрации. Чтобы узнать, кто внёс изменения в документ, задайте отбор по событию Данные. Изменение и по самому документу в поле «Данные». Журнал покажет дату, пользователя, компьютер и программу, из которой была сделана запись.

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

Где включается журнал регистрации и какой уровень выбрать

Журнал работает на уровне платформы, поэтому одинаков во всех конфигурациях. Включать и настраивать его можно только в Конфигураторе.

Порядок такой:

  1. Запустите базу в режиме Конфигуратора под администратором.
  2. Откройте Администрирование → Настройка журнала регистрации.
  3. Выберите уровень регистрации.
  4. Нажмите «ОК». Перезапуск пользователей не нужен, новые события начнут писаться сразу.

Уровни работают по принципу «включает всё, что выше»:

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

Изменения документов и справочников пишутся с важностью «Информация». Если уровень ниже, журнал будет пустым именно там, где он нужен.

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

Уровень можно задать и программно, например из внешней обработки: метод УстановитьИспользованиеЖурналаРегистрации() принимает массив уровней важности.

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

Файлы журнала хранятся в папке 1Cv8Log:

  • 📁 Файловая база — внутри каталога базы, рядом с 1Cv8.1CD.
  • 🖥️ Клиент-серверная база — в каталоге кластера, обычно srvinfo\reg_1541\<идентификатор базы>\1Cv8Log.

Формат бывает двух видов. Последовательный — файлы .lgf и .lgp. Формат SQLite — один файл .lgd. Для анализа это неважно, форма просмотра работает с обоими.

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

Из чего состоит запись журнала

В типовых конфигурациях на БСП журнал открывается в своей форме, а через «Все функции» — в стандартной форме платформы. Колонки у них похожи.

Главные поля записи:

  • 📅 Дата — время события по часам сервера (для файловой базы — по часам компьютера, где база открыта).
  • 👤 Пользователь — имя пользователя информационной базы.
  • 💻 Компьютер — сетевое имя рабочего места.
  • 🧩 Приложение — тонкий клиент, веб-клиент, Конфигуратор, фоновое задание, COM-соединение.
  • 📌 Событие — например, Данные. Изменение, Данные. Проведение, Данные. Удаление, Сеанс. Начало.
  • 🗂️ Метаданные — тип объекта: какой документ, справочник или регистр.
  • 🔗 Данные и Представление данных — ссылка на конкретный объект и его название с номером и датой.
  • 💬 Комментарий — текст ошибки или пояснение.
  • 🔄 Транзакция и Статус транзакции — была ли запись зафиксирована или отменена.

Двойной щелчок по строке открывает карточку события со всеми полями. Из неё можно перейти к самому объекту, если он ещё существует.

Колонку «Статус транзакции» стоит держать на виду. Запись со статусом «Отменена» означает, что пользователь пытался сохранить документ, но транзакция откатилась. В базе этих изменений нет.

Отбор событий: как быстро найти нужную правку

Без отбора журнал выводит события подряд, а в рабочей базе их десятки тысяч в день. Поэтому сначала сужаем поиск.

В форме БСП нажмите «Установить отбор». В стандартной форме платформы отбор вызывается одноимённой командой в командной панели.

Поля отбора, которые реально помогают

ПолеЧто задатьЗачем
ИнтервалПериод, когда могла появиться правкаГлавный фильтр, ускоряет поиск в разы
СобытияДанные. Изменение, Данные. Проведение, Данные. УдалениеУбирает входы, выходы и ошибки
МетаданныеНужный вид документа или справочникаОтсекает всё постороннее
ДанныеКонкретный документ или элемент справочникаПоказывает историю одного объекта
ПользователиОдно или несколько имёнКогда проверяете конкретного сотрудника
КомпьютерыИмя рабочего местаЕсли учётная запись общая на нескольких людей

Пример: кто перепровёл реализацию за прошлый месяц

Задача: в закрытом периоде изменилась сумма продажи, нужно понять, кто трогал документ.

  1. Задайте интервал — с начала прошлого месяца по сегодня.
  2. В «События» отметьте Данные. Изменение и Данные. Проведение.
  3. В «Метаданные» выберите документ «Реализация (акты, накладные, УПД)».
  4. В «Данные» выберите конкретный документ из списка.
  5. Примените отбор и отсортируйте по дате.

Последние строки покажут, кто, когда и с какого компьютера сохранил документ. Если в колонке «Приложение» стоит фоновое задание или COM-соединение — правку сделал не человек, а обмен или регламентная операция .

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

Какие реквизиты изменились: журнал плюс история изменений

Журнал регистрации покажет, что документ сохраняли в 14:32 под пользователем «Иванова». Какую сумму она поменяла и с какой на какую — журнал не знает. Значения реквизитов он не пишет.

Для этого в типовых конфигурациях есть версионирование объектов, в БП 3.0 оно называется «История изменений».

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

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

После этого каждая запись объекта сохраняет его версию целиком.

Как сравнить версии

  1. Откройте документ.
  2. Выберите Ещё → История изменений.
  3. Отметьте две версии и выполните сравнение.

Отчёт подсветит изменённые реквизиты и строки табличных частей: было, стало, кто автор версии.

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

Как сочетать два инструмента

ВопросИнструмент
Кто и когда записывал объектЖурнал регистрации
С какого компьютера и программыЖурнал регистрации
Какие реквизиты поменялись, старые значенияИстория изменений
Был ли объект удалён и кемЖурнал регистрации
Как выглядел документ год назад, до включения историиРезервная копия базы

На практике схема простая. По журналу находите момент и автора. По истории изменений — версию до и после этого момента.

Как найти удалённые документы и справочники

Удаление в 1С проходит в два этапа, и в журнале они выглядят по-разному.

  • 🏷️ Пометка на удаление — объект записывается с признаком пометки. В журнале это событие Данные. Изменение.
  • 🗑️ Окончательное удаление — через Администрирование → Обслуживание → Удаление помеченных объектов или непосредственным удалением. В журнале это Данные. Удаление.

Поиск окончательно удалённых объектов

  1. В отборе укажите событие Данные. Удаление.
  2. В «Метаданные» выберите вид документа или справочника.
  3. Задайте интервал.

В колонке «Данные» ссылка уже битая: объекта в базе нет. Выручает колонка «Представление данных» — там сохранены название, номер и дата документа на момент удаления.

Пользователь в такой записи — тот, кто запустил удаление помеченных. Это не обязательно тот, кто ставил пометку. Чтобы найти автора пометки, ищите по тому же объекту событие Данные. Изменение до момента удаления.

Можно ли вернуть удалённое

Из журнала — нет, он не хранит содержимое объектов. Варианты такие:

  1. Если документ только помечен — снимите пометку в списке, он вернётся в учёт после проведения.
  2. Если удалён окончательно — разверните резервную копию в отдельную базу и перенесите объект оттуда, например через выгрузку и загрузку данных XML.
  3. Если документ простой — проще ввести его заново по данным из копии.

Резервную копию разворачивайте в новую, отдельную базу. Загрузка .dt поверх рабочей базы затрёт всё, что ввели после даты копии.

Выгрузка журнала для анализа за большой период

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

Пример для серверной процедуры внешней обработки: выводит все удаления за последние 7 дней.

&НаСервере
Процедура ПоказатьУдаленияНаСервере()

    Таблица = Новый ТаблицаЗначений;
    Отбор = Новый Структура;
    Отбор.Вставить("ДатаНачала", НачалоДня(ТекущаяДата()) - 7 * 86400);
    Отбор.Вставить("ДатаОкончания", ТекущаяДата());
    Отбор.Вставить("Событие", "_$Data$_.Delete");

    ВыгрузитьЖурналРегистрации(Таблица, Отбор);

    Для Каждого Строка Из Таблица Цикл
        Сообщить(СтрШаблон("%1 | %2 | %3",
            Строка.Дата, Строка.ИмяПользователя, Строка.ПредставлениеДанных));
    КонецЦикла;

КонецПроцедуры

Служебные имена событий данных:

  • _$Data$_.New — добавление;
  • _$Data$_.Update — изменение;
  • _$Data$_.Post — проведение;
  • _$Data$_.Delete — удаление.

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

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

Почему в журнале нет нужных изменений

Чаще всего журнал «молчит» не из-за сбоя, а из-за настроек или способа, которым внесли правку.

Диагностика: выберите симптом

Сокращение журнала без потери истории

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

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

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

Ещё три тонкости при анализе

  • 🕐 Время сервера. Если часы сервера сбиты или стоят в другом часовом поясе, время в журнале не совпадёт с временем у пользователя.
  • 👥 Общие учётные записи. Если пять человек работают под «Бухгалтером», журнал не различит их. Помогает только колонка «Компьютер».
  • 🔄 Обмены. Документ, пришедший из другой базы, будет записан под пользователем обмена. Искать автора нужно в базе-источнике.

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

Сколько хранятся записи журнала регистрации?
Без ограничений, пока журнал не сократят вручную или программно. Срок хранения зависит только от администратора базы и места на диске.
Можно ли открыть журнал регистрации без Конфигуратора?
Да. Просмотр доступен в пользовательском режиме через раздел «Администрирование» или «Все функции». Конфигуратор нужен только для настройки уровня и сокращения журнала.
Видно ли в журнале, что пользователь просто открыл документ?
Нет. Открытие формы без записи в журнал не попадает. Регистрируется запись, проведение, удаление объекта, а также входы и выходы.
Как перенести журнал регистрации в другую базу или на другой сервер?
Скопируйте папку 1Cv8Log вместе с базой. Открыть чужой журнал отдельно от базы стандартными средствами нельзя, но его можно выгрузить в файл методом ВыгрузитьЖурналРегистрации.
Пишет ли журнал изменения, сделанные в Конфигураторе?
Да, обновление и изменение конфигурации фиксируются. Приложение в записи будет «Конфигуратор», что помогает отличить правки разработчика от работы пользователей.