Запуск встроенного в платформу механизма История данных для ленивых

13.05.21

База данных - Журнал регистрации

В последних версиях платформы 1С появился замечательный механизм Истории данных. Если кратко, механизм позволяет сохранять историю, просматривать, сверять и самое приятное, это восстанавливать любую версию объекта. А самое главное, чтобы это заработало, не нужно продумывать, писать и поддерживать тонны кода, все уже сделано за нас... Возникает вопрос: Как запустить встроенный в платформу механизм Истории данных ничего не кодируя?

Файлы

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование Скачано Купить файл
Массовое первоначальное заполнение версии элементов:
.epf 7,82Kb
23 1 850 руб. Купить
Обновление истории данных (фон)
.epf 6,56Kb
7 1 850 руб. Купить

Подписка PRO — скачивайте любые файлы со скидкой до 85% из Базы знаний

Оформите подписку на компанию для решения рабочих задач

Оформить подписку и скачать решение со скидкой

В последних версиях платформы 1С появился замечательный механизм Истории данных. О нем уже много написано к примеру можно посмотреть тут и вот тут.

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

Возникает вопрос: Как запустить механизм Истории данных для справочника,документа...?

-Все что нужно, это в свойствах объекта для свойства "История данных" установить "Использовать" и всё. Больше ничего делать не надо, совсем ничего!!!

 

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

Вести историю механизм позволяет по многим объектам метаданных (справочники, документы, бизнес-процессы, задачи), в том числе и по регистрам сведений.

 

Единственное, если вы решите вести историю по объекту, в котором уже создана куча элементов, вам потребуется для всех элементов создать первую запись/версию. В противном случае, первой записью будет первое изменение элемента пользователем.

 

Для массового заполнения истории по всем элементам, по которым нет истории, была написана обработка. Обработка при запуске определяет все объекты метаданных, у которых история данных установлена в использовать. Остается только выбрать объекты, по которым нужно создать версию. Обработка будет работать, если в конфе есть справочник Пользователи и у него имеется реквизит ИдентификаторПользователяИБ, а так же в ПараметрахСеанса имеется ТекущийПользователь. Обработка создает версию, только для элементов, у которых версии нет. Если справочник, договор и т.д. содержит кучу элементов, то придется подождать продолжительное время, т.к. при создании версии платформа для каждого элемента автоматом создает запись в журнал регистрации.


Ещё нужно учитывать, что автоматом изменения не помещаются в таблицы истории, изменения копятся в очереди на добавление, и чтобы они из очереди попали таблицы истории нужно обновлять историю. Для этого была написана доп. обработка. Если у вас есть механизм БСП: Дополнительные отчеты и обработки, то вы можете добавить эту доп обработку и настроить на неё регламентное задание.

 

Обработка протестирована на платформе 1С:Предприятие 8.3 (8.3.14.1630).

Вступайте в нашу телеграмм-группу Инфостарт

обработка история данных версионирование

См. также

Журнал регистрации Системный администратор 1С v8.3 Управляемые формы 1C:Бухгалтерия Россия Платные (руб)

История изменений реквизитов и табличных частей справочников, документов, независимых регистров сведений, возможность отката изменения, восстановление удаленных объектов, сбор статистики использования базы 1С. Альтернативный журнал регистрации.

22800 руб.

22.02.2018    37413    61    55    

58

Журнал регистрации Системный администратор Программист 1С v8.3 1C:Бухгалтерия Платные (руб)

Журнал регистрации платформы 1С в SQL. Общая база хранения всех журналов. Через com-подключение регламентным заданием периодически догружает журналы регистраций из рабочих баз. Предоставляет настраиваемый доступ к журналам по правам подразделений. Формирует отчеты по пользователям и данным.

12000 руб.

23.05.2014    58140    53    17    

48

Журнал регистрации Программист Россия Бесплатно (free)

В материале рассматривается сравнение двух инструментов для работы с журналом регистрации 1С: утилиты ibcmd и платформы Vector. Описаны их функциональные возможности, тестирование производительности и практическое применение для преобразования логов в формат JSON.

20.11.2024    4844    user1913000    13    

24

Журнал регистрации Тестирование QA Программист Бесплатно (free)

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

21.10.2024    6422    leemuar    8    

24

Инструменты администратора БД Журнал регистрации Системный администратор 1С v8.3 1С:Управление торговлей 11 Абонемент ($m)

Внешняя обработка для регламентного сокращения журнала регистрации для конфигураций на базе БСП и платформы 8.3.20+

1 стартмани

29.12.2023    4005    53    dima_gsv    4    

14

Журнал регистрации Мониторинг Системный администратор Программист Абонемент ($m)

