Конфигурация LogiCH эффективно решает проблему хранения и анализа записей журналов регистрации. Разработка использует столбцовую СУБД ClickHouse, одну из самых быстрых Big Data OLAP СУБД. Любой анализ журнала можно выполнить в одном отчете,...
История изменений реквизитов и табличных частей справочников, документов, независимых регистров сведений, возможность отката изменения, восстановление удаленных объектов, сбор статистики использования базы 1С. Альтернативный журнал регистрации.
Арт.: 702046
Продано: 31
• история изменений реквизитов справочников/документов/регистров сведений;
• лог действий, определенных администратором и не связанных с объектами ИБ
• подробная история изменений из формы объекта;
• поиск в истории по значению реквизита;
• откат к выбранной версии объекта;
• групповой откат изменений;
• восстановление удаленных объектов с сохранением ссылочной целостности;
• хранение истории на SQL-сервере;
• сбор статистики (монитор активности в 1С);
• отказ от типового версионирования из Библиотеки Стандартных Подсистем с сохранением накопленной истории;
• открытый код
Разработка решает вышеперечисленные задачи следующим образом:
История изменений доступна из формы объекта (панель навигации формы). Для пользователя это единственная возможность доступа к истории. Для администратора есть возможность независимого использования этого функционала в подсистеме Логирование, а также журнал регистрации, монитор активности и возможность отката объекта к выбранной точке истории.
Просмотр истории из объекта
Панель навигации объектов (справочники и документы), содержит ссылку перехода в историю изменений:

В левой части окна представлена хронология изменения объекта. При выборе точки истории отображается состояние объекта: значения реквизитов и его табличные части, если они имеются. Если значение реквизита для выбранной точки отличается от его значения для предыдущей точки, оно подсвечивается красным шрифтом и флажком. При наведении курсора всплывает подсказка, в которой отображается его предыдущее значение, а также кем и когда оно установлено:

Историю регистра сведений можно посмотреть только из журнала регистрации. История будет отображать содержание набора записей в разрезе отбора:

Состояние точки истории можно вывести в документ mxl:

Когда у объекта длинная история изменений, удобно видеть те точки, в которых есть какие-либо изменения
по сравнению с предыдущим состоянием объекта, чтобы исключить из анализа те точки, когда объект записывался "вхолостую", без изменений.

Также очень удобно в незнакомой конфигурации видеть тип значения реквизитов объекта. Для этого в интерфейсе предусмотрена возможность переключения в режим отображения дополнительной информации о типе значений реквизитов: гиперссылка "[тип значения]"

При включенном режиме "[тип значения]" отображается не синоним, а имя реквизита, плюс его тип. Если тип реквизита является составным, то отображаются все его доступные типы. Кликнув такой на реквизит, можно получить подробную расшифровку типа значения:

Возможности администратора
Администратору доступна подсистема Логирование:

Журнал регистрации
В журнале отражаются события, регистрация которых была включена:

- справочник;
- документ;
- регистр сведений;
- обработка;
- отчет.
Записанные/измененные объекты помечаются иконкой
. Двойной клик на такой строке открывает историю изменения объекта, спозиционировав курсор на точке хронологии, соответствующей текущей строке журнала регистрации.
Отбор журнала позволяет настроить фильтр по виду регистрируемых объектов, пользователю, периоду, представлению объекта и по самому объекту (справочник или документ):

Монитор активности
Отображает, на основе данных лога, статистику использования базы в разрезе времени и количества обращений. Шкала времени разбита по часам суток.
Позволяет сформировать график:


Кликнув на интересующую точку графика, можно получить расшифровку:

Восстановление состояния объекта. Откат к предыдущей точке.
У администратора есть возможность откатить состояние объекта к определенной точке истории, а также восстановить удаленные объекты ИБ. При попытке открыть удаленный объект (объект, который не найден в базе по ссылке), будет открыта форма истории его изменений:

