Ситуация, когда в закрытом периоде внезапно меняются данные, знакома многим администраторам и специалистам 1С. Когда стандартный «Запрет изменения данных» не сработал или был проигнорирован, возникает необходимость вычислить «виновника» — документ, который был изменен или перепроведен задним числом. Рассмотрим, как проанализировать историю изменений и найти нарушителя.
В современных конфигурациях 1С присутствует встроенный инструмент «История изменений данных» (доступный через раздел «Стандартные подсистемы» или «Все функции»). Однако, как показывает практика, он не всегда отображает данные корректно. Причины могут быть следующими:
Если штатный отчет не выводит нужную информацию, самым надежным способом будет обращение напрямую к регистру сведений ВерсииОбъектов. Именно там хранятся все «слепки» документов, если в системе включено версионирование. Разберем по шагам, как сформировать такой запрос.
Для поиска документов, дата которых попадает в закрытый период, а версия была создана позже, используем консоль запросов 1С. Напишем код запроса, который сопоставит дату документа и дату создания версии:
ВЫБРАТЬ
ВерсииОбъектов.Объект КАК Документ,
ВерсииОбъектов.НомерВерсии,
ВерсииОбъектов.ДатаВерсии,
ВерсииОбъектов.АвторВерсии
ИЗ
РегистрСведений.ВерсииОбъектов КАК ВерсииОбъектов
ГДЕ
ВерсииОбъектов.ДатаВерсии МЕЖДУ &ДатаВерсии1 И &ДатаВерсии2
И ВерсииОбъектов.Объект.Дата МЕЖДУ &Дата1 И &Дата2
Пояснения к работе запроса:
&Дата1 и &Дата2 — это границы закрытого периода (например, весь ноябрь).&ДатаВерсии1 и &ДатаВерсии2 — это период, когда предположительно произошло незаконное изменение (например, даты после закрытия периода).Если версионирование было отключено, задача усложняется, но не становится невыполнимой. Рассмотрим дополнительные подходы:
.lgf. С помощью внешних утилит или программного кода 1С отфильтруйте события с типом «Данные.Модификация» или «Данные.Проведение» для объектов, входящих в закрытый период.Для эффективной работы с историей изменений рекомендуем:
ОчисткаУстаревшихВерсийОбъектов должно быть настроено так, чтобы хранить историю в течение периода, необходимого для проведения аудита (минимум 3-6 месяцев).АвторВерсии. Это позволит не только найти документ, но и сразу понять, кто именно внес изменения.Надеемся, эти рекомендации помогут вам быстро найти источник изменений и навести порядок в документах закрытого периода. Помните, что прямой запрос к РегистрСведений.ВерсииОбъектов — это ваш главный инструмент в случаях, когда интерфейсные решения показывают «пустоту».