Как легко и быстро с помощью специализированных решений собирать, парсить и передавать логи и метрики.

1 стартмани

19.11.2023    3143    9    AlexSTAL    0    

8

Мониторинг Журнал регистрации Технологический журнал Системный администратор Программист Абонемент ($m)

Как легко и быстро с помощью специализированных решений собирать, парсить и передавать логи и метрики.

1 стартмани

13.11.2023    7911    13    AlexSTAL    0    

48

Журнал регистрации Инструменты администратора БД Мониторинг Мессенджеры и боты Системный администратор Программист 1С v8.3 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Управление холдингом 1С:Комплексная автоматизация 2.х Абонемент ($m)

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

3 стартмани

26.09.2023    4692    29    doom2good    16    

15
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. ellavs 1070 24.05.19 12:27 Сейчас в теме
Насколько поняла этот механизм, есть проблема с регистрами. А именно - удаление строки в регистре, удаляет всю историю по ней (т.к. у регистра отсутствует понятие пометки на удаление). Т.е. историю изменения строки регистра хранит, а вот удаление сводит это преимущество на нет, т.к. если пользователь понял, что накосячил, ему легче просто взять и удалить строку, чтобы никто не увидел в истории, что он там наделал :) Может конечно в последних версиях платформы это поправили?
2. _root 181 24.05.19 12:41 Сейчас в теме
Проблемы с Регистрами сведений нет, просто сверять можно только версии изменения и добавления, а версию удаления сверить нельзя. В принципе ничего страшного в этом нет...
3. alalexmix 25 24.05.19 17:53 Сейчас в теме
Как пример - версионирование и сравнение добавленных, измененных и удаленных записей регистра сведений - публикация для платформ, где еще нет механизма "История изменения данных" - Версионирование регистров сведений (необъектных данных)
4. ellavs 1070 25.05.19 10:35 Сейчас в теме
(3) да, как раз что-то вроде такого и думали городить. Кстати, не увидела у них функционала по поводу удаленных записей. По скринам видно, что для просмотра версий, всё равно нужно выбрать какую-то существующую запись. Не совсем ясно, как у них реализовано сохранение версий удаленных записей.
5. _root 181 25.05.19 10:50 Сейчас в теме
(4) Функционал по удаленным записям реализуется уже программными средствами...
6. ellavs 1070 25.05.19 12:16 Сейчас в теме
(5) это понятно. Я просто комментировала тот софт, на который дал ссылку (3). Там софт платный, а реализовали ли они как раз программную обработку удаления не совсем ясно.
7. alalexmix 25 28.05.19 10:25 Сейчас в теме
(6) Добрый!

Вкратце реализовано - через хранение ключа записи, а при выборе нужного ключа записи видна история изменений (версии записей) - разница между предыдущей (добавленной или измененной) записи с текущей (измененной или удаленной) записи регистра.
8. Craig 280 29.05.19 10:34 Сейчас в теме
А где хранятся версии?
9. _root 181 29.05.19 11:29 Сейчас в теме
(8) История данных хранится в специальных таблицах той же информационной базы, для которой настраивается версионирование.
Источник
10. PetroP 10.07.19 15:31 Сейчас в теме
1. Какие преимущества и недостатки по сравнению с подсистемой версионирования из БСП?
2. Почему в самых последних БСП все еще не используется данный функционал?
11. _root 181 10.07.19 18:11 Сейчас в теме
(10)
Этот механизм родился из БСП. В БСП существует аналогичный функционал, хранящий историю в регистре сведений. 1С перенесла данный функционал из БСП в платформу, она часто это делает.

Достоинства описаны выше. Недостатков больших не вижу...
12. PetroP 11.07.19 12:11 Сейчас в теме
(11) Смущает другое. Почему, если все так радужно, в БСП 3.1.1 не используется этот новый функционал...
Может кто где-то на партнерке общается и что-то слышал.
13. Cyberhawk 137 16.01.20 11:10 Сейчас в теме
Обработка не учитывает, что история данных может быть включена только в режиме предприятия (а в метаданных отключена).
Чтобы это поправить, добавил ветку "Иначе" в метод "ЗаполнитьОбъектыЗаполненияПоТипуМетаданных":
		Иначе
			НастройкиИсторииДанных = ИсторияДанных.ПолучитьНастройки(ЭлКоллекции);
			Если НастройкиИсторииДанных <> Неопределено И НастройкиИсторииДанных.Использование Тогда
				мОбъектыЗаполнения.Добавить(ЭлКоллекции.ПолноеИмя());
			КонецЕсли;
Для отправки сообщения требуется регистрация/авторизация