В открывшейся форме в контекстном меню на текущей строке следует выбрать "Вернуться к текущей точке":

Групповой откат измененных объектов.
В случае работы с различными алгоритмами, связанными с групповым изменением данных, есть возможность для группы объектов определенного вида откатить сделанные изменения на шаг назад в хронологии. Для этого нужно выбрать вид объекта (справочник или документ), указать при необходимости пользователя, и выбрать период, в котором было групповое изменение объектов, нажать "Сформировать".
Будет сформирована таблица с измененными объектами за указанный период, а также предыдущая точка в истории. Нужно отметить откатываемые объекты, и нажать "Откатить изменения"

Поиск в истории по значению реквизита
Механизм позволяет найти точки истории, в которых реквизит объекта или реквизит табличной части объекта принимал определенное значение или был изменен. Это может быть полезно, когда неизвестно кем и неизвестно в каком именно документе определенного вида было изменено значение реквизита, но примерно известно, когда это было сделано. Например, "...еще вчера все было хорошо, а сегодня поехал отчет". Очевидно, что кто-то изменил сумму/номенклатуру/количество в заказе, но в каком?.. Обработка "Поиск по значению реквизита" вам в помощь!
Обработка доступна для администратора. Настройка обработки заключается в указании периода, и позиционирования курсора на исследуемом реквизите. После чего жмем "Сформировать".


Пример: выловить факт изменения количества, где указан реквизит шапки "склад" и реквизит "номенклатура" табличной части

