Кто создал, изменил или удалил документ в 1С: где смотреть следы пользователя
Содержание
Найти пользователя, который работал с документом в 1С, проще всего через журнал регистрации: Администрирование → Обслуживание → Журнал регистрации, отбор по полю «Данные» с выбранным документом. Журнал покажет, кто и когда документ создал, записал, провёл, отменил проведение или удалил, с какого компьютера и в каком сеансе.
Частое заблуждение: «автор документа указан в поле „Ответственный“». Это поле заполняется при создании, но его можно поменять руками, а при копировании оно встаёт по текущему пользователю. Для спорных случаев доказательство одно: системные записи — журнал регистрации и история изменений. Описанное ниже относится к платформе 8.3 и типовым конфигурациям на БСП (БП 3.0, ЗУП 3.1, УТ 11), общие механизмы работают в любой конфигурации.
Что видно в самом документе: «Ответственный» и комментарий
Начните с формы документа, это занимает полминуты. В БП 3.0 и ЗУП 3.1 у большинства документов внизу формы есть поле «Ответственный». В УТ 11 похожее поле есть у многих документов, но называется и стоит по-разному.
Что о нём нужно знать:
- 👤 при создании нового документа туда подставляется текущий пользователь;
- ✏️ пользователь с правом редактирования может поменять значение;
- 📋 при копировании документа «Ответственный» берётся заново, по тому, кто копирует;
- 🔁 при перезаписи или перепроведении поле не меняется — последнего редактора оно не показывает.
Поле «Комментарий» тоже иногда помогает: бухгалтеры пишут туда «исправила по письму клиента» и подобное. Но это свободный текст, доказательством он не служит.
Если документ загружен обменом или обработкой, в «Ответственном» часто стоит служебный пользователь обмена или вообще пусто. Это нормальная картина, а не признак ошибки.
Итог: реквизиты формы отвечают на вопрос «кто, скорее всего, ввёл документ». Кто его менял потом — смотрите в журнале.
Журнал регистрации: как найти пользователя по документу
Журнал регистрации ведёт сама платформа, он есть в любой базе. Открыть его можно двумя способами:
- в пользовательском режиме типовой конфигурации:
Администрирование → Обслуживание → Журнал регистрации; - в Конфигураторе:
Администрирование → Журнал регистрации.
Для просмотра нужны права администратора или отдельное право на журнал регистрации. Если раздела не видно, проблема в правах, а не в базе.
Отбор по конкретному документу
- Откройте журнал и нажмите кнопку настройки отбора (в форме БСП — «Отбор» или «Установить отбор»).
- Задайте период: от даты создания документа до сегодняшнего дня. Широкий период на большой базе открывается долго, поэтому сужайте его, если знаете примерные даты.
- В поле «Данные» выберите тип «Документ» нужного вида и сам документ из списка.
- Если документ уже удалён и выбрать его нельзя — используйте поле «Представление данных» и впишите номер, например
00БП-000123. - Примените отбор и отсортируйте по дате.
Какие события смотреть
| Событие в журнале | Что значит |
|---|---|
Данные. Добавление | документ впервые записан в базу — это и есть автор |
Данные. Изменение | документ перезаписали без проведения или поменяли пометку удаления |
Данные. Проведение | документ провели (в том числе повторно) |
Данные. Отмена проведения | проведение отменили |
Данные. Удаление | документ удалён из базы физически |
У каждой строки есть колонки «Пользователь», «Компьютер», «Приложение» и «Сеанс». Колонка «Приложение» подскажет, откуда шло изменение: тонкий клиент, веб-клиент, фоновое задание или COM-соединение.
Журнал хранит факт события, но не сами значения. Он скажет «Иванова изменила документ в 14:32», но не скажет, что она поменяла сумму с 12 000 на 21 000. Для этого нужна история изменений из следующего раздела.
Когда журнал молчит
Если по документу пусто, проверьте три вещи:
- 🔧 уровень регистрации. В Конфигураторе:
Администрирование → Настройка журнала регистрации. При уровне «Регистрировать ошибки» изменения данных в журнал не попадают; - ✂️ журнал сократили. Администраторы иногда чистят его для экономии места, старые события уходят безвозвратно, если не сохранили выгрузку;
- 👥 в базе нет списка пользователей. Тогда колонка «Пользователь» пустая у всех событий, и отличить людей можно только по компьютеру.
История изменений в типовых: какое поле поменяли и на что
Журнал отвечает «кто и когда». Чтобы увидеть «что именно», включите версионирование объектов. Это механизм БСП, он есть в БП 3.0, ЗУП 3.1, УТ 11 и других современных типовых.
Как включить
- Откройте
Администрирование → Общие настройки. - В группе «История изменений» установите флажок хранения истории.
- Откройте настройку хранения и укажите, для каких документов вести версии. Есть варианты «при записи» и «при проведении».
- Задайте срок хранения версий, чтобы база не разрасталась.
Как посмотреть
Откройте документ и выберите в меню Ещё команду «История изменений». Откроется список версий: номер, дата, автор версии и комментарий. Выделите две версии и сравните их — программа подсветит отличающиеся реквизиты и строки табличных частей.
Отсюда же можно открыть старую версию документа и, при наличии прав, вернуться к ней.
История изменений не работает задним числом. Версии начинают копиться только после включения флажка. Если документ правили до этого — по нему будут только записи журнала регистрации.
Сколько это стоит базе
Каждая версия хранится целиком. Для документов с сотнями строк, например большой реализации или начисления зарплаты на 300 сотрудников, рост базы заметен. Поэтому включайте версионирование выборочно: на кассовые и банковские документы, акты, документы по зарплате — там, где чаще возникают споры.
История данных платформы: следы без БСП
Начиная с платформы 8.3.11 есть собственный механизм «История данных». Он не зависит от БСП и пригодится в нетиповых и сильно доработанных конфигурациях, где нет команды «История изменений».
Как устроен механизм:
- 🧩 история включается в Конфигураторе в свойствах конкретного объекта метаданных (свойство «История данных»), можно выбрать отдельные реквизиты;
- 🗂 платформа сохраняет версии с указанием пользователя и времени;
- ⏳ версии сначала попадают в очередь и обрабатываются отдельно, поэтому свежее изменение может появиться в истории не мгновенно.
Чтобы история стала видна пользователям, нужен интерфейс: в части типовых он уже встроен, в самописных его делает программист через объект ИсторияДанных. Изменение свойства объекта — это правка конфигурации. Для типовой на поддержке её делают через расширение или со снятием объекта с поддержки, решение принимает тот, кто сопровождает базу.
Какой механизм выбрать
| Механизм | Что покажет | Ограничения |
|---|---|---|
| Поле «Ответственный» | кто ввёл документ | можно изменить вручную |
| Журнал регистрации | кто, когда, с какого ПК | нет значений до и после |
| История изменений (БСП) | какие поля поменялись и кем | только после включения |
| История данных (платформа) | версии объекта с автором | нужна настройка в Конфигураторе |
| SQL-запросы к базе | состояние данных сейчас | имени пользователя 1С нет |
Файлы журнала: поиск, когда в базу не зайти
Иногда база не открывается, лицензий нет, или нужно проверить журнал на копии. Журнал — это обычные файлы, их можно забрать и изучить отдельно.
Где лежат файлы:
- файловая база — в каталоге базы, подпапка
1Cv8Log; - клиент-серверная — на сервере 1С:
srvinfo\reg_1541\<идентификатор базы>\1Cv8Log.
Форматов два. Старый — текстовые файлы .lgp и .lgf. Новый — один файл .lgd, это база SQLite. Формат выбирается в Конфигураторе в той же настройке журнала регистрации.
С файлом .lgd можно работать двумя путями:
- Скопировать папку
1Cv8Logк пустой или копии базы и смотреть журнал штатно. Удобно, если в основной базе журнал тормозит. - Открыть
.lgdлюбым просмотрщиком SQLite и искать запросами. Пользователи и объекты метаданных хранятся в нём как коды в отдельных таблицах-справочниках, поэтому начните со списка таблиц и их структуры.
-- в консоли sqlite3: посмотреть, какие таблицы есть в файле журнала
.tables
.schema
Работайте с копией файла. Сервер 1С держит журнал открытым и дописывает его, правка или блокировка оригинала может испортить журнал.
SQL-аудит: что можно узнать из СУБД, а что нельзя
В клиент-серверной базе документы лежат в таблицах СУБД с именами вида _Document123. Возникает соблазн найти автора там. Но поля «кто изменил» в этих таблицах нет, а все подключения к СУБД идут от одной учётной записи сервера 1С.
Что из этого следует:
- 🚫 SQL Server Audit, Change Tracking или аналоги в PostgreSQL покажут, что строку изменил сервер 1С, но не скажут, кто из пользователей 1С это сделал;
- ✅ SQL полезен для другого: сравнить данные текущей базы с резервной копией и понять, когда появилось расхождение. А уже по этой дате идти в журнал регистрации;
- ✅ запросами можно проверить, есть ли документ физически в таблице, если в интерфейсе его не видно.
Только чтение. Любые UPDATE и DELETE напрямую в таблицах 1С обходят проведение, проверки и регистрацию изменений. После этого журнал и история перестают отражать реальность, а база может стать неконсистентной.
Для сопоставления документа с записью в СУБД нужен его внутренний идентификатор. Его даёт навигационная ссылка: откройте документ и нажмите Shift+F11 («Получить ссылку»). В ссылке вида e1cib/data/Документ.РеализацияТоваровУслуг?ref=... после ref= стоит идентификатор, по которому строится значение поля _IDRRef. Порядок байтов в нём переставлен, поэтому сравнивать «в лоб» строки не получится, нужен пересчёт.
Нюансы для фоновых заданий, обменов, облака
Кто «работал с документом» — не всегда человек. Перед тем как обвинять коллегу, посмотрите колонку «Приложение» и сеанс.
Особенности по режимам работы базы:
- 🖥 Файловая база. Журнал лежит рядом с базой. Его легко скопировать, но так же легко удалить: любой, у кого есть доступ к папке, может стереть
1Cv8Log. - 🏢 Клиент-серверная база. Журнал на сервере 1С, пользователи к нему доступа не имеют. Это надёжнее для разборов.
- 🌐 Веб-клиент и публикация через веб-сервер. В колонке «Компьютер» будет имя веб-сервера, а не ПК пользователя. Определить человека можно только по учётной записи 1С.
- ☁️ Облако (1С:Фреш, аренда у партнёра). Прав администратора у вас часто нет. Журнал регистрации обычно доступен в приложении, а файлы журнала — только через провайдера по запросу.