Управление учебным процессом ВУЗа- Протоколирование изменений данных  (раздел целиком)  (27.04.2024)
Протоколирование изменений данных

При необходимости протоколирования изменения данных пользователями должно быть определено, изменение данных каких именно классов подлежит протоколированию. После выбора классов необходимо также определиться с перечнем полей, изменение значений которых будет протоколироваться.

Протоколирование изменений данных можно настроить на двух уровнях:

  • Протоколирование фактов создания и удаления объектов класса
  • Протоколирование фактов изменения значений полей объектов. В этом случае в протокол будет записываться информация о "старом" и "новом" значении измененного поля.

1. Протоколирование фактов создания и удаления объектов

Для того, чтобы настроить протоколирование фактов создания и удаления объектов определенного класса, необходимо найти нужный класс в Системной форме на вкладке Классы и установить для этого класса значение атрибута Протоколировать = Да. Отключить протоколирование можно, установив значение данного атрибута в Нет.

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

Данные протокола можно будет увидеть в Административной форме на вкладке История. В протоколе будет зафиксирована следующая информация:

  • Дата и время создания или удаления объекта
  • Выполненное над объектом действие (Создан или Удаляется)
  • Пользователь, выполнивший создание или удаление (логин, наименование пользователя)
  • Информация об объекте (имя, наименование, класс, родитель, мастер, идентификатор, идентификатор при создании, база данных-источник)
  • Пользовательская сессия, в рамках которой было осуществлено добавление или удаление (дата и время начала и завершения сессии, пользователь, открывший сессию, пользовательский агент); информация о сессии будет зафиксирована только если включено Протоколирование пользовательских сессий
Если для данного класса включено протоколирование изменений значений полей, то при создании объекта кроме записи о факте создания в протокол будут добавлены записи о присвоении значений протоколируемым полям.


2. Протоколирование изменений значений полей

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

  1. Включить протоколирование для выбранного класса (Протоколирование фактов создания и удаления объектов). Результатом данного этапа будет протоколирование фактов создания и удаления объектов класса.
  2. Для выбранного в Системной форме на вкладке Классы класса на подчиненной вкладке Поля установить значение атрибута Протоколировать = Да для выбранных полей. Установкой значения этого атрибута в Нет можно отключить протоколирование изменений данного поля.
Важно!
Для того, чтобы изменение режима протоколирования изменений значений полей вступило в силу, после изменения значения атрибута Протоколировать необходимо выполнить Синхронизацию базы данных. После синхронизации протоколирование будет выполняться после очередного входа пользователей в систему (для удаленных пользователей - после перезапуска Сервера приложений).

При работе режима протоколирования изменений значений полей в Административной форме на вкладке История при каждом изменении будут создаваться по две записи на каждое измененное поле - запись с предыдущим значением и с новым значением поля. Первая запись будет иметь значение атрибута Действие = Изменится, вторая - Действие = Изменен. Записи протокола будут иметь следующий набор атрибутов:

  • Дата и время изменения
  • Выполненное над объектом действие (Изменится или Изменен)
  • Пользователь, выполнивший создание или удаление (логин, наименование пользователя)
  • Информация об объекте (имя, наименование, класс, родитель, мастер, идентификатор, идентификатор при создании, база данных-источник)
  • Имя поля, значение которого изменено
  • Содержимое - значение, которое хранилось в поле до изменения, или которое было присвоено после изменения
  • Пользовательская сессия, в рамках которой было осуществлено добавление или удаление (дата и время начала и завершения сессии, пользователь, открывший сессию, пользовательский агент); информация о сессии будет зафиксирована только если включено Протоколирование пользовательских сессий

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

Пример отчета об активности пользователей