* - при исследовании реквизитов шапки объекта, указать отбор возможно только по реквизитам шапки объекта, но не по реквизитам табличной части
Перенос истории на сервер / очистка истории.
Перенос истории на SQL-сервер осуществляет регламентное задание . Интервал запуска задания можно установить = 10мин. Для регламентного задания ОчисткаЛога интервал запуска установить = раз в сутки.
Все механизмы подсистемы получают данные одновременно как с сервера так и из регистра сведений*. Таким образом, для корректной работы подсистемы допускается отключить задание переноса истории на SQL-сервер. В этом случае вся история будет храниться непосредственно в базе 1С, со всеми вытекающими последствиями. Однако, в случае, если в базу заведен новый пользователь, а история после этого события не переносилась на сервер, то могут возникать ошибки при открытии истории изменений объекта.
* - поиск в истории по значению реквизита работает только в случае хранения истории на SQL-сервере
(!) Есть возможность полностью вычистить из базы историю по тем настройкам регистрации, для которых выключена регистрация, и [Хранить, дней] = 0: рег.задание "ЛогированиеОчисткаПоВидамОбъектов"
Установка и настройка подсистемы
Состав разработки
- Общие модули ЛогированиеПодписки, ЛогированиеРегламентныеЗадания: процедуры обработки перехвата событий, подлежащих регистрации; процедура регламентного задания переноса лога на сервер
- Роль: SQLЛогирование – необходимый и достаточный доступ для работы обычного пользователя;
- Роль: SQLЛогированиеАдминистратор – необходимый доступ для настройки подключения к SQL-серверу, настройкам логирования, монитору активности и журналу регистрации, возможность отката состояния объекта к выбранной точке истории;
- Подписки на события – перхватчики событий, подлежащих регистрации
- Регламентное задание ПереносЛогаНаSQL – перенос истории изменений из регистра сведений на сервер SQL
- Регламентное задание ОчисткаЛога – Удаление истории, время хранения которой истекло
- Регламентное задание Переход_с_БСП_2_3_6_92 – Перенос истории из типового регистра ВерсииОбъектов и его очистка
- Константа БазаЛога_СтрокаПодключения – настройки подключения к серверу
- Справочник ЛогированиеОбъекты: хранилище настроек правил регистрации объектов
- Обработка ИсторияИзмененийПоОбъекту: интерфейс для исследования истории изменений объекта (справочника/документа/регистра сведений), а также отката к выбранной точке истории. Вызывается как независимо, так и из формы объекта
- Обработка ЛогированиеСтруктураМетаданных: Вспомогательная обработка для исследования типа значений реквизитов, а также для расшифровки значения реквизита типа "ХранилищеЗначения"
- Обработка ЛогированиеГрупповойОткатИзменений: Обработка для группового отката измененных объектов к предыдущей точки истории
- Обработка МониторАктивностиВ1С: – интерфейс для наглядного представления о нагрузке на базу в разрезе указанного периода, типа (Среднее за период, весь период), и выбранного пользователя.
- Обработка ЖурналЛогирование: – интерфейс для просмотра лога - Журнал регистрации.
- РегистрСведений Логирование: хранилище истории до момента ее переноса на сервер, процедуры отправки и получения данных с сервера
Порядок обновления
1. Обновить конфигурацию путем сравнения/объединения с конфигурацией из файла.
1.1. В окошке сравнения снять галку "Свойства" конфигурации; снять галку у справочника "Пользователи"; выполнить обновление
1.2. В некоторых случаях (как правило, в самописных базах) справочник, соответствующий типовому "Пользователи" может называться как угодно, а пользователь сеанса может быть получен каким угодно способом. В этом случае следует прописать это в соответствующих функциях в модуле РегистрСведений.Логирование.МодульМенеджера:
Функция ТекущийПользователь() Экспорт
Возврат ПараметрыСеанса.ТекущийПользователь
КонецФункции
Функция ИмяСправочникаПользователи() Экспорт
Возврат "Пользователи";
КонецФункции
1.3. Проследить, корректно ли установлены типы, соответствующие справочнику "Пользователи" в следующих объектах
Обработка.МониторАктивностиВ1С.Макет.МакетРасшифровка.НаборДанных1
Тип поля Пользователь
Обработка.МониторАктивностиВ1С.Макет.МакетНастройки.Параметры
Тип параметра Пользователь
Обработка.ЛогированиеГрупповойОткатИзменений.Форма
Типы реквизитов формы: ввПользователь, ТЗИстория.Пользователь, ТЗИстория.ПредПользователь
РегистрСведений.Логирование.Измерение.Пользователь.Тип
1.4. Команда Обработка.ИсторияИзмененийПоОбъекту.Команды.ИсторияИзмененийПоОбъекту
- установить тип параметра составным и добавить типы объектов, из формы которых предполагается просматривать историю изменений.
1.5. Если предполагается использовать как управляемое, так и обычное приложение, то в свойствах общего модуля ЛогированиеПодписки установить галку Клиент (обычное приложение); Если предполагается подключение к базе по COM-соединению, то в свойствах общего модуля ЛогированиеПодписки установить галку "Внешнее соединение"
1.6 Модуль управляемого приложения:
1.7. Установить роль SQLЛогирование всем пользователям базы (необходимый и достаточный доступ к подсистеме логирования для корректной работы); установить роль SQLЛогированиеАдминистратор администратору 1С (настройка подключения к SQL, настройка правил регистрации, использование журнала регистрации, откат состояния объекта к ранней точке истории).
2. В режиме предприятия настроить подключение к SQL-серверу: Логирование => Лог => Соединение с SQL:
3. Настроить правила регистрации событий: Логирование => Объекты логирования.
4. Если в конфигурации используется типовой механизм версионирования из БСП (регистр ВерсииОбъектов), и нужно сохранить накопленную историю изменений, то в БСП требуется отключить сохранение версий объектов, после чего перенести всю историю из регистра ВерсииОбъектов на SQL. Таким образом, сохранятся все те изменения справочников и документов, которые попали в историю до момента установки подсистемы Логирование. Перенос истории и очистку регистра ВерсииОбъектов осуществляет регламентное задание Логирование_Переход_с_БСП_2_3_6_92. Количество точек истории, которое будет переноситься при запуске задания можно указать в процедуре регламентного задания (по умолчанию = 30тыс точек истории за один запуск задания).
4.1 Для пользователя, от имени которого будет запускаться регламентное задание следует снять галку "Защита от опасных действий"
Лог действий, не связанных с объектами ИБ и определенных администратором
Кроме событий просмотра/записи объектов ИБ есть возможность регистрировать прочие действия в базе, например, вывод печатных форм, открытие файлов, запуск процедур обмена, и прочих действий.
Для этого можно использовать код такого вида:
Комментарий = "Дополнительная информация";
Действие = Перечисления.ЛогированиеДействия["<Значение перечисления>"];
РегистрыСведений.Логирование.ЗаписатьВЛогПрочееДействие("Тип","Действие","Наименование",Действие,Комментарий);
В результате в настройках логирования появится раздел "Прочее":

