В течение моей работы в сфере разработки и сопровождения различных конфигураций 1С вопрос, кто и когда изменил тот или иной объект базы, возникал везде и всегда. В крупных корпорациях, где число пользователей информационных систем может достигать нескольких сотен и даже тысяч, а изменение справочной и отчетной информации может повлечь серьезные последствия для бизнеса, возможность отслеживания истории этих изменений должна быть обязательно.
Основная польза подсистем регистрации истории изменения данных в том, что они выполняют функцию контроля качества работы с данными и существенно сокращают процент их ошибочного изменения, случайного либо умышленного. Во-вторых, если уж такое произошло, хранилище истории позволяет быстро восстановить испорченные объекты или скомпенсировать последствия их изменения. Кроме этого история предоставляет важные статистические сведения, позволяющие анализировать и корректировать рабочие процессы, получать показатели производительности сотрудников и пр.
Конечно, за все в этом мире приходится платить. В случае хранения истории - это в основном дисковое пространство. Временная задержка при записи объектов для представленной системы составляет около 3-5% общего времени (зависит от используемого оборудования).
Назначение разработки
Разработка предоставляет возможность записи и хранения изменений любых объектов ссылочного типа. Формирует хронологию работы пользователей с базой данных. Позволяет произвести быстрый поиск версии объекта БД по указанным параметрам и восстановить данные выбранной версии.
Состав подсистемы
- Обработка "ВерсииОбъектовБД" - основной объект подсистемы
- Регистр сведений "ХранилищеВерсий"
- Подписки на события "ИсторияИзменения_Документы", "ИсторияИзменения_Справочники"
- Общий модуль "ИсторияВерсийОбъектов" содержит обработчики подписок и сервисные функции
- Служебный справочник хранения настроек "ДопКонстанты"
К публикации приложена пустая конфигурация с объектами подсистемы регистрации версий объектов.
Просмотр истории изменений объектов
Открытие формы отчета по истории справочника:
Форма истории версий:
В левой части формы отображения истории расположен список версий с указанием номера версии, даты и автора изменения и краткое описание изменений относительно предыдущей версии. В правой части формы - панель подробного описания изменений выбранной версии.
Вызов истории версий документа:
История изменения выбранного документа:
По кнопке "Отбор" открывается форма отбора версий. Возможен отбор по периоду изменений, по автору, по имени или значению выбранного реквизита, отбор измененных строк выбранной табличной части по набору значений ключевых полей, по указанному значению выбранной колонки.
Отбор версий с изменением значения реквизита "Ответственный":
Результат отбора версий с изменением ответственного:
Отбор измененных строк с указанным значением ключевого поля:
Результат отбора строк по ключу:
Если в истории по ключевому набору полей найдена только одна строка, то отображаются только эти ключевые поля и поля с измененными значениями.
Откат изменений объекта
Кнопка "Вернуться к предыдущей версии" возвращает данные обекта в состояние на момент перед изменениями версии, выбранной в списке.
Результат восстановления данных:
Восстановление данных регистрируется в новой версии истории изменения восстановленного объекта.
Включение/выкл записи истории
По кнопке "Настройка" открывается форма вкл/выкл записи истории для объектов конфигурации: