DX Loger

Автор: jurist23rus
Версия: 3.2
Последнее обновление: 31 марта 2019 г.
Фотогалерея
Скачать
Обсудить на форуме

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

Состоит из

  1. Родительской формы с именем «Log» - это и есть сам журнал событий, именно в данной форме происходит фиксация действий пользователя. Там же эти действия можно просмотреть в удобном виде.
  2. Формы с именем 'Log_Config' - эта форма конфигурации логера, с помощью который вы задаёте параметры работы логера.
  3. Модуля расширений с именем «Loger». Модуль предназначен для работы функции «Loger», посредством которой и осуществляется ведение журнала событий.

Комплекс полностью совместим со всеми модулями расширений моего авторства (jurist23rus) последних версий. О наличии проблем с совместимостью с модулями расширений других авторов оставляйте сообщения в данной теме.

Установка

Предполагается, что те кто читают эту инструкцию имеют минимальные навыки работы в приложении DataExpress 3.

Для корректной работы модуля требуется версия программы DataExpress 3 версии не старше чем от 31 марта 2019 г.

  1. Сделать резервную копию вашей базы данных (без этого категорически не советую что-либо делать, иначе есть риск потерять все данные).
  2. Скачать файл проекта формата .dxp и файл модуля расширений формата .epas.
  3. Установить модуль расширений для чего:
    1. Открыть вашу базу данных и войти под учётной записью Разработчика (нужно иметь доступ к дизайнеру). Выбрать меню: Файл - Расширения - кнопка Импорт модуля - выбрать скачанный файл формата EventLog v.X.X.epas
    2. Если появилось окно ошибок компилятора, значит есть какие-то ошибки совместимости модулей. В этом случае установку лучше не продолжать, а сделать скриншот окна ошибок и cообщить о проблеме на форум.
  4. Установить формы модуля для чего:
    1. Проверить, что в Вашей базе нет родительских форм с именем «Log» и «Log_Config». Если такая форма у вас уже есть, переименовать её или удалить.
    2. Войти в дизайнер и выбрать пункт меню Сервис - Объединение проектов - выбрать файл EventLog v.X.X.dxp - в появившемся окне на вкладке Формы установить флажок в поле Log и нажать ОК.
  5. Если вы всё сделали правильно, то в вашей базе появятся новые формы «Log» и «Log_Config» и её дочерняя форма в дереве форм, а в редакторе скриптов модуль формы «Loger» и одноимённый модуль расширений. Теперь комплексом можно пользоваться.

Удаление

  1. Войти в дизайнер и удалить форму «Log» и «Log_Config»
  2. Войти меню Файл - Расширения - Выбрать модуль Loger v.X.X и нажать Удалить.

Обновление

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

Обновление форм «Log» и «Log_Config» невозможно, ввиду отсутствия такой возможности в самой платформе DX. Переход на новую версию осуществляется путём удаления старой версии логера по инструкции выше и установки новой версии по инструкции выше. К сожалению, при удалении форм логера, его данные сохранены не будут.

Работа

Модуль подключается к контролируемой форме через свойство формы подключить действие. Установка надписей на форму не требуется!

Подключение модуля
Работа с комплексом осуществляется после подключения модуля к форме через свойство формы подключить действие. В зависимости от заданных параметров работы функции, будет осуществляться логирование изменённых значений, поставленных на контроль полей формы и таблиц формы. Изменения в полях находят своё отражение в журнале событий (форма 'Log').

Просмотреть журнал событий вы сможете, открыв форму «Log» вашей базы данных. Для обеспечения сохранности журнала событий и воспрепятствованию внесения в него изменений и дополнений редактирование, добавление и удаление записей в журнале запрещено. Журнал событий
При открытии журнала с панели инструментов главного окна DataExpress исчезают кнопки отвечающие за операции редактирования, добавления и удаления записей. Для возвращения кнопок на панель инструментов достаточно закрыть форму журнала событий. В целях сохранности журнала убрано всплывающее контекстное меню при щелчке правой кнопкой мыши по записям формы журнала. Для обеспечения большей безопасности рекомендуется полностью запретить пользователям, у которых нет прав разработчика, доступ к форме журнала в настройках прав и ролей пользователей.

Не рекомендуется

Самостоятельно вносить какие бы то ни было изменения в формы «Log» или «Log_Config», в том числе: добавлять, удалять или изменять свойства и параметры компонентов; вносить корректировки в скрипты, руководящие работой формы, или модулем расширений «Loger».

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

Галерея

История версий

Версия 3.2

  • Совместима с DX от 31.03.2019

Версия 3.1

  • изменил порядок подключения модуля к форме. Теперь не требуется установка на форму вычисляемых надписей.
  • убрал функцию loger из выражений за ненадобностью.
  • у модуля появился визуальный интерфейс (доступен через свойство формы «Подключить действие»).
  • появилась опция «Контролировать все поля формы» при которой модуль сам ищет все поля и следит за ними, что не требует их перечисления вручную.
  • модуль фиксирует «Дублирование записи» и отмечает это в журнале, выделяя событие фиолетовым цветом.

Версия 3.0

  1. На 90% переписал код модуля расширения, изменив алгоритм работы.
  2. Убрал параметр № 2 функции, который отвечал за таблицу и её поля. Теперь, чтобы контролировать таблицу нужно просто разместить на на ней надпись с функцией. Количество одновременно контролируемых таблиц не ограничено.
  3. Полная совместимость с запросами. Для контроля полей формы, отображаемой запросом нужно просто разместить надпись с функцией Loger на форме-источнике запроса.

Версия 2.0

  1. Возможность контроля одной таблицы на форме в связи с чем у функции Loger появился третий параметр (подробнее в справке по функциям).
  2. Отображение изменений полей таблицы, создания и удаления записи таблицы в журнале (записи серого цвета).
  3. Возможность включения и отключения логирования для определённых событий (удаление, создание, изменение записей).
  4. Функция автоочистки журнала событий (настраивается на форме параметров журнала).
  5. Возможность ограничения доступа к форме настроек логера.
  6. Чтение полей объекта и отображение значений полей, вместо ID записи.
  7. При удалении записи лог сохраняет не только сведения о событии удаления, но и значения контролируемых полей.

Версия 1.1

  1. Регистрация всех действий пользователя с записями (создание, изменение, удаление).
  2. Изменено отображение табличной части журнала: изменён порядок столбцов, сортировка и фильтрация записей журнала; добавлено несколько стандартных вариантов фильтрации журнала; добавлена окраска записей журнала в зависимости от активного события.
  3. Изменена визуальная часть формы: добавлены некоторые компоненты, изменены надписи, переработана логика действий кнопки «Просмотр»; добавлена вертикальная строка состояния, цветом сигнализирующая об активной записи.
  4. Выловлены и устранены некоторые баги.

Скачать

Обсуждение