!!! Следует внимательно отнестись к регистрации прочих действий (не связанных с объектами метаданных).
Например, если в процедуре РегистрыСведений.Логирование.ЗаписатьВЛогПрочееДействие(...) в качестве первых трех параметров передавать ссылку на документ/справочник, то будет создано правило регистрации для представления каждого переданного объекта, которые могут исчисляться тысячами. Решение предусматривает не более 65536 различных правил регистрации. Если количество правил регистрации превысит это количество, это вызовет ошибку переполнения типа smallint на sql-сервере.
В случае, если это всё-таки произошло, то нужно отключить такие правила регистрации, после чего запустить регламентное задание ЛогированиеОчисткаПоВидамОбъектов. Это задание будет вычищать историю по всем неактуальным правилам регистрации. А поскольку эта операция в случае большой базы ресурсозатратна, то вычищаться будет по 100 правил регистрации за один запуск.
! В версиях платформы 8.2.х не предусмотрены подписки на события получения форм. В этом случае регистрация событий просмотра работать не будет.
! Регистр сведений Логирование, в теории, является слабым звеном разработки. Следует это учитывать при работе с высоконагруженными базами. Подсистема хорошо себя показала при среднем времени записи в регистр ~0.04 сек, ~1,2млн. регистрируемых событий в сутки и ~50 активных пользователей. Заметного снижения скорости работы не наблюдалось.
! Перенос истории из типового механизма версионирования тестировался на БСП версии 2.3.6.92. Для более старших версий БСП тестирование не проводилось
! Разработка предназначена исключительно для Micrоsoft SQL-Sеrvеr. Совместимость с PostgreSQL не проверялась и не предполагалась изначально
! Компоненты и алгоритмы разработки независимы от стандартных компонентов и алгоритмов типовых конфигураций 1С, и не влияют друг на друга и на нормальную работу типовых или самописных конфигураций, за исключением механизма переноса накопленной истории на SQL-сервер из типового регистра ВерсииОбъектов, регистрацию в котором следует отключить (см. п.4 Порядка обновления). Также в любой типовой или самописной конфигурации должен присутствовать справочник пользователей, под которым происходит вход в 1С в режиме предприятия (в конфигурациях на основе БСП это справочник "Пользователи") (см. п.1.2 Порядка обновления)
! Код разработки открыт, что означает: скачиваешь раз, и пользуешься всю жизнь бесплатно, дорабатывая механизм под нужды очередного конкретного предприятия, принимая на себя всю ответственность за работоспособность доработанных алгоритмов
Все механизмы были протестированы на версиях платформы: 8.2.14.528, 8.3.6.2332, 8.3.10.2580, 8.3.13.1513, 8.3.17.1549, 8.3.18.1208, 8.3.25.1374. В зависимости от версии платформы, возможны некоторые различия в отрисовках графика монитора активности, расшифровках точек монитора активности, а также отрисовки дерева настроек регистрации.
Проверено на версиях SQL-сервера:
• 2014;
• 2008;
• SQL-Express
Проверено на конфигурациях:
• УТ 11.0.4.5; УТ ; УТ 11.5.7.402;
• УПП 1.3.59.1;
• 1С:Общепит 3.0.51.27;
• Бухгалтерия предприятия КОРП 3.0 (3.0.115.19);
• Самописные конфигурации на платформе 8.3.хх
Интерфейс для обычного приложения не предусмотрен. В случае работы в обычном приложении все компоненты подсистемы доступны через меню "Операции". Если есть потребность работать в обычном приложении, интерфейс для этой цели предлагается написать тебе, программист 1С-ник!
Для получения дополнительной информации и помощи в настройке модуля под нужды вашего бизнеса — оставьте заявку

| Статистика: | |
|---|---|
| Просмотры | 39610 |
| Загрузки | 65 |
| Рейтинг | 60 |
| Создание | 22.02.18 15:38 |
| Обновление | 02.03.26 18:23 |
| № Публикации | 702046 |
| Характеристики: | |
| Теги | |
| Рубрики | Журнал регистрации |
| Кому | Системный администратор |
| Тип файла | Архив с данными |
| Платформа | 1С:Предприятие 8 |
| Конфигурация | 1C:Бухгалтерия |
| Операционная система | Windows |
| Страна | Россия |
| Отрасль | Не имеет значения |
| Налоги | Не имеет значения |
| Вид учета | Не имеет значения |
| Доступ к файлу | Платные (руб) |
| Код открыт | Да |
Конфигурация LogiCH эффективно решает проблему хранения и анализа записей журналов регистрации. Разработка использует столбцовую СУБД ClickHouse, одну из самых быстрых Big Data OLAP СУБД. Любой анализ журнала можно выполнить в одном отчете,...
6100 руб.
Мощный административный инструмент, который позволяет выявлять и точечно отменять все изменения, внесенные конкретным пользователем за выбранный период времени. Больше не нужно восстанавливать всю базу из резервной копии, теряя рабочие данн...
6100 руб.
В сферу обязанностей при работе с клиентами входит контроль работы баз данных и серверов 1С. Нужно понимать что происходит в базах, есть ли ошибки, зависания у пользователей и фоновых задач, блокировки или какое-то необычное поведение систе...
9150 руб.
ВНОД – отдельная (дополнительная) подсистема, которая построена на основе типовой подсистемы «Версионирование объектов». Предназначена для сохранения и анализа изменений независимых (периодических и непериодических) регистров сведений в 1С,...
3416 руб.
Рассылка уведомлений о событиях журнала регистрации на электронную почту и в Телеграмм. Программа позволяет анализировать журнал регистрации по заданным критериям, находить в нём интересующие события, и отправлять уведомления об этих с...
10980 руб.
База данных «сама» меняет данные в документах/справочниках? Тогда данный журнал регистрации изменений документов в 1С для Вас! Практически не влияет на скорость записи объектов за счет быстрого алгоритма! Скорость работы почти в 2 раза выше...
26840 руб.
Подсистема версионирования объектов для конфигураций Рарус: Альфа-авто на базе типовой подсистемы от 1С. Позволяет хранить историю изменений документов и справочников, кто, что, когда и какие данные изменял, а так же вернуться к предыдущим ...
6100 руб.
"Журнал" позволяет быстро определить когда, кем и какие документы и справочники были изменены с детализацией по значениям реквизитов. Также фиксируются изменения регистров сведений. Таким образом можно быстро без привлечения администраторо...
16104 руб.
Журнал регистрации платформы 1С в SQL. Общая база хранения всех журналов. Через com-подключение регламентным заданием периодически догружает журналы регистраций из рабочих баз. Предоставляет настраиваемый доступ к журналам по правам подразд...
12200 руб.
Журнал регистрации получения работниками расчетных листков (реестр получения расчетных листков), позволяющий подтвердить при проверке факт выдачи расчетного листка в соответствии со ст.136 ТК РФ.
1220 руб.